FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6355 Discussions

Can't simulate alt_dual_boot in ModelSim-Altera (Quartus 19.1)

ArminSch
Beginner
866 Views

Hi, I can't get a RTL simulation running when the alt_dual_boot IP is included.

According to the transcript everything goes fine but when the entity containing the encrypted dual configuration IP is loaded it fails with the following error message:

# Loading work.dualboot(rtl)
# ** Error (suppressible): (vsim-10000) <protected>(<protected>): Unresolved defparam reference to '<protected>'<protected>nofile.
# Time: 0 ps Iteration: 0 Protected: /bootldr_tb/tb_inst/bootldr_inst/dualboot_inst/dual_boot_0/alt_dual_boot_avmm_comp/alt_dual_boot File: nofile

Compilation of the models worked without errors, though. I've attached the complete modelsim transcript.

Any ideas what is wrong here?

Thanks, armin

0 Kudos
1 Solution
Nurina
Employee
784 Views

Hi Armin,


You need to workaround by adding Verilog library above the VHDL library.


In the .do file of your project, add the lpm verilog library. To do this, search for the line that starts with vsim, add "-L lpm_ver" right before all the other libraries (you can see them in the same line as "-L altera -L lpm" etc.)


I hope this helps!

Nurina


View solution in original post

0 Kudos
10 Replies
Nurina
Employee
816 Views

Hi Armin,


There is an old thread regarding the same issue as yours available: https://community.intel.com/t5/Intel-Quartus-Prime-Software/How-to-resolve-Error-suppressible-vsim-10000-lt-protected-gt-lt/td-p/679087


Let me know if this solves your issue.


Regards,

Nurina


0 Kudos
ArminSch
Beginner
810 Views

Hi Nurina,

I'm already aware of this thread, however the suggestions are too vague to me. Yes, I can change to the IP's simulation directory and ran a "do msim_setup.tcl", but this does not seem to do anything. I found a suggestion in some other thread to run "source msim_setup.tcl" followed by "ld", and this does something and seems compile the IP without errors, but when I then start my simulation it is not working again - with exactly the same error messages.

If I analyze the autogenerated native-link simulation setup scripts (now also attached), they seem correct and seem to include all required files. They also compile correct (as seen in the transcript).

Any more ideas?

armin

0 Kudos
Nurina
Employee
803 Views

Hi Armin,

 

Are you using NativeLink for the RTL simulation? If not, it seems like the best thing to do is to use NativeLink for your RTL simulation. To do this, go to Tools>Run Simulation>RTL. 

 

Make sure your NativeLink setup is correct. You can follow the steps to do that here: https://www.intel.com/content/www/us/en/programmable/support/support-resources/design-examples/design-software/simulation/modelsim/exm-ncsim-native-link.html

 

Best regards,

Nurina

 

0 Kudos
ArminSch
Beginner
801 Views

Nurina,

yes, I'm using Nativelink for simulation. And, if I just leave out the dual_boot IP, everything runs fine and smooth (except that the dual_boot is not simulated, of course). But I have other IPs included as well (on_chip_flash, int_osc), and they are simulated perfectly fine.

As soon as I include the dual_boot IP the simulation just not starts with the error messages shown.

-armin

0 Kudos
Nurina
Employee
785 Views

Hi Armin,


You need to workaround by adding Verilog library above the VHDL library.


In the .do file of your project, add the lpm verilog library. To do this, search for the line that starts with vsim, add "-L lpm_ver" right before all the other libraries (you can see them in the same line as "-L altera -L lpm" etc.)


I hope this helps!

Nurina


0 Kudos
ArminSch
Beginner
780 Views

Hi Nuria,

thanks, this was the clue, it works now. I have an additional question, though:

I've copied the generated Nativelink simulation script, changed it, and specified it as the simulation-setup script. So I'm no longer using Nativelink (i.e., if I add/remove some sources I have to manually edit the script).

Is there a way to specify the missing library such that Nativelink includes it in the generated script?

Thanks,

armin

0 Kudos
Nurina
Employee
762 Views

Hi Armin,


Can you clarify what you mean- do you mean if there's a way we can include libraries in the simulation setup script just like how we do on NativeLink?


Thanks,

Nurina


0 Kudos
ArminSch
Beginner
754 Views

Nuria,

probably I have a wrong understanding of NativeLink: my understanding is that NativeLink generates the required compilation script on-the-fly based on the actual included IPs, sources, etc. 

As I have to manually add "-L lpm_ver" to the vsim command line, I can no longer use NativeLink but rather have to manually copy the generated script, edit it, and specify it as the compilation script.

My question is: is there any way to let NativeLink know that "-L lpm_ver" is required additionally in the vsim command line?

-armin

0 Kudos
Nurina
Employee
744 Views

Hi Armin,


Unfortunately you can't do that. You'll have to use a custom flow instead of the NativeLink flow for third party simulations. I'd say the method you've just used is the easiest method for custom flow.


You can refer to the documentation here for more methods/information on third party simulation: https://www.intel.com/content/www/us/en/programmable/documentation/gtt1529956823942.html#mwh1410383432838


Let me know if you have any more questions.

Nurina


0 Kudos
ArminSch
Beginner
737 Views

OK, I see, thanks.

But this should probably be considered a bug in NativeLink then. 

Anyway, thanks a lot for your help.

-armin

0 Kudos
Reply