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.

CC3200: Memory mapping the size in SRAM_CODE and SRAM_DATA

Part Number: CC3200

Hi there,

              I have checked the memory allocation after i complete my project and below is the memory we have recently used.

Total i have seen is 235kB. I think CC3200 has 256KB. So is it possible to change the memory size in cc3200v1p32.cmd as given below?

Before 
    SRAM_CODE (RWX) : origin = 0x20004000, length = 0x20F00
    SRAM_DATA (RWX) : origin = 0x20025000, length = 0x19000
AFter
    SRAM_CODE (RWX) : origin = 0x20004000, length = 0x27000
    SRAM_DATA (RWX) : origin = 0x2002C000, length = 0x19000

Thanks

Ganesh

 

  • Hi Ganesh,

    No. This is not correct. RAM memory is at range 0x20000000 - 0x2003FFFF. Your section SRAM_DATA ends after end of RAM.

    Entry point for code is at address 0x20004000 - that means section SRAM_CODE need to start at address 0x20004000. But you can create 3rd section beginning at 0x20000000 with size 16kB and put there some RAM stuff like a stack for main and ISR.

    Jan

  • Hi Jan,

               Thanks for your reply. I think i understand what you are trying to say.

    Is the above setting is true? mcuimg.bin(15KB size) file start from 0x20000000 and mcuimg1.bin / mcuimg2.bin starts from 0x20004000. If that the case. My config in cc3200v1p32.cmd should be as below, am i right? SRAM_CODE making to 138KB and SRAM_DATA making to 102KB.

    SRAM_CODE (RWX) : origin = 0x20004000, length = 0x21C00
    SRAM_DATA (RWX) : origin = 0x20025C00, length = 0x19000

    Thanks

    Ganesh

  • Hi Ganesh,

    No. Every code which is loaded by ROM bootlaoder (that means /sys/mcuimg.bin) starts at 0x20004000.

    If OTA update with secondary bootlaoder is used, this bootlaoder code starts at 0x20004000 as well. But to prevent memory conflict with your binary code, this secondary bootloder re-map own code to address 0x20000000 and execute from this address.

    Your linker file looks ok. You have 137kB for code and 100kB for data.

    Jan