Turbo codes
-
Upload
ravindra-gaikwad -
Category
Engineering
-
view
541 -
download
5
Transcript of Turbo codes
![Page 1: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/1.jpg)
Mr. Ravindra Gaikwad
Mr.Utkarsh KumarM.Tech (ECE)
Dept. of Electronics
Pondicherry University
Turbo codes
![Page 2: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/2.jpg)
Outline
• Introduction
– Forward error correction
– Channel capacity
• Turbo codes
– Encoding
– Decoding
– Application
![Page 3: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/3.jpg)
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.
![Page 4: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/4.jpg)
Channel
encoder
m r
• 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
![Page 5: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/5.jpg)
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
Where P is transmitted power
ondbitsBN
PBC sec/1log
0
2
![Page 6: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/6.jpg)
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.
![Page 7: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/7.jpg)
Key elements
• Concatenated Encoders
• Recursive convolutional encoders
• Pseudo-random interleaving
• Iterative Decoding
![Page 8: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/8.jpg)
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
![Page 9: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/9.jpg)
Parallel concatenated code
RSC
Encoder 1
RSC
Encoder 2
Interleaver
input Systematic output
Parity 1
Systematic output
Parity 2
One systematic and two parity bits are generated from the message stream
![Page 10: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/10.jpg)
Serial concatenated code
Outer
encoderInterleaver
Inner
encoder
![Page 11: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/11.jpg)
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.
![Page 12: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/12.jpg)
• A good code will causes low weight output with low
probability
• RSC will produces low weight and low probability
output
![Page 13: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/13.jpg)
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.
![Page 14: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/14.jpg)
Turbo decoding
Conv
Decoder1
Interleaver
Deinterleaver
Conv
Decoder2
Systematic
data
Parity 1
Parity 2
![Page 15: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/15.jpg)
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.
![Page 16: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/16.jpg)
• 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.
![Page 17: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/17.jpg)
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.
![Page 18: Turbo codes](https://reader033.fdocuments.us/reader033/viewer/2022042607/55a543de1a28aba2478b467c/html5/thumbnails/18.jpg)
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.