I am trying to simulate a synthesized netlist in modelsim standalone. The file is synthesized from infered memory and uses M20K rams. The file in addition to the ieee libraries declares:
I created both libraries and compiled eda/sim_lib/twentynm_components.vhd and
eda/sim_lib/twentynm_atoms. vhd to twentynm.
eda/sim_lib/altera_primitives_components.vhd to altera.
upon further compiling I realized that som of those file required an additional library, altera_lnsim, which I created and comiled
eda/sim_lib/altera_lnsim_components.vhd to it.
All libraries compiled successfully without errors or warnings and I can see the compiled design units in their respective libraries. Further more I can compile my DUT file in the project without errors. BUT!!............
when I start the sim, while the design is loading I get warnings when the synthesized netlist tries to load complaing about :
Component instance "inst : generic_m20k" is not bound
Upon further inspection of one of the library files that I compiled,
eda/sim_lib/twentynm_atoms. vhd I that noticed that it contains a package at the top of the file and many entity/architect constructs too. And these constructs all have a use clause :
In this is where the generic_m20k is instanced.
How can it be looking for twentynm_atom_pack in library work????
this is my issue. unless someone can point me to what I'm doing wrong.
To run the simulation, you have to add library model for that specific family device, ie twentynm library for your case. Find and include necessary precompiled libraries for modelsim in here /quartus/eda/sim_lib/ . My advice is to use nativelink flow to set up the simulation environment for your project. It has self-generated script and is more easier way than manually adding those libraries. Refer to link https://www.intel.com/content/www/us/en/programmable/documentation/gtt1529956823942.html to understand its flow.