MT Block DeInterleave (Matrix)
- Updated2023-02-17
- 3 minute(s) read
MT Block DeInterleave (Matrix)
Performs deinterleaving by writing the input data into an m(rows) × n(columns) matrix, column by column, and then reading the data out row by row when the matrix is full. Typically, MT Block Interleave (Matrix) and MT Block DeInterleave (Matrix) are used together.
Inputs/Outputs

data in
The input data to be deinterleaved. Data is processed in blocks of mn, where m is the number of rows and n is the number of columns. If the number of data samples is less than block size mn, the block interleaver does not generate any data if the node is run once. If the data samples are continuously fed in and if the number of data samples is greater than but not a multiple of mn, the block interleaver buffers the remaining samples for use in the next iteration. For example, if m = 3, n = 4, and 27 data samples are specified, this node interleaves two blocks (2×12=24) of data and buffers 3 samples (27-24=3) for use in the next iteration. Data is read in by row and read out by column.

number of rows
The number of rows of the block deinterleaver.
Default value: 0

number of columns
The number of columns of the block deinterleaver.
Default value: 0

error in
Error conditions that occur before this node runs.
The node responds to this input according to standard error behavior.
Default value: No error

reset?
A Boolean that determines how this node handles buffered data.
| TRUE | Clears the buffered data, checks the input parameters on a first call, and reflects any change in the input parameter values during subsequent iterations. |
| FALSE | Adds the buffered data to the beginning of data from next iteration, in continuous operations. |
Default value: TRUE

data out
The output of the block deinterleave operation. The data generated of a block deinterleaver is the same as the data passed into to the block interleaver.

error out
Error information.
The node produces this output according to standard error behavior.
Deinterleave Operation Example
The following is a theoretical example of the deinterleave operation.
If the data in parameter is 0,5,10,1,6,11,2,7,12,3,8,13,4,9,14, the block could be visualized as follows.
| 0 | 1 | 2 | 3 | 4 |
| 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 |
The returned deinterleaved data in the data out parameter would be 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,…