Version 1.3 (R14SP1+) Link for ModelSim®

This table summarizes what's new in V1.3 (R14SP1+):

New Features and ChangesVersion Compatibility ConsiderationsFixed Bugs and Known ProblemsRelated Documentation at Web Site
Yes
Details below
Yes—Details labeled as Compatibility Considerations, below. See also Summary.No bug fixesNo

New features and changes introduced in this version are:

User-Defined Simulink and ModelSim Timing Relationship for Cosimulation

Overview

Link for ModelSim 1.3 lets you define the timing relationship between Simulink and ModelSim during cosimulation. Using the new Timescales pane of the VHDL Cosimulation block, you can now overcome problems caused by differences in the representation of simulation time between ModelSim and Simulink.

In ModelSim, the unit of simulation time is referred to as a tick. The duration of a tick is defined by the ModelSim resolution limit. The default resolution limit is 1 ns. In Simulink, simulation time is represented as a double-precision value scaled to seconds. This representation accommodates continuous models and discrete controllers.

In previous releases, the VHDL Cosimulation block supported only a fixed correspondence between simulation time in Simulink and ModelSim. In the older timing mode, one time step in Simulink corresponded to one tick in ModelSim. For example, if the total simulation time in Simulink were specified as 100 time steps, then the ModelSim VHDL simulation would run for exactly 100 ticks (i.e., 100 ns at the default resolution limit).

New Timing Modes

Link for ModelSim 1.3 continues to support the older timing model as a default. However, the new Timescales pane of the VHDL Cosimulation block lets you specify the relationship between timestep sizes in a Simulink/ModelSim cosimulation with much more control and flexibility.

The figure below shows the default settings of the Timescales pane.

The Timescales pane specifies a correspondence between one second of Simulink time and some quantity of ModelSim time. This quantity of ModelSim time can be expressed in one of the following ways:

The Timescales pane contains two lists that let you select the timing mode or time unit and the scale factor. The list on the right specifies the timing mode or the time unit (see the figure below). To choose relative mode, select Tick. To choose absolute mode, select one of the available time units ( fs, ps, ns, us, ms, or s ).

The list on the left specifies the scale factor applied to the time unit (see the figure below).

The default Timescales settings (see above) specify relative mode with a scale factor of 1. This default Simulink / ModelSim timing relationship is the same as the relationship defined in previous releases. The default ensures backward compatibility for existing models.

In the figure below, the Timescales parameters are configured for absolute mode. An absolute time unit (fs) and a scale factor of 100 are selected. During cosimulation, one second in Simulink corresponds to 10 fs in ModelSim.

Representation of Simulation Time in the Link for ModelSim documentation gives a detailed description of the Timescales pane and the supported timing modes, with cosimulation examples.

ModelSim 6.0 Supported

Link for ModelSim now supports ModelSim Version 6.0.

Smart Copy of Signal Names from ModelSim Wave Window

You can now copy HDL signal names (including the full HDL signal path) from the ModelSim wave window and paste them directly into the Full HDL Name field of the Ports or Clocks pane of the VHDL Cosimulation block. This convenience can save you time and errors when cosimulating an HDL design that includes long or complex signal pathnames.

To copy and paste a signal name:

  1. Activate ModelSim. Select the desired signal from the signal list in the ModelSim wave window. In the figure below, the signal /inverter/inport is selected.

  2. Right-click on the selected signal. Then select Copy from the context menu.

  3. Activate Simulink. Then open the block parameters dialog for the desired VHDL Cosimulation block in your model.

  4. Activate the appropriate (Ports or Clocks) pane of the VHDL Cosimulation block.

  5. Select the desired signal entry from the signal list, or click the New button to create a new entry.

  6. Select the Full HDL Name field.

  7. Right-click and select Paste from the context menu to paste the signal name into the Full HDL Name field. At this point, the signal name is in a special clipboard format (shown below).

  8. Click Update. Link for ModelSim translates the signal name into its final format (in this example, /inverter/inport ) and updates the signal list.

  9. If required, configure other parameters of the signal.

  10. Click Apply when you have finished entering signal data.

VHDL Cosimulation Block No Longer Supports Use of -1 as a Block Output Port Sample Time or Clock Period

The VHDL Cosimulation block no longer supports use of -1 block output port sample time or clock period.

In previous releases, you could assign the default value -1 as

When this default was assigned, Simulink set the port sample time or the clock period equal to the fastest sample time used in the block.

Compatibility Considerations

You must explicitly specify sample times for all VHDL Cosimulation block output ports and clock periods, or accept default values. Default values are

VHDL Cosimulation blocks in existing models should be modified to specify explicit output port sample times and clock periods. Use of the value -1 will cause an error at simulation time.

VHDL Source and Sink Blocks Removed

The VHDL Source and VHDL Sink blocks have been removed from the Link for ModelSim block library. These blocks were simply VHDL Cosimulation blocks that were preconfigured with only output ports (Source block) or only input ports (Sink block).

Compatibility Considerations

Existing models that use VHDL Source and VHDL Sink blocks will continue to operate correctly, using the Simulink block forwarding mechanism. However, we recommend that you change existing models to use VHDL Cosimulation blocks rather than VHDL Source and VHDL Sink blocks.

setupmodelsim Command Renamed to configuremodelsim

The setupmodelsim command has been renamed to configuremodelsim. The two commands are functionally identical.

Compatibility Considerations

For backward compatibility, the setupmodelsim command continues to work in this release. However, we recommend that you replace setupmodelsim in your scripts, using configuremodelsim instead.

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS