Write timing for RRO fields in constant density servo systems

The method synchronizes RRO data writing in constant density servo systems by adjusting timing and phase alignment, addressing the challenges of varying frequencies and asynchronous head positions to improve data density and reduce errors in disk drives.

JP7803660B2Active Publication Date: 2026-01-21MARVELL ASIA PTE LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2021133838
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-08-17
Filing Date
2021-08-19
Publication Date
2026-01-21
Estimated Expiration
2041-08-19

AI Technical Summary

Technical Problem

In constant density servo systems, the timing of writing Repeatable Run-out (RRO) fields in storage devices like disk drives is challenging due to varying track frequencies and the asynchronous nature of read and write head positions, leading to potential position errors and inefficiencies in data density.

Method used

A method for writing RRO data involves iterating through each track, determining frequency based on position, synchronizing with servo marks, and adjusting timing delays to achieve a predetermined offset, with optional phase alignment to match the servo pattern, using techniques like phase calibration patterns and improved Disk Synchronous Write (DSW) control to maintain synchronization.

Benefits of technology

This approach ensures consistent and accurate writing of RRO data across tracks, maintaining data density and reducing errors by synchronizing write operations with read head positions, thereby enhancing the precision and efficiency of disk drive performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007803660000001
    Figure 0007803660000001
  • Figure 0007803660000002
    Figure 0007803660000002
  • Figure 0007803660000003
    Figure 0007803660000003
Patent Text Reader

Abstract

To provide a method and a storage device for writing repetitive run-out data, which presents a repetitive contribution to position error, to a rotating constant density magnetic storage medium.SOLUTION: A method includes the steps for: repeating for each track at each radius of a constant density magnetic storage medium; determining the frequency of each track pattern based on a track position and desired data density; identifying the position in each servo wedge on each track based on servo synchronization mark detection; writing repetitive run-out data with constant time delay from the identification of the position in each servo wedge to each servo wadge in order to achieve a prescribed offset, and in which the time delay is inversely proportional to each radius; and repeating the step for determining for each servo wedge on each track of the constant density magnetic storage medium, the step for identifying the position, and the step for writing.SELECTED DRAWING: Figure 11
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] [CROSS-REFERENCE TO RELATED APPLICATIONS] This disclosure claims the benefit of commonly assigned and co-pending U.S. Provisional Patent Application No. 63 / 067,645, filed August 19, 2020, which is incorporated herein by reference in its entirety.

[0002] This disclosure relates to timing of write operations of Repeatable Run-out (RRO) fields in storage devices such as disk drives that use constant density writing. More specifically, this disclosure relates to techniques for controlling the timing of writing to RRO fields in specific tracks of constant density servo wedges. [Background technology]

[0003] The background information provided herein is intended to generally illustrate the contents of the present disclosure. The inventors' work described in the Background Art section is not explicitly or implicitly admitted to be prior art to the inventions of the present disclosure, to the extent that it is described in the Background Art section, and together with aspects of the present specification that may not otherwise be recognized as prior art at the time of filing.

[0004] In magnetic recording, for example, reading and writing is performed by one or more heads that move relative to the surface of the storage medium. Many magnetic disk drives, for example, include multiple individual disks or "platters," which may have two sides. That is, each platter may record data on each of its two sides. Thus, such disk drives have at least two heads, one for each platter. In fact, for each platter, there is typically at least one write head and at least one separate read head, so such disk drives typically have at least four heads per platter.

[0005] In a typical configuration, all of the heads in a particular disk drive are mounted on arms attached to a common actuator, which controls the radial position of the heads (the angular, tangential, or circumferential components of motion are given by the rotation of the platter relative to the heads). This is true whether there are one or many platters, and one or multiple heads per platter.

[0006] To control the radial position selected by the actuator, each surface of each platter has position information, called "servo" data, distributed across it. The servo data is typically distributed in servo "wedges" spaced (usually equally spaced) across the platter surface. By reading the servo data as each servo wedge passes under the read head, the disk drive controller can determine the head's precise radial (and angular) position and use that determination as feedback to control the position of the read or write head, depending on the desired operation. One component of the servo data is the "Repeatable run-out" field, or RRO field; because the RRO field is characterized as a repeatable contribution to error, the RRO field can be considered a factor in position determination.

[0007] In a typical disk drive, data is written at a constant frequency, determined by the disk rotation speed, regardless of track, for example. This means that data is written less densely on tracks closer to the outer diameter than on tracks closer to the inner diameter. Other disk drives may use zoned writing, in which the disk is divided radially into zones. The density at the innermost radius of each zone is approximately the same, but again, the density decreases radially within each zone. More recently, constant-density writing has been developed, which requires writing at different frequencies on different tracks, including when writing servo data such as RRO patterns. Summary of the Invention

[0008] According to an implementation of the disclosed invention, a method for writing repeatable runout data representing repeatable contributions to position error to a rotating constant density magnetic storage medium includes: iterating for each track at each radius of the constant density magnetic storage medium; determining each track pattern frequency based on the track position and a desired data density; locating a position within each servo wedge on each track based on servo synchronization mark detection; writing the repeatable runout data to each servo wedge at a fixed time delay from locating the position within each servo wedge to achieve a predetermined offset, the time delay being inversely proportional to each radius; and repeating the determining, locating, and writing steps for each servo wedge on each track of the constant density magnetic storage medium.

[0009] In a first implementation of such a method, the step of locating a position within each servo wedge based on servo synchronization mark detection may include the step of locating a position within each servo wedge by detecting each servo synchronization mark within each servo wedge.

[0010] According to a first aspect of this first implementation, the step of writing repeatable runout data to each servo wedge at a predetermined offset may include writing the repeatable runout data to the servo wedge after a fixed time delay from detecting each servo synchronization mark to arrive at a repeatable runout field position within each servo wedge.

[0011] According to a second aspect of this first implementation, the method may further include locking a clock source to the rotation of the rotating constant density magnetic storage medium by measuring the elapsed time between detection of subsequent servo synchronization marks and adjusting the clock source so that the measured elapsed time between any two subsequent servo synchronization marks matches the elapsed time between any other two subsequent servo synchronization marks.

