Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
Need Forum Guidance? Click here

Search our FPGA Knowledge Articles here.
19209 Discussions

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

Altera_Forum
Honored Contributor II
801 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
113 Views

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

Altera_Forum
Honored Contributor II
113 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.
Altera_Forum
Honored Contributor II
113 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.
Altera_Forum
Honored Contributor II
113 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
Reply