Turbo Codes
Turbo Codes
Turbo Codes
send
receive
Channel Coding
To encode the information sent over a communication
channel in such a way that in the presence of channel
noise, errors can be detected and/or corrected.
Can be categorized into
Backward error correction (BEC)
Forward error correction (FEC )
Objective: provide coded signals with better distance
properties
Types of coding
Block coding
Convolutional coding: codes differ from block
codes in the sense that they do not break the
message stream into fixed-size blocks. Instead
redundancy is added continuously to the whole
stream. The encoder keeps M previous input bits
in memory. Each output bit of the encoder then
depends on the current input bit as well as the M
stored bits.
Structured Redundency
Channel
Channel
Input word encoder Output word
encoder
n-bit
k-bit
codeword
Code sequence
Redundancy = (n-k)
Code rate = k/n
A Need for Better Codes
Energy efficiency vs Bandwidth efficiency
Codes with lower rate (i.e. bigger redundancy)
correct more errors.then communication system
can operate with a lower transmit power, transmit
over longer distances, tolerate more interference,
use smaller antennas and transmit at a higher data
rate. These properties make the code energy
efficient.
low-rate codes have a large overhead and are
hence more heavy on bandwidth consumption.
Also, decoding complexity grows exponentially
with code length.
Shannon Theory
RSC
Input
Y1
Interleaver
random
Systematic codeword
RSC
Y2
Recursive Systematic Coders
Systematic Copy of the data in natural order
Recursive
S1 S2 S3
Data stream
http://www.google.com
[2] University of South Australia, Institute for
Telecommunications Research,Turbo coding
research group.
http://www.itr.unisa.edu.au/~steven/turbo/.
[3] S.A. Barbulescu and S.S. Pietrobon. Turbo
codes: A tutorial on a new class of powerful error
correction coding schemes. Part I: Code
structures and interleaverdesign. J. Elec. and
Electron.Eng., Australia, 19:129–142, September
1999.
Thank You…..