[0012] In a second implementation of such a method, the step of locating a position within each servo wedge based on servo synchronization mark detection may include the steps of locating a first servo wedge by detecting a first servo synchronization mark and determining the position of each subsequent servo wedge by adding a predetermined interval to each servo wedge position, and the method may further include the steps of continuously detecting each servo synchronization mark, measuring each time interval between each servo synchronization mark detection and a predetermined event in each servo wedge, and taking corrective action if each measured time interval between each servo synchronization mark detection and the predetermined event in each servo wedge differs from each measured time interval between a previous servo synchronization mark detection and a previous occurrence of the predetermined event in each previous servo wedge.

[0013] According to a first aspect of this second implementation, taking corrective action may include ceasing writing of repeatable runout data to the rotating constant density magnetic storage medium.

[0014] A second aspect of this second implementation may further include a step of locking the frequency of the clock source to the rotation of the rotating constant-density magnetic storage medium, the steps including: measuring the elapsed time between the detection of a first servo synchronization mark and the detection of each subsequent servo synchronization mark; and taking corrective action if the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark differs from the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark, the detection of each subsequent servo synchronization mark being expected based on the expected interval between subsequent servo synchronization marks and how many intervals have passed between the first servo synchronization mark and each subsequent servo synchronization mark.

[0015] In a first example of this second aspect, taking corrective action may include adjusting the angular velocity of the rotating constant density magnetic storage medium.

[0016] A second example of this second aspect may further include aligning the phase of the repeatable runout data to the locked frequency of the clock source.

[0017] In a first variation of this second example, the step of aligning the phase of the repeatable runout data to the locked frequency of the clock source may include the steps of: writing a phase calibration pattern to each repeatable runout field in each servo wedge on each track after locking the frequency of the clock source and before writing any repeatable runout data to any servo wedge of the rotating constant density magnetic storage medium; reading the phase calibration pattern from each repeatable runout field in each servo wedge on each track and determining a respective phase offset for each repeatable runout field in each servo wedge on each track; and setting a respective delay for writing the repeatable runout data to each repeatable runout field in each servo wedge on each track to compensate for the respective phase offset.

[0018] In accordance with an implementation of the disclosed invention, a storage device includes a rotating constant density storage medium onto which servo data is written, the servo data including a repeatable runout field representing a repeatable contribution to position error, and circuitry for writing to the repeatable runout field. The circuit includes a detector configured to locate each servo wedge on each track of the constant density magnetic storage medium based on servo synchronization mark detection; and a controller configured to: iterate for each track at each radius of the constant density magnetic storage medium, determine each track pattern frequency based on the track position and a desired data density, locate a position within each servo wedge of each track of the constant density magnetic storage medium based on the detector output, write repeatable runout data to each servo wedge of each track of the constant density magnetic storage medium with a fixed time delay from locating the position within each servo wedge to achieve a predetermined offset, the time delay being inversely proportional to each radius; and repeat the determining, locating, and writing for each servo wedge on each track of the constant density magnetic storage medium.

[0019] In a first implementation of such a storage device, the controller may be configured to locate a position within each servo wedge of each track of the constant density magnetic storage medium by detecting each servo synchronization mark within each servo wedge of each track of the constant density magnetic storage medium.

[0020] According to a first aspect of this first implementation, the controller may be configured to write repeatable runout data to each servo wedge of each track of the constant density magnetic storage medium after a fixed time delay from detecting each servo synchronization mark to arrive at a repeatable runout field position within each servo wedge of each track of the constant density magnetic storage medium.

[0021] According to a second aspect of this first implementation, the controller may be configured to lock a clock source to the rotation of the rotating constant density magnetic storage medium by measuring the elapsed time between detection of subsequent servo synchronization marks and adjusting the clock source so that the measured elapsed time between any two subsequent servo synchronization marks matches the elapsed time between any other two subsequent servo synchronization marks.

[0022] In a second implementation of such a storage device, the controller may be configured to locate a position within each servo wedge by detecting a first servo synchronization mark and determine the position of each subsequent servo wedge by adding a predetermined interval to each servo wedge position; continuously detect each servo synchronization mark; measure each time interval between each servo synchronization mark detection and a predetermined event in each servo wedge; and take corrective action if each measured time interval between each servo synchronization mark detection and the predetermined event in each servo wedge differs from each measured time interval between a previous respective servo synchronization mark detection and a previous occurrence of the predetermined event in each previous servo wedge.

[0023] According to a first aspect of this second implementation, the controller may be configured to take corrective action by ceasing writing of repeatable runout data to the rotating constant density magnetic storage medium.

[0024] A second aspect of this second implementation may further include a clock source. The controller may be further configured to lock the frequency of the clock source to rotation of the rotating constant-density magnetic storage medium by measuring an elapsed time between detecting a first servo synchronization mark and detecting each subsequent servo synchronization mark, and taking corrective action if the elapsed time between the detecting the first servo synchronization mark and detecting each subsequent servo synchronization mark differs from the elapsed time between the detecting the first servo synchronization mark and detecting each subsequent servo synchronization mark, where the detecting of each subsequent servo synchronization mark is expected based on an expected interval between subsequent servo synchronization marks and how many intervals have passed between the first servo synchronization mark and each subsequent servo synchronization mark.

[0025] In a first example of this second aspect, the controller may be configured to take corrective action by adjusting the angular velocity of the rotating constant density magnetic storage medium.

[0026] In a second example of this second aspect, the controller may be further configured to align the phase of the repeatable runout data to the locked frequency of the clock source.

[0027] In a first variation of this second example, after locking the frequency of the clock source and before writing any repeatable runout data to any servo wedge on each track of the rotating constant density magnetic storage medium, the controller may be configured to align the phase of the repeatable runout data to the locked frequency of the clock source by writing a phase calibration pattern to each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium, reading the phase calibration pattern from each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium and determining a phase offset for each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium, and setting delays for writing the repeatable runout data to each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium to compensate for the phase offsets. [Brief explanation of the drawings]

