I am programming a PSoC3 Microcontroller (CY8C3246PVI-147) via the PSoC Creator 4.4 software.
After adding some functions during compilation I get the following errors:
*** ERROR L107: ADDRESS SPACE OVERFLOW
SPACE: CONST SEGMENT: ?CO?CYFITTER_CFG LENGTH: 00098BH
*** ERROR L120: CONTENT BELONGS TO ERRONEOUS SEGMENT
Program Size: data=71.5 xdata=4752 const=2443 code=53415
The command 'LX51.exe' failed with exit code '2'.
In the .map file there is this:
BASE START END USED MEMORY CLASS
X:000000H X:000000H X:001FFFH 001290H XDATA
C:000000H C:002800H C:00FFBFH 00D0A7H CODE
C:000000H C:002800H C:00FFBFH 00098BH CONST
I:000000H I:000000H I:00007FH 000042H DATA
I:000020H.0 I:000020H.0 I:00002FH.7 000001H.5 BIT
I:000000H I:000000H I:0000FFH 000004H IDATA
Would anyone be able to advise me on how to solve this?
I'll hazard a guess (since I'm not familiar with PSoC3).
If you add the size of code(53415) plus size of constants(2443) plus the start of FLASH space($2800 --> 10240), equals 66098, this exceeds the total FLASH space of 65536.
So my guess is, you've exceeded allowable FLASH memory space.
As a test, reduce 1000 bytes from the constants and it should compile without error. If this compiles with the same error, then something else is wrong and I don't know what that would be. Like I said, I'm guessing here.
Thanks for the reply.
I understand that the main problem is the size of the code. Unfortunately, I can't figure out which part of the code treats as constant so that I can decrease it.