Main Content

Cross-Network Cosimulation

Why Perform Cross-Network Cosimulation?

You can perform cross-network cosimulation when your setup comprises one machine running MATLAB® and Simulink® software and another machine running the HDL simulator. Typically, a Windows®-platform machine runs the MATLAB and Simulink software, while a Linux® machine runs the HDL simulator. However, these procedures apply to any combination of platforms that HDL Verifier™ and the HDL simulator support.

Vivado® cosimulation runs as a single process with a shared DLL, and therefore does not support cross-network cosimulation.

Preparing for Cross-Network Cosimulation

Before you cosimulate between the HDL simulator and MATLAB or Simulink across a network, perform the following steps:

  1. Create your design and testing files.

     ModelSim Users

     Xcelium Users

  2. Copy HDL Verifier libraries to the machine with the HDL simulator

    1. Go to the system where you installed MATLAB. Then, find the folder in the MATLAB distribution where the HDL Verifier libraries reside.

      You can usually find the libraries in the default installed folder:

      matlabroot/toolbox/edalink/extensions/adaptor/platform/productlibraryname_
      compiler_tag.ext

      where the variable shown in the following table have the values indicated.

      VariableValue
      matlabrootThe location where you installed the MATLAB software; default value is MATLAB/version where version is the installed release (for example, R2009a).
      adaptorincisive or modelsim
      platformThe operating system of the machine with the HDL simulator, for example, linux32. (For more information, see Cosimulation Libraries.)
      productlibrarynameThe name of the library files for MATLAB and for Simulink (for example, liblfmhdlc, liblfmhdls for ModelSim® users; liblfihdlc, liblfihdls for Xcelium™ users). See Cosimulation Libraries.
      compiler_tagThe compiler used to create the library (for example, gcc32 or spro). For more information, see Cosimulation Libraries.
      extdll (dynamic link library—Windows only) or so ( shared library extension)

      For a list of all the HDL Verifier HDL shared libraries shipped, see Default Libraries.

    2. From the MATLAB machine, copy the HDL Verifier libraries you plan to use (which you determined in step 2) to the machine where you installed the HDL simulator. Make note of the location to which you copied the libraries; you'll need this information when you are actually establishing the connection to the HDL simulator. For purposes of this example, the sample code refers to the destination folder as HDLSERVER_LIB_LOCATION.

If you now want to cosimulate with MATLAB, see Performing Cross-Network Cosimulation Using MATLAB. If you want to cosimulate with Simulink, see Performing Cross-Network Cosimulation Using Simulink.

Performing Cross-Network Cosimulation Using MATLAB

To perform an HDL-simulator-to-MATLAB cosimulation session across a network, follow these steps:

 ModelSim Users

 Xcelium Users

Performing Cross-Network Cosimulation Using Simulink

When you want to perform an HDL-simulator-to-Simulink cosimulation session across a network, follow these steps:

 ModelSim Users

 Xcelium Users

Next, run your simulation, add more blocks, or make other desired changes. For instructions on using Simulink and the HDL simulator for cosimulation, see Simulink as a Test Bench or Component Simulation with Simulink.