How to over come M4 64k  image limit  when dual core is using in LPC4350

Discussion created by lpcware Employee on Jun 15, 2016
Latest reply on Jun 15, 2016 by lpcware
Content originally posted in LPCWare by srinu282 on Mon Sep 10 07:31:28 MST 2012

Hi All,

      Am having Hitex4350 development board.using dual core (M4 and M0).Memory map for M4 and M0 as follows.

Region         Core     Address range                   Notes
M4 code region M4 0x1C000000 - 0x1C00FFFF  Includes code and data up to 64K
M0 code region M0 0x1C010000 - 0x10007FFF  Includes code and data up to 32K.
M4 data region M4 0x10000000 - 0x1000FFFF  pre-initialized RW data, ZI data, heap, stack, 64K max
M0 data region M0 0x10001000 - 0x10017FFF  pre-initialized RW data, ZI data, heap, stack, 32K max
Extra IRAM/free   0x10018000 - 0x1001FFFF 
Shared memory region M0/M4 0x10080000 - 0x10083FFF Shared memory region between M0 and M4 core, used for queue.

1.Configured A14 to A22 address lines to access 64k as boot loader will only configure A0 to A13 address lines in start-up file.
2.M4 and M0 images are 64K offset so initially both  core are working fine because M4 code size is less than 64K.                      3.Now my M4 project code size is more than 64K(76262=74-47k). in this case M0 core is not working. i tried to change the 64k offset address in M4 and M0 linker script file. but also M0 core is not working only M4 is running.
linker scripts are attached. how can i over come this limit?
please help me to get out of this problem. Thanks in advance.

sreenivas ida