Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
8 years ago

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

Hi,

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).

https://alteraforum.com/forum/attachment.php?attachmentid=13998&stc=1

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

Thanks!

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    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.