Start the MATLAB® server as follows:
Start MATLAB.
In the MATLAB Command Window, call the hdldaemon
function
with property name/property value pairs that specify whether the HDL Verifier™ software
is to perform the following tasks:
Use shared memory or TCP/IP socket communication
Return time values in seconds or as 64-bit integers
See hdldaemon
reference
documentation for when and how to specify property name/property value
pairs and for more examples of using hdldaemon
.
The communication mode that you specify (shared memory or TCP/IP
sockets) must match what you specify for the communication mode when
you initialize the HDL simulator for use with a MATLAB cosimulation
session using the matlabtb
or matlabcp
function.
In addition, if you specify TCP/IP socket mode, the socket port that
you specify with hdldaemon
and matlabtb
or matlabcp
must
match. See TCP/IP Socket Ports for more information .
The MATLAB server can service multiple simultaneous HDL simulator modules and clients. However, your code must track the I/O associated with each entity or client.
Note
You cannot begin an HDL Verifier transaction between MATLAB and the HDL simulator from MATLAB. The MATLAB server simply responds to function call requests that it receives from the HDL simulator.
This command sets up socket communication on port 4449, and specifies a 64-bit time resolution format for the MATLAB function's output ports.
hdldaemon('socket',4449,'time','int64')
Start the HDL simulator directly from MATLAB by calling
the HDL Verifier function vsim
or nclaunch
.
>>vsim
You can call vsim
or nclaunch
with additional parameters; see
the reference pages for details.
You must make sure the HDL simulator executables — also
called vsim
(ModelSim®) and nclaunch
(Cadence Incisive®)
— are on the system path. See your system documentation for
instruction on setting environment variables.
Linux Users
Make sure the HDL simulator executable is still on the system path after the shell is launched from MATLAB. If it is not, make sure the shell startup file does not remove it from the path environment variable.
After you start the HDL simulator from MATLAB with a call
to vsim
or nclaunch
,
load an instance of an HDL module for verification or visualization
with the function vsimmatlab
or hdlsimmatlab
. At this point, you should
have coded and compiled your HDL model. Issue the function vsimmatlab
or hdlsimmatlab
for
each instance of an entity or module in your model that you want to
cosimulate. For example (for use with Incisive®):
hdlsimmatlab work.osc_top
This command loads the HDL Verifier library, opens
a simulation workspace for osc_top
, and display
a series of messages in the HDL simulator command window as the simulator
loads the entity (see example for remaining code).