US20050264906A1 - Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system - Google Patents

Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system Download PDF

Info

Publication number
US20050264906A1
US20050264906A1 US10/853,090 US85309004A US2005264906A1 US 20050264906 A1 US20050264906 A1 US 20050264906A1 US 85309004 A US85309004 A US 85309004A US 2005264906 A1 US2005264906 A1 US 2005264906A1
Authority
US
United States
Prior art keywords
signal
state
channel
isi
noise
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/853,090
Inventor
Erich Haratsch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agere Systems LLC
Original Assignee
Agere Systems LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agere Systems LLC filed Critical Agere Systems LLC
Priority to US10/853,090 priority Critical patent/US20050264906A1/en
Assigned to AGERE SYSTEMS INC. reassignment AGERE SYSTEMS INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HARATSCH, ERICH FRANZ
Publication of US20050264906A1 publication Critical patent/US20050264906A1/en
Priority to US11/691,847 priority patent/US7702991B2/en
Assigned to AGERE SYSTEMS LLC reassignment AGERE SYSTEMS LLC CERTIFICATE OF CONVERSION Assignors: HARATSCH, ERICH FRANZ
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03184Details concerning the metric
    • H04L25/03191Details concerning the metric in which the receiver makes a selection between different metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03203Trellis search techniques
    • H04L25/03235Trellis search techniques with state-reduction using feedback filtering
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/1863Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information wherein the Viterbi algorithm is used for decoding the error correcting code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