[0028] Further features of the present disclosure, its nature and various advantages will become apparent from the following detailed description when considered in conjunction with the accompanying drawings, in which like reference characters refer to like elements throughout the drawings.

[0029] [Figure 1] 1 shows an example of a disk drive 100 in which the invention of this disclosure may be used. [Figure 2] 1 shows an example of a disk drive 100 in which the invention of this disclosure may be used.

[0030] [Figure 3] 3 is a diagram of a hard drive controller that may be used in a disk drive such as that of FIGS. 1 and 2 in implementing the invention of the present disclosure.

[0031] [Figure 4] FIG. 2 is a timing diagram illustrating a first implementation of the disclosed invention.

[0032] [Figure 5] 5 is a timing diagram similar to FIG. 4 illustrating operation of the implementation of FIG. 4 when a servo synchronization mark is missing.

[0033] [Figure 6] 5 is a timing diagram similar to FIG. 4 illustrating the operation of an alternative implementation of the disclosed invention.

[0034] [Figure 7] FIG. 10 is a timing diagram illustrating the operation of a further implementation of the present disclosure.

[0035] [Figure 8] FIG. 8 is a more detailed timing diagram illustrating the operation of the implementation of FIG. 7.

[0036] [Figure 9] 1 is a table comparing frequency control techniques according to inventive implementations of the present disclosure with typical frequency techniques.

[0037] [Figure 10] FIG. 10 illustrates the phase difference between a phase calibration pattern and an ideal pattern.

[0038] [Figure 11] FIG. 2 is a flow diagram illustrating a method according to a first implementation of the disclosed invention.

[0039] [Figure 12] FIG. 10 is a flow diagram illustrating a method according to a second implementation of the disclosed invention.

[0040] [Figure 13] FIG. 10 is a flow diagram illustrating a phase calibration method according to a third implementation of the disclosed invention. DETAILED DESCRIPTION OF THE INVENTION

[0041] 1 and 2 show an example of a disk drive 100 in which the disclosed invention may be used. In this example, disk drive 100 has three platters 101, 102, and 103, although disk drives in which the disclosed invention may be used may include any number of platters. As shown, each platter 101, 102, and 103 has a coating 110 on each of its top and bottom surfaces 111 and 112, respectively, made of a material capable of recording data, e.g., magnetically. This disclosure also relates to disk drives in which one or more platters include coating 110 on only one of their surfaces, but such disk drives will store less data than a disk drive with double-sided platters for the same capacity. Platters 101-103 are mounted on a rotatable spindle 104. A spindle motor 105 rotates spindle 104, rotating platters 101-103 in the direction of arrow A (FIG. 2). Although the spindle motor 105 is shown connected directly to the spindle 104, in some cases the spindle motor 105 may be positioned off-axis from the axis of the spindle 104 and connected to the spindle 104 through a belt or gear (not shown).

[0042] The read / write head assembly 120 includes an actuator 121 having arms 122-125, one of which is positioned adjacent to each surface 111, 112 of the platters 101, 102, 103, which have memory storage coatings 110. In this example, there is a head on each side of each arm 123, 124, for a total of four arms 122-125, although in the single-sided platter example described above, there would be only three arms. In other examples, the number of arms may increase or decrease with the number of platters.

[0043] Each arm 122-125 has multiple read heads / sensors and write heads at or near its end farthest from the actuator 121, and in the case of arms 123, 124, on both its top and bottom surfaces. In this case, two sensors 131, 132 are shown, which may represent a read sensor and a write sensor, respectively; however, in some applications, each arm 123, 124 may have two or more read heads / sensors and two or more write heads (not shown). In the configuration illustrated in Figures 1 and 2, the arms 122-125 are aligned along the radius of the platters 101, 103, bringing the heads 131, 132 close enough to the spindle 104 that they can reach it. Note that Figures 1 and 2 are schematic and not to scale. The diameter of the spindle is typically larger than the diameter of the disk. Also, the arms 122-125 typically cannot point directly at the center of the disk.

[0044] Motor 126, commonly referred to as a "voice coil motor," rotates actuator 121 back and forth along the direction of arrow B (FIG. 2), moving heads 131, 132 along the path indicated by dashed arrow 201. Movement of actuator 121 therefore changes both the radial and circumferential positions of heads 131, 132, although the change in circumferential position is relatively insignificant as long as the platters rotate. Movement of actuator 121 is therefore used to control the radial position of heads 131, 132.

[0045] The locations of these wedges on surface 111 of platter 101 (as well as other surfaces) are shown in Figure 2. Each servo wedge 200 contains data that identifies it by a wedge index, track index, or sector number (to indicate angular, tangential, or circumferential position), and by data representing the distance from spindle 104 at each point along the radius of the platter. A typical servo wedge, as the name suggests, is wedge-shaped, and in a constant density system such as that shown in Figure 2, the servo wedge 200 has the same width at all radii, or more importantly, the same arc length at all tracks.

[0046] Each of the read heads 131, 132 is connected to a read channel 301 of a hard drive controller 300 (there is a corresponding write channel 302) (FIG. 3). The hard drive controller 300 also includes a processor 310 and memory 311, as well as a connection 312 to a host processor (not shown). During normal disk operation, the memory 311 may be used to store position error sensor (PES) data that indicates a track position offset. A servo control loop within the hard drive controller 300 uses the PES data and servo wedge data to keep the heads 131, 132 on track.

[0047] Servo wedge data may include a repeatable runout field, which provides information about any persistent, repeating sources of potential position error. For example, in a disk drive, physical imperfections in the platters can cause vibrations that, once present, can disrupt head position with each revolution. U.S. Patents 7,400,464 and 7,773,328, respectively, describe synchronous writing and synchronous reading of RRO fields in servo wedges in non-constant density implementations, and are each incorporated by reference herein in their entireties.

