Convolutional Codes
Introduction:
Convolutional codes are frequently used to correct errors in noisy channels.Like any error-correcting code, a convolutional code works by adding some structured redundant information to the user's data and then correcting errors using this information.
Convolutional code:
- Convolutional code is generated by passing the information sequence through a finite state shift register.
- The shift register consists of K stages with k bits per stage.
- There are n binary addition operators with inputs taken from all K stages: these operators produce a code word of length n for each k bit input sequence
Encoder:
Binary convolutional encoder can be represented as a shift register.The outputs of the encoder are modulo 2 sums of the values in the certain register's cells.
Generator Matrix:
The generator matrix is a compact description of how code words are generated from information bits in a linear block code.
Consider an (n, k) code with k information bits denoted as
That is encoded into the codeword
We represent the encoding operation as a set of n equations defined by
Where g I,j is binary (0 or 1) and binary (standard) multiplication is used. We can write these n equations in matrix form as
Where the k × n generator matrix G for the code is defined as