Iterative Timing Recovery Aleksandar Kavčić Division of Engineering and Applied Sciences Harvard University based on a tutorial by Barry, Kavčić, McLaughlin, Nayak & Zeng And on research by Motwani and Kavčić DIMACS-04 Division of Engineering and Applied Sciences Outline • • • • • • • • • Motivation Timing model Conventional timing recovery Simple iterative timing recovery Joint timing and intersymbol interference trellis Soft decision algorithm Performance results Conclusion Future challenge: capacity of channels with synchronization error slide 2 Division of Engineering and Applied Sciences Motivation • In most communications (decoding) scenarios, we assume perfect timing recovery • This assumption breaks down, particularly at low signal-to-noise ratios (SNRs) • But, turbo-like codes work exactly at these SNRs • Need to take timing uncertainty into account slide 3 Division of Engineering and Applied Sciences Perfect timing S Xn Channel Yn R Xn* t slide 4 Division of Engineering and Applied Sciences System Under Timing Uncertainty t S Xn Channel YL R • difference between transmitter and receiver clock • basic assumption: clock mismatch always present slide 5 Division of Engineering and Applied Sciences A More Realistic Case 1 -T 0 T 2T 3T Sample instants: kT kT+k Division of Engineering and Applied Sciences t slide 6 Properties of the timing error t t • Brownian Motion Process (slow varying). • Discrete samples form a Markov chain. slide 7 Division of Engineering and Applied Sciences Timing recovery strategies a) turbo equalization (inner loop) c) timing recovery symbol detection timing recovery decoding free running oscillator free running oscillator turbo equalization b) timing recovery symbol detection d) symbol detection iterative timing recovery (outer loop) turbo timing/equalization joint soft timing recovery and symbol detection decoding free running oscillator free running oscillator decoding decoding slide 8 Division of Engineering and Applied Sciences Traditional Phase Locked Loop slide 9 Division of Engineering and Applied Sciences Simplest iterative timing reovery slide 10 Division of Engineering and Applied Sciences Simulation results slide 11 Division of Engineering and Applied Sciences Convergence speed slide 12 Division of Engineering and Applied Sciences Strategy to solve the problem 1. 2. 3. 4. Set up math model for timing error (Markov). Build separate stationary trellis to characterize the channel and source. Form a full trellis. Derive an algorithm to perform the Maximum a posteriori probability (MAP) estimation of the timing offset and the input bits slide 13 Division of Engineering and Applied Sciences Quantizing the Timing Offset 1 -T 0 T 2T 3T t Uniformly quantize the interval ((k-1)T, kT] to Q levels. slide 14 Division of Engineering and Applied Sciences Math Model for Timing Error State Transition Diagram: δ -2θ -θ θ 0 2θ δ State Transition Probability: slide 15 Division of Engineering and Applied Sciences States for Timing Error 1 -T 0 T 2T 3T t Semi-open segment : ((k-1)T, kT]: Q 1-sample states: 1i i=1, 2, …, Q 1 deletion states: 0 1 2-sample state: 2 slide 16 Division of Engineering and Applied Sciences Example: timing error realization k Q=5 T/Q 0 -T/Q 4 0 1 2 5 6 3 7 8 9 10 11 12 13 14 15 k -2T/Q -3T/Q -4T/Q -5T/Q = -T slide 17 Division of Engineering and Applied Sciences 0 T 2T 3T 4T 5T 6T 7T 8T 9T 10T 0th 1st 2nd 3rd 4th 5th 6th 7th 8th 9th 10th interval interval interval interval interval interval interval interval interval interval interval 15 15 14 14 15 0 2 0 11 11 12 t 0-0 0 11 12 13 14 15 2 T- 1 2T- 2 3T- 3 4T- 4 5T- 5 6T- 6 7T- 7 8T- 8 9T- 9 Single trellis section 0 11 12 13 14 15 2 0 11 12 13 14 15 2 slide 19 Division of Engineering and Applied Sciences Source Model Second order Markov chain -1, -1 -1, -1 -1, -1 -1, -1 -1, 1 -1, 1 -1, 1 -1, 1 1, -1 1, -1 1, -1 1, -1 1, 1 1, 1 1, 1 1, 1 slide 20 Division of Engineering and Applied Sciences Full Trellis Full states set: Total number of states at each time interval: Trellis length = n (block length). (note that each branch may have different number of outputs). slide 21 Division of Engineering and Applied Sciences Joint Trellis Example a) pulse example c) joint ISI-timing trellis 1 h(t) -T 0 -2T/5 T 3T/5 2T 8T/5 b) ISI trellis 3T (-1,-1,11) (-1,1,11) (1,-1,11) (1,1,11) (-1,-1,11) (-1,1,11) (1,-1,11) (1,1,11) (-1,1,12) … … (1,-1,2) (1,1,2) … (-1,-1,12) … (-1,-1) (-1,1) (1,-1) (1,1) … … (-1,-1) (-1,1) (1,-1) (1,1) (-1,-1,0) … … 0 -2T … (-1,-1,0) (1,-1,2) (1,1,2) Soft-Output Detector slide 23 Division of Engineering and Applied Sciences Definition of Some Functions Notation: Definition: slide 24 Division of Engineering and Applied Sciences Calculation of the Soft-outputs slide 25 Division of Engineering and Applied Sciences Recursion of α(t,m,i) slide 26 Division of Engineering and Applied Sciences Recursion of β(t,m,i) slide 27 Division of Engineering and Applied Sciences known timing conventional 10 iterations after 2 iterations after 4 iterations after 10 iterations bit error rate 10-1 10-2 10-3 10-4 2 3 SNR per bit Division of Engineering and Applied Sciences 4 5 (dB) 6 slide 28 Cycle-slip correction results timing error T true timing error timing error estimate after 1 iteration timing error estimate after 2 iterations timing error estimate after 3 iterations 0 -T -2T 1000 2000 3000 4000 5000 time slide 29 Division of Engineering and Applied Sciences Conclusion • Conventional timing recovery fails at low SNR because it ignores the error-correction code. • Iterative timing recovery exploits the power of the code. • Performance close to perfect timing recovery • Only marginal increase in complexity compared to system that uses conventional turbo equalization/decoding slide 30 Division of Engineering and Applied Sciences known timing conventional 10 iterations after 2 iterations after 4 iterations after 10 iterations bit error rate 10-1 10-2 10-3 loss due to timing error 10-4 Can we compute this loss? 2 3 SNR per bit Division of Engineering and Applied Sciences 4 5 (dB) 6 slide 31 Open Problems • Information Theory for channels with synchronization error: – Capacity – Capacity achieving distribution – Capacity achieving codes slide 32 Division of Engineering and Applied Sciences Deletion channels • Transmitted sequence x1, x2, x3, …. – Xk { 0, 1 } • Received sequence y1, y2, y3, …. – Sequence y is a subsequence of sequence x • Symbol xk is deleted with probability slide 33 Division of Engineering and Applied Sciences Deletion channels • Some results: – Ulmann 1968, upper bounds on the capacities of deletion channels – Diggavi&Grossglauser 2002, analytic lower bounds on capacities of deletion channels – Mitzenmacher 2004, tighter analytic lower bounds slide 34 Division of Engineering and Applied Sciences slide 35 Division of Engineering and Applied Sciences Numerical capacity computation methods slide 36 Division of Engineering and Applied Sciences Received symbols per transmitted symbol Let K(m) denote the number of received symbols per m transmitted symbols K(m) is a random variable Asymptotically, we have A received symbols per transmitted symbol For the deletion channel, slide 37 Division of Engineering and Applied Sciences Capacity per transmitted symbol compute upper bound slide 38 Division of Engineering and Applied Sciences Markov sources If X is a first-order Markov source (transition matrix P), then Y is also a first-order Markov source (transition matrix Q) st-1 0 Prob/xt P00/0 P01/1 1 P11/1 st 0 st-1 0 P10/0 Prob/yt Q00/0 Q01/1 1 1 st 0 Q10/0 Q11/1 1 slide 39 Division of Engineering and Applied Sciences Trellis for Prob/y1 Prob/y2 s0 0 Y|X s1 11 (1-)/1 s2 02 (1-)/0 … (1-)/0 (1-)/0 02 (1-)/0 (1-)2/1 (1-)2/0 03 03 (1-)/1 14 … (1-)3/1 (1-)/1 14 (1-)/1 … Run a reduced-state BCJR algorithm on tis trellis to upper-bound H(Y|X) 15 … … … Division of Engineering and Applied Sciences slide 40 slide 41 Division of Engineering and Applied Sciences Future research • Upper bounds for insertion/deletion channels? • Channels with non-integer timing error? • Codes? (long run-lengths are favored in deletion channels) slide 42 Division of Engineering and Applied Sciences