Content originally posted in LPCWare by coco on Wed Feb 12 19:14:21 MST 2014
I'm using LPC1830 , so this is a sample of the memory configuration:
RamLoc96 (rwx) : ORIGIN = 0x10000000, LENGTH = 0x18000 /* ram1 = 96k */
RamLoc40 (rwx) : ORIGIN = 0x10080000, LENGTH = 0xa000 /* ram2 = 40k */
RamAHB32 (rwx) : ORIGIN = 0x20000000, LENGTH = 0x8000 /* ram3 = 32k */
RamAHB16 (rwx) : ORIGIN = 0x20008000, LENGTH = 0x4000 /* ram4 = 16k */
RamAHB_ETB16 (rwx) : ORIGIN = 0x2000c000, LENGTH = 0x4000 /* ram5 = 16k */
RO_MEM (rx) : ORIGIN = 0x14000000, LENGTH = 0x200000 /* 2MB */
So I would like to place all my .bss and .data either to ram1 / ram2 / ram3 / ram 4 / ram5.
Notice that the RO_MEM (external flash) address is in between ram2 and ram3, so I can't declare a dummy variable to be placed in that address.