The memory name IRAM sounds like you are using DSP/BIOS. Moving your variable to DDR within the DSP/BIOS framework is difficult. I never found a way to do it properly. I found it was easier to define it outside BIOS with compiler and linker commands. Something like this:
File: big_array.c
#pragma DATA_SECTION(big_array, "big_array_section");
const float big_array[400000] =
{
0.1,0.2,0.3,
...
};
File: big_array.cmd
SECTIONS
{
big_array_section :> SDRAM
}
The SDRAM memory region is defined somewhere in the many layers of tci and tcf files. Bare Metal (eg. StarterWare) are a lot simpler and direct but no OS niceties like threads, mutex, etc.
↧
Forum Post: RE: Put large array in memory
↧