Maximum Likelihood Sequence Detection - spsc
Maximum Likelihood Sequence Detection - spsc
Maximum Likelihood Sequence Detection - spsc
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Maximum</strong> <strong>Likelihood</strong> <strong>Sequence</strong><br />
<strong>Detection</strong><br />
• Channel<br />
• ML <strong>Detection</strong><br />
• Error Probability<br />
SPSC<br />
1
Channel<br />
• Delay Spread<br />
• time dispersion<br />
• intersymbol interference (ISI).<br />
• frequency selective fading<br />
• Channel Model<br />
• passband PAM<br />
• baseband PAM<br />
SPSC<br />
2
Channel Model<br />
SPSC<br />
3
Discrete-Time Equivalent<br />
Channel Model for PAM<br />
∞<br />
jωT<br />
⎡ ⎛ 2π ⎞⎤ ⎡ ⎛ 2π ⎞⎤ ⎡ ⎛ 2π<br />
⎞⎤<br />
P( e ) = ∑ G⎢ j⎜ω− m⎟ BE<br />
j⎜ω− m⎟ F j⎜ω−<br />
m⎟<br />
m=−∞<br />
T<br />
⎥ ⎢<br />
T<br />
⎥ ⎢<br />
T<br />
⎥<br />
⎣ ⎝ ⎠⎦ ⎣ ⎝ ⎠⎦ ⎣ ⎝ ⎠⎦<br />
2N<br />
0<br />
( j T<br />
∞<br />
ω<br />
SZ<br />
e ) = ∑ F j + m<br />
T m=−∞<br />
( ( 2 π<br />
ω )) 2<br />
T<br />
SPSC<br />
4
Matched Filter as<br />
Receiver Front End (1)<br />
• matched filter as receive filter<br />
• discrete-time equivalent channel model<br />
SPSC<br />
5
Matched Filter as<br />
Receiver Front End (2)<br />
• autocorrelation of baseband receive<br />
pulse shape h(t)<br />
ρ<br />
∞<br />
*<br />
h( ) = ∫ ( ) ( − )<br />
−∞<br />
k h t h t kT dt<br />
• folded spectrum<br />
∞<br />
∞<br />
jωT<br />
jωkT<br />
1<br />
S ( e ) = ∑ ρ ( k)<br />
e = ∑<br />
T<br />
H j + m<br />
( ( 2 π<br />
ω )) 2<br />
h h T<br />
k=−∞<br />
m=−∞<br />
SPSC<br />
6
Whitening of the<br />
Matched Filter (1)<br />
• matched filter colored noise<br />
jωT<br />
S ( e ) = 2 N S ( e )<br />
• spectral factorization<br />
Z<br />
2<br />
0<br />
h<br />
jωT<br />
Sh ( z ) = γ M ( z ) M (1/ z )<br />
• minimal phase and allpass system<br />
S ( z) = H ( z) H ( z)<br />
h<br />
min<br />
∗<br />
ap<br />
∗<br />
SPSC<br />
7
Whitening of the<br />
Matched Filter (2)<br />
• equalization with inverse minimal phase filter<br />
• noise process has white power spectrum<br />
S ( ) N<br />
z<br />
=<br />
2N<br />
K<br />
0<br />
SPSC<br />
8
<strong>Detection</strong><br />
• ML <strong>Detection</strong> of a Single Symbol<br />
• ML <strong>Detection</strong> of a Signal Vector<br />
• ML <strong>Detection</strong> with Intersymbol<br />
Interference<br />
• <strong>Sequence</strong> <strong>Detection</strong><br />
• Markov Chains<br />
• Markov Chain Signal Generator<br />
• The Viterbi Algorithm<br />
SPSC<br />
9
<strong>Detection</strong><br />
• Estimation transmitted signal is contiuousvalued<br />
• <strong>Detection</strong> transmitted signal is discretevalued<br />
• Model for detection:<br />
SPSC<br />
10
ML <strong>Detection</strong> of a Single Symbol<br />
• Special case of MAP detector if<br />
p ( ) A<br />
â = const<br />
p<br />
AY |<br />
( â| y)<br />
=<br />
p ( y| â) p ( â)<br />
YA |<br />
p<br />
Y<br />
( y)<br />
A<br />
• ML chooses<br />
âε Ω A<br />
• To maximize likelihood<br />
• Measure of the quality<br />
p<br />
|<br />
( y| â)<br />
YA<br />
Pr[ error] = Pr[ â ≠ a]<br />
SPSC<br />
11
ML <strong>Detection</strong> of a Signal Vector<br />
• Vector of Symbols<br />
• Maximize f ˆ ˆ ˆ ˆ<br />
YS |<br />
( y | s) = fNS |<br />
( y − s| s) = fN( y −s)<br />
• Equivalent to maximize<br />
1 1<br />
f ( y ˆ<br />
⎛<br />
− s ) exp ˆ<br />
N<br />
=<br />
M /2 M ⎜− −<br />
2<br />
(2 π) σ ⎝ 2σ<br />
y s<br />
2<br />
⎞<br />
⎟<br />
⎠<br />
• Equivalent to minimizing<br />
y<br />
− sˆ<br />
SPSC<br />
12
ML <strong>Detection</strong> With Intersymbol<br />
Interference (1)<br />
• Generator is LTI filter<br />
• Input single data symbol A<br />
• Model<br />
h ,0≤<br />
k ≤ M<br />
k<br />
Y= hA<br />
+ N<br />
SPSC<br />
13
ML <strong>Detection</strong> With Intersymbol<br />
Interference (2)<br />
• ML minimizes distance âh and<br />
observation y<br />
2 2 2 2<br />
y− hâ = y − 2 y,<br />
h â+<br />
h â<br />
• Equivalent to maximizing<br />
2 2<br />
2 yh , â−<br />
h â<br />
[ ]<br />
0<br />
yh , = ∑ yh<br />
m m<br />
= yk * h − k k =<br />
m<br />
SPSC<br />
14
ML <strong>Detection</strong> With Intersymbol<br />
Interference (3)<br />
SPSC<br />
15
ML <strong>Detection</strong> With Intersymbol<br />
Interference (4)<br />
• Exponential complexity<br />
• Message of K M-ary symbols<br />
M K matched filters<br />
M K comparisons<br />
SPSC<br />
16
<strong>Sequence</strong> <strong>Detection</strong><br />
• Markov Chains<br />
• Markov Chain Signal Generator<br />
• The Viterbi Algorithm<br />
SPSC<br />
17
Markov Chains (1)<br />
• Independent of past samples<br />
p<br />
Ψ | Ψ , Ψ ,... = p Ψ | Ψ<br />
( ) ( )<br />
k+ 1 k k− 1 k+<br />
1 k<br />
• Homogenous if independent of k<br />
• State transition diagram<br />
SPSC<br />
18
Markov Chains (2)<br />
• Trellis diagram<br />
• Node<br />
• Branch<br />
• Path<br />
SPSC<br />
19
Markov Chain<br />
Signal Generator (1)<br />
• <strong>Sequence</strong> of homogenous Markov<br />
chain states<br />
• State transitions<br />
Ψ k<br />
• Observation function<br />
• State of shift-register<br />
Ψ =<br />
S = g ψ ψ<br />
k k k + 1<br />
( , )<br />
M<br />
g( ψ , ψ +<br />
) = ∑ hA −<br />
[ X , X ,..., X ]<br />
k k−1 k−2<br />
k−M<br />
k k 1 i k 1<br />
i=<br />
0<br />
SPSC<br />
20
• ISI Model<br />
Markov Chain<br />
Signal Generator (2)<br />
• Shift-register process<br />
SPSC<br />
21
Markov Chain<br />
Signal Generator Example<br />
h = δ + 0.5δ k k k −<br />
1<br />
SPSC<br />
22
The Viterbi Algorithm (1)<br />
• A. Viterbi of UCLA in 1967<br />
• Homogenous Markov chain<br />
• Linear complexity growing with<br />
message length K<br />
• Application for maximization problems<br />
SPSC<br />
23
The Viterbi Algorithm (2)<br />
• <strong>Sequence</strong> of inputs = path through the<br />
trellis<br />
• Assign<br />
branch metric = y −s<br />
• Path metric = Σ branch metrics<br />
• Choose lowest path metric =<br />
minimize y− sˆ<br />
k<br />
k<br />
2<br />
SPSC<br />
24
The Viterbi Algorithm (3)<br />
• Survivor path of k-1 =<br />
smallest path metric to node k-1<br />
• Only hold survivor path<br />
• For node k choose smallest<br />
branch metric + survivor path of k+1<br />
SPSC<br />
25
The Viterbi Algorithm<br />
Example (1)<br />
• Observation sequence<br />
{0.2, 0.6, 0.9, 0.1}<br />
• Impulse response of channel<br />
• AWGN<br />
• State transitions<br />
h = δ + 0.5δ k k k −<br />
1<br />
SPSC<br />
26
The Viterbi Algorithm<br />
Example (2)<br />
SPSC<br />
27
The Viterbi Algorithm<br />
Example (3)<br />
SPSC<br />
28
Error Probability Calculation<br />
• Error Event<br />
• <strong>Detection</strong> Error<br />
• Upper Bound of <strong>Detection</strong> Error<br />
• Lower Bound of <strong>Detection</strong> Error<br />
• Symbol Error Probability<br />
SPSC<br />
29
Error Event<br />
• (a) length 1,<br />
metric from real sequence<br />
• (b) length 2,<br />
metric from real sequence<br />
1.25<br />
3.5<br />
SPSC<br />
30
<strong>Detection</strong> Error<br />
Pr[detection error] = ∑ Pr[ ewe ] ( )<br />
[ ] ˆ<br />
Pr[ e] = Pr Ψ Pr ⎡Ψ Ψ⎤<br />
⎣ ⎦<br />
eε<br />
E<br />
• w(e) … total number of detection errors<br />
in error event e<br />
• Pr[e] depends on real path and chosen<br />
path estimate ˆ ⎤<br />
Pr ⎡<br />
Ψ Ψ<br />
⎣<br />
⎦<br />
SPSC<br />
31
Upper Bound of<br />
<strong>Detection</strong> Error (1)<br />
( Ψˆ<br />
Ψ σ )<br />
Pr ⎡ ˆ | ⎤<br />
⎣<br />
Ψ Ψ<br />
⎦<br />
≤Q d( , ) / 2<br />
• Q … cumulative probability distribution<br />
• d …Euclidian distance of real an chosen<br />
path<br />
SPSC<br />
32
Upper Bound of<br />
<strong>Detection</strong> Error (2)<br />
• Only terms of minimal distance<br />
• Others decay exponentially<br />
• Approaches<br />
( σ )<br />
≤∑<br />
we Ψ Q dmin<br />
+<br />
eε<br />
E<br />
Pr[detection error] ( ) Pr[ ] / 2 other terms<br />
RQ( dmin<br />
/2 σ )<br />
R<br />
= ∑ w()Pr[ e Ψ]<br />
eε<br />
B<br />
SPSC<br />
33
Lower Bound of<br />
<strong>Detection</strong> Error (1)<br />
Pr[detection error] ≥ ∑ Pr[ e] = Pr[an error event]<br />
eε<br />
E<br />
Pr[an error event | Ψ] ≥Qd<br />
( ( Ψ)/2<br />
σ )<br />
min<br />
SPSC<br />
34
Lower Bound of<br />
<strong>Detection</strong> Error (2)<br />
• Using total probability<br />
≥∑<br />
Ψ Qd Ψ<br />
min<br />
Ψ<br />
Pr[detection error] Pr[ ] ( ( ) / 2 σ )<br />
• Only minimal distance error events<br />
Pr[detection error] ≥ PQ( d ( Ψ) / 2 σ )<br />
min<br />
P<br />
= ∑ Pr[ Ψ]<br />
Ψε A<br />
SPSC<br />
35
Symbol Error Probability (1)<br />
• Upper and lower bound together<br />
PQ( d / 2 σ ) ≤ Pr[detection error] ≤ RQ( d ( Ψ) / 2 σ )<br />
min<br />
min<br />
• Consider C between P and R<br />
Pr[detection error] ≈ CQ( dmin<br />
/ 2 σ )<br />
SPSC<br />
36
Symbol Error Probability (2)<br />
• One detection error, one ore more bit<br />
errors<br />
• One input X k by n source bits<br />
1 Pr[detection error] ≤ Pr[bit error] ≤ Pr[detection error]<br />
n<br />
Pr[detection error]<br />
≈<br />
Pr[bit error]<br />
SPSC<br />
37