Hi All.
I am a bit confused about the Deep Sleep Mode in tms320c6748.
According to the following example,I make the c6748 to enter the deep sleep mode.
http://processors.wiki.ti.com/index.php/Power_Module_for_C6748_and_OMAP-L138#Sleep_Modes
It has some constraints for Power_SLEEP and Power_DEEPSLEEP in the tms320c6748 device.The following sections must be explicitly placed in on-chip memory:
.text .bss .vecs .far
In my .cfg file, I place these sections into IRAM :
Program.sectMap[".text"] = "IRAM";
Program.sectMap[".bss"] = "IRAM";
Program.sectMap[".vecs"] = "IRAM";
Program.sectMap[".far"] = "IRAM";
In my dsp program, I need to use a large array which size is 600000.When I define such a array, the CCS compiler reported the following error:
#10099-D</a> program will not fit into linker.cmd
SECTIONS
{
.text: load >> IRAM
.stack: load > DDR
.bss: load > IRAM
.cinit: load > DDR
.pinit: load > DDR
.const: load >> DDR
.data: load >> DDR
.switch: load >> DDR
.sysmem: load > DDR
.far: load >> IRAM
.args: load > DDR align = 0x4, fill = 0 {_argsize = 0x0; }
.cio: load >> DDR
.vecs: load >> IRAM
xdc.meta: load >> DDR, type = COPY
}
If I mask the following settings in the .cfg file, the above error disappears, but the C6748 device can not enter deep sleep mode.
Program.sectMap[".text"] = "IRAM";
Program.sectMap[".bss"] = "IRAM";
Program.sectMap[".vecs"] = "IRAM";
Program.sectMap[".far"] = "IRAM";
How can I both make the C6748 devcie to enter the deep sleep mode and the large array which size is 600000 can be defined in the program successfully?
Thanks.