2219 - LatticeECP2/ECP3: What does the LatticeMico8 linker error message "lm8-elf/bin/ld: region data is full (C_code.elf section .irq_stack)" mean?

2219 - LatticeECP2/ECP3: What does the LatticeMico8 linker error message "lm8-elf/bin/ld: region data is full (C_code.elf section .irq_stack)" mean?

The data region of the .elf generated by the LatticeMico8 compiler refers to the initialized and uninitialized data in the C/C++ source code and will be stored in the scratchpad memory of the LatticeMico8 controller. When this data generated exceeds the size of scratchpad memory declared, linker throws the above error.

To eliminate this error, you must increase the size of the Mico8 scratchpad memory in the Mico System Builder(MSB) hardware platform. 

To increase the scratchpad size double click LM8 component in the hardware platform and you can configure the scratchpad size under scratchpad settings. The size of the scratchpad memory can be configured from 32 bytes to 4G bytes, in power-of-two increments.