Altera_Forum
Honored Contributor
19 years agoTightly Coupled Memory
I am developing a custom Nios system and I have a number of questions
In my system I have an EPCS controller and custom interfaces to an ASRAM, Dual Port Ram and Custom Logic. I have also instantiated an on chip memory (max 20 K). Up until now we have not used tightly coupled memory and have tried different methods to bypass the CACHE through software. However the system is not working properly. We have also tried different configurations for the auto-generated linker script in the system properties for our project in the IDE. My questions are as follows :- 1. Is it true that the CACHE can be removed from within the SOPC by instantiating tightly coupled memory (it sounds that way from the NIOS documentation) ? It appears from the documentation that I can run parts of the code within tightly coupled memory and other parts in the other memory devices that I have instantiated. In such a case, are all accesses to the different memory devices CACHE free ? 2. Where can I find more information on how to use Custom Linker Scripts? Examples ? I need a bit more information that what is provided in the NIOS II Software Developer’s Handbook. 3. When I instantiated tightly coupled instruction memory I noticed that within the SOPC builder, the branch that extends from the tightly coupled instruction master only allows a connection to the tightly coupled on chip memory. Also within the IDE system library for my project, within the System Properties settings, for the program memory (.text) I was only able to choose the tightly coupled memory. My question is, if the Auto-Generated Linker Script was only able to run the code from the tightly coupled memory (which also seems to be apparent from the SOPC tightly coupled instruction master branch limitation outlined above) how can a custom linker script place part of the code in the tightly coupled memory and the rest in another memory device ?