The present invention relates generally to servo control systems of data storage devices, and more particularly but not by limitation to circuitry and methods for establishing a confidence level that is indicative of a quality of a position error signal component used in servo control systems to establish a position of a head.
A typical disc drive comprises a plurality of rigid magnetic storage discs which are axially aligned and arranged about a spindle motor for rotation at a constant high speed (such as around 10,000 revolutions per minute). An array of read/write heads are provided to transfer data between tracks of the discs and a host computer in which the disc drive is mounted. The heads are mounted to a rotary actuator assembly and are controllably positioned adjacent the tracks by a closed loop servo control system.
The servo control system primarily operates in one of two selectable modes: seeking and track following. A seek operation entails moving a selected head from an initial track to a destination track on the associated disc surface through the initial acceleration and subsequent deceleration of the head away from the initial track and toward the destination track. A velocity control approach is used whereby the velocity of the head is repeatedly measured and compared to a velocity profile defining a desired velocity trajectory for the seek. Once the head has settled on the destination track, the servo system enters a track following mode of operation wherein the head is caused to follow the destination track until the next seek operation is performed.
Both track seeking and track following operations typically require generation of a position error signal (PES) which gives an indication of the radial position of the head with respect to the tracks on the disc. In high performance disc drives, the PES is derived from either a prerecorded servo disc with a corresponding servo head (a dedicated servo system), or from servo information that is embedded on each recording surface among user data blocks at predetermined intervals (an embedded servo system).
The head provides the servo information to the servo system which generates the PES with a magnitude that is typically equal to zero when the head is positioned over the center of the track (“on track”), and is nominally linearly proportional to a relative off-track distance between the head and the center of the track.
The track center for reading and writing is generally defined by servo bursts patterns or fields that are read by the read head as a read back signal. The burst patterns typically comprise a Null Pattern that causes amplitude components of the PES to approach zero amplitude when the head is positioned between two tracks. At such low levels, noise in the system can dominate the PES components thereby reducing the quality of the PES components. As a result, position information that is obtained using such low quality PES components may be unreliable.
Embodiments of the present invention provide solutions to these and other problems, and offer other advantages over the prior art.
The present invention is generally directed to methods and servo control systems for generating a confidence level of a position error signal (PES) component that is indicative of a quality of the PES component. In the method, a PES component is generated using position signal samples of a read back signal corresponding to a servo burst pattern. Next, a noise level corresponding to noise in the read back signal is extracted using the position signal samples. A confidence level is then generated based on the PES component and the noise level.
In accordance with one embodiment of the method, the step of extracting a noise level is performed by generating a transformed domain representation of the position signal samples in the form of a vector that includes noise components relating to noise in the read back signal and a position signal component corresponding to the PES component. In accordance with additional embodiments of the method, the noise component having a maximum absolute value relative to the other noise components is set as the noise level. In accordance with one embodiment of the invention, the confidence level is generated by first calculating a confidence level ratio of the PES component to the noise level. The confidence level is then set based on a comparison between the ratio and a threshold value.
The servo control system of the present invention includes a transformation block, a position error signal (PES) component extractor, a noise extractor, and a confidence level generator. The transformation block is configured to receive position signal samples of a read back signal corresponding to a servo burst pattern taken at a sampling frequency. A transformed domain representation of the position signal samples is then generated by the transformation block based on the sampling frequency and the servo burst pattern. The PES component extractor is configured to extract a PES component of a PES based on the position signal samples. The noise extractor is configured to extract a noise level from the transformed domain representation. The confidence level generator is configured to generate a confidence level that is indicative of a quality of the PES component based on the PES component and the noise level.
In accordance with one embodiment of the system, the transformation block includes a plurality of multipliers, each configured to output a multiplication of the position signal samples with a row of a transformation matrix, and summing blocks configured to receive the outputs from the multipliers and produce vector components of the transformed domain representation. The vector components of the transformed domain representation include noise components corresponding to noise in the read back signal and a position signal component corresponding to the PES component. One embodiment of the extractor block includes a comparator configured to receive absolute values of the noise components and output a maximum thereof as the noise level. One embodiment of the confidence level generator includes an inverter configured to invert the noise level, and a multiplier configured to multiply the inverted noise level with an absolute value of the PES component to thereby produce a confidence level ratio. The confidence level generator is configured to produce the confidence level based on the confidence level ratio.
Other features and benefits that characterize embodiments of the present invention will be apparent upon reading the following detailed description and review of the associated drawings.
The summing junction 164 receives a reference position output signal 170 (τ) and a position estimate output signal 168 ({circumflex over (τ)}). The reference position output signal 170 indicates a desired head position relative to a center of a track that is being read. The summing junction 164 calculates the difference between the desired and estimated signals 170 and 168 to provide the error output 158 that is representative of a desired adjustment of the position of the head slider.
The error output 158 is provided to the controller 152, which in turn produces a control output 154 for the plant 156. The plant 156 is configured to move the position of the transducing head toward the desired position indicated by signal 170, based on the control output 154. The control output 154 typically comprises a voice coil current, or an output to a microactuator, that is provided to a voice coil motor (such as VCM 118) or a microactuator of the plant 156, which responsively moves the head slider toward the desired position.
The plant 156 represents the magnetic (or possibly optical) recording system whose servo data output signal 162 is a read back signal with servo specific position information. The read back signal is produced in response to sensing of servo sectors on the recording medium, such as a disc (such as disc of disc pack 106 in
The read back signal 162 is provided to the servo demodulator 166, which includes circuitry that demodulates and decodes the position data to extract the PES and the current track position, which is provided in the position estimate output signal 168. When the desired position of the head indicated by the reference signal 170 is set to zero for track center, the difference between the position estimate signal 168 and the reference or desired position signal 170 will be the PES once the head is positioned over the desired track. However, the desired position of the head may be an offset value from the center of the track. As a result, once the head is positioned over the desired track, the error output 158 may consist of a difference between a desired PES representative of a desired position within the track and the actual or estimated PES produced by the servo demodulator that is representative of the current position of the head relative to a center of the track.
A more detailed discussion of the operation of the servo demodulator 166 will be provided with reference to
It is understood by those skilled in the art that the portion of the servo sector 200 illustrated in
Referring now to
Next, a SAM/SIM field 210 (
The servo demodulator circuit 300 (
After the PS2 field 218, a Write Splice space 222 is provided, followed by a Repeatable Run Out (RRO) Address Mark (AM) 224. The address mark 224 is detected with the help of “SAM/GRAY” circuit 326 (
Because of the limitations of the servo loop latency in
The parameter φ stands for the modulator phase error, which will be assumed to be for a Null Pattern for the PS1 and PS2 fields to simplify the discussion of the PES component extractor 328. After processing the PS1 field by summing the corresponding samples 352 of the read back signal 310, the PES component extractor 328 outputs a number PESn(ε), which is the normal or in-phase component of the PES 330, where ε represents the amount of off-track. After processing the PS2 field, the PES component extractor 328 outputs another number PESq(ε), which is the quadrature component of the PES 330.
The normal and quadrature components of the PES 330 can be further processed to obtain their Seamless representations. The normal (Sn) and quadrature (Sq) components of the Seamless representation are determined in accordance with Equations 1 and 2 below. The Seamless pair is provided to a final linearization block to obtain the error signal 158 (
Confidence Level Generation
In the conventional method explained above, the PES component extractor 328 outputs 2 numbers PESn(ε) and PESq(ε) as a function of off-track amount (ε) for each PS1 and PS2 fields. However, if the magnetic head is, for example, in the middle of either of the two servo burst patterns PS1 or PS2, the magnetization from upper portion of the pattern will cancel the magnetization of the lower portion of the pattern. Hence we will have no amplitude component to the signal from which to estimate the PES. As a result, the SNR at that time will be zero and the PES amplitude component will generally correspond to the amplitude of noise (i.e., noise level) in the read back signal and will not be an accurate representation of the desired position error. The present invention provides additional information about the quality of the PES components in the form of a confidence level, which can be further utilized to improve the performance of the system.
At step 362, a noise level N corresponding to noise in the read back signal 310 is extracted from the position signal samples 352. Preferably, the noise level is the dominant (i.e., maximum amplitude) noise level or component in the read back signal. Finally, at step 364, the confidence level C is generated based on the noise level and the PES component.
The transformation block 370 is configured to receive the (correlated) position signal samples from the A/D converter 316 and generate a transformed domain representation output (transformed vector {overscore (y)}) of the position signal samples based on the sampling frequency and the servo burst pattern corresponding to the noisy read back signal 310. This conversion is generally accomplished using a transform, which is based on the read back signal sampling frequency and the servo burst pattern or field corresponding to the read back signal samples 352.
An explanation of the conversion of the position signal samples 352 to their transform domain representation will be provided based on the exemplary servo burst patterns or fields PS1 and PS2 provided in
For the Null Patterns of PS1 and PS2, the Hadamard transform is used to generate the desired transform domain representation of the position signal samples. The Hadamard transform is a linear transform which is represented by its associated transformation matrix Ĥ. In general, the Hadamard domain representation {overscore (y)} of a vector {overscore (x)} (e.g., the position signal samples 352) is obtained by multiplying the vector {overscore (x)} with the transformation matrix Ĥ, as shown in Equation 3.
{overscore (y)}=Ĥ{overscore (x)} Eq. 3
Some basic properties of the Hadamard transformation matrix Ĥ include the following: the elements of Ĥ are +1's or −1's; Ĥ is a square matrix; and Ĥ is orthogonal (i.e. ĤNTĤN=NÎN, where N is the size of Ĥ, ĤT represents the transpose of Ĥ, and ÎN stands for the identity matrix with size N).
There are different methods that can be used to construct the Hadamard matrix. However, the most common method is provided in Equation 4, where Ĥ2 is defined in accordance with Equation 5. As can be seen, this specific construction method of the Hadamard matrix requires N to be an integer power of 2. Although, other methods can be used to construct the Hadamard matrices when N is not necessarily a power of 2, the construction mechanism described above will be used to simplify the discussion of the present invention.
A closer look at the construction of a few Hadamard matrices will now be provided. Using the Hadamard matrix Ĥ2 provided in Equation 5 together with Equation 4, Ĥ4 can be found as provided in Equation 6:
Then, using Equation 6 with Equation 4, Ĥ8 can be obtained as provided in Equation 7.
If we want to get Ĥ16, then we use Ĥ8 above together with Equation 4, and so on. Because of their specific construction method, the complexity of these matrices are on the order of N log N, like the fast Fourier transform.
The Hadamard matrices have several useful properties. For instance, because of the orthogonality property, the rows (or columns) of those matrices can be viewed as vectors orthogonal to each other which together span the whole signal space. In other words, multiplication of any row of these matrices with an arbitrary signal vector will give the projection of that arbitrary vector to that specific row. Additionally, other than the first row (or column) of the matrices, the number of +1 s and −1 s at each row (or column) is equal. Multiplication of the first row, which corresponds to all 1's, with the position signal samples (i.e., the signal vector) gives the mean value of that vector. This will, for example, correspond to the amount of overall base line shift in the system. Furthermore, since the second row corresponds to alternating +1's and −1's, multiplication of the second row with the signal vector will give the amount of the highest frequency content in signal vector. Significantly, every row of Hadamard matrix correlates the signal vector with a specific pattern, and gives an indication how much of that pattern is observed within the data set. In addition to these properties, one of the rows (or columns) of the Hadamard matrix corresponds to the servo PS1 and PS2 field (i.e., the position or read back signal samples) for the Null Pattern if the number of pulses and number of samples of each pulse are chosen carefully.
Referring again to
The noise extractor 374 is configured to extract a noise level 380 (N), preferably a dominant noise level, from the transformed domain representation of the position signal samples 352 (transformed vector {overscore (y)}), to complete step 362 of the method. In general, the noise components of the transformed vector {overscore (y)} include all of the components of the vector {overscore (y)} except the position signal component ({overscore (y)}(nd)) of the transformed vector {overscore (y)}. The noise component of the transformed vector {overscore (y)} having a maximum absolute value relative to the other noise components represents the dominant noise level 380 (N). Thus, the noise level N can be represented as N=max{abs[{overscore (y)}(n)]}, where n is not equal to nd.
The confidence level generator 376 is generally configured to perform step 364 of the method (
An example of the operation of the system will now be provided using the Hadamard transformation and an assumption that the number of pulses in each PS field is equal to power of 2 and the number of samples for each pulse is also equal to power of 2. Assuming that we have 32 pulses (or 16 servo periods) in each PS field, and we have 2 samples for each pulse (or 4 samples for each period), then one servo period will be [1 1 −1 −1], which is repeated 16 times. We assume that this data is written in PS1, and half a track width shifted version is written in PS2. If we get the Hadamard matrix Ĥ64 of length 64, we see that this data sequence is equal to the 3rd row of Ĥ64. Then, all the PES component information will be at nd equal to 3, and the other components of {overscore (y)}(n) will represent noise. In other words, the position signal component of the transformed vector {overscore (y)} (i.e., the PES component 380) will be {overscore (y)}(3) and the confidence level C will be obtained by comparing the absolute value of the vector {overscore (y)}(3) with the maximum absolute value of the other components (i.e., noise components) of the transformed vector {overscore (y)}.
Referring again to
One embodiment of the noise extractor 374 includes absolute value blocks 394, which obtain the absolute values of the noise component of the transformed vector {overscore (y)} received from the transformation block 370. Additionally, the noise extractor 374 includes a comparator 396. The comparator 396 selects the maximum of the absolute values of the noise components provided by the absolute value blocks 394, which is then selected as the dominant noise level 380 (N). The noise level output 380 is then provided to the confidence level generator 376.
The multiplier 390 and the summing block 394 of the transformation block 370 corresponding to the PES component extractor 372 produce the position signal component of the transformed matrix {overscore (y)}, which corresponds to the PES component 378 of the read back signal. In accordance with one embodiment of the servo control system, the resultant PES component 378 is provided as an output signal. Additionally, the PES component is provided to the confidence level generator 376.
The confidence level generator 376 is configured to calculate an absolute value of the PES component 378 with absolute value block 402, which is then provided to a comparator 404. The dominant noise level 380 (N) is also provided to the comparator 404. The comparator generates the confidence level 382 (C) in response to a comparison between the PES component 378 and the noise level 380.
In accordance with one embodiment of the invention, the comparison between the PES component 378 and the noise level 380 involves calculating a confidence level ratio M of the absolute value of the PES component 378 to the noise level 380, as indicated in Equation 8.
M=abs[y(nd)]/N Eq. 8
In accordance with one embodiment of the invention, the confidence level 382 (C) is set based on a comparison of the ratio M to a threshold value Mmax, which can be set empirically. When M is less than Mmax the confidence level C is set to the ratio M and, otherwise, the confidence level C is set to 1 (or other constant value), as indicated in Equation 9. Accordingly, the confidence level will change as a function of the noise amount in the read back signal of the system. The larger the noise, the lower the confidence level will be.
Many alternative methods for calculating the confidence level C can be also used in accordance with the particular servo control system or the manner in which it is used.
Accordingly, one embodiment of the comparator 404 includes an inverter 406 that inverts the dominant noise level 380. The output from the inverter 406 is then multiplied by the PES component 378 using a multiplier 410 to calculate the ratio M, which is output as a signal 412. A threshold detector 414 then compares the ratio 412 to a predetermined value 416 (Mmax) and outputs the confidence level 382 (C) according to Equation 9.
Although the servo loop latency of the servo system of
The complexity of the architecture in
In accordance with one embodiment of the invention, only one row h(u) of the transformation matrix Ĥ corresponding to the likely dominant noise component N of the read back signal 310 is selected to generate the noise component {overscore (y)}(u) of the transformed vector {overscore (y)}, which will be used as the noise level. The noise level ({overscore (y)}(u)) is provided to the absolute value block 394 of the noise extractor 374 to generate the final noise level 380, as shown in
Confidence Level Generation Simulation
In order to provide a more thorough understanding of the invention, an example of the servo system in operation will be provided. The pattern utilized in this example will be the Null Pattern discussed above that consists of 32 pulses (or 16 servo periods) in each PS field (PS1 and PS2), and we have 2 samples for each pulse (or 4 samples for each period). Then, one servo period will be [1 1 −1 −1], and this repeats itself 16 times. We assume that this data is written in PS1, and half a track width shifted version is written in PS2.
The output of the A/D converter 316 in (
A correlator 340 (shown only in
However, there is also noise in the system, and as the off-track value becomes closer to −0.5 of the track width for PS1 the signal amplitude reduces. This means that the Signal-to-Noise Ratio (SNR) of the system reduces. Thus, at off-track values where the signal amplitude is small, the noise in the system will mostly affect the off-track amount estimation. As a result, the PES component will likely be of low quality and highly inaccurate most of the time. The present invention generates additional information regarding the quality of the extracted PES component in the form of a confidence level for the PES component, using the method described above.
For this example we will utilize the architecture of the servo system shown in
With Mmax set to 5 (which corresponds to 10 log10(5)≈7 dB), 100 servo PS1 and PS2 bursts at 20 dB of electronic noise for different off-track values are run.
Although the confidence level numbers generated by the simplified servo system architecture of
Similar results have been observed for longitudinal recording channels, as opposed to the perpendicular recording channels utilized in the above example.
It is to be understood that even though numerous characteristics and advantages of various embodiments of the invention have been set forth in the foregoing description, together with details of the structure and function of various embodiments of the invention, this disclosure is illustrative only, and changes may be made in detail, especially in matters of structure and arrangement of parts within the principles of the present invention to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed. For example, the particular elements may vary depending on the particular application for the method or system of the present invention while maintaining substantially the same functionality without departing from the scope and spirit of the present invention.
In particular, the description of the present invention utilized the Null Pattern, as an exemplary servo pattern. The selection of that servo pattern resulted in the use of the Hadamard transform as the exemplary transform used to generate the transformed domain representation (transformed vector {overscore (y)}) of the position signal samples of the read back signal. However, it should be understood that confidence levels can be generated for any servo pattern using its associated transform, as we can always find the null space of the signal component corresponding to any given servo pattern. This null space helps us estimate the amount of noise in the system, from which a noise level can be generated and compared to the PES component to obtain the confidence level. Additionally, if tuned accordingly, the proposed servo system architectures, such as that provided in
Furthermore, the method described herein regarding the generation of the confidence levels is only one of many possible methods that may be used. For instance, different components of the servo control system may be utilized to generate the confidence levels and they may be processed in other blocks of the servo control system.
Finally, although the preferred embodiment described herein is directed to a servo control system for disc drive, it will be appreciated by those skilled in the art that the teachings of the present invention can be applied to other control systems, without departing from the scope and spirit of the present invention.
Number | Name | Date | Kind |
---|---|---|---|
4247938 | Kurihara et al. | Jan 1981 | A |
5309299 | Crossland et al. | May 1994 | A |
5602692 | Freitas et al. | Feb 1997 | A |
5985163 | Cha et al. | Nov 1999 | A |
6005739 | Yun | Dec 1999 | A |
6014288 | Cha et al. | Jan 2000 | A |
6049441 | Ottesen | Apr 2000 | A |
6069764 | Morris et al. | May 2000 | A |
6078463 | Pahr | Jun 2000 | A |
6091567 | Cooper et al. | Jul 2000 | A |
6175472 | Valent | Jan 2001 | B1 |
6181505 | Sacks et al. | Jan 2001 | B1 |
6188539 | Elliot et al. | Feb 2001 | B1 |
6195220 | Ellis et al. | Feb 2001 | B1 |
6243224 | Sacks et al. | Jun 2001 | B1 |
6249392 | Sacks et al. | Jun 2001 | B1 |
6327108 | Ellis et al. | Dec 2001 | B1 |
6377413 | Sacks et al. | Apr 2002 | B1 |
6392834 | Ellis | May 2002 | B1 |
6411459 | Belser et al. | Jun 2002 | B1 |
6426845 | Sacks et al. | Jul 2002 | B1 |
6469849 | Ellis et al. | Oct 2002 | B1 |
6476997 | Fukushima et al. | Nov 2002 | B1 |
6480353 | Sacks et al. | Nov 2002 | B1 |
6490111 | Sacks | Dec 2002 | B1 |
6490117 | Sacks et al. | Dec 2002 | B1 |
6510015 | Sacks et al. | Jan 2003 | B1 |
6510752 | Sacks et al. | Jan 2003 | B1 |
6522493 | Dobbek et al. | Feb 2003 | B1 |
6538838 | Sacks et al. | Mar 2003 | B1 |
6556933 | Sacks et al. | Apr 2003 | B1 |
6574068 | Hampshire et al. | Jun 2003 | B1 |
6608477 | Sacks et al. | Aug 2003 | B1 |
6614608 | Belser et al. | Sep 2003 | B1 |
6627254 | Angelo et al. | Sep 2003 | B1 |
6643090 | Pruett | Nov 2003 | B1 |
6678110 | Ellis | Jan 2004 | B1 |
6707624 | Erden et al. | Mar 2004 | B1 |
6751045 | Morris et al. | Jun 2004 | B1 |
6762895 | Osafune | Jul 2004 | B1 |
6768956 | Hayashi | Jul 2004 | B1 |
6798592 | Codilian et al. | Sep 2004 | B1 |
6798606 | Tang et al. | Sep 2004 | B1 |
20030147171 | Li et al. | Aug 2003 | A1 |