1. Technical Field
The present disclosure relates to magnetic media data storage devices. More particularly, the disclosure relates to a system and method for identifying and compensating for non-linear transition shift in magnetic media data storage devices.
2. Related Art
Non-linear transition shift is a phenomenon that affects the timing of the binary transitions of data signals written to the magnetic media in magnetic media data storage devices. When the recording head of a magnetic media data storage device attempts to write a binary transition to the recording medium, the current transition is affected by the magnetic fields of previously written transitions. These magnetic fields can cause the current transition to be shifted in time such that the transition is written either earlier or later than intended. Such time shifts can be a source of noise leading to unacceptable bit error rates when data stored on the magnetic medium are subsequently read back and used by associated data processing equipment.
If the amount of non-linear transition shift affecting a particular binary transition is known in advance, it is possible to compensate for the shift when the transition is written to the magnetic recording medium. For example, if it is known that a particular transition will be delayed by 0.1 nanoseconds, it is possible to write the transition 0.1 nanoseconds earlier. When the timing of a transition is pre-compensated in this manner, the transition will occur precisely where intended when it is subsequently read from the recording medium. A problem, however, is that non-linear transition is inconsistent. The magnetic fields that cause non-linear transition shift depend on the sequence of bits near a particular binary transition. Thus, the amount and direction of non-linear transition shift experienced by a particular binary transition will be dependent on the particular data sequence being written to the magnetic storage medium.
A traditional approach to compensating for non-linear transition shift involves generating a pseudorandom sequence of binary data, writing the pseudorandom sequence to the magnetic recording medium, and reading it back. The recovered sequence is then analyzed to determine the effect that the various bit patterns in the pseudorandom sequence have had on the corresponding binary transitions recorded on the magnetic medium. This traditional approach suffers from a number of drawbacks. The main drawbacks of this approach are that it typically requires over-sampling of the waveforms, it is not very accurate, and only a limited number of data patterns may be specified for defining the associated NLTS values. Furthermore, the compensation values may not be refined over time under actual operating conditions. An improved approach is desirable.
The following embodiments relate to systems and methods of identifying and compensating for non-linear transition shift in binary transitions written to magnetic media data storage devices. It is noted that throughout the specification the term “data” may relate to a data carrying waveform (e.g., an analog signal carrying binary transition information) or a binary sequence of bits, depending on the component in the pipeline being discussed.
In the embodiments described below, non-linear transition shift is measured “on-the-fly” and non-linear transition shift pre-compensation values are continuously updated to ensure that the most accurate and up-to-date pre-compensation values are employed when writing data (an analog waveform transition) to the magnetic storage medium.
In one embodiment a system for identifying non-linear transition shift of a transition in a waveform is disclosed. The system includes a bit pattern identification module adapted to identify bit patterns in segments of a data sequence read from the magnetic storage medium. A non-linear transition shift value register bank stores a non-linear transition shift value for each bit pattern. Each non-linear transition shift value is either an estimate value or a fixed value. The non-linear transition shift estimate values are updatable by an algorithm implemented in the system. The non-linear transition shift fixed values are predetermined and unchangeable. The non-linear transition shift fixed values may be based upon one or more known characteristics of non-linear transition shift behavior. The various non-linear transition shift values stored in the non-linear transition shift value register bank are associated with specific bit patterns of finite length. Finally, the system includes a non-linear transition shift error estimation module for calculating a non-linear transition shift error estimate based on the non-linear transition shift values stored in the non-linear transition shift value register bank.
In another embodiment a magnetic media data storage device is disclosed. The magnetic media data storage device includes a magnetic medium and a magnetic read/write head for reading data from and writing data to the magnetic medium. A write channel prepares binary data to be written to the magnetic medium via the magnetic write head. A magnetic head/media channel generates a continuous-time analog waveform that corresponds to the data that was previously written to the magnetic medium, although the magnetic head/media channel (output) waveform may be corrupted by some noise. The magnetic media data storage device includes a non-linear transition shift identification module adapted to identify the non-linear transition shift of binary transitions (introduced during the write operation) in the waveform received from the magnetic head/media channel. A non-linear transition shift compensation module is adapted to temporally adjust when the binary transitions associated with specific bit patterns are written to the magnetic head/media channel. The adjusted timing of writing a binary transition to the magnetic head/media channel may be based on the actual non-linear transition shift identified by the non-linear transition shift identification module for a specific bit pattern.
In another embodiment a system for compensating for non-linear transition shift in a magnetic medium data storage device is disclosed. In this embodiment a non-linear transition shift compensation system includes a non-linear transition shift estimation module adapted to generate non-linear transition shift estimates for specific bit patterns. The system further includes a pre-compensation module adapted to adjust the temporal spacing of binary transitions written to the magnetic head/media channel. The amount of pre-compensation applied to a transition is based on a non-linear transition shift estimate generated by the non-linear transition shift estimation module. The non-linear transition shift estimate selected as a pre-compensation value depends on the specific bit pattern associated with the transition. Preferably, at least one bit pattern is associated with a non-linear transition shift value that is fixed, and therefore unchangeable by the non-linear transition shift estimation module.
A method of compensating for non-linear transition shift in a binary transition written to a magnetic data recording medium is also provided. The method includes defining a binary segment length. According to the method, non-linear transition shift values are provided for the various bit patterns that may be found in a binary segment of the defined binary segment length. Each non-linear transition shift value is either an estimate value or a fixed value. Binary data are read from the magnetic recording medium. The bit patterns in segments of the binary data read from the magnetic medium are identified. The non-linear transition shifts associated with binary transitions read from the magnetic medium is determined, and the corresponding bit pattern associated with each non-linear transition shift is identified. The actual non-linear transition shifts and their associated bit patterns are compared to the non-linear transition shift estimates generated for the corresponding bit patterns. The non-linear transition shift estimate values are adjusted based on the comparison. The time at which a binary transition associated with a particular bit pattern is written to the magnetic head/media channel is adjusted based on the non-linear transition shift estimates. The preferred embodiments will now be described with reference to the attached drawings.
The embodiments below relate to identifying non-linear transition shift (NLTS) that may occur when a binary transition is written to a magnetic data storage medium. The NLTS is identified in the read channel of a read/write magnetic data storage device and applied to data in the write channel of the device to pre-compensate for anticipated NLTS.
The write channel 12 is adapted to receive user data in the form of input binary sequences 22 to be written to the magnetic read/write head 16 and stored on the storage medium 18. The read channel 20 receives a waveform from the magnetic head/media channel 14 corresponding to data retrieved from the storage medium 18 and outputs binary sequences 24.
The read channel 20 includes an NLTS identification block 28. The NLTS identification block 28 identifies NLTS in the waveform received from the magnetic head/media channel 14. Similarly, the write channel 12 includes an NLTS pre-compensation block 26. The information obtained by the NLTS identification block 28 may be provided to the NLTS pre-compensation block 26 so that the effects of NLTS may be reduced or eliminated by delaying or advancing the individual binary transitions written to the magnetic head/media channel 14.
Both the read channel NLTS identification block 28 and the write channel pre-compensation block 26 may include a processor 27, e.g. a central processing unit (CPU), and a memory 29, or have access to a processor 27 and memory 29. The memory 29 may be configured to store instructions that may be executed by the processor 27 for executing the NLTS identification and pre-compensation algorithms described below. The memory 29 may also be adapted to store parameters and variable data associated with identifying and compensating for NLTS. Both the NLTS pre-compensation block 26 and the NLTS identification block 28 may employ their own processor 27 and memory 29, or they may share a common processor 27 and memory 29. Alternatively, one or both of the NLTS identification block 28 and the pre-compensation block 26 may access a remote processor 27 and memory 29. In alternative embodiments, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays and other hardware devices, may be constructed to implement one or more of the NLTS identification and compensation algorithms described herein. Accordingly, the present system encompasses software, firmware, and hardware implementations or a combination thereof.
NLTS is bit pattern specific. The amount and direction of NLTS for a particular transition depends on the sequence of bits near the transition. The NLTS identification block 28 identifies the amount and direction of NLTS associated with individual transitions and the particular bit patterns near them. The NLTS pre-compensation block 26 adjusts the timing of a transition written to the magnetic head/media channel 14 by an amount and in a direction necessary to compensate for anticipated NLTS based on the bit pattern of the binary sequence near the transition. The pre-compensation combines with the actual NLTS such that NLTS error is substantially reduced or eliminated.
The NLTS identification block 28 employs an algorithm for identifying NLTS “on-the-fly” as a waveform is received from the magnetic head/media channel 14.
Typically the read channel 20 of a magnetic data storage device will equalize the data signal received from the magnetic head/media channel 14 so that the magnetic head/media channel 14 transfer function will conform to a desired target polynomial.
The equalized continuous-time ideal step response 64 may be represented as a function TS(t). The equalized continuous-time NLTS step response 66 may be represented by the function TS(t+τ). The difference between the equalized continuous-time ideal step response 64 and the equalized continuous-time NLTS step response 66 may be determined by the equation
DTS(t)=TS(t+τ)−TS(t) [1]
For sufficiently small values of τ the difference DTS(t) may be approximated as
The term dts(t) is simply the time derivative of the equalized continuous-time ideal step response 64 of a transition at time 0 (the target response). Equation [2] says that, for small valves of τ, the difference between the equalized continuous-time NLTS step response 66 and the equalized continuous-time ideal step response 64, the error introduced by the NLTS shift, is approximately equal to the time derivative of the equalized continuous-time ideal step response 64 multiplied by the amount of the shift. This relationship is employed by the NLTS identification algorithm in the NLTS identification block 28 to estimate the NLTS error in the waveform received from the magnetic head/media channel 14.
The next step in the NLTS identification process calls for generating the discrete-time differential ideal step response 32. The continuous-time differential ideal step response dts(t) is not dependent on the sequence of bits read from the head/media channel 14 and may be calculated directly from the equalized continuous-time ideal step response 64 (TS(t)).
As has been mentioned, NLTS is determined by the specific bit pattern of the binary sequence in the vicinity of a particular binary transition. The influence a particular bit has on a specific transition diminishes with its physical and temporal distance from the transition. In other words, those bits within a binary sequence that are nearest a transition will have the greatest impact on any NLTS shift experienced by the transition. Those bits further away from the transition will have less impact. At some point, the impact of bits further away from a transition become negligible. Accordingly, another preliminary step in the NLTS identification process is to define the length of a binary sequence segment 34 that will be considered when identifying and compensating for NLTS. As will be described in more detail below, a parameter d may be defined such that a bit sequence d+1 bits long will be considered for identifying and compensating for NLTS. In most cases a value of d in the range of 3-5 will be appropriate, although other values may be applied as well.
The length of the binary sequence defined by the parameter d determines the resolution of the NLTS identification process. Because the amount of NLTS shift experienced by a binary transition is dependent on the pattern of the waveform in the vicinity of the transition, the number of NLTS gradations that may be identified is determined by the number of bits in the binary sequence whose impact is considered on NLTS. Consider a situation where a two bit segment of a binary sequence is employed for identifying NLTS. This is another way of saying that the total amount of NLTS shift experienced by a binary transition is determined by a two bit segment of a binary sequence. A two bit segment can generate four distinct bit patterns:
A final preliminary step 36 in the NLTS identification process is to generate estimates for the amount of NLTS shift τ associated with bit patterns in a binary segment of the length defined at step 34. For example,
Once the discrete-time differentiated ideal step response has been generated and NLTS shift estimated and/or fixed values have been determined and stored for the various bit patterns that may be encountered in the d+1 bit long segments of a binary sequence, a continuous-time analog waveform corresponding to a binary sequence written to the magnetic head/media channel 14 is received from the magnetic head/media channel 14 at step 38.
The next step 40 in the NLTS identification process is to calculate an estimate nk of the total NLTS error present in a signal received from the magnetic head/media channel 14 at a given time k, provided that the bit pattern surrounding k does not correspond to an NLTS fixed value (step 39).
An estimate of the total NLTS error nk for a particular time is based upon the binary transition that occurs at that particular time as well as neighboring transitions. In other words, the total NLTS error at a particular time k is equal to the sum of the NLTS error contribution from the transition at time k plus the NLTS error contributions of several neighboring transitions. This phenomenon is best understood graphically.
Recall that
DTS(t)=dts(t)·τ
In the discrete time domain Equation [2] may be restated as
DTSi=dtsi·τ
Where i is a sampling index identifying the various data points 80, 82, . . . 96 of the discrete time differentiation of the ideal step response of the magnetic head/media channel 14 for a transition at time k. τ is a function of the bit pattern in a segment of the received binary sequence (bk−d, bk−d+1, . . . , bk). In the example given earlier, the parameter d was assigned a value d=3. Thus, τ for the transition occurring at time k is a function of the bit pattern of the segment of the received binary sequence (bk−3, bk−2, bk−1, bk). Referring to
Just as the NLTS shift incurred by the binary transition at time k causes residual NLTS error at times other than time k, the NLTS shift of binary transitions occurring at times other than time k will similarly cause residual NLTS error at time k. For example,
Similarly,
The total NLTS error at time k resulting from the NLTS shift experienced by the binary transitions occurring at times k−1, k, and k+1 is equal to the sum of the NLTS error at time k from each transition, or
nk=dts108·L+dts88·G+dts122·M.
The discrete-time differentiated ideal step response is the same for each binary transition in the sequence, only translated in time. Thus, the discrete values of discrete-time differentiated step response of a transition at time 0 (
Returning to the flowchart of
Ideally |δK| will be as small as possible. In other words, the estimated NLTS error nK will be close or equal to the actual NLTS error ek in the waveform received from the magnetic head/media channel 14. Recall that the original values of τ(b1, b2, b3, b4) in the table 74 of
In one embodiment, the value of τ (
For the values of τ that are adjustable, minimization of δK may be accomplished using the least mean squared algorithm. A new function c may be defined as
The gradient of C may be calculated as
The identity index of τk−1 is (bk−i−d, bk−i−d+1, . . . , bk−i). The time index k−i is the location where the binary transition with which τk−i is associated occurs. The identity index is limited by [0,2d+1−1]. The NLTS values can be adaptively obtained by
τh+1j=τhj+μ·δk·dtsi; where j=f(bk−i−d,bk−i−d+1, . . . bk−i) [7]
The variable μ defines the size of an incremental adjustment step, and the sign of δk determines the direction of adjustment. The new values for τk−i (bk−i−d, bk−i−d+1, . . . , bk−i) are stored in an NLTS value register bank. In other words, the adjustable τ values stored in table 74 of
The steps 38-50 of the NLTS identification process in
The pre-compensation block 26 in the write channel 12 may use the values of τ(bk−i−d, bk−i−d+1, . . . bk−i) stored in the NLTS value register bank to adjust the timing of binary transitions written to the head/media channel 14. For example, assume the values in table 74 of the
The target polynomial dst(t) is provided at 226 and the discrete-time differentiation of the target (ideal) step response is calculated at 228. The discrete-time differentiation of the target step response dtsi is provided to an NLTS error estimation module 230, and an NLTS identification module 236. When a waveform is received from the magnetic head/media channel 204, and the VTB detector 216 outputs the most likely binary sequence {circumflex over (b)}k corresponding to the received waveform, the NLTS identity index module 224 identifies the bit pattern in each successive segment of the binary sequence. The length of the bit patterns identified by the NLTS identify index module 224 is determined by the value of the parameter d. The binary segment length being equal to d+1. The bit patterns identified by the NLTS identity index module 224 are used to identify values for the NLTS shift estimate. Each value of the NLTS shift estimate τ is a function of the preceding bit pattern (τk−i)(bk−i−d, bk−i−d+1, . . . , bk−i)). An NLTS value register bank 232 identifies the appropriate value of τ for each successive binary segment. The τ values are provided to the NLTS estimation module 230, as well as to the pre-compensation circuitry 238 in the write channel. The τ values provided to the NLTS error estimation module 230 are used to calculate the NLTS error estimate nk for the binary transitions in the received waveform. The NLTS estimate nk is subtracted from the error signal ek at summing junction 234 to produce the difference signal δk. δk is provided to the NLTS identification module 236 along with the discrete-time differentiation of the target step response 228. The NLTS identification module 236 adjusts the values of τ as described above in an effort to reduce the magnitude of δk. The adjusted values of τ are then stored in the NLTS value register bank 232, replacing the previous estimates corresponding to the various bit patterns generated by the binary segments of length d+1. Thus, the NLTS values that are not fixed are continually refined, and improved NLTS values are provided to the pre-compensation circuitry 238 so that the write channel can compensate for expected NLTS shift when it writes data to the magnetic head/media channel 14.
In various embodiments, two or more of the modules and/or blocks shown in
Referring now to
The HDD 400 may communicate with a host device (not shown) such as a computer, mobile computing devices such as personal digital assistants, cellular phones, media or MP3 players and the like, and/or other devices via one or more wired or wireless communication links 408. The HDD 400 may be connected to memory 409 such as random access memory (RAM), low latency nonvolatile memory such as flash memory, read only memory (ROM) and/or other suitable electronic data storage.
Referring now to
The DVD drive 410 may communicate with an output device (not shown) such as a computer, television or other device via one or more wired or wireless communication links 417. The DVD 410 may communicate with the mass data storage 418, which stores data in a nonvolatile manner. The mass data storage 418 may include a hard disk drive (HDD). The HDD may have the configuration shown in
Referring now to
The HDTV 420 may communicate with the mass data storage 427 that stores data in a nonvolatile manner such as on a magnetic storage devices. At least one HDD may have the configuration shown in
Referring now to
The present invention may also be implemented in relation to other control systems 440 of the vehicle 430. For example, the control system 440 may likewise receive signals from input sensors 442 and/or output control signals to one or more output devices 444. In some implementations, the control system 440 may be part of an anti-lock braking system (ABS), a navigation system, a telematics system, a vehicle telematics system, a lane departure system, an adaptive cruise control system, a vehicle entertainment system such as a stereo, DVD, compact disc and the like. Still other implementations are contemplated.
The powertrain control system 432 may communicate with mass data storage 446 that stores data in a nonvolatile manner. The mass data storage 446 may include magnetic storage devices such as hard disk drives HDD. At least one HDD may have the configuration shown in
Referring now to
The cellular phone 450 may communicate with mass data storage 464 that stores data in a nonvolatile manner on magnetic storage devices such as hard disk drives HDD. At least one HDD may have the configuration shown in
Referring now to
The set top box 480 may communicate with the mass data storage 490 that stores data in a nonvolatile manner. The mass data storage 490 may include magnetic storage devices for example hard disk drives HDD. At least one HDD may have the configuration shown in
Referring now to
The media player 500 may communicate with mass data storage 510 that stores data such as compressed audio and/or video content in a nonvolatile manner. In some implementations, the compressed audio files include files that are compliant with MP3 format or other suitable compressed audio and/or video formats. The mass data storage may include magnetic storage devices for example hard disk drives HDD. At least one HDD may have the configuration shown in
It is intended that the foregoing detailed description be understood as an illustration of selected forms that the invention can take and not as a definition of the invention. It is only the following claims, including all equivalents, that are intended to define the scope of this invention.
This application is a continuation application of U.S. Non-Provisional application Ser. No. 13/176,318, filed Jul. 5, 2011 (now U.S. Pat. No. 8,358,480), which is a divisional application of U.S. Non-Provisional application Ser. No. 11/784,482, filed Apr. 6, 2007 (now U.S. Pat. No. 7,974,032), which claims the benefit of U.S. Provisional Application No. 60/790,877, filed Apr. 11, 2006, and U.S. Provisional Application No. 60/883,871, filed Jan. 8, 2007. The contents of U.S. Non-Provisional application Ser. No. 13/176,318 (now U.S. Pat. No. 8,358,480), U.S. Non-Provisional application Ser. No. 11/784,482 (now U.S. Pat. No. 7,974,032), U.S. Provisional Application No. 60/790,877, and U.S. Provisional Application No. 60/883,871 are hereby incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4532559 | Long et al. | Jul 1985 | A |
5469462 | Kahlman et al. | Nov 1995 | A |
6208477 | Cloke et al. | Mar 2001 | B1 |
6212024 | Igarashi et al. | Apr 2001 | B1 |
6429989 | Schultz et al. | Aug 2002 | B1 |
7158324 | Stein et al. | Jan 2007 | B2 |
20060002000 | Schultz | Jan 2006 | A1 |
Number | Date | Country | |
---|---|---|---|
60790877 | Apr 2006 | US | |
60883871 | Jan 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11784482 | Apr 2007 | US |
Child | 13176318 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13176318 | Jul 2011 | US |
Child | 13745069 | US |