| Version 2.0 (R2007a) SimEvents® Software Release Notes | ![]() |
This table summarizes what's new in Version 2.0 (R2007a):
| New Features and Changes | Version Compatibility Considerations | Fixed Bugs and Known Problems | Related Documentation at Web Site |
|---|---|---|---|
| Yes Details below | Yes—Details labeled as Compatibility Considerations, below. See also Summary. | Bug Reports Includes fixes | No |
New features and changes introduced in this version are
New Demos for Video Processing, Communications, and Architecture Modeling
Output Switch Block Options for Storage and Initial Condition
Version 2.0 (R2007a) introduces new versions of the Get Attribute and Set Attribute blocks in a new Attributes library. The new blocks offer these enhancements compared to the earlier versions:
Attributes can assume values that are vectors, matrices, or multidimensional arrays with up to 32 dimensions, not just scalars. This enhancement facilitates modeling dense payloads via attributes.
Each instance of a Set Attribute block can assign an arbitrary number of attributes, and each instance of a Get Attribute block can retrieve an arbitrary number of attributes.
The dialog boxes use a grid on a single tab, making it easier for you to see the entire list of attributes that a block sets or gets.
If your legacy models contain Get Attribute or Set Attribute blocks from the earlier library, those blocks continue to work in Version 2.0 (R2007a). However, the blocks are considered obsolete, as described in Obsolete Blocks.
The new Entity Combiner block lets you combine entities, analogous to combining components to create a larger whole. The block provides options for managing information (attributes and timers) associated with the component entities, so you can think of the operation as bundling the information that entities carry with them.
You can configure the Entity Combiner block to make the combining operation reversible via the Entity Splitter block.
The Entity Combiner and Entity Splitter blocks reside in the new Entity Management library.
You can model point-to-point timing constraints by limiting the amount of time an entity spends during the simulation on designated entity paths. Exceeding the limit causes the entity to depart immediately from the storage block where it resides, such as a queue, when the clock reaches the time limit. To learn how to use this feature, see Forcing Departures Using Timeouts.
The timeout feature involves new blocks, as well as new parameters in existing blocks.
| New Block | Purpose |
|---|---|
| Schedule Timeout | Schedule timeout event for each entity |
| Cancel Timeout | Cancel timeout event for each entity |
Existing Blocks with New Timeout-Related Parameters
| New Parameter of Existing Blocks | Purpose |
|---|---|
| Enable TO port for timed-out entities on Timeout tab | Provide a TO entity output port through which an entity departs upon timing out |
| Number of entities timed out on Statistics tab | Output a signal, #to, that indicates the number of entities that have timed out from the block since the start of the simulation |
If you save a model containing a queue, server, or Output Switch block using V2.0 (R2007a), then opening the model in V1.2 (R2006b) produces warnings like these:
Warning: In instantiating linked block 'mysys/FIFO Queue' : FIFO Queue block (mask) does not have a parameter named 'EnableTOPort'. Warning: In instantiating linked block 'mysys/FIFO Queue' : FIFO Queue block (mask) does not have a parameter named 'StatNumberTimedout'.
Saving the model in the earlier version prevents the warnings from reappearing, but causes the block to omit timeout-related ports and behavior if you later open the model in V2.0 (R2007a).
Version 2.0 (R2007a) introduces these new demonstration models:
Tutorial Demos
Application Demos
Video Streaming Over Bandwidth-Limited Communication Channel
Bit Timing Recovery Using Fixed-Rate Resampling and SimEvents®
The Selective-Repeat Automatic Repeat Request demo reverses the interpretation of the CRC check compared to V1.2 (R2006b). The interpretation now matches that of the similar Go-Back-N Automatic Repeat Request demo. In V2.0 (R2007a), both demos use a CRC check value of 1 to correspond to an ACK message.
The Output Switch block offers enhancements that can prevent the need for additional blocks to set initial conditions or to prevent latency. The new parameters apply to signal-based switching and are available only when you set Switching criterion to From signal port p. The new parameters are in the table below. For details, see Output Switching Based on a Signal and the block's reference page.
| New Parameter | Purpose |
|---|---|
| Specify initial port selection | Determine whether the block uses an initial port selection from the dialog box. |
| Initial port selection | The entity output port that the block selects when the simulation begins. The block uses this value instead of the p signal until the signal has its first sample time hit. |
| Store entity before switching | If you select this option, the block can store one entity at a time. Furthermore, the block decouples its arrival and departure processing to give other blocks in the simulation an opportunity to update the p signal if appropriate. If you do not select this option, the block processes an arrival and departure as an atomic operation and assumes that the p signal is already up to date at the given time. |
| Status of pending entity on Statistics tab | Output a signal, pe, that indicates when the block stores an entity after trying and failing to output it. A value of 0 indicates when the storage location is empty. |
For other changes in this release that affect parameters of the Output Switch block, see Timeout Feature Establishes Entity Time Limits and Changes in Names of Parameters Related to Event Priorities.
In some cases, the block enhancements let you optionally simplify models that you do not need to share with users of earlier versions:
If your model precedes an Output Switch block with a Signal Latch block to create an initial condition for the p signal, and if the p signal does not branch to become an input for another block, then you can remove the Signal Latch block and instead use the new Specify initial port selection option in the switch block.
If your model precedes an Output Switch block with a Single Server block whose Service time parameter is zero and whose sole purpose was to ensure an up-to-date p signal, then you can remove the Single Server block and instead use the new Store entity before switching option in the switch block.
If you save a model containing an Output Switch block using V2.0 (R2007a), then opening the model in V1.2 (R2006b) produces warnings like these:
Warning: In instantiating linked block 'mysys/Output Switch' : Output Switch block (mask) does not have a parameter named 'InitialConditionsOpt'. Warning: In instantiating linked block 'mysys/Output Switch' : Output Switch block (mask) does not have a parameter named 'InitialConditions'. Warning: In instantiating linked block 'mysys/Output Switch' : Output Switch block (mask) does not have a parameter named 'EntityBufferOpt'. Warning: In instantiating linked block 'mysys/Output Switch' : Output Switch block (mask) does not have a parameter named 'StatPendingEntity'.
Saving the model in the earlier version prevents the warnings from reappearing, but causes the block to omit ports and behavior related to the V2.0 (R2007a) enhancements if you later open the model in V2.0 (R2007a).
If you configure the Entity Departure Counter block to write the count to an attribute, then you can select the new Create attribute if not present parameter to have the block create the attribute if it does not already exist. The block then sets the value of the attribute according to the entity count.
In earlier versions, the block sets the value of the attribute but does not create it.
Parameters related to optional priorities of events have been renamed to be more suggestive of how the option works. The name Resolve simultaneous signal updates according to event priority replaces names that start with Specify event priority. In a subset of affected blocks, the name Event priority replaces similar names. For more information about what the prompts mean, see Choosing How to Resolve Simultaneous Signal Updates.
The table below itemizes the blocks and parameters that have changed.
| Block | Parameter Name in V1.2 (R2006b) | Parameter Name in V2.0 (R2007a) |
|---|---|---|
| Discrete Event Inport | Specify event priority for executing subsystem | Resolve simultaneous signal updates according to event priority |
| Subsystem execution event priority | Event priority | |
| Enabled Gate | Specify event priority for gate opening and closing | Resolve simultaneous signal updates according to event priority |
| Entity Departure Counter | Specify event priority for counter reset | Resolve simultaneous signal updates according to event priority |
| Event-Based Entity Generator | Specify event priority for entity generation | Resolve simultaneous signal updates according to event priority |
| Generation event priority | Event priority | |
| Input Switch | Specify event priority for port selection | Resolve simultaneous signal updates according to event priority |
| Output Switch | Specify event priority for port selection | Resolve simultaneous signal updates according to event priority |
| Path Combiner | Specify event priority for port precedence selection | Resolve simultaneous signal updates according to event priority |
| Release Gate | Specify event priority for gate opening | Resolve simultaneous signal updates according to event priority |
| Signal Latch | Specify event priority for writing to memory | Resolve simultaneous signal updates according to event priority on Write tab |
| Specify event priority for reading from memory | Resolve simultaneous signal updates according to event priority on Read tab | |
| Signal-Based Event to Function-Call Event | Specify event priority for function-call generation | Resolve simultaneous signal updates according to event priority |
| Function-call event priority | Event priority | |
| Signal-Based Function-Call Event Generator | Specify event priority for function-call generation | Resolve simultaneous signal updates according to event priority |
| Function-call event priority | Event priority |
This change merely renames parameters and does not change the behavior of affected blocks.
The default value of Entity type in the Time-Based Entity Generator and Event-Based Entity Generator block is Blank. In earlier versions, the default value is Standard. This change in default value does not affect blocks in a saved model but only affects new instances of the block that you copy from the library to a model.
The table below indicates blocks that are obsolete as of the current version or that are planned to be removed in a future version.
| Obsolete Block | Removed from Version | Replacement |
|---|---|---|
| Get Attribute block from simeventsattributes1 library | Future version | Get Attribute block from simeventsattributes2 library |
| Set Attribute block from simeventsattributes1 library | Future version | Set Attribute block from simeventsattributes2 library |
![]() | Version 2.1 (R2007b) SimEvents® Software | Version 1.2 (R2006b) SimEvents® Software | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |