Data Detection for Controlled ISI. h(nt) = 1 for n=0,1 and zero otherwise.

Similar documents
that efficiently utilizes the total available channel bandwidth W.

Signal Design for Band-Limited Channels

Decision-Point Signal to Noise Ratio (SNR)

RADIO SYSTEMS ETIN15. Lecture no: Equalization. Ove Edfors, Department of Electrical and Information Technology

Digital Baseband Systems. Reference: Digital Communications John G. Proakis

Maximum Likelihood Sequence Detection

Square Root Raised Cosine Filter

BASICS OF DETECTION AND ESTIMATION THEORY

This examination consists of 11 pages. Please check that you have a complete copy. Time: 2.5 hrs INSTRUCTIONS

The Viterbi Algorithm EECS 869: Error Control Coding Fall 2009

EE5713 : Advanced Digital Communications

Es e j4φ +4N n. 16 KE s /N 0. σ 2ˆφ4 1 γ s. p(φ e )= exp 1 ( 2πσ φ b cos N 2 φ e 0

a) Find the compact (i.e. smallest) basis set required to ensure sufficient statistics.

Signal Processing for Digital Data Storage (11)

EE4601 Communication Systems

Weiyao Lin. Shanghai Jiao Tong University. Chapter 5: Digital Transmission through Baseband slchannels Textbook: Ch

Principles of Communications

Digital Communications

LECTURE 16 AND 17. Digital signaling on frequency selective fading channels. Notes Prepared by: Abhishek Sood

Digital Modulation 1

Digital Band-pass Modulation PROF. MICHAEL TSAI 2011/11/10

Example: Bipolar NRZ (non-return-to-zero) signaling

A Family of Nyquist Filters Based on Generalized Raised-Cosine Spectra

Physical Layer and Coding

Example of Convolutional Codec

Capacity Penalty due to Ideal Zero-Forcing Decision-Feedback Equalization

MAXIMUM LIKELIHOOD SEQUENCE ESTIMATION FROM THE LATTICE VIEWPOINT. By Mow Wai Ho

Lecture 12. Block Diagram

Direct-Sequence Spread-Spectrum

Shannon meets Wiener II: On MMSE estimation in successive decoding schemes

5. Pilot Aided Modulations. In flat fading, if we have a good channel estimate of the complex gain gt, ( ) then we can perform coherent detection.

Line Codes and Pulse Shaping Review. Intersymbol interference (ISI) Pulse shaping to reduce ISI Embracing ISI

Introduction to Convolutional Codes, Part 1

Chapter [4] "Operations on a Single Random Variable"

SIPCom8-1: Information Theory and Coding Linear Binary Codes Ingmar Land

Chapter 7: Channel coding:convolutional codes

ADAPTIVE FILTER ALGORITHMS. Prepared by Deepa.T, Asst.Prof. /TCE

Convolutional Codes. Telecommunications Laboratory. Alex Balatsoukas-Stimming. Technical University of Crete. November 6th, 2008

Principles of Communications Lecture 8: Baseband Communication Systems. Chih-Wei Liu 劉志尉 National Chiao Tung University

Iterative Timing Recovery

Determining the Optimal Decision Delay Parameter for a Linear Equalizer

EE4061 Communication Systems

The Performance of Quaternary Amplitude Modulation with Quaternary Spreading in the Presence of Interfering Signals

Coding on a Trellis: Convolutional Codes

This examination consists of 10 pages. Please check that you have a complete copy. Time: 2.5 hrs INSTRUCTIONS

GEORGIA INSTITUTE OF TECHNOLOGY SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING Final Examination - Fall 2015 EE 4601: Communication Systems

Chapter 12 Variable Phase Interpolation

Communication Engineering Prof. Surendra Prasad Department of Electrical Engineering Indian Institute of Technology, Delhi

EE4512 Analog and Digital Communications Chapter 4. Chapter 4 Receiver Design

II - Baseband pulse transmission

3.9 Diversity Equalization Multiple Received Signals and the RAKE Infinite-length MMSE Equalization Structures

3. ESTIMATION OF SIGNALS USING A LEAST SQUARES TECHNIQUE

Modulation & Coding for the Gaussian Channel

Revision of Lecture 4

Performance evaluation for ML sequence detection in ISI channels with Gauss Markov Noise

Efficient Semi-Blind Channel Estimation and Equalization Based on a Parametric Channel Representation

Error Correction and Trellis Coding

