Repeatable runout compensation using iterative learning control in a disc storage system

Information

  • Patent Grant
  • 6563663
  • Patent Number
    6,563,663
  • Date Filed
    Wednesday, December 29, 1999
    24 years ago
  • Date Issued
    Tuesday, May 13, 2003
    21 years ago
Abstract
A disc storage system is provided which includes a servo control loop for compensating for repeatable runout. Repeatable runout is compensated using table entries of the form Comp Value(k+1)=Comp Value(k)+KΦ(z)RRO(k), where K is a learning rate; k is iteration number Φ(z) is a filter and RRO(k) is the repeatable runout error. Further, ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1 needs to be satisfied, where PC(jω) is an open loop frequency response of the servo loop. The filter can comprise a order filter.
Description




FIELD OF THE INVENTION




The present invention relates generally to disc drive data storage systems. More particularly, the present invention relates to compensation for errors in servo systems.




BACKGROUND OF THE INVENTION




Disc drives read and write information along concentric tracks formed on discs. To locate the read-write head on a particular track on a disc, disc drives typically use embedded servo fields on the disc. These embedded fields are utilized by a servo subsystem to position a head over a particular track. The servo fields are written onto the disc when the disc drive is manufactured and are thereafter simply read by the read-write head of the disc drive to determine position. A multi-rate servo system samples the position of the head relative to a particular track at a particular sampling rate and adjusts the position of the head at a rate that is a multiple of the sampling rate by estimating the position of the head between the measured position samples.




It is desired that the head moves along a perfectly circular path around the disk. However, two types of errors prevent heads from following this ideal path. The first type of error is a written-in error that arises during the creation of the servo fields in servo writing process. Written-in errors occur because the write head used to produce the servo fields does not always follow a perfectly circular path mainly due to unpredictable pressure effects on the write head from the aerodynamics of its flight over the disc, from disk fluttering, from spindle motor vibration, from disk bending, and from vibrations in the gimbal used to support the head. Because of these disturbances, the track written on the disc is not a perfectly circular path and a head in a disc will then follow a non-circular path.




The second type of error that prevents circular paths is known as track following disturbances. Track following errors arise when a head attempts to follow the path defined by the servo fields. The disturbances can be caused by the same aerodynamic and vibrational effects that create written-in errors. In addition, track following errors can arise because the servo system bandwidth is limited and the head is unable to respond fast enough to high frequency changes in the path defined by the servo fields.




Here, we focus on written-in errors. Written-in errors are often referred to as repeatable runout errors because they cause the same errors at the same location each time the head passes along a track. As track densities increase, these repeatable runout errors begin to limit the track pitch. Specifically, variations between the ideal track path and the actual track path created by the servo fields can result in an inner track path that interferes with an outer track path. This is especially acute when a first written-in error causes a head to be outside of an inner track's ideal circular path and a second written-in error causes the head to be inside of an outer track's ideal circular path. This is often referred as track squeeze problem. To avoid limitations on the track pitch, a system is needed to compensate for these repeatable runout errors.




The written-in errors can be compensated by injecting stored compensation values into the servo loop. However, the determination of the compensation values has required complex computations which have often been difficult to implement in disc storage systems. The present invention provides a simple solution to this and other problems and offers other advantages over the prior art.




SUMMARY OF THE INVENTION




The present invention relates to compensation for written-in repeatable-runout in disc drives. The present invention relates to disc drives which have runout compensation which solves the above-mentioned problem.




In accordance with one embodiment of the invention, repeatable-runout compensation is provide in a disc storage system in which servo position values are read from a disc surface which indicates the head position relative to a track on the disc surface. Subsequently, compensation values are retrieved from a table of compensation values and a servo position value is compensated based upon the retrieved compensation value.




In accordance with another embodiment of the invention, a disc drive includes a servo loop for positioning a head over a disc. The disc is adapted to store data on a track and the track includes servo fields adapted to store servo information used to indicate position. The head is adapted to sense the servo information located on the disc and to produce a servo position signal therefrom. The servo position signal is combined with the reference signal to produce a position error signal indicative of a difference between an actual and a desired position of the head relative to the track. A servo controller is adapted to generate a servo control signal in response to the position error signal. An actuator, coupled to the servo control, is adapted to move the head in response to the servo control signal. A compensation table, stored in memory or servo field, is adapted to provide a written in repeatable runout compensation value to the servo control signal.




These and various other features as well as advantages which characterize the present invention will be apparent upon reading of the following detailed description and review of the associated drawings.











BRIEF DESCRIPTION OF THE DRAWINGS