[0048] In a non-constant density implementation, the frequency is the same for each track, based on the angular velocity of the disk drive platter. Therefore, in such a system, there is only one frequency of interest. Similarly, in a zoned density implementation, different zones have different frequencies, but each track within a zone shares the same frequency. In contrast, in a constant density implementation, such as that described in U.S. Patent No. 10,971,187, the entire contents of which are incorporated herein by reference, the frequency increases with increasing radius and may vary from track to track. Specifically, the angular velocity of the disk drive platter is uniform, but writing occurs more frequently on tracks near the larger outer diameter of the circumference than on tracks near the inner diameter, allowing more data to be written per unit angle and maintaining a constant data density per unit track length.

[0049] In fact, the write pattern frequency may be different for every track. Also, the read and write heads are at different positions on the actuator arm. Therefore, to the extent that writing of the RRO field is triggered by detecting a servo sync mark (SSM), its frequency cannot even be directly derived from the SSM detection. This is because the read head may be at a different radial position than the write head, and therefore may be on a different track with a different frequency. Also, the read head may be at a different angular position than the write head, and therefore may detect the SSM slightly before or after the write head is positioned to write the RRO field.

[0050] Even for the same track, the movement of the read and write heads relative to the servo wedge may occur at a frequency derived from a physical source (e.g., a phase-locked loop), while the frequency at which data patterns are written to or read from the track may be a frequency interpolated from the physical frequency. Thus, there may be as many as four frequencies required for any RRO write operation, including the frequencies of the read and write heads and the interpolated frequencies at which data is read and written on the track. Furthermore, each of the four different frequencies may derive from two different time domains (a servo function generator or SFG domain and a time base generator or TBG domain) that may be derived from different physical sources and may not be synchronized.

[0051] The exact frequency of write operations when writing to a particular track may be determined by implementing the disclosed invention. Specifically, much of the servo data in the servo wedges is written during disk manufacturing, e.g., using self-servowriting techniques, while the RRO data is written to the servo wedges after the servo wedges have already been deployed. While the write pattern frequency, which specifies the rate at which data patterns are written to achieve a desired density, may be determined by the radial position of the track, the servo pattern frequency, which specifies when and how often RRO data is written to the track, may be determined by implementing the disclosed invention.

[0052] According to some first implementations of the disclosed inventions, and as described in more detail below, RRO data is written to the track at a predetermined offset from the detection of each servo synchronization mark (i.e., from the occurrence of the servo synchronization mark found (SSMF signal)). The offset corresponds to the position of the RRO field within the servo wedge (typically at the end after the remaining servo data) and the difference in position (both radial and circumferential) between the write head on the one hand and the read head that detects the SSMF signal that triggers the write operation on the other hand.

[0053] Generally, the positions of the RRO fields within a servo wedge are approximately the same linear distance along the current track from the beginning of the servo wedge. The positions of the RRO fields within a servo wedge may be determined from the detected position of each servo wedge by a specific time delay, which is inversely proportional to the radius of the current track. That is, the linear velocity of a track with a smaller radius (i.e., closer to the inner edge of the disk platter) is smaller than the linear velocity at a larger radius (i.e., closer to the outer edge of the disk platter). Therefore, to achieve a uniform linear distance, the time delay is smaller for larger radii and larger for smaller radii.

[0054] Ultimately, to the extent that both the write pattern frequency and the servo pattern frequency can be derived from the angular velocity of the disk platter, these frequencies may be updated periodically (e.g., at each servo wedge) using known techniques such as Disk Synchronous Write (DSW) to maintain a lock to the disk platter rotation.

[0055] According to some second implementations of the disclosed inventions, and as described in more detail below, RRO data is written to a track at fixed intervals from the first detection of an SSMF signal based on the expected time interval between servo wedges in the track of interest as a function of disk platter rotation. Although SSMF detection is used only once for writing, the timestamp of each SSMF occurrence is continuously measured, and the interval between that timestamp and the timestamp of a known repeating event within the servo wedge is determined for each servo wedge. If the interval is not consistent between a particular servo wedge and adjacent servo wedges, an error is indicated and appropriate corrective action may be taken, which may include aborting the RRO write operation.

[0056] As with the first implementation, in these second implementations, the frequency may be updated periodically (e.g., at each servo wedge) to maintain lock on the disk platter rotation. However, in these second implementations, an alternative implementation of the DSW technique may be used to update the frequency. Specifically, while a typical DSW technique measures the interval from one particular servo synchronization mark (SSM) to the next and looks for deviations of each interval from the expected interval, an alternative implementation according to the disclosed invention may use a DSW technique in which the position of each SSM is compared to its expected position based on the position of the initial SSM, the expected interval between adjacent SSMs, and the number of intervals between the current SSM and the initial SSM. Thus, while a typical DSW technique indicates an error only if the current interval is not the expected interval, a DSW technique according to the disclosed invention may indicate an error if the current SSM is not at its expected position, even if the current SSM is at the expected interval from the previous SSM. Thus, the DSW technique according to the inventive implementation of this disclosure compensates for accumulated drift, even if the drift from each SSM to the next is so slow as to be undetectable.

[0057] The first and second implementations described above may be described as asynchronous, i.e., they attempt to match the RRO write frequency with the servo frequency but not with the phase of the servo pattern. However, some third implementations of the disclosed invention, which may be described as synchronous, also attempt to match the phase of the RRO write pattern with the phase of the servo pattern.

[0058] According to these third implementations, a technique like one of the second implementations may be used to set the RRO frequency, as will be described in more detail below. A phase calibration pattern may be written to each RRO field before any actual RRO data is written. The phase calibration pattern may then be demodulated to determine the phase offset of each wedge's RRO field. According to one of the second implementations described above, the RRO data may be written, and the RRO data for each wedge may be delayed or phase adjusted, as will be described in more detail below.

[0059] The invention of this disclosure may be better understood with reference to Figures 4-13.

[0060] The first implementation described above may be understood with reference to FIGS.

[0061] 4, detection of a servo sync mark (e.g., recognized by hard drive controller 300 by one of read heads 131, 132) is indicated by waveform or signal 401 (SSMF or servo-sync-mark-found). Waveform or signal 402 (WCNTR) is a wedge timer or counter that resets to '0' at the start of each servo wedge and counts until the next servo wedge is detected (or, optionally, until an adjustable limit is reached).

