Patent ID: 6690739
Filing Date: 2004-02-10
Classification: H04L

Abstract:
A method of intersymbol interference compensation (ISIC) for preparing a plurality of data symbols for use as input to a channel and recovering said plurality of data symbols from a plurality of channel output samples for use by a data sink, said method comprising the steps ofencoding said plurality of data symbols to provide encoded symbols for use as input to said channel, said step of encoding further including the steps of (a) trellis encoding said plurality of data symbols using a trellis code to provide trellis-encoded symbols; and (b) mapping said trellis-encoded symbols to provide said encoded symbols such that said encoded symbols assume values from a predetermined alphabet; and performing data recovery on said plurality of channel output samples to provide estimated data symbols for use by said data sink, said step of performing data recovery further including the steps of (a) partially equalizing said plurality of channel output samples to provide partially equalized samples using a partial equalizer, thereby equalizing substantially all of the precursor intersymbol interference (ISI) and at most some of the postcursor ISI in said plurality of channel output samples; (b) generating a set of single-sided templates based on a noiseless channel model having a truncated ISI profile, wherein each single-sided template {circumflex over (q)}(â€¢,â€¢) is a function of two vector arguments having elements taken from said predetermined alphabet; and (c) ISIC decoding said partially equalized samples to provide said estimated data symbols, said step of ISIC decoding further including the step of computing a branch metric for each current branch of a decoder trellis of said trellis code based on the partially equalized samples associated with said current branch and the single-sided template {circumflex over (q)}(x,y) with vector argument x being the vector of a predetermined number of symbols associated with the past branches connected to said current branch and vector argument y being the vector of symbols associated with said current branch; and the step of using said branch metric in a trellis decoding algorithm.