Main Content

Bus-Capable Blocks

Blocks that support buses or arrays of buses can accept them as input, produce them as output, store them in memory, or perform a combination of these options. Block support for buses and arrays of buses can depend on block parameter settings.

This table describes whether a block supports virtual buses, nonvirtual buses, and arrays of buses.

Note

Buses that contain signals of enumerated data types do not pass through a block that requires a nonzero scalar initial value (such as a Unit Delay block). Use a structure value to initialize signals with enumerated types.

BlockVirtual Bus SupportNonvirtual Bus SupportArray of Buses Support
All virtual blocks (see Nonvirtual and Virtual Blocks)

Supported

Inport and Outport blocks at the top-level of a model must specify Simulink.Bus object data types.

Supported

Supported with limitations

All virtual blocks except Demux, Enable, Mux, and Trigger blocks support arrays of buses.

Argument Inport

Not supported

Supported

Supported

Argument Outport

Not supported

Supported

Supported

Assignment

Not supported

Use the Bus Assignment block instead.

Supported

Supported

Bus Assignment

Supported

Supported

Not supported

Use the Assignment block instead.

Bus Creator

Supported

Supported

Supported

Supports arrays of buses as input.

To create arrays of buses, use the Vector Concatenate or Matrix Concatenate block.

Bus Selector

Supported

Supported

Supported

Supports arrays of buses as output.

To select elements from arrays of buses, use the Selector block.

Chart (Stateflow)

Supported

Supports virtual buses when they are defined by a Simulink.Bus object data type.

Supported

Supported

Constant

Not supported

Supported

Supported

Data Store Memory

Not supported

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Data Store Read

Not supported

Supported

Supported

Data Store Write

Not supported

Supported

Supported

Delay

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

From File

Not supported

Supported

Not supported

From Workspace

Not supported

Supported

Supported

Function Caller

Not supported

Supported

Supported

IC

Not supported

Supported

Supported

In Bus Element

Supported

Supported

Supported

Supports array of buses as output.

Inport

Supported

When receiving a virtual bus at the top-level of a model, the virtual bus must be defined by a Simulink.Bus object data type.

Supported

Supported

Interpolation Using Prelookup

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supports arrays of buses as input. For an example, see Configure the Prelookup Block to Output Index and Fraction as a Bus.

Manual Switch

Supported

Supported

Supported

MATLAB Function

Supported

Supports virtual buses as input when they are defined by a Simulink.Bus object data type. The output bus is nonvirtual.

Supported

Supported

MATLAB System

Supported

Supports virtual buses as input when they are defined by a Simulink.Bus object data type. The output bus is nonvirtual.

Supported

Supported

Matrix Concatenate

Not supported

Use the Bus Creator block instead.

Supported

Supports nonvirtual buses as input.

To create nonvirtual buses, use the Bus Creator block.

Supported

Memory

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Merge

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Model

Supported

Supports virtual buses when they are defined by one of these options:

  • Simulink.Bus object data types

  • In Bus Element blocks

  • Out Bus Element blocks

Supported

Supported

Multiport Switch

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Out Bus Element

Supported

Supported

Supported

Supports arrays of buses as input.

Outport

Supported

When connected to a virtual bus at the top-level of a model, the virtual bus must be defined by a Simulink.Bus object data type.

Supported

Supported

Permute Dimensions

Not supported

Supported

Supported

Prelookup

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

Supports arrays of buses as output. For an example, see Configure the Prelookup Block to Output Index and Fraction as a Bus.

Probe

Supported

Supports virtual buses as input.

Supported

Supports nonvirtual buses as input.

Supported

Supports arrays of buses as input.

Rate Transition

Supported

Supported

Supported

Reshape

Not supported

Supported

Supported

S-Function

Supported

Supports virtual buses when they are defined by a Simulink.Bus object data type.

Supported

Supported

Selector

Not supported

Use the Bus Selector block instead.

Supported

Supports nonvirtual buses as output.

To select elements from nonvirtual buses, use the Bus Selector block.

Supported

Signal Conversion

Supported

To convert a virtual bus to a nonvirtual bus, specify a Simulink.Bus object data type for the bus. For more information, see the block documentation.

Supported

Supported

Supports array of buses when Output is set to Signal copy. For more information, see the block documentation.

Signal Editor

Not supported

Supported

For requirements, see the block documentation.

Supported

State Reader

Not supported

Supported

Supported

Subsystem

Supported

Supported

Supported

Switch

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

To File

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Not supported

To Workspace

Supported

For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Not supported

Unit Delay

Supported

Supported

Supported

Vector Concatenate

Not supported

Use the Bus Creator block instead.

Supported

Supports nonvirtual buses as input. For requirements, see the block documentation.

Supported

For requirements, see the block documentation.

Width

Supported

Supports virtual buses as input.

Supported

Supports nonvirtual buses as input.

Supported

Supports arrays of buses as input.

Zero-Order Hold

Supported

Supported

Supported

Related Topics