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

How can I make the compilation to achieve MEMORY using RAM but not LEs?

Altera_Forum
Honored Contributor II
1,880 Views

Hello everyone! 

I write the program to achieve RAM like this: 

TYPE MEMORY IS ARRAY (0 TO 127) OF std_logic_vector(15 DOWNTO 0);  

SIGNAL RAM_DATA : MEMORY;  

When the Quartus II 6.1 to compilate it,Quartus II used the LEs to achieve it ! My question is how I can let Quartus II achieve it by the intenal memory of cyclone II ? 

 

Thanks!
0 Kudos
10 Replies
Altera_Forum
Honored Contributor II
984 Views

by the way, I turned "Assignments->settings->Analysis & Synthesis Settings->more settings->auto ram replacement" option on,but it seems no use~

0 Kudos
Altera_Forum
Honored Contributor II
984 Views

Also, I don't want to achieve it by creating new megafunction!

0 Kudos
Altera_Forum
Honored Contributor II
984 Views

Hi, 

 

Lots of info on this subject here 

 

http://www.altera.com/literature/hb/qts/qts_qii51007.pdf 

 

Quartus will only infer a RAM if it is actually implementable in internal RAM. i.e. it must be synchonous and adhere to various rules. 

 

Check out the code samples in the above doc
0 Kudos
Altera_Forum
Honored Contributor II
984 Views

Thank you! I will try it.

0 Kudos
Altera_Forum
Honored Contributor II
984 Views

I'm also a fan of the Templates in Quartus. With your HDL open, go to Edit -> Template -> VHDL and there are a couple RAM/ROM examples. You can paste them directly into your code.

0 Kudos
Altera_Forum
Honored Contributor II
983 Views

I'm sorry! But I can't find "Template" in the "Edit" menu , also the focus on the VHDL file. 

Indeed! I do not want just to achieve MEMORY,I just want Quartus to compilate my code to use the momory internal. 

It seems that I only achieve it by creating new megafunction. 

Thank you all the time!
0 Kudos
Altera_Forum
Honored Contributor II
983 Views

The Edit menu is context sensitive, so it will only be there if you have a VHDL file open in the main window. If you're looking at a compilation report or something like that it won't be there. (Or you're using an older version of Quartus, but I'm pretty sure these are at least a year or two old). And using the code from the referenced manual will also work.

0 Kudos
Altera_Forum
Honored Contributor II
983 Views

Thank you Rycs! 

Thank you vernmid! 

This way seems no way! I decide to achieve it by creating new megafunction.
0 Kudos
Altera_Forum
Honored Contributor II
983 Views

Quartus language templates have been introduced with Quartus V7.1, I think. Code examples or also shown in the Quartus Handbook in the recoomend hdl coding styles chapter.

0 Kudos
Altera_Forum
Honored Contributor II
983 Views

Hi ! That may be the problem , the version I used is V6.1 .  

Thank you!
0 Kudos
Reply