Mr. Ravindra Gaikwad 
Mr.Utkarsh Kumar 
M.Tech (ECE) 
Dept. of Electronics 
Pondicherry University 
Turbo codes
Outline 
• Introduction 
– Forward error correction 
– Channel capacity 
• Turbo codes 
– Encoding 
– Decoding 
– Application
Error correction 
• The key idea of FEC is to transmit enough 
redundant data to allow receiver to recover 
from errors all by itself. No sender 
retransmission required. 
• The major categories of FEC codes are 
– Block codes, 
– Cyclic codes, 
– Reed-Solomon codes, 
– Convolutional codes, 
– Turbo codes.
m r 
Channel 
encoder 
• Input message m contains k symbols. 
• Encoded message r contains n symbols. 
• n > k where extra bits are redundant bits in the codeword. 
• The code rate is k/n
Channel capacity 
• The channel capacity C of a continuous channel with 
bandwidth B Hertz can be perturbed by additive 
Gaussian white noise of power spectral density N0/2, 
provided bandwidth B satisfies 
 
 
 
 
 
C Blog 1 / sec 
bits ond 
P 
  
2  
N B 
0 
 
 
Where P is transmitted power
Turbo codes 
• Turbo codes were proposed by Berrou and Glavieux in 
the 1993 International Conference in Communications. 
• Performance close to the Shannon Limit. 
• Mix between Convolutional and Block codes. 
• The best code among FEC codes.
Key elements 
• Concatenated Encoders 
• Recursive convolutional encoders 
• Pseudo-random interleaving 
• Iterative Decoding
Concatenated encoding 
• Some times single error correction codes are not good 
enough for error protection 
• Concatenating two or more codes will results more 
powerful codes 
• Types of concatenated codes 
1. Serial concatenated codes 
2. Parallel concatenated codes
Parallel concatenated code 
input Systematic output 
RSC 
Encoder 1 
RSC 
Encoder 2 
Interleaver 
Parity 1 
Systematic output 
Parity 2 
One systematic and two parity bits are generated from the message stream
Serial concatenated code 
Outer 
encoder 
Interleaver 
Inner 
encoder
Recursive convolutional encoder 
mi 
• An RSC encoder can be 
constructed from a standard 
convolutional encoder by 
feeding back one of the 
outputs. 
• In coded system 
performance is dominated 
by low weight code words.
• A good code will causes low weight output with low 
probability 
• RSC will produces low weight and low probability 
output
Need of interleaver 
• Shannon showed that large block-length random codes 
achieve channel capacity 
• Only a small number of low-weight input sequences 
are mapped to low-weight output sequences 
• Make the code appear random, while maintaining 
enough structure to permit decoding 
• The interleaver ensures that the probability that both 
encoders have inputs that causes low weight output is 
very low.
Turbo decoding 
Conv 
Decoder1 
Interleaver 
Deinterleaver 
Conv 
Decoder2 
Systematic 
data 
Parity 1 
Parity 2
Decoding 
• Turbo codes get their name because the decoder uses 
feedback, like a turbo engine. 
• Each decoder estimates the a posteriori probability 
(MAP) of each data bit. 
• Decoding continues for a set number of iterations.
• Performance generally improves from iteration to 
iteration, but follows a law of diminishing returns 
• Information exchanged by the decoders must not be 
strongly correlated with systematic info or earlier 
exchanges.
APPLICATION 
• Wireless multimedia 
– Data: use large frame sizes 
• Low BER, but long latency 
– Voice: use small frame sizes 
• Short latency, but higher BER 
• Combined equalization and error correction decoding. 
• Combined multiuser detection and error correction 
decoding.
Pros and cons 
• Pros 
– Remarkable power 
efficiency in AWGN 
and flat-fading 
channels for 
moderately low BER. 
– Deign tradeoffs 
suitable for delivery 
of multimedia 
services. 
• Cons 
– Long latency. 
– Poor performance at 
very low BER. 
– Because turbo codes 
operate at very low 
SNR, channel 
estimation and 
tracking is a critical 
issue.

