Main Content

Unbuffer

Unbuffer input frame into sequence of scalar outputs

  • Unbuffer block

Libraries:
DSP System Toolbox / Signal Management / Buffers

Description

The Unbuffer block unbuffers an Mi-by-N input into a 1-by-N output. The block unbuffers the input row-wise so that each matrix row becomes an independent time-sample in the output. The rate at which the block receives inputs is generally less than the rate at which the block produces outputs.

For example, consider this illustration. The block receives inputs only once every three sample periods, but produces an output once every sample period. To rebuffer inputs to a larger or smaller frame size, use the Buffer block.

The block adjusts the output rate so that the sample period is the same at both the input and output, Tso = Tsi. Therefore, the output sample period for an input of frame size Mi and frame period Tfi is Tfi/Mi, which represents a rate Mi times higher than the input frame rate.

In the following illustration, the block unbuffers a four-channel input with a frame size of three. The Initial conditions parameter is set to zero and the tasking mode is set to multitasking, so the first three outputs are zero vectors.

Examples

Ports

Input

expand all

Specify the signal to unbuffer as a scalar, vector, or a matrix.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point
Complex Number Support: Yes

Output

expand all

The Unbuffer block unbuffers an Mi-by-N input into a 1-by-N output. The block unbuffers the inputs row-wise so that each matrix row becomes an independent time-sample in the output.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point
Complex Number Support: Yes

Parameters

expand all

Specify the block's initial output for cases of nonzero latency as a:

  • Scalar to be repeated for the first Mi output samples of every channel

  • Length-Mi vector containing the values of the first Mi output samples for every channel

  • Mi-by-N matrix containing the values of the first Mi output samples in each of N channels

Note

For more information on latency and the Simulink® tasking modes, see Excess Algorithmic Delay (Tasking Latency) and Time-Based Scheduling and Code Generation (Simulink Coder).

Block Characteristics

Data Types

Boolean | double | fixed point | integer | single

Direct Feedthrough

no

Multidimensional Signals

no

Variable-Size Signals

no

Zero-Crossing Detection

no

More About

expand all

Extended Capabilities

Version History

Introduced before R2006a