Turbo Codes
Turbo Codes
Turbo Codes
Background
◦ Proposed by Berrou and Glavieux in the 1993
International Conference in Communications.
◦ Performance within 0.5 dB of the channel
capacity limit for BPSK was demonstrated.
Features of turbo codes
◦ Parallel concatenated coding
◦ Recursive convolutional encoders
◦ Pseudo-random interleaving
◦ Iterative decoding
Encoder
Systematic
Input Output
Xk Xk
“Upper” Uninterleaved
RSC Parity Output
Encoder Zk
Interleaved
“Lower” Parity
Interleaved
Interleaver Input RSC Z’k
X’k Encoder
Recursive Systematic Convolutional
Encoding
xi( 0 )
An RSC encoder can be
mi xi constructed from a
D D standard convolutional
encoder by feeding back
xi(1)
one of the outputs.
An RSC encoder has an
Constraint Length K= 3 infinite impulse response.
mi xi( 0 ) An arbitrary input will
cause a “good” (high
weight) output with high
xi probability.
ri Some inputs will cause
D D “bad” (low weight)
xi(1) outputs.
Pseudo Random Interleaver
▪ Random interleavers are constructed as block interleavers
Interleaver
p13=1 p24=1
d’k d’k
Map Map
p’1k decoder 1 decoder 2 p’2k
L1e (dk )
P
For a convolutional coder
p3,3
S3 S3
S2 S2
S1 S1
p0,0
S0 S0
k-1(s1)
3,3
k(s3) k+1(s3)
k+1(s2)
Considering coder1 and coder2 terminated with state s 0
Let
Then,
We know
Then
or
……(1)
Ak : constant wrt uk
...(1) (2)
Since terms independent of uk come out of summation, they cancel
in numerator and denominator.
Therefore
:Apriori information