New reduced state space BCJR algorithms for the ISI channel

Digital Transmission Methods S

Contents Equalization 148

BLIND DECONVOLUTION ALGORITHMS FOR MIMO-FIR SYSTEMS DRIVEN BY FOURTH-ORDER COLORED SIGNALS

Finite Word Length Effects and Quantisation Noise. Professors A G Constantinides & L R Arnaut

Communication Theory Summary of Important Definitions and Results

The Sorted-QR Chase Detector for Multiple-Input Multiple-Output Channels

Performance Analysis of Spread Spectrum CDMA systems

UNBIASED MAXIMUM SINR PREFILTERING FOR REDUCED STATE EQUALIZATION

SOLUTIONS TO ECE 6603 ASSIGNMENT NO. 6

EE401: Advanced Communication Theory

Turbo Codes. Manjunatha. P. Professor Dept. of ECE. June 29, J.N.N. College of Engineering, Shimoga.

EE Introduction to Digital Communications Homework 8 Solutions

Projects in Wireless Communication Lecture 1

Introduction to convolutional codes

ANALYSIS OF A PARTIAL DECORRELATOR IN A MULTI-CELL DS/CDMA SYSTEM

Copyright license. Exchanging Information with the Stars. The goal. Some challenges

Linear Gaussian Channels

MMSE DECISION FEEDBACK EQUALIZER FROM CHANNEL ESTIMATE

Lecture 8: MIMO Architectures (II) Theoretical Foundations of Wireless Communications 1. Overview. Ragnar Thobaben CommTh/EES/KTH

Lecture 2. Fading Channel

Summary II: Modulation and Demodulation

SIGNAL SPACE CONCEPTS

EE 574 Detection and Estimation Theory Lecture Presentation 8

MMSE Decision Feedback Equalization of Pulse Position Modulated Signals

Flat Rayleigh fading. Assume a single tap model with G 0,m = G m. Assume G m is circ. symmetric Gaussian with E[ G m 2 ]=1.

Coding theory: Applications

On the exact bit error probability for Viterbi decoding of convolutional codes

Carrier frequency estimation. ELEC-E5410 Signal processing for communications

Design of MMSE Multiuser Detectors using Random Matrix Techniques

EE456 Digital Communications

EE 661: Modulation Theory Solutions to Homework 6

PSK bit mappings with good minimax error probability

UCSD ECE153 Handout #40 Prof. Young-Han Kim Thursday, May 29, Homework Set #8 Due: Thursday, June 5, 2011

CHAPTER 14. Based on the info about the scattering function we know that the multipath spread is T m =1ms, and the Doppler spread is B d =0.2 Hz.

Multiuser Detection. Summary for EECS Graduate Seminar in Communications. Benjamin Vigoda

Equalization. Contents. John Barry. October 5, 2015

An Adaptive MLSD Receiver Employing Noise Correlation

Computation of Information Rates from Finite-State Source/Channel Models

NAME... Soc. Sec. #... Remote Location... (if on campus write campus) FINAL EXAM EE568 KUMAR. Sp ' 00

Lecture 5b: Line Codes

MLSE in a single path channel. MLSE in a multipath channel. State model for a multipath channel. State model for a multipath channel

Soft-Output Trellis Waveform Coding

Transcription:

Data Detection for Controlled ISI *Symbol by symbol suboptimum detection For the duobinary signal pulse h(nt) = 1 for n=0,1 and zero otherwise. The samples at the output of the receiving filter(demodulator) have the form y m = B m + v m = a m + a m-1 +v m where { a m } is the transmitted sequence of amplitudes and { v m } is a sequence of additive gaussian noise samples. If the noise contribution is ignored if a m = 1 with equal probability then B m = { -2,0,2} with probab. 1/4,1/2,1/4. If a m-1 is the detected symbol from the (m-1) th signaling interval, its effect on B m (received signal in the m th signaling interval) can be eliminated by subtraction, thus allowing am to be detected. * The major problem with this procedure is that errors arising from the additive noise tend to propagate. For example if a m-1 is in error its effect on B m is not eliminated but, in fact it is reinforced by the incorrect subtraction. Consequently the detection of Bm is also liely to be in error. *Error propagation can be avoided by precoding the data at the transmitter instead of eliminating the controlled ISI by subtraction at the receiver. The precoding is performed on the binary data sequence prior to modulation. From the data sequence {D n } of 1 s and 0 s that is to be transmitted, a new sequence {P n } called the precoded sequence is generated. *For the duobinary signal, the precoded sequence is defined as P m = D m P m-1 m=1,2,... where denotes modulo 2 addition. Then we set a m = -1 if P m = 0 and a m =1 if P m =1. i.e. a m = 2P m - 1 Noise free samples at the output of the receiving filter are given by 90

