Hello,
I'm running some performance test on the TMS570LS3137HDK. I managed to execute benchmarks from SDRAM with the code sections, data, bss and sysmem in the SDRAM. The next step is to put the stack in the SDRAM.
However, HalcoGen (03.02.02) does not allow me to configure the stack as I want. I tried to modify the linker command file (see below) without success.
--retain="*(.intvecs)" --heap_size=0x80000 --stack_size=0x80000 /*----------------------------------------------------------------------------*/ /* Memory Map */ MEMORY { VECTORS (X) : origin=0x00000000 length=0x00000020 FLASH0 (RX) : origin=0x00000020 length=0x0017FFE0 FLASH1 (RX) : origin=0x00180000 length=0x00180000 STACKS (RW) : origin=0x80000000 length=0x00080000 RAM (RW) : origin=0x08000000 length=0x00040000 SDRAM1 (RWX): origin=0x80080000 length=0x0017FFFF SDRAM2 (RWX): origin=0x80200000 length=0x001FFFFF SDRAM3 (RWX): origin=0x80400000 length=0x001FFFFF SDRAM4 (RWX): origin=0x80600000 length=0x001FFFFF } /*----------------------------------------------------------------------------*/ /* Section Configuration */ SECTIONS { .intvecs : {} > VECTORS .text : {} > FLASH0 | FLASH1 .const : {} > FLASH0 | FLASH1 .cinit : {} > FLASH0 | FLASH1 .pinit : {} > FLASH0 | FLASH1 .bss : {} > SDRAM1 .data : {} > SDRAM1 .stack : {} > STACKS .sysmem : {} > SDRAM1 .sdram_section2 : RUN = SDRAM2, LOAD = FLASH0|FLASH1, TABLE(BINIT) .sdram_section3 : RUN = SDRAM3, LOAD = FLASH0|FLASH1, TABLE(BINIT) .sdram_section4 : RUN = SDRAM4, LOAD = FLASH0|FLASH1, TABLE(BINIT) }
Is there any way to put the stack in the SDRAM ?
Regards,
Antoine