SYNCHRONOUS READ CHANNEL

Abstract: A synchronous read channel having a single chip integrated circuit digital portion which provides digital gain control (32), timing recovery (34), sequence detection (40), RLL (1, 7) encoding (48) and RLL (1, 7) decoding (28), and channel quality measurement (46) is disclosed. The integrated circuit accommodates both center sampling and side sampling, and has a high degree of programmability of various pulse shaping and recovery parameters and the ability to provide decoded data using sequence detection (40). These characteristics, together with error-tolerant sync mark detection (26) and the ability to recover data when the sync mark is obliterated, allow a wide variety of retry and recovery strategies to maximize the possibility of data recovery.

Description: SYNCHRONOUS READ CHANNEL BACKGROUND OF THE INVENTION In the storage or transmission of digital information, the bits or symbols of the user data are actually transmitted or stored via a physical media or mechanism whose responses are essentially analog in nature. The analog write or transmit signal going into the storage/transmission media or channel is typically modulated by channel bits (typically run-length limited or RLL bits) that are an encoded version of the original user-data bits (non-return-to-zero or NRZ bits) . The analog read or receive signal coming from the media is demodulated to detect or extract estimated channel bits, which are then decoded into estimated user-data bits. Ideally, the estimated user-data bits would be an identical copy of the original user-data bits. In practice, they can be corrupted by distortion, timing variations, noise and flaws in the media and in the write/transmit and read/receive channels. The process of demodulating the analog read signal into a stream of estimated user-data bits can be implemented digitally. Digital demodulation in magnetic mass storage systems requires that the analog read signal be sampled at a rate that is on the order of the channel-bit rate. Maximum-likelihood (ML) demodulation is a process of constructing a best estimate of the channel bits that were written based on digitized samples captured from the analog read signal. FIGURE 1 shows an exemplary read signal 100, which is a positive-going pulse generated by an inductive read head, for example, from a single media transition such as transition 103 from North-South to South-North magnetization of track 104 on a rotating disk. Typically, the write signal modulates a transition in SUBSTITUTESHEET the state of the media to write a channel bit of 1 and modulates the absence of a media transition to write a 0 channel bit. Thus, transition 103 corresponds to a single channel bit of value 1 in a stream of 0's. It is common to use run-length-limited (RLL) encoding of the original user data bits, which are arbitrary or unconstrained, into an RLL-encoded stream of channel bits. It may be desirable that there be no less than d zeroes between ones; that is, that the media transitions be spaced by at least d+1 channel bit times. This constraint can help keep to a manageable level the interference effects among the pulses in the analog read signal. On the other hand, because media transitions provide timing information that must be extracted from the read signal to ensure synchronization of the demodulator with the pulses in the read signal, it may be desirable that there be no more than k zeroes between ones; that is, that there be a media transition at least every k'th channel bit time. An RLL(d,k) code is a code that can encode an arbitrary stream of original user- data bits into a stream of channel bits such that the encoded channel bit stream satisfies these two constraints. An RLL code has a theoretical capacity which limits the number of user bits which can be represented in a given number of RLL bits. The capacity is a function of the d and k constraints with d=0 and k=infinite being the limiting (unconstrained) case with a capacity of exactly one. The capacity of an RLL (1,7) code for example is just slightly greater than 2/3 and is exactly 2/3 for any practical implementation, meaning that every pair of user bits will map to exactly three RLL bits. FIGURE 1, sample set 101 shows the values of four samples in the case of side sampling of read signal 100; i.e. 0.333, 1.0, 1.0, and 0.333. Sample set 101 is equivalent to the set 1, 3, 3, 1; that is, only the SUBSTITUTESHEET ratios among samples are significant. A signal model gives rise to an expected sample sequence for a single or isolated transition in media state. Typically, only a few samples of an isolated media transition are non¬ zero; in this case, four are non-zero. In a side- sampled signal model such as 1, 3, 3, 1, timing circuitry in the demodulator attempts to maintain a lock on the incoming signal such that two adjacent samples on opposite sides of the peak of an isolated pulse have equal amplitudes and samples are taken at roughly equal time intervals, each a single channel bit time. Synchronization of the samples with the spacing of the bits written on the media is maintained by a timing recovery loop which is in essence a phase-locked loop. Other sample timing arrangements may be useful. In center sampling, the timing circuitry tries to lock the sample times to the read signal pulses such that one sample occurs at the peak of each pulse. Sample set 102 shows the values of four samples in the case of center sampling of a similar read signal 104; i.e., 0.5, 1.0, 0.5, and 0.0 (or 1.0, 2.0, 1.0 and 0.0 depending on the arbitrary normalization used) . An expected sample sequence of 1, 2, 1, 0 corresponds to the signal model known in the prior art as Extended Partial-Response Class IV (EPR4) . Such sample sequences are samples of a continuous-time analog read-signal waveform such as may be produced in the readback circuitry of a magnetic storage device. For a system that is bandwidth limited to 1/ (2T) , where T is the sample spacing in time, the sampling theorem declares that the continuous time waveform must be superposition of sine functions (sinc(x) is defined as sin(x)/x for xo0, and as 1 for x=0), with one sine function centered at each sample point and of amplitude equal to that sample value and with zero crossings at all other sample points. As an example, in saturation magnetic recording, the current SUBSTITUTESHEET in an inductive write head takes, on values of +1 and -1. The basic excitation applied to the recording channel is a step in current from +1 to -1, vice versa, in the analog write signal. This step in write current produces a transition in the magnetization state of the media as it moves past the head. When an inductive read head is passed over this magnetic media transition, a voltage pulse is induced by the bandwidth limited differentiating interaction of the head with the magnetization of the media. By suitable filtering or equalization, the sequence of samples on an isolated transition response pulse can be made to {..., 0, 0, 1, 2, 1, 0, 0, ...}, in which case the recording or transmission channel matches the EPR4 signal model. Another sam l-; sequence well known in the prior art is the Partial Response Class IV signal model (PR4), which corresponds to an expected sample sequence of 0, 1, 1, 0. Further, as one is designing or taking measurements on a write/media/read channel, it may be desirable to take into account the exact response, noise and distortion characteristics of the channel in selecting the signal model to be implemented in the demodulator. Thus, there is a need for a demodulator that is programmable as to the signal model, or expected sequence of sample values for an isolated media transition. In situations such as mass information storage in magnetic media, significant storage-system speed and capacity gains can be realized if the information bits can be closer together in position/time on the media. further, as media transitions are more closely positioned, the writing and reading processes become more sensitive to the distortion, timing variations and noise that are inevitably introduced in the processes of writing, storing, and reading. Also, as the transitions become closer, the ability of the media to fully transition from, say, North-South SUBSTITUTESHEET magnetization to South-North magnetization may be taxed. Also, as the media transitions become closer, interference effects increase among adjacent or nearby transitions. FIGURE 2 shows how positive-going pulse 200 from first media transition 201 combines with negative-going pulse 202 from second transition 203 to produce analog read signal 204, which can be viewed as the interference of the two pulses. Adjacent media transitions always give rise to read pulses of opposite polarities because they always are created by transitions of opposite types, for example North-South changes to South-North in transition 201, so adjacent transition 202 must be South-North changing back to North-South. Read signal 204 might give rise to a sequence of samples such as 0.333, 1.0, 0.667, -0.667, -1.0, 0.333. To the extent that the read process is linear (and it may not be entirely linear) , the voltage waveform induced in the read head will be the superposition of a sequence of pulses, where each pulse is the response to an isolated magnetic transition on the media. Clearly, engineering a high-performance read channel is a complex challenge given the combined effects of the limited sampling rate in a digital demodulator, possibly incomplete transitions in the media, interference among read-signal responses to media transitions, and distortion, timing variations, noise and flaws in the media and in the write and read channels. The prior art uses a method known as partial- response signaling to increase media transition rates. Partial-response signaling is described in the book "Digital Transmission of Information", by Richard E. Blahut, 1990, pp. 139-158 and 249-255. This method allows the analog response of the storage/transmission media and of the write/transmit and read/receive circuitry to a media transition to overlap with the response to adjacent transitions associated with SUBSTITUTE SHEET subsequent information bits. If properly implemented, this method can achieve higher information bit rates/densities than the alternative or requiring the media transitions to be spaced such that the read signal responses do not overlap. Such a method requires a sequence detector which can make its decisions not on a bit-by-bit basis but by examining the context of the surrounding read signal. In a magnetic disk drive, the surface of the magnetic media is logically divided into concentric rings called tracks. The distance around the track varies as a function of the radius at which the track lies. Since it is desirable to keep the rate of revolution of the disk constant to avoid mechanical delays in accelerating and decelerating the disk, it is necessary to either store an amount of data on each track which is proportional to the length of the track (this requires a different data transfer rate for each track) or to vary the physical transition spacing on the media so that pulses are widely separated at the outside diameter and crowded very close at the inner diameter of the recording surface (this is wasteful of the magnetic media which is only sparsely used at the outer diameter) . A practice known as zoned recording is a popular compromise between these two extremes. In zoned recording, a group of tracks (a zone) is established in which every track in the zone holds the same amount of data. Thus each zone requires a different data transfer rate, but the number of data transfer rates which need be supported is reduced (more coarsely quantized) . This still leaves a variation in the physical spacing of transitions between the inside and outside diameters of each zone resulting in a variation in pulse shape. Partial-response signaling has just recently been incorporated into mass storage devices and then in a limited form. One prior-art magnetic disk drive using SUBSTITUTESHEET partial-response signaling only supports PR4 (pulses with the samples of ..., 0, 1, 1, 0, ...). PR4 signaling has only very limited inter-symbol interference evidenced by only two non-zero samples in the pulse. To increase the capacity of the media, the user of a PR4 read channel must increase the equalization of the pulses (slim the pulses) in order to limit the inter-symbol interference of adjacent pulses so that any pulse only affects two read signal samples. The increased equalization also enhances the noise accompanying the signal, making the detection task more difficult and errors more likely. U.S. Patent 4,945,538 by Patel covers a similar situation but with EPR4 signaling and an RLL(1,7) code. This improves the allowed amount of inter-symbol interference, increasing it to three non-zero samples of (..., 0, 1/2, 1, 1/2, 0, ... ) . Both of these techniques will allow an increase in capacity but are limited in the variety of pulse shapes which can be detected and therefore limited by how much equalization (pulse slimming) may be performed before the effect of equalizing the noise (noise enhancement) becomes intolerable. Thus, there is a need for a flexible read channel which can accommodate a wide variety of pulse shapes as will be seen in each zone. There is also a need to allow larger amounts of controlled inter-symbol interference between pulses (pulses with more than two or three non-zero pulses) in order to continue increasing the capacity of the recording media. SUBSTITUTE SHEET SUMMARY OF THE INVENTION A synchronous read channel having a single chip integrated circuit digital portion which provides digital gain control, timing recovery, equalization, digital peak detection, sequence detection, RLL(1,7) encoding and decoding, error-tolerant synchronization and channel quality measurement is disclosed. The integrated circuit accommodates both center sampling and side sampling, and has a high degree of programmability of various pulse shaping and recovery parameters and the ability to provide decoded data using sequence detection or digital peak detection. These characteristics, together with the error-tolerant sync mark detection and the ability to recover data when the sync mark is obliterated, allow a wide variety of retry and recovery strategies to maximize the possibility of data recovery. Various embodiments, including an embodiment incorporating the analog functions as well as the primary digital functions of the read channel in a single integrated circuit, and preferred embodiments utilizing a reduced complexity, programmable modified Viterbi detector supporting a broad class of partial response channels are disclosed. SUBSTITUTESHEET BRIEF DESCRIPTION OF THE DRAWINGS FIGURE 1 shows a state transition on a medium such as a track of a disk drive and its associated pulse in an analog read signal. It also shows two digitized sample models of such read-signal pulses. FIGURE 2 shows two adjacent medium transitions and their individual and combined read-signal pulses. Figure 3 is an overall block diagram of the present invention. Figure 4 is a block diagram illustrating the details of the gain control circuit 32 of Figure 3. Figure 5 is a block diagram illustrating the details of the timing recovery circuit 34 of Figure 3. Figure 6 is a block diagram illustrating the details of the spectrum smoothing filter 42 of Figure 3. SUBSTITUTE SHEET DETAILED DESCRIPTION OF THE INVENTION The CL-SH4400 is a specific embodiment of the present invention designed to work with a companion analog integrated circuit and a disk controller to form a state of the art high density magnetic disk drive. In that regard, the uniqueness of the present invention, while used in a digital read-write channel, is primarily related to its read capability and versatility. The companion integrated circuit with which the CL- SH4400 is specifically intended to operate implements a VGA (Variable Gain Amplifier) , a tunable analog filter, an analog to digital converter, a timing VFO (Variable Frequency Oscillator) , write pre-compensation and servo demodulation functions. Accordingly, in a read operation, the CL-SH4400 does not receive an analog signal but instead receives already digitized read information in the form of digitized analog read channel samples. Further, while the timing Variable Frequency Oscillator and the Variable Gain Amplifier are on the companion integrated circuit and are not part of the present invention, the timing VFO and the Variable Gain Amplifier are each digitally controlled through digital control signals generated in the CL-SH4400. Accordingly, in the specific embodiment to be described, digital control feedback signals for both the VFO and the VGA are generated in the CL-SH4400 even though the control loops for the timing recovery and the automatic gain control functions are actually closed within the companion analog integrated circuit. In that regard, it should be particularly noted that the automatic gain control signal may alternatively be generated on the analog companion integrated circuit, as the same may be readily generated in the analog domain rather than in the digital domain. Accordingly, particularly the SUBSTITUTE SHEET generation of the digital gain control to be described as part of the CL-SH4400 is an optional design choice readily relegated to the companion integrated circuit if desired. Figure 3 provides a block diagram illustrating the general organization of the CL-SH4400. As may be seen in Figure 3, the digitized read data for the CL-SH4400 is provided in an N-bit parallel form as digitized read data DRDO and DRD1. Each of these two signals in the preferred embodiment disclosed is a 6-bit digitized read data signal. These two N-bit signals represent digitized samples of a read signal directly from a read head of the storage device after analog amplification and analog filtering. Those skilled in the art will recognize that the purpose of the analog amplifier and the analog filter is to scale the signals to the input range of the digital to analog converter and to attenuate frequencies above the Nyquist frequency (1/2 the sample frequency) to avoid signal distortion due to aliasing. In general, the analog filter will perform pulse shaping as well. The digitized read data signal DRDO is a digitized read signal sample effectively taken near the center of a channel bit time (defined by the VFO frequency) , subject however to a small amount of timing error or intentional timing set point offset in the VFO. The digitized read data signal DRD1 is the corresponding digitized read sample effectively taken near the center time of the previous logical channel bit, subject of course to similar timing errors and timing set point offsets. These two digitized read data signals are processed in the CL-SH4400 in a parallel or simultaneous manner so that ultimately in the CL-SH4400, two successive bits of digital read data will be derived from one set of DRDO and DRD1 signals which together with successive bit pairs are decoded by a run-length limited (RLL) decoder and derandomized if applicable SUBSTITUTESHEET (e.g. if initially randomized) to provide the NRZ data output stream of the device. The processing of two digitized read data samples simultaneously doubles the throughput of the CL-SH4400 for a given clock rate without doubling the circuitry required, particularly in the sequence detector, though the present invention is not specifically limited to processing of two digitized read data sample at a time. One could process one digitized read data sample at a time, or alternatively process more than two digitized read data samples at a 1 time, if desired. In that regard, the number of N-bit digitized read data sample connections to the chip normally will equal the number of samples processed at a time, though such signals could be multiplexed so that the number of N-bit digitized read data samples connections to the chip is less than the number of samples processed together. In one mode of operation, multiplexer 28 couples the DRDO and DRD1 signals directly to a transition detector 22 which processes the successive samples to detect the presence of transitions in each of the two digitized read data signals. The output of the transition detector is a low or high level during the respective bit times (delayed as described in the co¬ pending application) depending upon whether a transition (providing a high level output) or no transition (providing a low level output) was detected. The output of the transition detector 22, the peak detected signal PKDET, in this mode would be coupled to multiplexer 24 and through a sync mark detector 26 to provide a sync byte detected output SBD if a sync byte was in fact detected, and to couple the two bits to the RLL decoder 28 which decodes the bit stream to provide the NRZ data out digital data. In the preferred embodiment run length constraint violations are detected and optionally multiplexed onto the NRZ data out lines. These may be SUBSTITUTE SHEET used by an error correcting system within the disk controller. In the preferred embodiment, an error tolerant sync mark detector 26 is used. This detector is designed to achieve a level of error tolerance for the synchronization function equal to that achieved for the data field by the error-correction code implemented in the disk controller. This is achieved in part by employing an error-tolerant Synchronization Mark pattern for minimum cross-correlation with the preamble and for minimum auto-correlation, and by making the number of four-channel-bit groups which must be detected programmable. The synchronization mark recovery procedure may be used to recover data when a severe defect has destroyed the entire synchronization mark. When using this mode, the CL-SH4400 first goes through a normal timing and gain acquisition procedure while counting channel bits. The synchronization mark is assumed to have been detected when the count matches the synchronization mark recovery count. By varying the synchronization mark recount, the microcontroller can vary the assumed starting point of a header or data area until the correct starting point is tried, whereupon the sector will be recovered if there is no other error beyond the capability of the error correction code in the disk controller. In the CL-SH4400, the NRZ data output is user selectable as a serial bit stream, a 2-bit parallel stream or character wide (8-bit wide) digital data. If the data was randomized prior to storage, the data randomizer 30 may be enabled to de-randomize the data from the RLL decoder 28 before being provided as the NRZ data output. The output of the transition detector 22 in this mode is also provided to the gain control circuit 32 and the timing recovery circuit 34. Also the N-bit digitized samples DRDO and DRD1 are coupled through SUBSTITUTESHEET multiplexer 20 to the gain control circuit 22 and the timing recovery circuit 34. The gain control circuit 32 is shown in more detail in Figure 4. The gain errors (the difference between the programmable desired signal level referred to as the Gain Set point, and each digitized data signal) are determined for each digitized read data sample by the gain error circuit 33. The outputs PKDET of the transition detector 22 provide references to control the multiplexer 35 of the gain control circuit 32, as the gain adjustments are determined by the signal amplitudes of transitions and not the signal levels between transitions. The automatic gain control signal VGAC (5-bits in the preferred embodiment) for coupling back to the companion integrated circuit for analog amplifier gain control is provided by the digital gain loop filter 37. The gain loop filter includes a loop filter coefficient which is independently programmable for tracking and acquisition. The individual gain errors are also coupled to a channel quality circuit 46 as the signals GERR so that gain control performance can be measured to determine the best choice of loop filter coefficients and other parameters of the channel with respect to the performance of the automatic gain control loop. The timing recovery circuit 34 in the CL-SH4400 is shown in greater detail in Figure 5. Timing recovery and maintenance of synchronization, of course, can only be done upon the detection of a transition, as the absence of transitions contains no timing information. The timing recovery circuit controls the read clocks which are synchronized to the read wave form. In the timing recovery circuit, a phase detector 39 digitally computes the phase error in the sampling instants of the analog to digital converter on the companion chip from the digitized sample values during transitions, as indicated by the signals PKDET. Providing timing error SUBSTITUTESHEET corrections only at transition times reduces the noise (jitter) in the timing loop. The sequence of measured phase errors is digitally filtered by filter 41 to produce a frequency control signal which is fed back to the companion chip, in the preferred embodiment as the 5-bit frequency control signal FCTL. The timing recovery circuit has two modes of operation, acquisition and tracking. The appropriate range and resolution of the frequency control signal FCTL to the analog companion part is not the same for the two modes. In the acquisition mode, the necessary frequency control range is larger (wider range of possible frequency settings) than in tracking. Conversely, in tracking the required resolution (minimum step of frequency) is finer. To meet these conflicting requirements without unduly increasing the number of bits in the FCTL interface, the resolution and range are made to depend on the mode of operation, and a signal ACQ is used to communicate to the analog companion part which mode of operation is being used. When the operating mode is switched from acquisition to tracking, the last frequency setting during acquisition is stored in the companion analog part and the value on the FCTL bus during tracking is taken as an offset from the stored setting. In the preferred embodiment (CL-SH4400) the range and resolution are decreased by a factor of 8 between acquisition and tracking. The timing recovery circuit 34 also includes a programmable timing set point. The timing set point permits a wider range of sampling strategies which enables the support of a wider range of pulse shapes. The timing set point is useful on retry in the event of the detection of an uncorrectable error. Also the digital filter includes two coefficients which are independently programmable for acquisition and tracking. These are also usable in a retry strategy to change the SUBSTITUTE SHEET ... * - - 16 - - ■ bandwidth and hence the response time of the timing loop. Like the individual gain errors GERR, the individual timing errors TERR are also coupled to the channel quality circuit for contribution to the quantitative analysis of the channel quality with respect to timing recovery. One alternate embodiment of the timing recovery block includes a frequency error detector. The frequency error detector is used to decrease the time required for the timing loop to lock to the channel bit frequency and phase during the acquisition period before encountering data. As variations on the mode of operation just described, the two N-bit digitized read data signals DRDO and DRDl may be passed through a pulse shaping filter 38 prior to being coupled to multiplexing block 20. The pulse shaping filter provides digital filtering at the cost of a small amount of delay with two user selectable coefficients PCI and PC2, independently programmable in the filter structure. This pulse shaping filter, of course, is in addition to any filtering done in the analog domain, and is an example of the flexibility and adaptability of the present invention. In particular, the effect of the pulse shaping filter may be eliminated by multiplexing block 20, or alternatively, the pulse shaping filter may be used with coefficients user selected, and thus variable, to provide the best performance of the overall storage system read channel with the flexibility to accommodate changes in pulse shape when changing from one recording zone to another, and to allow coefficient variations as part of overall device parameter variations for systematic retries upon the detection of uncorrectable errors in the subsequent error detection and correction (EDAC) operations. The pulse shaping filter of the preferred embodiment is a finite impulse response digital filter which means that the output is a function SUBSTITUTE SHEET of the current and past inputs but not a function of its own past outputs. The delays necessary for the filter to remember the past inputs are shared by delay 36 to provide a separate delay path to multiplexing block 20. The delay path through delay 36 provides an amount of delay equivalent to the delay of pulse shaping filter 38. Multiplexing block 20 is provided to give a maximum of flexibility in modes of usage, by providing a separate source of input for the transition detector and the group of blocks comprising the sequence detector 40 (by way of spectrum smoothing filter 42), the gain control circuitry 32 and the timing recovery circuitry 34. The multiplexing block is designed so that all blocks may operate upon the raw input samples provided by DRDO and DRD1, or alternatively the pulse shaping filter may be placed in one of the multiplexing block's output paths with the delay placed in the other path. The delay is necessary in this case so that the transition detector's outputs are synchronized with the sample values reaching the gain control circuitry and timing recovery circuitry. Finally, the pulse shaping filter may feed both of the multiplexing block's output paths. In general the multiplexing block could be designed so that by programming the multiplexing block each block at the multiplexing block's outputs (transition detector 22, gain control 32, timing recovery 34, and sequence detector 40 by way of spectrum smoothing filter 42) could receive raw input samples, delayed raw input samples, or filtered input samples independent of the data received by the other blocks. In the preferred embodiment of the present invention however, the gain control circuitry and the timing recovery circuitry have the capability of compensating for the pulse shape in an effort to increase the accuracy of the gain and timing recovery loops, and to reduce the amount of circuitry, the gain control SUBSTITUTESHEET circuitry and timing recovery circuitry assume the same pulse shape for which sequence detector 40 is programmed. This basic pulse shape received by the sequence detector is only marginally affected by the addition of the spectrum smoothing filter, which is designed to reduce only the head bumps at the tails. of the pulse and does not seriously affect the center of the pulse except to correct for head bumps due to neighboring pulses. In that regard, the present invention includes a channel quality circuit 46 for measuring the quality of the read channel as earlier described. This provides not only quantitative channel evaluation, but in addition allows selection of read channel parameters such as, but not limited to, the coefficients PCI and PC2 in the pulse shaping filter to best adapt the read channel to the characteristics of the storage medium and the pulse form and characteristics being read therefrom. The present invention further includes a sequence detector 40 which receives as its input the two N-bit digital read data signals DRDO and DRD1 as may be modified by the pulse shaping filter 38 and as may be additionally modified by the spectrum smoothing filter 42. In that regard, the spectrum smoothing filter 42, as shown in Figure 6, contains two delays FDl and FD2 and four coefficients SCI, SC2, SC3 and SC4, all of which are independently programmable. The delays may be programmed from 0 to 23 channel bit intervals. The entire spectrum smoothing filter, or just its precursor correcting portion 43, can be disabled. The spectrum smoothing filter is designed to reduce the undershoots from the finite pole tips of a thin film head, or to reduce the bumps from the secondary gap of a single or double-sided MIG head. In the frequency domain, the filter acts to smooth out undulations caused by head bumps. If the precursor is disabled, the delay of the SUBSTITUTE SHEET filter is disabled, whereas if a head which is not subject to head bumps is used, the post-cursor may be disabled. The pulse shaping filter and the spectrum smoothing filter together form a digital equalizer which can modify the equalization done in the analog filter of the companion integrated circuit, and along with the companion integrated circuit provides support for changing equalization needs from head to head and zone to zone of the magnetic storage device. The parameters for the pulse shaping filter and the spectrum smoothing filter are loaded and/or varied by microcontroller 44 on initialization and during head seeks. The sequence detector 40 is a partial response sequence detector. This allows the analog response of the read channel to a storage medium transition to overlap with the response to adjacent transitions associated with subsequent information bits. In comparison to most prior art read channels for magnetic storage media, the use of a partial response detector allows higher information storage densities in comparison to the prior art alternative of requiring the medium transitions to be sufficiently spaced from each other so that the read signal responses do not overlap significantly, thereby allowing each transition to be individually detected irrespective of the nearest neighboring transitions. The particular sequence detector used in the present invention is a uniquely modified form of Viterbi detector which substantially preserves the full performance of the Viterbi algorithm in a substantially reduced complexity sequence detector. The basic Viterbi algorithm is described in the book "Fast Algorithms for Digital Signal Processing" by Richard E. Blahut, 1985, pages 387-399. In accordance with the Viterbi algorithm, a Viterbi detector does not attempt to decide SUBSTITUTE SHEET whether a medium transition has occurred immediately upon receipt of the read sample or samples that correspond to that transition. Rather, as samples are taken from the read signal, the Viterbi detector keeps a running tally of the error between the actual sample sequence and the sample sequence that would be expected if the medium had been written with a particular sequence of transitions. Such an error tally is simultaneously kept for several possible transition sequences. As more samples are taken, less likely choices for transition sequences are pruned from consideration. If a set of possible sequences of medium transitions is appropriately constrained, then the location of each medium transition becomes known with a high degree of likelihood within a reasonable time after taking the samples corresponding to that transition. Because of the time delay between a sample acquisition and the determination of whether that sample represented a transition or an absence of a transition, the gain control circuit 32 and the timing recovery circuit 34 are both still referenced to the output of the transition detector 22, which has a more immediate response to the occurrence of a transition. Also, while in general the output of the sequence detector, when used, should be more accurate in ultimately determining whether a transition occurred at a particular bit time, an error in the output of the peak detector will have little effect on gain and timing. Specifically, failure to detect a transition will only slightly delay gain control and timing error corrections, and an isolated false detection of a transition will only slightly perturb the gain control and timing accuracy. This should be more than made up by the increased accuracy of the bit stream detection by the sequence detector's consideration of what comes before and after a particular digitized read data sample. SUBSTITUTESHEET If the present invention is realized in an embodiment wherein digitized read data is processed a single bit time's worth at a time, a Viterbi detector of a conventional design may be used, or if two or more bit time's worth of samples are to be processed simultaneously, as in the preferred embodiment of the present invention, a conventional Viterbi detector could be modified for that purpose. In a typical Viterbi detector implemented using the ADD, COMPARE, SELECT (ACS) method, each state in the expected sample sequence model is associated with a hardware module to perform the functions of adding new branch error metrics to path error metrics, comparing path error metrics, and selecting the path having the lowest path metric. In the sequence detector used in the preferred embodiment, an ACS module may have two or more sequence model states dynamically associated with it such that at some times, one sequence model state is associated with it, and at other times, another sequence model is associated with it. This reduces the number of ACS modules required and also reduces the size and complexity of the detector path memories which must store one path for each ACS module. Groups of sequence model states may be chosen to share an ACS module without significant loss in performance as compared to the conventional Viterbi detector. These detectors support a wide range of sample models by making the expected sample sequence of an isolated medium transition programmable through control 44. By way of specific example, the sequence detector used in the CL- SH4400 disclosed herein will support the PR4, EPR4 and EEPR4 sample models, among others. In addition, the alternating polarity of pulses is enforced, as is a minimum run length constraint of d=l . The d=l constraint in the RLL(d,k) coding is an important constraint in the present invention, SUBSTITUTESHEET especially for applications where the storage system uses thin-film magnetic media. For thin-film magnetic media, there is an effect known as partial erasure which puts a practical limit on how close two magnetic transitions may be written. The effect is due to a ragged (or zig-zag) boundary between regions of opposite magnetization. As the transitions become too close, the zig-zags begin to overlap and the area of opposite magnetic polarity between two transitions starts to disappear. The result is that as the read head flies over the partially erased transitions, the amplitude of the corresponding read signal pulses is diminished. This is a non-linear, data pattern dependent effect which is difficult to compensate for. The d=l constraint remedies this situation by preventing magnetic transitions in two consecutive channel bit times. The drawback is that the d=0 constrained code may typically represent 8 NRZ bits with 9 RLL bits (rate 8/9) while the d=l constrained code can only represent 6 NRZ bits with 9 RLL bits (rate 2/3). For example, to store 8 NRZ bits, the d=0 constrained code will store 9 channel bits while the d=l constrained code will store 12 channel bits in the same amount of space, hence the d=l channel bit interval is 3/4 the size of the d=0 channel bit interval. Fortunately, the magnetic transitions have a minimum spacing of 2 channel bits and therefore the minimum distance between two transitions has increased by 3/2 with respect to the corresponding d=0 constrained code. This makes the d=l constrained read channel a good solution for increasing storage capacity in applications where the minimum transition spacing is close enough for partial erasure effects to be noticeable. The sequence detector utilized in the CL-SH4400 can be programmed to operate on any channel response which can be well represented by sequences in the form of a, SUBSTITUTE SHEET b, 1, c wherein the selection of a, b and c allow the ability to accommodate pulse asymmetry which might otherwise require that the read signal pass through an analog or digital phase equalizer prior to entering the sequence detector. The levels a, b and c also give the ability to select between center and side sampling. Center-sampled pulses are notably those for which the sample levels a, b, 1, and c are selected such that 1 is very near the peak of the pulse, b and c are roughly halfway down their respective sides of the pulse, and a is near zero, for example, the sample levels 0, 1/2, 1 and 1/2. Side-sampled pulses are notably those for which the sample levels are selected such that 1 and b (which is about 1) straddle the peak of the pulse, for example the sample levels 5/16, 1, 1 and 5/16. This choice of side versus center sampling also affects the manner in which gain error and phase error are calculated in the gain control loop and timing recovery loop. The option to choose between side and center sampling allows the user a wider range of possible trade-offs between the amount of equalization (filtering) used to shape the raw pulse shape into the target pulse shape of the sequence detector and the amount of noise enhancement which arises as a consequence of shaping the raw pulse. Hence the read channel can be more suitably matched to the storage medium to provide better performance. Referring again to Figure 3 , for writing information to the storage medium, the NRZ input data is provided to a run length limited encoder 48, in the CL- SH4400 through a user selectable serial line, a two bit parallel form or an eight bit byte parallel form. The run length limited encoder provides the desired run length limited coding, in the preferred embodiment an RLL (1,7) coding, randomized before encoding or not, depending upon the enabling of the data randomizer 30, SUBSTITUTESHEET with the encoded data being provided to multiplexer 52, in the preferred embodiment in a two-bit wide form. In the case of writing to the storage medium, the serial enable signal SER_ENA will be deasserted so that the multiplexer 50 and 52 will provide the encoded data bits 1- (the most significant of the two parallel data bits) and 0 (the least significant of the two parallel data bits) to the companion integrated circuit to write the same to the storage medium. When not writing, the serial enable signal SER_ENA may be asserted, at which time multiplexers 50 and 52 are switched so that serial control address and data may be transferred on the SER_DAT line to the companion integrated circuit synchronous with the associated serial clock signal SER_CLK as the output signals of the two multiplexers 50 and 52. Multiplexing of these two chip pins of the single chip CL-SH4400 integrated circuit helps reduce the pin count without loss of performance or flexibility. This serial interface is provided to eliminate the need for the companion integrated circuit to interface with the bus of the microprocessor and eliminates a potential coupling between the noisy microprocessor bus and in the sensitive analog circuitry of the read channel in the companion integrated circuit. This also provides a benefit in pin count since the microprocessor bus interface would require numerous additional pins on the companion integrated circuit. Each of the control registers of the companion integrated circuit are mapped to corresponding register addresses in the integrated circuit of the present invention, when one of these registers is written to, the serial interface initiates a serial transfer write operation, sending the data to the appropriate register in the companion integrated circuit. The preferred embodiment of the present invention includes two modes, one in which a status bit SUBSTITUTESHEET which can be read to determine whether or not the serial transfer write operation is complete and another in which the integrated circuit of the preferred embodiment forces the microprocessor to pause while the serial transfer write operation is in progress. Similarly, a read of a register in the companion integrated circuit is performed by reading the corresponding register in the integrated circuit of the present invention. This initiates a serial transfer read operation. In the first of two serial interface read modes, the integrated circuit of the preferred embodiment will signal the microprocessor to pause until the serial transfer read operation is complete at which time the serially transferred data will be accessible at the pins of the integrated circuit of the present invention. In a second mode, the integrated circuit of the preferred embodiment will return the data left over from the previous serial transfer read operation, and once the current read operation is completed, it will initiate a new serial interface read operation with the address just supplied. The preferred embodiment includes a status bit which can be read to determine whether or not the new serial transfer read operation is complete. Once complete, the microprocessor may initiate a second read operation to retrieve the data originally desired and to initiate another serial transfer read operation at a new address for future use if desired. Summarizing the two modes, in one mode the microprocessor is made to wait, in the second mode the microprocessor must read the register twice, once to supply the register address and second time to retrieve the data and possibly supply the next register address. Another embodiment of the present invention, namely part number CL-SH3300 integrated circuit, incorporates the essential functions of the CL-SH4400 and the SUBSTITUTE SHEET companion integrated circuit in a single integrated circuit. In the embodiments hereinbefore described, numerous parameters were described as being programmable, and as such, as being useful for varying on retries in the event of the detection or repeated detection of an uncorrectable error. Obviously additional programmable or fixed parameters may also be incorporated, such as by way of example, additional filter coefficients in the pulse shaping and other filters. It should be noted that particularly certain parameters, such as the parameters of the pulse shaping filter 38 and the spectrum smoothing filter 42, may be made adaptive, or a combination of adaptive and programmable. By way of example, coefficients may be made adaptive, while the time constants of the adaptive characteristics and perhaps offsets, wave shapes, asymmetries and compensation for nonlinearities are made programmable. In that regard, it should be noted that given an uncorrectable or repeated uncorrectable error, there is no harm in further attempts at a successful read with different parameters, side versus center sampling, filtering versus different, less or no filtering, etc. Further, normally one would use the sequence detector on read for its superior detection capabilities over a peak detector. However in the case of hard errors wherein the errors in the output of the sequence detector exceed the error correction capability of the EDAC code used, a further retry strategy may include switching to an output derived from the peak detector, as previously described, rather than the sequence detector. This will add noise errors characteristic of transition detection effectively within the single bit-time of the possible transition, but will eliminate whatever additional propagation of the hard errors (for example media defects) may be caused by the sequence detector. SUBSTITUTE SHEET The effect of the noise errors may be substantially eliminated by multiple reads, followed by a majority vote to cancel all or most of the effect of the noise errors, yielding an opportunity for a successful error correction when the same could not be achieved with the sequence detector in the path. Here again, pulse shaping filter characteristics may be varied and multiple retries of the peak detector multiple reads executed, as reasonable exhaustion of all opportunity for a successful read is better than a fatal error. There have been disclosed and described herein preferred and alternate embodiments of a new and unique synchronous read channel which include a sequence detector with a flexible architecture capable of implementing a broad range of partial response polynomials. While an embodiment of the present invention which supports only one or two partial response channels would be highly useful, the detector used in the preferred embodiment of the present invention supports a broad class of partial response channels, including but not limited to PR4 (1,7), EPR4 (1,7) and EEPR (1,7). While the sequence detector is normally operative upon a read, the output of a digital peak detector may be enabled as the output of the read channel if desired. These and other inventive features of the invention will be apparent from the preceding description. Thus while a preferred and alternate embodiments of the present invention has been disclosed and described in detail herein, it will be obvious to those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope thereof. SUBSTITUTESHEET CONTROLLED DOCU EK af- t π Sampled Amplitude Digital RJ\ ^^f R U l j "CIRRUS LOGIC FEATURES Channel Flexibility Sampled Amplitude • The CL-SH4400 * provides the digital core of a Digital R/W Channel highly flexible, high-performance sampled-am- plitude read/write channel at channel rates up to 96 MHz. OVERVIEW Complete RLL Detector The CL-SH 00 Sampled-Amplitude Digital Chan¬ Rate 2/3 RLL (1 ,7) recording code nel is a VLSI component designed to work with a Programmable digital equalization companion analog part and a Disk Controller to Programmable SofTarget™ sequence detec¬ provide the majority of drive and controller hard¬ tion ware necessary to build a state-of-the-art, high- Digital gain control density, magnetic disk drive. The CL-SH4400 im¬ plements the digital portion of a sampled-a pli- Digital timing recovery tude read/write channel employing advanced par¬ Error Tolerance tial response polynomials and SofTarget™ sequence detection technology. It supports data Error-tolerant synchronization rates up to 64 Mb/s. Channel quality circuitry for error rate testing and filter/detector calibration Erasure pointer generation Head Support Monolithic, composite, thin-film, MIG and MR The CL-SH4400 Sampled-Amplitude Digital Channel provides the digital core of a highly flexible, high- performance sampled-ampntude read/write channel which provides data rates up to 64 Mb s. A compan¬ ion analog part, the VM6400, implements the frequency synthesizer, variable gain amplifier, timing VFO, tunable analog filter, analog-to-digital converter, write precompensation, and setvp demodulation func¬ tions. The CL-SH4400/VM6400 chip set supports hard-sectored magnetic disk drive applications employ¬ ing embedded servo techniques and zone bit recording. The functional partition of the CL-SH4400 VM6400 chip set is shown in Figure 1. Figure 1 CL-SH4400/VM6400Functlonal Partition The CL-SH4400 provides digital gain control, timing recovery, equalization, sequence detection, RLL (1 ,7) encoding and decoding, error-tolerant synchronization, and channel quality measurement The high degree of programmability of each of these functions allows the CL-SH4400 to support highly adaptive channels tailored for each drive, head, and zone. The format of a typical sector containing one embedded servo area is shown in Figure 2. During a read(write) operation, the Disk Controller reads the offset of the servo area from the ID. It deasserts Read(Write) Gate after the specified number of bytes have been processed and reasserts it after a pro¬ grammed number of bytes equal to the length of the servo area. The V 6400 and external circuitry read and decode the servo bursts and servo data. During a read operation, the CL-SH4400 freezes its gain control and timing recovery states while Read Gate is deasserted. PREAMBLE SYNC I C I CRC I SPUCE PREAMBLE SYNC DATA SERVO SPLICE PREAMBLE SYNC DATA Figure 2 Typical Sector Format CL-SH4400 Sampled Amplitude Digital R/W Channel 'CIRRUS lOQC ADVANTAGES Benefits • Flexible architecture implements broad range of partial response polynomials. • Provides significant implementation and performance benefits over conventional peak detection. • RLL (1 ,7) code reduces nonlinear effects associated with closely-spaced transitions. • Programmable equalization, sampling, and detection alternatives provide optimum match to channel characteristics and permit implementation of adaptive channels. • SofTarget™ sequence detection accommodates a lower signal-to-noise ratio than hard thresholding of individual samples and allows significant intersymbol interference without negative consequences. • Detector supports a broad class of partial response channels Including PR4 (1,7), EPR4 (1,7) and EEPR4 (1,7). • Error tolerance features support the higher soft error rates and higher defect densities encountered at higher recording densities. • One/Two Eight-bit NRZ Data interface connects to a broad range of Disk Controllers. • Intelligent power management minimizes operational and idle power consumption. Key Features One-bit, two-bit or eight-bit NRZ Data interface Rate 2/3 RLL (1,7) recording code Digital Gain Control Digital Timing Recovery Digital Equalizer SofTarget™ Sequence Detector Error-tolerant synchronization Programmable gain, timing, equalization, sampling, and detection alternatives Channel quality circuit for filter/equalizer/detector calibration and error rate estimation Ensure pointer generation Support for monolithic composite, thin-film, MIG and magneto-resistive head technologies. Intelligent power management CLSH4400 rf~t j " i re I O \C Sampled Amplitude Digital R/W Channel 1.0 PIN INFORMATION 6 2.0 PIN ASSIGNMENTS 7 2.1 Microcontroller Interface Pins ~~~ — ... 7 12 VM6400 Interface Pins . 9 2.3 Preamp Interface Pins 10 2.4 Disk Controller Interface Pins 10 2.5 Power, Ground, and Miscellaneous Pins..... .... ...» ...... ..12 3.0 REGISTER TABLES 13 4.0 FUNCTIONAL DESCRIPTION 14 4.1 Write Operation 14 4.2 Read Operation 14 4.3 NRZ Data Interface 15 4.4 Transition Detector 15 4.5 Gain Control — 1 4.6 Timing Recovery 18 4.7 Digital Equalizer 21 4.8 SofTargetTM Sequence Detector 23 4.9 Synchronization Mark Detector _ 27 •4 * Γ»LL» tπcoQθr/uθcooθr » * «-)» a »H>. Htt ** t»M»» * »H»a»H »ι«>M.tHM»»» £θ 4.11 Pointer Generation . 29 4.12 Channel Quality 29 4.13 Path Delays 30 4.14 Control Interface -. 30 4.15 Power Management ... 30 5.0 OPERATIONAL DESCRIPTION 31 5.1 Calibration ..... 31 6.0 REGISTER DESCRIPTIONS 32 7.0 PERFORMANCE SPECIFICATIONS 46 7.1 Gain Control .-. . 46 72 Timing Recovery 46 8.0 INITIALIZATION CONDITIONS 47 8.1 Registers . . . — ..47 8-2 Outputs 47 9.0 ELECTRICAL SPECIFICATIONS 48 9.1 Absolute Maximum Ratings 48 9.3 AC Characteristics 49 10.0 GLOSSARY 68 11.0 ORDERING INFORMATION 72 CL-SHUOO toαc Sampled Amplitude Digital R/W Channel 1. PIN INFORMATION The CL-SH4400 is available in a 100-pin Plastic Quad Flat Pack (PQFP) package. The pin diagram below shows this package. Pin Diagram for the 100-Pin Plastic Quad Flat Pack (PQFP) Package CL-SH4400 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 2. PIN ASSIGNMENTS The following conventions are used in the pin assignment tables. Asterisk (*) denotes a negative true sig¬ nal. (I) indicates an input pin. (0) indicates an output pin. (OD) indicates an open-drain output pin. (I/O) indicates a bidirectional pin. All unused inputs must be tied to the inactive state, Vcc or GND. 2.1 Microcontroller Interface Pins SYMBOL PIN TYPE DESCRIPTION Rsr RESET: Assertion of this signal stops all operations within the CL-SH4400 and deasserts all output control signals. All bidirectional signals are set to the high-impedance state. I/MC * INTEL MOTOROLA: This signal selects the microcontroller interface to be used. When this signal is high, it selects the Intel bus control interface. When this signal is low, it selects the Motorola bus control interface. An internal pullup allows this signal to be legally "floated" to select the default Intel bus control interface. M/NM* MULTIPLEXED/NONMULTIPLEXED: When this signal is high, AD<7:0> is the multiplexed address/data bus and A<7:0> is the latched address output bus. When this signal is low, AD<7:0> is the data bus and A<7:0> is the address input bus. An internal pullup allows this signal to be legally "floated" to select the default multiplexed bus mode of oper¬ ation. SH/L * STROBE HIGH ACTIVE/LOW ACTIVE: This input selects the polarity of the DS (Data Strobe) and AS (Address Strobe) input if in Motorola mode. A high on the input will select high active DS and AS while a low on the input will select low active DS and AS. An internal pullup allows this signal to be legally "floated" to select the default high active mode of operation. CS * CHIP SELECT: This signal must be asserted for all micro¬ controller accesses to the CL-SH4400's registers. ALE/AS ADDRESS LATCH ENABLE/ADDRESS STROBE: On the trailing edge of this signal, the CL-SH4400 latches the address present on the AD or A bus, as selected by M/NM". CL-SHUOO -CIRRUS LOGIC Sampled Amplitude Digital R/W Channel SYMBOL PIN TYPE DESCRIPTION WR7R-W * I WRITE STROBE/READ.WRITE: When l/MC * is high, this signal is WR * ; when CS * and WR * are asserted, the data on the AD bus will be written to the specified register. When l/MC* is low, this signal is R-W * , which determines the direction of data transfer when accessing the CL-SH4400's registers. When CS * and DS are asserted and R-W * is high, a register read operation is in progress. When CS* and DS are asserted and R-W * is low, a register write oper¬ ation is in progress. RDVDS READ STROBE/DATA STROBE: When l/MC * is high, this signal is RD * ; when CS * and RD * are asserted, the data from the specified register will be driven onto the AD bus. When l/MC * is low, this signal is DS, which determines the data timing of a register access. When CS* is asserted and R-W* is high, the leading edge of DS indicates when the CL-SH4400 may start driving data onto the AD bus. When CS* is asserted and R-W * is low, the trailing edge of DS indicates when the CL-SH4400 may latch data from the AD bus. RDY/DTACK* OD READY/DATA ACKNOWLEDGE: When l MC* is high, this signal is the microcontroller Ready line; when this signal is deasserted, the local microcontroller shall insert wait states to allow time for the CL-SH4400 to complete the requested access. When l/MC* is low, this signal is the Data Acknowl¬ edge signal; this signal is asserted when the CL-SH4400 has completed the requested access. AD<7:0> I/O MICROCONTROLLER ADDRESS/DATA BUS: When Ml NM* is high, AD<7:0> is the multiplexed address data bus. When M/NM* is low, AD<7:0> is the data bus. A<7:0> I/O MICROCONTROLLER ADDRESS: When M/NM * is high, A<7:0> is the latched address output bus; it presents the eight address bits latched by ALE. These signals are pro¬ vided for general system use and are available regardless of the state of CS*. When M/NM* is low, A<7:0> Is the address input bus. CL-SH OO Sampled Amplitude Digital R/W Channel LOGIC 2.2 VM6400 Interface Pins SYMBOL PIN TYPE DESCRIPTION DRDP<5:0> DRDN<5:0> DIGITIZED READ DATA: This differential bus carries the sampled read signal in two's-complement form. These inputs must be driven to a logic '0' when not in use or when¬ ever the sample value is invalid. RDCLKP j RDCLKN READ CLOCK: Both edges of this differential signal clocks DRD Into the CL-SH4400. RD_CLK is one-half the channel bit rate. This clock must be glitch free and driven to a valid state when not in use. F3CLK * F/3 CLOCK: This signal is used in generating RBCLK/ RRCLK and NCLK. F3CLK is one-third or two-thirds the channel bit rate. This clock must be glitch free and driven to a valid state when not in use. WRRCLK * WRITE REFERENCE CLOCK: This signal clocks the RLL encoder of the CL-SH4400. WRRCLK is one-half the chan¬ nel bit rate. This clock must be glitch free and driven to a valid state when not in use. ENDAT<0>/SER_CLK ENCODED DATA BIT Q/SERIAL CLOCK: While SER_ENA is deasserted, this signal carries the least-signif¬ icant RLL-encoded write data bit to the VM6400 and is writ- tern to the disk after the most-significant bit. While SER.ENA is asserted, this signal clocks SER.DAT between the CL-SH4400 and the VM6400. ENDAT<1>/SER_DAT I/O ENCODED DATA BIT 1/SERIAL DATA: While SER.ENA is deasserted, this signal carries the most-significant RLL- encoded write data bit to the VM6400 and is written to the disk before the least-significant bit. While SER.ENA is asserted, this signal transfers control information between the CL-SH4400 and the VM6400. | SER.ENA SERIAL ENABLE: This signal is asserted for serial control interface operations. FCTL<4:0> FREQUENCY CONTROL: This bus controls the VM6400S variable frequency oscillator/timing recovery circuitry. ACQ ACQUISITION MODE: Controls the range and precision of the FCTL bus. VGAC<4:0> VARIABLE GAIN AMPLIFIER CONTROL: This bus con¬ trols the fine αain of the VGA in the VM6400. CL-SH OO uoac Sampled Amplitude Digital R/W Channel 2.3 Prβamp Interface Pins WGO * WRITE GATE OUT. This signal is asserted while WG/WG * is asserted. 2.4 Disk Controller Interface Pins NRZ<0>/NRZ I/O NON-RETURN TO ZERO BIT 0/NRZ Data: In Eight-Bit NRZ Mode and Two-Bit NRZ Mode, this signal transmits(re- ceives) the least-significant unencoded read (write) data bit to(from) the Disk Controller. In One-Bit NRZ Mode, this bit serially transmits(rece ' ιves) the unencoded read(write) data to(from) the Disk Controller. The tri-state driver is enabled by assertion of RG RG*. NRZ<1> I/O NON-RETURN TO ZERO BIT 1: In Eight-Bit and Two-Bit NRZ Modes, this signal trans its(receives) the second- least-significant unencoded read(write) data bit to(from) the Disk Controller. The tri-state driver is enabled by assertion of RG RG * . This signal is not used in One-Bit NRZ Mode. NRZ<7:2> I/O NON-RETURN TO ZERO BITS <7:2>: In Eight-Bit NRZ Mode, these signals transmit(receive) the six most-signifi¬ cant unencoded read(write) data bits to(from) the Disk Con¬ troller. These signals are not used in Two-Bit NRZ Mode or One-Bit NRZ Mode. CL-SHMOO Sampled Amplitude Digital R/W Channel SYMBOL PIN TYPE DESCRIPTION NRZP I/O NON-RETURN TO ZERO PARITY: In Eight-bit NRZ Mode. this signal transmits(receives) the parity bit for the NRZ data byte on NRZ<7:0>. When the parity of NRZ<7:0> is even and Even NRZ Parity mode is selected, NRZP is low. This signal is not used in Two-Bit NRZ Mode or One-Bit NRZ Mode. WPERR WRITE DATA PARITY ERROR: In Eight-bit NRZ Mode, this signal is asserted when a parity error is detected on the NRZ interface (NRZ <7:0> and NRZP). This signal is not used in Two-Bit NRZ Mode or One-Bit NRZ Mode. SBD * SYNC BYTE DETECTED: In Eight-bit NRZ Mode, this sig¬ nal is asserted to qualify the hex '03' byte on the NRZ bus as the synchronization byte. This signal is also valid in Two- Bit NRZ Mode or One-Bit NRZ Mode. NCLK NIBBLE CLOCK: In Eight-Bit NRZ Mode, this signal is pre¬ sented for use by the Disk Controller. This signal is forced high in Two-Bit NRZ Mode or One-Bit NRZ Mode. RBCLK/RRCLK REFERENCE BYTE CLOCK/READ REFERENCE CLOCK: In Eight-Bit NRZ Mode, this signal is used to dock out NRZ<7:0,P> to the Disk Controller. In One-Bit or Two- Bit NRZ Mode, this signal Is used to dock NRZ or NRZ<1:0>, respectively, to and from the Disk Controller. WBCLK WRITE BYTE CLOCK: In Eight-Bit NRZ Mode, this signal is used to dock in NRZ<7:0,P> from the Disk Controller. This signal is not used in One-Bit or Two-Bit NRZ Mode. SEQ.OUT SEQUENCER OUTPUT. This signal is connected to the Sequencer Output of the Disk Controller. It is used to con¬ trol the Synchronization Marie Recovery Mode, Path Mem¬ ory Length and Channel Quality measurement. CL-SHUOO uoac Sampled Amplitude Digital R/W Channel 2J5 Power, Ground, and Miscellaneous Pins CLKIN CLOCK IN: This signal is used to develop the dock for the VM6400 serial control interface. CL-SH OO Sampled Amplitude Digital RW Channel LOGIC 3. REGISTER TABLES <TBD> 4. FUNCTIONAL DESCRIPTION An overview of the interaction of the CL-SH4400, VM6400, and the Disk Controller during write and read operations is given below, followed by more detailed descriptions of individual functional blocks. The major functional blocks of the CL-SH4400 indude: NRZ Data Interface Transition Detector Gain Control Timing Recovery Digital Equalizer SofTarget™ Sequence Detector Synchronization Mark Detector RLL Encoder/Decoder Pointer Generation Channel Quality Serial Control Interface 4.1 Write Operation When Write Gate is asserted, the Disk Controller must first emit zeros on the NRZ Data interface for the desired length of the preamble. The RLL Encoder in the CL-SH4400 creates the preamble pattern spec¬ ified by the Preamble Select bits ("1010.. "100100...". or "10001000..." ) and emits it on the Encoded Data interface. The Disk Controller must then emit a number of hex "FC" bytes on the NRZ Data interface equal to the Synchronization Mark Length, during which the CL-SH4400 emits the Synchronization Mark Pattern on the Encoded Data interface. If necessary, the Synchronization Mark is delayed by one or two channel bits to allow the last "100 * or "1000 * preamble group to be completed. After it has transferred the proper number of synchronization bytes, the Disk controller must emit data bytes on the NRZ Data inter¬ face. If the Data Randomizer is enabled, the data bytes are randomized to equalize the probability of oc¬ currence of worst-case patterns. The RLL Encoder in the CL-SH4400 encodes the data bits and the en¬ coded data bits are emitted on the Encoded Data interface. The preamble bits, Synchronization Mark bits, and encoded data bits are all processed through the VM6400's write precompensation drcuitry and trans¬ mitted to the write head. 4.1.1 Write Precompensation Due to the nature of the SofTarget™ Sequence Detector, which takes linear intersymbol interference into account when calculating path metrics, write precompensation for linear intersymbol interference is not required. However, demagnetizing effects during write can cause a shift in the location of a transition which is very dose to the preceding transition. The VM6400 provides write precompensation to counter this effect. 4.2 Read Operation During a read operation, the VM6400 passes the signal from the reacVwrite preamplifier through a vari¬ able-gain amplifier and a tunable active filter, then emits digital samples from a six-bit flash analog-to-dig¬ ital converter. The samples are passed to the CL-SH44O0 at the rate of one sample every channel bit in¬ terval. In the CL-SH4400, the samples are fed to the programmable digital equalizer which further conditions the signal. The sample points of the analog to digital converter are determined by an oscillator internal to the VM6400 whose frequency/phase is controlled by the CL-SH4400 to maintain proper sam¬ pling. The digitally-equalized samples are fed to the SofTarget™ Sequence Detedor in the CL-SH4400. The output of the SofTarget™ Sequence Detector is used to deted the Synchronization Marie and to feed the RLL Decoder, whose output is the NRZ data which is transmitted to the Disk Controller on the NRZ Data interface. If the data randomizer is enabled, the data is de-randomized to restore the original user data before being sent to the disk controller. 4.2.1 Number Representation and Arithmetic The two's complement number system is used wherever negative and positive numbers must both be rep¬ resented. The input signal samples from the analog-to-digital converter are six-bit two's complement num¬ bers interpreted as having a binary point after the second most significant bit SX.XXXX. Thus the range of representable numbers is from -2 to +31/16 in steps of 1/16. Note that the binary point is "virtual", having no existence in silicon. Rounding and truncation are performed as considered appropriate in each internal operation on a case- by-case basis. In some cases, intermediate results are carried with greater precision than the final result Overflow is guarded against by saturating summers, by algorithmic bounds, or by probability of occur¬ rence as appropriate in each internal operation. 4.3 NRZ Data Interface The Eight-Bit NRZ Mode allows the CL-SH4400 to conned to a disk controller which uses an eight-bit NRZ data interface. When in the Eight-Bit NRZ Mode, the VM6400 provides the F3CLK signal as a 1/3 channel rate dock which the CL-SH4400 divides by two in frequency in developing NCLK and divides by four in developing RBCLK, which the Disk Controller returns as WBCLK. The Two-bit NRZ Mode allows the CL-SH4400 to conned to a disk controller which uses a two-bit NRZ data interface. When in the Two-Bit NRZ Mode, the VM6400 provides the F3CLK signal as a 1/3 channel rate clock which the CL-SH4400 uses to develop RRCLK. The One-bit NRZ Mode allows the CL-SH4400 to conned to a disk controller which uses a one-bit serial NRZ data interface. When in the One-Bit NRZ Mode, the VM6400 provides the F3CLK signal as a 2/3 channel rate clock which the CL-SH4400 uses to develop RRCLK and divides by two to developed its in¬ ternal two-bit NRZ clock. Data rate in this mode is limited to 40Mbits/sec. 4.4 Transition Detector Gain Control and Timing Recovery both require information about the locations of transition responses in the sample stream. Because the gain and timing loops cannot tolerate the delay of the SofTarget™ Se¬ quence Detedor, a simple transition detedor is provided. This transition detedor is not normally used for data recovery, although its output may be seleded in place of the SofTarget™ Sequence Detedor output by setting a control register bit. The peak qualification threshold, V, is also stored in a control register. Ta¬ ble 4.4-1 shows the conditions which must be satisfied to deted a transition during sample period n under various conditions, where: Yj is the signal sample for period i, and V is the Qualification Threshold. For an isolated transition response sample sequence of (a,b,1 ,c), the transition detedor indicates a tran¬ sition when it receives the fourth sample (c). The choice of either condition (3a) or (3b) during center-sam- sition pattem. Condition (3b) is intended for use with a '10001000...' acquisition pattem. Either condition might be used for a '100100...' acquisition pattem. igure 4.4-1 illustrates center sampling and side sampling for an isolated pulse. Center Sampling Side Sampling Figure 4.4-1 f DTir 4.5 Gain Control The differential variable gain amplifier (VGA) in the VM6400 amplifies the differential input signal from the read preamp to a consistent level which is fed to the tunable active filter. The VGA gain is controlled by a digital to analog converter (DAC) with coarse gain statically controlled by a register in the VM6400 and fine gain dynamically controlled by the Gain Control drcuit of the CL-SH4400 through the VGAC bus. The Gain Control drcuit is designed for symmetrical attack and decay. The VGAC bus will saturate instead of overflow or underflow. The Gain Control drcuit provides three modes: acquisition, tracking, and hold. In acquisition mode, which is automatically entered on the leading edge of Read Gate, the loop should be programmed to respond quickly in order to allow fast acquisition. Proper gain is assumed to have been established a programmable number of docks after the leading edge of Read Gate. The Gain Control drcuit then switches to a tracking mode in which the loop should be programmed to respond more slowly in order to minimize gain errors over data due to noise. This change in response is accomplished by switching to another set of loop filter coefficients. It is also possi¬ ble to freeze the gain during tracking mode by setting the loop gain to zero. In hold mode, which is entered while Read Gate is deasserted, Gain Control adion is suspended, allowing the VGAC bus to "coasr at its current gain level, e.g. over gaps or servo bursts. Gain does not "droop" in hold mode due to the digital nature of the gain control loop. 4.5.1 Gain Detector The Gain Detector calculates the difference in amplitude between the desired and adual signal levels. A gain update is made whenever a transition is detected. The gain update is negative when the gain is too high and positive when the gain is too low. Table 4.5-1 shows how the gain error is calculated when a transition is deteded during sample period n, where SGN(x) is +1 forx ≥ 0, -1 for x < 0, Yj is the signal sample for period i, g a is the acquisition Gain Set Point value, g is the tracking Gain Set Point value, a, b, and c are Detedor Levels 1, 2, and 3, and T * is 1 when a transition is deteded during sample period I and pulse shape compensation is enabled, 0 otherwise. The nominal value of the Gain Set Point for side sampling is (1 + b); for center sampling, it is (1). The appropriate value of the Gain Set Point for normal operation is determined during calibration. Varying the Gain Set Point may be a suitable tool for retry strategies. For example, a larger Gain Set Point could be used to hold the gain artificially high, which might tend to compensate for drop-out errors (at some cost in -_ 45 CL-SHUOO Sampled 'CIRRUS uoac Amplitude Digital R W Channel signal-to-noise ratio). Note that the Gain Set Point affects the loop gain and gain margin of the Timing Recovery drcuit Table 4.5-1 Gain Error 4.5.2 Gain Compensation Compensation in the Gain Control loop is accomplished with a digital filter whose structure may be rep¬ resented by Figure 4.5-1. The adder is designed to saturate rather than wrap on over/under flow. Figure 4.5-1 Gain Control Loop Compensation The z-domain transfer function of this filter is F z) = Z- Λ Cgis the loop filter coefficient and z *1 represents a delay of two channel bit intervals (2/f s ) because this digital filter operates at one-half the channel sample rate. Coefficient Cg is independently programmable for acquisition and tracking. A linear discrete-time approximation to the open-loop transfer function of the Gain Control loop is where K„ s the gain of the gain detedor (equal to 2 for side sampling, 1 for center sampling), K a is the control gain of the VGA (equal to 0.46), g is the gain of the compensation filter, and n is the number of (2/f s ) dock delays in the loop. This model can be used to predid the acquisition settling time, tracking bandwidth, and other properties of the loop for a given filter coeffident Cg. 4.6 Timing Recovery The Timing Recovery drcuit controls the Read Clocks, which are synchronized to the read wavefoπn. The Read Clocks are generated in the VM6400 from a dock produced by a variable frequency oscillator (VFO) which is used to dock an analog-to-digital converter (ADC). The frequency synthesizer in the VM6400 establishes the center frequency of the VFO. A phase detedor drcuit in the CL-SH4400 digitally com- nntn« t R πhacin Arror in the ADC sampling instants from the sample values. The sequence of measured CL-SH4400 Sampled Amplitude Digital R/W Channel CIRRUS LOGIC phase errors is digitally filtered in the CL-SH4400 to produce a frequency control signal which is fed bad to the VM6400 over the FCTL bus. In the VM6400, the digital value from the FCTL bus is converted via i DAC to an analog signal which acts to offset the VFO from its center frequency to establish the correc sampling frequency and phase. The phase detector, filter, VFO, and ADC together form a phase-locked loop. The Timing Recovery drcuit is designed so that the FCTL bus will saturate instead of overflow r underflow. The Timing Recovery drcuit provides four modes: lock-to-reference, acquisition, tracking, and hold. In lock-to-reference mode, a digital frequency detedor is used to lock the read VFO to the frequency syn¬ thesizer dock, ensuring small frequency error when acquisition mode is entered. In acquisition mode, which is automatically entered on the leading edge of Read Gate, the loop should be programmed to respond quickly in order to allow fast acquisition over the preamble. To further decrease acquisition time, the VM6400 provides a zero-phase start Timing frequency and phase are assumed to have been acquired a programmable number of docks after the leading edge of Read Gate. The Timing Recovery drcuit then switches to a tracking mode in which the loop should be programmed to respond more slowly in order to minimize timing errors over data due to noise. This change in response is accomplished by switching to another set of loop filter coefficients. In hold mode, which is entered while Read Gate is deasserted, Timing Recovery action is suspended, allowing the FCTL bus to "coast" at its current frequency, e.g. over gaps or servo bursts. 4.6.1 Phase Detector The Phase Detedor calculates the difference in phase between the desired and adual sampling instants. A timing update is made whenever a transition is deteded. The timing update value is positive when the ADC is strobed late, indicating that the VFO frequency should be increased. The timing update value is negative when the ADC is strobed early, indicating that the VFO frequency should be decreased. Table 4.6-1 shows the equations used to calculate the phase error when a transition is deteded during sample period n, where SGN(x) is +1 forx ≥ 0, -1 forx < 0, Yj is the signal sample for period i, t a is the acquisition Timing Set Point, tt is the tracking Timing Set Point, a, b, and c are Detedor Levels 1, 2, and 3, and Tj is 1 when transition is deteded during sample period i and pulse shape compensation is enabled, 0 otherwise. The Timing Set Point is used to accommodate pulse asymmetiy. Table 4.6-2 shows the nominal values of t a and t(. The appropriate values of the Timing Set Point for normal operation are determined during calibration. Varying the values of the Timing Set Point may be a suitable tool for retry strategies. Table 4.6-1 Phase Error CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Table 4.6-2 Nominal Timing Set Point 4.6.2 Timing Compensation Compensation in the Timing Recovery loop is accomplished with a digital filter whose structure may be represented by Figure 4.6-1. Figure 4.6-1 Timing Recovery Loop Compensation The z-domain transfer function of this filter is 0^(2- 1) +C-, F t {z) = z(*- D where r 1 represents a delay of two channel bit intervals (2/f s ) because this digital filter operates at one- half the channel sample rate. Coefficients cj and C are independently programmable for acquisition and tracking. A linear discrete-time approximation to the open-loop transfer function of the Timing Recovery loop is where K p is the gain of the phase detedor (1 to 2 depending on pulse shape), K 0 is the control gain of the VFO (selectable in VM6400) and n is the number of (2/f s ) dock delays in the loop. This model can be used to predid the acquisition settling time, tracking bandwidth, and other properties of the loop for a giv¬ en pair of filter coefficients c<| and C2- Given detedor levels a, b, and c, the gain of the phase detedor may be computed as K p = 1 + b -3(a + c) 2 for side sampling. For center sampling, the gain of the phase detedor is K n « 2 - 2a 3 - (b + c)/2. CL-SH4400 Sampled Amplitude Digital R W Channel ~τ rSSSΥ m II~EI l~ IdTir mami.ii A iιrtinι ni f ιrπτ l ιιιτ.ιιι l ιrtrιrήι)rιϊrιιnιιwιr;ιι , ι i>i 4 M.ι>ιmrιιιι'ι ιrιι,ιιιιιi' mm; • ——^ mΛ mr mmU l\*J^ *Λ M m 4.6-3 Lock to Reference The center frequency of the read VFO in the VM6400 tracks the frequency synthesizer automatically. This ensures that the frequency control range provided by the FCTL bus is approximately centered around the nominal frequency for each zone. However, the automatic center frequency tracking is not predse enough to facilitate fast, reliable lock to a data preamble. To fine tune the initial frequency of the read VFO and ensure small frequency errors at the start of a lock to preamble, the CL-SH4400/VM6400 chip set provides a Lock to Reference (LTR) mode in which the frequency of the read VFO is adjusted to match the frequen¬ cy synthesizer. LTR mode should be used whenever the VFO frequency is subjed to error, induding at power on, after periods of idle time, after a data rate change (inter-zone seek), and after any failure to achieve lock as indicated by failure to deted the synchronization mark. Lock to Reference (LTR) mode is invoked by setting a bit in a control register in CL-SH4400. LTR mode should not be invoked during any read, write, or servo operation. When the lock is completed the control bit must be manually deared to return to normal operation. The CL-SH4400 signals the VM6400 to enter LTR mode by asserting the ACQ line while RGO* is deas¬ serted. The VM6400 then generates a sinusoidal signal with frequency equal to 1/4 of the synthesizer fre¬ quency, and samples that signal with the 6-bit flash A/D converter. The CL-SH4400 uses the sample se¬ quence to compute the frequency error between the read VFO (which docks the A D converter) and the frequency synthesizer. The frequency error signal is fed back through the digital timing loop filter to drive the error to zero. The dired path coefficient in the timing loop filter (c,) is set to zero for LTR since inputs represent frequency error measurements rather than the usual phase error measurements. A register is provided to program the value of the accumulator path coefficient (C2) for LTR mode. By suitable choice of this coeffident, frequency lock times of 100-200 channel bit intervals should be achievable. 4.7 Digital Equalizer The digital equalizer can modify the equalization done in the analog filter of the VM6400 and, along with it, provides support for changing equalization needs from head to head and zone to zone. The digital equalizer is composed of two specialized digital filters, called the Pulse Shaping Filter and the Spectrum Smoothing Filter. The digital equalizer parameters are loaded by the microcontroller at initialization and during seeks. Using the Channel Quality circuit, a procedure is provided whereby the microcontroller can adapt the digital equalizer parameters. The intent of this feature is to allow the miCTocontroller to find the best parameter sets (those which produce the minimum eπor rate) for each disk drive, head, and zone. Since parameter optimization is a slow process, it is done only during manufacturing test and during idle times. Figure 4.7-1 shows the stmdure of the Pulse Shaping Filter. The two coeffidents PC1 and PC2 are inde¬ pendently programmable. Figure 4.7-1 Pulse Shaping Filter Structure Figure 4.7-2 shows the Pulse Shaping Filter amplitude response vs. frequency for PC1 - (0, ±1/16, ±1/8, ±1/4) and PC2 -S (3/4, 1, 5/4). Frequency (relative to channel bit frequency) Figure 4.7-2 Pulse Shaping Filter Response The spedrum smoothing filter is designed to reduce the undershoots from the finite pole tips of a thin-film head, or to reduce the bumps from the secondary gap of a single or double-sided MIG head. Other uses may also be possible. In the frequency domain the filter acts to smooth out the undulation caused by the I 'Head Bumps', hence the name "Spedmm Smoothing Filter*. Figure 4.7-3 shows the stmdure of the Spedmm Smoothing Filter. The two delays SD1 and SD2 and the four coeffioents SC1, SC2, SC3, and SC4 are independently programmable. The delays may be pro- | grammed from 0 to 23 channel bit intervals. The entire Spectmm Smoothing filter or just its precursor- correcting portion (SC1, SC2, and SD1) can be disabled. Figure 4.7-3 Spectrum Smoothing Filter Structure LOGIC 4.8 SofTarget™ Sequence Detector Partial response is a communications and recording technique used to recover, as much as is practical, the loss assodated with intersymbol interference (ISI). Partial response models for magnetic recording channels are typically defined by polynomials of the form (1 - D)(1 + D) N where D represents a unit delay. The (1 - D) fador represents differentiation by the transducer and the (1 + D) N fador defines the intersymbol interference. N would be zero for a recording channel without in¬ tersymbol interference. N is one for Partial Response Class IV (PR4) and two for Extended Partial Re¬ sponse Class IV (EPR4). Higher orders of (1 + D) are also possible. The expansion of (1 + D) N defines the sample points of an isolated pulse. Note that when N is even there is a sample at the center of the isolated pulse and that when N is odd all samples are on the sides of the isolated pulse. Table 4.8-1 We can take a more general view of the polynomial by varying coefficients. For example, replace the side coefficients of [1/2 1 1/2] with K to obtain [K 1 K]. As K varies from 0 to 1/2, the re¬ sponse changes from that assodated with the polynomial (1 • D) to that assodated with (1 • D)(1 + D) 2 . The coπesponding time and frequency responses are shown in Figure 4.8-1 and Figure 4.8-2, respective¬ ly. Similarly, replace the side coefficients of [1/3 1 1 1/3] with K to obtain [K 1 1 KJ. As K varies from 0 to 1/3, the response changes from that assodated with the polynomial (1 - D)(1 + D) to that assodated with (1 • D)(1 + D)3. The corresponding time and frequency responses are shown in Figure 4.8-3 and Figure 4.8-4, respectively. We need not equalize strictly to a target defined by (1 - D)(1 + D) N ; a pulse shape in between may be a better match to a particular channel. Additional variability of the coefficients can accommodate asymmetric pulses, rendering phase equalization unnecessary. At significant user densities, the signal-to-noise ratio required for SofTarget™ Sequence Detedor to pro¬ duce a given error rate is generally several dB lower than that required for digital peak detedion. Figure 4.8-5 shows representative bit error rates achieved by the Cirrus Logic SofTarget™ detedor pro¬ grammed for EEPR4 and a digital peak detedor as a function of signal-to-noise ratio. Also shown is the performance of each detector with and without the Spectmm Smoothing Filter (SSF). Time (channel bit interval.) Figure 4.8-1 Frequency (relative to channel bn frequency) Flαure 4.8-2 LOGIC Time (channel bit mtervali) Hgure 4.8-3 Frequency (relative to channel bit frequency) CL-SH4400 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Encr Rale vι. SNR with and without SSF SNR(dB)πnnm» Figure 4.8-5 Figure 4.8-6 shows the SofTarget™ Sequence Detedor, which reconstructs the channel-bit stream from the analog- and digitally-equalized samples not on a bit-by-bit basis from each sample in turn but rather with regard to both the current sample and the surrounding sequence of samples according to a decision rule which produces near maximum likelihood detection performance. The detection algorithm deter¬ mines the best sequence of RLL 1's and 0's coπesponding to the pattem of samples. RLL EQUALIZED DATA SAMPLES COMPUTE SELECT- PATH SELECT- -f→- PATH SURVIVOR FINAL METRICS PATH MEMORY PATH 6 Figure 4.8-6 SofTarget™ Sequence Detector The SofTarget™ Sequence Detedor can be programmed to operate on any channel response which can be well represented by sequences of the form [a b 1 c]. Center-sampled pulses nominally have a < b * c < 1 ; side-sampled pulses nominally have a < 1, b ~> 1, and c < 1. Pulse asymmetry is accom¬ modated by specifying a ≠ 0 and b ≠ c for center-sampled pulses, a ≠ c and or b ≠ 1 for side-sampled pulses. Using the Channel Quality drcuit, a procedure is provided whereby the microcontroller may adapt the detector sample levels. The intent of this feature is to allow the microcontroller to find the best detedor sample level sets (those which produce the minimum error rate) for each disk drive, head, and zone. Since parameter optimization is a slow process, it is done only during manufacturing test and dunng idle CL'SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC The state machine model for the SofTarget™ partial response detedor is shown In Figure 4.8-7. Note that the model embodies several kinds of information. First, the isolated pulse sample values a, b, 1 , and c are induded. Second, the alternating polarity of pulses is enforced. Third, the minimum run-length constraint of d=1 is enforced. Figure 4.8-7 To program the SofTarget™ detedor for PR4, set a 0, b = 1 , and c = 0. For EPR4 set a = 0, b = 0.5, and c = 0.5. For EEPR4 one would set a = 1/3, b = 1, and c = 1/3, although the implementation requires that 1/3 be approximated by 5 16 or 6/16. 4.9 Synchronization Mark Detector The error-tolerant synchronization strategy implemented in the CL-SH4400 is designed to achieve a level of error tolerance for the synchronization function equal to that achieved for the data field by the combi¬ nation of the SofTarget™ Sequence Detedor in the CL-SH4400 and the error-correction code implement¬ ed in the Disk Controller. This strategy employs an error-tolerant Synchronization Mark pattem which is selected for minimum cross-correlation with the preamble and for minimum auto-correlation. The length of the error-tolerant Synchronization Mark and the number of four-channel-bit groups which must be de¬ teded are programmable. When Read Gate is asserted, the CL-SH4400 begins to emit all ones on the NRZ Data interface. When the CL-SH4400 enters tracking mode as specified by the Acquisition Length, It begins to attempt to deted the Synchronization Mark Threshold. When the Synchronization Mark Threshold is met, the CL-SH4400 asserts Sync Byte Detected and emits a single hex "FC byte over the NRZ Data interface, followed by decoded data bits. Windowing of the detection of the Synchronization Marie is performed in the Disk Con¬ troller using the known length of the preamble and Synchronization Mark. The Synchronization Mark Recovery procedure may be used to recover data when a severe defed has destroyed the entire Synchronization Mark. To use this mode, the Disk Controller asserts the Sequencer Output signal before Read Gate. The CL-SH4400 first goes through a normal gain and timing acquisition procedure while counting channel bits. The Synchronization Marie is assumed to have been deteded when the count matches the Synchronization Marie Recovery Count. By varying the Synchronization Mark Recovery Count, the microcontroller can vary the assumed starting point of a header or data area until the correct starting point is tried, whereupon the sedor will be recovered if there is no other error beyond the capability of the error correction code in the Disk Controller. A conservative strategy to limit the prob¬ ability of miscorredion would be to limit eπor correction to a single burst when the Synchronization Mark Recovery procedure is used. 4/18670 -- 55 -- CL-SH4400 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 4.9.1 Synchronization Mark Pattern The RLL-blt pattem of the error-tolerant Synchronization Marie is programmed by the user in the Synchro- | nization Marie Pattem registers. Cirrus Logic recommends the patterns shown in Table 4.9-1. Table 4.9-1 Recommended Synchronization Mark Patterns Acquisition Synchronization Marie Pattem pattem 47 1010... 100100101000(1001 00010001 01010010 1000010010101010 100100.. TBD 10001000... TBD When the Synchronization Mark Length is programmed for one, two, or three NRZ bytes, the first twelve, twenty-four, or thirty-six bits, respectively, of the pattem are used. When the Synchronization Marie Length is programmed for one, two, three, or four bytes, the Synchronization Mark Threshold should be pro¬ grammed to require error-free detection of three, four, six, or eight four-channel-bit groups, respectively, in normal operation. 4.10 RLL Encoder/Decoder During Write operations, NRZ data bits are input from the Disk Controller and encoded according to the rules of a rate 2/3 RLL (1 ,7) code. The encoded RLL channel bits are then transmitted two at a time to the VM6400 for write precompensation and transmission to the write head. During Read operations, channel bits are output from the SofTarget™ Sequence Detedor and decoded according to the rules of the RLL (1 ,7) code. The decoded NRZ bits are then output to the Disk Controller. The RLL (1,7) code is encoded using one data-word look-ahead and one channel-bit look-back, and is decoded using one channel-word look-ahead. Table 4.10-1 shows the encode decode mapping; x means the complement of the preceding channel bit The maximum length of an NRZ error burst caused by a single RLL drop-out, drop-in. or bit-shift error is five NRZ bits. Table 4.10-1 RLL (1 ,7) Encode/Decode Mapping 4.10.1 Data Randomizer The RLL Encoder/Decoder also indudes a Data Randomizer which processes unencoded user data to ensure that channel bit patterns with worst-case pattem sensitivity occur no more frequently than would be expeded from random user data. The Data Randomizer employs two linear feedback shift registers (LFSR's). One generates a 63-bit sequence which is EXCLUSIVE-OR-ed against the MSB of each pair of data bits. The other generates a 127-bit sequence which is EXCLUSIVE-OR-ed against the LSB of each pair of data bits. The combination of the two LFSR's generates a 8001 -bit sequence. The Data Ran¬ domizer does not affect error propagation. When the Data Randomizer is enabled, the probability of en¬ countering any spedfic pattem of length n channel bits at a randomly seleded location within encoded data is approximately 1/2 n . During both read and write operations Sequencer Output must be deasserted over user data and asserted over headers. 4.11 Pointer Generation Normally, NRZ data bits are transmitted over the NRZ bus. When erasure pointer generation is activated, erasure pointer bits are transmitted. Erasure pointer bits are generated by the detedion of a maximum run-length constraint violation in the RLL Decoder. An erasure pointer bit in a given byte could indicate the existence of an error in that byte, a previous byte, or a following byte. When the Channel Quality Mode bit is set and the Channel Quality Input source bits are "Choc", threshold pointer bits are transmitted. Threshold pointer bits are generated by the detection an input sample which differs from its nominal value by more than the Channel Quality Threshold. 4.12 Channel Quality The nature and quality of the channel comprising the headdisk interface, preamp, tunable adive filter, ADC, and digital equalizer can be measured with the Channel Quality drcuit, which is provided so that the variable channel parameters (e.g. analog and digital equalization parameters, gain and timing set points, gain control and timing recovery coefficients, and detedor levels) may be adjusted to provide the lowest possible error rate. The Channel Quality drcuit is a very powerful and flexible measurement tool, providing numerous options to facilitate different kinds of measurements of the channel. By selecting appropriate options it is possible to measure mean squared error (MSE), determine equalized pulse shape, charac¬ terize asymmetries between positive and negative pulses, perform margin testing, scan the media for de¬ fects, measure DC offset, and measure the performance of the Gain Control and Timing Recovery loops and the zero phase restart. Many of these measurements require that the sequence that was written to the medium be known as the sequence is read. This is accomplished by blocking data input to the CL- SH4400 during a Channel Quality write and generating the written sequence entirely within the Data Ran¬ domizer. Then on Channel Quality read, the same sequence can be generated and used in controlling the Channel Quality drcuit. Channel Quality measurements may be made using either a pseudo-random data sequence or a programmable two-byte repeating pattem by leaving feedback within the Data Randomizer enabled or disabled, respectively. For detailed information on the use of the Channel Quality drcuit in its various modes, consult CL-SH4400 Application Note xx. CL-SHUOO uoac Sampled Amplitude Digital R/W Channel 4.13 Path Delays 4.13.1 Write Path Delay The path delay for the Beacon during a write is given in Table 4.13-1 Table 4.13-1 4.13.2 Read Path Delay The path delays for the Beacon during a read are given in Table 4.13-1 with parameters of Path Memory Table 4.13-1 Length (PML), Spedmm Smoothing Delay 1 (SD1) and Pulse Shaping Filter (PSF). 4.14 Control Interface When the microcontroller accesses any of the VM6400 Registers, the CL-SH4400 asserts SER.ENA and the register address and data bits are transferred between the CL-SH4400 and the VM6400 over the EN- DAT bus. Refer to the Eledrical Spedfication for details. 4.15 Power Management Deassertion of the Enable input disables all data and dock input receivers. Writing '0' to the Power Man¬ agement Mode bit disables all non-microcontroller data and dock receivers. Deassertion of the Read gate input disables the RDCLK input receiver, thereby disabling all read drcuitry. Deassertion of the Write Gate input disables the WRCLK input receiver, thereby disabling all write drcuitry. LOGIC 5. OPERATIONAL DESCRIPTION 5.1 Calibration The sampled-amptitude channel techndogy employed in the CL-SH4400 VM6400 chip-set makes it pos- | sible to implement highly calibrated channels. These channels are calibrated in manufaduring and during idle times and therefore accommodate greater variation in heaoVmedia parameters. In a CL-SH4400 VM6400 implementation, many equalization and detection parameters are under user control. These indude: ln V 64PQ Tunable Fitter Cutoff Tunable Filter Boost Zero Phase Start Delay Write Precompensation Delay VGA Coarse Gain In CL-SH440Q Gain Set Point Timing Set Point Gain Control Loop Coeffidents Timing Recovery Loop Coeffidents Digital Equalizer Parameters Center/Side Sampling Detedor Levels Transition Detedor Threshold There are many possible tradeoffs; the user deddes which parameters are fixed during development, which are to be calibrated during manufaduring, which are to be re-calibrated during idle times, and which are to be varied during retries. Note that a different set of parameters, including the choice of center sam¬ pling vs. side sampling, may be used for each head and zone on a given drive. Note also that different sets of parameters may be used within a zone; zones defined by changes in data rate need not corre¬ spond with zones defined by parameter changes. CL-SHUOO Loac Sampled Amplitude Digital R/W Channel 6. REGISTER DESCRIPTIONS 6.1 00H Control/Status Register Bit 7 Chip Reset: Assertion of this bit places the CL-SH4400 in a reset state, deasserts all control outputs and tri-states all bi-directional signals. The CL-SH4400 should be programmed before this bit is written with zero. Bit 6 Power Management Mode: 0: Power-down Mode 1: Operational Mode Bit 5 Reserved Bit 4 Clock In to Serial Clock Ratio: These bits spedfy the divider used to generate Serial Clock from Clock In. 0: One 1: Twq it 3 Ready Enable (WriteVSerial Interface Busy (Read): 0: When written with a zero Ready is Disabled. This bit is read as O' when a Serial Control Interface access is allowed. After a Serial Control Interface operation is initiated, this bit is read as '1' until the operation is completed. After a Serial Control Interface read operation is completed, the microcontroller obtains the data bits transferred from the VM6400 by reading any VM6400 Mapped Register, which will initiate another Serial Control Interface read oper¬ ation. 1: When written with a one Ready is Enabled. This bit is read as '1'. The CL-SH4400 deasserts RDY/DTACK* during Serial Control interface accesses of VM6400 registers. The deasser¬ tion of RDY/DTACK* during a Serial Control Interface write operation forces the microcon¬ troller to wait until the data bits have been transferred to the VM6400. The deassertion of RDY/DTACK* during a Serial Control Interface read operation forces the microcontroller to wait until the data bits have been transferred from the VM6400 and presented on the micro¬ controller data bus. it 2 Gain Control Register Saturation (Read only): This bit is set If the Gain Control register sat urates. It is reset when the control status register is written. it 1 Acquisition Timing Recovery Register Saturation (Read only): This bit is set if the Acquisi¬ tion Timing Recovery register saturates. It is reset when the control status register is written. it 0 Tracking Timing Recovery Register Saturation (Read only): This bit is set if the Tracking Timing Recovery register saturates. It is reset when the control status register is written. 6.2 01 H NRZ Control Bit 7 Read/Write Gate Polarity Select: 0: RG/RG * and WG/WG * are positive-troe. 1: RG/RG * and WG/WG * are negative | Bit 6 Endee Bypass: 0: Normal operation. | 1: The RLL Encoder/Decoder is bypassed. Bits on the NRZ interface are treated as RLL bits which are passed directly to the VM6400 during write operations and directly from the Viterbi Sequence Detedor or Transition detedor during read operations. Gain Control, Timing Recovery, and the Viterbi Sequence Detector will operate property only if the RLL bits con¬ form to a minimum run-length constraint of one. F3CLK must be a full channel-rate dock when the NRZ Mode seled bits are '00', a one-half channel-rate dock otherwise. Bit 5 Data Randomizer Feedback Disable: 0: Data Randomizer feedback is enabled. 1 : Data Randomizer feedback is disabled; the initial contents of the DataRandomizer constitute a two NRZ-byte repeated pattem. This bit should be set only when the Channel Quality Mode bit is set. Bit 4 Data Randomizer Load Enable: 0: Initialize Data Randomizer to zero. 1 : Initialize Data Randomizer to Data Randomizer Seed. Bit 3 NRZ Parity Mode: This bit is meaningful only If the Eight-bit NRZ Mode is seieded. 0: Even NRZ parity is generated and, if NRZ Parity Enable is set, checked. 1 : Odd NRZ parity is generated and, if NRZ Parity Enable is set checked. Bit 2 NRZ Parity Enable: This bit is meaningful only if the Eight-Bit NRZ mode is seieded. 0: NRZ Parity is not checked. 1: NRZ Parity is checked. Bits 1-0 NRZ Mode Select: 00: One-bit NRZ Mode is used. 01: Two-bit NRZ Mode is used. 10: Eight-bit NRZ Mode is used. 11: Reserved 61 CL-SHUOO » yι χ Sampled Amplitude Digital RIW Channel 6.3 02H Synchronization Mark Control Bits 7-6 Preamble Pattern Select 00: 1010. .. 01: 100100.. . 10: 10001000.. . 11: Reserved Bits5-4 Synchronization Mark Length: These bits spedfy the length of the Synchronization Marie. 00: One NRZ byte (twelve channel bits). 01: Two NRZ bytes (twenty-four channel bits). 10: Three NRZ bytes (thirty-six channel bits). 11: Four NRZ bytes (forty-eight channel bits). Bits 3-0 Synchronization Mark Threshold: These bits spedfy one less than the number of four-chan¬ nel-bit groups in the Synchronization Marie Pattern which must be deteded without error in order to deted the Synchronization Marie. Range is 0 to three times the Synchronization Marie Length minus one. Recommended values are 23/58 for a 1/2/34 NRZ-byte Synchronization Mark. 6.4 03H Synchronization Mark Recovery Count Bit 7 MUX4 Control: This bit controls the output of MUX4. 0: Output of Sequence Detector. 1 : Output of Transition Detedor. Bits 6-0 Synchronization Mark Recovery Count: These bits specify the number of channel-bit peri¬ ods to wait after the end of acquisition before assuming that the Synchronization Marie has been deteded and beginning to decode data. This is done only if Sequencer Out was asserted before the leading edge of Read Gate. 6.5 04H-09H Synchronization Mark Pattem 1-6 Bits 7-0 Synchronization Mark Pattem Bits: Applicable to Address Bus ai* Pattern Synchronization ak WeπqtD 09H 7-0 47-40 4 NRZ bytes 08H 7-4 39-36 4 NRZ bytes 08H 3-0 35-32 3 or 4 NRZ bytes 07H 7-4 31-24 3 or 4 NRZ bytes 06H 7-0 23-16 2, 3, or 4 NRZ bytes 05H 7-4 15-12 2, 3, or 4 NRZ bytes 05H 3-0 11-8 All 04H 7-0 7-0 All 67 62 10. ORDERING INFORMATION Cirrus : 40 MHz 32 MHz LOGIC FEATURES Channel Flexibility Sampled Amplitude • The CL-SH440CTprovides the digital core of a Digital R/W Channel highly flexible, high-performance sampled-am- plitude read write channel at channel rates up to 96 MHz. OVERVIEW Complete RLL Detector The CL-SH4400 Sampled-Amplitude Digital Chan¬ Rate 23 RLL (1 ,7) recording code nel is a VLSI component designed to worie with a Programmable digital equalization companion analog part and a Disk Controller to Programmable SofTarget™ sequence detec¬ provide the majority of drive and controller hard¬ tion ware necessary to build a state-of-the-art, high- Digital gain control density, magnetic disk drive. The CL-SH4400 im¬ plements the digital portion of a sampled-ampli- Digital timing recovery tude read/write channel employing advanced par¬ Error Tolerance tial response polynomials and SofTarget™ sequence detection technology. It supports data Error-tolerant synchronization rates up to 64 Mb s. Channel quality drcuitry for error rate testing and filter/detedor calibration Erasure pointer generation Head Support Monolithic, composite, thin-film, MIG and MR Functional Block Diagram CL-SHUOO i ry f Sampled Amplitude Digital R/W Channel 6.10 12H Tracking Gain Set Point Bits 7-6 Transition Threshold Bits 3-2: These bits spedfy the two most-significant bits of the four-bit Transition Threshold (V) used to qualify transitions during tracking. Range is 0 to 415/16. Bits 5-0 Tracking Gain Set Point: These bits spedfy the value (g,) used in computing gain errors dur¬ ing tracking. Range is 0 to +6316. 6.11 13H Gain Control Coefficient 6.12 Bits 7-4 Acquisition Gain Control Coefficient These bits detemiine the value of the coeffident (cga) used by the Gain Control compensation loop during acquisition. Those values marked with * are likely to be useful only in side sampled mode. Those values marked with ** are not recom¬ mended to be used in side sampled mode. 0000: Reserved 0100: Reserved 1000: 1/16 1100: 1/4 0001: Reserved 0101: Reserved 1001: 332 1101: 38** 0010: Reserved 0110: 1/32 * 1010: 1/8 1110: 1/2 ** 0011: Reserved 0111: 3/64* 1011: 3/16 1111: Reserved Bits 3-0 Tracking Gain Control Coefficient: These bits detemiine the value of the coeffident (cgt) used by the Gain Control compensation loop during tracking. Those values marked with * are likely to be useful only in side sampled mode. Those values marked with ** are not recom¬ mended to be used in side sampled mode. 0000: 0 0100: 1/64 1000: 1/16 1100: Reserved 0001: 0 0101: 3/128 1001: 3/32 ** 1101: Reserved I 0010: 1/128 * 0110: 1/32 1010: 1/8 ** 1110: Reserved 0011: 3/256* 0111: 3/64 1011: Reserved 1111: Reserved 6.13 14H ACQ Timing Set Point/Coefficient 1 Bits 7-5 Acquisition Timing Recovery Coefficient: These bits detemiine the value of coefficient 1 (c 1a ) used by the Timing Recovery compensation loop during acquisition. 000: Reserved 100: 1/8 001: Reserved 101: 3/16 010: 1/16 110: 1/4 011: 3/32 111: 3/8 Bits 4-0 Acquisition Timing Set Point: These bits specify the value (ta) used in computing phase errors during acquisition. Range is -1 to +15/16. CL-SHUOO Sampled Amplitude Digital R/W Channel . - -fl-- 6.14 15H TRK Timing Set Point/Coefficient 1 Bits 7-5 Tracking Timing Recovery Coefficient 1: These bits determine the value of coeffident 1 (c 1t ) used by the Timing Recovery compensation loop during tracking. 000: 1 32 100: 1/8 001: 3/64 101: 3/16 010: 1/16 110: 1/4 011: 3/32 111: 3/8 Bit 4 Sample Phase Mode: 0: Generate samples for a center-sampled pulse, i.e. a < b * c < 1; timing is recovered using adjacent-but-one samples. 1 : Generate samples for a side-sampled pulse i.e. a « c < b » 1 ; timing is recovered using adja¬ cent samples. Bits 3-0 Tracking Timing Set Point: These bits specify the value (t,) used in computing phase errors during tracking. Range is -1/2 to +7/16. 6.15 16H Timing Recovery Coefficient 2 Bits 7-4 Acquisition Timing Recovery Coefficient 2: These bits determine the value of coeffident 2 (C ) used by the Timing Recovery compensation loop during acquisition. 0000: 1/512 0100: 1/128 1000: 1/32 1100: Reserved 0001: 3/1024 0101: 3/256 1001: 3/64 1101: Reserved 0010: 1/256 0110: 1/64 1010: 1/16 1110: Reserved 0011: 3 12 0111: 3/128 1011: 3/32 1111: Reserved Bits 3-0 Tracking Timing Recovery Coefficient 2: These bits determine the value of coeffident 2 (c_> used by the Timing Recovery compensation loop during tracking. 0000: 1/4096 0100: 1/1024 1000: 1/256 1100: Reserved 0001: 3/8192 0101: 32048 1001: 3/512 1101: Reserved 0010: 1/2048 0110: 1/512 1010: 1/128 1110: Reserved 0011: 34096 0111: 3/1024 1011: 3/256 1111: Reserved CL-SHUOO 1 ( "VIC Sampled Amplitude Digital R/W Channel 6.16 17H Pulse Shaping Coefficients Bit 7 Spectrum Smoothing Coefficients 3&4 Sign: 0: SC3 and SC4 are positive H nonzero. 1: SC3 and SC4 are negative if nonzero Bit 6 Spectrum Smoothing Coefficients 1 &2 Sign: 0: SC1 and SC2 are positive If nonzero. 1: SC1 and SC2 are negative if nonzero Bit 5 Acquisition Transition Detection Option: 0: Condition (3a) in Table 4.4-1 is used during center sampled acquisition. 1: Condition (3b) in Table 4.4-1 is used during center sampled acquisition. Bits 4-3 Pulse Shaping Coefficient 2 (PC2): 00: Reserved 01: 3/4 10: 1 11: 5/4 Bits 2-0 Pulse Shaping Coefficient 1 (PC1): 000: 0 100: Reserved 001: +1/16 110: -1/16 010: +1/8 110: -1/8 011: +1/4 111: -1/4 CL-SHUOO Sampled Amplitude Digital R/W Channel • = * - * - * =2=S5 ,£n. ,ς . - - j( - 6.17 18H Spectrum Smoothing Coefficients When SC1 * SC2 = "00", the precursor-correcting portion of the filter is disabled and the pipeline delay of the Spedmm Smoothing filter is minimized. When SC3 = SC4 = "00 * , the postcursor-corre ing portion of the filter is disabled. The sign of SC1 and SC2 is determined by Spectmm Smoothing Coefficients 1 &2 Sign. The sign of SC3 and SC4 is determined by Spedrum Smoothing Coeffidents 3&4 Sign. Bits 7-6 Spectrum Smoothing Coefficient 4 (SC4): 00: 0 01: ±1/32 10: ±1/16 11: Reserved Bits 5-4 Spectrum Smoothing Coefficient 3 (SC3): 00: 0 01: ±1/32 10: ±1/16 11: Reserved Bits 3-2 Spectrum Smoothing Coefficient 2 (SC2): 00: 0 01: ±1/32 10: ±1/16 11: Reserved Bits 1-0 Spectrum Smoothing Coefficient 1 (SC1): 00: 0 01: ± 1/32 10: ±1/16 11: Reserved 6.18 19H Spectrum Smoothing Delays Bits 7-4 Spectrum Smoothing Delay 2: Range is 0 to 15. SD2 is equal to the value programmed here plus eight additional bits of delay if the Additional Spectrum Smoothing Delay 2 Enable bit is set. Bits 3-0 Spectrum Smoothing Delay 1: Range is 0 to 15. SD1 is equal to the value programmed here plus eight additional bits of delay if the Additional Spedrum Smoothing Delay 1 Enable bit is set. CL-SHUOO γ- j »nr iς Jf ST' r' Sampled Amplitude Digital R/W Channel 6.19 1 AH Lock-To-Reference Control Bit 7 Lock-To-Reference Enable: 0: Normal Operation. 1: Lock-To-Reference Mode is enabled. Erasure Pointer Enable: 0: Normal operation; data bits are output on NRZ bus. 1: Erasure pointers are output on NRZ bus. Bit 5 Additional Spectrum Smoothing Delay 2 Enable: 0: Normal Operation. 1: SD2 is increased by eight additional bits of delay. Bit 4 Additional Spectrum Smoothing Delay 1 Enable: 0: Normal Operation. 1: SD1 is increased by eight additional bits of delay. Bits 3-0 Lock-To-Reference Coefficient: These bits determine the value of coeffident 2 (CJI) used by the Timing Recovery compensation loop during lock-to-reference. 0000: 1/512 0100: 1/128 1000: 1/32 1100: 1/8 0001: 3/1024 0101: 3256 1001: 3/64 1101: 3/16 0010: 1/256 0110: 1/64 1010: 1/16 1110: 1/4 0011: 3512 0111: 3/128 1011: 3/32 1111: 3/8 6.20 1 BH Detector Levels a & c Bits 7-4 Detector Level c: These bits spedfy the last sample value (c) for a nominal pulse. Supported range is 0 to +12/16. Bits 3-0 Detector Level a: These bits spedfy the first sample value (a) for a nominal pulse. Supported range is 0 to +8 16. CL-SHUOO Sampled Amplitude Digital R/W Channel , / -y t f I 6-21 1CH Detector Level b MUX Control Register Bit 7 MUX3 Control: This bit controls the output of MUX3 during tracking; during acquisition, MUX3 selects raw input samples. 0: Raw input samples. 1: Delayed or Pulse Shaping Filtered input samples, as controlled by the MUX1 Control and MUX2 Control bits. Bit 6 MUX2 Control: This bit controls the output of MUX2. Note that the output of MUX2 is not used during acquisition. 0: Pulse Shaping Filtered input samples. 1: Delayed input samples. Bit 5 MUX1 Control: This bit controls the output of MUX1. Note that the output of MUX1 is not used during acquisition. 0: Pulse Shaping Filtered input samples. 1: Delayed input samples. Bits 4-0 Detector Level b: These bits spedfy the second sample value (b) for a nominal pulse. Sup¬ ported range is 0 to +24/16. 6.22 1 DH Gain Control Loop Register Bits 7-0 Gain Control Loop Register: The value read and written here is the eight most-significant bits of the Gain Control Loop register. When this register is written, the remaining bits of the Gain Control Loop register are cleared. 6.23 1 EH ACQ Timing Recovery Loop Register Bits 7-0 Acquisition Timing Recovery Loop Registeπ The value read and written here is the eight most-significant bits of the Acquisition Timing Loop Recovery Loop register. When this register is written, the remaining bits of the Acquisition Timing Recovery Loop register are deared. 6-24 1 FH TRK Timing Recovery Loop Register Bits 7-0 Tracking Timing Recovery Loop Registeπ The value read and written here is the eight most- significant bits of the Tracking Timing Recovery Loop register. When this register is written, the remaining bits of the Tracking Timing Recovery Loop register are deared. All bits of the Track¬ ing Timing Recovery Loop register are automatically deared at the end of acquisition. CL-SHUOO Sampled Amplitude Digital R/W Channel 6.25 20H Channel Quality Control 1 | Bit 7 Channel Quality Mode: When this bit is written with '1 ', the Channel Quality Count and Chan¬ nel Quality Output registers are deared. 0: Normal Operation. 1: Channel Quality Mode. During user data write operations, the NRZ sequence to be encoded and written, after the Synchronization Marie, is generated in the Data Randomizer, NRZ input from the Disk Controller is ignored. During Read Operations, the Data Randomizer must be configured to generate the same sequence. Bit 6 Acquisition Quality Enable: 0: Data Quality Mode. The Channel Quality drcuitry is active from detection of the Synchroni¬ zation Marie to the leading edge of Sequencer Out. 1: Acquisition Quality Mode. The Channel Quality drcuitry is active from the leading edge of Read Gate to the end of Acquisition. Bit 5 Channel Quality Test Mode: This bit must be '0' for normal operation. Bits 4-0 Channel Quality Threshold: When the Channel Quality Input Source bits are Oxx * , these bits spedfy the error which must be exceeded in order for a sample to be counted. Range is 0 to +31/16. 6.26 21 H Channel Quality Control 2 Bit 7 Odd Synchronization (Read Only): 0: The last bit of the previousfy-deteded Synchronization Mark was deteded during the second sample of a pair of samples. 1: The last bit of the previously-deteded Synchronization Mark was detected during the first sample of a pair of samples. Bits 6-4 Channel Quality Input Source: This bit controls what is counted or accumulated in the Chan¬ nel Quality Output registers. 000: The events where the received bit does not compare to the expeded bit are counted. 001: Samples which are less than their nominal values by more than the Channel Quality Threshold are counted. 010: Samples which are greater than their nominal values by more than the Channel Quality Threshold are counted. 011: Samples which are less than their nominal values by more than the Channel Quality Threshold are counted and samples which are greater than their nominal values by more than the Channel Quality Threshold are counted. 100: Unsquared samples are accumulated. 101: Squared sample errors are accumulated. 110: Squared Timing errors are accumulated. 111: Squared Gain errors are accumulated. Bits 3-2 Header Detector Path Memory Length: These bits specify the length of the path memory in the Viterbi Sequence Detedor over headers. Sequencer Output must be deasserted over user data and asserted over headers. 00: Six channel bits 01 : Twelve channel bits 10: Eighteen channel bits 11 : Twenty-four channel bits Bits 1-0 Data Detector Path Memory Length: These bits spedfy the length of the path memory in the Viterbi Sequence Detedor over user data. Sequencer Output must be deasserted over user data and asserted over headers. 00: Six channel bits 01: Twelve channel bits 10: Eighteen channel bits 11 : Twenty-four channel bits CL-SHUOO rr-j DOt iς / "yip Sampled Amplitude Digital R/W Channel 6.27 22H-25H Channel Quality Sample Control 1-4 These registers control which samples contribute to the Channel Quality Count and Channel Quality Output registers. For further information, consult CL-SH4400 Application Note xx. 6.28 26H Channel Quality Count LSB Bits 7-0 Channel Quality Count LSB: This value is the eight least-significant bits of the total number of samples which satisfied the criteria spedfied by the Channel Quality Sample Control registers since the Channel Quality Mode bit was last written with '1'. 6.29 27H Channel Quality Count MSB Bits 7-0 Channel Quality Count MSB: This value is the eight most-significant bits of the total number of samples which satisfied the criteria spedfied by the Channel Quality Sample Control regis¬ ters since the Channel Quality Mode bit was last written with 'V. 6.30 28H Channel Quality Output LSB Bits 7-0 Channel Quality Output LSB: This value is the eight least-significant bits of the Channel Quality Output word counted or accumulated since the Channel Quality Mode bit was last writ¬ ten with T. CL-SHUOO Sampled Amplitude Digital R/W Channel mu f i ιr[ iiiiiiinrπi OT i ϊT nrι τrnιπτ.nffιwnϊιnτn nminmi - 6.31 29H Channel Quality Output MID Bits 7-0 Channel Quality Output MID: This value is the second eight least-significant bits of the Chan¬ nel Quality Output word counted or accumulated since the Channel Quality Mode bit was last written with '1'. 6.32 2AH Channel Quality Output MSB Bits 7-0 Channel Quality Output MSB: This value is the eight most-significant bits of the Channel Quality Output word counted or accumulated since the Channel Quality Mode bit was last writ¬ ten with '1'. 6.33 2EH Reserved 6.34 2FH Revision Register | Bits 7-0 Revision Code (Read only): For Rev. A parts "FFH" will be read. 6.35 30H-3FH VM6400 Mapped Registers Bits 7-0 VM6400 Mapped Registeπ When one of the addresses mapped to the VM6400 is written, a Serial Control Interface write operation is initiated in which the data to be written is latched from the microcontroller data bus and transmitted to the mapped register in the VM6400. If the Ready Enable bit has been written with '1', the CL-SH4400 deasserts RDY/DTACK* until the Serial Control write operation is com¬ pleted. If the Ready Enable bit has been written with '0 * , the microcontroller must wait until the Ready Enable bit is read as O' before initiating another Serial Control Interface operation. When one of the addresses mapped to the VM6400 is read, a Serial Control Interface read operation is initiated in which the data to be read is transmitted from the mapped register in the VM6400. If the Ready Enable bit has been written with '1', the CL-SH4400 deasserts RDY/ DTACK* until the Serial Control read operation for the mapped register is completed and the data bits are presented on the microcontroller data bus. If the Ready Enable bit has been writ¬ ten with '0', the CL-SH4400 presents the data bits transferred for the previous Serial Control Interface read operation on the microcontroller data bus and initiates a Serial Control Interface read operation for the current mapped register. To obtain the data bits transferred for the cur¬ rent mapped register, the microcontroller must wait until the Ready Enable bit is read as '0 * and then read the same or another VM6400 Mapped Register. CL-SHUOO I OT C Sampled Amplitude Digital R/W Channel "A Wi- mm ιmm M mmu mm muø~um»maικr, finn~. a<nf~*mtxτae faκ : .■wan , 7. PERFORMANCE SPECIFICATIONS 7.1 Gain Control Acquisition Time: 48 to 372) Λ s Typical: 48-84 Tracking Bandwidth: 0 to 7.5e-3) f s where f s is the sampling rate. 72 Timing Recovery Acquisition Time: (48 to 372) Λ s Typical: 84-108 Tracking Bandwidth: (1 e-3 to 2.5e-2) f s where f s is the sampling rate. CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGC 8. INITIALIZATION CONDITIONS unde¬ owing CL-SHUOO 'CIRRUS uoac Sampled Amplitude Digital RJW Channel 9. ELECTRICAL SPECIFICATIONS 9.1 Absolute Maximum Ratings NOTE: Stresses above those listed may cause permanent damage to the device. This » a stress rating only, and functional operation of the device at these conditions, or any conditions outside those indicated in the operational sections of this specification, is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. 9.2 DC Characteristics NOTE: All unused inputs must be tied to QND or Vj^. CL-SHUOO Sampled Amplitude Digital R/W Channel wvxπ &ii anw. 'namfinivr. mew,- iwin-riiiiTiwniitirin-wirrmiiiiiiiinniiirrm- 9.3 AC Characteristics Unless otherwise spedfied, the fdlowing timings assume that all outputs will drive one Schottky TTL load in parallel with 50 pF and all inputs are at TTL level. The Min. and Max. timings conform to the operating ranges of power supply voltage (5V ±10 percent) and ambient temperature (0 to 70 ° C). All docks are 60/40 percent maximum/minimum duty cyde. Rise and fall times should not exceed 3 ns. CL-SHUOO Sampled Amplitude Digital R/W Channel LOGIC 9.3.1 Reset Assertion Timing Parameters 9.3.2 Microcontroller Interface Timing Parameters Note: T indicates rising edge,-' indicates falling edge. When l/MC* is high, the Intel bus control interface is seieded. The timing diagrams in Sections 9.3.2.1 • 9.3.2.4 depid register read and write operations with this interface selected. CL-SHUOO Sampled Amplitude Digital R/W Channel When i/MC* is low, the Motorola bus control interface is seieded. The timing diagrams in Sections 9.325 • 9.32.8 depid register read and write operations with this interface selected. 9.32.1 Register Read Operation in Intel Multiplexed Mode CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOQC BΔΛ2 Register Read Operation in Intel Nonmultiplexβd Mode CL-SHUOO Sampled Amplitude Digital R W Channel ΌRRUS LOGIC 9.32.3 Register Write Operation in Intel Multiplexed Mode CL-SHUOO 'CIRRUS uoac Sampled Amplitude Digital R/W Channel 9.3.2.4 Register Write Operation in Intel Nonmultiplexed Mode CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGC 922.5 Register Read Operation in Motorola Multiplexed Mode Note: If the DSH/L * input is O' then the polarity of DS and AS is inverted. - - 84 CL-SHUOO 'CIRRUS uoac Sampled Amplitude Digital R/W Channel 9.32.6 Register Read Operation in Motorola Nonmultiplexed Mode I Note: If the DSH/L* input is '0' then the polarity of DS and AS is inverted. 15 - - CL-SHUOO 'CIRRUS LOGIC 9 * 3.2.7 Register Write Operation in Motorola Multiplexed Mode I Note: If the DSH/L * input is '0' then the pdarity of DS and AS is inverted. 16 -- CL-SHUOO Sampled Amplitude Digital R/W Channel The CL-SH4400 Sampled-Amplitude Digital Channel provides the digital core of a highly flexible, high- performance sampled-amplitude readAvrite channel which provides data rates up to 64 Mb s. A compan¬ ion analog part, the VM6400, implements the frequency synthesizer, variable gain amplifier, timing VFO, tunable analog filter, analog-to-digital converter, write precompensation, and servp demodulation func¬ tions. The CL-SH4400/VM6400 chip set supports hard-sedored magnetic disk drive applications employ¬ ing embedded servo techniques and zone bit recording. The functional partition of the CL-SH4400/ VM6400 chip set is shown in Figure 1. Figure 1 CL-SH4400/VM6400Functional Partition The CL-SH4400 provides digital gain control, timing recovery, equalization, sequence detection, RLL (1 ,7) encoding and decoding, error-tolerant synchronization, and channel quality measurement. The high degree of programmability of each of these fundions allows the CL-SH4400 to support highly adaptive channels tailored for each drive, head, and zone. The format of a typical sedor containing one embedded servo area is shown in Figure 2. During a read(write) operation, the Disk Controller reads the offset of the servo area from the ID. It deasserts Read(Write) Gate after the spedfied number of bytes have been processed and reasserts it after a pro¬ grammed number of bytes equal to the length of the servo area. The VM6400 and external drcuitry read and decode the servo bursts and servo data. During a read operation, the CL-SH4400 freezes its gain control and timing recovery states while Read Gate is deasserted. PREAMBLE SYNC D | CHC SPUCE I PREAMBLE SYNC I DATA SERVO 1 SPUCE PBEAMβLE SYNC I DATA SPUCE Figure 2 Typical Sector Format CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC ADVANTAGES Benefits • Flexible architedure implements broad range of partial response polynomials. • Provides significant implementation and performance benefits over conventional peak detedion. • RLL (1 ,7) code reduces nonlinear effects assodated with dosely-spaced transitions. • Programmable equalization, sampling, and detedion alternatives provide optimum match to channel charaderistics and permit implementation of adaptive channels. • SofTarget™ sequence detedion accommodates a lower signal-to-noise ratio than hard thresholding of individual samples and allows significant intersymbol interference without negative consequences. • Detedor supports a broad dass of partial response channels induding PR4 (1,7), EPR4 (1,7) and EEPR4 (1,7). • Error tolerance features support the higher soft error rates and higher defed densities encountered at higher recording densities. • One/Two/Eight-bit NRZ Data interface connects to a broad range of Disk Controllers. • Intelligent power management minimizes operational and idle power consumption. Key Features One-bit, two-bit, or eight-bit NRZ Data interface Rate 23 RLL (1 ,7) recording code Digital Gain Control Digital Timing Recovery Digital Equalizer SofTarget™ Sequence Detedor Error-tolerant synchronization Programmable gain, timing, equalization, sampling, and detedion alternatives Channel quality drcuit for fiiter/equalizer/detedor calibration and error rate estimation Erasure pointer generation Support for monolithic, composite, thin-film, MIG and magneto-resistive head technologies. Intelligent power management CL-SHUOO ΌRRUS LOQC Sampled Amplitude Digital R W Channel 9.32.8 Register Write Operation in Motorola Nonmultiplexed Mode Note: If the DSH/L * input is '0' then the polarity of DS and AS is inverted. CL-SHUOO Sampled Amplitude Digital R/W Channel LOGIC 9.32 Disk Read/Write Timing Parameters OnefTwo) Bit NRZ Interface Note: T indicates rising edge.- indicates falling edge. RRCLK NRZ (Read) 90 CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOQC Eight Bit NRZ Interface Note: T indicates rising edge,-* indicates falling edge. CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 9.32.1 Disk Write Timing (One/Two Bit NRZ Interface) RRCLK NRZ (Write) 9.322 Disk Write Timing (Eight Bit NRZ Interface) 92 CL-SHUOO 'CIRRUS uoac Sampled Amplitude Digital R/W Channel .3.4 VM6400 Interface Timing Parameters input Tw Twh Twt WRRCLK* X X RDCLKP DRDP<S:0> CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Output RDCLKP X X Dev FCTL<4:0> orVGAC<4-fi> o ACQ x: WRRCLK* ENDAT<1Λ> CL-SHUOO Sampled Amplitude Digital R/W Channel 9.3-5 Serial Control Interface Timing Parameters 9.3.5.1 Serial Control Timing CL-SHUOO Sampled Amplitude Digital R W Channel lOTir 6.6 OAH Data Randomizer Seed LSB Bits 7-0 Data Randomizer Seed LSB: These are the eight least-significant bits of the Data Random¬ izer seed. 6.7 OBH Data Randomizer Seed MSB Bits 7-0 Data Randomizer Seed MSB: These are the eight most-significant bits of the Data Random¬ izer seed. 6.8 10H Acquisition Length Bit 7 Pulse Shape Compensation Disable: This bit controls whether the Gain Control and Timing Recovery circuits use Detedor Levels a, b, and c to compensate for intersymbol interference. This bit does not affed the use of Detedor Levels a, b, and c by the SofTarget™ Sequence Detedor. 0: Pulse Shape Compensation is enabled. 1 : Pulse Shape Compensation is disabled. Bit 6 Header Precursor ISI Compensation Disable: This bit controls whether the Spedrum Smoothing Filter compensates for precursor intersymbol interference during headers. Setting this bit has the effect of forcing SD1 to zero when Sequencer Output is asserted; SC1 and SC2 are ignored and the pipeline delay of the Spedmm Smoothing Filter is minimized. This may be useful for decreasing the delay between DRD input and NRZ output for headers, at the cost of a small increase in eπor rate. 0: Header Precursor ISI Compensation is enabled 1: Header Precursor ISI Compensation is disabled. Bits 5-0 Acquisition Length: This value controls the duration, in increments of four channel-bit peri¬ ods, of acquisition for Gain Control and Timing Recovery. The minimum value which should be written here is 12, which corresponds to 48 channel-bit periods. The maximum value which should be written here should correspond to at least 12 channel-bit periods less than the total length of the preamble exduding the length of the Synchronization Mari . The total length of the preamble is determined by the Disk Controller during write. 6.9 11 H Acquisition Gain Set Point Bits 7-6 Transition Threshold Bits 1-0: These bits specify the two least-significant bits of the four-bit Transition Threshold (V) used to qualify transitions during tracking. Bits 5-0 Acquisition Gain Set Point These bits spedfy the value (g,) used in computing gain errors during acquisition. Range is 0 to +63 16. CL-SHUOO Sampled Amplitude Digital R/W Channel LOGIC 9.3.6.4 Serial Control Write Register Operation SER.ENA SER CLK JT TJΠJ~U J J J J^J~L RDY " ι_ DTACK* -I,--- CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 92.6.5 Serial Control Read Register Operation SER.ENA 8ER-CLK z_ ΠJTJTJTJ JIJTJT TJ JIJTJ^^ ROY ~ S- DTACK* Γ CL-SHUOO r/*-rnnr tς r "*y- 1 - Sampled Amplitude Digital R/W Channel 10. GLOSSARY Aliasing - The phenomenon whereby energy at frequendes above one-half the sampling rate appears as energy at frequendes below one-half the sampling rate in a sampled signal. Antialiasing Filter • A filter which attenuates signal energy above a frequency of one-half the sampling rate. Autocorrelation Function • The integral φ(t) of the produd of a function x(t) and x(t-κ); e.g φ(τ) = E(x(t)- x(t+τ)}. For a binary sequence, this can be treated as the number of bits matching between two copies of a sequence as a function of the offset between the sequences. Calibration - The process whereby the analog and digital parameters of the channel and the detedor are matched for best performance. Channel Constraint - A limitation placed on the sequence of channel bits. For example, an RLL (d,k) chan¬ nel constraint enforces a minimum (d) and maximum (k) number of consecutive O's between 'Vs. Channel Quality • A measure of how well matched are a channel and detedor. Channel Code - A set of rules governing the encoding of data bits to channel bits. Channel codes typically enforce a minimum run-length constraint (to limit non-linear effects) andtor a maximum run-length con¬ straint (to aid in timing recovery). Code Rate • The ratio of the number of bits in the data-bit stream to the number of bits in the channel-bit stream. For an RLL (1,7) code, the code rate is 2/3. Coding Gain • The produd of the code rate and the minimum distance of the encoded sequences of a code. Convolution • The convolution y(k) of sequences u(k) and h(k) is given by y(k) = ∑ u(m) h(k - m) where the summation is over all m. When u(k) is the input to a filter whose impulse response is h(k), the filter output is the convolution y(k). Correlation Function • The expeded value of the produd of two random variables, which may be scalars orvedors. Dicode - Another name for Partial Response Class I (PR1). Distance - A measure of the "difference" between two vectors. Duobinary • The partial response channel corresponding to the polynomial (1 + D). Error Propagation - The process wherein a channel decoder emits more than one erroneous data bit due to a single channel bit in error or more generally a burst of erroneous data bits which is longer (after ac¬ counting for code rate) than the causative channel-bit error burst Error Tolerant Synchronization Mark • A synchronization mark which can be deteded in the presence of error with an acceptable false detection probability. -- 9. CL-SHUOO Sampled Amplitude Digital R/W Channel -ΞΞΞΞΞΞΞ&..nnι iς r r~ ~ιs~ UMtf im. K ni UM m j-mmm b um M mm Mt iimm « —^ -mu ~ M W V«ll«\ « &λ^\ ll^m Eudidean Distance - The square root of the sum of the squares of the differences in each dimension be¬ tween two n-dimensionai vectors. Excess Bandwidth • Signal energy passed by a filter at frequendes above one-half the sampling rate. Extended Partial Response Class IV (EPR4) - The partial response channel corresponding to the polyno¬ mial (1 - D)(1 + D) 2 . Extended Extended Partial Response Class IV (EEPR4) -The partial response channel corresponding to the polynomial (1 • D)(1 + D) 3 . Eye Diagram • A graphical representation of the effects of intersymbol interference. It illustrates the typical or maximum excursion of a signal from its ideal sample levels at its ideal sampling instants. It is important to note that Viterbi Sequence Detection is not dependent on the eye being open in the same way that sample-by-sample detection is. Least-Mean-Square Algorithm • A procedure used in adapting the coeffidents of a digital filter in which the objective is to minimize the mean-square error of the filter output. Matched Filter • A filter whose impulse response is the time reversal of the channel to which it is conned- ed. Maximum A Posteriori Probability Sequence Detedion (MAP) • A decoding method in which the channel bit sequence emitted from the detedor is that which, given the channel sample sequence, is the most probable written sequence. MAP maximizes the probability density function of the detedor output given the detedor input. Maximum Likelihood Sequence Detedion (MLSD) • A decoding method in which the channel bit se¬ quence emitted from the detedor is that with the highest probability of having produced the channel sam¬ ple sequence input to the detector. MLSD maximizes the probability density function of the detedor input given any possible channel input MLSD is equivalent to MAP if the probabilities of all possible written se¬ quences are equal or if they are assumed to be equal when no information is available concerning the probabilities of written sequences. Mean-Square Error - A measure of error in which the difference between each sample and its ideal sam¬ ple level is squared and summed. The sum divided by the number of samples is the mean-square error of the sequence. Metric • A function of two vedors satisfying certain properties that allow it to be interpreted as a measure of distance. Minimum Distance • The smallest distance between any two vedors in a set of vedors. Modified Duobinary • Another name for Partial Response Class IV (PR4). Ndse Types: Coherent Noise • Noise which is correlated with the signal; e.g. transition noise. Colored Noise - Noise which is correlated between one sample instant and another. Gaussian Noise - Noise whose amplitude has a normal probability distribution. CL-SHUOO r / -ιn ir i r f f Sampled Amplitude Digital R/W Channel Misequalization Ndse • Amplitude errors which remain at the output of an equalizer due to its Imper- fed pulse-shaping. This is something of a misnomer, as this "noise * source Is predictable for a given channel transition response, equalizer, and transition sequence. Offtrack Ndse - When tracking is not perfect and the head deviates from the center of a track, the amplitude of the signal from the target track is reduced and the head picks up signal energy due to transitions on the adjacent track. Out-of-band Noise • Noise with energy at frequendes above one-half the sampling rate. Overwrite Noise • In thin film media the magnetic fields of previously written transitions affed the lo¬ cation and shape of transitions written over them. Preamp Noise • Electronic noise arising in the first stage of the head preamplifier. Due to the low sig¬ nal amplitude present at the input to the preamp and the correspondingly high gain required, it is pos¬ sible for preamp noise to be the dominant noise source in a read channel. Quantization Noise • Error introduced by a finite representation of a real number through A D conver¬ sion or internal rounding. Synchronous Ndse • An interfering source with a frequency equal to the sample rate or a multiple thereof. The energy of such a source is aliased to DC and can be canceled by adjusting the VGA DC Offset of the VM6400. Timing Error • Incorred timing of the aid sampling process due to VFO jitter and other ndse passed through the timing control loop. Transition Ndse - Coherent noise caused by "zig-zag * transitions occurring on thin-film media White Noise - Noise which is not correlated between one sample instant and another. Nonlinear Transition Shift • Movement in the effective location of a transition toward a very near pre¬ ceding transition. This is caused by demagnetization during write. Norm • A particular method of measuring the lengths of vedors; related to a metric. NRZ - Non-Return to Zero refers to a bit sequence to which no run-length constraint applies. NRZI - Modified Non-Return to Zero refers to a bit sequence to which no run-length constraint applies but in which each '1' or '0' represent the presence or absence, resped ' ively, of a transition. NRZI sequences can be produced from NRZ sequences via a preceding process equivalent to dividing by (1 + D). Partial Response Channel • A channel in which controlled intersymbol interference is allowed. In such a channel, symbols (e.g. transitions in a magnetic recording channel) are so dosely spaced that the channel begins to respond to the next symbol when only part of its response to the current symbol has occurred. Partial Response Class I (PR1) • The partial response channel corresponding to the polynomial (1 - D). Partial Response Class IV (PR4) • The partial response channel corresponding to the polynomial (1 - D)(1 + D). Path Metric • A cumulative measure of error maintained for a path through a decoder's state machine based on a Darticular norm. Preamble • A spedal repetitive pattern which is used to allow gain to be adjusted to an appropriate level and frequency and phase lock to be acquired. The CL-SH4400 can use a preamble pattem of "1010..." or "100100..." or "100010000..Λ Preceding • The process of encoding a sequence to account for some known property of a channel e.g. the differentiating nature of a magnetic recording channel. Raised Cosine • A form of equalization which is a more-realizable modification of the "brick wall" filter which would produce a sine pulse. It is charaderized by a transfer function H(f) defined as: H(f) » 1 for0< f < (1 -α)f s /2 ■ (1/2)[1 + costTt/Iαyif - (1 -α)f s /2])] for (1 - α)fe/2 S f ≤ (1 + α)fe/2 = 0 for f > (1 + α)f s /2 where f s is the sample rate and o is a parameter in the range zero to one. Run-Length Limited Code • A code in which the minimum and maximum numbers of consecutive 'O's and/ or '1 's is constrained by a systematic rule. The notation RLL (d,k) means that no less than d and no more than k consecutive 'O's are allowed in the encoded bit stream, where O' and '1' usually represent the ab¬ sence or presence, respectively, of a (magnetic) transition. Run-Length Violation • An case in which a defed or noise event has caused the occurrence of a sequence of 'O's and '1 's which violates the run-length constraints of the code. Split Field • A recording scheme in which the data redundancy area of a sector is divided into two or more areas, typically by one or more areas used for tracking contrd in an embedded-servo disk drive. State Machine - A drcuit in which the present state of a channel or system is represented by a number of bits whose values are controlled by the present values of the bits and the values of extemal signal levels or the occurrence of extemal signal transitions. Synchronization Marie • A pattem, preferably unique and different from any valid encoded channel-bit se¬ quence, used to signify the start of a header or data area. A good synchronization mark has low cross- correlation with the preamble and small autocorrelation function values at non-zero offsets, implying a low false detection probability. Viterbi Sequence Detedor • A sequence detector which is a maximum-likelihood sequence detedor un¬ der the conditions of matched-filtered input and additive white Gaussian noise. CL-SHUOO mpled Amplitude Digital R/W Channel 'CIRRUS uoac Sa 11. ORDERING INFORMATION CL - SH4400 - 64 PC - A Cirrus Logic, Inc X J L I— Revision* Mass Storage Temperature Range: C ■ Commercial Part Number - Package Type: PQFP Data Rate: —I 64 MHz ' Contact Cirrus Logic, Inc. for up-to-date information on rβviaiona. LOGIC SH3300 SAMPLED AMPLITUDE FEATURES DIGITAL READ CHANNEL The SH3300 provides a highly flexible, sampled- amplitude read/write channel at channel rates up to 60 MHz . Product Description Complete Read Channel Detector The SH3300 sampled amplitude synchronous CL-SH3300 ■γ-i m C f j OGIC Sampled Amplitude Digital R W Channel OVERVIEW The SH3300 Sampled-Amplitude Digital Channel is a VLSI component designed to work with a Disk Con¬ troller and pre-amp to provide the majority of drive and controller hardware necessary to build a state-of- the-art. high density magnetic disk drive. The SH3300 implements a sampled-amplitude read write chan¬ nel employing advanced partial response polynomials and sequence detedion techndogy. It supports user data rates up to 40 Mbits/s. Additionally, a 3.3v version of the SH3300 will be offered as the SH3303. The SH3300 offers digitally controlled loops to control gain, timing and channel offset. Furthermore.the gain and offset loops can be configured with control coefficients for both acquisition and tracking and the loops will reconfigure with the corred coeffidents under control of the acquisition and tracking modes, The SH3300 also indudes an analog servo gain stage to provide demodulation of recovered servo burst information. CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC ADVANTAGES Flexible architecture implements broad range of partial response polynomials. Intelligent power management minimizes operational and idle power consumption. RLL (1 ,7) code reduces nonlinear effects associated with dosely-spaced transitions. Programmable equalization, sampling, and detection alternatives provide optimum match to channel characteristics and permit implementation of calibrated channels. Sequence detedion accommodates a lower signal-to-noise ratio than hard thresholding of individual samples and allows significant inter symbd interference without negative consequences. Detedor supports a broad dass of partial response channels induding PR4 (1,7) and EPR4 (1,7). Error tolerance features support the higher soft error rates and higher defed densities encountered at higher recording densities. Provides significant implementation and performance benefits over conventional peak detedion. One Two bit NRZ Data interface connects to a broad range of Disk Controllers. Channel Quality circuit allows automatic calibration of HDA and channel. 70 106 CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel TABLE OF CONTENTS CL-SH3300 Sampled Amplitude Digital R/W Channel f-frnf fC f f~V \ r 7. PERFORMANCE SPEαFICAΗONS 7.1 Gain Control 72 Timing Recovery 8. INmALIZATION CONDITIONS 9. REGISTER DESCRIPTIONS 10. GLOSSARY 11. ORDERING INFORMATION 12. PACKAGE INFORMATION CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 1. INTRODUCTION 1.1 Overview The SH3300 Sampled-Amplitude Digital Channel provides a highly flexible, highly integrated sampled amplitude read/write channel which supports NRZ data rates up to 40 MBits/sec. The SH3300, imple¬ ments the frequency synthesizer, variable gain amplifier, tunable analog filter, analog-to-digital converter, write precompensation, and servo demodulation functions in the analog domain, and provides digital gain and offset contrd, timing recovery, equalization, sequence detedion, RLL (1,7) encoding and decoding, error-tolerant synchronization, and channel quality measurement in the digital domain.The SH3300 is compatible with hard-sedored magnetic disk drive applications employing embedded servo techniques. The high degree of programmability of each of these functions allows the SH3300 to support highly adap¬ tive channels tailored for each drive, head, and zone. The fomiat of a typical sedor containing one embedded servo area is shown in Figure 1.1-1. During a read(write) operation, the Disk Controller reads the offset of the servo area from the ID. It deasserts Read(Write) Gate after the specified number of bytes have been processed and reasserts ft after a pro¬ grammed number of bytes equal to the length of the servo area. The SH3300 , together with an extemal servo decoder reads and decode the servo bursts and servo data. | ftfr£AMBL6 | &YNC | lb |CRC |feE>UCE [PREAMBLE |SYNC |DATA | SERVO [ SPUCE [ PREAMBLE [SYNC |OATA |sfruCE | Figure 1.1-1. Typical Sector Format The fomiat of a typical six-byte ID is shown in Figure 1.1-2. The Flag/MS_Split byte contains bits control¬ ling split-field operations, end-of-track, and defective sedor, and the most-significant bits of the split field count. The LS.Split byte contains the least-significant bits of the split field count. The split field count specifies the number of bytes between the start of data and the start of the embedded servo area. Figure 1.1-2. Typical ID Format .2 Key Feature* One-bit or two-bit NRZ Data interface Rate 2/3 RLL (1 ,7) recording code Digital Gain Control Digital Timing Recovery Digital Offset Control Digital Equalizer Sequence Detedor Digitally controlled VGA with separate offset cancellation control 7th order Equi-ripple filter with programmable cut-off and boost CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 60Msamples/s 6-bit flash A to D converter Write precompensation support for 101 pattem Standard servo peak demodulator supports up to 4 servo bursts Error-tolerant synchronization Programmable gain, timing, offset, equalization, sampling, and detection alternatives Channel quality drcuit for channel calibration and error rate estimation Erasure pdnter generation Support for mondittiic, composite, thin-film, MIG and magneto-resistive head technologies Intelligent power management 110 -- CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 2. PIN INFORMATION The following conventions are used in the pin assignment tables. Asterisk ( * ) denotes a negative true signal. (I) indicates an input pin. (O) indicates an output pin. (OD) indicates an open-drain output pin. (I/O) indicates a bidirectional pin. All unused inputs must be tied to the inadive state, VDD or GND. 2.1 Microcontroller Interface Pins I MC* INTEL/MOTOROLA: This signal seleds the microcontrol¬ ler interface to be used. When this signal is high, it selects the Intel bus control interface. When this signal is low, it selects the Motorola bus control interface. An internal pul¬ lup allows this signal to be legally "floated" to seled the default Intel bus control interface. WR7R-W* WRITE STROBE/READ.WRITE: When l/MC* is high, this signal is WR'; when CS * and WR * are asserted, the data on the AD bus will be written to the spedfied register. When l/MC* is low, this signal is R-W*, which determines the direction of data transfer when accessing the SH3300's registers. When CS* and DS are asserted and R-W* is high, a register read operation is in progress. When CS* and DS are asserted and R-W* is low, a register write oper¬ ation is in progress. ALE/AS ADDRESS LATCH ENABLE/ADDRESS STROBE: On the trailing edge of this signal, the SH3300 latches the address present on the AD or A bus, as seieded by M NM * . RDVDS READ STROBE DATA STROBE: When l/MC* is high, this signal is RD*; when CS* and RD* are asserted, the data from the spedfied register will be driven onto the AD bus. When l/MC * is low, this signal is DS, which determines the data timing of a register access. When CS* is asserted and R-W * is high, the rising edge of DS indicates when the SH3300 may start driving data onto the AD bus. When CS * is asserted and R-W* is low, the trailing edge of DS indi¬ cates when the SH3300 may latch data from the AD bus. M/NM * MULTIPLEXED/NONMULTIPLEXED: When this signal is high, AD<7:0> is the multiplexed address/data bus and A<7:0> is the latched address output bus. When this signal CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC is low, AD<7:0> is the data bus and A<7:0> is the address input bus. An internal pullup allows this signal to be legally "floated * to seled the default multiplexed bus mode of oper¬ ation. RDY/DTACK * OD READY/DATA ACKNOWLEDGE: When l/MC * is high, this signal is the microcontroller Ready line; when this signal is deasserted, the local microcontroller shall insert wait states to allow time for the SH3300 to complete the requested access. When l/MC * is low, this signal is the Data Acknowl¬ edge signal; this signal is asserted when the SH3300 has completed the requested access. AD<7:0> I/O MICROCONTROLLER ADDRESS/DATA BUS: When M NM * is high, AD<7:0> is the multiplexed address/data bus. When M/NM * is low, AD<7:0> is the data bus. A<7:0> I/O MICROCONTROLLER ADDRESS: A<7:0> its the address input bus used to determine the register location to be accessed. In demultiplexed mode register location should be input on A<0:7>. In multiplexed mode A<7:0> are nd used and should be tied to ground. Note that in multiplexed mode the SH3300 does not provide a a latched address output MCLK MASTER REFERENCE CLOCK: This input is used to derive the synthesized dock output and WCLK during a write 2.2 Preamp Interface Pins/Diagnostics SYMBOL PIN TYPE DESCRIPTION CL-SH3300 ΌRRUS LOGIC Sampled Amplitude Digital R/W Channel 2.3 Servo Interface Pins SYMBOL PIN TYPE DESCRIPTION SVENC 3:0> I SERVO ENCODE: Encoded servo command field. This field contains encoded servo commands for gating the burst sample and holds, indicating the presence of the servo fields, causing the servo sample and hdds to reset etc. See the section on servo operation for a list of encodes.. SVREF I/O SERVO REFERENCE: This pin serves either as an input for an extemal reference or it will provide a reference that can be used externally. The ABCD values will be refer¬ enced to this voltage and will always be above this vdtage. If the burst output pins are used in the A-B and C-D modes, then the levels on these pins will be above or below the ref¬ erence. 2.4 Disk Controller Interface Pins SYMBOL PIN TYPE DESCRIPTION RG/RG* I READ GATE: When this signal is asserted, the read path drcuitry is enabled. WG/WG* WRITE GATE: When this signal is asserted, the write path drcuitry is enabled. NRZ<0> l/O NON-RETURN TO ZERO BIT 0: In One-Bit NRZ Mode, this pin serially transmits(receives) the least-significant LOGIC unencoded read(write) data bit to(from) the Disk Control¬ ler. In Two-Bit NRZ Mode, this signal transmits(receives) the least-significant unencoded read (write) data bit to(from) the Disk Controller. This pin is in the high impedance mode H RG/RG* is inactive. NRZ<1> I/O NON-RETURN TO ZERO BIT1: In One-Bit NRZ Mode, this pin is driven into the high-impedance mode. In Two-Bit NRZ Mode, this signal transmits(recefves) the most-signifi¬ cant unencoded read (write) data bit to(from) the Disk Con¬ troller. This pin is in the high impedance mode if RG RG* is inadive. RRCLK READ REFERENCE CLOCK: This signal is used to dock NRZ to and from the Disk Controller. During a disk read operation, the RRCLK signal is used by the disk controller to strobe read data from the SH3300 into the controller. During a write operation, the RRCLK signal is used to dock data out of the disk controller. WCLK WRITE CLOCK: During a disk write operation this signal is used to dock data into the SH3300. WCLK can either be generated directly from the RRCLK output tied back into the WCLK input, or from a WCLK If one is supplied by the disk controller. SEQ_OUT SEQUENCER OUTPUT: This signal is connected to the Sequencer Output of the Disk Controller. It is used to con¬ trd the Synchronization Mark Recovery Mode and the Path Memory Length. 2.5 Power, Ground, and Miscellaneous Pins SYMBOL PIN TYPE DESCRIPTION 2.6 Pin Diagram 64 Pin VQFP pinout is <TBD>. 3. REGISTER TABLES <TBD> 4. FUNCTIONAL DESCRIPTION The major functional blocks of the SH3300 indude: NRZ Data Interface Transition Detedor Gain Control and Variable Gain amp Timing Recovery and VCO Flash A D converter Digital Equalizer/Spectral Smoothing Filter Analog equalizer Sequence Detedor Synchronization Mark Detedor RLL Encoder/Decoder Serial Control Interface Channel Quality 4.1 Write Operation When Write Gate is asserted, the Disk Controller must first emit a number of bytes on the NRZ Data in¬ terface equal to the desired length of the preamble. When fed with repeating hex '88', 'FF, or 'D3' NRZ bytes, the RLL Encoder in the SH3300 encodes them to create a '1010...', '100100...', or '10001000...' preamble pattem, respectively, which it emits on the Encoded Data interface. After it has transferred the desired number of preamble bytes, the Disk Controller must emit a number of hex '00' bytes on the NRZ Data interface equal to the Synchronization Mark Length. After it has transferred the proper number of synchronization bytes, the Disk controller must emit data bytes on the NRZ Data interface. If the Data Randomizer is enabled, the data bytes are randomized to equalize the probability of occurrence of worst- case patterns. The RLL Encoder in the SH3300 encodes the data bits and the encoded data bits are emit¬ ted on the Encoded Data interface. The preamble bits, Synchronization Marie bits, and encoded data bits are all processed through the SH3300 write precompensation drcuitry and transmitted to the write head. 4.1.1 Write Precompensation Due to the nature of the Sequence Detedor, which takes linear intersymbd interference Into account when calculating path metrics, write precompensation for linear intersymbol interference is not required. However, demagnetizing effects during write can cause a shift in the location of a transition which is very dose to the preceding transition. The SH3300 provides write precompensation to counter this effect It examines the sequence RLL-encoded bits for '101' and retards the second transition in all such se¬ quences by a programmade amount CL-SH3300 —= « _ « = Sampled Amplitude Digital R/W Channel ^=Ξ^sF lIRRUζ LOC\C 42 Read Operation During a read operation, the SH3300 passes the signal from the read/write preamplifier through a vari¬ able-gain amplifier and a tunable active filter, then generates digital samples from a six-bit flash analog- to-digital converter. The samples are fed to the programmable digital equalizer which further conditions the signal. The sample points of the analog to digital converter are determined by an osdilator intemal to the SH3300 whose frequency/phase is controlled to maintain proper sampling. The digitally-equalized samples are fed to the Sequence Detedor in the SH3300. The output of the Sequence Detedor is used to deted the Synchronization Mark and to feed the RLL Decoder, whose output is the NRZ data which is transmitted to the Disk Controller on the NRZ Data interface. 4.2.1 Number Representation and Arithmetic The two's complement number system is used wherever negative and positive numbers must both be rep¬ resented. The output signal samples from the analog-to-digital converter are six-bit twos complement numbers interpreted as having a binary pdnt after the second most significant bit SX.XXXX. Thus the range of representable numbers is from -2 to +31/16 in steps of 1/16. Note that the binary point is "virtual*, having no existence in silicon. Rounding and truncation are performed as considered appropriate in each internal operation. In some cases, intermediate results are carried with greater predsion than the final result Overflow is guarded against by saturating summers, by algorithmic bounds, or by probability of occurrence as appropriate in each intemal operation. 4.3 NRZ Data Interface The SH3300 NRZ interface can be operated in one bit or two bit NRZ mode, via the NRZ<0 and NRZ,1> lines. In one bit mode the NRZ<0> line is used, and the NRZ<1> line is in a high impedance mode. . The One-bit NRZ Mode allows the SH3300 to connect to a disk controller which uses a one-pin serial NRZ data interface. When in the One-Bit NRZ read Mode, the SH3300 outputs a 2/3 channel rate dock (RRCLK) synchronous to the recovered read data. This RRCLK signal is typically conneded to the RRCLK input of the disk controller. In two-bit NRZ read mode, the RRCLK is a 1/3 channel rate dock, and two bits of NRZ data (on NRZ<1> and NRZ<0> are docked each cyde. A WCLK signal input is provided to dock write data into the SH3300 during a write cycle. The WCLK signal be used in two ways. First, it can be conneded to the RRCLK developed by the SH3300. It is the resonsibility of the designer to ensure that the time taken for the disk controller to output write data (relative to the RRCLK input), does not violate the write data in to RRCLK setup and hold specifications of the SH3300. Some high performance disk controllers supply a WCLK which is used to strobe data out of the controller during a write. Connecting this WCLK to the WCLK input of the SH3300 can provide timing advantages in the design, since the WCLK out to write data out timing relationships of the controller can be more pre- idsely controlled, easing the timing constraints at the SH3300 inputs. In one-bit NRZ write mode, the SH3300 accepts NRZ data on NRZ<0>, docked by WCLK. In two-bit NRZ write mode, the SH3300 ac¬ cepts NRZ data in parallel on NRZ<1> and NRZ<0> clocked by WCLK 4.4 Transition Detector Gain Control and Timing Recovery both require information about the locations of transition responses in the sample stream. Because the gain and timing loops cannot tolerate the delay of the sequence detec¬ tor, a simple transition detector is provided. This transition detedor is not normally used for data recovery, although its output may be selected in place of the sequence detedor output by setting a control register bit The peak qualification threshold, V, is also stored in a contrd register. Table 4.4-1 shows the condi¬ tions which must be satisfied to deted a transition during sample period n under various conditions, where: Y * is the signal sample for period i, and V is the Qualification Threshold. The qualification threshold should be set high, after which its appropriate value can be determined by cal¬ ibration. For an isolated transition response sample sequence of (a,b,1,c), the transition detedor indicates a tran¬ sition when it receives the fourth sample (c). The choice of either condition (3a) or (3b) during center- sampled acquisition is determined by a contrd register bit. Condition (3a) must be used with a '1010...' acquisition pattem; condition (3b) is intended for use with a '10001000...' acquisition pattem. Either may be used witha 100100 acquisition pattem. Table 4.4-1 Transition Detedion Rules CL-SHUOO Sampled Amplitude Digital R/W Channel 'CIRRUS Loac 6.3.6 Operational Timings 6.3.6.1 Read Synchronization Operation (Eight Bit NRZ Interface) RBCLK SBD* * | 9.3.6.2 Write Synchronization Operation (Eight Bit NRZ Interface) WG* | ■ fr WBCLK NRZ<7:0> 118 Figure 4.5.1. Gain Loop for data and servo I a, b, and c are Detedor Levels 1 , 2, and 3, and T| is 1 when a transition is deteded during sample period I and pulse shape compensation is enabled, 0 otherwise. The nominal value of the Gain Set Pdnt for side sampling is (1 + b); for center sampling, it is (1). The appropriate value of the Gain Set Pdnt for normal operation is determined during calibration. Varying the Gain Set Point may be a suitable tod for retry strategies. For example, a larger Gain Set Point could be used to hold the gain artificially high, which might tend to compensate for drop-out errors (at some cost in signaJ-to-noise ratio). Note that the Gain Set Pdnt affeds the loop gain and gain margin of the Timing Recovery drcuit Table 4.5-1 Gain Eπor 4.5.2 Gain Compensation Compensation in the Gain Control loop for data reads is accomplished with a digital filter whose stmdure may be represented by Figure 4.5-1. The adder is designed to saturate rather than wrap on over/under flow. CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Figure 4.5-1 Gain Contrd Loop Compensation The z-domain transfer function of this filter is Fg (z) = z - 1 Cg is the loop filter coeffident and r 1 represents a delay of two channel bit intervals (2/f s ) because this digital filter operates at one-half the channel sample rate. Coeffident Cg is independently programmable for acquisition and tracking and for servo and data. A linear discrete-time approximation to the open-loop transfer function of the Gain Control loop is Gg (z) = a g where Kg is the gain of the gain detedor (equal to one), K a is the control gain of the VGA (equal to 0.25dB LSB, C is the gain of the compensation filter, and n is the number of (2/f s ) dock delays <TBD> in the loop. This model can be used to predid the acquisition settling time and the tracking bandwidth of the loop for a given filter coeffident Cg. CL-SH3300 ' CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 4.6 Timing Recovery The Timing Recovery drcuit controls the Read Clocks, which are synchronized to the read waveform. The Read Clocks are generated from a clock produced by a variable frequency osdilator (VFO) which is used to dock an analog-to-digital converter (ADC). A phase detector drcuit digitally computes the phase error in the ADC sampling instants from the sample values. The sequence of measured phase errors is digitally filtered in the SH3300 to produce a frequency control signal which is fed back to the VFO. The digital value is converted via a DAC to an analog signal which acts to offset the VFO from its center fre¬ quency to establish the corred sampling frequency and phase. The phase detedor, filter, VFO, and ADC together form a phase-locked-loop. The Timing Recovery circuit is designed so that the digital control will saturate instead of overflow or underflow. The Timing Recovery drcuit provides four modes: tock-to-reference, acquisition, tracking, and hdd. In lock-to-reference mode, a digital phase frequence detector is used to lock the read VFO to the frequency synthesizer dock, ensuring small frequency error when acquisition mode is entered. In acquisition mode, which is automatically entered on the leading edge of Read Gate, the loop has been programmed to respond quickly in order to allow fast acquisition over the preamble. To further decrease acquisition time, a zero-phase start capability is included. Timing frequency and phase are assumed to have been acquired a programmable number of clocks after the leading edge of Read Gate. The Timing Recovery drcuit then switches to a low-bandwidth tracking mode in which the loop has been programmed to respond more slowly in order to minimize timing errors over data due to ndse. This change in response is accomplished by switching to another set of loop filter coeffidents. In hold mode, which is entered while Read Gate is deasserted, Timing Recovery action is suspended, allowing the digital contrd to "coast" at its current frequency e.g. over gaps. Figure 4.6.1 Timing Recovery Loop CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 4.6.1 Phase Detector The Phase Detedor calculates the difference in phase between the desired and adual sampling instants. A timing update is made whenever a transition is detected. The timing update value is positive when the ADC is strobed late, indicating that the VCO frequency should be increased. The timing update value is negative when the ADC is strobed eariy, indicating that the VCO frequency should be decreased. Table 4.6-1 shows the equations used to calculate the phase error when a transition is detected during sample period n, where SGN(x) is +1 for x GTE 0, -1 for x LT 0, Yj is the signal sample for period i, t a is the acquisition Timing Set Pdnt, tj is the tracking Timing Set Point, a, b, and c are Detedor Levels 1 , 2, and 3, and T- is 1 when transition is deteded during sample period i and pulse shape compensation is enabled, 0 otherwise. The Timing Set Point is used to accommodate pulse asymmetry. Table 4.6-2 shows the nominal values of t a and t ( . The appropriate values of the Timing Set Pdnt for normal operation are determined during calibration. Varying the values of the Timing Set Pdnt may be a suitable tool for retry strategies. Table 4.6-1 Phase Error CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel Table 4.6-2 Nominal Timing Set Pdnt 4.6.2 Timing Compensation Compensation in the Timing Recovery loop is accomplished with a digital filter whose stmdure may be represented by Figure 4.6-1. Figure 4.6-1 Timing Recovery Loop Compensation CL-SH3300 =^ __ Sampled Amplitude Digital R/W Channel ^ΞΞSJ^^ΞI S Ω f" The z-domain transfer function of this filter is Where z' 1 represents a delay of two channel bit intervals (2/f s ) because this digital filter operates at one- half the channel sample rate. A linear discrete-time approximation to the open-loop transfer function of the Timing Recovery loop is where Kp is the gain of the phase detedor (1 to 2 depending on pulse shape), K- is the contrd gain of the VCO (effedively 1 2 for this model), and n is the number of (2/f s ) dock delays <TBD> in the loop. This model can be used to predict the acquisition settling time and the tracking bandwidth of the loop for a given pair of filter coeffidents c-j and C . Given detector levels a, b, and c, the gain of the phase detedor may be computed as Kp - 1 + b -3 * (a + c)/2 for side sampling. For center sampling, the gain of the phase detedor is K p - 2 • 2*a/3 • (b + c)/2. The coeffidents c1 and c2 can each have two values, for acquisition/tracking. Additionally, the filter accu¬ mulator can be initialized at the start of acquisition with either an initial coefft. or the previously saved ac¬ cumulator value at the end of the last data field. 4.7 Offset Loop The offset loop in SH3300 is a dosed loop system that acts at the VGA to minimize offsets at the output of the A/D. The offset is controlled by a coarse DAC set statically through registers.. The dosed loop con¬ trol is through a fine DAC that is controlled by averaging the digital samples to ensure that positive and negative transitions are forced to be equal. Any difference in positive and negative transition amplitudes will be interpreted as an offset The loop may be disabled by setting the filter parameter Coffset to zero. The loop also serves to lessen the effed of 1/f noise in the VGA. Figure 4.7-1 shows the stmdure of the offset loop The coeffident Coffset can be independently set for acquisition/tracking. Additionally the filter accumula¬ tor can be initialized at the start of acquisition with either an initial coefft or the previously saved accumu¬ lator value at the end of the last data field. 124 -- 4.8 Digital Equalizer The digital equalizer can modify the equalization done in the analog filter and, along with it, provides sup¬ port for changing equalization needs from head to head and zone to zone. The equalizer parameters are loaded by the microcontroller at initialization and during seeks. Using the Channel Quality drcuit, a procedure is provided whereby the microcontroller can adapt the equalizer pa¬ rameters. The intent of this feature is to allow the microcontroller to find the best parameter sets (those which pro¬ duce the minimum error rate) for each disk drive, head, and zone. Since parameter optimization is a slow process, it is done only during manufacturing test andtor during idle times. During servo processing, under control of the SVEN input, the filter coeffidents will become those previously programmed in the servo coefft. registers CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Figure 4.8.1 shows the stmdure of the Digital Filter. Furthermore, the digital filter outputs go into a programmable gain stage (re-scaler) which offers program¬ mable gain values of 0.5, 1 and 2. Again these values can be set independently for data and servo. Each of the side coefficients can be independently set Table 4.8.1 Digital filter coeffidents I Figure 4.8-2 shows the Digital Filter amplitude response vs. frequency 8 7 126 - - Figure 4.8.2 Digital Filter Response 4.9 Spectral Smoothing Filter The Spedrai Smoothing filter is designed to lessen pole-tip effects when using thin-film heads, or second¬ ary gap effects when using MIG heads. The filter employs a center tap and two groups of side coefficients separated by programmable delays. The entire filter or just its precursor-correcting portion can be dis¬ abled. Fig 4.7.2 shows the Spedrai Smoothing Filter. The delays n1 and n2 can be independently set from 2 to 23 delay instances. Figure 4.9.1 SFilter The coeffidents C1 and C2 have the same sign, + or -. The coefficients C4 and C5 have the same sign + or - each coeffident can be independently programmed 0, 1/32, 1/16 4.10 Analog Equalization The analog equalizer is a 7th order equi-ripple filter with 0.05 degree phase ripple. The filter has program¬ mable cut-off and boost. The cut-off frequency is determined by two parameters. First, an extemal crystal reference that will typically be at the inside diameter NRZ rate, and secondly, by an 8-bit register that pro¬ grams the unboosted cut-off frequency of the filter elative to the crystal frequency. The crystal frequency (fc) may be set between 10MHz to 30MHz, and the cut off may be varied in two ranges. The first range is from 3 to 15 MHz and the second range from 6 to 30 MHzc. The high frequency boost capability is a max¬ imum of 12dB, above the DC amplitude value. This boost can be varied by programming a 4-bit register. CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC Figure 4.10.1 Analog Filter response 4.11 Sequence Detector Partial response is a communications and recording technique used to recover, as much as is practical, the loss associated with inter-symbol interference (ISI). Partial response models for magnetic recording channels are typically defined by polynomials of the form (1 - D)*(1 + D) N where D represents a unit delay. The (1 - D) fador can be assodated with differentiation by the transduc¬ er and the (1 + D) N factor defines the intersymbol interference. N would be zero for a recording channel without intersymbol interference. N is one for Partial Response Class IV (PR4) and two for Extended Par¬ tial Response Class IV (EPR4). Higher orders of (1 + D) are also possible with SH3300 and are tabulated below. . The expansion of (1 + D) N defines the sample points of an isolated pulse. Note that when N is even there is a sample at the center of the isolated pulse and that when N is odd all samples are on the sides of the isolated pulse. We can take a more general view of the polynomial by varying coefficients. For example, replace the side coeffidents of [1/2 1 1/2] with K to obtain [K 1 KJ. As K varies from 0 to 1/2, the response changes from that assodated with the polynomial (1 • D) to that associated with (1 • D)*(1 + D) 2 . The corresponding time and frequency responses are shown in Figures 4.8-1 and 4.8-2, respectively. Similarly, replace the side coeffidents of [1/3 1 1/3] with K to obtain [K 1 1 KJ. As K varies from 0 to 1/3, the response chang¬ es from that associated with the polynomial (1 • D)*(1 + D) to that assodated with (1 - D)"(1 + D)3. The corresponding time and frequency responses are shown in Figures 4.8-3 and 4.8-4, respectively. We need not equalize strictly to a target defined by (1 - D)*(1 + D) N ; a pulse shape in between may be a better match to a particular channel. CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel At significant user densities, the signal-to-noise ratio required for the sequence detector to produce a giv¬ en error rate is generally several dB lower than that required for digital peak detedion. This advantage is generally greater for negatively-correlated noise, which is enhanced when high-frequency boost is em¬ ployed to slim the pulse shape, and generally less for positively-correlated ndse. Figure 4.11-1 Figure 4.11-2 Figure 4.11-3 Figure 4.11-4 Figure 4.11-5 shows the Sequence Detector, which reconstructs the channel-bit stream from the analog- and digitally-equalized samples not on a bit-by-bit basis from each sample in turn but rather with regard to both the current sample and the surrounding sequence of samples according to a decision rule which produces near-maximum-likelihood detection. The detection algorithm determines the best sequence of RLL 1's and O's corresponding to the pattem of samples. Figure 4.11-5 Sequence Detedor The Sequence Detedor can be programmed to operate on any channel response which can be well rep¬ resented by sequences of the form [a b 1 cj. center sampled pulses nominally have a<b-c< 1 side sampled pulses nominally have a < l,b- l, c < l CL-SH3300 ==__ Sampled Amplitude Digital R/W Channel -^s^ss^fippi ic IDCIC Using the Channel Quality drcuit, a procedure is provided whereby the microcontroller may adapt the de¬ tedor sample levels. The intent of this feature is to allow the microcontroller to find the best detector sam¬ ple level sets (those which produce the minimum error rate) for each disk drive, head, and zone. Since parameter optimization is a slow process, it is done only during manufaduring test and/or during idle times. 4.12 Synchronization Mark Detection The error-tolerant synchronization strategy implemented in the SH3300 is designed to achieve a level of error tderance for the synchronization fundion equal to that achieved for the data field by the combination of the Sequence Detector in the SH3300 and the error corredion code implemented in the Disk Controller. This strategy employs an error-tolerant Synchronization Mark pattem which is seieded for minimum cross-correlation with the preamble and for minimum auto-correlation. The length of the error-tolerant Synchronization Mark and the number of four-channel-bit groups which must be detected are program¬ mable. When Read Gate is asserted, the SH3300 begins to emit all zeros on the NRZ Data interface. When the SH3300 enters tracking mode as specified by the Acquisition Length, it begins to attempt to deted the Synchronization Mark Threshold. When the Synchronization Mark Threshdd is met, the SH3300 emits a hex OD' byte over the NRZ Data interface .followed by decoded data bits after the synch field.. Win¬ dowing of the detedion of the Synchronization Mark is performed in the Disk Controller using ttie known length of the preamble and Synchronization Mark. The Synchronization Marie Recovery procedure may be used to recover data when a severe defed has destroyed the entire Synchronization Mark. To use this mode, the Disk Controller asserts the Sequencer Output signal before Read Gate. The SH3300 first goes through a normal gain and timing acquisition pro¬ cedure while counting channel bits. The Synchronization Marie is assumed to have been detected when the count matches the Synchronization Marie Recovery Count By varying the Synchronization Mark Re¬ covery Count, the microcontroller can vary the assumed starting point of a header or data area until the correct starting point is tried, whereupon the sedor will be recovered if there is no other error beyond the capability of the error corredion code in the Disk Controller. A conservative strategy to limit the probability of miscorrection would be to limit error corredion to a single burst when the Synchronization Mark Recov¬ ery procedure is used. 4.12.1 Synchronization Mark Pattem The RLL-bit pattem of the error-tolerant Synchronization Mark is programmed by the user in the Synchro¬ nization Mark Pattem registers. Cirrus recommends the patterns shown in Table 4.9-1. CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel I Table 4.9-1 Recommended Synchronization Marie Patterns Acquisition Synchronization Marie Pattem pattem 1010 10010010 10001001 00010001 01010010 10000100 101010101 100100...... TBD 10001000... TBD When the Synchronization Mark Length is programmed for one, two, or three NRZ bytes, the first twelve, twenty-four, or thirty-six bits, respedivety, of the pattem are used. When the Synchronization Marie Length is programmed for one, two, three, or four bytes, the Synchronization Mark Threshold should be programmed to require error-free detection of three, four, six, or nine four-channel-bit groups, respective¬ ly, in normal operation. 4.13 RLL Encoder/Decoder During Write operations, NRZ data bits are input from the Disk Controller and encoded according to the rules of a rate 23 RLL (1,7) code. The encoded RLL channel bits are then transmitted after write pre¬ compensation to the write head. During Read operations, channel bits are output from the Sequence Detedor and decoded according to the rules of the RLL (1 ,7) code. The decoded NRZ bits are then output to the Disk Controller. The RLL (1 ,7) code can be encoded using one data-word look-ahead and one channel-bit look-back, and can be decoded using one channel-word look-ahead. Table 4.10-1 shows the encode/decode mapping; x means the complement of the preceding channel bit. The maximum length of an NRZ error burst caused by a single RLL drop-out, drop-in, or bit-shift error is five NRZ bits. Table 4.10-1 RLL (1 ,7) Encode/Decode Mapping CL-SH3300 ^^—^ Sampled Amplitude Digital R/W Channel - ^^ss^ClRRU LΩCIC Note that '1010...', '100100...', and '10001000...' acquisition patterns are encoded from repeated hex '88', "FF, and 'D3' bytes, respectively. 4,13.1 Data Randomizer The RLL Encoder/Decoder also includes a Data Randomizer which processes unencoded user data to insure that channel bit patterns with worst-case pattem sensitivity occur no more frequently than would be expeded from random user data. The Data Randomizer employs two linear feedback shift registers. One generates a 63-bit sequence which is EXCLUSIVE-OR-ed against the MSB of each pair of data bits. The other generates a 127-bit sequence which is EXCLUSIVE-OR-ed against the LSB of each pair of data bits. The Data Randomizer does not affed error propagation. When the Data Randomizer is enabled, the probability of encountering any specific pattem of length n channel bits at a randomly seieded location within encoded data is approximately 1 2 n . 4.14 Erasure Pointers Normally, NRZ data bits are transmitted over the NRZ bus. When erasure pointer generation is activated, erasure pointer bits are transmitted instead. Erasure pointer bits are generated by the detection of max¬ imum mn-length constraint violation in the RLL Decoder. An erasure pointer bit in a given byte could in- (ficate the existence of an error in that byte, a previous byte, or a fdlowing byte. 4.15 Channel Quality The nature and quality of the channel comprising the heaoVdisk interface, preamp, tunable adive fitter, ADC, and digital equalizer can be measured with the Channel Quality drcuit, which is provided so that the variable channel parameters (e.g. analog and digital equalization parameters, gain and timing set points, gain contrd and timing recovery coefficients, and detector levels) may be adjusted to provide the lowest possible error rate. The Channel Quality drcuit provides two modes of operation: Pulse Measurement and Metric Measurement. Each mode requires that the sequence that was written to the medium be known as the sequence is then read. This is accomplished by generating the written sequence entirely within the SH3300 Data Randomizer. Then on read, the same sequence can be generated and used in controlling the Channel Quality drcuit. Either a pseudo-random or a repeating sequence can be gener¬ ated by leaving feedback within the Data Randomizer enabled or disabled, respectively. In the Pulse Measurement Mode, as the known sequence is read the Channel Quality drcuit measures the cumulative squared differences of those samples corresponding to one of the combinations of the nominal sample points (e.g. a, b, 1 , c, c-a, 1 -b, b-c). The source used for pulse measurement is selectable between the sampled data output of the A/D , the output of the Digital Filter, and the output of the spedrai smoothing filter. The cumulative squared differences can be used to determine the pulse shape produced by a given set of channel parameters and to adapt the channel parameters to produce a desired pulse shape. In the Metric Measurement Mode, as the known sequence is read, the Channel Quality drcuit measures the cumulative metric of the final state of the sequence. The source used for metric measurement is se¬ lectable between the sampled data output of the A/D, the output of the Digital Filter, or the output of the CL-SH3300 ΌRRUS LOGIC Sampled Amplitude Digital R/W Channel spedrai smoothing filter. The cumulative metric can be used to adapt the channel parameters and to pre- did the error rate. 4.16 Power Management The SH3300 has three basic power down modes. In idle mode, all elements are switched off. The SH3300 would typically be in idle mode when the disk has been spun down. As the disk spins up SH3300 should be switched out of idle mode. In track fdlowing mode, some elements are still powered down, but other elements are powered up to process servo bursts. The SVEN and SVRD signals are used to determine the arrival ol a servo field. Normal mode is used for full reading or writing. Table 4.16.1 shows the different elements of SH3300 and indicates if the element is off, on or under the control of an extemal signal. Table 4.16.1 SH3300 Power Down Modes CL-SH3300 Sampled Amplitude Digital R/W Clianncl 'CIRRUS LOGIC Notes: 1) Configured means the particular element has been configured adive by muxing 2) TRK means that the SH3300 is in tracking (versus acquisition) mode 3) After WG goes inadive, VGA remains active for a spedfied time to allow read amp to recover (squlelch) 4.17 Error Budget When designing a recording channel with the SH3300 , an error budget must be established. An error budget might indude the following: Media Ndse Non-linear Write Transition Shift Partial-Erasure Amplitude Non-linearity Overwrite Noise Offtrack Ndse Preamp Eledronics Noise Amplifier/filter Eledronics Ndse ADC quantization Error Misequalization Ndse Gain Error Timing Error Margin 4.17.1 Media Noise 4.17-2 Non-linear Write Transition Shift 4.17.3 Partial-Erasure Amplitude Non-linearity 134 CL-SH3300 Sampled Amplitude Digital R/W O nnel "CIRRUS LOGIC Notes: 1) Configured means the particular element has been configured active by muxing 2) TRK means that the SH3300 Is In tracking (versus acquisition) mode 3) After WG goes inactive, VGA remains active for a specified time to allow read amp to recover (squlelch 4.17 Error Budget When designing a recording channel with the SH3300 , an error budget must be established. An erro budget might include the following: Media Noise Non-Iineβr Write Transition Shift Partial-Erasure Amplitude Non-linearity Overwrite Noise Offtrack Noise Preamp Electronic* Noise Amplifier/filter Electronics Noise ADC quantization Error Misequalization Noise Gain Error Timing Error Margin 4.17.1 Media Noiae 4.17.2 Non-linear Write Tranaition Shift 4.17.3 Partial-Erasure Amplitude Non-linearity 8670 135 CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 4.17.4 Overwrite Noise 4.17.5 Offtrack Noise 4.17.6 Preamp Electronics Noise 4.17.7 Amplifier/Filter Electronics Noise 4.1 .8 ADC Quantization Error 4.17.9 Misequalization Noise 4.17.10 Gain Error 4.17.11 Timing Error 4.17.12 Margin 4.18 Servo Subsystem The servo subsystem in SH3300 is designed to provide a standard interface to the servo decoder and servo A to D system. The SH3300 servo system is responsible for peak detecting the servo preamble, ID field and track number, and passing this peak deteded digital data out to the servo decoder. The SH3300 is switched out of data mode and into servo mode by the assertion and strobing of the SVEN command on SVENC 3:0>. This command should be derived from a timer that estimates the occurence of the current servo burst from the time of the previous servo burst On the assertion of this encode, the analog filter will switch to the appropriate servo coefficients. Likewise, VGA control will be switched from data to servo. The servo preamble is acquired by the servo decoder, at which point the servo decoder should strobe in the SVRD command. This assertion of the SVRD command replaces those coeffidents appropriate to the acquisition phase of the servo burts with the set of coffidents appropriate to the servo tracking phase. Figure 4.18.1 shows the servo data recovery block diagram .The servo burst information is peak deteded in the analog domain, and output can be captured by 4 sam¬ ple and hdd circuits which drive 4 output pins. The BSAMP command controls the sampling of the peak detected output, and additionally, a DUMP command is provided to allow the user flexibility on when the CL-SH3300 • *- Sampled Amplitude Digital R W Omnnel 'CIRRUS LOGC sample and hdd drcuits will be reset. In this manner, different servo burst schemes can be accommodat ¬ ed. The peak deted block for the analog servo burst is fed from the output of the analog filter. Four sample and hdd tircuits are used to capture the output of the peak deted, under the contrd of different BSAMP arguments. These commands can be strobed as appropriate from the extemal servo timing logic. CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel CL-SH3300 Sampled Amplitude Digital R W Channel 'CIRRUS LOGIC 4.19 Calibration The sampled-amplitude channel technology employed in the SH3300 makes it possible to imdemeπt adaptive channels. These channels are calibrated in manufacturing and/or during idle times and therefore accommodate greater variation in head/media parameters. In a SH3300 implementation, many equalization and detedion parameters are under user control. These kidude: VGA DC Offset Tunable Filter Cutoff Tunable Filter Boost Gain Set Pdnt Timing Set Pdnt Gain Contrd Loop Coefficients Timing Recovery Loop Coeffidents Digital Equalizer Parameters Center/Side Sampling Detedor Levels There are many possible tradeoffs; the user deddes which parameters are fixed during development which are to be adapted during manufaduring, which are to be re-adapted during idle times, and which are to be varied during retries. Note that a different set of parameters, induding the choice of center sam¬ pling vs. side sampling, may be used for each head and zone on a given drive. F V~f r * " Figure 4.4-1 illustrates center sampling and side sampling for an isolated pulse. The a, b, and c labels refer to programmable Detedor Levels 1 , 2, and 3, respectively. Figure 4.4-1. 4.5 Gain Control The differential variable gain amplifier (VGA) in the SH3300 amplifies the differential input signal from the read preamp to a consistent level which is fed to the tunable adive filter. For data read operation, the VGA gain is controlled by a digital to analog converter (DAC) with coarse gain statically controlled by a register and fine gain dynamically controlled by the Gain Control circuit of the SH3300. The Gain Control circuit is designed for symmetrical attack and decay, and is also designed to ensure that the digital gain control will saturate and not overflow or underflow. Furthermore, the coding of the DAC control is ther¬ mometer coding, ensuring that a samll change in value cannot lead to DAC glitches in the VGA drcuit During servo read operation, the VGA is controlled through an analog gain loop that bypasses the DAC control of the VGA. The Gain Control drcuit provides three modes: acquisition, tracking, and hdd. In acquisition mode, which is automatically entered on the leading edge of Read Gate, the loop has been programmed to respond quickly in order to allow fast acquisition. Proper gain is assumed to have been established a programmable number of docks after the leading edge of Read Gate. The Gain Control drcuit then switches to a lower-bandwidth tracking mode in which the loop has been programmed to respond more slowly in order to minimize gain errors over data due to noise. This change in response is accomplished by switching to another set of loop filter coeffidents. In hdd mode, which is entered while Read Gate is deasserted, Gain Control adion is suspended, allowing the VGAC bus to "coasr at its current gain level, e.g. over gaps. Gain does not "droop * in hold mode due to the digital nature of the gain control loop. 4.5.1 Gain Detector The Gain Detector calculates the difference in amplitude between the desired and adual signal levels. A gain update is made whenever a transition is deteded. The gain update is negative when the gain is too high and positive when the gain is too low. Table 4.5-1 shows how the gain error is calculated when a transition is deteded during sample period n, where SGN(x) is 4-1 for x >» 0, -1 for x < 0, Yj is the signal sample for period i, g a is the acquisition Gain Set Pdnt value, t is the tracking Gain Set Pdnt value, LOGIC Analog Parameters CL-SH3300 ^CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 5.3 AC Characteristics Unless otherwise spedfied, the following timings assume that all outputs will drive one Schottky TTL load in parallel with 50 pF and all inputs are at CMOS levels. The Min and Max timings conform to the oper¬ ating ranges of power supply voltage (4/- 10 percent) and ambient temperature (0 to 70 ° C). All docks are 60/40 percent maximum/minimum duty cycle. Rise and fall times should not exceed 3 ns. CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 5.3.1 Reset Assertion Timing Parameters 5.3-2 Microcontroller Interface Timing Parameters Note: _ indicates rising edge, _ indicates falling edge. When l MC* is high, the Intel bus control interface is seieded. The timing diagrams in Sections 6.3.2.1 6.3.2.4 depid register read and write operations with this interface seieded. CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel When l/MC* is low, the Motorola bus control interface is selected. The timing diagrams in Sedions 6.3.2.5 • 6.3.2.8 depid register read and write operations with this interface seieded. 5.3-2.1 Register Read Operation in Intel Multiplexed Mode CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 5.3.2.2 Register Read Operation in Intel Nonmultiplexed Mode CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 5.3.2.3 Register Write Operation in Intel Multiplexed Mode CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 5.3.2.4 Register Write Operation in Intel Nonmultiplexed Mode CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 5.3.2.5 Register Read Operation in Motorola Multiplexed Mode CL-SH3300 Sampled Amplitude Digital R/W Clumnel 'CIRRUS LOGIC 5.3.2.6 Register Read Operation in Motorola Nonmultiplexed Mode CL-SH3300 "CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 5.3.2.7 Register Write Operation in Motorola Multiplexed Mode CL-SH3300 Sampled Amplitude Digital R/W Channel 'CIRRUS LOGIC 5.3.2.8 Register Write Operation in Motorola Nonmultiplexed Mode 670 151 - - 5-3.3 Disk Read/Write Timing Parameters One(Two) Bit NRZ Interface Disk Write Timing (One/Two Bit NRZ Interface) Read R Write 6. SPECIFICATIONS 6.1 Gain Control Acquisition Time (48 to 372) * 1/f s Typical: 48-84 Tracking Bandwidth (0to7.5e-3) * f s where f s is the sampling rate. 6.2 Timing Recovery Acquisition Time (48to372) * 1/f s Typical: 84-108 Tracking Bandwidth (le-3to2.5e-2) * f s where f s is the sampling rate. 7. INITIALIZATION CONDITIONS <TBD> LOGIC 5.3.4 Servo Bus Parameters SVEN 0100: 1/64 1100: Reserved 0101: 3/128 1101: Reserved 0110: 1/32 1110: Reserved 0111: /64 1111: Reserved 8.4 Acquisition Timing Set Point/Coefficient 1 Bits 7-5: Bits 4-0: Acquisition Timing Set Pdnt These bits specify the value (ta) used in computing phase errors during data acquisition. Range is -1 to 415/16. 8.5 Tracking Timing Set Point/Coefficient 1/Sample Phase Mode Bits 7-5: Bit 4: Sample Phase Mode ft Generate samples for a center-sampled data pulse, i.e. a < b _ c < 1; tim¬ ing is recovered using adjacent-but-one samples. 1 : Generate samples for a side-sampled data pulse i.e. a _ c < b _ 1 ; timing is recovered using adjacent samples. Bits 3-0: Tracking Timing Set Point These bits specify the value (let) used in computing is 8.6 Timing Recovery Coefficient 2 Bits 7-4: Acquisition Timing Recovery Coeffident 2. These bits detemiine the value of coef¬ fident 2 (C2da) used ty ft 6 Timing Recovery compensation loop during data acquisition. 0000: 1/512 1000: 1/32 / G/T" 8. REGISTER DESCRIPTIONS 8.1 Acquisition Gain Set Point Bits 7-4: Acquisition Gain Control Coeffident. These bits determine the value of the coeffi¬ dent (Cgrja) used by the Gain Control compensation loop during data acquisition. Those values marked with * are likely to be useful only in side sampled mode. Those values marked with ** should not be used in side sampled mode. 1/16 3/32 1/8 3/16 1/4 a β** 1/2" Reserved Bits 3-0 * . Tracking Gain Contrd Coeffident. These bits determine the value of the coeffi¬ dent (Cgdt) used by the Gain Control compensation loop during data tracking. Those values marked with * are likely to be useful only in side sampled mode. Those values marked with ** should not be used in side sampled mode. 0000: 0 1000: 1/16 0001: 0 1001: 332 ** 0010: 1/128* 101ft 1/8" 0011: 3/256* 1011: Reserved 'CIRRUS LOGIC Bits 3-0: 8.7 Timing Accumulator Initial Value Bits 7-0: The value set in this register will be reloaded into the accumulator of the timing loop filter at the statr of each data acquisition. 8.8 Timing Accumulator read register Bits 7-0: The most significant bits of the timing loop accumulator are loaded into this regis¬ ter at the end of acquisition. They can be loaded at other times by command 8.9 Gain Accumulator initial value Bits 7-0: Initial value of gain accumulator MSB's to be used at start of every data acquisi¬ tion 8.10 Gain Accumulator read only Bits 7-0: The most significant bits of the data gain loop accumulator are loaded into this register at the end of aquisition. They can be laoded at other times by command) 8.11 Offset Loop coefficient Bit 7-4: Initial value of coefficient for offset filter for data acquisition mode. Bit 3-0: Initial value of coeffident for offset filter for data tracking mode 8.12 Offset Accumulator initial value Bit 5-0: Initial value of offset filter accumulator at start of data acquisition 8.13 Offset Accumulator • read only Bit 5-0: The most significant bits of the data and servo offset Hoop accumulator are loaded into this register at the end of aquisition. They can be laoded at other times by command) 8.14 Digital Filter Coefficients: Taps 1 and 3 Bit 7-4: Data Coefficient for tap * 1. May be varied from -6/16 to 46/16 Bit 3-0: Data Coefficient lor tap #3 . May be varied from -6/16 to +6/16 8.15 Digital Filter Coefficients: Tap #2 and gain Bits 7-6: Data Tap * 2 coefficient . May be set to 1/2, 3/4, 1, 5/4. Bits 5-4:. Data Filter gain. May be set to 1/2, 1-2,1 Bits 3-2: Servo Tap # 2 coeffident . May be set to 1/2,3/4,1 ,5/4 Bits 1-0: Sen/o Filter gain . May be set for 1-2,1-2,1 Reserved 111: Reserved 8.16 Spectral Smoothing Fitter/Path Memory Control 1 Bits 7-6: Header Detedor Path Memoiy Length. These bits specify the length of the path memoiy in the sequence detedor over headers. Headers are distinguished from data by the assertion of the Sequencer Output signal. 00: Six channel bits 01 Twelve channel bits 10: Eighteen channel bits 11 Twenty-four channel bits Bit 5: acquisition transition detector option 3a,3b for data Bit 4: sign of coeffidents 1 and 2 bit 3-2: coefficient 2. May be set to 0,1/16,1/8 CL-SH3300 ___=________ Sampled Amplitude Digital R/W Channel "=^^^^ "JRRl l ~ I dTIC bits 1-0: coeffident 1. May be set to 0.1/16,1/8,1/8 8.17 Spectral Smoothing filter/Path Memory Control 2 Bits 7-6: Data Detedor Path Memory Length. These bits spedfy the length of the path memory in the sequence detedor over data. Headers are distinguished Irom data by the assertion of the Sequencer Output signal. 00: Six channel bits 01 Twelve channel bits 10: Eighteen channel bits 11 Twenty-four channel bits Bits 6-5: MUX5 Control. These bits specify the source of the signal fed to the Sequence detedor and Channel Quality drcuit Ox: Output of MUX3 10: Output of the SS Filter configured to handle only postcursor ISI 11 : Output of the SS Filter configured to handle both precursor and postcursor ISI Bits 4-0: Detedor Level 2. These bits specify the second sample value (b) for a nominal pulse. Range is 0 to 431/16. 8.22 Acquisition Length/Multiplexer Control Bit 7: MUX4 Control. This bit contrds the output of MUX4. 0: Output of Sequence Detedor. 1 : Output of Transition Detedor. Bit 6: MUX3 Control. This bit contrds the output of MUX3 during tracking; during acqui¬ sition, MUX3 seleds raw input samples. 0: Raw input samples. 1: Delayed or Filtered input samples, as controlled by the MUX1 Contrd and MUX2 Control bits. Bit 5: MUX2 Contrd. This bit contrds the output of MUX2. Note that the output of MUX2 is not used during acquisition. 0: Filtered input samples. 1 : Delayed input samples. Bit 4: MUX1 Contrd. This bit contrds the output of MUX1. Note that the output of MUX1 is not used during acquisition. 0: Filtered input samples. 1 : Delayed input samples. Bits 3-0: Acquisition Length for data. This value controls the duration, in NRZ byte times, of acquisition for Gain Contrd and Timing Recovery. The minimum value which should be used is four. Note that the total length of the preamble is controlled by the Disk Controller and should be longer than the Acquisition Length by at least one byte. CL-SH3300 Sampled Amplitude Digital R/W Channel ^=^Ξ rClRRUS LΩCIC Bit 2: MUX 1 control for servo acquisition Bits 1 -0: Reserved for future use 6-24 Control/Status Register Bit 7: Chip Reset. Assertion of this bit places the SH3300 in a reset state. This bit must be written with zero before the SH3300 can be programmed or used. Bit 6-5: Power Management Modes: Read Write, track fdlowing, idle Bit 4: Reserved • should be set to zero on write • value undefined on read Bits 3: Reserved - should be set to zero on write • value undefined on read Bit 2: Gain loop saturation flag. Set to one if saturation occurs, reset when this register is written. Bit 1 : Timing loop saturation flag. Set to one if saturation occurs, reset when this register is written. Bit 1: Acquisition Timing Recovery Register Saturation. This bit is set if the Acquisition Timin g Recovery register saturates. It is reset when this register is written. Bit 0: Tracking Timing Recovery Register Saturation. This bit Is set if the Tracking Tim¬ ing Recovery register saturates. It is reset when this register is written. 8.25 Endec/NRZ/Gatβ Control Bit 7: Read/Write Gate Pdarity Seled ft RG/RG* and WG/WG * are positive-true. 1 : RG/RG* and WG/WG * are negative-true. Bit 6: Erasure Pointer Enade 0: Normal operation; data bits are output on NRZ bus. 1 : Erasure pointers are output on NRZ bus. Bits 5-4: Data Randomizer Contrd xft Data Randomizer feedback is enabled. x1: Data Randomizer feedback is disabled; the initial contents of the Data Randomizer consitute a two NRZ-byte repeated pattem. This bit should be set only when the Channel Quality Mode is set Ox:ln'ιtialize Data Randomizer to zero. lx:lnitialize Data Randomizer to Data Randomizer Seed. Bit 3-2: Reserved for future use Bits 1-0: NRZ Mode Seled 00: One-bit NRZ Mode is used. 670 -- 161 -- 01: reserved 10: Two-bit NRZ Mode is used. 11: reserved. 8.26 Synchronization Mark Control Bits 7-6: Reserved. Bits 5-4: Synchronization Marie Length. These bits spedfy the length of the error-tderant synchronization mark. 01 One NRZ byte (twelve channel bits). 10: Two NRZ bytes (twenty-four channel bits). 11 Three NRZ bytes (thirty-six channel bits). 00: Four NRZ bytes (forty-eight channel bits). Bits 3-0: Synchronization Mark Threshdd. These bits spedfy the number of four-channel- bit groups in the Synchronization Mark Pattem which must be deteded without error in order to deted the Synchronization Marie Range is 0 to ttiree times the Synchronization Mark Length. 8.27 Synchronization Mark Recovery Count Bits 7-0: Synchronization Mark Recovery Count. These bits spedfy the number of channel bits to wait before assuming that the Synchronization Mark has been deteded and beginning to decode data. 8.28 Synchronization Mark Pattem 1 Bits 7-0: Synchronization Mark Pattem 1. These bits spedfy the first eight channel bits of the Synchronization Marie Pattem. 8.29 Synchronization Mark Pattern 2 Bits 7-0: Synchronization Mark Pattem 2. These bits spedfy the second eight channel bits of the Synchronization Mark Pattern. LOGIC 8.30 Synchronization Mark Pattern 3 Bits 7-ft Synchronization Mark Pattem 3. These bits spedfy the third eight channel bits at the Synchronization Marie Pattem. 8.31 Synchronization Mark Pattern 4 Bits 7-0: Synchronization Marie Pattem 4. These bits spedfy the fourth eight channel bits d the Synchronization Marie Pattern. 8.32 Synchronization Mark Pattem 5 Bits 7-0: Synchronization Mark Pattem 5. These bits spedfy the fifth eight channel bits of the Synchronization Mark Pattem. 8.33 Synchronization Mark Pattem 6 Bits 7-0: Synchronization Marie Pattern 6. These bits spedfy the sixth eight channel bits d the Synchronization Mark Pattem. 8.34 Data Randomizer Seed LSB Bits 7-ft Data Randomizer Seed LSB. These are the eight least-significant bits of the Data Randomizer seed. 8.35 Data Randomizer Seed MSB Bits 7-ft Data Randomizer Seed MSB. These are the eight most-significant bits of the Data Randomizer seed. 8.36 Channel Quality Control 1 Bit 7: Channel Quality Mode. When this bit is written with 'V, the Channel Quality Count and Output registers are deared. 0: Normal Operation. CL-SH3300 "CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 1: Channel Quality Mode. Bit 6: Reserved. Bit 5: Channel Quality Sign Enable 0: Channel Quality Sign State bits are ignored. 1: Channel Quality Sign State bits are used to qualify Channel Quality accu¬ mulation. When this bit is set, one and only one of the Channel Quality Error Input Control bits should be set. The purpose of this option is to allow independent measurement of the properties of positive and negative transitions. Bits 4-ft Channel Quality Sign State. These bits define the sign state of the MLSD used to qualify Channel Quality accumulation. The mapping between each of the positive and negative combinations described by the Channel Quality Error Input Control bits and the Channel Quality Sign State is <TBD>. 8.37 Channel Quality Control 2 Bits 7-5: Channel Quality Input Source. This bit controls whether squared sample errors or squared gain timing errors, or unsquared samples are accumulated by the Chan¬ nel Quality drcuit OOx: Squared EVEN sample errors plus squared ODD sample errors are accu¬ mulated. 010: Squared Gain errors are accumulated. 011: Squared Timing errors are accumulated. 1x0: Unsquared EVEN samples are accumulated. 1x1 : Unsquared ODD samples are accumulated. Bits 4-0: Channel Quality Input Contrd 12-8. These bits independently enable Channel Quality accumulation when the given combination of nominal sample values (and or the coπesponding negative combination, as controlled by the Channel Quality Sign Enable bit) are expeded. EVEN ODD 8.38 Channel Quality Control 3 Bits 7-0: Channel Quality Error Input Control 7-0. These bits independenUy enade sam¬ ples corresponding to the given combination of nominal sample values (and/or the corresponding negative combination, as controlled by the Channel Quality Sign Enable bit) to be accumulated in the Channel Quality Output EVEN ODD ΌRRUS LOGIC 8.39 Channel Quality Count LSB Bits 7-0: Channel Quality Count LSB. This value is the eight least-significant bits of t number of docks over which the Channel Quality Output was accumulated. 8.40 Channel Quality Count MSB Bits ?-0: Channel Quality Count MSB. This value is the most-significant bits of the numbe of docks over which the Channel Quality Output was accumulated. 8.41 Channel Quality Output LSB Bits 7-0: Channel Quality Output LSB. This value is the eight least-significant bits of th< Channel Quality Output word. 8.42 Channel Quality Output MID Bits 7-0: Channel Quality Output MID. This value is the second eight least-significant bits of the Channel Quality Output word. 8.43 Channel Quality Output MSB Bits 7-ft Channel Quality Output MSB. This value is the most-significant bits of the Chan¬ nel Quality Output word. 8.44 Gain Control Loop Register Bits 7-0: Gain Control Looo Register. The value read and written here is the eioht most-sio- nificant bits of the Gain Control Loop register. When this register is written, the remaining bits of the Gain Control Loop register are deared. 8.45 Acquisition Timing Recovery Loop Register Bits 7-0: Acquisition Timing Recovery Loop Register. The value read and written here is the eight most-significant bits of the Acquisition Timing Loop Recovery Loop regis¬ ter. When this register is written, the remaining bits of the Acquisition Timing Recovery Loop register are deared. 8.46 Tracking Timing Recovery Loop Register Bits 7-0: Tracking Timing Recovery Loop Register. The value read and written here is the eight most-significant bits of the Tracking Timing Recovery Loop register. All bits of this register are automatically deared at the end of acquisition. When this reg¬ ister is written, the remaining bits of the Tracking Timing Recovery Loop register are deared. All bits of the Tracking Timing Recovery Loop register are automati¬ cally deared at the end of acquisition. 8.47 Synthesizer Numerator Bits 7-0: Synthesizer Numerator. This is the m value used in synthesizing the reference dock frequency as m n times the REFCLK frequency. 8.48 Synthesizer Denominator Bits 5-0: Synthesizer Denominator.. This is the n value used in synthesizing the reference dock frequency as m n times the REFCLK frequency. 8.49 Frequency VCO Control Bits 7-4: VCO Center Frequency. This value controls the center frequency of the VCO for data. Bits 3-0: VCO center Frequency. This value controls the center frequency of the VCO for servo. IDCIC 8.50 Analog Filter Boost Control Bits 3-ft VGA DC Offset. This value is fed to a DAC which generates an offset bias current for the VGA. Nominal value is <TBD>. 8.54 Comparator Control Bits 7-4: Reserved • should be set to zero on write - value undefined on read Bits 3-0: Hysteresis Comparator Data. These bits control the hysteresis comparator during data operations. 8.55 Precompensation Control Bits ?-ft Write Precomp Time Unit. These bits determine the time delay unit used for wnte precompensation. NOTE: The write precompensation strategies required for a minimum run-length constraint of zero are more com¬ plex than those required for a minimum mn-length constraint of one. CL-SH3300 "CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 8.56 Power Control Bit 0: ADC/Read VCO Power On if Read Gate is asserted. 8.57 Mode Control Bits 7-6: VGA Disable Time. These bits spedfy how long the VGA inputs remain tied together after the trailing edge of Write Gate. 00: 0 reference dock periods. 01 : 8 reference dock periods. 11: 16 reference dock periods. 11: 32 reference dock periods. Bit 5: Write Precompensation Enable 0: Write precompensation is disabled. 1: Write precompensation is enabled. Bit 4: Write Precompensation Linearity ft Linear write precompensation is selected. 1 : Non-linear write precompensation is selected. Bit 3: Write Precompensation Constraint 0: Write precompensation for run-length constraint of zero is seieded. 1: Write precompensation for run-length constraint of one is selected. Bit 2: Sample Phase Mode 0: Controlled-phase start is enabled for center-sampled pulses, i.e. a < b_ c < 1. 1: Controlled-phase start is enabled for side-sampled pulses, i.e. a. c < 1, b_ 1. Bit 1: Servo Output Seled CL-SH3300 'CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 5. ELECTRICAL SPECIFICATIONS 5.1 Absolute Maximum Ratings (For 5v and 3.3v devices unless stated otherwise) NOTE: Stresses above those listed may cause permanent damage to the device. This is a stress rating only, and functional operation of the device at these conditions, or any conditions outside those indicated in the op¬ erational sections of this specification, is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. 5.2 DC Characteristics (digital) NOTE: All unused inputs must be tied to GND or VCC CL-SH3300 "CIRRUS LOGIC Sampled Amplitude Digital R/W Channel 9. GLOSSARY Aliasing • The phenomenon whereby energy at frequendes above one-half the sampling rate appears as energy at frequendes below one-half the sampling rate in a sampled signal. Antialiasing Filter • A filter which attenuates signal energy above a frequency of one-half the sampling rate. Autocorrelation Function • The integral _(J of the produd of a function x(t) and x(t+J; e.g J = E{x(t)_x(t+_))- For a binary sequence, this can be treated as the number of bits matching between two copies of a sequence as a function of the offset between the sequences. Calibration • The process whereby the analog and digital parameters of the channel and the detedor are matched for best performance. Channel Constraint • A limitation placed on the sequence of channel bits. For example, a RLL (d,k) chan¬ nel constraint enforces a minimum (d) and maximum (k) number of consecutive 'O's between Ts. Channel Quality • A measure of how well matched are a channel and detedor. Channel Code • A set of rules goveming the encoding of data bits to channel bits. Channel codes typically enforce a minimum run-length constraint (to limit non-linear effects) and/or a maximum run-length con¬ straint (to aid in timing recovery). Code Rate • The ratio of the number of bits in the data-bit stream to the number of bits In the channel-bit stream. For a RLL (1 ,7) code, the code rate is 2/3. Coding Gain • The produd of the code rate and the minimum distance of the encoded sequences of a code. Convdution • The convolution y(k) of sequences u(k) and h(k) is given by y(k) = _ u(m) * h(k - m) where the summation is over all m. When u(k) is the input to a filter whose impulse response is h(k), the filter output is the convolution y(k). Correlation Function - The expeded value d the produd of two random variables, which may be scalars or vectors. Dicode • Another name for Partial Response Class I (PR1). Distance - A measure of the 'difference * between two vectors. Duobinary • The partial response channel corresponding to the polynomial (1 4 D). Error Propagation - The process wherein a channel decoder emits more than one erroneous data bit due to a single channel bit in error or more generally a burst of erroneous data bits which is longer (after ac¬ counting for code rate) than the causative channel-bit error burst Error Tderant Synchronization Mark • A synchronization marie which can be deteded in the presence of error with an acceptable false detedion probability. Eudidean Distance • The square root of the sum of the squares of the differences in each dimension be¬ tween two n-dimensional vedors. CL-SH3300 ___^ Sampled Amplitude Digital R/W Channel 'riBDI fC \__OG\C Excess Bandwidth • Signal energy passed by a filter at frequendes above one-half the sampling rate. Extended Partial Response Class IV (EPR4) • The partial response channel coπesponding to the polyno¬ mial (1 - D)*(1 D)2. Eye Diagram • A graphical representation of the effeds of intersymbol interference. It Illustrates the typ¬ ical or maximum excursion of a signal from its ideal sample levels at its ideal sampling instants. It is im¬ portant to note that MLSD is not dependent on the eye being open in the same way that sample-by-sam¬ ple detedion is. Least-Mean-Square Algorithm - A procedure used in adapting the coeffidents of a digital filter in which the objedive is to minimize the mean-square error of the filter output. Maximum A Posteriori Probability Sequence Detedion (MAP) • A decoding method in which the channel bit sequence emitted from the detedor is that which, given the channel sample sequence, is the most probable written sequence. MAP maximizes the probability density fundion of the detedor output given the detedor input. Maximum Likelihood Sequence Detedion (MLSD) • A decoding method in which the channel bit se¬ quence emitted from the detedor is that with the highest probability of having produced the channel sam¬ ple sequence input to the detector. MLSD maximizes the probability density fundion of the detedor input given any possible channel input MLSD is equivalent to MAP if the probabilities of all possible written sequences are equal or if they are assumed to be equal when no information is available concerning the probabilities of written sequences. Mean-Square.Error • A measure of error in which the difference between each sample and its ideal sam¬ ple level is squared and summed. The sum divided by the number of samples is the mean-square error of the sequence. Metric • A fundion of two vedors satisfying certain properties that allow it to be interpreted as a measure of distance. Minimum Distance • The smallest distance between any two vedors in a set of vedors. Modified Duobinary • Another name for Partial Response Class IV (PR4). Noise Types: Coherent Noise • Noise which is coπelated with the signal e.g. transition noise. Cdored Noise • Noise which is coπelated between one sample instant and another. Gaussian Noise - Noise whose amplitude has a normal probability distribution. Misequalization Noise • Amplitude eπors which remain at the output of an equalizer due to Its impelled pulse-shaping. This is something of a misnomer, as this 'noise' source is predictable for a given channel transition response, equalizer, and transition sequence. Offtrack Ndse - When tracking is not perfed and the head deviates from the center of a track, the ampli¬ tude of the signal from the target track is reduced and the head picks up signal energy due to transitions on the adjacent track. Out-of-band Noise • Noise with energy at frequendes above one-half the sampling rate. CL-SH3300 "CIRRUS LOGIC Sampled Amplitude Digital R/W Channel Overwrite Noise • When erasure of previously written transitions is not perfed, the alignment d magnetic domains is not complete and uniform and the head responds to the deviations. Preamp Ndse - Eledronic ndse arising in the first stage of the head preamplifier. Due to the low signal amplitude present at the input to the preamp and the correspondingly high gain required, it is possible for preamp noise to be the dominant noise source in a read channel. Synchronous Ndse • An interfering source with a frequency equal to the sample rate or a multiple thereof. The energy of such a source is aliased to DC and can be canceled by adjusting the VGA DC Offset of the Galaxy-A. Transition Ndse • Coherent ndse caused by "zig-zag * transitions occurring on thin-film media. White Ndse - Noise which is not coπelated between one sample instant and another. Nonlinear Transition Shift • Movement in the effective location of a transition toward a very near preceding transition. This is caused by demagnetization during write. Noπn • A particular method of measuring the lengths of vedors; related to a metric. NRZ • Non-Retum to Zero refers to a bit sequence to which no run-length constraint applies. NRZI • Modified Non-Retum to Zero refers to a bit sequence to which no mn-length constraint applies but in which each '1 ' or O represent the presence or absence, respedivety, of a (magnetic) transition. NRZI sequences can be produced from NRZ sequences via a preceding process equivalent to dividing by (1 D). Partial Response Channel • A channel in which controlled intersymbol interference is allowed. In such a channel, symbols (e.g. transitions in a magnetic recording channel) are so dosely spaced that the channel begins to respond to the next symbol when only part of its response to the cuπent symbd has occurred. Partial Response Class I (PR1) - The partial response channel coπesponding to the polynomial (1 • D). Partial Response Class IV (PR4) - The partial response channel coπesponding to the polynomial (1 - D)"(1 + D). Path Metric - A cumulative measure of error maintained for a path through a decoder's state machine based on a particular norm. Preamble • A spedal repetitive pattem which is used to allow gain to be adjusted to an appropriate level arid frequency and phase lock to be acquired. The SH3300 can use a preamble pattem of '1010...' or '100100...' or '100010000..Λ Preceding • The process of encoding a sequence to account for some known property of a channel e.g. the differentiating nature of a magnetic recording channel. Raised Cosine • A form of equalization which is a more-realizable modification of the "brick wall* filter which would produce a sine pulse. It is charaderized by a transfer function H(f) defined as: H(f) * 1 forO < f < (1 - JV2 = 1 2 * [1 COS _ ** s] * [f - (1 - J 2D1 for (1 - J 2 _ f _ (1 J 2 where f s is the sample rate and _ is a parameter in the range zero to one. IdCIC Run-Length Limited Code • A code in which the minimum and maximum numbers of consecutive 'O's and/ or '1 's is constrained by a systematic rule. The notation RLL (d.k) means that no less than d and no more than k consecutive 'O's are allowed in the encoded bit stream, where O' and '1' usually represent the ab¬ sence or presence, respedivety, of a (magnetic) transition. Run-Length Vidation - An case in which a defed or ndse event has caused the occurrence of a sequence of O's and Ts which violates the mn-length constraints of the code. Split Field • A recording scheme in which the data/redundancy area of a sector is divided into two or more areas, typically by one or more areas used lor tracking contrd in an embedded-servo disk drive. State Machine • A drcuit in which the present state of a channel or system is represented by a number of bits whose values are controlled by the present values of the bits and the values of extemal signal levels or the occurrence of extemal signal transitions. Synchronization Marie • A pattem, preferably unique and different from any valid encoded channel-bit se¬ quence, used to signify the start of a header or data area. A good synchronization mark has low cross- correlation with the preamble and small autocorrelation function values at non-zero offsets, implying a low false detection probability. Sampled Amplitude Digital R/W Otannel 11. PACKAGE INFORMATION SH3300 will be available in a 64 pin SQFP package. Package drawing TBO BACKGROUND OF THE INVENTION In a computer data storage device, data is typically stored on magnetic media by reversing the magnetic flux at each "one" bit location, and maintaining the same flux direction at each "zero" bit location, called NRZI recording. When these flux reversals pass a read head they cause a voltage change in the read head. The voltage from the various flux reversals along a data track appears as a varying signal level on the output of the read head, with the voltage caused by each flux reversal appearing as a positive or negative voltage pulse. These pulses must be detected by the electronics connected to the read head, typically by detecting the peak of each pulse to determine the pulse location. Similarly, the voltage from a data transmission line appears as a varying signal level on the input to a data communication device, such as a modem, with the voltage of each bit change often appearing as a positive or negative voltage pulse. In order to separate the voltage pulses from noise in the signal, the voltage may be compared to a predetermined threshold, and only peaks whose magnitude exceeds the threshold are considered to be possible pulses. If the peaks are too small with respect to the threshold, the signal gain must be adjusted higher, and if the peaks are too high the gain must be adjusted lower. To properly determine the gain setting, pulses must be detected so that the gain adjustment can maintain the proper level for a pulse peak. Because the rotational speed of a disk may vary, a phase locked loop is used to synchronize a detector to the times of the pulses. The peaks of the pulses Caused by bit transitions must be detected in order to correct for any timing deviations. Several methods have been used to detect the pulses and thus the transitions within the data. In the prior art, peak detection circuitry has ordinarily been analog in nature, while digital detectors have ordinarily been sequence detectors such as those implementing the Viterbi method, disclosed in Application Serial Number 07/852.015. filed March 16. 1992. of Richard T. Behrens, Kent D. Anderson and Neal Glover, entitled "Method and Apparatus for Reduced-Complexity Viterbi-Type Sequence Detectors", which is incorporated herein by reference for all that is disclosed and taught therein. However, most digital pulse detectors analyze the context of the pulses, and do not detect a pulse until several samples have been taken beyond the peak of the pulse. This latency in detecting pulses is a disadvantage when the location of a pulse needs to be known in order to make timing and/or gain corrections. It is thus apparent that there is a need in the art for an improved apparatus which digitally detects pulses at the earliest possible time after the peak of the pulse occurs. The present invention meets these and other needs. gVMMARY OF THE Ϊt-JVDNTIQN • It is an aspect of the present invention to detect signal pulses caused by bit transitions within data being read from a data storage device. It is another aspect of the invention to detect signal pulses within signals received by a data communications device. It is another aspect of the invention to detect the pulses using samples of the signal wherein one of the samples occurs at a peak of the pulse caused by a bit transition. Another aspect of the invention is to detect such pulses using samples of the signal wherein samples occur on each side of a peak of the pulse and wherein no sample occurs at the peak. A further aspect is to detect a pulse within one half to one and one half sample periods from the peak of the pulse. A still further aspect is to use signal level moving averages of two samples for detection. The above and other aspects of the invention are accomplished in a digital pulse detector that uses four samples of a read signal to detect a data transition as soon as one sample beyond the time of the peak of the signal level at the bit transition. The pulse detector detects peaks by sampling at the center of the peak or by sampling at each side of the peak. The pulse detector detects pulses while tracking, where the pattern of pulses is not known in advance, or while acquiring timing lock on the signal in a preamble, where the data pattern is fixed. Thus the pulse detector provides four combinations of detection to detect in tracking or acquisition mode, using either center or side sampling in either mode. The detection rules are summarized in Table 2. In an alternative embodiment, the detector uses a moving average of two adjacent samples, as well as individual sample >r 5 signal levels, to perform the detection. The alternative embodiment uses the sampled signal levels directly to determine peaks in side sampled acquisition mode, and in center sampled tracking mode. In the other two of the combinations, the alternative embodiment detector uses two-sample moving averages to 10 determine peaks. The preamble pattern for acquisition in the alternative embodiment is restricted to be a repeating sequence of alternating polarity pulses with a period of four sample intervals. This is more restrictive than the pattern handling capability of the first embodiment, however, it permits the alternative 15 embodiment to perform earlier detection of the pulses in the side sampled acquisition case and it uses simpler rules in acquisition. The detection rules for the alternative embodiment are summarized in Table 1. Both embodiments avoid using a signal threshold to qualify the 20 pulses during acquisition. This aspect prevents the gain at the beginning of the acquisition from affecting acquisition, since the gain may be incorrect at the beginning of acquisition. During tracking, where the pulses may be more widely separated, a threshold is used to qualify pulses. This qualification prevents » 25 the detection of small noise-induced pulses as data pulses. BRIEF DESCRIPTION OF THE DRAWINGS The above and other aspects, features, and advantages of the invention will be better understood by reading the following more particular description of the invention, presented in conjunction with the following drawings, wherein: Fig. 1 shows a block diagram of the invention and the environment of the invention; Fig. 2 shows a block diagram of the circuitry that provides data samples to the invention; Fig. 3 shows a block diagram of the digital circuitry of the read channel containing the invention; Fig. 4 shows a signal waveform and illustrates center sampling of the pulses; Fig. 5 shows a signal waveform and illustrates side sampling of the pulses; Figs. 6, 7, and 8 show a high-level logic diagram of the pulse detector of the present invention for the equations of Table 1; and Figs. 9, 10, and 11 show a high-level logic diagram of the pulse detector of the present invention for the equations of Table 2. DESCRIPTION OF THE PREFERRED EMBODIMENT The following description is of the best presently * contemplated mode of carrying out the present invention. This description is not to be taken in a limiting sense but is made 5 merely for the purpose of describing the general principles of the invention. The scope of the invention should be determined by referencing the appended claims. Fig. 1 shows a block diagram of the invention and a typical environment of the invention. Referring now to Fig. 1, a computer 10 system 100 contains a processing element 102 which communicates to other elements of the computer system 100 over a system bus 104. A keyboard 106 and a display 108 allow a user of the computer system 100 to communicate with the computer system 100. A memory 110 contains programs and data which cause the computer system 100 15 to perform operations desired by the user. A disk data storage system 112 is connected to the system bus 104 for storing data and programs within the computer system 100. A disk controller 114 within the disk device 112 communicates to the system bus 104 and controls the operations of a disk drive 118, 20 possibly in conjunction with a local microprocessor (not shown) within the disk data storage system 112. The disk drive 118 performs the storage function, typically storing the data on magnetic media. A bus 116 connects the disk controller 114 to the <*- disk drive 118, specifically connecting to a write channel 120 to '25 write data onto the disk through write heads and amplifiers 128. When data is being read from the disk through the read head and amplifiers 128 the data comes back through the read channel 122 which contains the pulse detector of the present invention. The read and write heads may be physically the same heads. The data first passes through the analog section 126 of the read channel 122 and then through the digital section 124 of the read channel 122 before being sent on the bus 116 to the disk controller 114. After being processed by the disk controller 114, the data is then sent over the system bus 104 to the memory 110 where it is processed. The disk controller 114 also connects to other circuits, not shown, within the disk drive 118, such as a circuit which moves the read/write heads over the surface of the data storage media. Although not shown in Fig. 1, the pulse detector of the present invention can be used to detect pulses within data received from a transmission line, such as a telephone line or local area network, in a data communications receiver. It may also be used in any other device that must detect pulses within a signal. Fig. 2 shows a block diagram of the analog circuitry 126 of the read channel 122. Referring now to Fig. 2, when a read head is passing over a track of the data storage medium, it picks up a signal which is amplified by a preamplifier, not shown. After this preamplification, the signal 201 is passed to a variable gain amplifier 202. The signal is further amplified by the variable gain amplifier 202 and passed through an analog equalizer circuit 204, which filters the signal as desired, for example, so as to remove unwanted high frequencies and shape the remaining spectrum, to an Analog to Digital converter 206. The A to D converter 206 converts the analog signal into a digital value, providing six bits of digital information in the preferred embodiment, and then the data is passed to a register/de-multiplexer 207. In the preferred embodiment, the digital section 124 of the read channel 122 processes two samples in parallel. To create these two samples, the register/de-multiplexer 207 stores every other sample taken by the A to D converter 206. After the second sample is taken, the data from the two samples is passed to the data bus 230. The bus 230 is clocked by a single half-frequency clock signal. The timing necessary for converting the data, also called taking a sample, in the A to D converter 206 is supplied by a variable frequency oscillator 222 which is controlled by the output of a digital to analog converter (DAC) 220. The input to the DAC 220 comes from the digital section of the read channel 124 as timing feedback signal 234. The gain of the variable gain amplifier 202 is controlled through a gain feedback signal 232 which originates in the digital portion 124 of the read channel 122. The gain feedback signal 232 is input to a summing junction 210 which has a coarse gain control value as its other input. The coarse gain control can be set by the disk controller 114, or a local microprocessor within the disk drive (not shown) , to provide a nominal gain level which is then adjusted up or down by the gain feedback signal 232. After being summed with the coarse gain control value, the feedback signal is sent to a digital to analog converter 212 and then to a filter 214. Because of the nature of digital to analog converters, the output of the DAC 212 may contain glitches when it iβ changing values. Therefore, the filter 214 may be necessary to remove these glitches in the feedback signal. After being filtered, the signal is converted to an exponential value by the exponential converter block 216 and then connected to the variable gain amplifier 202. This conversion makes the small-signal gain control dynamics independent of the input signal amplitude. Fig. 3 shows a block diagram of the digital section 124 of the read channel 122 (Fig. 1). Referring now to Fig. 3, the digital data signal 230 from Fig. 2 is input to a delay circuit 304 and a digital filter circuit 302. The digital data signal 230 is also input to a multiplexer 306 whose output is connected to a second multiplexer 310 with an output that feeds the pulse detector 312 of the present invention. The output of the pulse detector 312 is connected to a gain control circuit 330 which provides the gain feedback signal 232 that connects to Fig. 2. The output of the pulse detector 312 is also connected to a timing recovery circuit 328 whose output 234 connects to the digital to analog converter 220 of Fig. 2. The output of the pulse detector 312 of the present invention may also be connected to a sync mark detector 322 and an RLL decoder 320, as shown in Fig. 3, or a more sophisticated data detector (not shown) may be connected to the sync mark detector 322 and the RLL decoder 320. The output of the RLL decoder 320 and the sync mark detector 322 are connected to the disk controller 114 (Fig. 1) through the bus 116. The pulse detector 312 of the present invention is designed to detect pulses using one of two types of sampling methods, selected by the user. The first detection method is called center sampling *' wherein one of the samples taken will arrive at or very near the center, or peak, of a pulse. The location of the sampling is 5 controlled by the timing recovery block 328 of Fig. 3. In the other method of sampling, called side sampling, the timing recovery block 328 will adjust the timing of the VFO 222 (Fig. 2) such that two samples are taken wherein one of the two samples appears on one side of the peak of the pulse and the other of the two samples 10 appears on the other side of the peak. The user of the system determines whether center sampling or side sampling is used by setting a bit in a control register through the interface 116 (Fig. 1). For either center or side sampling, sampling can occur at two 15 different times within a data record being read from the disk media. The first time sampling occurs is called acquisition, because it occurs when the gain control and timing control are acquiring the gain and timing relationships of the pulses. This occurs when the read head is passing a preamble portion of the data 20 record which always has a known data pattern to facilitate acquisition of the timing and gain. When data is being transferred, a different mode is used for the pulse detector, called tracking, since data has an irregular and a priori unknown pattern of pulses. -25 Therefore, the pulse detector of the present invention is designed to detect pulses under four separate conditions. The first condition is acquisition mode using side sampling, the second is acquisition mode using center sampling, third is tracking mode using side sampling, and fourth is tracking mode using center sampling. The pulse detector analyzes the current sample of the amplitude of the signal as well as the previous three samples of the signal amplitude. Using these four samples, Table 1 shows equations for one embodiment of the pulse detector, and Table 2 shows equations for another embodiment. In Table 1, y n is the current sample, y n ., is the first previous sample, and y n _ 2 is the second previous sample. The third previous sample is used only through the moving averages, (l+D)/2 (described below) . The equations of Table 1 will be further described below with respect to Figs. 5 and 6. Also, the equations of Table 1 show pulse detection of a pulse whose peak occurs at time y n ., for center sampling, or between y n .,, and y n . 2 for side sampling tracking mode, or between y n and y n .,, for side sampling acquisition mode. The circuits of Figs. 6-8 processes two signal samples simultaneously. The equations for the second sample are the same as the equations of Table 1, with one time delay. Thus, for example, y n in Table 1 would be replaced by y n .«,, y,,., would be replaced by y n . 2 , and y n . 2 would be replaced by y n . 3 . Fig. 4 shows a signal waveform of an isolated pulse and illustrates center sampling of the pulse. Referring now to Fig. 4, a signal waveform 402 is shown having a positive level above a baseline 404. Four samples of this waveform have been taken with the sample identified by reference 412, y n , being the most recent sample. Sample 410, y n .,, is the sample just prior to the most -' recent sample, sample 408 is the next previous sample and sample 406 is the oldest of the four samples shown. A threshold value 414 5 is also shown and the signal value of sample 410 must be greater than the threshold 414 for the pulse to be detected in tracking mode. Negative pulses would appear as a mirror image of Fig. 4. Fig. 5 shows a signal waveform of an isolated pulse and illustrates side sampling of the pulse. Referring now to Fig. 5, 10 a signal waveform 502 is shown as a positive level above a baseline 503. Four samples are shown, with the most recent sample being sample 510. Sample 508 is the sample previous to the most recent, 506 is the next previous sample and sample 504 is the oldest of the four samples shown. These samples are also identified by the 15 reference y n through y n . 3 . Also, a threshold 512 is illustrated, and sample (y n .., + y n . 2 ) / 2 must be greater than the threshold 512 to be considered a pulse during tracking. Figs. 6, 7, and 8 show a high-level logic diagram of the pulse detector 312 of the present invention. Referring now to Figs. 6, 20 7, and 8, signals 610 and 632 are received from the register/de¬ multiplexer 207 of Fig. 2 through digital data signal 230. As discussed above with respect to Fig. 2, the analog section 126 sends two samples at a time to the digital section. Signal 610, also designated y n , is the digitized value for the signal level of 35 the most recent sample. Signal 632, also designated y n . 1f is the digitized value for the signal level of the next prior to the most recent sample. In the preferred embodiment, these two signals are each six bit digital values stored in two's compleinent number representation, with one of the bits being the sign bit. Signal 610 is fed to a multiplexer 608 and signal 632 is fed to a second multiplexer 640. These multiplexers are controlled by an exclusive-OR gate 606 which has two signals 602 and 604 as its inputs. Signal 602 determines whether the pulse detector is in acquisition or tracking mode, as described above, and signal 604 determines whether the pulse detector is in center or side sampling mode, as discussed above. When the pulse detector is in acquisition and side sampling mode, or the pulse detector is in tracking and center sampling mode, signals 610 and 632 will be selected by the multiplexers 608 and 640 respectively. When the pulse detector is in acquisition mode center sampling or in tracking mode side sampling, the multiplexers 608 and 640 will c select signals 631 and 639 respectively. Signal 631 is called a (l+D)/2 signal and is formed by adding signal 610 to signal 632 in summing junction 628 and then dividing this sum by two with a divide by two circuit 630 to produce signal 631. The summing junction 628 is a six bit add circuit and the divide by two circuit 630 is a shift. The signal 631 represents the sum of the y n signal and y n ^ divided by two, therefore, it is the average of y n and y,,.,,. Circuits 634, 636, and 638 produce a (l+D)/2 signal for the previous samples. That is, delay circuit 634, which is a set of D flip flops, is used to delay the y n signal 610 by one clock cycle (two sample times) , so it becomes signal y n . 2 , which is sent to the summing junction 636. Summing junction 636 sums y n . 2 with y n ., and -• divides the result by two to produce the average at signal 639. As disclosed in Table 1, these (l+D)/2 signals are used in two of the 5 four cases that the pulse detector can decode. After passing through multiplexer 608, y n signal 610 is sent to Figs. 7 and 8 over y n signal 613. This signal is also delayed by delay circuit 617 to become y n . 2 signal 614. In addition, y n signal 613 is connected to a sign-bit circuit 616 which extracts 0 only the sign-bit from the six-bit digital value. This sign-bit is connected to an exclusive-OR circuit 618 along with the other bits of the digital value 613. Also, the sign-bit 616 is connected to another summing junction 620 along with the output of the exclusive-OR circuit 618 and a threshold value 656. The circuits 5 616, 618, and 620 convert the value of y n to an absolute value, that is, y n is negated if it was originally a negative value to produce a positive value and is unchanged if it was originally a positive value. The threshold signal 656 is then subtracted from the absolute value to produce a non-negative value if the absolute 0 value of y n is greater than or equal to the threshold. The summing junction 620 produces a negative value if the absolute value of y n is less than the threshold 656. The output of the summing junction 622 is passed to another sign-bit circuit 624 which extracts the sign bit from the result -5 and inverts it. This will indicate whether the absolute value of y n is greater than or equal to the threshold value 656. The inverted sign-bit is then sent through a delay circuit 626. The output signal 627 of the delay circuit 626 has a value of one if the absolute value of y n delayed by one clock cycle, that is, jy n . 2 j , is greater than or equal to the threshold value, and is zero if it is less than the threshold. In a similar manner, y,,., signal 642 is sent to a sign-bit circuit 644, an exclusive-OR circuit 646, and a summing junction 648. The output of the summing junction 648 indicates whether the absolute value of the y n .,, signal is greater than or equal to the threshold value 656. This result is passed through a sign-bit circuit 650 and then inverted to indicate whether the absolute value of y n ., is greater than or equal to the threshold value 656. Fig. 7 shows a high-level logic diagram of the section of the pulse detector 312 that detects pulses during data tracking. Referring now to Fig. 7, comparator circuits 702 and 704 compare the results of the last three samples taken of the signal. Y n signal 613 is the most recent sample, y n ., signal 642 is the previous sample, and y n . 2 signal 614 is the sample prior to signal 642. The outputs of the comparator 702 and 704 are connected to a number of AND gates and delay circuits to implement the tracking equations shown in Table 1. AND gate 706 determines whether a positive pulse is detected at time n (with the peak at time n-1) . Output 736 of comparator 702 is a logical one if y n . 2 is less than y n . 1f and output 740 of comparator 70 is a logical one if y n is less than * „.,. These signals are ANDed together with the inverted sign of the signal level of y^, to produce a logical one from AND gate 706 if a positive pulse has been detected at time n. • * " AND gate 708 determines whether there is a negative pulse at time n (with the peak at time n-1) . Output 738 of comparator 702 5 is a logical one if y n>1 is less than y n . 2 , and output 742 of comparator 704 is a logical one if y n .,, is less than y n . These signals are ANDed together with the sign of y n ., to produce a logical one from AND gate 708 if a negative pulse is detected at time n. 0 AND gates 716 and 718 determine whether a pulse is detected at time n-1 (with the peak at time n-2) . Output 736 of comparator 702 indicates that y n . 2 is less than y,,.,. Output 740 of comparator 704, after being delayed by delay circuit 710, indicates that y n . 2 is less than y n . 3 . Signal 744 indicates that y n . 2 is negative, 5 therefore, the ANDing of signals 736, 748, and 744 indicate there is a negative pulse detected at time n-1. Signal 738 indicates that y n . 2 is greater than y n .,,. Signal 746, the output of delay circuit 712, indicates that y n . 2 is greater than y n . 3 . By ANDing signals 738, 746, and the inverted signal 744, 0 AND gate 718 indicates that a positive pulse is detected at time n- 1. The output of OR gate 714 indicates that a pulse, either positive or negative, is detected at time n, and the output of OR gate 724 indicates that a positive or negative pulse is detected at 5 time n-1. AND gate 720 determines whether the magnitude of the pulse at time n was greater than the threshold value and it also determines whether the pulse detector is in tracking mode. AND gate 726 determines whether the pulse at time n-1 was greater than the threshold and whether the detector is in tracking mode. Because of the recording code used in writing data to the storage media in this application, a pulse can never occur at time n and also at time n-1. Therefore, the outputs of and gates 720 and 726 are cross-coupled to AND gates 728 and 730 to prevent detection of pulses in both locations at once. Thus, the output of gates 728 and 730 will indicate that a pulse occurred either at time n or at time n-1 but not both. These outputs are connected to the circuit of Fig. 8. Fig. 8 shows a high level logic diagram of the portion of the pulse detector that implements the acquisition equations shown in Table 1 for acquisition mode. Referring now to Fig. 8, signal 602 indicates whether or not the detector is in acquisition mode. Sign-bit extractor circuit 802 and sign-bit extractor circuit 804 extract the sign bits from the values y n and y n . 1 respectively. These two sign bits are exclusive NORed in XNOR circuit 808, whose output indicates whether the sign of y n is equal to the sign of y.,.,. Circuit 810 indicates whether the sign of y n ., is not equal to the sign of y n . 2 . If both these conditions are true, the output of AND gate 816 will indicate that a pulse is detected at time n (with the peak between time n and time n-1) in acquisition mode. This output is ORed with output 732 from Fig. 7 which indicates whether a pulse is detected at time n in tracking mode, therefore, signal 824 indicates whether a pulse is detected in one of the modes at time n. The sign-bit output of circuit 804 is delayed one clock cycle ' to indicate the sign of signal y n _ 3 . This signal is exclusive ORed with the sign bit of y n . 2 by circuit 814, whose output indicates 5 whether the sign of y π . 2 is not equal to the sign of y n . 3 . The output of exclusive-OR circuit 810, after being inverted at the input of AND gate 818, indicates whether the sign of y n .. is equal to the sign of y n . 2 . Therefore, the output of AND gate 818 indicates whether a pulse is detected in acquisition mode at time 10 n-1 (with the peak between time n-1 and time n-2) . This output is ORed with the output 734 of Fig. 7, which indicates whether a pulse is detected in tracking mode at time n-1. Therefore, output 826 indicates whether a pulse is detected at time n-1, either in acquisition or tracking mode. 15 Figs. 9 through 11 show a circuit that implements the equations of Table 2. This circuit, and the equations of Table 2, provide an implementation of the pulse detector that allows the preamble section of the data to contain different types of patterns. For example, the circuit of Figs. 6-8 works well for a 20 preamble having a 2T pattern, which is an alternating 1-0 pattern (10101010...), where a 1 indicates presence of a pulse, a zero indicates absence of a pulse, and pulses alternate in polarity. The circuit of Figs 9-11 allows a 2T pattern, a 3T pattern (100100...), and an 4T pattern (10001000...). Thus, the circuit of Ϊ25 Figs. 9-11 and equations of Table 2 are the preferred embodiment and the best mode. In all cases except side sampling acquisition mode, the equations of both Tables 1 and 2 detect pulses with the same latency. For side sampling acquisition, the equations of Table 1 detect peaks one sample sooner that the equations of Table 2. However, the equations of Table 2 are consistent in the amount of latency in both acquisition and tracking modes, while with the equations of Table 1 for side sampling, the latency in acquisition mode is one sample shorter than the latency in tracking mode. The equations of Table 2 show detection of a pulse at time y n . As with the circuits of Figs. 6-8, the circuit of Figs. 9-11 processes two signal samples simultaneously. The equations for the second sample are the same as the equations of the first sample shown in Table 2 , with one time delay. Thus, for example, y n in Table 2 is replaced by y n . 1f y n ., is replaced by y n _ 2 , etc., for the second sample. Referring now to Figs 9-11, Fig. 9 shows a series of comparators, 912-922, that compare the values of y n , y n . , y n _ 2 , and y n . 3 , and compares y n and y n .,, to the threshold value. Most of the comparators have a delay circuit, 924-938, on their output to also provide a comparison of y n . 2 , y n „ 3 , y n . 4 , and y n . 5 . These circuits thus provide all the inputs necessary for the equations of Table 2, and the equivalent equations for the second sample as discussed above. Fig. 10 implements the equations of Table 2 for the current sample, and Fig. 11 implements the equations of Table 2 for the first previous sample. Therefore, in the following description. Figs. 10 and 11 will be described together. In Figs. 10 and 11, NOR circuits 1002 and 1102 determine if J the absolute value of the signal is greater than the threshold. As shown in Table 2, this comparison is done in tracking mode, but not 5 in acquisition mode. Multiplexers 1020 and 1120 select side or center sampling mode. Multiplexers 1008 and 1108 select positive or negative pulses in center sampling mode, and multiplexers 1018 and 1118 select positive or negative pulses in side sampling mode. NAND circuits 1004, and 1104 implement the equations for center 10 sampling positive pulses, and NAND circuits 1010 and 1110 implement the equations for center sampling negative pulses. Multiplexers 1006, 1106, 1012, and 1112 allow a user to select one of two equations during center sampling. These equations are shown in Table 2, equation 3, for positive and negative pulses of center 15 sampling. This provides flexibility to the user of the circuit. NAND circuits 1016 and 1116 implement the equations for side sampling, positive pulses, and NAND circuits 1022 and 1122 implement the equations for side sampling, negative pulses. Condition 3 of Table 2 may be omitted during tracking mode when 20 condition 4 is used. Because data recorded on a magnetic storage medium is recorded using small magnets having alternating north-south poles, the signal detected by the read head will always have alternating positive and negative pulses. Therefore, for detecting signals -25 read from a magnetic recording medium, the equations of Tables 1 and 2 could be easily modified to detect a pulse only if the pulse is opposite in polarity to the previous pulse detected. This could provide additional noise immunity. Having thus described a presently preferred embodiment of the present invention, it will now be appreciated that the aspects of the invention have been fully achieved, and it will be understood by those skilled in the art that many changes in construction and circuitry and widely differing embodiments and applications of the invention will suggest themselves without departing from the spirit and scope of the present invention. The disclosures and the description herein are intended to be illustrative and are not in any sense limiting of the invention, more preferably defined in scope by the following claims. Table 1 Acquisition Tracking Side 1) SGN(y n ) - SGN(y n .,) y n sequence is filtered by Sampled 2) SGN(y n .,) + SGN(y n . 2 ) (l+DJ/2, then fed into Center Sampled tracking pulse detector Center y n sequence is filtered Pos Pulse Neσ Pulse Sampled by (l+D)/2, then fed 1) y n . > Thr 1) y_. < -Thr into Side Sampled 2) y n ., > y n . 2 2) V n-1 n-2 acquisition pulse 3 ) Yn-1 > y n 3) y«-ι < n detector where Thr is the Threshold value Table 2 Positive Pulse Negative Pulse Side 1) y n < y«-2 -) n > y- 2 Sampled 2) y -vs < y n-ι 2) y n . 3 > y n .. 3) 3) y n . 4 > y n ., Trk Only 4) y n -ι > τhr 4) -y n ., > Thr Center 1) -) y n > y n -ι Sampled 2) 2 ) y n - 2 y«-ι 3) 3 ) y n . 3 > y n . 2 or y n -3 > y«-ι Trk Only 4) 4 ) -y n ., > Thr where Thr is the Threshold value

Claims: What is claimed is: 1. An integrated circuit synchronous read channel for receiving digitized read signals representing samples of a read signal of a magnetic storage device and recovering digital data represented thereby comprising: a transition detector for detecting amplitude pulses of the digitized read signals indicative of storage media transitions and for generating an output signal representative of the amplitude pulses, said output signal being a sequence of binary digital signals; timing recovery circuitry responsive to the digitized read signal and the output signal of the transition detector to provide a timing control signal for controlling the timing of digitized samples of the read signal; ; a sequence detector responsive to the digitized read signals for receiving as stream of the digitized read signals and determining a corresponding sequence of binary digital signals likely to be represented thereby, said sequence detector including a path memory means for constructing sequences of binary digital signals, a comparison means for comparing the received read signal to a set of predetermined ideal read signals, and a selection means for selecting one of said set of ideal read signals which resembles the received read signal and for selecting a sequence of binary digital signals from the path memory means which corresponds to the selected ideal read signal; ; an RLL (d,k) decoder for providing a run length limited decoded output by decoding the selected sequence of binary digital signals from the sequence detector or for providing a run length limited decoded output by decoding the sequence of binary digital signals from the transition detector; control means for directing either the sequence of binary digital signals from the sequence detector or the sequence of binary digital signals from the transition detector to the RLL (d,k) decoder. 2. The integrated circuit synchronous read channel of claim 1 further comprised of digital pulse shaping filter circuitry for modifying the digitized read signals prior to receipt thereof by at least one of (i) the sequence detector, (ii) the transition detector and (iii) the timing recovery circuitry. 3. The integrated circuit synchronous read channel of claim 2 further comprised of delay means for delaying coupling of the digitized read signals to the transition detector or to the timing reciver circuitry to match a delay in coupling the digitized read signals to the timing recovery circuitry or the transition detector, respectively, imposed by the digital pulses shaping filter circuitry. 4. The integrated circuit synchronous read channel of claim 2 wherein the digital pulse shaping filter circuitry includes variable filter parameters. 5. The integrated circuit synchronous read channel of claim 2 wherein the digital pulse shaping filter circuitry modifies the digitized read signals using programmable filter parameters. 6. The integrated circuit synchronous read channel of claim 1 further comprising the spectrum smoothing filter circuitry for filtering the digitized read signals prior to processing by the sequence detector. 7. The integrated circuit synchronous read channel of claim 1 wherein the sequence detector processes two digitized read signals at a time, the two digitized read signals respectively representing digitized samples of a read signal of a magnetic storage device during two successive channel bit times. 8. An integrated circuit synchronous read channel for receiving read signals responsive to transitions in magnetic polarity stored in a magnetic storage device and recovering digital data represented thereby comprising: timing recovery circuitry responsive to the read signals to provide a timing control signal for recovery of the binary digital signal timing in the read signal; and, a sequence detector responsive to the read signals for receiving a read signal and determining the corresponding sequence of binary digital signals likely to be represented thereby said binary digital signals having a minimum run length constraint of d > O and said sequence detector comprising a path memory means in which sequences of binary digital signals are constructed, a comparison means to compare the received read signal to a set of ideal read signals, and a selection means which selects an ideal read signal which resembles the received read signal and thereby also selects the sequence of binary digital signals in the path memory which corresponds to the selected ideal read signal. 9. The integrated circuit synchronous read channel of claim 8 wherein d=l. 10. The integrated circuit synchronous read channel of claim 8 wherein said timing recovery circuitry comprises: timing error measurement circuitry for providing a timing error measurement signal responsive to the present quantity of bit timing error; timing correction circuitry for correcting the present timing in response to the timing error measurement signal received from the timing error measurement circuitry; and, sensing circuitry for determining when the timing correction circuitry responds to the timing error measurement signal. 11. The integrated circuit synchronous read channel of claim 10 wherein the sensing circuitry is a transition detector for detecting pulses in the amplitude of the received read signal indicative of magnetic transitions on the storage media. 12. The integrated circuit synchronous read channel of claim 10 further comprised of control circuitry for selecting either the sequence of binary digital signals from the sequence detector or an output from the sensing circuitry. 13. The integrated circuit synchronous read channel of claim 8 further comprised of an RLL(d,k) decoder for providing a run length limited decoded output by decoding the sequence of binary digital signals from the sequence detector. 14. The integrated circuit synchronous read channel of claim 13 wherein the RLL(d,k) decoder is an RLL(1,7) decoder. 15. The integrated circuit synchronous read channel of claim 8 wherein the timing recovery circuitry includes a digital phase detector and a digital timing loop filter. 16. The integrated circuit synchronous read channel of claim 10 wherein the timing error measurement circuitry comprises a digital phase detector and the timing correction circuitry comprises a digital timing loop filter. 17. The integrated circuit synchronous read channel of either of claims 15 and 16 wherein the timing correction circuitry provides a digital frequency control signal responsive to bit timing phase errors for direct control of the frequency of a clock determining bit timing. 18. The integrated circuit synchronous read channel of either of claims 15 and 16 wherein the coefficients of the digital timing loop filter are programmable. 19. The integrated circuit synchronous read channel of claim 8 further comprised of automatic gain control circuitry coupled to the read signals to provide a gain control signal responsive thereto. 20. The integrated circuit synchronous read channel of claim 19 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the automatic gain control circuitry includes a digital gain error detector responsive to the digitized read signal samples and a digital gain loop filter. 21. The integrated circuit synchronous read channel of claim 20 wherein the digital gain loop filter provides a digital gain control signal for directly controlling the gain of a variable gain amplifier. 22. The integrated circuit synchronous read channel of claim 20 wherein the coefficients of the digital gain loop filter are programmable. 23. The integrated circuit synchronous read channel of claim 20 wherein the digital gain error detector provides a digital gain error measurement signal responsive to the difference between a programmable desired signal level and the digitized read signal. 24. The integrated circuit synchronous read channel of claim 8 further comprised of digital pulse shaping filter circuitry for modification of the digitized read signals prior to receipt thereof by at least one of (i) the sequence detector and (ii) the timing recovery circuitry. 25. The integrated circuit synchronous read channel of claim 11 further comprised of digital pulse shaping filter circuitry for modification of the digitized read signals prior to receipt thereof by at least one of (i) the sequence detector, (ii) the timing recovery circuitry, and (iii) the transition detector. 26. The integrated circuit synchronous read channel of claim 25 further comprised of delay circuitry for delaying the coupling of the digitized read signals to the transition detector or the timing recovery circuitry to match the delay of the coupling of the digitized read signals to the timing recovery circuitry or the transition detector, respectively, imposed by the digital pulse shaping filter. 27. The integrated circuit synchronous read channel of either of claims 24 and 25 wherein the digital pulse shaping filter circuitry includes programmable filter parameters. 28. The integrated circuit synchronous read channel of claim 8 further comprised of spectrum smoothing filter circuitry for filtering the digitized read signals to reduce the effect of head bumps prior to processing by the sequence detector. 29. The integrated circuit synchronous read channel of claim 28 wherein the spectrum smoothing filter includes programmable coefficients. 30. The integrated circuit synchronous read channel of claim 28 wherein the spectrum smoothing filter includes programmable delays. 31. The integrated circuit synchronous read channel of claim 8 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the sequence detector processes two digitized read signals at a time, the two digitized read signals representing digitized samples of a read signal of a magnetic storage device during two successive channel bit times. 32. The integrated circuit synchronous read channel of claim 8 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the timing recovery circuitry processes two digitized read signals at a time, the two digitized read signals representing digitized samples of a read signal of a magnetic storage device during two successive channel bit times. 33. The integrated circuit synchronous read channel of claim 8 wherein the read signals are analog signals and the read channel includes sampling circuitry to periodically sample the analog signals. 34. The integrated circuit synchronous read channel of claim 33 wherein the sampling circuitry includes digitizing circuitry to produce digitized read signals representing digitized samples of the read signal of the magnetic storage device. 35. The integrated circuit synchronous read channel of claim 8 further comprised of a microprocessor interface and a plurality of control registers. 36. A digital integrated circuit for receiving digitized read signals representing digitized samples of a read signal of a magnetic storage device and recovering digital data represented thereby comprising: timing recovery circuitry responsive to the digitized read signals to provide a timing control signal for controlling the timing of digitized samples of the read signal; and, a sequence detector responsive to the digitized read signals for receiving a read signal and determining a corresponding sequence of binary digital signals likely to be represented thereby said binary digital signals having a minimum run length constraint of d > O and said sequence detector comprising a path memory means in which sequences of binary digital signals are constructed, a comparison means to compare the received read signal to a set of ideal read signals, and a selection means which selects an ideal read signal which resembles the received read signal and thereby also selects the sequence of binary digital signals in the path memory which corresponds to the selected ideal read signal. 37. The digital integrated circuit of claim 36 wherein the timing recovery circuitry is programmable to control the phase of the digitized read signal such that the pulses in the digitized read signal may be selectively side sampled or center sampled. 38. The digital integrated circuit of claim 37 wherein the sequence detector is programmable to determine a sequence of binary digital signals from a digitized read signal in which the pulses are selectively side sampled or center sampled. 39. The digital integrated circuit of claim 36 wherein d=l. 40. The digital integrated circuit of claim 36 wherein said timing recovery circuitry comprises: timing error measurement circuitry for providing a timing error measurement signal responsive to the present quantity of bit timing error; timing correction circuitry for correcting the present timing in response to the timing error measurement signal received from the timing error measurement circuitry; and, sensing circuitry for determining when the timing correction circuitry responds to the timing error measurement signal. 41. The digital integrated circuit of claim 40 wherein the sensing circuitry is a transition detector for detecting pulses in the amplitude of the digitized read signal indicative of magnetic transitions on the storage media. 42. The digital integrated circuit of claim 36 wherein said timing recovery circuitry comprises: timing error measurement circuitry for providing timing error measurement signal responsive to the present quantity of bit timing error; timing correction circuitry for correcting the present timing in response to the timing error measurement signal received from the timing error measurement circuitry; and, control circuitry responsive to an external transition detector for determining when the timing correction circuitry responds to the timing error measurement signal. 43. The digital integrated circuit of claim 40 further comprised of controllable means for selecting either the sequence of binary digital signals from the sequence detector or the output from the transition detector. 44. The digital integrated circuit of claim 36 further comprised of an RLL(d,k) decoder for providing run length limited decoded output by decoding the sequence of binary digital signals from the sequence detector. 45. The digital integrated circuit of claim 44 wherein the RLL(d,k) decoder is an RLL(1,7) decoder. 46. The digital integrated circuit v of claim 36 wherein the timing recovery circuitry includes a digital phase detector and a digital timing loop filter. 47. The digital integrated circuit of claim 40 wherein the timing error measurement circuitry comprises a digital phase detector and the timing correction circuitry comprises a digital timing loop filter. 48. The digital integrated circuit of either of claims 46 and 47 wherein the timing recovery circuitry provides a digital frequency control signal responsive to bit timing phase errors for direct control of the frequency of a clock determining bit timing. 49. The digital integrated circuit of either of claims 46 and 47 wherein the coefficients of the digital timing loop filter are programmable. 50. The digital integrated circuit of claim 36 further comprised of automatic gain control circuitry coupled to the read signals to provide a gain control signal responsive thereto. 51. The digital integrated circuit of claim 50 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the automatic gain control circuitry includes a digital gain error detector responsive to the digitized read signal samples and a digital gain loop filter. 52. The digital integrated circuit of claim 51 wherein the digital gain loop filter provides a digital gain control signal for directly controlling the gain of a variable gain amplifier. 53. The digital integrated circuit of claim 51 wherein the coefficients of the digital gain loop filter are programmable. 54. The digital integrated circuit of claim 36 further comprised of digital pulse shaping filter circuitry for modification of the digitized read signals prior to receipt thereof by at least one of (i) the sequence detector and (ii) the timing recovery circuitry. 55. The digital integrated circuit of claim 41 further comprised of digital pulse shaping filter circuitry for modification of the digitized read signals prior to receipt thereof by at least one of (i) the sequence detector, (ii) the timing recovery circuitry, and (iii) the transition detector. 56. The digital integrated circuit of claim 55 further comprised of delay circuitry for delaying the coupling of the digitized read signals to the transition detector or the timing recovery circuitry to match the delay of the coupling of the digitized read signals to the timing recovery circuitry or the transition detector, respectively, imposed by the digital pulse shaping filter. 57. The digital integrated circuit of either of claims 54 and 55 wherein the digital pulse shaping filter circuitry includes programmable filter parameters. 58. The digital integrated circuit of claim 36 further comprised of spectrum smoothing filter circuitry for filtering the digitized read signals to reduce the effect of head bumps prior to processing by the sequence detector. 59. The digital integrated circuit of claim 58 wherein the spectrum smoothing filter includes programmable coefficients. 60. The digital integrated circuit of claim 58 wherein the spectrum smoothing filter includes programmable delays. 61. The digital integrated circuit of claim 36 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the sequence detector processes two digitized read signals at a time, the two digitized read signals representing digitized samples of a read signal of a magnetic storage device during two successive channel bit times. 62. The digital integrated circuit of claim 36 wherein the read signals are digitized read signals representing digitized samples of the read signal of the magnetic storage device and wherein the timing recovery circuitry processes two digitized read signals at a time, the two digitized read signals representing digitized samples of a read signal of a magnetic storage device during two successive channel bit times. 63. The digital integrated circuit of claim 36 further comprised of an RLL encoder for RLL encoding digital data to be written to a magnetic storage device. 64. The digital integrated circuit of claim 36 further comprised of: a processor interface and a plurality of control registers from which a processor may read information and to which a processor may write information; and, a serial interface having a serial data line and a serial clock line. 65. The digital integrated circuit of claim 64 further comprised of: multiplexing circuitry for providing as the output of the integrated circuit; i) the digital data to be written to a magnetic storage device in 2 bit wide form during writing to the storage medium; and, ii) selectively providing the output of the serial data line and the serial clock line when not writing to the storage medium. 66. The digital integrated circuit of claim 64 wherein the serial interface includes circuitry for reading in serial form on the serial data line the contents of mapped external registers. 67. The digital integrated circuit of claim 66 wherein the serial interface includes circuitry responsive to requests presented at the processor interface to selectively: a) read in serial form on the serial data line the contents of one of the mapped external registers and then provide the contents of said mapped external register at the processor interface; or b) provide at the processor interface the contents of a mapped external register specified in a previous request and then read in serial form on the serial data line the contents of a second mapped external register specified in the present request. 68. The digital integrated circuit of claim 66 wherein a processor may write control information to a specified mapped external register by writing to the mapped external register's address in the digital integrated circuit, and wherein the serial interface includes circuitry for presenting in serial form on the serial data line to the specified mapped external register the data written to the mapped external register's address in the digital integrated circuit each time the processor writes to the mapped external register's address. 69. A digital integrated circuit comprising: an RLL encoder for RLL encoding digital data to be written to a magnetic storage device; a processor interface and a plurality of control registers from which a processor may read information and to which a processor may write information; and, a serial interface having a serial data line and a serial clock line; multiplexing circuitry for providing as the output of the integrated circuit i) the output of the RLL encoder in 2 bit wide form during writing to the storage medium; and, ii) selectively providing the output of the serial data line and the serial clock line when not writing to the storage medium. 70. The digital integrated circuit of claim 69 wherein the serial interface includes circuitry for reading in serial form on the serial data line the contents of mapped external registers. 71. The digital integrated circuit of claim 70 wherein the serial interface includes circuitry responsive to requests presented at the processor interface to selectively: a) read in serial form on the serial data line the contents of one of the mapped external registers and then provide the contents of said mapped external register at the processor interface; or b) provide at the processor interface the contents of a mapped external register specified in a previous request and then read in serial form on the serial data line the contents of a second mapped external register specified in the present request. 72. The digital integrated circuit of claim 69 wherein a processor may write control information to a specified mapped external register by writing to the mapped external register's address in the digital integrated circuit, and wherein the serial interface includes circuitry for presenting in serial form on the serial data line to the specified mapped external register the data written to the mapped external register's address in the digital integrated circuit each time the processor writes to the mapped external register's address.

Inventors: ANDERSON KENT D, ARMSTRONG ALAN, BEHRENS RICHARD T, DUDLEY TRENT, FOLAND BILL, GLOVER NEAL, KING LARRY, ANDERSON, KENT, D., ARMSTRONG, ALAN, BEHRENS, RICHARD, T., DUDLEY, TRENT, FOLAND, BILL, GLOVER, NEAL, KING, LARRY
Applicants: CIRRUS LOGIC INC, CIRRUS LOGIC, INC.
Application year: 1994
Main classification: G11B5
IPC codes: G11B5, G11B20, G11B27, H03M13