Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16612 Discussions

Adding In-System Memory Editor with the Assignment Editor

Altera_Forum
Honored Contributor II
1,103 Views

The In-System Memory Editor is a nice way to read and/or write the contents of internal memories via Quartus II and the JTAG connection. It uses very little resources too. One of the only downsides is that users had to manually instantiate this with the megafunction. This post shows how users can add this functionality to a memory by just using the Assignment Editor, so it can be applied to inferred memories or memories in IP. 

 

(Be sure to look at the Quartus II Handbook to better understand the In-System Memory Editor. It basically uses the second port on a memory to read/write the contents via the JTAG port, much like SignalTap. So it only works with single-port memories, and it reads/writes asynchronously, so there are some limitations. But in applications it does work, it can be pretty helpful, minimally as a way to monitor RAM contents)  

 

Anyway, in Tcl and the .qsf, the syntax looks like so: 

 

set_parameter -name ENABLE_RUNTIME_MOD YES -to "sp_ram:data_memory|altsyncram:altsyncram_component" 

 

set_parameter -name INSTANCE_NAME ins1 -to "sp_ram:data_memory|altsyncram:altsyncram_component" 

 

To do it in the GUI: 

1) Locate the memory in the Hierarchy Browser and right-click Locate to Assignment Editor. (Be sure to right-click from the hierarchy that is altsyncram. If you do this at a hierarchy above that it won't work) 

 

2) In the Assignment Editor, change the pull-down Cateogory bar at the top to Parameters. 

 

3) Add two parameters: 

ENABLE_RUNTIME_MOD YES 

INSTANCE_NAME m1 

(Where m1 is whatever name you want to give it, although note that there is a tight character limit. When I first tried this, I gave the memory I tried it on the name "newname", and it only came across as "newn") 

 

That's it. You should see this now in your Analysis & Synthesis Report under the Debug folder. (If it didn't take, there probably won't be a Debug folder).
0 Kudos
0 Replies
Reply