[0062] An additional counter, NWCNTR (not shown), counts the number of wedges (i.e., increments by '1' each time a servo wedge is detected), and is optionally reset when an adjustable limit, such as the maximum number of servo wedges on the disk, is reached. For n servo wedges, NWCNTR will count from 0 to n-1.

[0063] Waveform or signal 403 (RROW) indicates when an RRO write event occurs.

[0064] In the situation shown in Figure 4, servo synchronization marks are detected at 411, 421, and 431, causing WCNTR 402 to reset and begin counting at 412, 422, and 432. When WCNTR 402 counts interval w1 from the respective counter reset events 412, 422, and 432, the resulting RRO write events 413, 423, and 433 occur, respectively. RRO write events 413, 423, and 433 are shown as occurring at times (0, w1), (1, w1), and (2, w1), where the ordinate represents the wedge number counter NWCNTR, as discussed above. Thus, RRO write event 413 occurs when NWCNTR = 0, WCNTR = w1; RRO write event 423 occurs when NWCNTR = 1, WCNTR = w1; and RRO write event 433 occurs when NWCNTR = 2, WCNTR = w1. To the extent that the WCNTR acts as a timer, the interval w1 is the time delay used to achieve the offset described above, and w1 can be smaller for tracks with larger radii and larger for tracks with smaller radii to keep the offset uniform.

[0065] As noted above, in these first implementations, whenever a servo sync mark is detected, WCNTR 402 is reset, resulting in RRO write events 413, 423, and 433. Thus, as illustrated in FIG. 5, if no servo sync mark is detected at 521, WCNTR 502 will continue counting, resulting in no RRO write event at 523, until the next servo sync mark 531 is detected. When the next servo sync mark 531 is detected, WCNTR 502 is reset, triggering RRO write event 533. Wedge number counter NWCNTR is also not triggered until servo sync mark 531 is detected, so the point in time when RRO write event 533 occurs is defined at NWCNTR=1, WCNTR=w1, not NWCNTR=2, WCNTR=w1, even though two sync mark intervals have passed since RRO write event 513 at NWCNTR=0, WCNTR=w1.

[0066] 4 and 5, in a variation of the first implementation of the disclosed invention as shown in FIG. 6, a first reset 612 and a third reset 632 of WCNTR 602 are triggered by a first detected servo synchronization mark event (servo synchronization mark detection) 611 and a second detected servo synchronization mark event (servo synchronization mark detection) 631, respectively. However, by setting the maximum counter value of WCNTR 602 to a value corresponding to a time interval 610 slightly longer than the expected interval 410 between servo synchronization marks, a second reset 622 of WCNTR 602 may be triggered even in the absence of a servo synchronization mark detection at 621, but in this case, the resulting RRO write event 623 may be slightly offset relative to RRO write events 613 and 633. The excess of interval 610 over interval 410 should be long enough to allow for minor fluctuations between servo synchronization mark detection events. As a result, although the servo sync mark detection is the primary trigger for resetting the WCNTR 602 and triggering the RRO write event, if the servo sync mark fails to trigger the servo sync mark detection, the RRO write event will still occur, just slightly later than it should.

[0067] The second implementation above may be implemented as an extension of the variation shown in Figure 6. As seen in Figure 7, an asynchronous counter 703 may be used as a timer. A timestamp may be marked at each servo sync mark detection 701 and at a uniform time 723 at or after each resulting wedge counter (WCNTR) reset 702 to determine the time difference 713. Although the different events 723 are shown as an example, using the reset event itself as the uniform time (not shown) is a convenient choice.

[0068] 8, the first wedge counter reset 812 may be triggered by a servo sync mark detection event 811, while each subsequent wedge counter reset 822, 832, etc. may be triggered by the passage of time since the previous wedge counter reset by setting a maximum value for WCNTR 802. However, servo sync marks 821, 831, etc. continue to be detected and time-stamped using timer 703, as are each wedge counter reset 822, 832, etc.

[0069] 6, each wedge counter reset 822, 832, etc. triggers a corresponding RRO write event 823, 833, etc. Although RRO write event 813 may be triggered by wedge counter reset 812, better results may be achieved by waiting until a full cycle is completed and performing RRO write event 813 as the last RRO write event on the current track, after timing is verified as described below.

[0070] The time difference 713 between each servo sync mark detect event 811, 821, 831, etc. and the resulting write counter reset 812, 822, 832, etc. may be measured. If the time difference is not consistent between one set of SSM detect event / WCNTR reset event and the next set of SSM detect event / WCNTR reset event, corrective action may be taken. Corrective action may include adjusting the RRO write event timing or disk rotation, but the simplest corrective action may be to abort and restart the RRO write operation to the current track (or for the entire disk).

[0071] Because of the importance of timing in these second implementations, disk rotation speed control (disk synchronous write, or DSW control) is also important. A typical DSW control measures the spacing between subsequent servo synchronization marks and uses feedback to control, for example, a phased-locked loop (PLL) to maintain a constant disk rotation speed. Such a typical DSW approach looks only at the spacing between the current servo synchronization mark and its immediately preceding servo synchronization mark, and makes corrections only if that spacing deviates from the expected spacing by more than a predetermined threshold; each small error is itself too small to meet the correction threshold, but these small errors can accumulate and never be detected.

[0072] Therefore, an improved DSW control technique implemented in accordance with the present disclosure compares the detection time of the current servo synchronization mark with the expected time of occurrence of the current servo synchronization mark, rather than the previous servo synchronization mark, based on the occurrence time of the initial servo synchronization mark at system initialization, the expected interval between subsequent servo synchronization marks, and the number of intervals that have passed since the initial servo synchronization mark. According to this technique, once a servo synchronization mark is detected at a time other than the expected time, each subsequent servo synchronization mark will deviate from the expected time by the same amount, even if each is detected at exactly the expected interval from the previous synchronization mark. If multiple servo synchronization marks deviate from the expected interval by a small amount (less than the detection threshold of the typical technique described above), an accumulated error is eventually detected, and corrective action, such as adjusting a time base generator such as a phase-locked loop or adjusting the disk angular velocity, or both, may be taken.

