of 45
7/31/2019 Turbo Equal1 Ver3
1/45
Lecture Project
ECE 243BDepartment of Electrical & Computer Engg,
University of California, Santa Barbara
June 7, 2007
Anindya Sarkar and Sandeep Ponnuru
An Introduction to TurboEqualization
7/31/2019 Turbo Equal1 Ver3
2/45
June 7, 2007 2
Encoder
Interleaver
Mapper
Channel
ak
bk
ck
xk
yk
Binary data bits
Binary code bits
Scrambled version of bk
Channel symbol
Samples fromreceiver filter output
Systemconfigurationfor a digital
transmitter aspart of a
communicationlink
7/31/2019 Turbo Equal1 Ver3
3/45
June 7, 2007 3
Role of the various parts
Encoder dataprotection throughredundancy
Interleaver to avoid
long error bursts
Mapper maps the
interleaved coded bitsinto channel symbolssuitable for modulation
00 01 10 11
-3A -A A 3A
7/31/2019 Turbo Equal1 Ver3
4/45June 7, 2007 4
Receivers Job:
Rx should estimate the data that was transmitted,
using info of how the channel has corrupted the dataalong with added redundancy to protect the data
Nullifying the ISI effects on Tx data is equalization(detection)
Recovering the data bits from equalized symbolstream using ECC is decoding
7/31/2019 Turbo Equal1 Ver3
5/45June 7, 2007 5
7/31/2019 Turbo Equal1 Ver3
6/45June 7, 2007 6
Receiver A Optimal Detector
Optimal detector
yk
ak^
Main problem with MAP approach is that computationof APP (a-posteriori prob.) is computationallydemanding
P(ak = a|y) =X
a:ak=a
P(a|y) =X
a:ak=a
p(y|a)P(a)
p(y)
As y depends on the entire sequence
a=(a1,a2,..,aK) of data bits ak, MAP approach isinfeasible for large block lengths K because of theexponentially growing number 2K of terms p(y|a)
7/31/2019 Turbo Equal1 Ver3
7/45June 7, 2007 7
Decoder
Deinterleaver
Demapper
Equalizer/Detector
yk
s(xk)xk^
s(ck)
s(bk)
ak
bk
^
^
ck^
Receiver B
One time equalization anddecoding using hard or soft
decisions (receiver B)
1) First process the
observations to best estimatethe transmitted channelsymbols
2) After estimating channelsymbols, they are de-mapped into their associatedcode bits, de-interleavedand decoded using anoptimal decoder
7/31/2019 Turbo Equal1 Ver3
8/45June 7, 2007 8
Equalizer/Detector
Demapper Mapper
Deinterleaver Interleaver
Decoder
+
+-
-
yk
s(ck)
s(bk)
^ak
s(bk)
s(ck)
Receiver C
Once the error controldecoding processes thesoft information, it can
generate its own soft infoindicating the relativelikelihood for each Tx bit
The soft info from thedecoder can then beproperly interleavedand accounted forduring equalization,creating a feedbackloop between theequalizer and decoder
This process is beliefpropagation or messagepassing
7/31/2019 Turbo Equal1 Ver3
9/45June 7, 2007 9
Separate Equalization and Decoding
Standard approach to reduce the computational complexity is tosplit the detection problem into 2 subpartsequalization and
decoding.
We consider 2 classes of equalization: trellis based and linear
filtering based methods (also consider soft decoding)
Trellis based method - MAP symbol detector sets symbolestimate xk to that x from {1,-1} which maximizes the APP P(xk= x| y)
^
7/31/2019 Turbo Equal1 Ver3
10/45June 7, 2007 10
Z-1 Z-1xk
h0 h1 h2nk
yk
Tapped delay linecircuit of channelmodel (2 taps):we assume itsimpulse responseis known
yk = nk + vk, vk =L
X=0 h`xk`, k = 1, 2, , NFor a L-tap line, given a binary input alphabet {1,-1}, the channel can be in
one of 2L states, ri, i=1,2,..,2L, for the 2L possible delay elements
NB: given x v can be found as we assume channel is known
7/31/2019 Turbo Equal1 Ver3
11/45June 7, 2007 11
r0 r0 r0r0
r1 r1 r1 r1
r2 r2 r2 r2
xij/vij
r3 r3 r3 r3
k-1 k+1 k+2k
Trellis representation of the channel - r0 (00),r1 (01),r2 (10) and r3
(11) are 4 possible states. The aim is to compute P(Xk = x|y),given received sequence y, so as to find out the a posteriori mostlikely sequence
x01/v01
x21/v21
x20/v20
NB: given xij, vij can be found as we assume channel is known
Li E li i
7/31/2019 Turbo Equal1 Ver3
12/45
June 7, 2007 12
Linear Equalization
For a L-tap channel and a m-ary alphabet, MAPdetection for channel requires mL states in
trellishence linear equalization
Linear filtering based methods perform onlysimple operations on the received symbols
Given yk, and assuming knowledge ofchannel H, estimate xk can be obtained
through a linear/affine transform
7/31/2019 Turbo Equal1 Ver3
13/45
June 7, 2007 13
using channel model: yk = Hxk + nk
best affine estimate: xk = fTk
|{z}to estimateyk + bk
|{z}to estimatezero forcing case with noise: xk = xk + f
Tk nk
7/31/2019 Turbo Equal1 Ver3
14/45
June 7, 2007 14
MSE = E(|xk xk|2)
To minimize MSE, linear model used is as follows
xk = E(xk) + fTk (ykE(yk))
fk = Cov(yk,yk)1Cov(yk, xk)
D di
7/31/2019 Turbo Equal1 Ver3
15/45
June 7, 2007 15
Decoding
Decoding
Encoder is convolutional code
Trellis representation of convolutional code
Forward backward algorithm
Observation y
Prior L(a)
Forward/
Backward
A posteriori L(b)
Observation =0 & Prior from equalizer
P f f R i B
7/31/2019 Turbo Equal1 Ver3
16/45
June 7, 2007 16
Performance for Receiver B
BER for Receiver B with hard (dash) and soft (solid)
7/31/2019 Turbo Equal1 Ver3
17/45
June 7, 2007 17
Drawbacks of model
Separate equalization- decoding
K information bits N coded bits
Equalizer calculates P(xk/y)
Not all trellis paths are valid
EqualizerDemapper +Deinterleaver Decoder
y xk bk ak
Equalizers trellis
7/31/2019 Turbo Equal1 Ver3
18/45
June 7, 2007 18
Equalizer s trellis
At each trellis state we need to know if the branch leading to it is in valid:
Out of the 2N possible paths, identifying the 2K valid paths requires a look up of all
possible sequences a computationally prohibitive task for large N and K
INVALID
PATH
VALID PATH
Turbo equalizer
7/31/2019 Turbo Equal1 Ver3
19/45
June 7, 2007 19
Turbo equalizer
Equalizer
DeinterleaverInterleaver
Observation y
Lext(ck/y)
Lprior(ck/y)
L(bk/p)
+
_ +
Lext(bk/p)
L(ck/y)
L prior(bk/y)-
L(ak)
DecoderThis acts as prior P
extrinsic information
7/31/2019 Turbo Equal1 Ver3
20/45
June 7, 2007 20
Equalizers integration
MAP equalizer
Just like convolutional decoder
Exchange bit LLRs
MMSE
Use Prior LLRs (P(Xk=xk)) to get better estimates of xk The extrinsic info for xk should not contain any prior info
about xk
Avoid limit cycles by interleaving
Underlying code
7/31/2019 Turbo Equal1 Ver3
21/45
June 7, 2007 21
Underlying code
The inner code is channel code!
Recursive inner codes performed well
Add pre-coder to make the channel code recursive
Pre-coder memory < Channel memory
(1+D2, 1+D+D2) Interleaver+Mapper
Z-1 Z-1
h0 h1 h2
nk
ykXk~
Xk
Outer code Inner code
7/31/2019 Turbo Equal1 Ver3
22/45
June 7, 2007 22
Pre-coder Design
Consider a simple precoder 1/(1+D)
Input word with weight 1, Output word very large
weight Pre-coder transforms low weight outer-code
words to high weight Two types
Lower multiplicity of error events - 1/(1+Dk) (k=1,2)
Higher weights of error events - 1/ (1 + D2 + D3 )
Pre coder Design
7/31/2019 Turbo Equal1 Ver3
23/45
June 7, 2007 23
Pre-coder Design
Plot of BER showing two types of precoders
Precoder A: 5,3,11
(1/(1+DK))
Precoder B: 15, 17
(1/ (1 + D2 + D3 ))
Without precoder:
1
performs better at
higher SNR due tohigher weight ofo/p codewords
7/31/2019 Turbo Equal1 Ver3
24/45
June 7, 2007 24
Performance
Performance of turbo equalization with Accumulating Precoder for
various iterations
Without
precoder
With
Precoder
Best resultsafter
precoding -20 iterations
Shannon Limit
L t S
7/31/2019 Turbo Equal1 Ver3
25/45
June 7, 2007 25
Lecture Summary
ISI channel as a rate 1 convolutional code BCJR like decoding
MMSE type decoding for big constellations
Separate equalization and decoding
far off Shannon Limits
Answer: Turbo equalization Simplified decoder for channel code (e.g. MMSE)
efficient precoder design
Main References:
7/31/2019 Turbo Equal1 Ver3
26/45
June 7, 2007 26
Main References:1) Turbo equalization: principles and new results
Tuchler, M. Koetter, R. Singer, A.C.Inst. for Commun. Eng., Tech. Univ. of Munich;This paper appears in: Communications, IEEE Transactions onPublication Date: May 2002
Volume: 50, Issue: 5On page(s): 754-767
2) The effect of a precoder on serially concatenated coding systems with anISI channelInkyu LeeWireless Syst. Res. Lab., Murray Hill, NJ;This paper appears in: Communications, IEEE Transactions onPublication Date: Jul 2001
Volume: 49, Issue: 7On page(s): 1168-1175
http://ieeexplore.ieee.org/search/searchresult.jsp?disp=cit&queryText=%28%20koetter%20%20r.%3CIN%3Eau%29&valnm=+Koetter%2C+R.&reqloc%20=others&history=yeshttp://ieeexplore.ieee.org/search/searchresult.jsp?disp=cit&queryText=%28%20singer%20%20a.%20c.%3CIN%3Eau%29&valnm=+Singer%2C+A.C.&reqloc%20=others&history=yeshttp://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=26http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=21711&isYear=2002http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=26http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=20235&isYear=2001http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=20235&isYear=2001http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=21711&isYear=2002http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=26http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=26http://ieeexplore.ieee.org/search/searchresult.jsp?disp=cit&queryText=%28%20singer%20%20a.%20c.%3CIN%3Eau%29&valnm=+Singer%2C+A.C.&reqloc%20=others&history=yeshttp://ieeexplore.ieee.org/search/searchresult.jsp?disp=cit&queryText=%28%20koetter%20%20r.%3CIN%3Eau%29&valnm=+Koetter%2C+R.&reqloc%20=others&history=yes7/31/2019 Turbo Equal1 Ver3
27/45
June 7, 2007 27
THANK YOU
QUESTIONS??
7/31/2019 Turbo Equal1 Ver3
28/45
June 7, 2007 28
ak = argmaxa{0,1} P(ak = a|y)
yk = nk +LX
`=0
h`xk`, k = 1, 2, , N
output vk is given by vk =LX
`=0
h`xk`
xk = fkTyk + bk
\LARGE{\begin{equation*}
P(a_k = a| \bf{y}) = \sum_{\forall \bf{a}: a_k=a} P(\bf{a|y}) = \sum_{\forall \bf{a}: a_k=a} \frac{
p(\bf{y|a})P(\bf{a})}{p(\bf{y})}
\end{equation*}}
Role of the various parts
7/31/2019 Turbo Equal1 Ver3
29/45
June 7, 2007 29
Role of the various parts
Encoder protect the data by adding proper redundancy. Forward error correction protects the data from random
single bit errors or short bursts
Interleaver to ensure that such errors appear random and toavoid long error bursts, interleaver helps to randomize the order
of the code bits prior to transmission
Mapper permuted code bits are converted into electrical
signal levels that can be modulated either at baseband or ontoa carrier (passband). Mapper maps the interleaved coded bitsinto channel symbols suitable for modulation
Channel Effects:
7/31/2019 Turbo Equal1 Ver3
30/45
June 7, 2007 30
Channel Effects:
Traditional methods of data protection used inECC do not work when the channel introduces
additional distortions, in form of ISI
When the channel is dispersive, the receiverwill need to compensate for the channel effectsbefore using a standard decoding algorithm
Methods for channel compensation are calledchannel equalization
Tasks for Receiver
7/31/2019 Turbo Equal1 Ver3
31/45
June 7, 2007 31
Tasks for Receiver
Rx should estimate the data that was transmitted,using info of how the channel has corrupted the dataalong with added redundancy to protect the data
When channel introduces ISI, adjacent channelsymbols are smeared together creating dependencies
among Tx channel symbols.
Nullifying the ISI effects on Tx
data is equalization(detection) while recovering the data bits fromequalized symbol stream using ECC is decoding
Why soft information??
7/31/2019 Turbo Equal1 Ver3
32/45
June 7, 2007 32
Why soft information??
Equalizer can make hard decisions as to whichsequence of channel symbols were transmitted, andfor these hard decisions to be mapped into theirconstituent binary code bits.
The process of making hard decisions on the channelsymbols destroys information pertaining to how likely
each channel symbol may have been
The extra soft information can be changed to
probabilities that each of the received code bits takeson 0/1, which after deinterleaving, can be exploited bya BER optimal decoding algorithm
Optimal Detection
7/31/2019 Turbo Equal1 Ver3
33/45
June 7, 2007 33
Opt a etect o
Optimal Rx achieves the minimum probability of errorfor each data bit ak.
This is achieved by setting ak to that value whichmaximizes the a-posteriori probability
given the observed sequence y, i.e.
An algorithm that maximizes the APP is called amaximum a posteriori (MAP) algorithm
( )k k
P a a
( | )kP a a y=
ak = argmaxa{0,1}
P(ak = a|y)
Problem with MAP approach
7/31/2019 Turbo Equal1 Ver3
34/45
June 7, 2007 34
pp
Main problem with MAP approach is that computationof APP is computationally demanding
As y depends on the entire sequence a=(a1,a2,..,aK) of
data bits ak, MAP approach is infeasible for large blocklengths K because of the exponentially growingnumber 2K of terms p(y|a)
P(ak = a|y) =X
a:ak=a
P(a|y) =X
a:ak=a
p(y|a)P(a
p(y)
xTapped delay
7/31/2019 Turbo Equal1 Ver3
35/45
June 7, 2007 35
xk
yk
h0h
1
h2
nk
line circuit ofchannel
model
(2 taps)
\LARGE{\begin{equation*}
y_k = n_k + \sum_{\ell=0}^L h_{\ell}x_{k - \ell}, ~ k=1,2,\cdots,N
\end{equation*}}
For a L-tap line, given a binary input alphabet {1,-1}, the channel can be in one of 2L
states, ri, i=1,2,..,2L, for the 2L possible delay elements
MAP symbol detection
7/31/2019 Turbo Equal1 Ver3
36/45
June 7, 2007 36
y For a L-tap line, given a binary input alphabet {1,-1},
the channel can be in one of 2L states, ri, i=1,2,..,2L,for the 2L possible delay elements
S = {r1,r2,,r2^L} = set of possible states
Given sk, the state sk+1 can only assume one of 2values corresponding to whether 1/-1 is fed in at timek
possible evolution of states is given by trellis
output vk is given by vk =L
X=0
h`xk`
7/31/2019 Turbo Equal1 Ver3
37/45
June 7, 2007 37
p(sk, sk+1,y) = p(y)P(sk, sk+1|y)
p(sk, s
k+1,y
) =p
(sk, y
1, , y
k1)| {z }
k(sk)
. p(sk+1
, yk|sk)| {z }
k(sk,sk+1)
. p(yk+1
, , yN|sk+1)| {z }
k+1(sk+1)
k(s) =XsS
k1(s)k1(s, s)
k(s) =XsS
k+1(s)k(s, s)
k(sk, sk+1) = P(sk+1|sk)p(yk|sk, sk+1)
k(ri, rj) = P(xk = xij).p(yk|vk = vij), (i, j) B
0, (i, j) 6= B
p(yk|vk) = exp((yk vk)2/(22))/
22
P(xk = x|y) =X
(i,j)B:xij=x
P(sk = ri, sk+1 = rj |y)
We can then obtain the conditional LLR L(ck|y) of the code
7/31/2019 Turbo Equal1 Ver3
38/45
June 7, 2007 38
k ybit ck, (assuming BPSK)
The code estimates ck are computed from the sign ofL(ck|y)
^
L(ck|y) = lnP(ck = 0|y)
P(ck = 1|y)
= lnP(xk = +1|y)
P(xk = 1|y)
Computational complexity of the trellis basedapproaches is given by the number of trellis states,equal to 2L, which grows exponentially with L, the
number of delay elements or taps
Linear Equalization
7/31/2019 Turbo Equal1 Ver3
39/45
June 7, 2007 39
In contrast to MAP, linear filter based methodsperform only simple operations on the receivedsymbols, which are generally applied sequentially to a
subset yk of the observed symbols
Given yk, estimate x
kof x
kcan be obtained as
The vector fk and scalar bk are parameters obtainedthrough optimization
xk = fkTyk + bk
^
Assumptions on the model:
7/31/2019 Turbo Equal1 Ver3
40/45
June 7, 2007 40
Assumptions on the model:
Series of transmit pulse shapes modulated withsymbols xk is transmitted over a LTI channel withknown channel impulse response (CIR)
Coherent symbol-spaced Rx with exact knowledge ofsignal phase and symbol timing receives transmittedwaveforms
Received waveforms are passed through the receivefilter which is matched to transmit pulse shape andCIR
Problem Setup
7/31/2019 Turbo Equal1 Ver3
41/45
June 7, 2007 41
A branch of the trellis is a 4-tuple (i,j,xij,vij) such thatstate sk+1=rj at time k+1 can be reached from statesk=ri at time k, with input xk=xij and output vk=vij
The set of all index pairs (i,j) corresponding to validbranches is denoted by B
Aim is to efficiently compute the APP P(xk|y)
We initially compute the prob. that the Tx sequencepath in the trellis contained the branch (i,j,xij,vij) at timek, i.e. P(s
k
=ri
,sk+1
=rj
|y)
( ) ( )P( | )
7/31/2019 Turbo Equal1 Ver3
42/45
June 7, 2007 42
p(sk, sk+1,y) = p(y)P(sk, sk+1|y)
p(sk, sk+1
,y) = p(sk, y1, , yk
1)| {z }
k(sk)
. p(sk+1
, yk|sk)| {z }k(sk,sk+1)
. p(yk+1
, , yN|sk+1
)| {z }k+1(sk+1)
k(s) =XsS
k1(s)k1(s, s)
k(s) =XsS
k+1(s)k(s, s)
k(sk, sk+1) = P(sk+1|sk)p(yk|sk, sk+1)
k(ri, rj) = P(xk = xij).p(yk|vk = vij), (i, j) B
0, (i, j) 6= B
p(yk|vk) = exp((yk vk)2/(22))/
22
P(xk = x|y) = X(i,j)B:xij=x
P(sk = ri, sk+1 = rj |y)
Equalization Approaches
7/31/2019 Turbo Equal1 Ver3
43/45
June 7, 2007 43
Linear model suggests multiplying yk with avector fk that recovers xk perfectly in theabsence of noise
This Zero Forcing Equalizer suffers from
noise enhancement, when the channelimpulse response matrix is ill-conditioned
This can be avoided using linear minimummean square error (MMSE) estimation
Avoiding Limit Cycles
7/31/2019 Turbo Equal1 Ver3
44/45
June 7, 2007 44
Soft info an independent piece of information
However, if decoder formulates the soft info about a given bit,based on soft info provided from the equalizer about exactly the
same bit, then this info is not independent of the channelobservations
This would result in a feedback loop of length 2 equalizerinforms the decoder about a given bit while the decoder re-informs the equalizer what it already knows.
Solution Equalizer tells the decoder new info about a bitbased on info gathered from distant parts of the received signal(using interleaver).
Possible Receiver Configurations:
7/31/2019 Turbo Equal1 Ver3
45/45
June 7, 2007 45
Possible Receiver Configurations:
Receiver A: optimal detector
Receiver B: separate equalization and
decoding
Receiver C: turbo equalization jointequalization and decoding