FIG. 1

is a plan view of a disc drive of the present invention.





FIG. 2

is a top view of a section of a disc showing an ideal track and a realized written-in track.





FIG. 3

is a block diagram of a prior art servo loop.





FIG. 4

is a block diagram of a servo loop according to an illustrative embodiment of the present invention.











DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS





FIG. 1

is a plan view of a disc drive


100


that includes a housing with a base plate


102


and a top cover


104


(sections of top cover


104


are removed for clarity). Disc drive


100


further includes a disc pack


106


, which is mounted on a spindle motor (not shown). Disc pack


106


can include a plurality of individual discs which are mounted for co-rotation about a central axis. Each disc surface has an associated head gimbal assembly (HGA)


112


which is mounted to disc drive


100


for communication with the disc surface. Each HGA


112


includes a gimbal and a slider, which carries one or more read and write heads. Each HGA


112


is supported by a suspension


118


which is in turn attached to a track accessing arm


120


known generally as a fixture, of an actuator assembly


122


.




Actuator assembly


122


is rotated about a shaft


126


by a voice coil motor


124


, which is controlled by servo control (which is not shown here). HGA


112


travels in an acurate path


130


between a disc inner diameter


132


and a disc outer diameter


134


. When the head is properly positioned, write circuitry control (which is not shown here) encodes data for storage on the disc and sends an encoded signal to the head in HGA


112


through internal circuitry


128


, which writes the information to the disc. At other times, the read head in HGA


112


reads stored information from the disc and provides a recovered signal to detector circuitry and decoder circuitry control (which is not shown here) to produce a recovered data signal.





FIG. 2

is a top view of a section


198


of a disc showing an ideal, perfectly circular track


200


and an actual written in track


202


. Section


198


includes a plurality of radially extending servo fields such as servo fields


204


and


206


. The servo fields include servo information that identifies the location of actual track


202


along disc section


198


. In a normal drive the head will follow the actual track


202


.




Written in error, defined as the difference between actual track


202


and ideal track


200


, is introduced in the servo writing process. The written in error is considered as a repeatable runout error since the same error occurs at a particular circumferential location on the disc. Track following of the ideal track


200


is much easier than track following the actual track


202


. This is because the reference of the control in the ideal track


200


case is a simple DC signal while in the actual track


202


case, the reference is a DC signal (track


200


) plus a complex AC signal (written in error). Following a complex reference will increase the control job for a controller. Further, if the servo bandwidth is limited and the head cannot perfectly follow the complex track


202


, then this will result in more head position error signal (PES).




Under the present invention, a head attempting to write to or read from track


202


will not follow track


202


but instead will more closely follow perfectly circular track


200


. This is accomplished using a compensation signal that prevents the servo system from tracking repeatable runout errors resulting from the irregular shape of track


202


. As a result, the head PES will be reduced.





FIG. 3

is a block diagram of a servo loop


208


of the prior art. The servo loop includes a servo controller


210


, having a transfer function of “C” and a disc drive


212


having a transfer function of “P”. Servo controller


210


is usually implemented using microprocessor and some additional circuits. Disc drive


212


includes actuator assembly


122


, voice coil motor


124


, track accessing arm


120


, suspension


118


, and head gimbal assembly


112


, all of FIG.


1


.




Servo controller


210


generates a control current


214


that drives the voice coil motor of disc drive


212


. In response, disc drive


212


produces head motion


216


. In

FIG. 3

, the written-in error, d


w


, is represented as a separate input signal


218


if the reference r


224


in

FIG. 3

is treated as perfectly circular path. The separation of written-in error


218


from head motion


216


provides a better understanding of the present invention. In addition, noise in the servo system has been separated and appears as noise


220


, which is added to the head motion. The sum of head motion


216


, written-in error


218


and noise


220


results in the head's servo position signal


222


. Servo position signal


222


is subtracted from a reference signal


224


, which is generated by a microprocessor based on a desired location for the head (reference r


224


). Subtracting servo position signal


222


from reference signal


224


produces position error signal (PES)


226


which is input to servo controller


210


.




Heads in servo loops of the prior art will move in response to written-in errors. This movement is undesirable since it places the head outside of the ideally circular track path. This will result in two effects. First, PES will be larger than PES in the loop when there is no written-in errors, which is not desired in disk control. Second, following actual track


202


, which is equivalent to written-in errors which are not zero, may cause track squeeze problems. To eliminate the unwanted head motion created by the written-in error, with the present invention feedforward control is used, which inserts a compensation signal to the servo loop. This subtraction is shown in the servo loop