[0073] The differences between the typical DSW technique and the previously described DSW technique ("New DSW") can be seen in the table in Figure 9. The table compares the two techniques for 17 servo wedges (NWCNTR=0,...,16) and assumes a target wedge-to-wedge (i.e., SSM-to-SSM) spacing of 1000 time units. Row 901 shows the actual timestamp of the SSM detection event (SSMF), with the first wedge detected at t=1000.

[0074] Row 904 shows the target SSMF timestamps based on that initial SSMF at t=1000. The target interval is 1000 time units, and the target timestamps from the second wedge to the seventeenth wedge are 2000, 3000, 4000, ..., 17000. As can be seen in row 901, the actual timestamps from the second wedge to the seventeenth wedge are 2000.5, 3000.5, 4001, 5001, 6001, 7001.5, 8001.5, 9001.5, 10001.5, 11002, 12002, 13002, 14002, 15002, 16002, and 17002.

[0075] Rows 902 and 903 show how these discrepancies are handled using typical DSW techniques. As shown in row 902, for the third, fifth, sixth, eighth, ninth, tenth, and twelfth through seventeenth SSMFs, each occurs at an expected interval of 1000 time units from the previous SSMF. Only for the second, fourth, seventh, and eleventh wedges, each SSMF occurs at an interval other than 1000 time units from the previous SSMF. In this example, each SSMF for the second, fourth, seventh, and eleventh wedges occurs 1000.5 time units from the previous SSMF, which is a deviation of 0.5 time units for each of those wedges. With typical DSW techniques, these deviations may be below the detection threshold, so no corrective action may be taken, and errors may accumulate in subsequent wedges, resulting in time units 2 from their respective expected times (not detected by 903 with typical DSW techniques, but shown by 905 with the DSW technique described above (New DSW)).

[0076] The DSW technique described above (new DSW) may be used in conjunction with the second implementation described above. This DSW technique may also be used with the first implementation described above. However, use of this DSW technique will not result in a detectable improvement in the first implementation because, in the first implementation, each wedge is detected by its own servo synchronization mark rather than by its time interval from the initial servo synchronization mark.

[0077] As noted above, the first implementation described in connection with Figures 4-6 and the second implementation described in connection with Figures 7 and 8 may be described as asynchronous in that these implementations attempt to match the RRO write frequency with the servo frequency, but do not attempt to match the phase of the servo pattern. However, some third implementations of the disclosed invention may be described as synchronous, in that they also attempt to match the phase of the RRO write pattern with the phase of the servo pattern.

[0078] These third implementations may set the RRO frequency using a technique such as one of the second implementations, in conjunction with the DSW technique described with respect to Figures 7 and 8 and in connection with Figure 9. After the RRO frequency is set, but before the actual RRO data is written, a phase calibration pattern, such as a 2T pattern (110011001100...), may be written to each RRO field. The phase calibration pattern may then be read and demodulated to determine the phase offset from the DSW frequency and how much the written pattern should be delayed to align its phase with that of the DSW frequency, as described in more detail below. After the delay is determined, each RRO field is written as described above with the second implementation.

[0079] 10 shows an example of a demodulated written calibration pattern 1001 compared to one complete period of an ideal phase pattern 1002. As can be seen, one complete period 1011 of the written pattern 1001 is delayed by a phase delay (PH) 1003 relative to the ideal phase pattern 1002. That is, the period 1011 of the written pattern 1001 starts later than the ideal phase pattern 1002 by the delay amount PH 1003. Since it is not possible to go backward in time, the phase of the written pattern 1001 cannot be advanced. However, the phase of the written pattern 1001 is delayed by the remainder T of one period. shift 1004. As a result, the written pattern 1001 is delayed by one complete period, effectively bringing the written pattern back in phase with the ideal pattern 1002.

[0080] In some implementations, the write pattern 1001 is modulated in units of the servo signal, i.e., "DiBit", which may be scaled by BitSize, the number of physical write clock cycles required for one channel bit on the current track. In some implementations, the scaling factor is 4. Thus, T shift The unscaled value of 1004 is T shift = (1-PH), T shift The trial scaling value of T shift = (1-PH) x BitSize x 4. The shift may be obtained by applying an integer WCNTR_OFFSET 1014 in wedge counter units to the wedge counter WCNTR, and then applying the phase remainder 1024. T shift =(1-PH)×BitSize×4 WCNTR_OFFSET=div(T shift ,4) Phase_remainder_1=mod(T shift ,4) For example, the phase remainder 1024 may be applied as a starting phase offset, while WCNTR_OFFSET 1014 may be applied to increase the counter target of the write counter WCNTR (ie, the value to which WCNTR is reset).

[0081] Typically, the calibration pattern is not written at the final position of the RRO pattern because it may not be possible to exactly overwrite the calibration pattern with the final pattern, which may leave residual noise. Therefore, after the RRO pattern is written, the written trial RRO pattern is checked for a position offset, which is an integer number DBOffset of DiBits required to shift the written trial RRO pattern to its desired position within the servo wedge.

[0082] Once DBOffset is determined, DBOffset is shift Similarly, it is decomposed into an integer and phase modulo WCNTR_OFFSET units. Offset=DBOffset×BitSize-Phase_remainder_1 WCNTR_OFFSET=ceil4(Offset) Phase_remainder_2=WCNTR_OFFSET-Offset where ceil4(Offset) is the least common multiple of 4 greater than or equal to Offset (i.e., if Offset is a multiple of 4, then ceil4(Offset) = Offset, while if Offset is not a multiple of 4, then ceil4(Offset) is the least common multiple of 4 greater than Offset).

[0083] In the third implementation, T shift These phase adjustment determinations of T and DBOffset are performed for every servo wedge on every track. shiftFor each of the two elements of and DBOffset, one is a wedge counter adjustment and one is a phase remainder. The second implementation then determines when to write the RRO field to each wedge on each track, but before the actual writing of the RRO data to any particular wedge, it performs a phase adjustment T shift - The DBOffset is resolved into a WCNTR-OFFSET element and a remainder element and applied to that particular RRO write operation.

