Abstract:
A method for improving gain performance of a Viterbi decoder wherein data relating to the best path and a secondary path are stored for the Viterbi decoder. Slicer errors are determined for the best path and the secondary path for current symbols using the stored data and errors for previous symbols are corrected responsive to the determined slicer errors.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Technical Field of the Invention  
           [0002]    The present invention relates to DFSE decoders, and more particularly, to the improvement of coding gain performance in Gigibit Phy Viterbi Decoders.  
           [0003]    2. Description of the Related Art  
           [0004]    Gibabit Ethernet over copper medium is a rapidly evolving technology enabling one gigabit per second full duplex communication over existing category 5 twisted pair cable plants. 1 Gb/s communication throughput is achieved with four pairs of twisted pair cables and eight transceivers  40  (four at each end) operating at 250 Mb/s as depicted in FIG. 1. Modulation between the transmitting and receiving ends use baseband 5-level pulse amplitude modulation (PAM5) combined with trellis coding and partial response shaping as the basis for the transmission scheme. Eight bits of data are encoded to nine bits and these nine bits are encoded to four PAM5 signals. The information for any particular bit becomes spread over all channels.  
           [0005]    [0005]FIG. 2 illustrates a block diagram of a 100 Base-T transceiver  45  used within the system in FIG. 1. The Gigabit Medium Independent Interface (GMII)  50  receives data in a byte-wide format at a rate of 125 MHz and passes the data on to a Physical Coding Sublayer (PCS)  55  which performs scrambling, coding and a variety of control functions. Except for the GMII  50  and PCS  55  blocks, FIG. 2 illustrates only one out of the four channels of the transceiver  45 . The other three channels of the transceiver  45  have a similar block diagram. Within the PCS  55 , eight bits of data are encoded to nine bits and these nine bits are encoded to four PAM5 signals. The corresponding symbol for each channel goes through a 0.75+0.25 z −1  shaping at pulse shaper  60  followed by conversion at a 125 MHz D/A converter  65 . Low-pass filtering and line driver/hybrid circuitry  70  further process the signal before transmission on the twisted pair wire.  
           [0006]    On the receiver path, a received analog signal is preconditioned by the hybrid circuitry  70 , and next goes through a 125 MHz A/D converter  75  sampled by a clock signal provided by the decision-directed timing recovery circuit  80 . The output of the A/D converter  75  is filtered by a Feed Forward Equalizer (FFE)  85  which is an LMS-type adaptive filter performing channel equalization and precursor Inter Symbol Interference (ISI) cancellation. The symbols sent by the other three local transmitters cause impairments in the received signal for each channel through a near end crosstalk mechanism between the pairs. Since each receiver has access to data from the other three transmitters that cause the interference, it is possible to nearly cancel the effects of the interference. Cancellation is accomplished with three adaptive NEXT canceling filters  90 . The output of the NEXT canceling filters  90  are added to the FFE  85  output to cancel the interference. Similarly, because of the bidirectional nature of the channel, an echo impairment is caused by each transmitter on its own receiver signal. This impairment is also nearly canceled using an echo canceled  95 , another adaptive filter, whose output is also directly added to the FFE  85  output.  
           [0007]    The outputs of the FFE  85 , echo canceled  95  and the three NEXT chancellors  90  are combined with the output of the adaptive feedback filter and input to the Decision Feedback Sequence Estimation (DFSE) Viterbi decoder  100  as partially equalized channel values to generate a soft decision. Inside the DFSE equalization is completed on each of four channels resulting in soft decisions which are further processed by the decoder to obtain the most likely eight bit value for the current sample. The operation of the DFSE Viterbi decoder  100  and the algorithm executed thereby more fully described in “ Design Considerations for Gigabit Ethernet  100  Base - T Twisted Pair Transceivers ”, Hatamian et al. IEEE 1998 Custom Integrated Circuits Conference, pp. 335-342 and “ A  1- Gb/s Joint Equalizer and Trellis Decoder for  100  Base - T Gigabit Ethernet ”, Haratsch and Azadet, IEEE Journal of Solid State Circuits, Vol. 36, No. 3, March 2001, pp. 374-384 which are incorporated herein by reference. The DFSE Viterbi decoder  100  is also referred to as a 8 state Decision Feedback Equalizer (DFE) Viterbi decoder.  
           [0008]    In practice, DFSE decoder  100  suffers from an error propagation effect. Error propagation describes the process of incorrect decisions within a Viterbi traceback memory being propagated through DFE filters and causing increased noise and errors at the input of the Viterbi decoder  100 . As a result, the coding gain of such a system is in practice less than five decibels for a particular 100 meter channel and degrades further as the channel lengthens and the magnitude of the DFE coefficient increases. Another challenge within 8-DFE Viterbi decoders is the critical path of the circuitry required for a hardware implementation limits the addition of new hardware to improve gain performance. Thus, there is a need to increase coding gain performance and provide performance and immunity against large coefficient values within DFE filters while not adding additional circuitry within the already tightly constrained critical path of a DFSE Decoder.  
         SUMMARY OF THE INVENTION  
         [0009]    The present invention overcomes the foregoing and other problems with a system and method for improving gain performance of a DFSE Viterbi decoder. A system and method improves gain performance of a Viterbi decoder wherein data relating to the best path and a secondary path are stored for the Viterbi decoder. Slicer errors are determined for the best path and the secondary path for current symbols using the stored data and errors for previous symbols are corrected responsive to the determined slicer errors. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]    A more complete understanding of the system and method of the present invention may be obtained by reference to the following Detailed Description when taken in conjunction with the accompanying Drawings wherein:  
         [0011]    [0011]FIG. 1 is an illustration of a Gigabit Ethernet;  
         [0012]    [0012]FIG. 2 is a block diagram of a 1000 Base-T transceiver;  
         [0013]    [0013]FIG. 3 is a block diagram of an 8 state decision feedback sequence estimation (DFSE) decoder within a 1000 Base-T transceiver;  
         [0014]    [0014]FIG. 4 is a flow diagram illustrating the technique for improving coding gain performance according to the present invention;  
         [0015]    [0015]FIG. 5 is a block diagram illustrating the decision enhancement process of the present invention; and  
         [0016]    [0016]FIG. 6 illustrates an 8 state decision feedback sequence estimation decoder including the decision enhancement process of the present invention. 
     
    
     DETAILED DESCRIPTION  
       [0017]    Referring now to the drawings, and more particular to FIG. 3, there is illustrated a functional block diagram of a Decision Feedback Equalizer Viterbi Decoder  100 . The Gigibit Phy Base 1000-T specification, “ Physical Layer Parameters and Specification for  1000  MB/s Operation over  4- pair of Category  5  Balanced Copper Cabling, Type  1000  Base - T ”, IEEE standard 802.3ab, 1999, which is incorporated herein by reference, requires the use of a sophisticated sequence estimation and equalization technique called decision feedback sequence estimation (DFSE) to obtain up to 6 dB of coding gain within uncoded PAM-5 signaling. DFSE combines Viterbi decoding (sequence estimation) with equalization using decision feedback equalizer (DFE) filters  105 . The Viterbi decoder  110  includes eight states and each of these states maintain a traceback memory  115  containing the optimal data values leading up to a particular state. The traceback memory values are used as data values for the DFE filters  105  that cancel the inter symbol interference (ISI) introduced by the Gigabit channel. During error free operation, one of the eight states represents the true state of the transmitter and contains correct data in its traceback memory  115  and by virtue of this has correct ISI cancellation on subsequently received symbols. The other seven states have one or more erroneous symbols in their traceback memories  115  and have incorrect ISI cancellation.  
         [0018]    In the most complete realization of the Gigabit Phy DFSE  100 , eight DFE filters  105  are required for each of four channels  120 . Each channel  120  receives input from a feed forward equalizer  125  for the channel, consisting of the sum outputs of the filter estimator  85 , echo canceled  95  and NEXT chancellors  90  described previously with respect to FIG. 2. For each channel  120 , the input from the equalizer  85  is summed with the outputs of each of decision feedback equalizer filters  105  to provide the eight soft decisions, one of which includes the true state of the transmitter as described above. The Viterbi decoder  110  receives the 32 soft decisions from each received symbol  120 . Each of the 8 states in the decoder leads to 4 possible transitions for a total of 32 different transitions. The Add/Compare/Select (ACS) operations select 8 “winners” from these 32 to be used in the next iteration of the decoder. The Viterbi Decoder  110  includes ACS operators  130  to select the most promising path for each of the 8 states in the decoder and a traceback memory  15  to store the survivor paths leading up to each of these 8 states. The Viterbi Decoder  110  also maintains a metric for each of the 8 states representing the quality of each of the 8 states.  
         [0019]    In order to improve the coding gain characteristics of the transceiver, a process of decision enhancement is implemented within the Viterbi decoder  110  using the slicer errors of current symbols to enhance the decisions made on previous symbols. The decision enhancement method of the present invention is more fully illustrated with respect to FIG. 4. The decision enhancement process maintains at step  140  two traceback memories for each of the eight Viterbi decoder states. The first traceback memory comprises the “best traceback memory” and stores the best survivor path through the decoder trellis leading up to this state. The “secondary traceback memory” stores the most promising alternate or secondary path through the decoder trellis leading up to this state. The best traceback memory element is full length (i.e., same as DFE filter length) while the secondary traceback memory element has a length of S elements, where S can be two symbols up to the full length of the best traceback memory.  
         [0020]    For each state in the Viterbi decoder  110  a differential metric representing the relative quality of the best path versus the secondary path is initialized at step  145 . The differential metric is computed by subtracting the “secondary metric” from the “best metric” with the metrics being taken directly from the computed state metrics within the Viterbi decoder  110 . For subsequent symbols, slicer errors for the best path and the secondary path are computed at step  148  by summing the slicer error from each of the four channels together for both of the paths. The best path slicer error is subtracted from the secondary path slicer error at step  149  (to improve performance the result may be scaled by a constant). The result is added to the existing differential metric at step  150  to create a new differential metric.  
         [0021]    Inquiry step  155  determines if the new differential metric is negative. If so, the secondary path is designated as the best path for the current state at step  160 , the best path is designated as the secondary path for the current state at step  165 , and the differential metric is multiplied by −1.0 at step  175 . This operation performs a correction on the traceback memory  115  of the Viterbi Decoder  110  based upon obtaining the lowest possible slicer error for subsequently received data symbols and minimizing overall errors.  
         [0022]    For each cycle of the decoder  110 , a new secondary path is available from the Viterbi Decoder. Inquiry step  180  determines if the new differential metric of the existing best path and the new secondary path is smaller or larger than the current differential metric for the existing best path and existing secondary path or if a counter measuring the depth of the secondary metric is less than a max value S. If smaller or the counter equals S, the new secondary path is selected from the Viterbi Decoder at step  185  the counter is reset to 0 at step  180  and further slicer error calculations are made based on the newly selected secondary path by returning to step  148 . If the new differential metric is larger than the current differential metric and the counter is less than S, the current secondary path is maintained at step  190 , the counter is incremented at step  187  and future slicer error information can be processed on this pair of paths by returning to step  148 .  
         [0023]    Once a secondary path is selected from the Viterbi Decoder logic a counter is initialized at step  186 . Each time the new paths from the decoder are rejected (step  180 ), the counter is incremented at step  187 . When this counter reaches the depth of the secondary memory at step  180 , the new secondary path from the decoder es selected at step  185  ( 180  is taken as always smaller). This secondary path is only valid to consider for S cycles of the algorithm, where S is the depth of the Secondary Traceback Memory. (Note after this time the data in the best and secondary paths for these S elements will be the same.)  
         [0024]    Referring now to FIG. 5, there is illustrated a functional block diagram of the decision enhancement process described with respect to FIG. 4. The best traceback memory  200  covers the full length of the DFE filter  105   a . The secondary traceback memory  205  covers a smaller portion of the length of the DFE filter  105   b . A DFE filter output is generated for the best path from a combination of the best traceback memory  200  contents and the DFE filter  105   a . A DFE filter output is also generated for a secondary path from a combination of the secondary traceback memory  205  contents and a portion  200   b  of the best traceback memory  200  contents and the DFE filter  105   b.    
         [0025]    The outputs from the DFE filter  105   a  on the primary path and the DFE filter  105   b  on the secondary path are added together at adder  210  with the FFE output signal to generate the soft decisions. The adder output for each path is fed to a data slicer  115 . The data slicer  115  computes the slicer error for the best path and the secondary path as described previously in step  148  of FIG. 4. The slicer error for each path in conjunction with the best metric and secondary metric information from the Viterbi Decoder logic is provided to a path manager module  220 . The path manager module  220  updates differential metric  225  and steers the traceback memories as described in steps  155 - 190  of FIG. 4.  
         [0026]    Referring now to FIG. 6, there is illustrated a block diagram of a decision feedback estimator  100  including the decision enhancement process of the present invention. As can be seen from the figure, the only difference between the decision sequence feedback estimator  100  of FIG. 6 and that of FIG. 3 are that the traceback memory  115  includes a best traceback memory  200  and a second traceback memory  205  and the metric calculation and add/compare/select computation logic further include the path manager module logic  220  described above.  
         [0027]    Decision enhancement provides a coding gain improvement of up to 0.5 dB over traditional DFSE techniques and provides more robust operation over the range of possible coefficients in a DFE filter. In particular, the coding gain improvement provided by decision enhancement increases relative to the 8-DFE Viterbi Decoder architecture as the channel lengthens and the ISI increases or if the DFE coefficients become larger for any reason.  
         [0028]    The previous description is of a preferred embodiment for implementing the invention, and the scope of the invention should not necessarily be limited by this description. The scope of the present invention is instead defined by the following claims.