Dataflow Subsystem - Subsystem whose execution domain is set to Dataflow - Simulink (original) (raw)
Main Content
Subsystem whose execution domain is set to Dataflow
Libraries:
DSP System Toolbox / Dataflow
Description
The Dataflow Subsystem block is a Subsystem block preconfigured with the execution domain set to dataflow. A Dataflow Subsystem uses synchronous dataflow as a model of computation, which is data-driven and statically scheduled.
Dataflow Subsystems help to
- Improve simulation throughput with multithreaded execution
Dataflow domains leverage the multicore CPU architecture of the host computer and can improve simulation speed significantly. It automatically partitions your model and simulates the system using multiple threads. By adding latency to your system, you can further increase concurrency and improve simulation throughput of your model. - Automatically infer signal sizes for frame-based multirate models
See Dataflow Domain for more information.
Examples
Ports
Input
Placing an Inport block in a subsystem adds an external input port to the block. The port label on the subsystem block is the name of theInport block.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Output
Placing an Outport block in a subsystem adds an output port from the block. The port label on the subsystem block is the name of theOutport block.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Parameters
The Dataflow Subsystem block uses the same parameters as theSubsystem block. For parameter descriptions and programmatic use information, see Subsystem, Atomic Subsystem, Nonvirtual Subsystem, CodeReuse Subsystem (Simulink).
Note
The topmost dataflow subsystem is treated as an atomic subsystem. All child dataflow subsystems are treated as virtual subsystems.
To increase the throughput of a system, it can be advantageous to increase the latency of the system. Specify the Latency value in theExecution tab of the Property Inspector. For more information, see Latency.
Programmatic Use
Block Parameter:Latency |
---|
Type: character vector |
Values: scalar integer |
Default: '0' |
When the Automatic frame size calculation parameter is enabled, dataflow domains automatically calculate frame sizes and insert buffers into your model, avoiding signal size propagation errors in multirate signal processing systems. For more information, see Automatic Frame Size Calculation.
Programmatic Use
Block Parameter:AutoFrameSizeCalculation |
---|
Type: character vector |
Values:'off'|'on' |
Default: 'off' |
Block Characteristics
Data Types | Booleana | busa | doublea | enumerateda | fixed pointa | halfa | integera | singlea | stringa |
---|---|---|---|---|---|---|---|---|
Direct Feedthrough | no | |||||||
Multidimensional Signals | yesa | |||||||
Variable-Size Signals | yesa | |||||||
Zero-Crossing Detection | no | |||||||
a Actual data type or capability support depends on block implementation. |
Extended Capabilities
Version History
Introduced in R2018b