Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20642 Discussions

How to include custom onchip memory block into the Linker section mappings ?

Altera_Forum
Honored Contributor II
1,056 Views

Hello, I have a custom onchip memory (block memory) with a avalon slave interface. I want this to show up in the linker section mappings of eclipse SDK. So, that i will use this to load rodata,heap, stack (use it as code memory). I observed that on-chip memory has got attribute named "memory " and jtag-uart has got "printable" attribute. what additional things to do to my custom logic so that it can be seen in linker mapping section.

0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
368 Views

In the BSP editor, add it as a new section to the Nios memory map.

0 Kudos
Altera_Forum
Honored Contributor II
368 Views

I tried it , but it says error something like- memory block withe the name "my custom logic" not found in sopc design. I explored the .IP file of onchip that taken from IP catalog and compared with .IP file of my custom logic. I can see there are certain .xml like lines in the ip file  

Like IsMemoryDevice =1 in alteration ocm and it is zero in my case. I am thinking in this direction.
0 Kudos
Altera_Forum
Honored Contributor II
368 Views

You need to edit your IP's *_hw.tcl file with a text editor. Find the section describing the Avalon Slave interface for your memory component, that should be like this: 

# # connection point iname # add_interface iname avalon end (where iname is the name of your avalon interface) 

And add a parameter in the list: 

set_interface_property iname isMemoryDevice truereplacing iname with the name of your interface. 

Then regenerate the QSys project and recompile.
0 Kudos
Altera_Forum
Honored Contributor II
368 Views

 

--- Quote Start ---  

You need to edit your IP's *_hw.tcl file with a text editor. Find the section describing the Avalon Slave interface for your memory component, that should be like this: 

# # connection point iname # add_interface iname avalon end (where iname is the name of your avalon interface) 

And add a parameter in the list: 

set_interface_property iname isMemoryDevice truereplacing iname with the name of your interface. 

Then regenerate the QSys project and recompile. 

--- Quote End ---  

 

 

 

Hehe !!! Worked  

This is exactly what I want 

I can now select my peripheral in linker script pulldown menu. Trivial thing is ,In settings.html file attribute name is empty. 

Thank you
0 Kudos
Reply