Turbo codes

  • 1.
    Mr. Ravindra Gaikwad Mr.Utkarsh Kumar M.Tech (ECE) Dept. of Electronics Pondicherry University Turbo codes
  • 2.
    Outline • Introduction – Forward error correction – Channel capacity • Turbo codes – Encoding – Decoding – Application
  • 3.
    Error correction •The key idea of FEC is to transmit enough redundant data to allow receiver to recover from errors all by itself. No sender retransmission required. • The major categories of FEC codes are – Block codes, – Cyclic codes, – Reed-Solomon codes, – Convolutional codes, – Turbo codes.
  • 4.
    m r Channel encoder • Input message m contains k symbols. • Encoded message r contains n symbols. • n > k where extra bits are redundant bits in the codeword. • The code rate is k/n
  • 5.
    Channel capacity •The channel capacity C of a continuous channel with bandwidth B Hertz can be perturbed by additive Gaussian white noise of power spectral density N0/2, provided bandwidth B satisfies      C Blog 1 / sec bits ond P   2  N B 0   Where P is transmitted power
  • 6.
    Turbo codes •Turbo codes were proposed by Berrou and Glavieux in the 1993 International Conference in Communications. • Performance close to the Shannon Limit. • Mix between Convolutional and Block codes. • The best code among FEC codes.
  • 7.
    Key elements •Concatenated Encoders • Recursive convolutional encoders • Pseudo-random interleaving • Iterative Decoding
  • 8.
    Concatenated encoding •Some times single error correction codes are not good enough for error protection • Concatenating two or more codes will results more powerful codes • Types of concatenated codes 1. Serial concatenated codes 2. Parallel concatenated codes
  • 9.
    Parallel concatenated code input Systematic output RSC Encoder 1 RSC Encoder 2 Interleaver Parity 1 Systematic output Parity 2 One systematic and two parity bits are generated from the message stream
  • 10.
    Serial concatenated code Outer encoder Interleaver Inner encoder
  • 11.
    Recursive convolutional encoder mi • An RSC encoder can be constructed from a standard convolutional encoder by feeding back one of the outputs. • In coded system performance is dominated by low weight code words.
  • 12.
    • A goodcode will causes low weight output with low probability • RSC will produces low weight and low probability output
  • 13.
    Need of interleaver • Shannon showed that large block-length random codes achieve channel capacity • Only a small number of low-weight input sequences are mapped to low-weight output sequences • Make the code appear random, while maintaining enough structure to permit decoding • The interleaver ensures that the probability that both encoders have inputs that causes low weight output is very low.
  • 14.
    Turbo decoding Conv Decoder1 Interleaver Deinterleaver Conv Decoder2 Systematic data Parity 1 Parity 2
  • 15.
    Decoding • Turbocodes get their name because the decoder uses feedback, like a turbo engine. • Each decoder estimates the a posteriori probability (MAP) of each data bit. • Decoding continues for a set number of iterations.
  • 16.
    • Performance generallyimproves from iteration to iteration, but follows a law of diminishing returns • Information exchanged by the decoders must not be strongly correlated with systematic info or earlier exchanges.
  • 17.
    APPLICATION • Wirelessmultimedia – Data: use large frame sizes • Low BER, but long latency – Voice: use small frame sizes • Short latency, but higher BER • Combined equalization and error correction decoding. • Combined multiuser detection and error correction decoding.
  • 18.
    Pros and cons • Pros – Remarkable power efficiency in AWGN and flat-fading channels for moderately low BER. – Deign tradeoffs suitable for delivery of multimedia services. • Cons – Long latency. – Poor performance at very low BER. – Because turbo codes operate at very low SNR, channel estimation and tracking is a critical issue.