232


of FIG.


4


. In

FIG. 4

, the elements that are common to

FIG. 3

are numbered the same. Compensation signal


228


is pre-computed in a process and is stored in memory or harddisk. When the servo loop in

FIG. 4

is working, the compensation signal


282


will be read from memory or from harddisk and will be inserted to the loop. At a particular track, the compensation signal


228


comprises a table of written-in repeatable runout values with the size of sector number. Different tracks have different compensation tables. This compensation technique is referred to as repeatable runout (RRO) compensation or zero acceleration path (ZAP) compensation because the head will tend to undergo zero acceleration when following a track.




One aspect of the present invention includes the recognition that the compensation tables take the form of an Iterative Learning Control (ILC) scheme. ILC is a feedforward control added to a normal feedback control loop. It tries to reduce the repetitive part of the control performed by a normal controller. It is very effective when the reference command or the system disturbance is a repetitive one. A common control updating law of ILC output is:








U




k+1


(


z


)=


U




k


(


z


)+


K


Φ(


z


)


E




k


(


z


),  (1)






where U


k


(z) is the z-transform of the ILC command at iteration k, K is the learning rate, Φ(z) is a filter, and E


k


(z) is the control error. After updating, U


k+1


(z) is added to the normal feedback controller output. Let G(z) be the z-transfer function from a plant input U(z) to a plant output Y(z), and set z=e


jωT


, the system error E


k


(z) will decay every iteration if:






ρ(


j


ω)=|1


−K


Φ(


e




jωT


)


G


(


e




jωT


)|<1  (2)






is satisfied at all frequencies. This is an important inequality in ILC. Meeting this condition will ensure reduction of E in (1) at each iteration step. In one ZAP compensation scheme, the compensation (or ZAP) table has a similar updating law:








ZAP




k+1


(


j


ω)=


ZAP




k


(


j


ω)+


K


[1


+{circumflex over (P)}Ĉ


(


j


ω)]


RRO




k


(


j


ω)






or








ZAP


(


k


+1)=


ZAP


(


k


)+


K·invDFT


{[1


+{circumflex over (P)}Ĉ


(


j


ω)]


RRO




k


(


j


ω)},  (3)






where K is the learning rate, 1+{circumflex over (P)}Ĉ(jω) is the measured 1+PC(jω) using a sine injection test and RRO


k


(jω) is a discrete Fourier transform (DFT) of the repeatable runout RRO


k


at iteration k. Note, ZAP(k) and RRO


k


are both vectors. Compare (3) and (1), it can be shown that in (3):




 Φ=1


+{circumflex over (P)}Ĉ,


  (4)




and









G
=


1

1
+
PC


.





(
5
)













If Δ(jω) is defined as Φ(jω)G(jω), then the long term stability condition (2) can be written as:






ρ(


j


ω)=|1


−K


Δ(


j


ω)|<1.  (6)






If β at all frequencies meet this condition, then the runout compensation will reduce the repeatable runout components at all frequencies in each iteration.




Thus, the repeatable runout (ZAP) compensation can be categorized as ILC. Ideally, if Δ is 1, i.e., the estimation of 1+PC(jω) is accurate, then K in (0, 2) will ensure the decay of RRO after every iteration. In practice, however, Δ is probably frequency dependant and may be a significant distance away from 1. However, such modeling mismatch (Δ is not close to 1) is not a problem to iteration stability. If K is chosen properly and condition (2) is met, even if there exists some model mismatch, ZAP compensation can still reduce RRO. This is an important concept in ILC.




If the learning rate is not properly chosen, the standard deviation of RRO may decay quickly for the first few iterations and then rapidly diverge or fluctuate instead of converging. This phenomenon is also observed by researchers in Iterative Learning Control area. The reason is that the stability condition at some frequencies is not satisfied. There are several techniques to overcome this: (1) Try to accurately determine 1+{circumflex over (P)}Ĉ. However, this may be difficult in some instances. (2) Select a proper learning in each iteration step. The learning rate need not be fixed and its sequence can be optimized to obtain maximum error-reduction at each iteration. (3) Use a zero-phase filter to reduce phase shift in filtering. (4) Cutoff the learning at frequencies where uncertainty is large.




The ZAP compensation is a special case of iterative learning control. In ZAP compensation, the requirement is bit different from ILC. In ZAP compensation, the focus is on: (1) how to get maximum RRO reduction in a minimum iteration steps. (2) Maximum RRO reduction at each iteration step. (3) Long term stability problem is not an issue in RRO compensation, since RRO compensation can be stopped before (i) the standard deviation of RRO becomes unstable, e.g., increases or fluctuates, (ii) or the standard deviation of RRO has been reduced to the required range.




