**Subject :**Wireless Communication

**Unit :**Cellular System Design

## 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