B m = a m + a m-1 = (2P m -1) + (2P m-1-1) = 2(P m + P m-1-1) P m + P m-1 = 1/2 B m + 1 since D m = P m P m-1 it follows that D m = 1/2 B m + 1 (mod 2) Thus if B m = 2 then D m = 0 and if B m = 0 then D m = 1. In the presence of additive noise the sampled outputs from the receiver are given by y m = B m + v m This can be compared with two threshold set at +1 and -1. The data sequence {D n } is obtained according to the detection rule D m = 1 ( ym 1) 0 ( ym 1) E.g. Binary signaling with duobinary pulses ( no noise) Sequences Data D m 1 0 1 1 0 1 0 0 1 0 1 1 1 0 Precoded P m 0 1 1 0 1 1 0 0 0 1 1 0 1 0 0 = (D m -P m-1 )mod 2 Transmitted a m -1 1 1-1 1 1-1 -1-1 1 1-1 1-1 -1=2P m -1 Received B m 0 2 0 0 2 0-2 -2 0 2 0 0 0-2=a m +a m-1 Decoded D m 1 0 1 1 0 1 0 0 1 0 1 1 1 0 =(1/2* B m +1) mod 2 *The extension from binary PAM to multilevel PAM signaling using the duobinary pulses is straightforward. In this case the M-level amplitude sequence {a m } results in a noise free sequence B m = a m + a m-1, m=1,2,... 91

which has 2M-1 possible equally spaced levels. The amplitude levels are determined from the relation a m = 2P m - (M-1) where P m = D m (M-1)P m-1 (mod M) the possible values of {D m } are 0,1,2,...M-1. In the absence of noise, the samples at the receiving filter may be expressed as B m = a m + a m-1 = 2[P m + P m-1 - (M-1)] Hence P m + P m-1 = 1/2 B m + (M-1) Since D m = P m + P m-1 (mod M) it follows that D m = 1/2 B m + (M-1) (mod M) In the presence of noise, the received signal plus noise is quantized to the nearest of the possible signal levels and the rule given above is used on the quantized values to recover the data sequence. E.g. Four level signaling with duobinary pulses ( no noise) Sequences Data D m 1 0 2 3 0 2 1 0 3 1 1 2 1 0 Precoded P m 0 1 3 3 0 0 2 3 1 2 3 2 0 1 3 =D m -P m-1 mod 4 Transmitted a m -3-1 3 3-3 -3 1 3-1 1 3 1-3 -1 3 =2P m -3 Received B m -4 2 6 0-6 -2 4 2 0 4 4-2 -4 2 =a m -a m-1 Decoded D m 1 0 2 3 0 2 1 0 3 1 1 2 1 0 =1/2*B m +3 mod 4 In the case of modified duobinary pulse, the controlled ISI is specified by the values h(n/2w) = -1 for n=1, h(n/2w) = 1 for n=-1 and zero otherwise. Thus noise free sampled output can be given as B m = a m - a m-2 P m = D m + P m-2 (mod M) 92

It can be shown that D m = 1/2 B m (mod M) Therefore as shown above, the precoding of the data at the transmitter maes it possible to detect the received data on a symbol by symbol basis without having to loo at previously detected symbols. Hence error propagation is avoided. The symbol by symbol detection rule described above is not the optimum detection scheme for PR signals due to the memory inherent in the received signal. Nevertheless, symbol by symbol detection is easy to implement and is used in many practical applications involving duobinary and modified duobinary pulse signals. Signal Design for Channels with Distortion * In the earlier analysis we assumed that the channel is ideal,i.e., C(f) = 1 for f W Here it is not ideal and the response C(f) is nown. The criterion is the maximization of the SNR at the output of the demodulation filter or equivalently at the input to the detector. For the signal component at the o/p of the demodulator we must satisfy G T (f)c(f)g R (f) = H d (f) e -j2fto, f W where H d (f) is the desired frequency response of the cascade and t o is the necessary time delay required to ensure the physical realizability of the modulation and demodulation filters. For combined frequency response of a raised cosine H rc (f) with zero ISI it can be shown that when the additive noise at the input to the demodulator is WGN, G R (f) = K H rc( f ) 1 C( f ) 1/2 1/2 G T (f) = K H rc( f ) 2 C( f ) 1/2 1/2, f W, f W K 1,K 2 are arbitrary scale factors. _and the phase characteristics satisfy T ( f ) c( f ) R( f ) 2 ft0 93

