#### Example 7.3

## Implementation

One way to accomplish interleaving is to read the encoded data blocks as rows into a matrix. Once the matrix is full (incurring a time delay penalty), the data can be read out in columns, redistributing the data for transmission. At the receiver, a de-interleaving process is performed using a similar matrix filling and emptying process, reconstituting the original blocks. At the same time the burst errors are uniformly redistributed across the blocks. The number of rows or columns in the matrix is sometimes referred to as the interleaving depth. The greater the interleaving depth, the greater resistance to long fades, but also the greater the latency in the decoding process as both the TX and RX matrix must be full before encoding or decoding can occur. |