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

specify generic parameter from quartus

Altera_Forum
Honored Contributor II
1,041 Views

Hi all. 

 

I am using Quartus II 64-Bit Version 10.1 Build 153 11/29/2010 SJ Full Version. 

 

I am working on a design with a bunch of altdpram and I use MIF files to initialize the content of those memories. 

 

I would like to be able to compile my design with various sets of MIF files. 

 

How can I set the 'lpm_file' generic parameter of the altdpram from a qsf (the idea being to generate qsf using a script). 

 

Here are the full names of the altdpram of which I need to set the 'lpm_file' parameter: 

 

--- Quote Start ---  

 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:1:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:2:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:3:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:4:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:5:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:6:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:7:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:8:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:9:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:10:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:11:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:12:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:13:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:14:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:15:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:16:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|level_book_command_generator:hlb_command_generator|tick_generator:refill_generator|altdpram:\tick_table:17:tick_table_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|top_of_book:tob|top_of_book_pipeline:tob_pipeline|altdpram:instrument_data_ram| 

|lse_tp_lq2|lse_core_tp_lq2:lse_core_tp_lq2_inst|level_processor:level_processor_inst|top_of_book:tob|top_of_book_pipeline:tob_pipeline|altdpram:decross_enable_ram| 

 

--- Quote End ---  

 

 

edit: weird... with the 'quote' tags, a space is inserted every 50 characters of the lines... 

 

Thanks!! 

 

Julien
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
316 Views

No quartus guru to answer this one? 

:) 

Ju
0 Kudos
Altera_Forum
Honored Contributor II
316 Views

Instead of changing the generic mapping of the *.mif file in .qsf file 

 

you can keep qsf file fixed dynamically change the content in memory(.mif) by using the script command 

 

"write_content_to_memory" which will reflect your requirement As searching the specific place where the qsf file contains the .mif filename and replacing it needs more script knowledge
0 Kudos
Altera_Forum
Honored Contributor II
316 Views

Thanks for the workaround, 

Unfortunatly the MIF was just an example and I have other generics that I need to set, so I still have to find a way to do that :)
0 Kudos
Reply