Definitions

  • the present application is related to United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” filed on May 6, 2004 and United States patent application entitled “Method and Apparatus for Multiple Step Viterbi Detection with Local Feedback,” United States patent application entitled “Method and Apparatus for Precomputation and Pipelined Selection of Branch Metrics in a Reduced-State Viterbi Detector,” and United States patent application entitled “Method and Apparatus for Precomputation and Pipelined Selection of Intersymbol Interference Estimates in a Reduced-State Viterbi Detector,” each filed contemporaneously herewith, and each incorporated by reference herein.
  • the present invention relates generally to equalization, detection and decoding techniques and, more particularly, to sequence estimation techniques with reduced complexity.
  • a magnetic recording read channel converts an analog read channel into an estimate of the user data recorded on a magnetic medium.
  • Read heads and magnetic media introduce noise and other distortions into the read signal.
  • ISI intersymbol interference
  • a Viterbi detector is typically used to detect the read data bits in the presence of intersymbol interference and noise.
  • the hardware complexity associated with the Viterbi detector becomes prohibitively large, as the number of states considered by the Viterbi detector grows exponentially with the length of the channel impulse response. A number of techniques have been proposed or suggested for reducing the complexity of Viterbi detectors.
  • the hardware complexity of the Viterbi detector can be reduced by using a reduced-state trellis that considers only a shortened impulse response, and canceling intersymbol interference due to the tail of the impulse response for each state by using past survivor symbols as local feedback.
  • a reduced-state trellis that considers only a shortened impulse response, and canceling intersymbol interference due to the tail of the impulse response for each state by using past survivor symbols as local feedback.
  • the error rate performance of reduced-state Viterbi detectors with local feedback can approach the performance of full-state Viterbi detectors without local feedback that implement maximum likelihood sequence estimation (MLSE).
  • MSE maximum likelihood sequence estimation
  • the maximum achievable data rate of a Viterbi detector implementation with local feedback is considerably lower compared to a Viterbi detector implementation without local feedback, as significantly more operations have to be performed within one clock period.
  • a method and apparatus are disclosed for improving the maximum data rate of reduced-state Viterbi detectors with local feedback in magnetic recording systems.
  • the maximum data rate that may be achieved by the disclosed reduced-state Viterbi detectors is improved by precomputing a number of candidate branch metrics and performing pipelined selection of one of the precomputed values. Precomputing the branch metrics for possible symbol combinations in the channel memory makes it possible to shorten the critical path.
  • intersymbol interference estimates or intersymbol interference-free signal estimates are precomputed, and branch metric are computed based on the selected precomputed values.
  • a read channel signal is processed in a magnetic recording device by precomputing branch metrics, intersymbol interference estimates or intersymbol interference-free signal estimates for speculative sequences of one or more channel symbols; selecting one of the precomputed values based on at least one decision from at least one corresponding state; and selecting a path having a best path metric for a given state.
  • FIG. 1 is a schematic block diagram of a conventional system model for a baseband communications channel with ISI and additive noise;
  • FIG. 5 is a schematic block diagram for an exemplary conventional reduced-state Viterbi detector with local feedback
  • FIG. 6 illustrates a detailed state-parallel implementation of a reduced-state Viterbi detector with local feedback corresponding to the trellis of FIG. 4 ;
  • FIG. 7 is a schematic block diagram of a reduced-state Viterbi detector that incorporates precomputation of the branch metrics
  • FIG. 8 is a schematic block diagram showing the selection of a precomputed branch metric by the reduced-state Viterbi detector of FIG. 7 using survivor symbols;
  • FIG. 9 is a schematic block diagram of a reduced-state Viterbi detector that incorporates precomputation of the ISI-free signal estimates
  • FIG. 10 is a schematic block diagram showing the selection of a precomputed ISI-free signal estimate by the reduced-state Viterbi detector of FIG. 9 using survivor symbols;
  • FIG. 11 is a schematic block diagram showing the selection of a precomputed intersymbol interference estimate using survivor symbols
  • FIG. 12 is a schematic block diagram of a reduced-state Viterbi detector incorporating pipelining of the branch metric selection
  • FIG. 13 is a schematic block diagram showing the pipelined selection of a branch metric by the reduced-state Viterbi detector of FIG. 12 using ACS decisions;
  • FIG. 14 is a schematic block diagram of a reduced-state Viterbi detector that incorporates pipelining of the ISI-free signal estimate selection
  • FIG. 15 is a schematic block diagram showing the pipelined selection of an ISI-free signal estimate by the reduced-state Viterbi detector of FIG. 14 using ACS decisions;
  • FIG. 16 is a schematic block diagram showing the pipelined selection of an intersymbol interference estimate using ACS decisions
  • FIG. 17 is a functional block diagram of the ACS operation performed in FIGS. 8, 10 , 11 , 13 , 15 and 16 ;
  • FIG. 18 is a functional block diagram of a read channel detector that implements noise-predictive data detection and uses one of the reduced-state Viterbi detectors of FIGS. 7-16 incorporating features of the invention.
  • FIG. 19 is a functional block diagram of a read channel detector that implements signal-dependent noise-predictive data detection and uses one of the reduced-state Viterbi detectors of FIGS. 7-16 incorporating features of the invention.
  • the present invention increases the maximum data rate that may be achieved by reduced-state Viterbi detectors.
  • branch metrics, ISI-free signal estimates or ISI estimates are precomputed, and the correct values are selected based on survivor symbols or ACS decisions. In this manner, the computations of ISI estimates, ISI-free signal estimates or branch metrics are removed from the critical path.
  • branch metrics, ISI-free signal estimates or ISI estimates can be selected in a pipelined fashion using a multiplexer network structure that corresponds to the structure of the trellis considered by the detector.
  • RSSE Reduced-State Sequence Estimation
  • DFSE Decision-Feedback Sequence Estimation
  • PDFE Parallel Decision-Feedback Equalization
  • FIG. 1 is a schematic block diagram of a conventional system model for a baseband communications channel 100 with ISI and additive noise. While the exemplary embodiment is discussed in the context of baseband communications, the techniques discussed herein can also be applied to passband communications systems, as would be apparent to a person of ordinary skill in the art. Further, while it is assumed that trellis-coded modulation (TCM) is not employed for ease of illustration, the disclosed techniques generalize to communication systems using TCM or other modulation schemes.
  • TCM trellis-coded modulation
  • the modulator 110 maps an information symbol b n into a channel symbol a n .
  • the number of information bits per information symbol is one.
  • the information symbol b n is equivalent to a single information bit b n .
  • the decision of a detector 120 that corresponds to b n is denoted by b′ n .
  • the integer value corresponding to the vector (b n ⁇ 1 , b n ⁇ L+1 , b n ⁇ L ) will be used to represent the channel state ⁇ n .
  • solid lines correspond to survivor paths, dotted lines to discarded transitions, and dashed lines to path extensions.
  • FIG. 2 depicts the operation of the Viterbi algorithm at time step n.
  • the Viterbi algorithm has already determined the survivor path into state 0 n , which corresponds to the surviving state sequence ⁇ 0 n , 1 n ⁇ 1 , 0 n ⁇ 2 , 1 n ⁇ 3 , . . . ⁇ .
  • the survivor path into state 1 n corresponds in this example to the state sequence ⁇ 1 n , 0 n ⁇ 1 , 0 n ⁇ 2 , 1 n ⁇ 3 , . . . ⁇ .
  • the Viterbi algorithm decides on the survivor paths into states 0 n+1 and 1 n+1 , in the manner described below.
  • the Viterbi algorithm calculates branch metrics for the state transitions from ⁇ n to ⁇ n+1 .
  • the optimum branch metric is the Euclidean distance between the received symbol r n and the ideal ISI channel output z n that corresponds to the respective state transition.
  • branch metrics can also by computed by using the absolute value of the difference between the received symbol r n and the ideal ISI channel output z n .
  • the Viterbi algorithm keeps only the one extension with the smallest path metric, as it corresponds to the most likely path into this state.
  • the metric for the path that emanates from state ⁇ n and leads into ⁇ n+1 is calculated by adding the path metric for the preceding state ⁇ n , ⁇ n ( ⁇ n ) and the branch metric ⁇ n ( ⁇ n , a n ) for the transition.
  • add-compare-select ACS
  • add-compare-select min ⁇ ⁇ n ⁇ -> ⁇ n + 1 ⁇ ( ⁇ n ⁇ ( ⁇ n ) + ⁇ n ⁇ ( ⁇ n , a n ) .
  • the invention can also be applied when branch metrics are computed differently.
  • branch metrics are computed differently.
  • the best path into a state is given by the path with the maximum (instead of minimum) path metric.
  • the ACS operation described by equation (7) involves a maximum instead of a minimum operation.
  • the two survivor sequences into states 0 n and 1 n merge into a single path at time step n ⁇ 2.
  • all survivor paths merge into a single path after some detection delay D with high probability.
  • the detection delay D should be approximately five times the memory of the underlying FSM process.
  • the memory is equal to L.
  • a good value for D is determined by running error rate simulations for different values of D.
  • Reduced-state Viterbi Detection with local feedback accomplishes this by merging several separate states into one single reduced state and keeping only one survivor path per reduced state. The ISI that is not considered in the reduced state is cancelled for each reduced-state by using channel symbols from the corresponding survivor path in a local feedback fashion.
  • Reduced-state Viterbi detection with local feedback is also known as “Reduced-State Sequence Estimation (RSSE)”, “(Delayed) Decision-Feedback Sequence Estimation”, “Parallel Decision-Feedback Equalization”, etc.
  • K is referred to as the truncated channel memory.
  • the number of states in the reduced-state trellis is then given by 2 K . (9)
  • the reduced state ⁇ ′ n does not contain information about the ISI caused by the channel symbols (a n ⁇ K ⁇ 1 , a n ⁇ K ⁇ 2 , . . . , a n ⁇ L ).
  • this reduced state is obtained by grouping all original states ⁇ n as defined in Equation (4) with the same information symbol sequence (b n ⁇ 1 , b n ⁇ 2 , . . . , b n ⁇ K ), but different sequences (b n ⁇ K ⁇ 1 , b n ⁇ K ⁇ 2 , . . . , b n ⁇ L ) into one single reduced state ⁇ ′ n .
  • this reduced state does not make any statement about the ISI associated with the channel coefficients (f K+1 , f K+2 , . . . , f L ).
  • an estimate for this ISI component can be computed by considering the respective channel symbols from the survivor sequence into this state.
  • the ISI corresponding to a state is not known a-priori as in MLSE, but must be determined at each detection step by using channel symbols from the corresponding survivor path.
  • the first term on the right hand side of equation (10) computes the ISI component that is known a-priori due to the definition of the reduced state in equation (8).
  • the second term on the right hand side of equation (10) is the ISI component caused by channel taps that were ignored in the reduced-state definition of equation (8). This ISI term is calculated at each detection step for a given state by using respective survivor symbols as local feedback.
  • ⁇ n + 1 ⁇ ( ⁇ n + 1 ) min ⁇ ⁇ n ⁇ -> ⁇ n + 1 ⁇ ( ⁇ n ⁇ ( ⁇ n ) + ⁇ n ⁇ ( ⁇ n , a n ) ) . ( 12 )
  • RSSE where a reduced state is defined by considering just a truncated channel memory as in equation (8) is referred to as (Delayed) Decision-Feedback Sequence Estimation (DFSE), described, for example, in A. Duel-Hallen and C. Heegard, “Delayed Decision-Feedback Sequence Estimation,” IEEE Transaction on Communications, 428-436 (May 1989).
  • a reduced-state trellis can also be constructed by applying set partitioning principles to the channel symbol alphabet, as suggested in M. V. Eyuboglu and S. U. Qureshi, “Reduced-State Sequence Estimation With Set Partitioning and Decision-Feedback,” IEEE Transactions on Communications, 13-20 (January 1988).
  • ⁇ n ⁇ ′ n .
  • FIG. 5 is a schematic block diagram for an exemplary conventional reduced-state Viterbi detector 500 with local feedback.
  • the reduced-state detector 500 includes a decision-feedback unit (DFU) that computes separate ISI estimates for each trellis state according to equation (10) using local feedback, a branch metric unit (BMU) that computes branch metrics for all transitions, an add-compare-select unit (ACSU) that determines the best survivor path into each state, and a survivor memory unit (SMU) that stores the survivor paths.
  • DFU decision-feedback unit
  • BMU branch metric unit
  • ACSU add-compare-select unit
  • SMU survivor memory unit
  • the critical path 510 is comprised of a recursive loop that includes each of the processing blocks (i.e., the BMU, ACSU, SMU and DFU). As all operations along this critical path 510 have to be performed within one clock period, this recursive loop limits the maximum achievable data rate. Therefore, the maximum data rate of a reduced-state Viterbi detector with local feedback is significantly lower than the maximum data rate of a Viterbi detector without local feedback, which is only limited by the ACS function.
  • â n ⁇ 4 (0 n ) is the survivor symbol for time step n ⁇ 4 from the survivor path into state 0 n ⁇ s n+1 (0 n+1 ) is the ACS decision for the two path extensions into state 0 n+1 .
  • the part of the SMU that stores the L ⁇ K survivor symbols â n ⁇ K ⁇ 1 ( ⁇ n ), â n ⁇ K ⁇ 2 ( ⁇ n ), . . .
  • â n ⁇ L ( ⁇ n ) for each reduced state is implemented with a register-exchange-architecture, as these decisions are required for the computation of ISI estimates in the DFU without delay.
  • the implementation of the SMU using a register-exchange architecture is described, e.g., in R. Cypher and C. B. Shung, “Generalized Trace-Back Techniques for Survivor Memory Management in the Viterbi Algorithm,” Journal of VLSI Signal Processing, 85-94 (1993). Because the discussed exemplary channel uses two signal levels, the multipliers in the DFU can be implemented with a shift operation. The squaring operation for the Euclidean distance computation in the BMU can be approximated using random logic or a look-up table.
  • Reduced-state Viterbi detection with local feedback that implements, e.g., RSSE, is associated with less computational complexity than full-state Viterbi detection that implements MLSE for the same channel memory L, as it processes less states.
  • the critical path comprises one symbol multiplication and L ⁇ K additions in the DFU (the first term in the right hand side of equation (10) can be computed outside the loop), one addition, subtraction and squaring operation in the BMU, one add-compare in the ACSU, and a 2-to-1 MUX in the SMU. All the operations along this critical path must be completed within one symbol period and cannot be pipelined.
  • the critical path in a Viterbi detector just comprises the ACS operation. Therefore, the maximum data rate of a reduced-state Viterbi detector implementation with local feedback is potentially significantly lower compared to a Viterbi detector that performs MLSE. Furthermore, the maximum throughput of a reduced-state Viterbi detector implementation with local feedback depends on the channel memory such that it decreases for increasing L.
  • the present invention employs two techniques to increase the maximum data rate that may be achieved by the reduced-state sequence estimator 500 .
  • branch metrics, ISI-free signal estimates or ISI estimates are precomputed, and the correct values are selected based on survivor symbols or ACS decisions. In this manner, the computations of ISI estimates, ISI-free signal estimates or branch metrics are removed from the critical path.
  • branch metrics, ISI-free signal estimates or ISI estimates can be selected in a pipelined fashion using a multiplexer network structure that corresponds to the structure of the trellis considered by the detector, as shown in FIGS. 12-16 .
  • FIG. 7 is a schematic block diagram of a reduced-state Viterbi detector 700 with local feedback incorporating features of the present invention.
  • the branch metric computation is removed from the critical path by precomputing branch metrics at stage 710 .
  • branch metrics for a trellis, see, for example, U.S. patent application Ser. No. 09/471,920, entitled, “Method and Apparatus for Shortening the Critical Path of Reduced Complexity Sequence Estimation Techniques,” incorporated by reference herein.
  • the correct branch metrics are selected at stage 720 , discussed below in conjunction with FIG. 8 , based on survivor symbols. As previously indicated, the data rate can be increased by precomputing branch metrics and selecting the appropriate ones based on past survivor symbols. As shown in FIG. 7 , a pipeline stage 715 can be inserted between the branch metric precomputation 710 and branch metric selection 720 . In the implementation shown in FIG. 7 , the critical path comprises the branch metric selection 720 , ACSU 730 and SMU 740 . However, the computation of ISI estimates and branch metrics is not part of the critical path in contrast to the conventional reduced-state Viterbi detection implementation shown in FIG. 5 .
  • a state in the reduced-state trellis is defined by equation (8).
  • 2 L+1 branch metrics have to be precomputed.
  • FIG. 8 is a schematic block diagram showing the selection of a branch metric 720 using survivor symbols, the ACS operation 730 and the survivor memory operation 740 , as performed by the reduced-state Viterbi detector of FIG. 7 . Only the selection of one branch metric, and the ACS operation and survivor memory operation for one state are shown. The detector of FIG. 7 would implement the circuits of FIG. 8 for all required branch metrics and states. In FIG.
  • a 2 L ⁇ K -to-1 multiplexer 810 is required to select the correct branch metric among the precomputed ones.
  • the critical path just comprises the multiplexer 810 for the branch metric selection and an add-compare-select 820 .
  • ISI-free signal estimates can be precomputed, and branch metrics are then calculated using the correct ISI-free signal estimates that are selected based on past survivor symbols as shown in FIG. 9 .
  • FIG. 9 is a schematic block diagram of a reduced-state Viterbi detector 900 incorporating pipelining of the ISI-free signal estimate computation in accordance with the present invention. As shown in FIG. 9 , the ISI-free signal estimate computation is removed from the critical path by precomputing ISI-free signal estimates at stage 910 .
  • the correct ISI-free signal estimates are selected at stage 920 , discussed below in conjunction with FIG. 10 , based on survivor symbols. As previously indicated, the data rate can be increased by precomputing ISI-free signal estimates and selecting the appropriate ones based on past survivor symbols. As shown in FIG. 9 , a pipeline stage 915 can be inserted between the ISI-free signal estimate precomputation 910 and ISI-free signal estimate selection 920 . In the implementation shown in FIG. 9 , the critical path comprises the ISI-free signal estimate selection 920 , branch metrics computation 925 , ACSU 930 and SMU 940 . However, the computation of ISI-free signal estimates is not part of the critical path in contrast to the conventional reduced-state Viterbi detection implementation shown in FIG. 5 .
  • FIG. 10 is a schematic block diagram showing the selection of an ISI-free signal estimate 920 using survivor symbols, the branch metric computation 925 , the ACS operation 930 and the survivor memory operation 940 , as performed by the reduced-state Viterbi detector of FIG. 9 . Only the selection of one ISI-free signal estimate, the computation of one branch metric, and the ACS operation and survivor memory operation for one state are shown. The detector of FIG. 9 would implement the circuits of FIG. 10 for all required ISI-free signal estimates, branch metrics and states. In FIG.
  • a 2 L ⁇ K -to-1 multiplexer 1010 is required to select the correct ISI-free signal estimate among the precomputed ones.
  • the critical path just comprises the multiplexer 1010 for the ISI-free signal estimate selection, the branch metric computation 1015 and an add-compare-select 1020 . This is significantly shorter compared to a conventional RSSE implementation, as the computation of the ISI-free signal estimates is outside the critical path.
  • ISI estimates instead of ISI-free signal estimates can be precomputed, and ISI-free signal estimates and branch metrics are then calculated using the correct ISI estimates that are selected based on past survivor symbols as shown in FIG. 1 .
  • FIG. 11 is a schematic block diagram of an architecture that is a derivation of the architecture shown in FIG. 10 .
  • ISI estimates are precomputed
  • FIG. 10 ISI-free signal estimates are precomputed.
  • an ISI-free signal estimate and branch metric are computed based on a selected ISI estimate. Survivor symbols are used to select the correct ISI estimate.
  • the critical path in FIG. 11 not only includes the branch metric computation 1115 , but also the computation of an ISI-free signal estimate 1112 .
  • the critical path of this architecture is still shorter than the critical path of a conventional reduced-state Viterbi implementation shown in FIG. 6 .
  • the improved data rate achieved by the present invention comes at the expense of increased hardware complexity, as shown, for example, in FIGS. 8, 10 and 11 , as several branch metric, ISI-free signal estimate or ISI estimate candidates are precomputed per state transition in the trellis, while only one of these precomputed values is selected for the ACS operation.
  • the architecture of FIG. 6 that is associated with a significantly longer critical path, computes only one branch metric, ISI-free signal estimate and ISI estimate per state transition.
  • a 2 L ⁇ K -to-1 multiplexer 810 , 1010 , 1110 lies in the critical path.
  • the computation of the branch metrics, ISI-free signal estimates or ISI estimates is not part of the critical path anymore, the delay due to the multiplexer 810 , 1010 , 1110 still depends on the channel memory.
  • the delay is equal to the delay of L ⁇ K 2-to-1 multiplexers, potentially mitigating the speed-up achieved by precomputing branch metrics, ISI-free signal estimates or ISI estimates.
  • the present invention recognizes that when branch metrics, ISI-free signal estimates or ISI estimates are precomputed L ⁇ K time steps in advance, they can be selected using L ⁇ K levels of 2-to-1 multiplexers that are driven by ACS decisions and where each level is associated with a pipeline stage. However, only a single 2-to-1 multiplexer is part of the critical path, and the delay associated with the selection of correct values becomes independent of the channel memory.
  • FIG. 12 is a schematic block diagram of a reduced-state Viterbi detector 1200 incorporating pipelining of the branch metric selection.
  • the branch metric computation is removed from the critical path by precomputing branch metrics at stage 1210 .
  • the correct branch metrics are selected at stage 1220 , discussed below in conjunction with FIG. 13 , based on ACS decisions.
  • a pipeline stage 1215 can be inserted between the branch metric precomputation 1210 and branch metric selection 1220 .
  • FIG. 13 is a schematic block diagram showing the pipelined selection of a branch metric 1220 by the reduced-state Viterbi detector of FIG. 12 using ACS decisions.
  • the critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1310 , 1320 or 1330 , and an add-compare 1340 in the ACSU.
  • the critical path is significantly shorter compared to FIG. 8 , where an 8-to-1 multiplexer 810 lies in the critical path. In fact, it has the same length as in a Viterbi detector that implements MLSE without any decision-feedback.
  • the ACS decision s n+1 ( ⁇ n+1 ) determines the survivor symbol â n+K ( ⁇ n+1 )
  • the appropriate branch metric can be selected among candidates that correspond to the same symbol sequence a n+L ⁇ K , a n+L ⁇ K ⁇ 1 , . . . a n ⁇ K+1 , but a different past symbol a n ⁇ K .
  • s n+1 (0 n+1 ) determines the surviving branch metric ⁇ n+3 (0000x) in the top multiplexer in stage 1310 among the candidates ⁇ n+3 (00000) and ⁇ n+3 (00001), where x is a dummy variable for the symbol a n ⁇ 1 .
  • s n+1 (0 n+1 ) determines the surviving branch metric ⁇ n+2 (000xx) in the top multiplexer in stage 1320 among the candidates ⁇ n+2 (0000x) and ⁇ n+2 (0001x), where xx is a placeholder for the symbols a n ⁇ 1 , and a n ⁇ 2 .
  • the branch metric selection resembles the selection of survivor symbols in a SMU that is implemented according to the register exchange architecture.
  • the total number of 2-to-1 multiplexers is 2 L ⁇ K ⁇ 1 and thus equal to the number of 2-to-1 multiplexers required for a straightforward tree-wise implementation of the 8-to-1 multiplexer in FIG. 8 . Therefore, except for pipeline registers, the branch metric selection in FIG. 13 is associated with about the same complexity as the branch metric selection in FIG. 8 .
  • branch metrics are precomputed two or more time units in advance and then selected over two or more clock periods.
  • one of C precomputed branch metric candidates is selected from a plurality of subgroups of B precomputed branch metrics, where each subgroup has an associated multiplexer and pipeline register and where B is less than C.
  • C is a number of precomputed branch metric candidates associated with each trellis transition and B is equal to a number of transitions per state. As shown in FIG.
  • the selected precomputed branch metrics from each subgroup are combined into one or more new subgroups for a following stage, such as stage 1320 .
  • the subgroups are combined based on the bit pattern of the selected precomputed branch metrics.
  • the selected precomputed branch metrics ⁇ n+2 (0000x) and ⁇ n+2 (0001x) have similar bit patterns, other than the second-to-least significant bit and are combined for selection in the second stage 1320 .
  • Both branch metrics ⁇ n+2 (0000x) and ⁇ n+2 (0001x) correspond to a bit pattern that agrees in the first three bit positions.
  • FIG. 14 is a schematic block diagram of a reduced-state Viterbi detector 1400 that incorporates pipelining of the ISI-free signal estimate selection.
  • the ISI-free signal estimate computation is removed from the critical path by precomputing ISI-free signal estimates at stage 1410 .
  • the correct ISI-free signal estimates are selected at stage 1420 , discussed below in conjunction with FIG. 15 , based on ACS decisions.
  • a pipeline stage 1415 can be inserted between the ISI-free signal estimate precomputation 1410 and ISI-free signal estimate selection 1420 .
  • FIG. 15 is a schematic block diagram showing the pipelined selection of an ISI-free signal estimate 1420 by the reduced-state Viterbi detector of FIG. 14 using ACS decisions.
  • the selection of ISI-free signal estimates resembles the selection of branch metrics, discussed above in conjunction with FIG. 13 .
  • the critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1510 , 1520 or 1530 , an add-compare 1540 in the ACSU and a branch metric computation 1535 .
  • the critical path is significantly shorter compared to FIG. 10 , where an 8-to-1 multiplexer 1010 lies in the critical path.
  • the ACS decision s n+1 ( ⁇ n+1 ) determines the survivor symbol â n ⁇ K ( ⁇ n+1 )
  • the appropriate ISI-free signal estimate can be selected among candidates that correspond to the same symbol sequence a n+L ⁇ K , a n+L ⁇ K ⁇ 1 , . . . a n ⁇ K+1 , but a different past symbol a n ⁇ K .
  • s n+1 (0 n+1 ) determines the surviving intersymbol interference estimate q n+3 (000x) in the top multiplexer in stage 1510 among the candidates q n+3 (0000) and q n+3 (0001), where x is a dummy variable for the symbol a n ⁇ 1 .
  • s n+1 (0 n+1 ) determines the surviving branch metric q n+2 (00xx) in the top multiplexer in stage 1520 among the candidates q n+2 (000x) and q n+2 (001x), where xx is a placeholder for the symbols a n ⁇ 1 and a n ⁇ 2 .
  • just one surviving ISI-free signal estimate per transition remains, which is used for the branch metric computation 1535 .
  • FIG. 16 is a schematic block diagram showing the pipelined selection of an intersymbol interference estimate using ACS decisions according to the invention.
  • ISI estimates instead of ISI-free signal estimates are selected in a pipelined fashion.
  • the ISI estimates are precomputed according to equation (17).
  • the intersymbol interference estimate selection resembles the selection of the ISI-free signal estimate, discussed above in conjunction with FIG. 15 .
  • the critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1610 , 1620 or 1630 , an ISI-free signal estimate computation 1632 , a branch metric computation 1635 , and an add-compare 1640 in the ACSU.
  • the critical path is significantly shorter compared to FIG. 11 , where an 8-to-1 multiplexer 1110 lies in the critical path.
  • the ACS decision s n+1 ( ⁇ n+1 ) determines the survivor symbol x ⁇ K( ⁇ n+1 )
  • the appropriate intersymbol interference estimate can be selected among candidates that correspond to the same symbol sequence a n+L ⁇ K , a n+L ⁇ K ⁇ 1 , . . . a n ⁇ K+1 , but a different past symbol a n ⁇ K .
  • s n+1 (0 n+1 ) determines the surviving intersymbol interference estimate q′ n+3 (000x) in the top multiplexer in stage 1610 among the candidates q′ n+3 (0000) and q′ n+3 (0001), where x is a dummy variable for the symbol a n ⁇ 1 .
  • s n+1 (0 n+1 ) determines the surviving branch metric q′ n+2 (00xx) in the top multiplexer in stage 1620 among the candidates q′ n+2 (000x) and q′ n+2 (001X), where xx is a placeholder for the symbols a n ⁇ 1 and a n ⁇ 2 .
  • just one surviving intersymbol interference estimate per transition remains, which is used for the ISI-free signal estimate computation 1632 .
  • FIG. 17 is a functional block diagram 1700 of the ACS operation performed in FIGS. 8, 10 , 11 , 13 , 15 , and 16 .
  • the ACS block 1700 includes an add function 1710 , compare function 1720 and select function 1730 .
  • the exemplary add function 1710 includes two adders.
  • the exemplary compare function 1720 could be implemented using a subtractor, where the sign bit of the subtractor output controls the selector 1730 .
  • the select function 1730 comprises a multiplexer, controlled by the output of the compare function 1720 .
  • FIG. 17 shows an exemplary two-way ACS implementation for a trellis with two transitions per state.
  • the present invention allows for a VLSI implementation of reduced-state Viterbi detectors with local feedback for data rates that are significantly increased relative to conventional designs. Even larger data rate increases can be achieved when two or more trellis steps are processed within once clock period using a multi-step trellis.
  • the invention disclosed here can be combined with the multi-step detection method disclosed in United States patent application entitled “Method and Apparatus for Multiple Step Viterbi Detection with Local Feedback,” filed contemporaneously herewith and incorporated by reference herein.
  • the invention uses an architecture that is very regular making it suitable for high-speed implementation. Viterbi detectors with local feedback can achieve better error rate performance than postprocessor-based structures in the magnetic recording application.
  • reduced-state Viterbi detection with local feedback is an attractive detector structure for future read channel chips.
  • the use of reduced-state Viterbi detection with local feedback in the magnetic recording application is described in E. F. Haratsch, “Viterbi Detector Architectures for Magnetic Recording,” 2003 International Symposium on VLSI Technology, Systems, and Applications, 243-46, Oct. 6-8, 2003.
  • Post-processor based detector structures are discussed in Z. A. Keirn et al., “On the Use of Redundant Bits for Magnetic Recording: Single Parity Codes and Reed-Solomon ECC,” IEEE Transactions on Magnetics, 225-30 (January 2004), and the references therein.
  • ACS decisions can be used to select precomputed branch metrics, ISI-free signal estimates or ISI estimates as shown in FIGS. 12-16 .
  • the SMU 1240 and 1440 can be implemented using a trace-back structure, as survivor symbols are not used for local feedback anymore.
  • the details of a trace-back survivor memory architecture can be read, e.g. in R. Cypher and C. B. Shung, “Generalized Trace-Back Techniques for Survivor Memory Management in the Viterbi Algorithm,” Journal of VLSI Signal Processing, 85-94 (1993), or in H.-L.
  • a register-exchange survivor memory implementation survivor symbols for each state are stored and updated at each detection step.
  • ACS decisions are stored as pointers in a memory, and the detected symbols are obtained by tracing back the pointers that correspond to a survivor path.
  • the trace-back architecture does not require the updating of all survivor symbols at each detection step, it is associated with less power consumption than the register-exchange architecture.
  • the trace-back architecture is associated with larger detection latency and therefore not suitable for the reduced-state Viterbi detector shown in FIG. 6 , where zero delay survivor symbols are required for the local feedback to compute ISI estimates and branch metrics.
  • the trace-back SMU will be associated with significantly less power consumption than a corresponding register-exchange SMU implementation.
  • the techniques described herein can be employed, e.g., to detect data in the presence of intersymbol interference and noise in magnetic recording read channels.
  • the disclosed reduced-state Viterbi detectors with local feedback improve the detection of read data bits compared to post-processor based structures.
  • the invention can be used to implement a read channel that performs noise-predictive data detection and achieves the ever increasing high data rates that are required by evolving storage applications.
  • noise-predictive detection in magnetic recording see, e.g., R. D. Cideciyan et al., “Noise Predictive Maximum Likelihood Detection Combined With Parity-Based Post-Processing,” IEEE Trans. on Magnetics, 714-20 (March 2001), and E. F. Haratsch, “Viterbi Detector Architectures for Magnetic Recording,” International Symposium on VLSI Technology, Systems, and Applications, 243-46 (October 2003).
  • FIG. 18 The simplified block diagram for a read channel incorporating noise-predictive reduced-state Viterbi detection is shown in FIG. 18 , where signals received at the input of the finite response (FIR) equalizer are in fact signals that have been processed by the analog front-end, which typically includes a variable gain amplifier, continuous time filter and A/D converter.
  • FIR finite response
  • the equalization target is chosen such that its frequency spectrum matches the characteristics of the read channel well.
  • the error rate performance of a read channel can be improved by employing a noise-predictive FIR (NP-FIR) filter 1820 after the FIR equalizer 1810 that whitens the noise.
  • NP-FIR noise-predictive FIR
  • the channel coefficients f i are given by the convolution of the equalization target and the impulse response of the NP-FIR filter 1820 (see equation (23)). Equation (24) is equivalent to equation (2). Therefore, the features of the invention can be applied to the read channel application, i.e., a reduced-state can be defined as in equation (8), branch metrics can be precomputed as in equation (14) using the channel coefficients defined by (23), and an ACS operation can be performed as in equation (12).
  • a correct branch metric for a transition in the trellis can be selected using the architectures shown in FIG.
  • ISI-free signal estimates or ISI estimates can be precomputed according to equations (15) and (17) respectively using the channel coefficients defined by (23), and a correct ISI-free signal estimate or ISI estimate can be selected as shown in FIGS. 10, 11 , 15 and 16 respectively. Therefore, the reduced-state Viterbi detector 1830 can be implemented using the architectures shown in FIGS. 7-16 .
  • the invention can also be applied when a parity check code is used to achieve coding gain.
  • the total number of states in the reduced-state trellis that accounts for the parity check code is given by: 2 ⁇ 2 L . (27)
  • a conventional implementation of a reduced-state Viterbi detector that considers the reduced-state trellis defined according to equation (28) would use equations (10)-(12) to compute ISI estimates, branch and path metrics.
  • equations (10)-(12) due to the local feedback required for the computation of ISI estimates, it is challenging to achieve very high data rates.
  • the maximum achievable data rate can again be increased significantly by precomputing branch metrics and selecting correct ones as described above.
  • ISI-free signal estimates or ISI estimates can be precomputed and correct ones can be selected as described above.
  • the invention can also be applied to signal-dependent detection, which is sometimes referred to as data-dependent detection and explained in detail in the co-pending United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” incorporated by reference herein.
  • signal-dependent detection more than one signal-dependent (SD) NP-FIR filters operate in parallel to whiten the noise.
  • FIG. 19 illustrates this for the case that two SD NP-FIR filters 1920 - 1 and 1920 - 2 are used.
  • the invention can easily be used when there are more than two NP-FIR filters 1920 .
  • the reduced-state Viterbi detector 1930 can be implemented using the architectures shown in FIGS. 7-16 .
  • the output of the FIR equalizer 1910 is supplied to two SD NP-FIR filters 1920 - 1 and 1920 - 2 to produced two signals r n (1) and r n (2).
  • Each SD NP-FIR filter 1920 implements the impulse response defined by equation (22) with a different set of filter coefficients.
  • the first SD NP-FIR filter 1920 - 1 that produces r n (1) uses a first set of coefficients p i (1), 0 ⁇ i ⁇ N
  • the second SD NP-FIR filter 1920 - 2 that produces r n (2) uses a second set of coefficients p i (2), 0 ⁇ i ⁇ N that can differ from the first set of NP-FIR filter coefficients.
  • P ( D; 1) p 0 (1)+ p 1 (1) ⁇ D+ . . . p N (1) ⁇ D N .
  • the filter coefficients of the different SD NP-FIR filters 1920 can differ, as in a signal-dependent channel the noise statistics depend on the transmitted data or bit sequence.
  • the generation of filter coefficients for the SD NP-FIR filters is described in co-pending United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” incorporated by reference herein.
  • the filter coefficients f i that are used to compute a branch metric depend on the transmitted data or bit sequence.
  • branch metrics are precomputed according to equation (14) for a first group of bit sequences (b n ⁇ 1 b n ⁇ 2 . . . b n ⁇ L ) using filter coefficients f i (1), and for a second group of bit sequences (b n ⁇ 1 b n ⁇ 2 . . . b n ⁇ L ) the filter coefficients f i (2) are used.
  • signal-dependent branch metrics are computed using the same underlying function, but the choice of the sample r n and channel coefficients f i depends on the bit sequence for which the branch metric is computed.
  • the precomputation of signal-dependent branch metrics was illustrated here using two signal-dependent NP-FIR filters and a particular grouping of bit sequences, but it is apparent how signal-dependent branch metrics are precomputed for more than two signal-dependent NP-FIR filters and other groupings. E.g., all possible bit sequences of length L can be divided into more than two groups, for which separate samples r n and separate sets of channel coefficients f i would be used to precompute branch metrics.
  • signal-dependent ISI-free signal estimates or intersymbol interference estimates can be precomputed, instead of branch metric, as would be apparent to a person of ordinary skill in the art based on the present disclosure.
  • signal-dependent branch metrics would be computed based on selected signal-dependent ISI-free signal estimates or ISI estimates as described above.

Abstract

A method and apparatus are disclosed for improving the maximum data rate of reduced-state Viterbi detectors with local feedback in magnetic recording systems. A read channel signal is processed in a magnetic recording device by precomputing branch metrics, intersymbol interference estimates or intersymbol interference-free signal estimates for speculative sequences of one or more channel symbols; selecting one of the precomputed values based on at least one decision from at least one corresponding state; and selecting a path having a best path metric for a given state.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • The present application is related to United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” filed on May 6, 2004 and United States patent application entitled “Method and Apparatus for Multiple Step Viterbi Detection with Local Feedback,” United States patent application entitled “Method and Apparatus for Precomputation and Pipelined Selection of Branch Metrics in a Reduced-State Viterbi Detector,” and United States patent application entitled “Method and Apparatus for Precomputation and Pipelined Selection of Intersymbol Interference Estimates in a Reduced-State Viterbi Detector,” each filed contemporaneously herewith, and each incorporated by reference herein.
  • FIELD OF THE INVENTION
  • The present invention relates generally to equalization, detection and decoding techniques and, more particularly, to sequence estimation techniques with reduced complexity.
  • BACKGROUND OF THE INVENTION
  • A magnetic recording read channel converts an analog read channel into an estimate of the user data recorded on a magnetic medium. Read heads and magnetic media introduce noise and other distortions into the read signal. As the information densities in magnetic recording increase, the intersymbol interference (ISI) becomes more severe as well, (i.e., the channel impulse response becomes longer). In read channel chips, a Viterbi detector is typically used to detect the read data bits in the presence of intersymbol interference and noise. When the channel impulse response is long, however, the hardware complexity associated with the Viterbi detector becomes prohibitively large, as the number of states considered by the Viterbi detector grows exponentially with the length of the channel impulse response. A number of techniques have been proposed or suggested for reducing the complexity of Viterbi detectors.
  • For example, the hardware complexity of the Viterbi detector can be reduced by using a reduced-state trellis that considers only a shortened impulse response, and canceling intersymbol interference due to the tail of the impulse response for each state by using past survivor symbols as local feedback. See, e.g., J. W. M. Bergmans, “Digital Baseband Transmission and Recording,” Kluwer Academic Publishers, 326 (1996) or U.S. Pat. No. 6,690,754, issued to Haratsch et al., entitled “Method and Apparatus for Reducing the Computational Complexity and Relaxing the Critical Path of Reduced-State Sequence Estimation (RSSE) Techniques,” incorporated by reference herein
  • The error rate performance of reduced-state Viterbi detectors with local feedback can approach the performance of full-state Viterbi detectors without local feedback that implement maximum likelihood sequence estimation (MLSE). The maximum achievable data rate of a Viterbi detector implementation with local feedback, however, is considerably lower compared to a Viterbi detector implementation without local feedback, as significantly more operations have to be performed within one clock period. A need therefore exists for a method and apparatus for performing reduced-state Viterbi detection with local feedback at the high data rates that are required by evolving high-end storage applications.
  • SUMMARY OF THE INVENTION
  • Generally, a method and apparatus are disclosed for improving the maximum data rate of reduced-state Viterbi detectors with local feedback in magnetic recording systems. The maximum data rate that may be achieved by the disclosed reduced-state Viterbi detectors is improved by precomputing a number of candidate branch metrics and performing pipelined selection of one of the precomputed values. Precomputing the branch metrics for possible symbol combinations in the channel memory makes it possible to shorten the critical path. In an alternative embodiment, intersymbol interference estimates or intersymbol interference-free signal estimates are precomputed, and branch metric are computed based on the selected precomputed values.
  • A read channel signal is processed in a magnetic recording device by precomputing branch metrics, intersymbol interference estimates or intersymbol interference-free signal estimates for speculative sequences of one or more channel symbols; selecting one of the precomputed values based on at least one decision from at least one corresponding state; and selecting a path having a best path metric for a given state.
  • A more complete understanding of the present invention, as well as further features and advantages of the present invention, will be obtained by reference to the following detailed description and drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic block diagram of a conventional system model for a baseband communications channel with ISI and additive noise;
  • FIG. 2 illustrates a trellis diagram for a channel with memory L=1;
  • FIG. 3 illustrates a trellis diagram for a channel having a memory L=4;
  • FIG. 4 illustrates a reduced-state trellis diagram corresponding to the full-state trellis of FIG. 3, for a channel having a memory L=4 and a shortened channel memory K=1;
  • FIG. 5 is a schematic block diagram for an exemplary conventional reduced-state Viterbi detector with local feedback;
  • FIG. 6 illustrates a detailed state-parallel implementation of a reduced-state Viterbi detector with local feedback corresponding to the trellis of FIG. 4;
  • FIG. 7 is a schematic block diagram of a reduced-state Viterbi detector that incorporates precomputation of the branch metrics;
  • FIG. 8 is a schematic block diagram showing the selection of a precomputed branch metric by the reduced-state Viterbi detector of FIG. 7 using survivor symbols;
  • FIG. 9 is a schematic block diagram of a reduced-state Viterbi detector that incorporates precomputation of the ISI-free signal estimates;
  • FIG. 10 is a schematic block diagram showing the selection of a precomputed ISI-free signal estimate by the reduced-state Viterbi detector of FIG. 9 using survivor symbols;
  • FIG. 11 is a schematic block diagram showing the selection of a precomputed intersymbol interference estimate using survivor symbols;
  • FIG. 12 is a schematic block diagram of a reduced-state Viterbi detector incorporating pipelining of the branch metric selection;
  • FIG. 13 is a schematic block diagram showing the pipelined selection of a branch metric by the reduced-state Viterbi detector of FIG. 12 using ACS decisions;
  • FIG. 14 is a schematic block diagram of a reduced-state Viterbi detector that incorporates pipelining of the ISI-free signal estimate selection;
  • FIG. 15 is a schematic block diagram showing the pipelined selection of an ISI-free signal estimate by the reduced-state Viterbi detector of FIG. 14 using ACS decisions;
  • FIG. 16 is a schematic block diagram showing the pipelined selection of an intersymbol interference estimate using ACS decisions;
  • FIG. 17 is a functional block diagram of the ACS operation performed in FIGS. 8, 10, 11, 13, 15 and 16;
  • FIG. 18 is a functional block diagram of a read channel detector that implements noise-predictive data detection and uses one of the reduced-state Viterbi detectors of FIGS. 7-16 incorporating features of the invention; and
  • FIG. 19 is a functional block diagram of a read channel detector that implements signal-dependent noise-predictive data detection and uses one of the reduced-state Viterbi detectors of FIGS. 7-16 incorporating features of the invention.
  • DETAILED DESCRIPTION
  • The present invention increases the maximum data rate that may be achieved by reduced-state Viterbi detectors. According to one aspect of the invention, branch metrics, ISI-free signal estimates or ISI estimates are precomputed, and the correct values are selected based on survivor symbols or ACS decisions. In this manner, the computations of ISI estimates, ISI-free signal estimates or branch metrics are removed from the critical path. According to another aspect of the invention, branch metrics, ISI-free signal estimates or ISI estimates can be selected in a pipelined fashion using a multiplexer network structure that corresponds to the structure of the trellis considered by the detector.
  • For a detailed discussion of reduced-state Viterbi detection with local feedback, which is also known as Reduced-State Sequence Estimation (RSSE), (Delayed) Decision-Feedback Sequence Estimation (DFSE), and Parallel Decision-Feedback Equalization (PDFE), see, for example, U.S. Pat. No. 6,690,754 to Haratsch et al., entitled “Method and Apparatus for Reducing the Computational Complexity and Relaxing the Critical Path of Reduced-State Sequence Estimation (RSSE) Techniques,” incorporated by reference herein, and the references cited therein. See also, Lee and Messerschmidt, “Digital Communication,” Kluwer Academic Publishers, 2nd ed. (1994).
  • FIG. 1 is a schematic block diagram of a conventional system model for a baseband communications channel 100 with ISI and additive noise. While the exemplary embodiment is discussed in the context of baseband communications, the techniques discussed herein can also be applied to passband communications systems, as would be apparent to a person of ordinary skill in the art. Further, while it is assumed that trellis-coded modulation (TCM) is not employed for ease of illustration, the disclosed techniques generalize to communication systems using TCM or other modulation schemes.
  • The modulator 110 maps an information symbol bn into a channel symbol an. For ease of illustration, it is assumed that the number of information bits per information symbol is one. In other words, the information symbol bn is equivalent to a single information bit bn. The modulator 110 maps an information symbol bn to a two-level channel symbol an according to following rule: a n = { - 1 , b n = 0 1 , b n = 1 . ( 1 )
  • The techniques discussed herein can easily be applied to other modulation schemes and more than two signal levels. For a discussion of reduced-state Viterbi detection for an exemplary modulation scheme with five signal levels, see, U.S. patent application Ser. No. 09/471,920, entitled, “Method and Apparatus for Shortening the Critical Path of Reduced Complexity Sequence Estimation Techniques,” incorporated by reference herein.
  • The ISI channel 100 is modeled as an FIR filter, and the channel output at time n is given by r n = z n + w n = i = 0 L f i · a n - i + w n , ( 2 )
    where zn is the ISI channel output, {fi}, 0≦i≦L are the channel coefficients, L is the channel memory, and wn is noise. The decision of a detector 120 that corresponds to bn is denoted by b′n.
  • The ISI channel output zn depends on the current channel symbol an and the past L transmitted channel symbols {an-i}, 1≦i≦L. This output can be described as a function of the L past transmitted channel symbols using a finite state machine (FSM) model, where the channel state at time n is defined by
    αn=(a n−1 , a n−2 , . . . , a n−L).   (3)
  • The channel state is equivalently defined in terms of the L past transmitted information bits:
    βn=(b n−1 , b n−2 , . . . , b n−L).   (4)
  • It is apparent from equations (3) or (4) that the number of channel states is given by
    2L.   (5)
  • To simplify the notation, the integer value corresponding to the vector (bn−1, bn−L+1, bn−L) will be used to represent the channel state βn. For example, 0n will stand for βn=(0, . . . , 0, 0), and 1n will stand for βn=(0, . . . , 0, 1).
  • The FSM process describing the ISI channel 100 can be visualized using a trellis diagram 200, shown in FIG. 2, for a channel with memory L=1. For the considered exemplary uncoded channel model, a trellis state at time n is denoted by σn, and is equal to the channel state, i.e., σnn. In FIG. 2, solid lines correspond to survivor paths, dotted lines to discarded transitions, and dashed lines to path extensions. There are two channel states, and two branches corresponding to the information symbols bn=0 and bn=1 leave each state σn to reach respective successor states {σn+1}. It can be seen from equation (5) that the number of channel states grows exponentially with respect to the channel memory.
  • FIG. 2 depicts the operation of the Viterbi algorithm at time step n. At this point, the Viterbi algorithm has already determined the survivor path into state 0n, which corresponds to the surviving state sequence {0n, 1n−1, 0n−2, 1n−3, . . . }. The survivor path into state 1n corresponds in this example to the state sequence {1n, 0n−1, 0n−2, 1n−3, . . . }. Based on these two survivor paths, the Viterbi algorithm decides on the survivor paths into states 0n+1 and 1n+1, in the manner described below.
  • First, the Viterbi algorithm calculates branch metrics for the state transitions from σn to σn+1. For a channel with additive white Gaussian noise, the optimum branch metric is the Euclidean distance between the received symbol rn and the ideal ISI channel output zn that corresponds to the respective state transition. For a transition from state σn, the branch metric is given by λ n ( σ n , a n ) = ( r n - z n ) 2 = ( r n - i = 0 L f i · a n - i ) 2 , ( 6 )
    where an is the channel symbol that is associated with a transition from state σn to a successor state σn+1. The techniques described herein are independent from the way branch metrics are computed, i.e., branch metrics can also by computed by using the absolute value of the difference between the received symbol rn and the ideal ISI channel output zn.
  • In the trellis 200 of FIG. 2, there are two path extensions into any state σn+1, e.g., state 0n+1 can be reached from states 0n and 1 n. Out of the two path extensions into a particular state σn+1, the Viterbi algorithm keeps only the one extension with the smallest path metric, as it corresponds to the most likely path into this state. The metric for the path that emanates from state σn and leads into σn+1 is calculated by adding the path metric for the preceding state σn, Γnn) and the branch metric λnn, an) for the transition.
  • The three operations to determine the best survivor path into a new state σn+1, i.e., adding up corresponding path metrics of predecessor states σn and branch metrics for the extensions into the new state σn+1, comparing the path metrics of these extended sequences, and selecting the extension with the minimum path metric as the survivor sequence for the new state, are referred to as add-compare-select (ACS), which can be described by the following equation: Γ n + 1 ( σ n + 1 ) = min { σ n } -> σ n + 1 ( Γ n ( σ n ) + λ n ( σ n , a n ) ) . ( 7 )
  • As previously indicated, the invention can also be applied when branch metrics are computed differently. As known in the art, for certain branch metric definition, the best path into a state is given by the path with the maximum (instead of minimum) path metric. For such cases, the ACS operation described by equation (7) involves a maximum instead of a minimum operation.
  • In the example of FIG. 2, the two survivor sequences into states 0n and 1n merge into a single path at time step n−2. In general, all survivor paths merge into a single path after some detection delay D with high probability. Thus, information symbols can be uniquely detected from this time step on. Therefore, it is possible to implement the Viterbi algorithm with a fixed detection delay. It is not required to process the whole transmitted sequence before the first information symbols can be detected. Generally, the detection delay D should be approximately five times the memory of the underlying FSM process. For ISI channels, the memory is equal to L. Typically, a good value for D is determined by running error rate simulations for different values of D.
  • FIG. 3 illustrates a trellis 300 describing an ISI channel having a memory L=4. A trellis state at time n is denoted by σn, and for the considered exemplary uncoded channel model, it is equal to the channel state, i.e., σnn. There are 16 channel states, and two branches corresponding to the information symbols bn=0 and bn=1 leave each state σn to reach respective successor states {σn+1}.
  • Reduced-State Viterbi Detection With Local Feedback
  • As indicated above, the disadvantage of MLSE is that its complexity grows exponentially with the channel memory. Considering fewer states for the detection of the most likely data sequence reduces the required hardware or computational effort. Reduced-state Viterbi Detection with local feedback accomplishes this by merging several separate states into one single reduced state and keeping only one survivor path per reduced state. The ISI that is not considered in the reduced state is cancelled for each reduced-state by using channel symbols from the corresponding survivor path in a local feedback fashion. Reduced-state Viterbi detection with local feedback is also known as “Reduced-State Sequence Estimation (RSSE)”, “(Delayed) Decision-Feedback Sequence Estimation”, “Parallel Decision-Feedback Equalization”, etc.
  • In the simplest variant of RSSE, a reduced state β′n is obtained by not considering all L information symbols, but only the past K information symbols for the definition of a trellis state:
    β′n=(b n−1 , b n−2 , . . . , b n−K), 0≦K≦L,   (8)
    where K is referred to as the truncated channel memory. The number of states in the reduced-state trellis is then given by
    2K.   (9)
  • The reduced state β′n does not contain information about the ISI caused by the channel symbols (an−K−1, an−K−2, . . . , an−L). Conceptually, this reduced state is obtained by grouping all original states βn as defined in Equation (4) with the same information symbol sequence (bn−1, bn−2, . . . , bn−K), but different sequences (bn−K−1, bn−K−2, . . . , bn−L) into one single reduced state β′n. Therefore, this reduced state does not make any statement about the ISI associated with the channel coefficients (fK+1, fK+2, . . . , fL). But an estimate for this ISI component can be computed by considering the respective channel symbols from the survivor sequence into this state. The ISI corresponding to a state is not known a-priori as in MLSE, but must be determined at each detection step by using channel symbols from the corresponding survivor path. Let σn denote a state in the reduced-state trellis, i.e., σn=β′n. The ISI estimate unn) for a state σn is calculated at time step n as u n ( σ n ) = i = 1 K f i · a n - i + i = K + 1 L f i · a ^ n - i ( σ n ) , ( 10 )
    where ân−in) is the channel symbol that corresponds to the survivor sequence into state σn and that is associated with trellis step n−i. The first term on the right hand side of equation (10) computes the ISI component that is known a-priori due to the definition of the reduced state in equation (8). The second term on the right hand side of equation (10) is the ISI component caused by channel taps that were ignored in the reduced-state definition of equation (8). This ISI term is calculated at each detection step for a given state by using respective survivor symbols as local feedback.
  • With the ISI estimate unn), the branch metric for the transition that emanates from state σn to reach a successor state σn+1 and corresponds to channel symbol an can be computed as:
    λnn , a n)=(r n −f 0 ·a n −u nn))2.   (11)
  • As in MLSE, the most likely survivor path into the state σn+1 with the path metric Γn+1n+1) among the path extensions from all possible predecessor states {σn} is determined with an ACS operation: Γ n + 1 ( σ n + 1 ) = min { σ n } -> σ n + 1 ( Γ n ( σ n ) + λ n ( σ n , a n ) ) . ( 12 )
  • The version of RSSE where a reduced state is defined by considering just a truncated channel memory as in equation (8) is referred to as (Delayed) Decision-Feedback Sequence Estimation (DFSE), described, for example, in A. Duel-Hallen and C. Heegard, “Delayed Decision-Feedback Sequence Estimation,” IEEE Transaction on Communications, 428-436 (May 1989). A reduced-state trellis can also be constructed by applying set partitioning principles to the channel symbol alphabet, as suggested in M. V. Eyuboglu and S. U. Qureshi, “Reduced-State Sequence Estimation With Set Partitioning and Decision-Feedback,” IEEE Transactions on Communications, 13-20 (January 1988). Recently, even more general rules for the definition of reduced states were given in B. E. Spinnler and J. Huber, “Design of Hyper States for Reduced-State Sequence Estimation,”, AEÜ (Electronics and Communication), 17-26 (1996). The present invention can be applied to such general RSSE methods. In addition, the present invention can be applied to another subclass of RSSE, referred to as Parallel Decision-Feedback Equalization, described in Lee and Messerschmidt, “Digital Communication,” 2nd ed. (1994). These publications are each incorporated by reference herein.
  • Now, RSSE will be explained for the case that L=4 and K=1. Then, a state in the reduced-state trellis is defined according to equation (8) as:
    β′n=(b n−1)   (13)
    and the number of states in the reduced-state trellis is equal to 21=2. FIG. 4 illustrates the reduced-state trellis 400 corresponding to the full state trellis 300 of FIG. 3 that describes an ISI channel having a memory L=4. A state at time n in the reduced-state trellis is denoted by σn, i.e., σn=β′n. There are two channel states, and two branches corresponding to the information symbols bn=0 and bn=1 leave each state σn to reach respective successor states {σn+1}.
  • FIG. 5 is a schematic block diagram for an exemplary conventional reduced-state Viterbi detector 500 with local feedback. As shown in FIG. 5, the reduced-state detector 500 includes a decision-feedback unit (DFU) that computes separate ISI estimates for each trellis state according to equation (10) using local feedback, a branch metric unit (BMU) that computes branch metrics for all transitions, an add-compare-select unit (ACSU) that determines the best survivor path into each state, and a survivor memory unit (SMU) that stores the survivor paths.
  • As shown in FIG. 5, due to the local feedback the critical path 510 is comprised of a recursive loop that includes each of the processing blocks (i.e., the BMU, ACSU, SMU and DFU). As all operations along this critical path 510 have to be performed within one clock period, this recursive loop limits the maximum achievable data rate. Therefore, the maximum data rate of a reduced-state Viterbi detector with local feedback is significantly lower than the maximum data rate of a Viterbi detector without local feedback, which is only limited by the ACS function.
  • FIG. 6 illustrates a detailed state-parallel reduced-state Viterbi detector implementation 600 with local feedback corresponding to the trellis 400 of FIG. 4, having a memory L=4 and a shortened channel memory K=1. ân−4(0n) is the survivor symbol for time step n−4 from the survivor path into state 0n·sn+1(0n+1) is the ACS decision for the two path extensions into state 0n+1. The part of the SMU that stores the L−K survivor symbols ân−K−1n), ân−K−2n), . . . ân−Ln) for each reduced state is implemented with a register-exchange-architecture, as these decisions are required for the computation of ISI estimates in the DFU without delay. The implementation of the SMU using a register-exchange architecture is described, e.g., in R. Cypher and C. B. Shung, “Generalized Trace-Back Techniques for Survivor Memory Management in the Viterbi Algorithm,” Journal of VLSI Signal Processing, 85-94 (1993). Because the discussed exemplary channel uses two signal levels, the multipliers in the DFU can be implemented with a shift operation. The squaring operation for the Euclidean distance computation in the BMU can be approximated using random logic or a look-up table.
  • Reduced-state Viterbi detection with local feedback that implements, e.g., RSSE, is associated with less computational complexity than full-state Viterbi detection that implements MLSE for the same channel memory L, as it processes less states. However, this comes at the expense of a significantly longer critical path, which is drawn in FIG. 6 using dotted lines. The critical path comprises one symbol multiplication and L−K additions in the DFU (the first term in the right hand side of equation (10) can be computed outside the loop), one addition, subtraction and squaring operation in the BMU, one add-compare in the ACSU, and a 2-to-1 MUX in the SMU. All the operations along this critical path must be completed within one symbol period and cannot be pipelined. In contrast to this, the critical path in a Viterbi detector just comprises the ACS operation. Therefore, the maximum data rate of a reduced-state Viterbi detector implementation with local feedback is potentially significantly lower compared to a Viterbi detector that performs MLSE. Furthermore, the maximum throughput of a reduced-state Viterbi detector implementation with local feedback depends on the channel memory such that it decreases for increasing L.
  • Precomputation Architecture
  • The present invention employs two techniques to increase the maximum data rate that may be achieved by the reduced-state sequence estimator 500. First, as discussed below in conjunction with FIGS. 7-11, branch metrics, ISI-free signal estimates or ISI estimates are precomputed, and the correct values are selected based on survivor symbols or ACS decisions. In this manner, the computations of ISI estimates, ISI-free signal estimates or branch metrics are removed from the critical path. Second, branch metrics, ISI-free signal estimates or ISI estimates can be selected in a pipelined fashion using a multiplexer network structure that corresponds to the structure of the trellis considered by the detector, as shown in FIGS. 12-16.
  • FIG. 7 is a schematic block diagram of a reduced-state Viterbi detector 700 with local feedback incorporating features of the present invention. As shown in FIG. 7, the branch metric computation is removed from the critical path by precomputing branch metrics at stage 710. For a detailed discussion of the precomputation of branch metrics for a trellis, see, for example, U.S. patent application Ser. No. 09/471,920, entitled, “Method and Apparatus for Shortening the Critical Path of Reduced Complexity Sequence Estimation Techniques,” incorporated by reference herein.
  • The correct branch metrics are selected at stage 720, discussed below in conjunction with FIG. 8, based on survivor symbols. As previously indicated, the data rate can be increased by precomputing branch metrics and selecting the appropriate ones based on past survivor symbols. As shown in FIG. 7, a pipeline stage 715 can be inserted between the branch metric precomputation 710 and branch metric selection 720. In the implementation shown in FIG. 7, the critical path comprises the branch metric selection 720, ACSU 730 and SMU 740. However, the computation of ISI estimates and branch metrics is not part of the critical path in contrast to the conventional reduced-state Viterbi detection implementation shown in FIG. 5.
  • In the exemplary uncoded channel model described above, the input into the reduced-state detector is given by equation (2), and a state in the reduced-state trellis is defined by equation (8). A state in the reduced-state trellis is denoted by σn, i.e., σn=β′n. A branch metric for the transition from state σn to σn+1 that corresponds to the information bit sequence bn, bn−1, . . . bn−L is given by λ n ( b n b n - 1 b n - L ) = ( r n - i = 0 L f i · a n - i ) 2 , ( 14 )
    where an−i is the channel symbol that corresponds to the information bit bn−i. This is the same branch metric that was referred to as λnn, an) in the context of equation (11). To account for all possible bit sequences, 2L+1 branch metrics have to be precomputed. For a transition from state σn to σn+1, there are 2L−K branch metric candidates that correspond to the same bit sequence bn−1, bn−2, . . . bn−K, which is determined by σn, but different speculative bit sequences bn−K−1, bn−K−2, . . . bn−L. For each state and transition in the reduced-state trellis, the appropriate branch metric is selected based on the L−K survivor symbols ân−K−1, ân−K−2, . . . ân−L that correspond to this state. The selection of the branch metric associated with the transition from state σn=0n to σn+1=0n+1 is shown in FIG. 8, where L=4 and K=1.
  • FIG. 8 is a schematic block diagram showing the selection of a branch metric 720 using survivor symbols, the ACS operation 730 and the survivor memory operation 740, as performed by the reduced-state Viterbi detector of FIG. 7. Only the selection of one branch metric, and the ACS operation and survivor memory operation for one state are shown. The detector of FIG. 7 would implement the circuits of FIG. 8 for all required branch metrics and states. In FIG. 8, λn(00xxx) is the selected branch metric for a transition from state 0n that corresponds to the bit sequence bn=0, bn−1=0, bn−2={circumflex over (b)}n−2(0n), bn−3={circumflex over (b)}n−3(0n) and bn−4={circumflex over (b)}n−4(0n). A 2L−K-to-1 multiplexer 810 is required to select the correct branch metric among the precomputed ones. The critical path just comprises the multiplexer 810 for the branch metric selection and an add-compare-select 820. This is significantly shorter compared to a conventional RSSE implementation, as the computation of branch metrics is outside the critical path. Except for the multiplexer 810, the critical path in this RSSE architecture with precomputed branch metrics is the same as in a Viterbi detector that implements MLSE without any decision-feedback.
  • To reduce the hardware for the precomputation, the branch metrics do not have to be fully precomputed. Instead, ISI-free signal estimates can be precomputed, and branch metrics are then calculated using the correct ISI-free signal estimates that are selected based on past survivor symbols as shown in FIG. 9. An ISI-free signal estimate that corresponds to the bit sequence bn−1, bn−2, . . . bn−L is given by q n ( b n - 1 b n - 2 b n - L ) = r n - i = 1 L f i · a n - i . ( 15 )
    In total, 2L ISI-free signal estimates have to be precomputed, but only 2K+1 branch metrics are calculated in this architecture. However, the Euclidean distance metric computation,
    λn=(q n −f 0 ·a n)2   (16)
    is in the critical path, while the computation of ISI-free signal estimates is outside the critical path.
  • FIG. 9 is a schematic block diagram of a reduced-state Viterbi detector 900 incorporating pipelining of the ISI-free signal estimate computation in accordance with the present invention. As shown in FIG. 9, the ISI-free signal estimate computation is removed from the critical path by precomputing ISI-free signal estimates at stage 910.
  • The correct ISI-free signal estimates are selected at stage 920, discussed below in conjunction with FIG. 10, based on survivor symbols. As previously indicated, the data rate can be increased by precomputing ISI-free signal estimates and selecting the appropriate ones based on past survivor symbols. As shown in FIG. 9, a pipeline stage 915 can be inserted between the ISI-free signal estimate precomputation 910 and ISI-free signal estimate selection 920. In the implementation shown in FIG. 9, the critical path comprises the ISI-free signal estimate selection 920, branch metrics computation 925, ACSU 930 and SMU 940. However, the computation of ISI-free signal estimates is not part of the critical path in contrast to the conventional reduced-state Viterbi detection implementation shown in FIG. 5.
  • FIG. 10 is a schematic block diagram showing the selection of an ISI-free signal estimate 920 using survivor symbols, the branch metric computation 925, the ACS operation 930 and the survivor memory operation 940, as performed by the reduced-state Viterbi detector of FIG. 9. Only the selection of one ISI-free signal estimate, the computation of one branch metric, and the ACS operation and survivor memory operation for one state are shown. The detector of FIG. 9 would implement the circuits of FIG. 10 for all required ISI-free signal estimates, branch metrics and states. In FIG. 10, qn(0xxx) is the selected ISI-free signal estimate for a transition from state 0n that corresponds to the bit sequence bn−1=0, bn−2={circumflex over (b)}n−2(0n), bn−3={circumflex over (b)}n−3(0n) and bn−4={circumflex over (b)}n−4(0n). A 2L−K-to-1 multiplexer 1010 is required to select the correct ISI-free signal estimate among the precomputed ones. The critical path just comprises the multiplexer 1010 for the ISI-free signal estimate selection, the branch metric computation 1015 and an add-compare-select 1020. This is significantly shorter compared to a conventional RSSE implementation, as the computation of the ISI-free signal estimates is outside the critical path.
  • To reduce the hardware for the precomputation even further, ISI estimates instead of ISI-free signal estimates can be precomputed, and ISI-free signal estimates and branch metrics are then calculated using the correct ISI estimates that are selected based on past survivor symbols as shown in FIG. 1. The inverse of an ISI estimate that corresponds to the bit sequence bn−1, bn−2, . . . bn−L is given by q n ( b n - 1 b n - 2 b n - L ) = - i = 1 L f i · a n - i . ( 17 )
    In total, 2L ISI estimates have to be precomputed, but only 2K ISI-free signal estimates and 2K+1 branch metrics are calculated in this architecture. An ISI-free signal estimate is then computed according to:
    q n =r n +q′ n,   (18)
    and the corresponding branch metric is given by
    λn=(q n −f 0 ·a n)2.   (19)
  • FIG. 11 is a schematic block diagram of an architecture that is a derivation of the architecture shown in FIG. 10. In FIG. 11, ISI estimates are precomputed, whereas in FIG. 10 ISI-free signal estimates are precomputed. In FIG. 11, an ISI-free signal estimate and branch metric are computed based on a selected ISI estimate. Survivor symbols are used to select the correct ISI estimate. While the architecture of FIG. 11 is associated with less hardware complexity than the architecture of FIG. 10, the critical path in FIG. 11 not only includes the branch metric computation 1115, but also the computation of an ISI-free signal estimate 1112. However, the critical path of this architecture is still shorter than the critical path of a conventional reduced-state Viterbi implementation shown in FIG. 6.
  • It is noted that the improved data rate achieved by the present invention comes at the expense of increased hardware complexity, as shown, for example, in FIGS. 8, 10 and 11, as several branch metric, ISI-free signal estimate or ISI estimate candidates are precomputed per state transition in the trellis, while only one of these precomputed values is selected for the ACS operation. In contrast, the architecture of FIG. 6, that is associated with a significantly longer critical path, computes only one branch metric, ISI-free signal estimate and ISI estimate per state transition.
  • Pipelined Selection
  • In the precomputation architectures of FIGS. 8 (branch metrics), 10 (ISI-free signal estimates) and 11 (intersymbol interference estimates), a 2L−K-to-1 multiplexer 810, 1010, 1110 lies in the critical path. Although the computation of the branch metrics, ISI-free signal estimates or ISI estimates is not part of the critical path anymore, the delay due to the multiplexer 810, 1010, 1110 still depends on the channel memory. In a straightforward tree-wise implementation of the 2L−K-to-1 multiplexer 810, 1010, 1110 using 2L−K-1 2-to-1 multiplexers, the delay is equal to the delay of L−K 2-to-1 multiplexers, potentially mitigating the speed-up achieved by precomputing branch metrics, ISI-free signal estimates or ISI estimates.
  • The present invention recognizes that when branch metrics, ISI-free signal estimates or ISI estimates are precomputed L−K time steps in advance, they can be selected using L−K levels of 2-to-1 multiplexers that are driven by ACS decisions and where each level is associated with a pipeline stage. However, only a single 2-to-1 multiplexer is part of the critical path, and the delay associated with the selection of correct values becomes independent of the channel memory.
  • FIG. 12 is a schematic block diagram of a reduced-state Viterbi detector 1200 incorporating pipelining of the branch metric selection. As shown in FIG. 12, the branch metric computation is removed from the critical path by precomputing branch metrics at stage 1210. The correct branch metrics are selected at stage 1220, discussed below in conjunction with FIG. 13, based on ACS decisions. As shown in FIG. 12, a pipeline stage 1215 can be inserted between the branch metric precomputation 1210 and branch metric selection 1220.
  • FIG. 13 is a schematic block diagram showing the pipelined selection of a branch metric 1220 by the reduced-state Viterbi detector of FIG. 12 using ACS decisions. The exemplary embodiment shown in FIG. 13 shows the pipelined selection of branch metrics with three pipeline stages for L=4 and K=1. The critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1310, 1320 or 1330, and an add-compare 1340 in the ACSU. The critical path is significantly shorter compared to FIG. 8, where an 8-to-1 multiplexer 810 lies in the critical path. In fact, it has the same length as in a Viterbi detector that implements MLSE without any decision-feedback.
  • In FIG. 13, branch metrics are precomputed L−K=3 time units in advance and then selected over three clock periods based on corresponding ACS decisions. As the ACS decision sn+1n+1) determines the survivor symbol ân+Kn+1), the appropriate branch metric can be selected among candidates that correspond to the same symbol sequence an+L−K, an+L−K−1, . . . an−K+1, but a different past symbol an−K. In FIG. 13, sn+1(0n+1) determines the surviving branch metric λn+3(0000x) in the top multiplexer in stage 1310 among the candidates λn+3(00000) and λn+3(00001), where x is a dummy variable for the symbol an−1. Similarly, sn+1(0n+1) determines the surviving branch metric λn+2(000xx) in the top multiplexer in stage 1320 among the candidates λn+2(0000x) and λn+2(0001x), where xx is a placeholder for the symbols an−1, and an−2. Finally, after selection by the multiplexer in stage 1330, just one surviving branch metric per transition remains, which is used in the ACSU 1340. The branch metric selection resembles the selection of survivor symbols in a SMU that is implemented according to the register exchange architecture. The total number of 2-to-1 multiplexers is 2L−K−1 and thus equal to the number of 2-to-1 multiplexers required for a straightforward tree-wise implementation of the 8-to-1 multiplexer in FIG. 8. Therefore, except for pipeline registers, the branch metric selection in FIG. 13 is associated with about the same complexity as the branch metric selection in FIG. 8.
  • Generally, branch metrics are precomputed two or more time units in advance and then selected over two or more clock periods. At each stage 1310, 1320, 1330 shown in FIG. 13, one of C precomputed branch metric candidates is selected from a plurality of subgroups of B precomputed branch metrics, where each subgroup has an associated multiplexer and pipeline register and where B is less than C. It is noted that in the disclosed embodiments, C is a number of precomputed branch metric candidates associated with each trellis transition and B is equal to a number of transitions per state. As shown in FIG. 13, at each stage, such as stage 1310, the selected precomputed branch metrics from each subgroup are combined into one or more new subgroups for a following stage, such as stage 1320. In the exemplary embodiment shown in FIG. 13, the subgroups are combined based on the bit pattern of the selected precomputed branch metrics. For example, the selected precomputed branch metrics λn+2(0000x) and λn+2(0001x) have similar bit patterns, other than the second-to-least significant bit and are combined for selection in the second stage 1320. Both branch metrics λn+2(0000x) and λn+2(0001x) correspond to a bit pattern that agrees in the first three bit positions.
  • FIG. 14 is a schematic block diagram of a reduced-state Viterbi detector 1400 that incorporates pipelining of the ISI-free signal estimate selection. As shown in FIG. 14, the ISI-free signal estimate computation is removed from the critical path by precomputing ISI-free signal estimates at stage 1410. The correct ISI-free signal estimates are selected at stage 1420, discussed below in conjunction with FIG. 15, based on ACS decisions. As shown in FIG. 14, a pipeline stage 1415 can be inserted between the ISI-free signal estimate precomputation 1410 and ISI-free signal estimate selection 1420.
  • FIG. 15 is a schematic block diagram showing the pipelined selection of an ISI-free signal estimate 1420 by the reduced-state Viterbi detector of FIG. 14 using ACS decisions. The selection of ISI-free signal estimates resembles the selection of branch metrics, discussed above in conjunction with FIG. 13. The exemplary embodiment shown in FIG. 15 shows the pipelined selection of an ISI-free signal estimate with three pipeline stages for L=4 and K=1. The critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1510, 1520 or 1530, an add-compare 1540 in the ACSU and a branch metric computation 1535. The critical path is significantly shorter compared to FIG. 10, where an 8-to-1 multiplexer 1010 lies in the critical path.
  • In FIG. 15, ISI-free signal estimates are precomputed L−K=3 time units in advance and then selected over three clock periods based on corresponding ACS decisions. As the ACS decision sn+1n+1) determines the survivor symbol ân−Kn+1), the appropriate ISI-free signal estimate can be selected among candidates that correspond to the same symbol sequence an+L−K, an+L−K−1, . . . an−K+1, but a different past symbol an−K. In FIG. 15, sn+1(0n+1) determines the surviving intersymbol interference estimate qn+3(000x) in the top multiplexer in stage 1510 among the candidates qn+3(0000) and qn+3(0001), where x is a dummy variable for the symbol an−1. Similarly, sn+1(0n+1) determines the surviving branch metric qn+2(00xx) in the top multiplexer in stage 1520 among the candidates qn+2(000x) and qn+2(001x), where xx is a placeholder for the symbols an−1 and an−2. Finally, after selection by the multiplexer in stage 1530, just one surviving ISI-free signal estimate per transition remains, which is used for the branch metric computation 1535.
  • FIG. 16 is a schematic block diagram showing the pipelined selection of an intersymbol interference estimate using ACS decisions according to the invention. In FIG. 16, ISI estimates instead of ISI-free signal estimates are selected in a pipelined fashion. The ISI estimates are precomputed according to equation (17). The intersymbol interference estimate selection resembles the selection of the ISI-free signal estimate, discussed above in conjunction with FIG. 15. The exemplary embodiment shown in FIG. 16 shows the pipelined selection of intersymbol interference estimates with three pipeline stages for L=4 and K=1. The critical path in this architecture just includes a 2-to-1 multiplexer, such as a multiplexer in stage 1610, 1620 or 1630, an ISI-free signal estimate computation 1632, a branch metric computation 1635, and an add-compare 1640 in the ACSU. The critical path is significantly shorter compared to FIG. 11, where an 8-to-1 multiplexer 1110 lies in the critical path.
  • In FIG. 16, intersymbol interference estimates are precomputed L−K=3 time units in advance and then selected over three clock periods based on corresponding ACS decisions. As the ACS decision sn+1n+1) determines the survivor symbol ân−K(σn+1), the appropriate intersymbol interference estimate can be selected among candidates that correspond to the same symbol sequence an+L−K, an+L−K−1, . . . an−K+1, but a different past symbol an−K. In FIG. 16, sn+1(0n+1) determines the surviving intersymbol interference estimate q′n+3(000x) in the top multiplexer in stage 1610 among the candidates q′n+3(0000) and q′n+3(0001), where x is a dummy variable for the symbol an−1. Similarly, sn+1(0n+1) determines the surviving branch metric q′n+2(00xx) in the top multiplexer in stage 1620 among the candidates q′n+2(000x) and q′n+2(001X), where xx is a placeholder for the symbols an−1 and an−2. Finally, after selection by the multiplexer in stage 1630, just one surviving intersymbol interference estimate per transition remains, which is used for the ISI-free signal estimate computation 1632.
  • FIG. 17 is a functional block diagram 1700 of the ACS operation performed in FIGS. 8, 10, 11, 13, 15, and 16. As shown in FIG. 17, the ACS block 1700 includes an add function 1710, compare function 1720 and select function 1730. The exemplary add function 1710 includes two adders. The exemplary compare function 1720 could be implemented using a subtractor, where the sign bit of the subtractor output controls the selector 1730. The select function 1730 comprises a multiplexer, controlled by the output of the compare function 1720. FIG. 17 shows an exemplary two-way ACS implementation for a trellis with two transitions per state. A 4-way ACS structure for a trellis with four transitions per state is shown in United States patent application entitled “Method and Apparatus for Multiple Step Viterbi Detection with Local Feedback,” filed simultaneously herewith, assigned to the assignee of the present invention and incorporated by reference herein.
  • Among other benefits, the present invention allows for a VLSI implementation of reduced-state Viterbi detectors with local feedback for data rates that are significantly increased relative to conventional designs. Even larger data rate increases can be achieved when two or more trellis steps are processed within once clock period using a multi-step trellis. To achieve this additional speed advantage, the invention disclosed here can be combined with the multi-step detection method disclosed in United States patent application entitled “Method and Apparatus for Multiple Step Viterbi Detection with Local Feedback,” filed contemporaneously herewith and incorporated by reference herein. The invention uses an architecture that is very regular making it suitable for high-speed implementation. Viterbi detectors with local feedback can achieve better error rate performance than postprocessor-based structures in the magnetic recording application. Therefore, reduced-state Viterbi detection with local feedback is an attractive detector structure for future read channel chips. The use of reduced-state Viterbi detection with local feedback in the magnetic recording application is described in E. F. Haratsch, “Viterbi Detector Architectures for Magnetic Recording,” 2003 International Symposium on VLSI Technology, Systems, and Applications, 243-46, Oct. 6-8, 2003. Post-processor based detector structures are discussed in Z. A. Keirn et al., “On the Use of Redundant Bits for Magnetic Recording: Single Parity Codes and Reed-Solomon ECC,” IEEE Transactions on Magnetics, 225-30 (January 2004), and the references therein.
  • Trace-Back Survivor Memory
  • Another benefit of the invention is that ACS decisions can be used to select precomputed branch metrics, ISI-free signal estimates or ISI estimates as shown in FIGS. 12-16. When ACS decisions are used to select precomputed values, the SMU 1240 and 1440 can be implemented using a trace-back structure, as survivor symbols are not used for local feedback anymore. The details of a trace-back survivor memory architecture can be read, e.g. in R. Cypher and C. B. Shung, “Generalized Trace-Back Techniques for Survivor Memory Management in the Viterbi Algorithm,” Journal of VLSI Signal Processing, 85-94 (1993), or in H.-L. Lou, “Implementing the Viterbi algorithm”, IEEE Signal Processing Magazine, 42-52 (September 1995), or in O. J. Joeressen and H. Meyr, “Viterbi Decoding with Dual Timescale Traceback Processing,” IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, 213-217 (September 1995), each incorporated by reference herein.
  • In a register-exchange survivor memory implementation, survivor symbols for each state are stored and updated at each detection step. In a trace-back implementation, however, ACS decisions are stored as pointers in a memory, and the detected symbols are obtained by tracing back the pointers that correspond to a survivor path. As the trace-back architecture does not require the updating of all survivor symbols at each detection step, it is associated with less power consumption than the register-exchange architecture. However, the trace-back architecture is associated with larger detection latency and therefore not suitable for the reduced-state Viterbi detector shown in FIG. 6, where zero delay survivor symbols are required for the local feedback to compute ISI estimates and branch metrics. However, the disclosed architectures shown in FIGS. 12-16 use ACS decision to select precomputed branch metrics, ISI-free signal estimates or ISI estimates, therefore making it possible to implement the survivor memory SMU using a trace-back architecture. In this case, the trace-back SMU will be associated with significantly less power consumption than a corresponding register-exchange SMU implementation.
  • Magnetic Recording Read Channels
  • The techniques described herein can be employed, e.g., to detect data in the presence of intersymbol interference and noise in magnetic recording read channels. The disclosed reduced-state Viterbi detectors with local feedback improve the detection of read data bits compared to post-processor based structures. In particular, the invention can be used to implement a read channel that performs noise-predictive data detection and achieves the ever increasing high data rates that are required by evolving storage applications. For a discussion of noise-predictive detection in magnetic recording, see, e.g., R. D. Cideciyan et al., “Noise Predictive Maximum Likelihood Detection Combined With Parity-Based Post-Processing,” IEEE Trans. on Magnetics, 714-20 (March 2001), and E. F. Haratsch, “Viterbi Detector Architectures for Magnetic Recording,” International Symposium on VLSI Technology, Systems, and Applications, 243-46 (October 2003).
  • The simplified block diagram for a read channel incorporating noise-predictive reduced-state Viterbi detection is shown in FIG. 18, where signals received at the input of the finite response (FIR) equalizer are in fact signals that have been processed by the analog front-end, which typically includes a variable gain amplifier, continuous time filter and A/D converter. The FIR equalizer 1810 shapes the channel impulse response such that the signals at the output of the FIR equalizer yn can be described by the equation: y n = i = 0 M h i · a n - i + v n , ( 20 )
    where an are the data symbols defined as in equation (1), hi are the equalization target coefficients, M is the equalization target order, and vn is the noise at the output of the FIR equalizer. The equalization target is chosen such that its frequency spectrum matches the characteristics of the read channel well. The impulse response associated with the equalization target can be described by the equation:
    H(D)=h 0 +h 1 ·D+h 2 ·D 2 + . . . +h M ·D M.   (21)
  • The error rate performance of a read channel can be improved by employing a noise-predictive FIR (NP-FIR) filter 1820 after the FIR equalizer 1810 that whitens the noise. The impulse response associated with the NP-FIR can be characterized with the polynomial:
    P(D)=p 0 +p 1 ·D+p 2 ·D 2 + . . . +p N ·D N,   (22)
    where pi, 0≦i≦N are the coefficients and N is the order of the NP-FIR filter.
  • The subsequent reduced-state Viterbi detector considers a channel response with the polynomial:
    F(D)=f 0 +f 1 ·D+f 2 ·D 2 + . . . +f M+N ·D M+N =H(DP(D),   (23)
    and the signals at the input of the reduced-state Viterbi detector are given by: r n = i = 0 L f i · a n - i + w n , ( 24 )
    where fi, 0≦i≦L, are the channel coefficients of the channel seen by the reduced-state Viterbi detector, L is the channel memory, and wn is the remaining noise at the output of the NP-FIR filter 1820. The channel memory L would be typically equal to L=M+N, but the reduced-state detector could also consider a channel with shorter channel memory, i.e. L<M+N. The channel coefficients fi are given by the convolution of the equalization target and the impulse response of the NP-FIR filter 1820 (see equation (23)). Equation (24) is equivalent to equation (2). Therefore, the features of the invention can be applied to the read channel application, i.e., a reduced-state can be defined as in equation (8), branch metrics can be precomputed as in equation (14) using the channel coefficients defined by (23), and an ACS operation can be performed as in equation (12). A correct branch metric for a transition in the trellis can be selected using the architectures shown in FIG. 8 or FIG. 13. Instead of branch metrics, ISI-free signal estimates or ISI estimates can be precomputed according to equations (15) and (17) respectively using the channel coefficients defined by (23), and a correct ISI-free signal estimate or ISI estimate can be selected as shown in FIGS. 10, 11, 15 and 16 respectively. Therefore, the reduced-state Viterbi detector 1830 can be implemented using the architectures shown in FIGS. 7-16.
  • The invention can also be applied when a parity check code is used to achieve coding gain. For example, when a one-bit parity check code is used, a state σn in the full-state trellis is given by:
    σn=(s n−1 ; b n−1 , b n−2 , . . . , b n−L),   (25)
    where sn is the running parity syndrome given by the XOR-sum:
    s n =b n ⊕s n−1.   (26)
    The total number of states in the reduced-state trellis that accounts for the parity check code is given by:
    2×2L.   (27)
  • Analogous to equation (8), a state σn in the reduced-state trellis can be defined by considering only the past K information bits or symbols:
    σn=(s n−1 ; b n−1 , b n−2 , . . . , b n−K),   (28)
    and the number of states in the reduced-state trellis is equal to:
    2×2K.   (29)
  • A conventional implementation of a reduced-state Viterbi detector that considers the reduced-state trellis defined according to equation (28) would use equations (10)-(12) to compute ISI estimates, branch and path metrics. However, due to the local feedback required for the computation of ISI estimates, it is challenging to achieve very high data rates. However, the maximum achievable data rate can again be increased significantly by precomputing branch metrics and selecting correct ones as described above. Alternatively, ISI-free signal estimates or ISI estimates can be precomputed and correct ones can be selected as described above.
  • Branch metrics can be precomputed for possible bit sequences according to equation (14). As described above for L=4 and K=1, the required branch metric λn(bnbn−1xxx) for a transition from state σn=(sn−1; bn−1) is selected among the precomputed branch metrics λn(bnbn−1000), λn(bnbn−1001), λn(bnbn−1010), λn(bnbn−1011), λn(bnbn−1100), λn(bnbn−1101), λn(bnbn−1110), and λn(bnbn−1111) based on survivor symbols or ACS decisions.
  • The invention can also be applied to signal-dependent detection, which is sometimes referred to as data-dependent detection and explained in detail in the co-pending United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” incorporated by reference herein. In signal-dependent detection, more than one signal-dependent (SD) NP-FIR filters operate in parallel to whiten the noise. FIG. 19 illustrates this for the case that two SD NP-FIR filters 1920-1 and 1920-2 are used. The invention can easily be used when there are more than two NP-FIR filters 1920. The reduced-state Viterbi detector 1930 can be implemented using the architectures shown in FIGS. 7-16.
  • In FIG. 19, the output of the FIR equalizer 1910 is supplied to two SD NP-FIR filters 1920-1 and 1920-2 to produced two signals rn(1) and rn(2). Each SD NP-FIR filter 1920 implements the impulse response defined by equation (22) with a different set of filter coefficients. For example, the first SD NP-FIR filter 1920-1 that produces rn(1) uses a first set of coefficients pi(1), 0≦i≦N, whereas the second SD NP-FIR filter 1920-2 that produces rn(2) uses a second set of coefficients pi(2), 0≦i≦N that can differ from the first set of NP-FIR filter coefficients. The corresponding polynomials that describe the SD-NP FIR filters 1920 are denoted P(D;1) and P(D;2), e.g.,
    P(D;1)=p 0(1)+p 1(1)·D+ . . . p N(1)·D N.   (30)
    The filter coefficients of the different SD NP-FIR filters 1920 can differ, as in a signal-dependent channel the noise statistics depend on the transmitted data or bit sequence. The generation of filter coefficients for the SD NP-FIR filters is described in co-pending United States patent application entitled “Method and Apparatus for Generating Filter Tap Weights and Biases for Signal Dependent Branch Metric Computation,” incorporated by reference herein.
  • For the considered channel with two SD NP-FIR filters 1920, the reduced-state Viterbi detector 1930 would compute branch metrics considering two different channel impulse responses with the polynomials F(D;1) and F(D;2) that are given by:
    F(D;1)=f 0(1)+f 1(1)·D+ . . . f M+N(1)·D M+N =H(DP(D;1), and   (31)
    F(D;2)=f 0(2)+f 1(2)·D+ . . . f M+N(2)·D M+N =H(DP(D;2).   (32)
  • In a signal-dependent channel, the filter coefficients fi that are used to compute a branch metric depend on the transmitted data or bit sequence. For two SD NP-FIR filters 1920, branch metrics are precomputed according to equation (14) for a first group of bit sequences (bn−1bn−2 . . . bn−L) using filter coefficients fi(1), and for a second group of bit sequences (bn−1bn−2 . . . bn−L) the filter coefficients fi(2) are used.
  • For example, signal-dependent branch metrics for transitions from states σn to σn+1 that correspond to all bit sequences starting with (bnbn−1)=(00) or (bnbn−1)=(11) are computed using channel coefficients fi(1) and the sample rn(1): λ n ( 00 b n - 2 b n - 3 b n - L ) = ( r n ( 1 ) - i = 0 L f i ( 1 ) · a n - i ) 2 , ( 33 ) λ n ( 11 b n - 2 b n - 3 b n - L ) = ( r n ( 1 ) - i = 0 L f i ( 1 ) · a n - i ) 2 . ( 34 )
  • Continuing this example, signal-dependent branch metrics for all bit sequences that start with (bnbn−1)=(01) or (bnbn−1)=(10) are computed using the second of channel coefficients fi(2) and the second sample rn(2): λ n ( 01 b n - 2 b n - 3 b n - L ) = ( r n ( 2 ) - i = 0 L f i ( 2 ) · a n - i ) 2 , ( 35 ) λ n ( 10 b n - 2 b n - 3 b n - L ) = ( r n ( 2 ) - i = 0 L f i ( 2 ) · a n - i ) 2 . ( 36 )
  • Comparing the signal-dependent branch metric equations (33)-(36) with the non signal-dependent branch metric equation (14), signal-dependent branch metrics are computed using the same underlying function, but the choice of the sample rn and channel coefficients fi depends on the bit sequence for which the branch metric is computed. The precomputation of signal-dependent branch metrics was illustrated here using two signal-dependent NP-FIR filters and a particular grouping of bit sequences, but it is apparent how signal-dependent branch metrics are precomputed for more than two signal-dependent NP-FIR filters and other groupings. E.g., all possible bit sequences of length L can be divided into more than two groups, for which separate samples rn and separate sets of channel coefficients fi would be used to precompute branch metrics.
  • The selection of the correct branch metric, the ACS operation and the SMU are implemented as described above for the non-signal dependent detector. Therefore all the benefits of the invention apply to signal-dependent detection as well. In a further variation of the present invention, signal-dependent ISI-free signal estimates or intersymbol interference estimates can be precomputed, instead of branch metric, as would be apparent to a person of ordinary skill in the art based on the present disclosure. Then, signal-dependent branch metrics would be computed based on selected signal-dependent ISI-free signal estimates or ISI estimates as described above.
  • It is to be understood that the embodiments and variations shown and described herein are merely illustrative of the principles of this invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention.

Claims (30)

1. A method for processing a read channel signal in a magnetic recording device, said method comprising the steps of:
precomputing branch metrics for speculative sequences of one or more channel symbols;
selecting one of said precomputed branch metrics based on at least one decision from at least one corresponding state; and
selecting a path having a best path metric for a given state.
2. The method of claim 1, wherein said step of selecting one of said precomputed branch metrics uses at least one pipeline register.
3. The method of claim 1, further comprising the steps of:
processing a received signal using an FIR equalizer to generate an equalized received signal; and
processing said equalized received signal using a noise-predictive FIR filter to generate said signal.
4. The method of claim 3, wherein said signal is a noise whitened signal.
5. The method of claim 3, wherein channel coefficients used to precompute said branch metrics are a convolution of impulse responses of said FIR equalizer and said noise-predictive FIR filter.
6. The method of claim 1, further comprising the steps of:
processing a received signal using an FIR equalizer to generate an equalized received signal; and
processing said equalized received signal using a plurality of noise-predictive FIR filters to generate a plurality of signals.
7. The method of claim 6, wherein said plurality of noise-predictive FIR filters each use a corresponding set of filter coefficients.
8. The method of claim 6, wherein said step of precomputing branch metrics uses an output of one of said plurality of noise-predictive FIR filters based on characteristics of the data.
9. The method of claim 6, wherein a set of channel coefficients used to precompute said branch metrics is dependent on a bit pattern, and wherein said set of channel coefficients is given by a convolution of impulse responses of said FIR equalizer and one of said plurality of noise-predictive FIR filters.
10. The method of claim 1, where said decision is an ACS decision
11. The method of claim 1, where said decision is a survivor symbol.
12. The method of claim 1, wherein said processing of said signal employs a trellis that includes syndrome information for a parity check code.
13. A signal processor for processing a read channel signal in a magnetic recording device, comprising:
a branch metric unit for precomputing branch metrics for speculative sequences of one or more channel symbols;
at least one multiplexer for selecting one of said precomputed branch metrics based on at least one decision from at least one corresponding state; and
an add-compare-select unit for selecting a path having a best path metric for a given state.
14. A method for processing a read channel signal in a magnetic recording device, said method comprising the steps of:
precomputing intersymbol interference-free signal estimates for speculative sequences of one or more channel symbols;
selecting one of said precomputed intersymbol interference-free signal estimates based on at least one decision from at least one corresponding state; and
selecting a path having a best path metric for a given state.
15. The method of claim 14, wherein said step of selecting one of said precomputed intersymbol interference-free signal estimates uses at least one pipeline register.
16. The method of claim 14, further comprising the steps of:
processing a received signal using an FIR equalizer to generate an equalized received signal; and
processing said equalized received signal using a noise-predictive FIR filter to generate said signal.
17. The method of claim 16, wherein said signal is a noise whitened signal.
18. The method of claim 16, wherein channel coefficients used to precompute said intersymbol interference-free signal estimates are a convolution of impulse responses of said FIR equalizer and said noise-predictive FIR filter.
19. The method of claim 14, further comprising the steps of:
processing a received signal using an FIR equalizer to generate an equalized received signal; and
processing said equalized received signal using a plurality of noise-predictive FIR filters to generate a plurality of signals.
20. The method of claim 19, wherein said plurality of noise-predictive FIR filters each use a corresponding set of filter coefficients.
21. The method of claim 19, wherein said step of precomputing intersymbol interference-free signal estimates uses an output of one of said plurality of noise-predictive FIR filters based on characteristics of the data.
22. The method of claim 19, wherein a set of channel coefficients used to precompute said intersymbol interference-free signal estimates is dependent on a bit pattern, and wherein said set of channel coefficients is given by a convolution of impulse responses of said FIR equalizer and one of said plurality of noise-predictive FIR filters.
23. The method of claim 14, where said decision is an ACS decision
24. The method of claim 14, where said decision is a survivor symbol.
25. The method of claim 14, wherein said processing of said signal employs a trellis that includes syndrome information for a parity check code.
26. A signal processor for processing a read channel signal in a magnetic recording device, comprising:
an intersymbol interference unit for precomputing intersymbol interference-free signal estimates for speculative sequences of one or more channel symbols;
at least one multiplexer for selecting one of said precomputed intersymbol interference-free signal estimates based on at least one decision from at least one corresponding state; and
an add-compare-select unit for selecting a path having a best path metric for a given state.
27. (canceled)
28. (canceled)
29. (canceled)
30. (canceled)
US10/853,090 2001-04-13 2004-05-25 Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system Abandoned US20050264906A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/853,090 US20050264906A1 (en) 2004-05-25 2004-05-25 Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system
US11/691,847 US7702991B2 (en) 2001-04-13 2007-03-27 Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/853,090 US20050264906A1 (en) 2004-05-25 2004-05-25 Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/234,446 Continuation-In-Part US7363576B2 (en) 2000-11-03 2005-09-26 Method and apparatus for pipelined joint equalization and decoding for gigabit communications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/691,847 Continuation US7702991B2 (en) 2001-04-13 2007-03-27 Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system

Publications (1)

Publication Number Publication Date
US20050264906A1 true US20050264906A1 (en) 2005-12-01

Family

ID=35424882

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/853,090 Abandoned US20050264906A1 (en) 2001-04-13 2004-05-25 Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system
US11/691,847 Expired - Fee Related US7702991B2 (en) 2001-04-13 2007-03-27 Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system

Family Applications After (1)

Application Number Title Priority Date Filing Date
US11/691,847 Expired - Fee Related US7702991B2 (en) 2001-04-13 2007-03-27 Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system

Country Status (1)

Country Link
US (2) US20050264906A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070189424A1 (en) * 2001-04-13 2007-08-16 Agere Systems Inc Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system
US20080072127A1 (en) * 2006-09-12 2008-03-20 Tuhin Subhra Chakraborty Low power viterbi decoder using a novel register-exchange architecture
US8149529B2 (en) * 2010-07-28 2012-04-03 Lsi Corporation Dibit extraction for estimation of channel parameters
EP2590169A1 (en) * 2011-09-30 2013-05-08 LSI Corporation Hardware-based methods and apparatus for inter-track interference mitigation in magnetic recording systems
US8867154B1 (en) * 2013-05-09 2014-10-21 Lsi Corporation Systems and methods for processing data with linear phase noise predictive filter
US8902524B2 (en) 2011-09-30 2014-12-02 Lsi Corporation Inter-track interference mitigation in magnetic recording systems using averaged values
US10425257B1 (en) 2018-04-16 2019-09-24 Huawei Technologies Co., Ltd. Decision feed-forward reduced-state sequence detection
US10727873B1 (en) * 2019-04-02 2020-07-28 Xilinx, Inc. System and method for successive cancellation list decoding of polar codes

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8140947B2 (en) 2005-09-30 2012-03-20 Agere Systems Inc. Method and apparatus for storing survivor paths in a Viterbi detector using systematic pointer exchange
US7953187B2 (en) * 2006-06-21 2011-05-31 Forte Design Systems Limited Likelihood detector apparatus and method
US7844008B2 (en) * 2006-12-28 2010-11-30 Nokia Corporation Delayed branch decision in quadrature decomposition with M-searching
US8831063B2 (en) * 2008-03-18 2014-09-09 Qualcomm Incorporated Single carrier burst structure for decision feedback equalization and tracking
US8614858B2 (en) * 2010-11-15 2013-12-24 Lsi Corporation Systems and methods for sync mark detection metric computation
US8719682B2 (en) * 2012-06-15 2014-05-06 Lsi Corporation Adaptive calibration of noise predictive finite impulse response filter
US8811548B2 (en) * 2012-11-14 2014-08-19 MagnaCom, Ltd. Hypotheses generation based on multidimensional slicing
US9088400B2 (en) * 2012-11-14 2015-07-21 MagnaCom Ltd. Hypotheses generation based on multidimensional slicing
KR102012686B1 (en) * 2012-12-13 2019-08-21 삼성전자주식회사 Apparatus and method for detecting bit sequence robustly of a change of dc offset in a ook receiver
US8917470B2 (en) * 2013-03-13 2014-12-23 Lsi Corporation Data sequence detection in band-limited channels using cooperative sequence equalization
US9318147B1 (en) * 2013-10-10 2016-04-19 Seagate Technology Llc Read read-only fields while writing
US20180102792A1 (en) * 2015-05-05 2018-04-12 Agency For Science, Technology And Research Joint detector/ decoder devices and joint detection/ decoding methods

Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136593A (en) * 1989-10-30 1992-08-04 Carnegie-Mellon University Apparatus and method for fixed delay tree search
US5220570A (en) * 1990-11-30 1993-06-15 The Board Of Trustees Of The Leland Stanford Junior University Programmable viterbi signal processor
US5291499A (en) * 1992-03-16 1994-03-01 Cirrus Logic, Inc. Method and apparatus for reduced-complexity viterbi-type sequence detectors
US5844946A (en) * 1995-10-25 1998-12-01 Mitsubishi Denki Kabushiki Kaisha Soft-decision receiver and decoder for digital communication
US5870433A (en) * 1995-12-06 1999-02-09 Ke Kommunikations-Eletronik Gmbh & Co. Method of processing signals in a viterbi decoder according to delayed decision feedback sequence estimation (DDFSE) algorithm
US5881106A (en) * 1994-09-05 1999-03-09 Sgs-Thomson Microelectronics S.A. Signal processing circuit to implement a Viterbi algorithm
US5910968A (en) * 1996-02-21 1999-06-08 U.S. Philips Corporation Continuous phase modulation digital communication system
US5970104A (en) * 1997-03-19 1999-10-19 Cadence Design Systems, Inc. Method and apparatus for generating branch metrics and branch indices for convolutional code Viterbi decoders
US6035006A (en) * 1996-06-28 2000-03-07 Nec Corporation Estimator having a feedback loop
US6088404A (en) * 1997-04-30 2000-07-11 Daewoo Electronics Co., Ltd. Method and apparatus for decoding trellis code data
US6201831B1 (en) * 1998-11-13 2001-03-13 Broadcom Corporation Demodulator for a multi-pair gigabit transceiver
US6291523B1 (en) * 1997-08-28 2001-09-18 Novartis Ag Certain 5-alkyl-2-arylaminophenylacetic acids and derivatives
US6374387B1 (en) * 1999-05-27 2002-04-16 Institute Of Microelectronics Viterbi decoding of punctured convolutional codes without real-time branch metric computation
US6396254B1 (en) * 1999-12-06 2002-05-28 Cirrus Logic, Inc. Read channel
US20020073377A1 (en) * 2000-12-07 2002-06-13 Ara Patapoutian Ameliorating the adverse impact of burst errors on the operation of ISI detectors
US20020083396A1 (en) * 2000-11-03 2002-06-27 Kameran Azadet Method and apparatus for pipelined joint equalization and decoding for gigabit communications
US6467064B1 (en) * 1999-03-19 2002-10-15 Fujitsu Limited Viterbi decoder
US20030120993A1 (en) * 2001-12-21 2003-06-26 Texas Instruments Incorporated Viterbi decoder using restructured trellis
US20030123585A1 (en) * 2001-12-28 2003-07-03 Kuang-Yu Yen Receiver with DFE and viterbi algorithm for block code transmission
US6690739B1 (en) * 2000-01-14 2004-02-10 Shou Yee Mui Method for intersymbol interference compensation
US20040032683A1 (en) * 2002-04-18 2004-02-19 Ashley Jonathan J. Method and apparatus for calibrating data-dependent noise prediction
US6701483B1 (en) * 2000-08-18 2004-03-02 Alantro Communications, Inc. Fast search-based decoding scheme
US20040133843A1 (en) * 2002-12-27 2004-07-08 Kabushiki Kaisha Toshiba Digital signal decoding device and digital signal decoding method
US20050105658A1 (en) * 2001-04-13 2005-05-19 Haratsch Erich F. Pipelined decision-feedback unit in a reduced-state viterbi detector with local feedback
US6954841B2 (en) * 2002-06-26 2005-10-11 International Business Machines Corporation Viterbi decoding for SIMD vector processors with indirect vector element access
US20050268211A1 (en) * 2004-05-25 2005-12-01 Haratsch Erich F Method and apparatus for precomputation and pipelined selection of branch metrics in a reduced-state Viterbi detector
US6999521B1 (en) * 1999-12-23 2006-02-14 Lucent Technologies Inc. Method and apparatus for shortening the critical path of reduced complexity sequence estimation techniques

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60173930A (en) * 1984-02-20 1985-09-07 Fujitsu Ltd Pipeline processing viterbi decoder
US4669084A (en) * 1985-05-23 1987-05-26 Harris Corporation Error correction processing scheme for sequential codec
DE69223438T2 (en) * 1991-04-24 1998-06-04 Koninkl Philips Electronics Nv Scan clock recovery for receivers using Viterbi processing
US5341249A (en) * 1992-08-27 1994-08-23 Quantum Corporation Disk drive using PRML class IV sampling data detection with digital adaptive equalization
EP0852089B1 (en) * 1995-09-18 2006-08-09 Hitachi Global Storage Technologies Netherlands B.V. Apparatus and method for noise-predictive maximum-likelihood (npml) detection
US5889823A (en) * 1995-12-13 1999-03-30 Lucent Technologies Inc. Method and apparatus for compensation of linear or nonlinear intersymbol interference and noise correlation in magnetic recording channels
US6070263A (en) * 1998-04-20 2000-05-30 Motorola, Inc. Circuit for use in a Viterbi decoder
US7277506B1 (en) * 1999-08-09 2007-10-02 Broadcom Corporation Maximum likelihood sequence estimator which computes branch metrics in real time
US6356586B1 (en) * 1999-09-03 2002-03-12 Lucent Technologies, Inc. Methods and apparatus for parallel decision-feedback decoding in a communication system
US6415415B1 (en) * 1999-09-03 2002-07-02 Infineon Technologies North America Corp. Survival selection rule
US6654929B1 (en) * 1999-10-01 2003-11-25 Matsushita Electric Industrial Co., Ltd. Viterbi decoder and Viterbi decoding method
US6757864B1 (en) * 2000-04-06 2004-06-29 Qualcomm, Incorporated Method and apparatus for efficiently reading and storing state metrics in memory for high-speed ACS viterbi decoder implementations
TW576900B (en) * 2000-05-22 2004-02-21 Kayaba Industry Co Ltd Air spring
US20050264906A1 (en) * 2004-05-25 2005-12-01 Haratsch Erich F Method and apparatus for reduced-state Viterbi detection in a read channel of a magnetic recording system
US6788482B2 (en) * 2001-06-29 2004-09-07 Infineon Technologies Ag Method and apparatus for Viterbi detector state metric re-normalization
US7522678B2 (en) * 2002-04-18 2009-04-21 Infineon Technologies Ag Method and apparatus for a data-dependent noise predictive viterbi
US7308640B2 (en) * 2003-08-19 2007-12-11 Leanics Corporation Low-latency architectures for high-throughput Viterbi decoders
US7487432B2 (en) * 2004-05-25 2009-02-03 Agere Systems Inc. Method and apparatus for multiple step Viterbi detection with local feedback

Patent Citations (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136593A (en) * 1989-10-30 1992-08-04 Carnegie-Mellon University Apparatus and method for fixed delay tree search
US5220570A (en) * 1990-11-30 1993-06-15 The Board Of Trustees Of The Leland Stanford Junior University Programmable viterbi signal processor
US5291499A (en) * 1992-03-16 1994-03-01 Cirrus Logic, Inc. Method and apparatus for reduced-complexity viterbi-type sequence detectors
US5881106A (en) * 1994-09-05 1999-03-09 Sgs-Thomson Microelectronics S.A. Signal processing circuit to implement a Viterbi algorithm
US5844946A (en) * 1995-10-25 1998-12-01 Mitsubishi Denki Kabushiki Kaisha Soft-decision receiver and decoder for digital communication
US5870433A (en) * 1995-12-06 1999-02-09 Ke Kommunikations-Eletronik Gmbh & Co. Method of processing signals in a viterbi decoder according to delayed decision feedback sequence estimation (DDFSE) algorithm
US5910968A (en) * 1996-02-21 1999-06-08 U.S. Philips Corporation Continuous phase modulation digital communication system
US6035006A (en) * 1996-06-28 2000-03-07 Nec Corporation Estimator having a feedback loop
US5970104A (en) * 1997-03-19 1999-10-19 Cadence Design Systems, Inc. Method and apparatus for generating branch metrics and branch indices for convolutional code Viterbi decoders
US6088404A (en) * 1997-04-30 2000-07-11 Daewoo Electronics Co., Ltd. Method and apparatus for decoding trellis code data
US6291523B1 (en) * 1997-08-28 2001-09-18 Novartis Ag Certain 5-alkyl-2-arylaminophenylacetic acids and derivatives
US6201831B1 (en) * 1998-11-13 2001-03-13 Broadcom Corporation Demodulator for a multi-pair gigabit transceiver
US6467064B1 (en) * 1999-03-19 2002-10-15 Fujitsu Limited Viterbi decoder
US6374387B1 (en) * 1999-05-27 2002-04-16 Institute Of Microelectronics Viterbi decoding of punctured convolutional codes without real-time branch metric computation
US6396254B1 (en) * 1999-12-06 2002-05-28 Cirrus Logic, Inc. Read channel
US6999521B1 (en) * 1999-12-23 2006-02-14 Lucent Technologies Inc. Method and apparatus for shortening the critical path of reduced complexity sequence estimation techniques
US6690739B1 (en) * 2000-01-14 2004-02-10 Shou Yee Mui Method for intersymbol interference compensation
US6701483B1 (en) * 2000-08-18 2004-03-02 Alantro Communications, Inc. Fast search-based decoding scheme
US20020083396A1 (en) * 2000-11-03 2002-06-27 Kameran Azadet Method and apparatus for pipelined joint equalization and decoding for gigabit communications
US7000175B2 (en) * 2000-11-03 2006-02-14 Agere Systems Inc. Method and apparatus for pipelined joint equalization and decoding for gigabit communications
US20020073377A1 (en) * 2000-12-07 2002-06-13 Ara Patapoutian Ameliorating the adverse impact of burst errors on the operation of ISI detectors
US20050105658A1 (en) * 2001-04-13 2005-05-19 Haratsch Erich F. Pipelined decision-feedback unit in a reduced-state viterbi detector with local feedback
US20030120993A1 (en) * 2001-12-21 2003-06-26 Texas Instruments Incorporated Viterbi decoder using restructured trellis
US20030123585A1 (en) * 2001-12-28 2003-07-03 Kuang-Yu Yen Receiver with DFE and viterbi algorithm for block code transmission
US20040032683A1 (en) * 2002-04-18 2004-02-19 Ashley Jonathan J. Method and apparatus for calibrating data-dependent noise prediction
US6954841B2 (en) * 2002-06-26 2005-10-11 International Business Machines Corporation Viterbi decoding for SIMD vector processors with indirect vector element access
US20040133843A1 (en) * 2002-12-27 2004-07-08 Kabushiki Kaisha Toshiba Digital signal decoding device and digital signal decoding method
US20050268211A1 (en) * 2004-05-25 2005-12-01 Haratsch Erich F Method and apparatus for precomputation and pipelined selection of branch metrics in a reduced-state Viterbi detector

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070189424A1 (en) * 2001-04-13 2007-08-16 Agere Systems Inc Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system
US7702991B2 (en) * 2001-04-13 2010-04-20 Agere Systems Inc. Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system
US20080072127A1 (en) * 2006-09-12 2008-03-20 Tuhin Subhra Chakraborty Low power viterbi decoder using a novel register-exchange architecture
US7673224B2 (en) 2006-09-12 2010-03-02 Agere Systems Inc. Low power viterbi decoder using a novel register-exchange architecture
US8149529B2 (en) * 2010-07-28 2012-04-03 Lsi Corporation Dibit extraction for estimation of channel parameters
EP2590169A1 (en) * 2011-09-30 2013-05-08 LSI Corporation Hardware-based methods and apparatus for inter-track interference mitigation in magnetic recording systems
US8873177B2 (en) 2011-09-30 2014-10-28 Lsi Corporation Hardware-based methods and apparatus for inter-track interference mitigation in magnetic recording systems
US8902524B2 (en) 2011-09-30 2014-12-02 Lsi Corporation Inter-track interference mitigation in magnetic recording systems using averaged values
US8867154B1 (en) * 2013-05-09 2014-10-21 Lsi Corporation Systems and methods for processing data with linear phase noise predictive filter
US10425257B1 (en) 2018-04-16 2019-09-24 Huawei Technologies Co., Ltd. Decision feed-forward reduced-state sequence detection
WO2019201227A1 (en) * 2018-04-16 2019-10-24 Huawei Technologies Co., Ltd. Decision feed-forward reduced-state sequence detection
US10727873B1 (en) * 2019-04-02 2020-07-28 Xilinx, Inc. System and method for successive cancellation list decoding of polar codes

Also Published As

Publication number Publication date
US7702991B2 (en) 2010-04-20
US20070189424A1 (en) 2007-08-16

Similar Documents

Publication Publication Date Title
US7653868B2 (en) Method and apparatus for precomputation and pipelined selection of branch metrics in a reduced state Viterbi detector
US7702991B2 (en) Method and apparatus for reduced-state viterbi detection in a read channel of a magnetic recording system
US8699557B2 (en) Pipelined decision-feedback unit in a reduced-state Viterbi detector with local feedback
US6711213B2 (en) Implementing reduced-state viterbi detectors
JP5747313B2 (en) MAP detection method and apparatus with reduced complexity
US6901119B2 (en) Method and apparatus for implementing soft-input/soft-output iterative detectors/decoders
US5844946A (en) Soft-decision receiver and decoder for digital communication
US8321771B1 (en) Modified trace-back using soft output viterbi algorithm (SOVA)
US7487432B2 (en) Method and apparatus for multiple step Viterbi detection with local feedback
US8074157B2 (en) Methods and apparatus for reduced complexity soft-output viterbi detection
US7953187B2 (en) Likelihood detector apparatus and method
US7653154B2 (en) Method and apparatus for precomputation and pipelined selection of intersymbol interference estimates in a reduced-state Viterbi detector
JP5352803B2 (en) Delay decision feedback sequence estimator and method
US5916315A (en) Viterbi detector for class II partial response equalized miller-squared signals
GB2407949A (en) Maximum likelihood detector which calculates path metric differences directly from data independent and path independent components
JP3653391B2 (en) Viterbi detector and digital magnetic recording / reproducing apparatus using the same
Gross et al. Difference metric soft-output detection: Architecture and implementation
AU733164B2 (en) A reception method and a receiver
Haratsch New architectures for reduced-state sequence detection with local feedback
Wang et al. A post-DFE path comparison detection algorithm

Legal Events

Date Code Title Description
AS Assignment

Owner name: AGERE SYSTEMS INC., PENNSYLVANIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HARATSCH, ERICH FRANZ;REEL/FRAME:015398/0296

Effective date: 20040525

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: AGERE SYSTEMS LLC, PENNSYLVANIA

Free format text: CERTIFICATE OF CONVERSION;ASSIGNOR:HARATSCH, ERICH FRANZ;REEL/FRAME:029310/0718

Effective date: 20040525