Optimum Receiver for Channels with ISI and AWGN * Objective is to derive the optimum demodulator and detector for digital transmission through a non ideal bandlimited channel with additive Gaussian noise. Maximum-Lielihood Sequence Estimation of Digital Sequences in the Presence of Intersymbol Interference Paper by G. David Forney, IEEE Trans. on Information Theory, pp. 363-378 Vol IT-18, No.3, 1972 The simplest model if a digital communication system subject to ISI occurs in PAM illustrated in Fig.1. Noise n(t) i/p x0, x1,x2.. Channel Filter h(t) Signal s(t) + r(t)=s(t)+n(t) A sequence of real numbers x drawn from a discrete alphabet passes through a linear channel whose impulse response h(t) is longer than the symbol separation T, and the filtered signal s(t) = x h( t T) is corrupted by white Gaussian noise n(t) to give a received signal r(t) = s(t) + n(t) Note: h(t) of finite duration (FIR) is considered. Definitions: We use the PAM model of Fig.1 The inputs x are assumed to be equally spaced and scaled and biased to be integers in the range 0 x m-1; they are assumed to start at time =0 and to continue until =K, where K may be infinite. 94

With the input sequence we associate the formal power series in the delay operator D ( D-transform D Z -1 ) x(d) x 0 + x 1 D + x 2 D 2 +... (1) which will be referred to as the input sequence. The channel is characterized by a finite impulse response h(t) of L symbol intervals;i.e., L is the smallest integer such that h(t) = 0 for t > LT. The response h(t) is assumed to be square-integrable, We define h 2 2 h ( t ) dt (2) h () (t) h(t - T) (3) and use the inner-product notation in which [a(t),b(t)] a( t) b( t) dt (4) Then the pulse autocorrelation coefficients of h(t) are R - [h () (t), h ( ) (t) ] = h( t T) h( t ' T) dt ' L 1 0 ' L (5) We define the pulse autocorrelation function of h(t) as R(D) R D (6) where L - 1 is called the span of h(t). The response h(t) may be regarded as a sequence of L chips h i (t), 0 i where h i (t) is a function that is nonzero only over the interval [0,T); i.e., h(t) = h 0 (t) + h 1 (t - T) +...+ h (t - T) (7) 95

Then it is natural to associate with h(t) the chip D-transform i h(d,t) h ( t) D (8) i0 i which is a polynomial in D of degree with coefficients in the set of functions over [0,T). It is can be verified that (show this!!) the chip D-transform has the following properties. 1) The pulse autocorrelation function is given by R(D) = [h(d,t),h(d -1,t)] = h( D, t) h( D, t) dt T 0 1 (9) 2) A transversal filter is a filter with a response g(t) = gi( t it) (10) i foe some set of coefficients g i. This response is not square integrable, but we assume that 2 the coefficients g i are square summable,. We say a transversal filter g(t) is characterized by g(d) if i g i g(d) = i g i D (11) i The chip D-transform g(d,t) of a transversal filter is g(d,t) = g(d)(t) (12) 3) The cascade of a square-integrable filter with response g(t) and a transversal filter characterized by a square summable f(d) is a filter with square integrable response h(t), chip D-transform and pulse autocorrelation function The signal s(t) is defined as h(d,t) = f(d)g(d,t) (13) R hh (D) = f(d)f(d -1 )R gg (D) (14) 96

K K ( ) s(t) xh( t T) xh ( t) 0 0 (15) The received signal r(t) is s(t) plus white Gaussian noise n(t). * It is well nown that in the detection of signals that are linear combinations of some finite set of square-integrable basis functions h () (t), the output of a ban of matched filters, one matched to each basis function, form a set of sufficient statistics for estimating the coefficients. Thus the K+1 quantities a = [ r(t), h () (t) ] = r( t) h( t T) dt 0 K (16) form a set of sufficient statistics for estimation of the x, 0 K, when K is finite. But these are simply the sampled outputs of a filter h(-t) matched to h(t). Thus the following proposition can be stated. Proposition1: When x(d) is finite, the sampled outputs a [defined by (16)] of a filter matched to h(t) form a set of sufficient statistics for estimation of the input sequence x(d). Note: This property does not depend on x(d) being finite. Since the matched filter is linear and its sampled outputs can be used without loss of optimality, any optimal linear receiver must be expressible as a linear combination of the sampled matched filter outputs a. Corollary: For any criterion of optimality, the optimum linear receiver is expressible as the cascade of a matched filter and a (possibly time-varying) transversal filter. The whitened Matched Filter (WMF) Define the matched-filter output sequence as 97

