26.02.2015 Views

Maximum Likelihood Sequence Detection - spsc

Maximum Likelihood Sequence Detection - spsc

Maximum Likelihood Sequence Detection - spsc

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!