This block performs interleaving by filling a fixed size matrix row by row and then outputting column by column.
- IO Type
- Supported types are: complex, float, int, short, and byte
- Vector Length
- The vector length for the input stream.
- The number of rows for the interleaver.
- The number of columns for the interleaver.
- A boolean variable indicating if the block should behave as an interleaver (deinterleave=False) or deinterleaver (deinterleave=true).
Below is a basic interleave/deinterleave example with the matrix interleaver block:
On the interleaver side, the settings are set as follows:
On the deinterleave side, the settings are the same except the deinterleave variable is set to true:
The output is then captured with a QT GUI Time Sink block. The first signal is the input from the vector source (numbers 0 to 11). The second trace is the interleaved signal following the example in the description section. The third trace is the deinterleaved signal which matches the vector source output.
- Python files
- Block definition