Channel Independent Viterbi Algorithm (CIVA) for Blind Sequence Detection with Near MLSE Performance Xiaohua(Edward) Li State Univ. of New York at Binghamton xli@binghamton.edu Contents • • • Introduction Basic idea of Probes and CIVA Practical Algorithms – Probes design – CIVA • • Simulations Conclusion Analogy From DNA Array • Probes: all possible DNA segments • Probes are put on an array (chip) • DNA sample binds to a unique probe Basic Idea of CIVA: Testing Vector • Communication System Model H xn h s n + vn h H h0 hL , sTn sn sn L • Testing vectors g(n) s n sn M S(n)g(n) g(n) 0 sn L snM L Basic Idea of CIVA: Noiseless Symbol Detection • Find a testing vector gi for each possible symbol matrix Si L 1 G g i 1 , , N K • Testing vector set: i, g • Determine testing vector sequence g(n) s min g ( n)G x H (n) g(n) 2 0 n • Detect symbols s(n) from g(n) Construct Probe as Testing Vector Group • Requirement on testing vectors not always satisfied • Probe of Si : three cases – Si right null subspace different from S j S i g i 0, S j g i 0 : Probe G i g i – Si right null subspace in that of S j Si gi 0, Si g j 0, S j gi 0 G i gi , g j S jg j 0 – Si and S j have the same right null subspace, G i G j Blind Sequence Detection by Probes • If Si and S j are different in the right null subspace, then the corresponding probes are different • Blind symbol detections: x H (n) h H S(n) G(n) S(n) sn Gi Gi • Do the probes sharing cases matter? Sequence Identifiability • Assumption 1: sequences begin or terminate with the same symbol matrix. • Assumption 2: If Si g j 0, then h H Si g j 0. • Proposition 1: Sequences Si and G i can be determined uniquely from each other. • Proposition 2: In noiseless case, symbols can be determined uniquely from data sequence and probes. • If SNR is sufficiently high, then symbols can be determined uniquely with probability approaching one. • Assumptions 1 and 2 can be relaxed in practice. Trellis Search With Probes • Metric calculation f (x(n), Gi ) max f1(x(n), gl ) gl Gi 2 H x ( n )g l , if Si g l 0 f1 (x(n), g l ) 2 2 H v /( x (n)g l + v2 ), if Si g l 0 • Trellis optimization arg min f (x(n), G(n)) G (n) n Trellis Search with Probes • Metric updating along trellis j (n) min i (n 1) + f (x(n), G l ) i • An example: K 2 Ls 4 Channel length Over-estimation in Noise • For known channel length, Probe & trellis dim parameters: M : known. L : channel length. Constraint length Ls L + M + 1 • Use over-estimated channel length Lo and Ls Lo + M + 1 for probe and trellis design • Consider data matrix xn X(n) xn N sn xnM sn M H + V ( n) s xn N M sn L~ +1 n N L s • Choose proper N so that ~ Ls L + N + M + 1 Lo + M + 1 How to Determine Optimal N? • In noiseless case, if N + L Lo , then min X(n)g i 0. Otherwise min X(n)g i 0 • A large magnitude change in min X(n)gi , when Nsmall Nopt Nbig • Optimal value can be determined. Practical Algorithm I • Probe Design Algorithm • Many symbol matrices have more than one dim right null subspace: optimize testing vectors • Select/combine testing vectors based on the trellis diagram: simplify probes design • Further simplification: each probe contains at most three testing vectors. • It is off-line! Probes are independent of channels. Practical Algorithm II • CIVA Algorithm • • • • Probes design with over-estimated channel length Form data matrix, determine the optimal N Trellis updating Symbol determination • Properties • No channel and correlation estimation • Fast, finite sample, global convergence – Symbol detection within 5 Ls samples – Tolerate faster time-variation index Ls Computational Complexity • High computation complexity: trellis states K Ls 1 K Lo +M in CIVA, compared with K Lo in MLSE • May be practical for some wireless system • Complexity reduction: desirable and possible – Parallel hardware implementation – Apply the complexity reduction techniques of VA – Integrated with channel decoder: promising complexity reduction, may even lower than MLSE. – Fast algorithms combining the repeated/redundant computations Simulations: Experiment 1 1 0 , 1 0 1, 1 1 1, 0 1 0, 1 0 1, 1 1 0 1 0 10 -1 10 BER • Channel [1, 0.8]. Ls 4. DBPSK. • Symbol matrix, probe S1 g1 S2 g2, g4, g1 s3 g3,g6, g4 s4 g4, g5, g3 • Testing vectors -2 10 Scheme 1 Scheme 2 Scheme 3 -3 10 -4 10 5 10 SNR (dB) 15 Simulations: Experiment 2 5 • Random Channel Optimal N Lo 4 3 Ratio r L 0,1, 2 4 Ls 8 2 N(opt)-1 1 • Index Ratio rN 0 -2 -1 n min i X( N +1) (n)g i n min i X (N ) 1 2 Index for Determine N 8 ( n )g i r(N=Nopt) r(N>Nopt) r(N<Nopt) 7 6 5 Ratio r • Determine N independent of channel 0 Order Mismatch 4 3 2 1 0 6 8 10 12 SNR (dB) 14 16 Simulations: Experiment 2 • Comparison CIVA MLSE VA w/ training MMSE training Blind:VA+blind channel. est. • 500 samples • CIVA: 3 dB from MLSE Blind+VA -1 10 BER – – – – – 0 10 MMSE -2 10 CIVA VA -3 10 MLSE -4 10 6 8 10 12 SNR (dB) 14 16 Simulations: Experiment 3 -1 10 BER • GSM like packets • 3-tap random ch. • 150 DQPSK samples/running • CIVA: blind • VA & MMSE: 30 training samples • CIVA practically outperforms training methods. 0 10 CIVA VA MMSE -2 10 -3 10 5 6 7 8 9 10 11 SNR (dB) 12 13 14 15 Conclusions • • CIVA blind sequence detector using probes Properties • • • • Near ML optimal performance May practically outperform even training methods Fast global convergence Near future: complexity reductions • • Combining channel decoders Fast algorithm utilizing repeated structures