Forum Discussion

VCham's avatar
VCham
Icon for Occasional Contributor rankOccasional Contributor
6 years ago
Solved

Error: (vsim-3033) Instantiation of 'msgdma' failed. The design unit was not found.

I get this error when I try to simulate in ModelSim Altera Starter Edition 10.3c This is my first time simulating a Qsys block in ModelSim. I have successfully completed the following steps: crea...
  • VCham's avatar
    6 years ago

    I am using ModelSim Altera Starter Edition 10.3c.

    I am also compiling within ModelSim but the Qsys project was created using Quartus Prime Version 17.0.2.

    As an update, I realized that the way I defined the TOP_LEVEL_NAME in the mentor. do file was incorrect. Which meant it prevented the msim_setup.tcl script from running the simulation. And when I then went and tried to run the simulation manually, I was doing so without the library inclusions that the tcl script uses.

    vsim -t ps $ELAB_OPTIONS $USER_DEFINED_ELAB_OPTIONS -L work -L work_lib -L write_mstr_internal -L read_mstr_internal -L dispatcher_internal -L rst_controller -L msgdma_0 -L altera_ver -L lpm_ver -L sgate_ver -L altera_mf_ver -L altera_lnsim_ver -L cyclonev_ver -L cyclonev_hssi_ver -L cyclonev_pcie_hip_ver $TOP_LEVEL_NAME

    Since it was hard to find information online for how to define these variables, the definition that finally worked was

    set TOP_LEVEL_NAME work.user_module_tb

    I am now able to simulate. I get warnings that may have to do with the fact that my test bench is still incomplete, but otherwise the MSGDMA is simulating properly.