Imported: 13 Feb '17 | Published: 10 Feb '15
USPTO - Utility Patents
A data storage device is disclosed comprising a head actuated over a disk. A plurality of data tracks on the disk are first written, and a metric representing a spacing between at least two of the first written data tracks is generated. At least two of the plurality of data tracks are rewritten based on the generated metric such that the rewritten data tracks comprise a more equal spacing compared to the first written data tracks.
Data storage devices such as disk drives comprise a disk and a head connected to a distal end of an actuator arm which is rotated about a pivot by a voice coil motor (VCM) to position the head radially over the disk. The disk comprises a plurality of radially spaced, concentric tracks for recording user data sectors and servo sectors. The servo sectors comprise head positioning information (e.g., a track address) which is read by the head and processed by a servo control system to control the actuator arm as it seeks from track to track.
FIG. 1 shows a prior art disk format 2 as comprising a number of servo tracks 4 defined by servo sectors 60-6N recorded around the circumference of each servo track. Each servo sector 6i comprises a preamble 8 for storing a periodic pattern, which allows proper gain adjustment and timing synchronization of the read signal, and a sync mark 10 for storing a special pattern used to symbol synchronize to a servo data field 12. The servo data field 12 stores coarse head positioning information, such as a servo track address, used to position the head over a target data track during a seek operation. Each servo sector 6i further comprises groups of servo bursts 14 (e.g., N and Q servo bursts), which are recorded with a predetermined phase relative to one another and relative to the servo track centerlines. The phase based servo bursts 14 provide fine head position information used for centerline tracking while accessing a data track during write/read operations. A position error signal (PES) is generated by reading the servo bursts 14, wherein the PES represents a measured position of the head relative to a centerline of a target servo track. A servo controller processes the PES to generate a control signal applied to a head actuator (e.g., a voice coil motor) in order to actuate the head radially over the disk in a direction that reduces the PES.
FIG. 2A shows a data storage device in the form of a disk drive according to an embodiment comprising a head 16 actuated over a disk 18. The disk drive further comprises control circuitry 20 configured to execute the flow diagram of FIG. 2B, wherein a plurality of data tracks on the disk are first written (block 22), and a metric representing a spacing between at least two of the first written data tracks is first generated (block 24). At least two of the plurality of data tracks are rewritten based on the generated metric (block 26) such that the rewritten data tracks comprise a more equal spacing compared to the first written data tracks.
In the embodiment of FIG. 2A, a plurality of servo tracks 28 are defined by embedded servo sectors 300-30N, wherein data tracks are defined relative to the servo tracks at the same or different radial density. The control circuitry 20 processes a read signal 32 emanating from the head 16 to demodulate the servo sectors and generate a position error signal (PES) representing an error between the actual position of the head and a target position relative to a target track. The control circuitry 20 filters the PES using a suitable compensation filter to generate a control signal 34 applied to a voice coil motor (VCM) 36 which rotates an actuator arm 38 about a pivot in order to actuate the head 16 radially over the disk surface 18 in a direction that reduces the PES. The servo sectors 300-30N may comprise any suitable head position information, such as a track address for coarse positioning and servo bursts for fine positioning. The servo bursts may comprise any suitable pattern, such as an amplitude based servo pattern or a phase based servo pattern.
In one embodiment, there may be a non-uniform spacing between the servo tracks 28 due to errors (e.g., track squeeze) when servo writing the servo sectors 300-30N. For example, the servo bursts within the servo sectors 300-30N may be written with a non-uniform radial spacing resulting in a non-uniform spacing between the centerlines of the servo tracks 28. Accordingly when servoing on non-uniformly spaced servo tracks, the resulting data tracks may also be written with a non-uniform spacing an example of which is shown in FIG. 2C. In one embodiment this non-uniform spacing is estimated by generating a metric that represents the spacing, and then the metric is used to rewrite the data tracks to have a more equal spacing such as shown in FIG. 2D.
The data tracks may be rewritten to achieve a more equal spacing for any suitable reason. In one embodiment, it may be desirable to write data tracks with equal spacing so as to evaluate the quality of the head 16 independent of performance degradation due to the non-uniform spacing of the servo tracks. In another embodiment, the metric representing the spacing between adjacent data tracks may be generated during a manufacturing procedure and stored in non-volatile memory (e.g., on the disk or in a flash memory). During normal in-the-field operations, the control circuitry 20 may use the stored metrics in order to write user data to more equally spaced data tracks, thereby improving the reliability of data recovery. In one embodiment, the spacing metric may be generated for only part of the disk (e.g., a radial band of tracks) so that the resulting data tracks are more equally spaced within that region of the disk. In this embodiment, more sensitive data may be stored in the more equally spaced data track region in order to improve the reliability of data recovery. Examples of more sensitive data may include control code for the disk drive, host operating code, or random user data files (as compared to streaming audio/video files). In yet another embodiment, the spacing metric for the data tracks may be generated during normal in-the-field read operations. When the spacing metric indicates a poor quality spacing, the spacing metric may be saved and used during subsequent write operations to better align the data tracks. In one embodiment, the data tracks are written in a shingled manner (e.g., as a circular buffer) so that rewriting the data tracks during subsequent write operations does not adversely affect previously written data following a newly written data track (since the previously written data will have been relocated).
FIG. 3A illustrates an embodiment wherein a plurality of data tracks are first written in a shingled manner with an unequal spacing (e.g., due to errors in the servo sectors). For example, the second data track is written with a −1/8 track offset toward the first data track, and the third data track is written with a +2/8 track offset away from the second data track. FIGS. 3B-3F illustrate an example of rewriting the data tracks to have a more equal spacing based on the spacing metrics generated in FIG. 3A. The first data track is rewritten as shown in FIG. 3B with a zero track offset. The second data track is rewritten with a +1/8 track offset which accounts for the −1/8 track offset of the second data track shown in FIG. 3A. FIG. 3C shows that the third data track is rewritten with a −1/8 track offset which accounts for the +1/8 track offset of the second rewritten data track and the +2/8 track offset of the third data track shown in FIG. 3A. This processes is repeated such that the offset corrections propagate through to the last rewritten data track after which the data tracks will have been rewritten with a more equal spacing as shown in FIG. 3F. In one embodiment, less than all of the data tracks may be rewritten, for example, if fewer data tracks are needed to evaluate the quality of the head 16. In the example embodiment of FIGS. 3A-3F, the target data track spacing is shown to be half a data track; however, the target data track spacing may be any suitable value.
In one embodiment, a plurality of metrics are generated representing the spacing between the first written data tracks such as shown in FIG. 3A, and then a target spacing for the data tracks may be determined relative to the average of the metrics. For example, in one embodiment the spacing metric may be generated as the track average amplitude (TAA) of the read signal when reading each data track which is proportional to the data track spacing. Referring again to the example of FIG. 3A, the TAA for the first data track will be smaller due to the track squeeze from the second data track, and the TAA for the second data track will be larger due to less overlap from the third data track. Accordingly in one embodiment the target track spacing may be represented as the average TAA for the plurality of first written data tracks. The metric generated for each data track may then be represented as the delta between the measured TAA and the average TAA as illustrated in FIG. 5. That is, the delta represents the spacing offset of each data track which is used when rewriting the data tracks to have a more equal spacing as shown in FIGS. 3B-3F.
In one embodiment, the metric that represents the data track spacing is calibrated by generating a track spacing profile representing a spacing between adjacent data tracks relative to the metric as shown in FIG. 4. The track spacing profile relative to the metric may be generated in any suitable manner. In one embodiment, two data tracks may be written in an iterative manner while incrementally decreasing the spacing (as determined from the servo sectors). After each iteration of writing the two data tracks, the spacing metric (e.g., TAA) may be generated by reading the first data track, thereby generating the track spacing profile such as shown in FIG. 4. In one embodiment, the track spacing profile may be generated at a plurality of radial locations and the results averaged so as to account for any non-uniform spacing of the servo tracks at any particular radial location. Once the track spacing profile has been generated, in one embodiment it is used to determine the offset applied to the servo system when rewriting the data tracks such as described above with reference to FIGS. 3A-3F. That is, the metric is generated by reading each written data track of FIG. 3A so as to determine the offsets needed to rewrite the data tracks based on the track spacing profile shown in FIG. 4.
In one embodiment, the sensitivity of the metric relative to the track spacing may decrease as the track spacing increases beyond an upper threshold, or the sensitivity may increase when the track spacing decreases below a lower threshold. This is illustrated in the example track spacing profile shown in FIG. 4 wherein the metric may have a linear relationship to the track spacing over a particular region. In one embodiment, the offset applied to the servo system in order to adjust the spacing of the rewritten data tracks as described above may be determined based on the linear region of the track spacing profile where there is sufficient sensitivity of the metric to the track spacing, but not too steep for the system to control. Also in one embodiment, the region evaluated in the track spacing profile may correspond to a typical track spacing achieved when rewriting the data tracks so as to achieve sufficient correlation between the measured offsets and the adjustment to the servo system to achieve the desired track spacing of the rewritten data tracks.
In one embodiment, the first rewritten data tracks such as shown in FIG. 3F may still comprise an unequal spacing due, for example, to errors in the track spacing profile shown in FIG. 4. Accordingly, in one embodiment the above described process may be iterated on the first rewritten data tracks to generate second rewritten data tracks that have a more equal spacing. This is illustrated in FIG. 5 which shows the track spacing deltas of the first written data tracks, the track spacing deltas of the first rewritten data tracks, and the track spacing deltas of the second rewritten data tracks. In the example of FIG. 5, the track spacing deltas converge toward the average spacing metric with each subsequent iteration. In one embodiment, the data tracks may be rewritten over a number of iterations until the average spacing delta falls below a threshold.
Any suitable spacing metric may be generated in the embodiments, in addition to or instead of the TAA metric described above. In one embodiment, any suitable spacing metric that represents a degree of track squeeze between the data tracks and thereby affects the signal-to-noise ratio (SNR) of the read signal may be generated. Examples of other suitable spacing metrics may include an error between the read signal samples and target signal samples of a target response, timing control metrics, gain control metrics, and sequence detection metrics (e.g., branch metrics, log-likelihood ratios (LLRs), bit error rate, etc.).
In one embodiment, a suitable test pattern may be written to the data tracks which may facilitate generating the spacing metric. For example, in one embodiment a periodic pattern (e.g., a 2T pattern) may be written to the disk during a manufacturing procedure which may be read to generate the spacing metric. In another embodiment, normal user data read from the data tracks during normal read operations may be used to generate the spacing metric. In yet another embodiment, the known patterns within a data sector (e.g., the preamble and/or sync mark) may be used to generate the spacing metric.
Any suitable control circuitry may be employed to implement the flow diagrams in the above embodiments, such as any suitable integrated circuit or circuits. For example, the control circuitry may be implemented within a read channel integrated circuit, or in a component separate from the read channel, such as a disk controller, or certain operations described above may be performed by a read channel and others by a disk controller. In one embodiment, the read channel and disk controller are implemented as separate integrated circuits, and in an alternative embodiment they are fabricated into a single integrated circuit or system on a chip (SOC). In addition, the control circuitry may include a suitable preamp circuit implemented as a separate integrated circuit, integrated into the read channel or disk controller circuit, or integrated into a SOC.
In one embodiment, the control circuitry comprises a microprocessor executing instructions, the instructions being operable to cause the microprocessor to perform the flow diagrams described herein. The instructions may be stored in any computer-readable medium. In one embodiment, they may be stored on a non-volatile semiconductor memory external to the microprocessor, or integrated with the microprocessor in a SOC. In another embodiment, the instructions are stored on the disk and read into a volatile semiconductor memory when the disk drive is powered on. In yet another embodiment, the control circuitry comprises suitable logic circuitry, such as state machine circuitry.
While the above examples concern a disk drive, the various embodiments are not limited to a disk drive and can be applied to other data storage devices and systems, such as magnetic tape drives, solid state drives, hybrid drives, etc. In addition, some embodiments may include electronic devices such as computing devices, data server devices, media content storage devices, etc. that comprise the storage media and/or control circuitry as described above.
The various features and processes described above may be used independently of one another, or may be combined in various ways. All possible combinations and subcombinations are intended to fall within the scope of this disclosure. In addition, certain method, event or process blocks may be omitted in some implementations. The methods and processes described herein are also not limited to any particular sequence, and the blocks or states relating thereto can be performed in other sequences that are appropriate. For example, described tasks or events may be performed in an order other than that specifically disclosed, or multiple may be combined in a single block or state. The example tasks or events may be performed in serial, in parallel, or in some other manner. Tasks or events may be added to or removed from the disclosed example embodiments. The example systems and components described herein may be configured differently than described. For example, elements may be added to, removed from, or rearranged compared to the disclosed example embodiments.
While certain example embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions disclosed herein. Thus, nothing in the foregoing description is intended to imply that any particular feature, characteristic, step, module, or block is necessary or indispensable. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems described herein may be made without departing from the spirit of the embodiments disclosed herein.