This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/TMS320F28335: F28335 - Storing lookup table in Flash memory while using 28335_RAM_lnk.cmd in code composer studio v6

Part Number: TMS320F28335
Other Parts Discussed in Thread: C2000WARE

Tool/software: Code Composer Studio

Hi all,

I am very new to DSP programming. I am trying to initialize a Look-up table (float array) in Flash memory as I can't store the data in RAM memory due to its huge size. I have always used the default 28335_RAM_lnk.cmd linker file (which purely uses only SARAM). I know I need to make some changes in the linker command file to use the Flash memory.  Also, should I use const float instead of float while initializing? 

And to make my doubt more specific, I am not going to write anything on flash during execution (Only store them as .econst - initialize as global const float array). I just want to read few data from the look-up table (stored as an array) and use it for computation in ram debug while execution.

currently, the linker command file sector initialization lists as follows

codestart : > BEGIN, PAGE = 0
ramfuncs : > RAML0, PAGE = 0
.text : > RAML1, PAGE = 0
.cinit : > RAML0, PAGE = 0
.pinit : > RAML0, PAGE = 0
.switch : > RAML0, PAGE = 0

.stack : > RAMM1, PAGE = 1
.ebss : > RAML4, PAGE = 1
.econst : > RAML5, PAGE = 1
.esysmem : > RAMM1, PAGE = 1

IQmath : > RAML1, PAGE = 0
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD

what should I do to store it in FLASH. Please, someone, help me out.

Regards

Shiva

  • Shiva

    Yes, you should use "const".
    Download C2000Ware to see the other F2833x linker command files we have available.

    If literally only those items will be stored in flash, then you'll set something like this (assuming your memory section is setup):
    .econst :> FLASHA, PAGE = 1

    Best regards
    Chris