Since a(d) = K 0 a D (17) a = [ r(t), h () (t) ] = x [ h ( t), h ( t)] [ n( t), h ( t)] ' ' ( ') ( ) ( ) we have = x R n (18) ' ' ' ' a(d) = x(d)r(d) + n (D) (19) Here n (D) is zero-mean colored Gaussian noise with autocorrelation function 2 R(D), since ' ' nn' dtd n( t) n( ) h( t T) h( ' T) = 2 R - (20) where 2 is the spectral density of noise n(t), so that E[n(t)n()] = 2 t-). Since R(D) is finite with 2 + 1 nonzero terms, it has 2 complex roots; further since R(D) = R(D -1 ), the inverse -1 of any root is also a root of R(D), so the roots brea up into pairs. Then if f (D) is any polynomial of degree whose roots consist of one root from each pair of roots of R(D), R(D) has the spectral factorization R(D) = f (D)f (D -1 ) (21) We can generalize (21) slightly by letting f(d) = D n f (D) for any integer delay n; then R(D) = f(d)f(d -1 ) (22) Now let n (D) be zero mean white Gaussian noise with autocorrelation function 2 ; we can represent the colored noise n (D) by n (D) = n(d)f(d -1 ) (23) since n (D) then has the autocorrelation function 2 f(d -1 )f(d) = 2 R(D) and zero mean Gaussian noise is entirely specified by its autocorrelation function. Consequently we may write (19) as 98

a(d) = x(d)f(d)f(d -1 ) + n(d)f(d -1 ) (24) This suggests that we simply divide out the factor f(d -1 ) formally to obtain a sequence in which the noise is white. z(d) = a(d)/f(d -1 ) = x(d)f(d) + n(d) (25) When f(d -1 ) has no roots on or inside the unit circle, the transversal filter characterized by 1/f(D -1 ) is actually realizable in the sense that its coefficients are square summable. Then the sequence z(d) of (25) can actually be obtained by sampling the outputs of the cascade of a matched filter h(-t) with a transversal filter characterized by 1/(f(D -1 ) (with whatever delay is required to assure causality). * We call such a cascade a whitened matched filter. Thus if the a filter w(t) represented by the chip D-transform w(d,t) 1 f D h ( ( ) D, t ) (26) its time reversal w(-t) can be used as a WMF in the sense that its sampled outputs z = r( t) w( t T) dt (27) satisfy (25) with n(d) a white Gaussian noise sequence. It can be shown that the set of functions w(t - T) is orthonormal. [ R ww (D) = 1] Finally the set of functions is a basis for the signal space since the signals s(t) have chip D-transforms s(d,t) = x(d)h(d,t) = x(d)f(d)w(d,t) (28) so that s(t) = y w( t T) (29) where the signal sequence y(d) is defined as y(d) x(d)f(d) (30) 99

We note that only K + + 1 of the y are nonzero. Theorem: Let h(t) be finite with span and let f(d)f(d -1 ) be any spectral factorization of R hh (D). Then the filter whose chip D transform is w(d,t) = h(d,t)/f(d) has square integrable impulse response w(t)and the sampled outputs z of its time reverse form a sequence z = r( t) w( t T) dt (31) z(d) = x(d)f(d) + n(d) (32) in which n(d) is a white Gaussian noise sequence with variance 2 and which is a set of sufficient statistics for estimation of the input sequence x(d). Discrete-Time Model x(d) D D D f0 f1 f2 fv y(d) The signal sequence y(d) = x(d)f(d) (33) 100

is the convolution of the input sequence x(d) with the finite impulse response f(d), whose autocorrelation function is R(D) = f(d)f(d -1 ). Without loss of generality we assume that f(d) is a polynomial of degree with f 0 0. The received sequence z(d) is the sum of the signal sequence y(d) and a white Gaussian noise sequence n(d) with autocorrelation function 2. The output signal to noise ratio is defined to be SNR y 2 / 2 = x 2 f 2 / 2 (34) where x 2 is the input variance [(m 2-1) /12] and f 2 2 f i i0 = R 0 (35) is the energy in the impulse response f(d). (If f(d) is derived from a continuous time response h(t), then f 2 = h 2 = R 0.) * It is crucial to observe that the signal sequence y(d) may be taen to be generated by a finite state machine driven by an input sequence x(d). We may imagine a shift register of m-state memory elements containing the most recent inputs, with y formed as a weighted sum of the shift register contents and the current input x as shown in the Figure. Clearly the machine has m states, the state at any time being given by the most recent inputs: where by convention x =0 for < 0. We define the state sequence s(d) as s (x -1,x -2,...,x - ) (36) s(d) s 0 + s 1 D + s 2 D 2 +... (37) where each state s taes on values from an alphabet of m states S j, 1 j m The maps from input sequences x(d) to state sequences s(d) and thence to signal sequences y(d) are obviously one to one and hence invertible. In fact two successive states uniquely determine an output y = y(s, s +1 ) (38) 101

i.e., given a transition from s to s +1, the corresponding output y is determined. An allowable state sequence s(d) or signal sequence y(d) is defined as one that could result from an allowable input sequence. Maximum-Lielihood Sequence Estimation (MLSE) Maximum-lielihood sequence estimation is defined as the choice of that x(d) for which the probability density p[z(d) x(d)] is maximum. Since we have permitted sequences to be semi-infinite, so that p[z(d) x(d)] may be zero for all x(d), some sort of limiting operation is implied. As the maps from x(d) to s(d) and to y(d) are one to one, MLSE can equivalently be defined as choosing from the allowable s(d) that which maximizes p[z(d) s(d)] or from the allowable y(d) that which maximizes p[z(d) y(d)]. Here we consider the problem of estimating the state sequence of a finite state machine from noisy observations. To construct the recursive estimation algorithm nown as the Viterbi Algorithm, we first use the fact that the noise terms n are independent. Then the log lielihood ratio ln p[z(d) s(d)] breas up into a sum of independent increments: ln p[z(d) s(d)] = ln p [ z y( s, s 1 )] (39) n where p n (.) is the probability density function (pdf) of each noise term n. For notational convenience we define the partial sums 2 1 [s(d)] 2 1 ln pn[ z y( s, s 1 )], 0 1 < 2 (40) 1 Suppose for the moment that we new that the state s at time was S j. Then for any allowable state sequence s(d) that starts with the nown initial state s 0 = 0 and passes through the state S j at time, the log lielihood would brea up into two independent parts: [s(d)] 0 K = [s(d)] 0 + [s(d)] K (41) 102

Let s j^(d) be the allowable state sequence from time 0 to that has maximum log lielihood [s(d)] 0 among all allowable state sequences starting with s 0 = 0 and ending with s = S j. We call s j^(d) the survivor at time corresponding to state S j. Then we assert that s j^(d) must be the initial segment of the ML state sequence s(d); for we can replace the initial segment s (D) of any allowable state sequence with greater log lielihood [s(d)] 0 K unless [s (D)] 0 = [s(d)] 0. In fact we do not now the state s at time ; but we do now that it must be one of the finite number of states S j, 1 j m of the shift register of the Figure. Consequently while we cannot mae a final decision as to the identity of the initial segment of the ML state sequence at time, we now that the initial segment must be among the m survivors s j^(d),1 j m one for each states j. Thus we need only store m sequences s j^(d) and their log lielihoods [s(d)] 0, regardless of how large becomes. * To update the memory at time +1 recursion proceeds as follows. 1) For each of the m allowable continuations s j (D) to time +1 of each of the m survivors s j^(d) at time compute [s j (D)] 0 +1 = [s j^(d)] 0 + ln p n [z - y (S j,s j )] (42) This involves m +1 = m L additions. 2) For each of the states S j, 1 j m compare the log lielihoods [s j (D)] 0 +1 of the m continuations terminating in that state and select the largest as the corresponding survivor. This involves m m-ary comparisons, or (m-1) m binary comparisons. The search can be easily understood by the trellis diagram of the finite state machine. In principle the Viterbi algorithm can mae a final decision on the initial state segment up to time - when and only when all survivors at time have the same initial state sequence segment upto time -. The decoding delay is unbounded but is generally finite with probability 1. In implementation one actually maes a final decision after some fixed delay, with chosen large enough that the degradation due to premature decisions is negligible (approx. 5). 103