Signal Types

Multiple types of signals can connect the blocks in a model. For example, a model may contain a control signal to initiate the execution of another block and buses to simplify line routing.

The following table summarizes the types of Simulink® signals.

NameDescription
ArrayComposite signal that provides index-based signal access.
Array of BusesConcatenated signal that contains nonvirtual buses.
BusComposite signal that provides name-based signal access.
Composite SignalSignal composed of other signals. See Composite Signals.
Concatenated SignalNonvirtual composite signal that provides index-based signal access.
Control SignalSignal used by a block to initiate the execution of another block. For example, a signal that executes a function-call subsystem or an action subsystem. See Control Signals.
MatrixTwo-dimensional composite signal that provides index-based signal access.
Multidimensional (N-D) SignalComposite signal with more than two dimensions that provides index-based signal access.
Mux SignalVirtual composite signal that provides index-based signal access. Also known as a virtual vector.
Nonscalar SignalSignal with at least one dimension, such as a vector (1-D), matrix (2-D), or multidimensional array (N-D). Nonscalar signals are a type of composite signal.
Nonvirtual SignalSignal that affects simulation and code generation. See Virtual and Nonvirtual Signals.
Scalar SignalSignal that supports only one value at a time.
Variable-Size SignalSignal whose size (the number of elements in a dimension), in addition to its values, can change during a model simulation.
VectorOne-dimensional composite signal that provides index-based signal access.
Virtual SignalSignal that represents another signal or set of signals. A virtual signal is used for graphical purposes and has no functional effect. See Virtual and Nonvirtual Signals.

Control Signals

A control signal is a signal used by a block to initiate the execution of another block. For example, a signal that executes a function-call or action subsystem is a control signal. When you update or simulate a block diagram, Simulink uses a dash-dot pattern to draw lines that represent the control signals.

Composite Signals

You can group multiple signals in a composite signal, route the signal from block to block, and extract the constituent signals where needed. When you have many parallel signals, composite signals can simplify the appearance of a model and help to clarify generated code. Composite signals can be virtual or nonvirtual.

Types of composite signals include:

  • Virtual buses

  • Nonvirtual buses

  • Mux signals

  • Concatenated signals

  • Arrays of buses

For more information on composite signals, see Types of Composite Signals.

Virtual and Nonvirtual Signals

A virtual signal is a signal that graphically represents other signals or parts of other signals. Virtual signals are purely graphical entities; Simulink ignores them when simulating a model, and they do not exist in generated code. Some blocks, such as the Mux block, always generate virtual signals. Others, such as the Bus Creator block, can generate either virtual or nonvirtual signals. A signal is virtual if the block that generates it is virtual.

A nonvirtual signal is a signal that affects simulation and code generation. Some blocks, such as the Vector Concatenate block, always generate nonvirtual signals. A signal is nonvirtual if the block that generates it is nonvirtual.

For information on virtual and nonvirtual blocks, see Nonvirtual and Virtual Blocks.

Related Topics