Interleaving
Interleaving Interleaving is a way to arrange data in a non-contiguous way in order to increase performance.It protects the transmission from burst errors. Mostly, channel decoder are capable of detecting and correcting only one bit errors(random errors) in the received code. But, when burst errors (Long Error in consecutive bit position) occur then there is a problem with the decoding so channel interleaving concept is used in between, wherein the consecutive bits are dispersed by writing them in a column wise fashion but transmitting them row wise. This is clearly explained in the following . Example: Consider transmission without interleaving:
Error-free transmission: 11112222333344445555
But due to channel burst error had happened then the receiver would be receiving the code as shown:
Code received by receiver: 1111222----34444555
Code word 2222 is altered in one bit which can be rectified by using error correcting codes and the codeword 3333 is altered in three bits, so it cannot be decoded (decoding failure) or might be decoded into a wrong codeword (false decoding) by a channel decoder that can rectify only single bit errors. With interleaving we can rectify easily by using the same channel decoder as shown:
In interleaving instead of sending 11112222333344445555 directly what we do is just jumble it as shown
We arrange the code word as shown in column wise
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
and transmit data row wise as 1234123412341234
Error-free transmission: 1234123412341234
Now because of burst error receiver receives as shown
Data received by receiver: 1234123----41234
De-interleaving is done by arranging received data column wise and reading it row wise as shown
1 1 _ 1
2 2 _ 2
3 3 _ 3
4 _ 4 4
After de-interleaving data looks as: 11-122-233-34-44
In each of the code words 1111,2222,3333,4444 only one bit is altered, now the channel decoder capable of correcting one bit error can correct the data.