MATLAB: Does a change in ModelSim 6.2 ‘vopt’ flow disallow access to cosimulation signals

EDA Simulator Link MQ

Prior to ModelSim release 6.2, the default mode for compilation and elaboration was for minimal optimizations, allowing for read/write access of cosimulation signals. Starting with release 6.2, Mentor has updated the default optimization flow which may result in cosimulation signals not being present or not having read/write access permissions needed by the Link for ModelSim product. If the signal does not exist or access is not available, messages similar to the following will appear in the vsim command console:
vpi_handle_by_name(): ERROR - Cannot find an object matching the name "mysignal"
MLwarn - M-Function failure: Reference to non-existent field 'mysignal'

Best Answer

Mentor provides a full explanation of their change to the compilation flow in their 6.2 documentation, including workarounds. In particular, see the chapter "Optimizing Designs with vopt" in the User's Manual. Below is a brief overview of the options available to ModelSim customers:
1. Change the ModelSim installation, project, or user modelsim.ini files to use a backward-compatible optimization flow (see VoptFlow)
2. Modify the ModelSim compilation, elaboration, and simulation commands to affect the optimization flow (see -novopt command line argument and the vopt command)
3. Modify the ModelSim compilation, elaboration, and simulation commands to explicitly preserve and grant read/write access to the cosimulated signals (see the '+acc' argument)