The field of the invention relates to signal processing, and, more particularly, to processing of digital data signals.
Disk-based storage devices such as hard disk drives (HDDs) are used to provide non-volatile data storage in a wide variety of different types of data processing systems. A typical HDD comprises a spindle which holds one or more flat circular storage disks, also referred to as platters. Each storage disk comprises a substrate made from a non-magnetic material, such as aluminum or glass, which is coated with one or more thin layers of magnetic material. In operation, data is read from and written to tracks of the storage disk via a read/write head that is moved precisely across the disk surface by a positioning arm as the disk spins at high speed.
In one embodiment, an apparatus comprises read channel circuitry and signal processing circuitry associated with the read channel circuitry. The signal processing circuitry comprises: an equalizer configured combine an output of two or more component filters into a single equalized data signal; a detector with an input coupled to an output of the equalizer, the detector being configured to determine a set of soft outputs, hard decision information and reliability indicators of the single equalized data signal; a decoder with an input coupled to an output of the detector, the decoder being configured to perform an iterative decoding process using the set of soft outputs, hard decision information and reliability indicators to determine a decoded data signal; and a multiplexer with a first input coupled to an output of the decoder, a second input coupled to an output of the detector, and an output coupled to an input of the equalizer. The hard decision information is used to train the equalizer.
Other embodiments of the invention include, by way of example and without limitation, methods, storage devices, virtual storage systems, integrated circuits and computer-readable storage media having computer program code embodied therein.
Embodiments of the invention will be illustrated herein in conjunction with exemplary disk-based storage devices, read channel circuitry and associated signal processing circuitry for processing read channel data signals. It should be understood, however, that these and other embodiments of the invention are more generally applicable to any storage device in which improved signal processing is desired. Additional embodiments may be implemented using components other than those specifically shown and described in conjunction with the illustrative embodiments.
The following acronyms are utilized in this description:
ADC Analog-to-Digital Converter
DFIR Digital Finite Impulse Response
HDD Hard Disk Drive
LDPC Low-Density Parity-Check
LMS Least Mean Square
MAP Maximum a Posteriori Probability
NPCAL Noise Predictive Calibrator
NPFIR Noise Predictive Finite Impulse Response
RAID Redundant Array of Independent Storage Devices
RPM Revolutions Per Minute
RS Reed Solomon
SNR Signal-to-Noise
SOVA Soft-output Viterbi Algorithm
Read/write head assembly 180 is positioned by voice coil motor 190 over a desired data track on disk platter 170. Motor controller 150 controls the voice coil motor 190. Motor controller 150 controls the voice coil motor 190 to position read/write head assembly 180 in relation to disk platter 170 and drives spindle motor 160 by moving read/write head assembly 180 to the proper data track on disk platter 170 under direction of hard disk controller 140. Spindle motor 160 spins disk platter 170 at a determined spin rate in revolutions per minute (RPM).
Once read/write head assembly 180 is positioned adjacent the proper data track, magnetic signals representing data on disk platter 170 are sensed by read/write head assembly 180 as disk platter 170 is rotated by spindle motor 160. The sensed magnetic signals are provided as an analog signal representative of the magnetic data on disk platter 170. This analog signal is transferred from read/write head assembly 180 to read channel circuitry 110 via preamplifier 120. Preamplifier 120 is operable to amplify the analog signals accessed from disk platter 170. In turn, read channel circuitry 110 decodes and digitizes the received analog signal to recreate the information originally written to disk platter 170. This data is provided as read data.
Various elements of the storage device 100 may be implemented at least in part within a processing device. A processing device includes a processor and a memory, and may be implemented at least in part within an associated host computer or server in which the storage device 100 is installed. Portions of the processing device may be viewed as comprising “control circuitry” as that term is broadly defined herein.
It is important to note that storage device 100 may include other elements in addition to or in place of those specifically shown, including one or more elements of a type commonly found in a conventional implementation of such a storage device. These and other conventional elements, being well understood by those skilled in the art, are not described in detail herein. It should also be understood that the particular arrangement of elements shown in
In read channel circuitry, it is advantageous to use a multiple analog-to-digital converter (ADC) arrangement. A first signal is processed in a first ADC, streamed through a first equalizer, stored in a buffer, and sent to a first noise predictive calibrator (NPCAL). A second signal is processed in a second ADC, streamed through a second equalizer, stored in a buffer and sent to a second NPCAL. The first and second signals are averaged after NPCAL processing. This multiple ADC arrangement shows good performance gain over a single ADC arrangement, but its implementation cost is high. For example, such a technique requires two complicated NPCALs and both signals must be buffered.
In order to improve the overall equalized output and thus improve detection and decoding performance, embodiments of the invention utilize an equalizer scheme which combines outputs from multiple component filters to boost read channel performance. Embodiments of the invention are thus able to achieve good performance gain while keeping implementation costs low.
The equalizer 202 in
A detector 204 has an input coupled to an output of the equalizer 202. The detector 204 is configured to receive the single equalized data signal from the equalizer 202 and to determine a set of soft outputs, hard decision information and reliability indicators of the single equalized data signal. The detector 204 may comprise a variety of detector types, including a soft-output Viterbi algorithm (SOVA) detector, a maximum a posteriori probability (MAP) detector, or some combination of SOVA and MAP detectors. The detector 204 may comprise a number of noise predictive finite impulse response (NPFIR) filters which perform noise predictive calibration on the single equalized digital data signal.
The detector 204 has an output coupled to an input of decoder 206, and an input coupled to an output of the decoder 206. The decoder 206 is configured to perform an iterative decoding process using the set of soft outputs, hard decision information and reliability indicators to determine a decoded data signal. The decoder 208 may be a low-density parity check (LDPC) decoder, a Reed Solomon (RS) decoder, or some combination of LDPC, RS and other decoder types.
Outputs of the detector 204 and the decoder 206 are coupled to inputs of a multiplexer 208. The multiplexer 208 also has an output coupled to an input of the equalizer 202. The equalizer 202 can thus be trained using the hard decision information determined by the detector 204, the decoded data signal determined by the decoder 206 or some combination of the hard decision information and the decoded data signal.
The filters 302-1 and 302-2 may comprise digital finite impulse response (DFIR) filters. In some embodiments, each of the DFIR filters comprises a 16-tap DFIR filter. The main taps of the 16-tap DFIR filters may be set to 1.25 and 1.5 in one embodiment. Embodiments of the invention may also use only one component DFIR or some subset of the component DFIRs by setting the taps on one or more of the component DFIRs to 0. One skilled in the art, however, will readily appreciate that various other tap configurations may be used as desired for a particular arrangement.
Each of the filters 302-1 and 302-2 receives a digital data signal and performs equalization on the digital data signal to determine an equalized data signal. Each of the digital data signals may comprise a set of samples. In
y[k]=βy1[k]+(1−β)y2[k]. (1)
The weighting factor β may be optimized in elements 360 and 362 using a least mean square (LMS) approach. It is important to note, however, that embodiments are not limited solely to a LMS approach, and may instead use any number of techniques for training and optimizing the weighting factor or factors as will be appreciated by one skilled in the art. The mean squared error between the set of combined equalized samples and a set of reconstructed equalized samples based on the hard decision information determined by the detector 204 may be determined according to the following equation
where ŷ[k] is a set of reconstructed equalized samples based on the hard decisions determined by the detector 204 for respective ones of the combined equalized samples y[k] and N is the number of combined samples. The set of reconstructed equalized samples ŷ[k] is obtained by convolving an equalization target with the di-pulse form of the hard decisions, where hard decisions determined by the detector take the value of +1 or −1. The hard decisions of the detector, d[k] are mapped to its di-pulse form d′[k], i.e., d′[k]=1 when d[k]=1 and d′[k]=−1 when d[k]=0. Then d′[k] is convolved with the equalization targets to obtain the set of reconstructed equalized samples ŷ[k].
In other embodiments, the set of decoded samples in the decoded data signal determined by the decoder 206 may be used in place of the set of reconstructed equalized samples ŷ[k] based on the hard decisions determined by the detector 204 in equation 2. In still other embodiments, some combination of the set of decoded samples in the decoded data signal determined by the decoder 206 and the set of reconstructed equalized samples ŷ[k] based on the hard decisions determined by the detector 204 may be used in place of ŷ[k] in equation 2.
Each of the component filters 302-1 and 302-2 may be similarly trained using an LMS approach. Elements 320-1 and 322-1 may be used to determine the mean squared error for the filter 302-1. For example, the mean squared error between the first set of equalized samples y1[k] and the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 may be determined according to the following equation
Similar to equation 2 above, in other embodiments, the set of decoded samples in the decoded data signal determined by the decoder 206 may be used in place of the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 in equation 3. In still other embodiments, some combination of the set of decoded samples in the decoded data signal determined by the decoder 206 and the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 may be used in place of ŷ[k] in equation 3.
Elements 320-2 and 322-2 may be used to determine the mean squared error for the filter 302-2. For example, the mean squared error between the second set of equalized samples y2[k] and the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 may be determined according to the following equation
In other embodiments, the set of decoded samples in the decoded data signal determined by the decoder 206 may be used in place of the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 in equation 4. In still other embodiments, some combination of the set of decoded samples in the decoded data signal determined by the decoder 206 and the set of reconstructed equalized samples ŷ[k] which are based on the hard decisions determined by the detector 204 may be used in place of ŷ[k] in equation 4. It is important to note that embodiments of the invention are not limited solely to use with a LMS approach. Instead, embodiment of the invention are more generally applicable to a variety of algorithms and techniques which may be used to adapt β and to train the component filters 302.
As described above, in some embodiments an equalizer may receive more than two inputs. For example,
As shown in
y[k]=β1y1[k]+β2y2[k]+(1−β1−β2)y3[k] (5)
The weighting factors β1 and β2 may be adapted in a manner similar to that described above with respect to β in
For example, the processing module 501 may determine a SNR of x[k] or some portion of x[k]. The processing module 501 may input x[k] or some portion of x[k] with a given SNR into one or more of the component filters 502-1, 502-2 and 502-3 optimized for filtering a digital data signal at the given SNR. As an example, component filter 502-1 may be optimized for high SNR, component filter 502-2 may be optimized for medium SNR, and component filter 502-3 may be optimized for low SNR. In such an instance, if the processing module 501 determines that x[k] has a high SNR, x[k] would be input to the component filter 502-1. The processing module 501 may also determine that a first portion of x[k] has a high SNR while a second portion of x[k] has low SNR. In such an instance, the first portion of x[k] is input to component filter 502-1 while the second portion of x[k] is input to component filter 502-3.
As another example, the processing module 501 may alternatively or additionally determine a frequency range of x[k]. The processing module 501 may input x[k] or some portion of x[k] with a given frequency range into one or more of the component filters 502-1, 502-2 and 502-3. At a given time t1, x[k] may have a high frequency and thus be input to a component filter 502-1 optimized for filtering a high frequency signal. At a time t2, x[k] may have a low frequency and thus be input to a component filter 502-3 optimized for filtering a low frequency signal.
Each of the filters 502-1, 502-2 and 502-3 determines an equalized digital data signal based on the input signal, which may be all or some portion of x[k]. The outputs of the component filters 502 are input to respective multipliers 504, which multiply the equalized digital data signal from each of the component filters 502 by a respective weighting factor. The outputs of the multipliers 504 are input to a signal combiner 506, which combines the outputs into a single equalized digital data signal y[k]. The single combined equalized digital data signal y[k] may be output to a detector for further processing in a manner similar to that described above with respect to
As shown in
In embodiments where the processing module 501 inputs x[k] into a single one of the component filters 502, each of the weighting factors β1, β2 and β3 are either 0 or 1. The processing module can set the weighting factors β1, β2 and β3 based on which one of the component filters 502 has received x[k].
In embodiments where the processing module 501 inputs x[k] into each of the component filters 502, or inputs portions of x[k] into two or more of the component filters, each of the weighting factors β1, β2 and β3 may be adjusted individually. For example, if filters 502-1 and 502-3 each receive a portion of x[k] as input, the weighting factors β1 and β3 may be set based on the size of the portion of x[k] input to each of the filters 502-1 and 502-3. If each of the filters 502 receives x[k], the weighting factors β1, β2 and β3 may be adjusted based on one or more determined characteristics of x[k]. For example, if x[k] is determined to have a high SNR, the weighting factors for the component filter or filters optimized for higher SNR are set higher than the weighting factors for the component filter or filters which are not optimized for higher SNR. Similarly, if x[k] is determined to have a high frequency, the weighting factors for the component filter or filters optimized for high frequency input are set higher than the component filter or filters which are not optimized for high frequency input. One skilled in the art will appreciate that numerous alternative arrangements may be used for setting the weighting factors.
The processing module 501 may be configured to adjust the weighting factors β1, β2 and β3. Alternatively or additionally, the weighting factors β1, β2 and β3 may be adapted based on feedback in a manner similar to that as described above with respect to
It is important to note that various embodiments described above separately may be combined in a single embodiment of the invention. By way of example only, the processing module 501 may be configured to determine both the SNR and the frequency of x[k]. Each of the component filters of equalizer 500 may thus be optimized for filtering an input signal with a given SNR and a given frequency range. In addition, the processing module 501 may determine other characteristics of x[k], such as the phase of x[k]. As another example, the arrangement of
Embodiments of the invention which use an enhanced equalizer to combine multiple digital data signals into a single equalized digital signal reduce a signal path from two to one. The use of a single equalized digital signal achieves performance gains similar to approaches which use multiple ADCs and multiple NPCALs, as will be described below. From a signal processing perspective, a first noise term can be calculated using a first component DFIR according to the following equation
Noise1=DFIR1*x1−mean(DFIR1*x1)−bias(DFIR1*x1) (6)
where Noise1 represents the noise of the first component digital data signal x1 and DFIR1 represents processing performed by a first component DFIR. Similarly, a second noise term can be calculated using a second component DFIR according to the following equation
Noise2=DFIR2*x2−mean(DFIR2*x2)−bias(DFIR2*x2) (7)
where Noise2 represents the noise of the second component digital data signal x2 and DFIR2 represents processing performed by a second component DFIR. A combined noise term Noise can thus be determined according to the following equation
Noise=0.5(Noise1+Noise2) (8)
where 0.5 is chosen as weighting factor where each of the component digital data signals is accorded the same weight for simplicity. In embodiments of the invention, however, the weighting factor may vary as desired for a particular arrangement. The weighting factor, as described above, may also be adapted using a LMS approach.
If the digital data signals are combined a single equalized signal y′ is determined according to the following equation
y′=0.5(y1+y2)=0.5(DFIR1*x1+DFIR2*x2) (9)
where y1 is the equalized data signal determined in DFIR1 and y2 is the equalized data signal determined in DFIR2. Thus, the noise term Noise may be determined according to the following equation
Noise=y′−mean(y′)−0.5(bias(y1)+bias(y2)). (10)
If bias(y′) is approximately 0.5(bias(y1)+bias(y2)), then the noise term Noise may be determined according to the following equation
Noise=y′−mean(y′)−bias(y′). (11)
Thus, the use of component DFIRs in embodiments of the invention can achieve similar performance gains as arrangements which use separate equalizers and NPCALs while reducing complexity of the signal processing circuitry.
As mentioned previously, the storage device configuration can be varied in other embodiments of the invention. For example, the storage device may comprise a hybrid HDD which includes a flash memory in addition to one or more storage disks.
In addition, storage device 100 may be coupled to or incorporated within a host processing device, which may be a computer, server, communication device, etc.
Multiple storage devices 100-1 through 100-N possibly of various different types may be incorporated into a virtual storage system 700 as illustrated in
Embodiments of the invention may also be implemented in the form of integrated circuits. In a given such integrated circuit implementation, identical die are typically formed in a repeated pattern on a surface of a semiconductor wafer. Each die includes, for example, at least a portion of signal processing circuitry 112 as described herein, and may further include other structures or circuits. The individual die are cut or diced from the wafer, then packaged as an integrated circuit. One skilled in the art would know how to dice wafers and package die to produce integrated circuits. Integrated circuits so manufactured are considered embodiments of the invention.
It should again be emphasized that the above-described embodiments of the invention are intended to be illustrative only. For example, other embodiments can use different types and arrangements of storage disks, read/write heads, read channel circuitry, signal processing circuitry, decoders, filters, detectors, and other storage device elements for implementing the described error correction functionality. Also, the particular manner in which certain steps are performed in the signal processing may vary. Further, although embodiments of the invention have been described with respect to storage disks such as HDDs, embodiments of the invention may be implemented various other devices including optical data-storage applications and wireless communications. These and numerous other alternative embodiments within the scope of the following claims will be apparent to those skilled in the art.
Number | Name | Date | Kind |
---|---|---|---|
6377529 | Lee et al. | Apr 2002 | B1 |
6594094 | Rae et al. | Jul 2003 | B2 |
7564388 | Lerdworatawee et al. | Jul 2009 | B2 |
20050219727 | Kajiwara et al. | Oct 2005 | A1 |
20100070835 | Song et al. | Mar 2010 | A1 |
Entry |
---|
K. Yamaguchi et al., “12Gb/s Duobinary Signaling with x2 Oversampled Edge Equalization,” IEEE International Solid-State Circuits Conference, (ISSCC), Digest of Technical Papers, Feb. 2005, pp. 70--71, vol. 1. |
A. Tmcenko et al., “A New Eigenfilter Based Method for Optimal Design of Channel Shortening Equalizers,” IEEE International Symposium on Circuits and Systems (ISCAS), 2002, pp. 504-507, vol. 2. |
U.S. Appl. No. 13/628,513, filed in the name of J. Lu et al. On Sep. 27, 2012 and entitled “Data-Dependent Equalizer Circuit.” |
U.S. Appl. No. 13/628,579, filed in the name of S. Yang et al. On Sep. 27, 2012 and entitled “Branch Metric Computation and Noise Predictive Calibration/Adaptation for Over-Sampled Y Samples.” |
Number | Date | Country | |
---|---|---|---|
20140177087 A1 | Jun 2014 | US |