[0084] The methods of writing RRO patterns according to the various implementations above are illustrated in FIGS.

[0085] A method 1100 according to some of the first implementations described above is illustrated in FIG. 11. In 1101, a pattern frequency is set for the current track. In 1102, a target value for the WCNTR is set to its maximum possible value, resulting in the WCNTR counting longer than any possible wedge-to-wedge spacing (effectively "forever"). In 1103, as soon as a servo synchronization mark event detection event occurs, the WCNTR is reset and allowed to start counting. As an alternative implementation, in 1112, the target value may be set to a value slightly greater than the expected wedge-to-wedge spacing, and then, in 1113, the WCNTR may be reset by setting it once the wedge-to-wedge spacing has passed, even if a servo synchronization mark detection event does not occur. In 1104, after the WCNTR is reset, an RRO write event is triggered at a predetermined time, taking into account the position of the RRO field within the wedge and the position difference between the read head detecting the servo synchronization mark and the write head performing the RRO write operation. At 1105, an RRO write operation is performed at the pattern frequency set at 1101. At 1106, the operations at 1101-1105 are repeated for all wedges in the current track until the track is completed. Between wedges, the frequency may be updated using typical DSW techniques or DSW techniques according to this disclosure as described above. At 1107, the operations at 1101-1106 are repeated for each additional track until all tracks are completed.

[0086] A method 1200 according to some of the second implementations above is illustrated in Figure 12. At 1201, a time-based frequency is selected such that the product of the wedge-to-wedge spacing and the number of wedges corresponds to one disk revolution. Once this frequency is selected, a write pattern frequency may be generated from this frequency using, for example, synchronous write pattern frequency modification, i.e., the ability of a servo write pattern generator to write at a frequency that is a reasonable non-integer multiple of the time-based frequency, as described in U.S. Patent No. 10,832,716, which is incorporated herein by reference in its entirety.

[0087] At 1202, a target value for the WCNTR is set to the target wedge-to-wedge spacing. At 1203, a first servo synchronization mark is detected and the WCNTR is reset. At 1204, a first RRO write event is triggered at a predetermined time after the WCNTR reset, taking into account the position of the RRO field within the wedge and the position difference between the read head detecting the initial servo synchronization mark and the write head performing the RRO write operation. At 1205, RRO write operations are performed at a pattern frequency derived from the frequency set at 1201. At 1206, a subsequent WCNTR is reset and a corresponding RRO write operation is triggered based on the target wedge-to-wedge spacing since the previous WCNTR reset.

[0088] At 1207, servo sync marks are continuously detected (even if the servo sync mark is not used to trigger a WCNTR reset), and the difference between the timestamp of each servo sync mark detection event and the timestamp of its corresponding subsequent timer-based WCNTR reset event is measured. At 1208, the difference in each timestamp is compared to the difference in the previous timestamp. If the difference in the current timestamp at 1208 is not identical to the difference in the previous timestamp, corrective action is taken at 1209, which may include aborting and restarting the RRO write operation.

[0089] If, at 1208, the current timestamp difference is the same as the previous timestamp difference, flow continues to 1210 where the frequency is adjusted to keep each servo sync mark detection event occurring at the expected time, for example, as described above with respect to Figure 9. This comparison of timestamp differences and adjustment of frequency as necessary may occur at any time during method 1200 and may occur in parallel with the remainder of method 1200.

[0090] At 1211, the above portion of method 1200 is repeated for each wedge in the current track until the track is completed. Once all tracks are completed, the method then moves on to the next track.

[0091] A method 1300 according to some of the third implementations above is illustrated in Figure 13. At 1301, a respective calibration pattern (e.g., the 2T pattern described above) is written to each wedge on each track of the disk. At 1302, the calibration pattern is read back from each wedge to determine each trial phase offset (T shift ) is determined. At 1303, each trial RRO pattern is written to each wedge with each phase offset applying the integer portion of the offset to the wedge counter and the fractional portion to the starting phase. At 1304, any required further phase offsets are determined for each wedge from each trial pattern. At 1305, (T shift -Offset), a respective final phase shift for each wedge is determined. At 1306, a respective final RRO pattern is written to each wedge on each track of the disk using the respective final phase shift for each wedge in a method such as method 1200.

[0092] By now it can be seen that a method and apparatus has been provided for controlling the timing of writing RRO fields within a particular track of a constant density servo wedge.

[0093] As used herein and in the claims that follow, the phrase "one of A and B" shall mean "A or B."

[0094] It should be noted that the foregoing merely illustrates the principles of the invention, that the invention can be practiced in other embodiments than those described, that the described embodiments are presented by way of illustration and not limitation, and that the invention is limited only by the scope of the following claims.

Claims

1. 1. A method for writing repeatable runout data representing repeatable contributions to position error to a rotating constant density magnetic storage medium, comprising: repeating for each track at each radius of the constant density magnetic storage medium; determining each track pattern frequency based on track location and desired data density; locating a location within each servo wedge on each track based on servo synchronization mark detection; writing the repeatable runout data to each servo wedge at a time delay from the locating of the position within each servo wedge to achieve a predetermined offset, the time delay being inversely proportional to each radius; repeating the determining, locating and writing steps for each servo wedge on each track of the constant density magnetic storage medium.

2. 2. The method of claim 1, wherein locating the position within each servo wedge based on servo synchronization mark detection includes locating the position within each servo wedge by detecting each servo synchronization mark within each servo wedge.

3. 3. The method of claim 2, wherein the step of writing the repeatable runout data to each servo wedge at the predetermined offset includes the step of writing the repeatable runout data to each servo wedge after the time delay from detecting each servo synchronization mark to arrive at a repeatable runout field position within each servo wedge.

4. locking a clock source to the rotation of the rotating constant density magnetic storage medium, said step comprising: measuring the elapsed time between detection of subsequent servo synchronization marks; and adjusting the clock source so that the measured elapsed time between any two subsequent servo synchronization marks matches the elapsed time between any other two subsequent servo synchronization marks.