Based on the iterative learning control updating law in (1), the simplest implementation is by letting E


k


(z) be RRO


k


(z) and Φ(z) be 1, which yields:








ZAP




k+1


(


j


ω)=


ZAP




k


(


j


ω)+


K·RRO




k


(


j


ω)].  (7)






However, this will not work when there is an integrator in C (which is usually true), since ρ will be greater than one at low frequencies.




The best choice of Φ(z) in hard disc servo systems is Φ=1+{circumflex over (P)}Ĉ, where 1+{circumflex over (P)}Ĉ or {circumflex over (P)}Ĉ are the estimated 1+PC or PC respectively. 1+{circumflex over (P)}Ĉ or {circumflex over (P)}Ĉ can be obtained from sine injection tests. The updating law is:








ZAP


(


k


+1)=


ZAP


(


k


)+


K·invDFT


{[1


+{circumflex over (P)}Ĉ(




j


ω)]


RRO




k


(


j


ω)}.






To obtain ZAP(k+1), a discrete Fourier transform (DFT) needs to be performed on RRO


k


to obtain RRO


k


(jω), and an inverse DFT needs to be performed to compute ZAP(k+1). However, DFT is a time consuming computation, and it requires quite large code space as well as variable space for both real and image part of data. [1+{circumflex over (P)}Ĉ(jω)]RRO


k


(jω) is a complex computation, which requires even more complex computations by a microprocessor. To reduce the computation, in the present invention a new computation method is used. Instead of implementing:








ZAP


(


k


+1)=


ZAP


(


k


)+


K·invDFT


{[1


+{circumflex over (P)}Ĉ


(


j


ω)]


RRO




k


(


j


ω)},






in frequency domain, the equation is implemented in time domain and computation will be greatly reduced. Here, the filter Φ(z) is obtained by fitting 1+{circumflex over (P)}Ĉ(jω) to a low order filter, e.g., 2


nd


order filter. Suppose 1+{circumflex over (P)}Ĉ(jω) has been obtained from a sine injection test or from a Dynamic Signal Analyzer (DSA). To find a low order filter Φ(z), one can use the ‘invfreqs’ function in MATLAB (available from the Mathworks, Inc. of Natick, Mass.) to convert the low frequency portion of 1+{circumflex over (P)}Ĉ(jω) into a 2


nd


order S-transfer-function and then apply the ‘c2dm’ (‘tustin’) function in MATLAB to obtain Φ(z). Or, Φ(z) can be directly computed based on 1+{circumflex over (P)}Ĉ(jω) using ‘sysfit’ in the Mu-toolbox of Matlab. A program can also be written to directly convert a frequency response, such as 1+{circumflex over (P)}Ĉ(jω), to a z-transfer-function with different weightings at different frequencies. The ZAP table updating law will be:








ZAP


(


k


+1)=


ZAP


(


k


)+


K


