Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12618 Discussions

Unable to reach (null) from global pointer - multiple onchip rams for applications

Honored Contributor II



the linker gives me the following error: 


HAL/src/alt_main.c:154: warning: Unable to reach (null) (at 0x00500004) from the global pointer (at 0x0017f2b4) because the offset (3673424) is out of the allowed range, -32678 to 32767.  


I first got this error after splitting the application onchip RAM in 3 pieces (required to do so in order to make use of the MLAB ressources) so I assume it has something to do with it. 

The linker regions have been correctly assigned to these RAMs (screenshot included in attachment).  


Can someone give me a hint how I could get rid of this problem? 


0 Kudos
1 Reply
Honored Contributor II

It looks like the linker is trying to use relarive addressing but your bss and text_data on chip memories are too far away in the address space. I would first try and manually edit the addresses of your onchip memories so that they are contiguous in the memory space, and if this is not enough write a custom link script that declares a single space including all the onchip memories and that maps all the sections (except heap and stack) to that space.

0 Kudos