5. wherein locating the position within each servo wedge based on servo synchronization mark detection includes locating a first servo wedge by detecting a first servo synchronization mark, and determining each position of each subsequent servo wedge by adding a predetermined interval to each servo wedge position, the method further comprising: continuously detecting each servo synchronization mark; measuring each time interval between each servo synchronization mark detection and a predetermined event in each servo wedge; 5. A method according to claim 1, further comprising the step of taking corrective action if the measured time interval between each servo synchronization mark detection and the predetermined event in each servo wedge differs from the measured time interval between the previous servo synchronization mark detection and the previous occurrence of the predetermined event in each previous servo wedge.

6. 6. The method of claim 5, wherein taking corrective action comprises ceasing the writing of the repeatable runout data to the rotating constant density magnetic storage medium.

7. locking a frequency of a clock source to the rotation of the rotating constant density magnetic storage medium, said step comprising: measuring the elapsed time between detecting a first servo synchronization mark and detecting each subsequent servo synchronization mark; 6. The method of claim 5, further comprising: taking corrective action if the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark differs from the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark, the detection of each subsequent servo synchronization mark being expected based on an expected interval between subsequent servo synchronization marks and how many intervals have passed between the first servo synchronization mark and each subsequent servo synchronization mark.

8. 8. The method of claim 7, wherein taking corrective action comprises adjusting the angular velocity of the rotating constant density magnetic storage media.

9. The method of claim 7 further comprising aligning the phase of the repeatable runout data to the locked frequency of the clock source.

10. aligning the phase of the repeatable runout data to the locked frequency of the clock source after locking the frequency of the clock source and before writing any repeatable runout data to any servo wedge of the rotating constant density magnetic storage medium; writing a phase calibration pattern into each repeatable runout field in each servo wedge on each track; reading the phase calibration pattern from each repeatable runout field in each servo wedge on each track and determining a respective phase offset for each repeatable runout field in each servo wedge on each track; and setting respective delays for writing repeatable runout data in each repeatable runout field in each servo wedge on each track to compensate for each of the phase offsets.

11. a rotating constant density magnetic storage medium onto which servo data is written, the servo data including a repeatable runout field representing a repeatable contribution to position error; and circuitry for writing to the repeatable runout field, the circuitry comprising: a detector configured to locate each servo wedge on each track of the constant density magnetic storage medium based on servo synchronization mark detection; repeating for each track at each radius of said constant density magnetic storage medium; determining each track pattern frequency based on track location and desired data density; Locating a position within each servo wedge of each track of the constant density magnetic storage medium based on an output of the detector; writing the repeatable runout data to each servo wedge of each track of the constant density magnetic storage medium at a time delay from the locating the position within each servo wedge to achieve a predetermined offset, the time delay being inversely proportional to each radius; and a controller configured to repeat the determining, locating, and writing for each servo wedge on each track of the constant density magnetic storage medium.

12. 12. The storage device of claim 11, wherein the controller is configured to locate the position within each servo wedge of each track of the constant density magnetic storage medium by detecting each servo synchronization mark within each servo wedge of each track of the constant density magnetic storage medium.

13. 13. The storage device of claim 12, wherein the controller is configured to write the repeatable runout data to the respective servo wedge of the respective track of the constant density magnetic storage medium after the time delay from detecting the respective servo synchronization mark to arrive at a repeatable runout field position within the respective servo wedge of the respective track of the constant density magnetic storage medium.

14. It also has a clock source, The controller measuring the elapsed time between detection of subsequent servo synchronization marks; and by adjusting said clock source so that the measured elapsed time between any two subsequent servo synchronization marks matches the elapsed time between any other two subsequent servo synchronization marks; The storage device of claim 12 , configured to lock the clock source to rotation of the rotating constant density magnetic storage media.

15. The controller Locating the position within each servo wedge by detecting a first servo synchronization mark, and determining each position of each subsequent servo wedge by adding a predetermined interval to each servo wedge position; continuously detecting each servo synchronization mark; measuring each time interval between each servo synchronization mark detection and a predetermined event in each servo wedge; 15. A storage device as claimed in any one of claims 11 to 14, configured to take corrective action if the measured time interval between each servo synchronization mark detection and the predetermined event in each servo wedge differs from the measured time interval between each previous servo synchronization mark detection and the previous occurrence of the predetermined event in each previous servo wedge.

16. 16. The storage device of claim 15, wherein the controller is configured to take corrective action by ceasing the writing of the repeatable runout data to the rotating constant density magnetic storage medium.

17. It also has a clock source, measuring the elapsed time between the detection of a first servo synchronization mark and the detection of each subsequent servo synchronization mark; taking corrective action if the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark differs from the elapsed time between the detection of the first servo synchronization mark and the detection of each subsequent servo synchronization mark, the detection of each subsequent servo synchronization mark being expected based on an expected interval between subsequent servo synchronization marks and how many intervals have passed between the first servo synchronization mark and each subsequent servo synchronization mark; 16. The storage device of claim 15, wherein the controller is further configured to lock the frequency of the clock source to the rotation of the rotating constant density magnetic storage media.

18. 20. The storage device of claim 17, wherein the controller is configured to take corrective action by adjusting the angular velocity of the rotating constant density magnetic storage media.

19. 20. The storage device of claim 17, wherein the controller is further configured to align the phase of the repeatable runout data to the locked frequency of the clock source.

20. the controller, after locking the frequency of the clock source and before writing any repeatable runout data to any servo wedge on each of the tracks of the rotating constant density magnetic storage medium, writing a phase calibration pattern into each repeatable runout field within each servo wedge on each track of said constant density magnetic storage medium; reading the phase calibration pattern from each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium, and determining a respective phase offset for each repeatable runout field in each servo wedge on each track of the constant density magnetic storage medium; and setting delays for writing repeatable runout data in each repeatable runout field within each servo wedge on each track of the constant density magnetic storage medium to compensate for the phase offsets; 20. The storage device of claim 19, configured to align the phase of the repeatable runout data to the locked frequency of the clock source by performing:

Citation Information

Patent Citations

  • Magnetic disc device and servo burst data correcting method

    JP2013145612A

  • Magnetic disk device and RRO correction data writing method

    JP2019164855A