Simulink Release Notes    

Upgrading from an Earlier Release

This section discusses upgrade issues in moving from Simulink 4.0 to Simulink 4.1.

See Upgrading from an Earlier Release in the Simulink 4.0 Release Notes for upgrade issues involved in moving from Simulink 3.0 (Release 11.0) to Simulink 4.1.

Running Simulink 4.1 Models in Simulink 4.0

Simulink 4.0 can run models created or saved by Simulink 4.1 as long as the models do not use features introduced in the new version, including new block types and block parameters. In particular, you should not attempt to use Simulink 4.0 to simulate or even open models that use the new Simulink control flow blocks. Opening such models cause Simulink 4.0 to crash.

Simulink Block Library Reorganization

The Simulink Block Library contains a new Subsystems sublibrary. The new library contains most of the new control flow blocks as well as subsystem and subsystem-related blocks that used to reside in the Signals & Systems library. The subsystems in the new library each contain the minimum set of blocks needed to create a functioning subsystem, e.g., an input port and an output port.

Direct Feedthrough Compensation Deprecated

If an S-function needs the current value of its input to compute its output, it must set its direct feedthrough flag to true. Previously, if a direct feedthrough S-function failed to do this, Simulink tried to provide a valid signal to the S-function's mdlOutput (M-file flag=3) or mdlGetTimeOfNextVarHit (M-file flag=4) methods. This special compensation mode for S-functions was flawed. For this reason, the current version deprecates the mode, though making it available as an option. In this version, by default, if an S-function sets its direct feedthrough flag to false during initialization, Simulink sets the S-function's input signal to NULL (or a NaN signal for M-file S-functions) during the mdlOutput or mdlGetTimeOfNextVarHit methods. Thus, in this version, models with S-function(s) may produce segmentation violations. See matlabroot/simulink/src/sfuntmpl_directfeed.txt for more information.

S-Functions Sorted Like Built-In Blocks

When sorting blocks, Simulink now treats S-function blocks the way it treats built-in blocks. This means that S-functions now work correctly in nonvirtual subsystems when there is a direct feedback connection (in Simulink 4.0 and prior, this wasn't the case). It also means that models compile (update diagram) faster. As a side effect, the execution order for S-functions that incorrectly set the direct feedthrough flag differs from that used in previous versions of Simulink. Consequently, models that contain invalid S-functions may produce different answers in this version of Simulink.

Added Latched Triggered Subsystems

Now triggered subsystems enable you to implement software triggering, hardware triggering, or a combination of the two. Software triggering is defined as

Hardware triggering is defined as

Previous to this version, triggered subsystems provided software triggering and a form of hardware triggering when a cycle involving triggered subsystems existed. Now, you must explicitly specify whether or not you'd like software or hardware triggering. This is done by selecting 'Latch (buffer) input' on the Inport blocks in a triggered subsystem.

Each input port of a triggered subsystem configures whether or not the input should be latched. A latched input provides the hardware-triggering semantics for that input port. Type sl_subsys_semantics at the MATLAB prompt for more information.

Self-Triggering Subsystems Are No Longer Allowed

Before this version, you could define the output of a triggered subsystem to directly feed back into the trigger port of the subsystem (with potentially other additive signals). This resulted in an implicit delay. Now you must explicitly define the delay by inserting a memory block.

Improved Invalid Model Configuration Diagnostics

This version of Simulink does a better job of detecting and flagging invalid modeling constructs in Simulink models. Consequently models that ran in previous versions of Simulink (sometimes producing incorrect results) may not run in the current release. The changes include:


  Bug Fixes Known Software Problems