# Viterbi method improves with more samples per read

Improving the pulse discrimination of the maximum-likelihood or Viterbi detector involves increasing the number of samples used to determine each match with the desired partial-response target.

Basically, partial-response targets are characterized by the formula Pn(D) = (1-D) (1+D)n and the commonly used ones are detailed in the related table. In this relationship, the ideal delay operator is represented by the variable D, with the (1-D) factor representing the inherent differentiation process in magnetic recording. The (1+D)n factor represents the step response to the head, media and channel: that is, the isolated pulse response to a single flux transition. The value of n therefore controls the amount of channel intersymbol interference and represents the order of the partial-response target used to discriminate data.

For n=0, the PR2 step response contains a single nonzero sample and allows no ISI, in effect just what one would expect in a sampled data version of peak response. PR4 (n=1) is the lowest-order partial-response technique that allows ISI, and exhibits a step response of 0,1,1,0. The sum of two successive flux changes, called a di-pulse response, is the sum of a positive step response and a negative step response delayed by one time period, or 0,1,0,-1,0. For EPR4 detectors (n=2), the step response is 0,1,2,1,0; so an EPR4 di-pulse response would contain five ideal amplitudes from +2 to -2. The net effect of this is that higher-order partial-response techniques employ more samples to identify a particular pulse, and therefore tend to require less pulse-slimming equalization. In turn, those higher-order systems can achieve improved signal-to-noise ratio at higher channel user densities, in effect using an increased sample rate to permit higher ISI.

There are many ways to implement sequence detection on partial-response (PR) channels. Maximum-likelihood sequence detection, for example, takes an entire sample sequence and compares it with all possible binary combinations. This is an exhaustive search where the detector will choose the binary sequence with the minimum mean-square error, and is too complex for actual implementation. Rather, the Viterbi is used, based on the state machine of the desired PR target, with one add/compare/select unit for each state of the sequence detector. The number of possible detection states required for a particular state machine is 2m, where m is equal to the number of nonzero samples in an isolated pulse or step response. The state diagrams for PR4, EPR4 and E2PR4 show the increasing complexity.

Let's take a closer look at an EPR4 Viterbi detector with a di-bit response of P2(D) = (1-D)(1+D). The data signal can be equalized either directly to the EPR4 response, or first equalized by the finite impulse response to a PR4 waveform with three distinct levels (+1,0,-1), and then transformed using a (D+1) operator to an EPR4 waveform with five separate signal levels (+2,+1,0,-1,-2).

Examining the state diagram for the EPR4 channel, one can see that an EPR4 Viterbi detector has eight states from 000 to 111, with the states for the positive and negative phases symmetric with identical sample values of opposite polarity.