·Φ·(


z





RRO


(


k


),  (8)






where the computation will be just a few additions and multiplication of real numbers. The code and data space requirement is reduced and the computation time is greatly shortened. A learning rate K can be selected such that ρ in (2) is less than 1. A ZAP table of values can be built using (8) using this Φ(z) and the learning rate. The implementation steps are summarized as follows:




(1) Measure 1+{circumflex over (P)}Ĉ(jω),ω=m·(2πf


s


),m=1, . . . ,{fraction (N/2)}, at all harmonics of the spindle frequency f


s


, up to the Nyquist frequency of the servo system, {fraction (N/2)}f


s


, where N is the sector number.




(2) Fit the low frequency portion of 1+{circumflex over (P)}Ĉ(jω) to a low order Φ(z) using ‘invfreqs’ and ‘c2dm’ of MATLAB or using other fitting algorithms.




(3) Select a suitable learning rate which meets the condition (2).




(4) Set the iteration, k=0. Initialize CompValue(0)=0. Collect R revolutions of PES data (without injection of written-in repeatable runout (WI-RRO) correction) and calculate RRO(k).




(5) Send RRO(k) through the digital filter Φ(z) and compute ZAP(k+1) in (8).




(6) Collect R revolutions of PES data while injecting the WI-RRO correction signal ZAP(k+1).




(7) Calculate RRO. If the standard deviation of RRO is larger than the threshold, then k=k+1 and continue iteration at step 4. Else, set the ZAP as the last ZAP(k+1).




The model mismatch between Φ(z) and 1+P(jω)C(jω) is insignificant as long as the learning rate K is properly chosen. Although Φ(z) fitting may be complex for a microprocessor, this typically is performed only once for a drive and the computation can be conducted on a typical personal computer (PC). After fitting, the parameters of the filter Φ(z) can be passed to the microprocessor. In different iterations steps, different K can be selected to achieve a maximum reduction in standard deviation.




To eliminate the initial transient when passing RRO through the digital filter Φ(z), normal signal processing methods can be applied. One simple technique is by copying RRO over two periods, filtering the 2-period RRO, and retrieving the 2


nd


period output as the filtered output. For different drives, different structures of Φ(z) can be considered, depending on the loop frequency response. With this present invention, the fitting computation in filter modeling is needed only once per drive while other techniques require Fourier transformations for every track.




In a second example embodiment, instead of fitting 1+{circumflex over (P)}Ĉ(jω) to a low order filter, P(jω)C(jω) is fit to a low order filter, e.g., a 2


nd


order filter. P(jω)C(jω) can be obtained from a sine injection test or from a dynamic signal analyzer. The updating law is defined as:








ZAP


(


k


+1)=


ZAP


(


k


)+


K




1




·RRO


(


k


)+


K




2




·F


(


z





RRO


(


k


).  (9)






This is a more general case. To find a filter F(z), the ‘invfreqs’ function in MATLAB can be used to convert the low frequency portion of P(jω)C(jω) into a 2


nd


order F(z) following the same procedures in the first example embodiment. A learning rate is selected and checked to determine whether ρ in (2) is less than 1. With F(z), the above steps can be used to fill the compensation table defined in Equation (9). The learning rates K


1


and K


2


can be different.




In one aspect of the present invention, a method is provided for compensating for written in repeatable runout (RRO) errors in a disc drive


100


having a servo loop


232


for positioning a head


112


relative to a track


202


on a disc surface of rotating disc


198


. A servo position value is read from the disc surface which indicates the position of the head


112


relative to the track


202


. ZAP compensation values are retrieved from a table of ZAP values and are used to compensate the servo position value. The ZAP values are of the form ZAP(k+1)=ZAP(k)+KΦ(z)RRO(k), where K is a learning rate; k is the iteration number, Φ(z) is a filter and RRO(k) is the PES repeatable runout error. Further, inequality ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1 should be satisfied, where PC(jω) is the open loop frequency response of the servo loop


232


. Φ(z) can comprise a low order filter such as a second order filter which is fit to 1+PC(jω) or PC(jω). The fitting is performed by measuring values of 1+PC(jω) or PC(jω) at harmonics of a spindle frequency of the disc drive


100


. They can be determined using a sine wave injection test applied to the servo loop


232


. The above inequality can be satisfied by appropriately selecting K. In another aspect, a disc drive


100


is provided having a disc


198


adapted to store data on a track


202


. The track includes servo fields adapted to store servo information used to indicate position. A head


112


is provided to sense the servo information located on the disc


198


and to produce a servo position signal


222


. The servo position signal is combined with a reference signal


224


to produce a position error signal (PES)


226


indicative of a difference between an actual and a desired position of head


112


relative to track


202


. A servo controller


210


is adapted to generate a servo control signal


214


in response to the position error signal


226


. An actuator


122


coupled to the servo controller


210


is capable of moving the head


112


in response to the servo control signal


214


. A compensation (ZAP) table


229


, stored in memory or on a disc, is adapted to provide a written-in repeatable runout compensation value to the servo control signal. The ZAP values are of the form: ZAP(k+1)=ZAP(k)+kΦ(k)RRO(k), where K is a learning rate; k is the iteration index, Φ(z) is a filter and RRO(k) is the repeatable runout. Further, ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1 should be satisfied, where PC(jω) is an open loop frequency response of the servo loop


232


. Preferably Φ(z) comprises a second order filter which can be fit to 1+PC(jω) or PC(jω). The above inequality can be satisfied by appropriately selecting the learning rate K.




It is to be understood that even though numerous characteristics and advantages of various embodiments of the present 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 details, 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, other types of filters or fitting techniques can be used to determine the compensation values without departing from the scope and spirit of the present invention. The invention can be implemented in hardware, software or their combination. The particular blocks referenced herein and shown in the figures are for illustration only, and any configuration can be employed.



Claims
  • 1. A method for compensating for repeatable runout (RRO) errors in a disc drive having a servo loop for positioning a head relative to a track on a disc surface of a rotating disc, comprising:(a) retrieving a servo position value from the disc surface indication of head position relative to the track; (b) retrieving a compensation (ZAP) value from a table of ZAP values; and (c) compensating the servo position value with the ZAP value; (d) wherein the ZAP values are of the form: ZAP(k+1)=ZAP(k)+KΦ(z)RRO(k), where K is a learning rate; k is iteration number Φ(z) is a filter and RRO(k) is the repeatable runout error, and the following inequality is satisfied ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1, where PC(jω) is an open loop frequency response of the servo loop.
  • 2. The method of claim 1 wherein the filter Φ(z) comprises a low order filter.
  • 3. The method of claim 2 including determining the low order filter by fitting (1+PC(jω)) to the low order filter.
  • 4. The method of claim 3 wherein the step of fitting includes measuring (1+PC(jω)) at harmonics of a spindle frequency of the disc drive.
  • 5. The method of claim 1 including selecting K such that ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1.
  • 6. The method of claim 3 including generating the ZAP values as a function of the second order filter.
  • 7. The method of claim 2 including determining the second order filter by fitting the open loop frequency response PC(jω) to the low order filter.
  • 8. The method of claim 7 wherein the step of fitting includes measuring the open loop frequency response PC(jω) at harmonics of a spindle frequency of the disc drive.
  • 9. The method of claim 3 wherein (1+PC(jω)) is determined with a sine wave injection test.
  • 10. The method of claim 7 wherein the open loop frequency response PC(jω) is determined with a sine wave injection test.
  • 11. The method of claim 7 including generating the ZAP values as a function of the low order filter.
  • 12. A disc drive for storing information, comprising:a disc adapted to store data on a track, the track including servo fields adapted to store servo information used to indicate position; a head adapted to sense the servo information located on the disc and to produce a servo position signal therefrom, the servo position signal being combined with a reference signal to produce a position error signal indicative of a difference between an actual and a desired position of the head relative to the track; a servo controller adapted to generate a servo control signal in response to a received position error signal; an actuator, coupled to the servo controller, which is capable of moving the head in response to the servo control signal; a compensation (ZAP) table adapted to provide a written-in repeatable run-out ZAP values to the servo control signal of the form: ZAP(k+1)=ZAP(k)+KΦ(z)RRO(k), where K is a learning rate; k is iteration number, Φ(z) is a filter and RRO(k) is the repeatable runout error, and the following inequality is satisfied ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1, where PC(jω) is an open loop frequency response of the servo loop.
  • 13. The apparatus of claim 12 wherein the filter Φ(z) comprises a low order filter.
  • 14. The apparatus of claim 13 wherein the low order filter is fit to (1+PC(jω)).
  • 15. The apparatus of claim 12 wherein K is selected such that ρ(jω)=|1−KΦ(jω)/(1+PC(jω)|<1.
  • 16. The apparatus of claim 13 wherein the low order filter is fit to the open loop frequency response PC(jω).
  • 17. The apparatus of claim 13 wherein the ZAP values are a function of the low order filter.
  • 18. A method for compensating for repeatable runout (RRO) errors in a disc drive having a servo control loop to control a head relative to a track on a disc surface of a rotating disc, comprising:(a) retrieving a servo position value from the disc surface indication of head position relative to the track; (b) retrieving a compensation value from a compensation table of compensation values; and (c) compensating the servo position value with the compensation value in the servo control loop; and (d) wherein the compensation table comprises an Iterative Learning Control (ILC) scheme to add feed forward control to the servo control loop to reduce a repetitive portion of the control.
CROSS-REFERENCE TO CO-PENDING APPLICATION

This application claims priority benefits from U.S. provisional patent application Ser. No. 60/132,992, filed May 7, 1999, and entitled “COMPUTATIONALLY SIMPLIFIED ZERO ACCELERATION PATH METHODS”.

US Referenced Citations (143)
Number Name Date Kind
3725764 Oswald Apr 1973 A
3863124 Pierce et al. Jan 1975 A
3914541 Elliott Oct 1975 A
4030132 Iftikar et al. Jun 1977 A
4103314 Case Jul 1978 A
4135217 Jacques et al. Jan 1979 A
4149199 Chick et al. Apr 1979 A
4217612 Matla et al. Aug 1980 A
4314295 Frandsen Feb 1982 A
4329712 Lang May 1982 A
4355266 Pearson Oct 1982 A
4371960 Kroiss Feb 1983 A
4396961 Prasad et al. Aug 1983 A
4414589 Oliver et al. Nov 1983 A
4456934 Wedman et al. Jun 1984 A
4485418 Bremmer Nov 1984 A
4497047 Fujiie et al. Jan 1985 A
4513333 Young et al. Apr 1985 A
4524397 Bond Jun 1985 A
4562494 Bond Dec 1985 A
4575776 Stephens et al. Mar 1986 A
4605977 Matthews Aug 1986 A
4616276 Workman Oct 1986 A
4620244 Krause Oct 1986 A
4620252 Bauck et al. Oct 1986 A
4633345 Keener Dec 1986 A
4636885 Yamada et al. Jan 1987 A
4677602 Okano et al. Jun 1987 A
4679103 Workman Jul 1987 A
4697127 Stich et al. Sep 1987 A
4697213 Kitamura Sep 1987 A
4706250 Patel Nov 1987 A
4727533 Erbert Feb 1988 A
4764860 Takao Aug 1988 A
4786990 Overton et al. Nov 1988 A
4788608 Tsujisawa Nov 1988 A
4791599 Hethuin et al. Dec 1988 A
4803572 Haruna et al. Feb 1989 A
4816938 Cowen et al. Mar 1989 A
4822139 Yshizumi Apr 1989 A
4878135 Makino et al. Oct 1989 A
4890172 Watt et al. Dec 1989 A
4897840 Weiss et al. Jan 1990 A
4924165 Kohno May 1990 A
4947272 Yokozawa Aug 1990 A
4956831 Sarraf et al. Sep 1990 A
4965782 Mathews Oct 1990 A
5046060 Chow et al. Sep 1991 A
5055731 Nihei et al. Oct 1991 A
5056074 Tateishi et al. Oct 1991 A
5062023 Squire Oct 1991 A
5073885 Ito et al. Dec 1991 A
5081552 Glaser et al. Jan 1992 A
5089757 Wilson Feb 1992 A
5122718 Sawata Jun 1992 A
5146372 Cronch et al. Sep 1992 A
5155422 Sidman et al. Oct 1992 A
5161077 Jabbari Nov 1992 A
5164863 Janz Nov 1992 A
5185681 Volz et al. Feb 1993 A
5187620 Notake et al. Feb 1993 A
5189578 Mori et al. Feb 1993 A
5197058 Bell, Jr. et al. Mar 1993 A
5198948 Stover et al. Mar 1993 A
5204793 Plonczak Apr 1993 A
5216559 Springer Jun 1993 A
5233487 Christensen et al. Aug 1993 A
5241433 Anderson et al. Aug 1993 A
5247501 Hashimoto et al. Sep 1993 A
5257149 Meyer Oct 1993 A
5270885 Satoh et al. Dec 1993 A
5274511 Ikeda Dec 1993 A
5287225 Jorgenson Feb 1994 A
5287234 Suzuki Feb 1994 A
5299026 Vincett et al. Mar 1994 A
5303105 Jorgenson Apr 1994 A
5305160 Funches et al. Apr 1994 A
5311378 Williams et al. May 1994 A
5367513 Bates et al. Nov 1994 A
5379171 Morehouse et al. Jan 1995 A
5400201 Pederson Mar 1995 A
5404253 Painter Apr 1995 A
5416658 Sega et al. May 1995 A
5444582 Suzuki Aug 1995 A
5444583 Ehrlich et al. Aug 1995 A
5455724 Suzuki et al. Oct 1995 A
5465182 Ishikawa Nov 1995 A
5465183 Hattori Nov 1995 A
5521773 Suzuki et al. May 1996 A
5521778 Boutaghou et al. May 1996 A
5523902 Pederson Jun 1996 A
5535072 Witt et al. Jul 1996 A
5539714 Andres, Jr. et al. Jul 1996 A
5541784 Cribbs et al. Jul 1996 A
5550685 Drouin Aug 1996 A
5553086 Sompel et al. Sep 1996 A
5576909 Dierkes et al. Nov 1996 A
5585976 Pham Dec 1996 A
5602689 Kadlec et al. Feb 1997 A
5608586 Sri-Jayantha et al. Mar 1997 A
5610487 Hutsell Mar 1997 A
5610777 Dang et al. Mar 1997 A
5638230 Kadlec Jun 1997 A
5646797 Kadlec et al. Jul 1997 A
5648738 Welland et al. Jul 1997 A
5675450 Kadlec Oct 1997 A
5677809 Kadlec Oct 1997 A
5680272 Kadlec et al. Oct 1997 A
5684650 Kadlec et al. Nov 1997 A
5706265 Bang Jan 1998 A
5708581 Martinez Jan 1998 A
5754354 Tomita et al. May 1998 A
5774294 Fioravanti Jun 1998 A
5774297 Hampshire et al. Jun 1998 A
5777816 Hampshire et al. Jul 1998 A
5793559 Shepherd et al. Aug 1998 A
5796535 Tuttle et al. Aug 1998 A
5796542 Szeremeta Aug 1998 A
5815332 Suzuki et al. Sep 1998 A
5822147 Kisaka Oct 1998 A
5825578 Shrinkle et al. Oct 1998 A
5826338 Chilton et al. Oct 1998 A
5828515 Kim Oct 1998 A
5835300 Murphy et al. Nov 1998 A
5835302 Funches et al. Nov 1998 A
5844743 Funches Dec 1998 A
5854722 Cunningham et al. Dec 1998 A
5883749 Park Mar 1999 A
5886846 Pham et al. Mar 1999 A
5898286 Clare et al. Apr 1999 A
5926338 Jeon et al. Jul 1999 A
5940239 Lee et al. Aug 1999 A
5940240 Kupferman Aug 1999 A
5949605 Lee et al. Sep 1999 A
5949608 Hunter Sep 1999 A
5956201 Pham et al. Sep 1999 A
5969494 Kang Oct 1999 A
5978169 Woods Nov 1999 A
6069764 Morris et al. May 2000 A
6097565 Sri-Jayantha et al. Aug 2000 A
6115203 Ho et al. Sep 2000 A
6141175 Nazarian et al. Oct 2000 A
6310742 Nazarian et al. Oct 2001 B1
Foreign Referenced Citations (10)
Number Date Country
3900683 Jan 1989 DE
197 15 678 Oct 1997 DE
0 130 248 Jan 1985 EP
0 540 114 May 1993 EP
0 549 814 Jul 1993 EP
2 060 217 Apr 1981 GB
1713268 Mar 1991 GB
WO 9106096 May 1991 WO
WO 9306595 Apr 1993 WO
WO 9745833 Dec 1997 WO
Non-Patent Literature Citations (11)
Entry
Recording Properties of Multilayered Thin Film Media, by D.C. Palmer, K.E. Johnson, E.Y. Wu, and J.V. Peske, IEEE Transactions On Magnetics, vol. 27, No. 6, Nov. 1991, pp. 5307-5309.
Evolution of The Soft Error Rate Model, by P. Hardy and D.J. Malone, IEEE Transactions On Magnetics, vol. 27, No. 6, Nov. 1991, pp. 5313-5315.
Error Rate Performance of Experimental Gigabit Per Square Inch Recording Components, by T.D. Howell, D.P. McCown, T.A. Diola, Y. Tang, K.R. Hense, and R.L. Gee, IEEE Transactions On Magnetics, vol. 26, No. 5, Sep. 1990, pp. 2298-2302.
A Track Density Model for Magnetoresistive Heads Considering Erase Bands, by J.K. Lee and P.I. Bonyhard, IEEE Transactions On Magnetics, vol. 26, No. 5, Sep. 1990, pp. 2475-2477.
Demonstration Of 500 Megabits Per Square Inch With Digital Magnetic Recording, by Roy A. Jensen, Joost Mortelmans, and Robin Hauswitzer, IEEE Transactions On Magnetics, vol. 26, No. 5, Sep. 1990, pp. 2169-2171.
IBM's Next Generation Magnetoresistive Heads, 1987.
Magnetoresistive Read Magnetic Recording Head Offtrack Performance Assessment, by P.I. Bonyhard and J.K. Lee, IEEE Transactions On Magnetics, vol. 26, Nov. 1990, pp. 2448-2450.
Design Issues For Practical Rigid Disk Magnetoresistive Heads, by P.I. Bonyhard. IEEE, Transactions On Magnetics, vol. 26, No. 6, Nov. 1990, pp. 3001-3003.
TMR and Squeeze at Gigabit Areal Densities, by Patrick C. Arnett and Don McCown, IEEE Transactions On Magnetics, vol. 28, No. 4, Jul. 1992, pp. 1984-1986.
Window-Shifting Mechanism In Data Separator, IBM Technical Disclosure Bulletin, vol. 30, No. 6, Nov. 1987.
“Automated Tuning Concepts for Iterative Learning and Repetitive Control Laws” by R. Longman et al., Proceedings of the 37th IEEE Conference on Decision and Control, pp. 192-198, (Aug. 1998).
Provisional Applications (1)
Number Date Country
60/132992 May 1999 US