US20090086363A1 - Transducer positioning responsive to complex position error signal - Google Patents
Transducer positioning responsive to complex position error signal Download PDFInfo
- Publication number
- US20090086363A1 US20090086363A1 US11/863,337 US86333707A US2009086363A1 US 20090086363 A1 US20090086363 A1 US 20090086363A1 US 86333707 A US86333707 A US 86333707A US 2009086363 A1 US2009086363 A1 US 2009086363A1
- Authority
- US
- United States
- Prior art keywords
- real
- vibration
- frequency
- response
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/58—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
- G11B5/596—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
Definitions
- the present invention generally relates to controlling transducer movement and, more particularly, to controlling transducer movement responsive to a position error signal.
- Disk drives are digital data storage devices which can enable users of computer systems to store and retrieve large amounts of data in a fast and efficient manner.
- a typical disk drive includes a plurality of magnetic recording disks which are mounted to a rotatable hub of a spindle motor and rotated at a high speed.
- An array of read/write heads is disposed adjacent surfaces of the disks to transfer data between the disks and a host computer.
- the heads can be radially positioned over the disks by a rotary actuator and a closed loop servo system, and can fly proximate the surfaces of the disks upon air bearings.
- a plurality of nominally concentric tracks can be defined on each disk surface.
- a preamp and driver circuit generates write currents that are used by the head to selectively magnetize areas of the tracks during a data write operation and amplifies read signals detected by the head during a data read operation.
- a read/write channel and interface circuit are connected to the preamp and driver circuit to transfer the data between the disks and the host computer.
- the servo system can operate in two primary modes: seeking and track following. During a seek, a selected head is moved from an initial track to a target track on the corresponding disk surface. The servo system applies a current command signal to an actuator coil to accelerate the head toward the target track. During the seek, the servo system can measure the location of the head as it moves across the disk based on servo data that is recorded on the disk, and can adjust the current command signal in response to the location measurements. As the head approaches the target track, the servo system decelerates the head to bring it to rest over the target track. Thereafter, the servo system enters the track following mode wherein the head is maintained over the center of the target track while data is written/read.
- Vibration of the disk drive can cause the head to have an across-track vibration, which can affect the ability of the servo system to maintain the head on a track during a track following operation.
- the servo system can be configured to attempt to compensate for a worst-case amount of vibration, within design constraints, that the head may experience while in a track following operation on various tracks across the disk.
- optimizing the servo system for worst-case vibration conditions may provide less than optimal performance (e.g., less input/output of data throughput than otherwise possible) in non-vibration conditions.
- real and imaginary component signals are formed from a position error signal (PES) which is indicative of a transducer location on a media. Positioning of the transducer is controlled in response to the real and imaginary component signals.
- PES position error signal
- a circuit forms real and imaginary component signals from the PES, and controls positioning of the transducer in response to the real and imaginary component signals.
- a vibration determination circuit forms separate real and imaginary component signals from the PES, and determines frequency of a vibration induced excitation of the PES in response to the real and imaginary component signals.
- An actuator control circuit controls positioning of the transducer in response to the determined vibration frequency.
- FIG. 1 is a perspective view of a disk drive with electronic circuits that are configured in accordance with at least some embodiments of the present invention.
- FIG. 2 is a block diagram of an exemplary head disk assembly of the disk drive.
- FIG. 3 is a block diagram of a portion of the controllers and other electronic circuits of the disk drive shown in FIG. 1 , and which are configured in accordance with some embodiments of the present invention.
- FIG. 4 is a block diagram of the servo controller of FIG. 3 in accordance with some embodiments.
- FIG. 5 is a block diagram of the actuator control circuit of FIG. 4 in accordance with some embodiments.
- FIG. 6 is a block diagram of the vibration frequency and amplitude detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 7 is a block diagram of a phase derivative-based configuration of the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 8 is a block diagram of a covariance/correlation-based configuration of the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 9 is a block diagram of a single bit correlation-based configuration of the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 10 illustrates two graphs, the top graph showing an 800 Hz vibration exciting the disk drive of FIG. 1 and appearing in a position error signal (PES), and the bottom graph showing a frequency estimate that is output by the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- PES position error signal
- FIG. 11 illustrates two graphs, the top graph showing an 800 Hz vibration exciting the disk drive of FIG. 1 and appearing with a substantial noise component in the PES, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 12 illustrates two graphs, the top graph showing vibration exciting the disk drive of FIG. 1 , where the vibration abruptly changes from 800 Hz to 1200 Hz, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 13 illustrates two graphs, the top graph showing vibration from an operating music speaker exciting the disk drive of FIG. 1 and appearing in the PES, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit of FIG. 4 in accordance with some embodiments.
- FIG. 14 illustrates two graphs, the top graph showing the operational input/output data throughput of a disk drive having a static controller that is excited by a range of vibration frequencies, and the bottom graph showing the operational input/output data throughput of the disk drive of FIG. 1 having a servo controller that adapts so as to compensate for the determined vibration frequency in accordance with some embodiments.
- Some embodiments may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). Consequently, as used herein, the term “signal” may take the form of a continuous waveform and/or discrete value(s), such as digital value(s) in a memory or register. Furthermore, various embodiments may take the form of a computer program product on a computer-usable or computer-readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system.
- the present invention is not limited thereto. It is to be understood that the present invention can be more broadly used for positioning of any type of transducer in response to a position error signal that is indicative of a location of the transducer relative to a media. Accordingly, while the transducer may be a head and the media may be a data storage disk within a disk drive, the terms transducer and media are not limited thereto.
- FIG. 1 A simplified diagrammatic representation of a disk drive, generally designated as 10 , is illustrated in FIG. 1 .
- the disk drive 10 includes at least one disk or disk stack 12 (illustrated as a single disk in FIG. 1 ) that is rotated by a spindle motor 14 .
- the spindle motor 14 is mounted to a base plate 16 .
- An actuator 18 is also mounted to the base plate 16 .
- the disk drive 10 is configured to store and retrieve data responsive to write and read commands from a host device.
- a host device can include, but is not limited to, a desktop computer, a laptop computer, a personal digital assistant (PDA), a digital video recorder/player, a digital music recorder/player, and/or another electronic device that can be communicatively coupled to store and retrieve data in the disk drive 10 .
- PDA personal digital assistant
- a host device can include, but is not limited to, a desktop computer, a laptop computer, a personal digital assistant (PDA), a digital video recorder/player, a digital music recorder/player, and/or another electronic device that can be communicatively coupled to store and retrieve data in the disk drive 10 .
- PDA personal digital assistant
- the actuator 18 includes a head 20 (or transducer) mounted to a flexure arm 22 which is attached to an actuator arm 24 that can rotate about a pivot bearing assembly 26 .
- the head 20 may, for example, include a magnetoresistive (MR) element and/or a thin film inductive (TFI) element.
- the actuator 18 also includes a servo motor 28 (e.g., voice coil motor (VCM)) which moves the head 20 relative to the disk stack 12 .
- the spindle motor 14 and servo motor 28 are coupled to controllers, read/write channel circuits, and other associated electronic circuits 30 which can be enclosed within one or more integrated circuit packages mounted to a printed circuit board (PCB) 32 .
- PCB printed circuit board
- controllers and other circuits 30 are referred to below as “controllers and other circuits” for brevity.
- the controllers and other circuits 30 may include analog circuitry and/or digital circuitry, such as a gate array and/or microprocessor-based instruction processing device(s) (e.g., general purpose microprocessor and/or digital signal processor).
- the disk stack 12 typically includes a plurality of disks 34 , each of which may have a pair of disk surfaces 36 .
- the disks 34 are mounted on a cylindrical shaft and are rotated about an axis by the spindle motor 14 .
- the actuator 18 includes a plurality of the heads 20 , each of which is positioned to be adjacent to a different one of the disk surfaces 36 .
- Each head 20 is mounted to a corresponding one of the flexure arms 22 .
- the servo motor 28 operates to move the actuator arm 24 , and thus moves the heads 20 relative to their respective disk surfaces 36 .
- the heads 20 are configured to fly on an air cushion relative to the data recording surfaces 36 of the rotating disks 34 while writing data to the data recording surface responsive to a write command from a host device or while reading data from the data recording surface to generate a read signal responsive to a read command from the host device.
- FIG. 2 further illustrates tracks and spokes on the disks 34 .
- Data is stored on the disks 34 within a number of concentric tracks 40 (or cylinders).
- Each track 40 is divided into a plurality of radially extending sectors 42 .
- Each sector is further divided into a servo sector and a data sector.
- the servo sectors of the disks 34 are used to, among other things, accurately position the head 20 so that data can be properly written onto and read from a selected one of the disks 34 .
- Exemplary servo data that may be stored in at least some of the servo sectors may include, for example, a DC erase field, a preamble field, a servo address mark (SAM) field, and a servo burst field of circumferentially staggered radially offset servo bursts (e.g., A, B, C, D servo bursts).
- the data sectors are where non-servo related data (i.e., host device data) is stored and retrieved.
- FIG. 3 is a block diagram of a portion of the controllers and other circuits 30 of the disk drive 10 shown in FIG. 1 , according to some embodiments, and which can be communicatively connected to a host device.
- the controllers and other circuits 30 can include a data controller 302 , a servo controller 304 , and a read write channel 306 . Although two separate controllers 302 and 304 and a read write channel 306 have been shown for purposes of illustration and discussion, it is to be understood that their functionality described herein may be integrated within a common integrated circuit package or distributed among more than one integrated circuit package.
- the head disk assembly (HDA) 308 can include a plurality of the disks 34 , the actuator 18 with a plurality of heads 20 positioned adjacent to different data storage surfaces of the disks 34 , the servo motor 28 , and the spindle motor 14 .
- Write commands and associated data from the host device 60 are buffered by the data controller 302 .
- the data controller 302 carries out buffered write commands by formatting the associated data into blocks with the appropriate header information, and transfers the formatted data via the read/write channel 306 to logical block addresses (LBAs) on the disk 34 identified by the associated write command.
- LBAs logical block addresses
- the read write channel 306 can convert data between the digital signals processed by the data controller 302 and the analog signals conducted through the heads 20 in the HDA 308 .
- the read write channel 306 provides servo data read from the HDA 308 to the servo controller 304 .
- the servo data can be used to detect the location of the head 20 in relation to LBAs on the disk 34 .
- the servo controller 304 can use LBAs from the data controller 302 and the servo data to seek the head 20 to an addressed track and block on the disk 34 , and to maintain the head 20 aligned with the track while data is written/read on the disk 34 .
- the servo controller 304 regulates the current command signal (i a of FIG. 2 ) supplied to the servo motor 28 of the actuator 18 to carry out a seek operation in which a selected head 20 is moved to a target track on the corresponding disk 34 and then settled into alignment with the target track so data can be written and/or read.
- Vibration of the disk drive 10 can cause the head 20 to have an across track vibration, which can affect the ability of the servo controller 304 to maintain the head 20 on a selected track during a track following operation.
- the servo controller 304 can determine the frequency and amplitude of the vibration, and can compensate for the determined vibration characteristics, within design constraints, so that the head 20 may remain on-track.
- FIG. 4 is a block diagram of the servo controller 304 of FIG. 3 in accordance with some embodiments.
- the servo controller 304 can include an actuator control circuit 402 , a vibration frequency and amplitude determination circuit 404 , and a reference position generator 406 .
- a read position signal 420 is generated by the head 20 as the servo patterns are read along the track, where the read position signal 420 indicates a relative position of the head 20 to the track.
- the sensed position of the head 20 is affected by the combined effects, illustrated by summing node 412 , of positioning by the actuator 18 and vibration disturbances 410 , such as external shocks on the disk drive 10 , that induce vibration into the head 20 and/or the disk 34 . Accordingly, the sensed position of the head 20 includes a component therein that is responsive to the vibration disturbance 410 .
- the read position signal 420 is fed-back to a summing node 422 , where it is combined with a desired reference position signal from the reference position generator 406 to generate a position error signal (PES) 424 .
- the desired reference position signal may be a DC value (e.g., static value), such as zero, for at least a portion of the revolution of the disks 34 .
- the reference position generator 406 can be configured to drive the head 20 toward the centerline of a data track during track following, or to move the head 20 off-track during seeking.
- the vibration frequency and amplitude determination circuit 404 generates complex real and imaginary components signals from the PES, and uses the real and imaginary PES components to determine frequency and amplitude values 430 of the vibration induced excitation of the PES.
- the actuator control circuit 402 regulates the current command signal (i a of FIG. 2 ) supplied to the servo motor 28 of the actuator 18 in response to the PES and in response to the determined frequency and amplitude values 430 of the vibration to attempt to maintain the head 20 on the selected track (e.g., attempt to regulate the current command signal to drive the PES to zero).
- FIG. 5 is a block diagram of the actuator control circuit 402 of FIG. 4 in accordance with some embodiments.
- the exemplary actuator control circuit 402 includes three actuator control circuits, namely, a non-vibration state actuator control circuit 502 , a vibration range-A actuator control circuit 504 , and a vibration range-B actuator control circuit 506 , as well as a mode selector 508 .
- the three actuator control circuits 502 , 504 , and 506 have different disturbance transfer functions (i.e., ratio of their output response to their input) relative to each other.
- the non-vibration state actuator control circuit 502 can be configured to provide increased data throughput for reading and/or writing on the disk 34 while the head 20 and/or disk 34 are subjected to less than a threshold amplitude of vibration.
- the vibration range-A actuator control circuit 504 can be configured to provide more robust track following (i.e., less data track misregistration TMR and reduced likelihood of read/write data errors) while the head 20 and/or disk 34 are subjected to at least the threshold vibration amplitude with a fundamental vibration frequency within a defined range A, compared to the non-vibration state actuator control circuit 502 and the vibration range-B actuator control circuit 506 .
- the vibration range-B actuator control circuit 506 can be configured to provide more robust track following while the head 20 and/or disk 34 are subjected to at least the threshold vibration amplitude with a fundamental vibration frequency within a defined range B, compared to the non-vibration state actuator control circuit 502 and the vibration range-A actuator control circuit 504 .
- the mode selector 508 selects between the output of the non-vibration state actuator control circuit 502 , the output of the vibration range-A actuator control circuit 504 , and the output of the vibration range-B actuator control circuit 506 in response to the determined frequency and amplitude values 430 of the vibration.
- the mode selector 508 uses the selected output among the control circuits 502 - 506 to regulate the current command signal supplied to the servo motor 28 to position the head 20 .
- the mode selector 508 selects and uses the output of the non-vibration state actuator control circuit 502 to regulate the current command signal supplied to the actuator 18 .
- the mode selector 508 selects and uses the output of the vibration range-A actuator control circuit 504 to regulate the current command signal supplied to the actuator 18 .
- the mode selector 508 selects and uses the output of the vibration range-B actuator control circuit 506 to regulate the current command signal supplied to the actuator 18 .
- the mode selector 508 may delay switching between the outputs of the control circuits 502 - 506 until the head 20 is being moved between tracks in a seek operation.
- the mode selector 508 may alternatively smoothly transition between the outputs of the control circuits 502 - 506 to provide a more continuous current command signal to the actuator 18 .
- the mode selector 508 may increase a contribution of the output from one of the control circuits 502 - 506 (e.g., 504 ) while decreasing the contribution of the output from the other two control circuits 502 - 506 (e.g., 502 and 506 ) to the current command signal.
- the mode selector 508 may therefore include a weighted combiner that varies the weighting applied to the separate contributions of the output from the control circuits 502 - 506 (e.g., 504 ) for the formation of the current command signal in response to the determined vibration frequency and amplitude.
- the actuator control circuit 402 varies its vibration compensation scheme between those provided by the three control circuits 502 - 506 in response to the determined amplitude and frequency values 430 of the vibration.
- Positioning of the head 20 may thereby be controlled in a manner that is more optimized for the particular amplitude and frequency of the vibration, which may provide more robust track following and/or improved read/write data throughput as the head 20 and/or disk 34 are subjected to various vibration and non-vibration conditions that change over time.
- control circuit 402 of FIG. 5 shows three different control circuits 502 , 504 , and 506 , it is not limited thereto and may instead include any number of control circuits.
- control circuits 502 - 506 have been shown in separate boxes in FIG. 5 for ease of illustration and explanation, they are not limited thereto and may instead be integrated within a common physical electronic device or may be distributed across any number of physical electronic devices.
- the control circuits 502 - 506 can implemented within a common digital signal processor, general purpose processor, and/or ASIC.
- the actuator control circuit 402 may automatically adapt to respond to the determined amplitude and frequency values 430 of the vibration.
- the transfer function of the actuator control circuit 402 may be modified to shift one or more zeros and poles of the transfer function thereof to overlap the determined vibration frequency and thereby at least substantially attenuate the affect of the vibration on the response of the actuator control circuit 402 .
- the extent to which the zeros and poles of the transfer function are shifted toward the determined vibration frequency may be regulated in response to the determined vibration amplitude.
- the transfer function of the actuator control circuit 402 may be modified so that a zero and pole thereof substantially overlaps, and thereby attenuates, the determined vibration frequency when the determined vibration amplitude exceeds a threshold level.
- FIG. 6 is a block diagram of the vibration frequency and amplitude determination circuit 404 of FIG. 4 in accordance with some embodiments.
- the PES 424 is passed through a low pass filter (LPF) 600 and then to a Hilbert transform filter 602 .
- the Hilbert transform filter 602 forms separate real R and imaginary I components signals from the PES 424 .
- the Hilbert transform filter 602 generates the real R and imaginary I components signals from the filtered PES function S(t) in the continuous time domain based on the following Hilbert equation:
- H ⁇ ( S ) 1 ⁇ ⁇ ⁇ - ⁇ ⁇ ⁇ S ⁇ ( ⁇ ) t - ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ,
- H(S) represents the Hilbert transform in continuous time domain
- ⁇ represents period of the PES function S(t).
- the Hilbert transform filter 602 may form separate real R(k) and imaginary I(k) components signals from the PES 424 in the discrete time domain, where k represents discrete sample times, based on the following Hilbert equations:
- H ⁇ ( k ) 2 ⁇ ⁇ ( sin 2 ⁇ ( ⁇ ⁇ ⁇ k 2 ) k ) ,
- H(k) represents the Hilbert transform in discrete time, and k represents sample times which are not equal to zero;
- H(k) 0, when k is equal to zero.
- the Hilbert transform filter 602 forms separate real R(k) and imaginary I(k) component values from the PES 424 using the Hilbert transform H(k).
- the operation of a Hilbert transform filter to convert a signal into real and imaginary components is well known and, therefore, further description thereof is omitted for brevity.
- the frequency detector circuit 604 uses the real R(k) and imaginary I(k) component values to generate a frequency value that indicates the frequency of the vibration induced excitation of the PES, and which is filtered by another LPF 606 to generate a filtered frequency value.
- An amplitude detector circuit 608 uses the real R(k) and imaginary I(k) component values to generate an amplitude value that indicates amplitude of the vibration induced excitation of the PES, and which is filtered by another LPF 610 to generate a filtered amplitude value.
- the filtered frequency and amplitude values can be used, as described above, to regulate the mode selector 508 in FIG. 5 and/or to adapt the actuator control circuit 402 so as to control the current command signal that is supplied to the actuator 18 so as to compensate for the vibration.
- FIG. 7 is a block diagram of a phase derivative-based configuration of the frequency determination circuit 604 of FIG. 4 .
- the frequency detector 604 can generate a frequency value based on the following phase derivative-based equation:
- FrequencyEstimate arc ⁇ ⁇ Tan ⁇ ( I ⁇ ( k ) R ⁇ ( k ) ) - arc ⁇ ⁇ Tan ⁇ ( I ⁇ ( k - 1 ) R ⁇ ( k - 1 ) ) ,
- I(k) represents the imaginary component of the PES value at sample time k
- R(k) represents the real component of the PES value at sample time k
- I(k ⁇ 1) represents the imaginary component of the PES value at a previous sample time k ⁇ 1
- R(k ⁇ 1) represents the real component of the PES value at the previous sample time k ⁇ 1.
- the frequency determination circuit 604 of FIG. 7 determines frequency based on the derivative of the polar angles, when noise is present in the PES the determined frequency may have increased error relative to a noiseless PES.
- a covariance/correlation-based frequency determination approach which is described below with regard to FIG. 8 , may be carried-out.
- FIG. 8 is a block diagram of a covariance/correlation-based configuration of the frequency detector 604 of FIG. 4 .
- the frequency detector 604 generates a frequency value based on the following covariance/correlation-based equation:
- ComplexConjugate(S(k ⁇ 1)) represents the complex conjugate of the real and imaginary components at the previous sample time k ⁇ 1 (i.e., R(k ⁇ 1) and I(k ⁇ 1)), and the polar angle of the product of S(k) and the complex conjugate of S(k ⁇ 1) can be determined by as the argument of the product. Because the frequency determination circuit 604 of FIG. 8 determines frequency based on a derivative inside the polar angle, the presence of noise in the PES may have less effect on the accuracy of the determined frequency.
- the effective signal to noise ratio, and associated accuracy of the frequency determination in the presence of a noisy PES may be increased by low pass filtering the result of the product of S(k) and the complex conjugate of S(k ⁇ 1), such as according to the following equation:
- Frequency angle[convolution(S(k) ⁇ ComplexConjugate(S(k ⁇ 1)))], where convolution represents a low pass filter that filters the product S(k) over, for example, 5 to 10 of the sample times k.
- FIG. 9 is a block diagram of a single bit correlation-based configuration of the frequency detector 604 of FIG. 4 .
- the real component value at sample time k is converted from an N-bit representation (e.g., one or more bytes) to a single bit real value (R 1 (k)) by a N-bit-to-1-bit converter 902 .
- the imaginary component value at the sample time k is converted from an N-bit representation to a single bit imaginary value (I 1 (k)) by a N-bit-to-1-bit converter 906 .
- the N-bit-to-1-bit converters 902 and 906 may each carry out the N-bit to single bit conversions by comparing their respective N-bit component values to a threshold value, and selectively generating either a logical 0 or logical 1 value in response to the comparison (e.g., output 1 if the N-bit component value>threshold value, and output 0 if the N-bit component value ⁇ threshold value).
- a first delay circuit 910 delays the single bit real value (R 1 (k)) output from the converter 902 to generate a delayed single bit real value (R 1 (k ⁇ 1)).
- a second delay circuit 912 delays the single bit imaginary value (I 1 (k)) output from the converter 906 to generate a delayed single bit imaginary value (I 1 (k ⁇ 1)).
- a first exclusive OR (XOR) circuit 904 generates a first correlation output from an XOR operation on the single bit real value (R 1 (k)) from the converter 902 and the delayed single bit imaginary value (I 1 (k ⁇ 1)) from the delay circuit 912 .
- a second exclusive OR (XOR) circuit 908 generates a second correlation output from an XOR operation on the single bit imaginary value (I 1 (k)) from the converter 906 and the delayed single bit real value (R 1 (k ⁇ 1)) from the delay circuit 910 .
- a summation circuit 914 adds the first and second correlation outputs from the first and second XOR circuits 904 and 908 to generate a pulse train over time having a duty cycle that is modulated by the frequency of the vibration induced excitation of the PES, and which therefore indicates the frequency of the vibration.
- the LPF 606 of FIG. 6 averages the pulse train from the summation circuit 914 to generate frequency values.
- the amplitude detector 608 can generate an amplitude value A(k) based on a square root of the sum of the squares of the real and imaginary component values, as illustrated by the following equation:
- a ( k ) ⁇ square root over ( R 2 ( k )+ I 2 ( k )) ⁇ square root over ( R 2 ( k )+ I 2 ( k )) ⁇ .
- the frequency value is filtered by the LPF 606 and the amplitude value is filtered by the LPF 610 to reduce noise therein, such as due to noise in the PES that is misinterpreted as vibration induced excitation. Accordingly, filtering the frequency and amplitude values using the LPFs 606 and 610 may improve the stability of the servo controller 304 while it positions the head 20 so as to compensate for the detected frequency and amplitude of the vibration excitation of the head 20 and/or the disks 34 .
- the top graph shows an 800 Hz vibration that is exciting the disk drive 10 of FIG. 1 , and which introduces a vibration component into the PES.
- the bottom graph shows estimated frequency values that may be output by the frequency detector 604 . As shown in the bottom graph, the frequency values indicates that the vibration occurs at about 800 Hz.
- the top graph shows an 800 Hz vibration that is exciting the disk drive 10 and which appears with a substantial noise component in the PES.
- the bottom graph shows the estimated frequency values that may be output by the frequency detector 604 , and which illustrates that the frequency detector 604 may properly indicate that the vibration frequency occurs at about 800 Hz in spite of the substantial noise component in the PES.
- the top graph shows a vibration that is exciting the disk drive 10 and abruptly switches from 800 Hz to 1200 Hz.
- the bottom graph shows that the frequency detector 604 can track the time varying vibration contribution to the PES by generating about a 800 Hz frequency estimate between sample times 1.508 ⁇ 10 4 and about 1.512 ⁇ 10 4 , and then abruptly increasing the frequency estimate to about 1200 Hz at about sample time 1.512 ⁇ 10 4 .
- the top graph shows an excitation vibration of the disk drive 10 that is created by an adjacent speaker which is playing music.
- the bottom graph shows the corresponding frequency values that may be output by the frequency detector 604 .
- the actuator control circuit 402 of FIG. 4 may control positioning of the head 20 in response to the detected frequency values so as to compensate for the speaker induced vibration of the head 20 and/or the disks 34 .
- the bottom curve 1404 shows the operational input/output data throughput of a disk drive that is excited by a range of vibration frequencies and which operates with a static controller that does not compensate for the time varying characteristics of the vibration frequencies.
- the top curve 1402 shows the operational input/output data throughput which may be provided by the disk drive 10 using the servo controller 304 to detect the frequency and amplitude of the vibration and to respond thereto so as to compensate for the vibration and improve the tracking of the head 20 relative to a selected track on the disk 34 , and which may thereby improve input/output data throughput through the head 20 .
Abstract
Description
- The present invention generally relates to controlling transducer movement and, more particularly, to controlling transducer movement responsive to a position error signal.
- Disk drives are digital data storage devices which can enable users of computer systems to store and retrieve large amounts of data in a fast and efficient manner. A typical disk drive includes a plurality of magnetic recording disks which are mounted to a rotatable hub of a spindle motor and rotated at a high speed. An array of read/write heads is disposed adjacent surfaces of the disks to transfer data between the disks and a host computer. The heads can be radially positioned over the disks by a rotary actuator and a closed loop servo system, and can fly proximate the surfaces of the disks upon air bearings.
- A plurality of nominally concentric tracks can be defined on each disk surface. A preamp and driver circuit generates write currents that are used by the head to selectively magnetize areas of the tracks during a data write operation and amplifies read signals detected by the head during a data read operation. A read/write channel and interface circuit are connected to the preamp and driver circuit to transfer the data between the disks and the host computer.
- The servo system can operate in two primary modes: seeking and track following. During a seek, a selected head is moved from an initial track to a target track on the corresponding disk surface. The servo system applies a current command signal to an actuator coil to accelerate the head toward the target track. During the seek, the servo system can measure the location of the head as it moves across the disk based on servo data that is recorded on the disk, and can adjust the current command signal in response to the location measurements. As the head approaches the target track, the servo system decelerates the head to bring it to rest over the target track. Thereafter, the servo system enters the track following mode wherein the head is maintained over the center of the target track while data is written/read.
- Vibration of the disk drive can cause the head to have an across-track vibration, which can affect the ability of the servo system to maintain the head on a track during a track following operation. The servo system can be configured to attempt to compensate for a worst-case amount of vibration, within design constraints, that the head may experience while in a track following operation on various tracks across the disk. However, optimizing the servo system for worst-case vibration conditions may provide less than optimal performance (e.g., less input/output of data throughput than otherwise possible) in non-vibration conditions.
- In some embodiments, real and imaginary component signals are formed from a position error signal (PES) which is indicative of a transducer location on a media. Positioning of the transducer is controlled in response to the real and imaginary component signals.
- In some other embodiments, a circuit forms real and imaginary component signals from the PES, and controls positioning of the transducer in response to the real and imaginary component signals.
- In yet some other embodiments, a vibration determination circuit forms separate real and imaginary component signals from the PES, and determines frequency of a vibration induced excitation of the PES in response to the real and imaginary component signals. An actuator control circuit controls positioning of the transducer in response to the determined vibration frequency.
-
FIG. 1 is a perspective view of a disk drive with electronic circuits that are configured in accordance with at least some embodiments of the present invention. -
FIG. 2 is a block diagram of an exemplary head disk assembly of the disk drive. -
FIG. 3 is a block diagram of a portion of the controllers and other electronic circuits of the disk drive shown inFIG. 1 , and which are configured in accordance with some embodiments of the present invention. -
FIG. 4 is a block diagram of the servo controller ofFIG. 3 in accordance with some embodiments. -
FIG. 5 is a block diagram of the actuator control circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 6 is a block diagram of the vibration frequency and amplitude detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 7 is a block diagram of a phase derivative-based configuration of the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 8 is a block diagram of a covariance/correlation-based configuration of the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 9 is a block diagram of a single bit correlation-based configuration of the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 10 illustrates two graphs, the top graph showing an 800 Hz vibration exciting the disk drive ofFIG. 1 and appearing in a position error signal (PES), and the bottom graph showing a frequency estimate that is output by the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 11 illustrates two graphs, the top graph showing an 800 Hz vibration exciting the disk drive ofFIG. 1 and appearing with a substantial noise component in the PES, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 12 illustrates two graphs, the top graph showing vibration exciting the disk drive ofFIG. 1 , where the vibration abruptly changes from 800 Hz to 1200 Hz, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 13 illustrates two graphs, the top graph showing vibration from an operating music speaker exciting the disk drive ofFIG. 1 and appearing in the PES, and the bottom graph showing a frequency estimate that is output by the frequency detection circuit ofFIG. 4 in accordance with some embodiments. -
FIG. 14 illustrates two graphs, the top graph showing the operational input/output data throughput of a disk drive having a static controller that is excited by a range of vibration frequencies, and the bottom graph showing the operational input/output data throughput of the disk drive ofFIG. 1 having a servo controller that adapts so as to compensate for the determined vibration frequency in accordance with some embodiments. - Various embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings. However, this invention should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will convey the scope of the invention to those skilled in the art.
- It will be understood that, as used herein, the term “comprising” or “comprises” is open-ended, and includes one or more stated elements, steps and/or functions without precluding one or more unstated elements, steps and/or functions. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. The term “and/or” and “/” includes any and all combinations of one or more of the associated listed items. In the drawings, the size and relative sizes of regions may be exaggerated for clarity. Like numbers refer to like elements throughout.
- Some embodiments may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). Consequently, as used herein, the term “signal” may take the form of a continuous waveform and/or discrete value(s), such as digital value(s) in a memory or register. Furthermore, various embodiments may take the form of a computer program product on a computer-usable or computer-readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system.
- Embodiments are described below with reference to block diagrams and operational flow charts. It is to be understood that the functions/acts noted in the blocks may occur out of the order noted in the operational illustrations. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.
- Although various embodiments of the present invention are described in the context of disk drives for purposes of illustration and explanation only, the present invention is not limited thereto. It is to be understood that the present invention can be more broadly used for positioning of any type of transducer in response to a position error signal that is indicative of a location of the transducer relative to a media. Accordingly, while the transducer may be a head and the media may be a data storage disk within a disk drive, the terms transducer and media are not limited thereto.
- A simplified diagrammatic representation of a disk drive, generally designated as 10, is illustrated in
FIG. 1 . Thedisk drive 10 includes at least one disk or disk stack 12 (illustrated as a single disk inFIG. 1 ) that is rotated by aspindle motor 14. Thespindle motor 14 is mounted to abase plate 16. Anactuator 18 is also mounted to thebase plate 16. Thedisk drive 10 is configured to store and retrieve data responsive to write and read commands from a host device. A host device can include, but is not limited to, a desktop computer, a laptop computer, a personal digital assistant (PDA), a digital video recorder/player, a digital music recorder/player, and/or another electronic device that can be communicatively coupled to store and retrieve data in thedisk drive 10. - The
actuator 18 includes a head 20 (or transducer) mounted to aflexure arm 22 which is attached to anactuator arm 24 that can rotate about apivot bearing assembly 26. Thehead 20 may, for example, include a magnetoresistive (MR) element and/or a thin film inductive (TFI) element. Theactuator 18 also includes a servo motor 28 (e.g., voice coil motor (VCM)) which moves thehead 20 relative to thedisk stack 12. Thespindle motor 14 andservo motor 28 are coupled to controllers, read/write channel circuits, and other associatedelectronic circuits 30 which can be enclosed within one or more integrated circuit packages mounted to a printed circuit board (PCB) 32. The controllers, read/write channel circuits, and other associatedelectronic circuits 30 are referred to below as “controllers and other circuits” for brevity. The controllers andother circuits 30 may include analog circuitry and/or digital circuitry, such as a gate array and/or microprocessor-based instruction processing device(s) (e.g., general purpose microprocessor and/or digital signal processor). - Referring now to the illustration of
FIG. 2 , thedisk stack 12 typically includes a plurality ofdisks 34, each of which may have a pair of disk surfaces 36. Thedisks 34 are mounted on a cylindrical shaft and are rotated about an axis by thespindle motor 14. - The
actuator 18 includes a plurality of theheads 20, each of which is positioned to be adjacent to a different one of the disk surfaces 36. Eachhead 20 is mounted to a corresponding one of theflexure arms 22. Theservo motor 28 operates to move theactuator arm 24, and thus moves theheads 20 relative to their respective disk surfaces 36. Theheads 20 are configured to fly on an air cushion relative to the data recording surfaces 36 of therotating disks 34 while writing data to the data recording surface responsive to a write command from a host device or while reading data from the data recording surface to generate a read signal responsive to a read command from the host device. -
FIG. 2 further illustrates tracks and spokes on thedisks 34. Data is stored on thedisks 34 within a number of concentric tracks 40 (or cylinders). Eachtrack 40 is divided into a plurality of radially extendingsectors 42. Each sector is further divided into a servo sector and a data sector. The servo sectors of thedisks 34 are used to, among other things, accurately position thehead 20 so that data can be properly written onto and read from a selected one of thedisks 34. Exemplary servo data that may be stored in at least some of the servo sectors may include, for example, a DC erase field, a preamble field, a servo address mark (SAM) field, and a servo burst field of circumferentially staggered radially offset servo bursts (e.g., A, B, C, D servo bursts). The data sectors are where non-servo related data (i.e., host device data) is stored and retrieved. -
FIG. 3 is a block diagram of a portion of the controllers andother circuits 30 of thedisk drive 10 shown inFIG. 1 , according to some embodiments, and which can be communicatively connected to a host device. The controllers andother circuits 30 can include adata controller 302, aservo controller 304, and aread write channel 306. Although twoseparate controllers read write channel 306 have been shown for purposes of illustration and discussion, it is to be understood that their functionality described herein may be integrated within a common integrated circuit package or distributed among more than one integrated circuit package. The head disk assembly (HDA) 308 can include a plurality of thedisks 34, theactuator 18 with a plurality ofheads 20 positioned adjacent to different data storage surfaces of thedisks 34, theservo motor 28, and thespindle motor 14. - Write commands and associated data from the
host device 60 are buffered by thedata controller 302. Thedata controller 302 carries out buffered write commands by formatting the associated data into blocks with the appropriate header information, and transfers the formatted data via the read/write channel 306 to logical block addresses (LBAs) on thedisk 34 identified by the associated write command. - The
read write channel 306 can convert data between the digital signals processed by thedata controller 302 and the analog signals conducted through theheads 20 in theHDA 308. Theread write channel 306 provides servo data read from theHDA 308 to theservo controller 304. The servo data can be used to detect the location of thehead 20 in relation to LBAs on thedisk 34. Theservo controller 304 can use LBAs from thedata controller 302 and the servo data to seek thehead 20 to an addressed track and block on thedisk 34, and to maintain thehead 20 aligned with the track while data is written/read on thedisk 34. - The
servo controller 304 regulates the current command signal (ia ofFIG. 2 ) supplied to theservo motor 28 of theactuator 18 to carry out a seek operation in which a selectedhead 20 is moved to a target track on thecorresponding disk 34 and then settled into alignment with the target track so data can be written and/or read. - Vibration of the
disk drive 10 can cause thehead 20 to have an across track vibration, which can affect the ability of theservo controller 304 to maintain thehead 20 on a selected track during a track following operation. In accordance with some embodiments, theservo controller 304 can determine the frequency and amplitude of the vibration, and can compensate for the determined vibration characteristics, within design constraints, so that thehead 20 may remain on-track. -
FIG. 4 is a block diagram of theservo controller 304 ofFIG. 3 in accordance with some embodiments. Referring toFIG. 4 , theservo controller 304 can include anactuator control circuit 402, a vibration frequency andamplitude determination circuit 404, and areference position generator 406. During a track following operation, a read position signal 420 is generated by thehead 20 as the servo patterns are read along the track, where the read position signal 420 indicates a relative position of thehead 20 to the track. The sensed position of thehead 20 is affected by the combined effects, illustrated by summingnode 412, of positioning by theactuator 18 andvibration disturbances 410, such as external shocks on thedisk drive 10, that induce vibration into thehead 20 and/or thedisk 34. Accordingly, the sensed position of thehead 20 includes a component therein that is responsive to thevibration disturbance 410. - The read position signal 420 is fed-back to a summing
node 422, where it is combined with a desired reference position signal from thereference position generator 406 to generate a position error signal (PES) 424. The desired reference position signal may be a DC value (e.g., static value), such as zero, for at least a portion of the revolution of thedisks 34. Thereference position generator 406 can be configured to drive thehead 20 toward the centerline of a data track during track following, or to move thehead 20 off-track during seeking. - The vibration frequency and
amplitude determination circuit 404 generates complex real and imaginary components signals from the PES, and uses the real and imaginary PES components to determine frequency andamplitude values 430 of the vibration induced excitation of the PES. Theactuator control circuit 402 regulates the current command signal (ia ofFIG. 2 ) supplied to theservo motor 28 of theactuator 18 in response to the PES and in response to the determined frequency andamplitude values 430 of the vibration to attempt to maintain thehead 20 on the selected track (e.g., attempt to regulate the current command signal to drive the PES to zero). -
FIG. 5 is a block diagram of theactuator control circuit 402 ofFIG. 4 in accordance with some embodiments. Referring toFIG. 5 , the exemplaryactuator control circuit 402 includes three actuator control circuits, namely, a non-vibration stateactuator control circuit 502, a vibration range-Aactuator control circuit 504, and a vibration range-Bactuator control circuit 506, as well as amode selector 508. The threeactuator control circuits - The non-vibration state
actuator control circuit 502 can be configured to provide increased data throughput for reading and/or writing on thedisk 34 while thehead 20 and/ordisk 34 are subjected to less than a threshold amplitude of vibration. In contrast, the vibration range-Aactuator control circuit 504 can be configured to provide more robust track following (i.e., less data track misregistration TMR and reduced likelihood of read/write data errors) while thehead 20 and/ordisk 34 are subjected to at least the threshold vibration amplitude with a fundamental vibration frequency within a defined range A, compared to the non-vibration stateactuator control circuit 502 and the vibration range-Bactuator control circuit 506. The vibration range-Bactuator control circuit 506 can be configured to provide more robust track following while thehead 20 and/ordisk 34 are subjected to at least the threshold vibration amplitude with a fundamental vibration frequency within a defined range B, compared to the non-vibration stateactuator control circuit 502 and the vibration range-Aactuator control circuit 504. - The
mode selector 508 selects between the output of the non-vibration stateactuator control circuit 502, the output of the vibration range-Aactuator control circuit 504, and the output of the vibration range-Bactuator control circuit 506 in response to the determined frequency andamplitude values 430 of the vibration. Themode selector 508 uses the selected output among the control circuits 502-506 to regulate the current command signal supplied to theservo motor 28 to position thehead 20. - In an exemplary embodiment, when the determined vibration amplitude is less than a threshold level, the
mode selector 508 selects and uses the output of the non-vibration stateactuator control circuit 502 to regulate the current command signal supplied to theactuator 18. In contrast, when the determined vibration amplitude is greater than the threshold level and the fundamental vibration frequency is within the defined range-A, themode selector 508 selects and uses the output of the vibration range-Aactuator control circuit 504 to regulate the current command signal supplied to theactuator 18. Similarly, when the determined vibration amplitude is greater than the threshold level and the fundamental vibration frequency is within the defined range-B, themode selector 508 selects and uses the output of the vibration range-Bactuator control circuit 506 to regulate the current command signal supplied to theactuator 18. - To avoid a discontinuous change in the current command signal supplied to the
actuator 18, themode selector 508 may delay switching between the outputs of the control circuits 502-506 until thehead 20 is being moved between tracks in a seek operation. Themode selector 508 may alternatively smoothly transition between the outputs of the control circuits 502-506 to provide a more continuous current command signal to theactuator 18. For example, themode selector 508 may increase a contribution of the output from one of the control circuits 502-506 (e.g., 504) while decreasing the contribution of the output from the other two control circuits 502-506 (e.g., 502 and 506) to the current command signal. Themode selector 508 may therefore include a weighted combiner that varies the weighting applied to the separate contributions of the output from the control circuits 502-506 (e.g., 504) for the formation of the current command signal in response to the determined vibration frequency and amplitude. - Accordingly, the
actuator control circuit 402 varies its vibration compensation scheme between those provided by the three control circuits 502-506 in response to the determined amplitude andfrequency values 430 of the vibration. Positioning of thehead 20 may thereby be controlled in a manner that is more optimized for the particular amplitude and frequency of the vibration, which may provide more robust track following and/or improved read/write data throughput as thehead 20 and/ordisk 34 are subjected to various vibration and non-vibration conditions that change over time. - Although the exemplary
actuator control circuit 402 ofFIG. 5 shows threedifferent control circuits FIG. 5 for ease of illustration and explanation, they are not limited thereto and may instead be integrated within a common physical electronic device or may be distributed across any number of physical electronic devices. For example, the control circuits 502-506 can implemented within a common digital signal processor, general purpose processor, and/or ASIC. - In another exemplary embodiment, the
actuator control circuit 402 may automatically adapt to respond to the determined amplitude andfrequency values 430 of the vibration. For example, the transfer function of theactuator control circuit 402 may be modified to shift one or more zeros and poles of the transfer function thereof to overlap the determined vibration frequency and thereby at least substantially attenuate the affect of the vibration on the response of theactuator control circuit 402. The extent to which the zeros and poles of the transfer function are shifted toward the determined vibration frequency may be regulated in response to the determined vibration amplitude. For example, the transfer function of theactuator control circuit 402 may be modified so that a zero and pole thereof substantially overlaps, and thereby attenuates, the determined vibration frequency when the determined vibration amplitude exceeds a threshold level. -
FIG. 6 is a block diagram of the vibration frequency andamplitude determination circuit 404 ofFIG. 4 in accordance with some embodiments. Referring toFIG. 6 , thePES 424 is passed through a low pass filter (LPF) 600 and then to aHilbert transform filter 602. TheHilbert transform filter 602 forms separate real R and imaginary I components signals from thePES 424. TheHilbert transform filter 602 generates the real R and imaginary I components signals from the filtered PES function S(t) in the continuous time domain based on the following Hilbert equation: -
- where H(S) represents the Hilbert transform in continuous time domain, and τ represents period of the PES function S(t).
- The
Hilbert transform filter 602 may form separate real R(k) and imaginary I(k) components signals from thePES 424 in the discrete time domain, where k represents discrete sample times, based on the following Hilbert equations: -
- where H(k) represents the Hilbert transform in discrete time, and k represents sample times which are not equal to zero; and
- H(k)=0, when k is equal to zero.
- As explained above, the Hilbert transform
filter 602 forms separate real R(k) and imaginary I(k) component values from thePES 424 using the Hilbert transform H(k). The operation of a Hilbert transform filter to convert a signal into real and imaginary components is well known and, therefore, further description thereof is omitted for brevity. - The
frequency detector circuit 604 uses the real R(k) and imaginary I(k) component values to generate a frequency value that indicates the frequency of the vibration induced excitation of the PES, and which is filtered by anotherLPF 606 to generate a filtered frequency value. Anamplitude detector circuit 608 uses the real R(k) and imaginary I(k) component values to generate an amplitude value that indicates amplitude of the vibration induced excitation of the PES, and which is filtered by anotherLPF 610 to generate a filtered amplitude value. The filtered frequency and amplitude values can be used, as described above, to regulate themode selector 508 inFIG. 5 and/or to adapt theactuator control circuit 402 so as to control the current command signal that is supplied to theactuator 18 so as to compensate for the vibration. - Three exemplary embodiments of the
frequency detector 604 are now described with regard toFIGS. 7-9 .FIG. 7 is a block diagram of a phase derivative-based configuration of thefrequency determination circuit 604 ofFIG. 4 . Referring toFIG. 7 , thefrequency detector 604 can generate a frequency value based on the following phase derivative-based equation: -
- where I(k) represents the imaginary component of the PES value at sample time k, R(k) represents the real component of the PES value at sample time k, I(k−1) represents the imaginary component of the PES value at a previous sample time k−1, and R(k−1) represents the real component of the PES value at the previous sample time k−1.
- Because the
frequency determination circuit 604 ofFIG. 7 determines frequency based on the derivative of the polar angles, when noise is present in the PES the determined frequency may have increased error relative to a noiseless PES. To decrease the effect of noise in the PES on the determined frequency, a covariance/correlation-based frequency determination approach, which is described below with regard toFIG. 8 , may be carried-out. -
FIG. 8 is a block diagram of a covariance/correlation-based configuration of thefrequency detector 604 ofFIG. 4 . Referring toFIG. 8 , thefrequency detector 604 generates a frequency value based on the following covariance/correlation-based equation: - Frequency=angle[S(k)×ComplexConjugate(S(k−1))], where S(k) represents
- the real and imaginary components at the sample time k (i.e., S(k)=R(k)+I(k)), ComplexConjugate(S(k−1)) represents the complex conjugate of the real and imaginary components at the previous sample time k−1 (i.e., R(k−1) and I(k−1)), and the polar angle of the product of S(k) and the complex conjugate of S(k−1) can be determined by as the argument of the product. Because the
frequency determination circuit 604 ofFIG. 8 determines frequency based on a derivative inside the polar angle, the presence of noise in the PES may have less effect on the accuracy of the determined frequency. - The effective signal to noise ratio, and associated accuracy of the frequency determination in the presence of a noisy PES, may be increased by low pass filtering the result of the product of S(k) and the complex conjugate of S(k−1), such as according to the following equation:
- Frequency=angle[convolution(S(k)×ComplexConjugate(S(k−1)))], where convolution represents a low pass filter that filters the product S(k) over, for example, 5 to 10 of the sample times k.
-
FIG. 9 is a block diagram of a single bit correlation-based configuration of thefrequency detector 604 ofFIG. 4 . Referring toFIG. 9 , the real component value at sample time k is converted from an N-bit representation (e.g., one or more bytes) to a single bit real value (R1(k)) by a N-bit-to-1-bit converter 902. Similarly, the imaginary component value at the sample time k is converted from an N-bit representation to a single bit imaginary value (I1 (k)) by a N-bit-to-1-bit converter 906. The N-bit-to-1-bit converters output 1 if the N-bit component value>threshold value, andoutput 0 if the N-bit component value<threshold value). - A
first delay circuit 910 delays the single bit real value (R1(k)) output from theconverter 902 to generate a delayed single bit real value (R1(k−1)). Asecond delay circuit 912 delays the single bit imaginary value (I1(k)) output from theconverter 906 to generate a delayed single bit imaginary value (I1(k−1)). - A first exclusive OR (XOR)
circuit 904 generates a first correlation output from an XOR operation on the single bit real value (R1(k)) from theconverter 902 and the delayed single bit imaginary value (I1(k−1)) from thedelay circuit 912. A second exclusive OR (XOR)circuit 908 generates a second correlation output from an XOR operation on the single bit imaginary value (I1(k)) from theconverter 906 and the delayed single bit real value (R1(k−1)) from thedelay circuit 910. Asummation circuit 914 adds the first and second correlation outputs from the first andsecond XOR circuits LPF 606 ofFIG. 6 averages the pulse train from thesummation circuit 914 to generate frequency values. - Referring again to
FIG. 6 , theamplitude detector 608 can generate an amplitude value A(k) based on a square root of the sum of the squares of the real and imaginary component values, as illustrated by the following equation: -
A(k)=√{square root over (R 2(k)+I 2(k))}{square root over (R 2(k)+I 2(k))}. - The frequency value is filtered by the
LPF 606 and the amplitude value is filtered by theLPF 610 to reduce noise therein, such as due to noise in the PES that is misinterpreted as vibration induced excitation. Accordingly, filtering the frequency and amplitude values using theLPFs servo controller 304 while it positions thehead 20 so as to compensate for the detected frequency and amplitude of the vibration excitation of thehead 20 and/or thedisks 34. - Exemplary operation of the
frequency detector 604 ofFIG. 6 is now described with regard to the graphs shown inFIG. 10 . The top graph shows an 800 Hz vibration that is exciting thedisk drive 10 ofFIG. 1 , and which introduces a vibration component into the PES. The bottom graph shows estimated frequency values that may be output by thefrequency detector 604. As shown in the bottom graph, the frequency values indicates that the vibration occurs at about 800 Hz. - Further exemplary operation of the
frequency detector 604 ofFIG. 6 is described with regard to the graphs shown inFIG. 11 . The top graph shows an 800 Hz vibration that is exciting thedisk drive 10 and which appears with a substantial noise component in the PES. The bottom graph shows the estimated frequency values that may be output by thefrequency detector 604, and which illustrates that thefrequency detector 604 may properly indicate that the vibration frequency occurs at about 800 Hz in spite of the substantial noise component in the PES. - Referring to
FIG. 12 , the top graph shows a vibration that is exciting thedisk drive 10 and abruptly switches from 800 Hz to 1200 Hz. The bottom graph shows that thefrequency detector 604 can track the time varying vibration contribution to the PES by generating about a 800 Hz frequency estimate between sample times 1.508×104 and about 1.512×104, and then abruptly increasing the frequency estimate to about 1200 Hz at about sample time 1.512×104. - Referring to
FIG. 13 , the top graph shows an excitation vibration of thedisk drive 10 that is created by an adjacent speaker which is playing music. The bottom graph shows the corresponding frequency values that may be output by thefrequency detector 604. Accordingly, theactuator control circuit 402 ofFIG. 4 may control positioning of thehead 20 in response to the detected frequency values so as to compensate for the speaker induced vibration of thehead 20 and/or thedisks 34. - Referring to
FIG. 14 , thebottom curve 1404 shows the operational input/output data throughput of a disk drive that is excited by a range of vibration frequencies and which operates with a static controller that does not compensate for the time varying characteristics of the vibration frequencies. In sharp contrast, thetop curve 1402 shows the operational input/output data throughput which may be provided by thedisk drive 10 using theservo controller 304 to detect the frequency and amplitude of the vibration and to respond thereto so as to compensate for the vibration and improve the tracking of thehead 20 relative to a selected track on thedisk 34, and which may thereby improve input/output data throughput through thehead 20. - In the drawings and specification, there have been disclosed typical preferred embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the invention being set forth in the following claims.
Claims (20)
arg[S(k)*conjugate(S(k−1))],
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/863,337 US7515373B1 (en) | 2007-09-28 | 2007-09-28 | Transducer positioning responsive to complex position error signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/863,337 US7515373B1 (en) | 2007-09-28 | 2007-09-28 | Transducer positioning responsive to complex position error signal |
Publications (2)
Publication Number | Publication Date |
---|---|
US20090086363A1 true US20090086363A1 (en) | 2009-04-02 |
US7515373B1 US7515373B1 (en) | 2009-04-07 |
Family
ID=40507985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/863,337 Expired - Fee Related US7515373B1 (en) | 2007-09-28 | 2007-09-28 | Transducer positioning responsive to complex position error signal |
Country Status (1)
Country | Link |
---|---|
US (1) | US7515373B1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8699967B2 (en) * | 2009-08-31 | 2014-04-15 | Qualcomm Incorporated | Uplink transmit diversity enhancement |
US9009455B2 (en) | 2011-05-03 | 2015-04-14 | Western Digital Technologies, Inc. | Booting from a secondary storage device in order to accumulate disk drive performance data |
US8797673B2 (en) | 2011-06-16 | 2014-08-05 | Seagate Technology Llc | Adaptive lattice predictive filter |
US8737014B2 (en) | 2012-10-11 | 2014-05-27 | Seagate Technology Llc | Rotational and linear vibration sensing |
US9933769B2 (en) | 2015-07-13 | 2018-04-03 | Seagate Technology Llc | Adaptive multi-stage disturbance rejection |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4908722A (en) * | 1987-07-03 | 1990-03-13 | Kabushiki Kaisha Toshiba | Digital magnetic recording/reproduction apparatus and method |
US5550685A (en) * | 1993-10-22 | 1996-08-27 | Syquest Technology, Inc. | Applying an adaptive feed-forward algorithm as a frequency selective filter in a closed loop disk drive servo system in order to compensate for periodic perturbations which otherwise appear in the servo system position error signal |
US20030011914A1 (en) * | 1999-02-22 | 2003-01-16 | James E. Angelo | Head vibration detection device and method |
US6564110B1 (en) * | 2000-06-07 | 2003-05-13 | Sumitomo Heavy Industries, Ltd. | Position controlling apparatus capable of reducing the effect of disturbance |
US6567233B1 (en) * | 1998-11-20 | 2003-05-20 | Cirrus Logic, Inc. | 4-D shock-sensing for hard-disk drives |
US6580579B1 (en) * | 1999-07-23 | 2003-06-17 | Seagate Technology Llc | Disturbance rejection for disc drives using adaptive accelerometer feedforward servo |
US6710966B1 (en) * | 2001-10-23 | 2004-03-23 | Western Digital Technologies, Inc. | Method for reducing an effect of vibration on a disk drive during a track following operation by adjusting an adaptive-filter gain applied to an acceleration sensor signal |
US6937424B2 (en) * | 2003-05-12 | 2005-08-30 | Hitachi Global Storage Technologies Netherlands N.V. | Repeatable runout (RRO) compensation methods and apparatus for data storage devices |
US7116513B1 (en) * | 2004-06-09 | 2006-10-03 | Maxtor Corporation | Positioning transducers based on a compensation scheme that varies based on transducer vibrational state |
US7372660B1 (en) * | 2000-02-07 | 2008-05-13 | Seagate Technology Llc | Disc storage system with adaptive PID control |
-
2007
- 2007-09-28 US US11/863,337 patent/US7515373B1/en not_active Expired - Fee Related
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4908722A (en) * | 1987-07-03 | 1990-03-13 | Kabushiki Kaisha Toshiba | Digital magnetic recording/reproduction apparatus and method |
US5550685A (en) * | 1993-10-22 | 1996-08-27 | Syquest Technology, Inc. | Applying an adaptive feed-forward algorithm as a frequency selective filter in a closed loop disk drive servo system in order to compensate for periodic perturbations which otherwise appear in the servo system position error signal |
US6567233B1 (en) * | 1998-11-20 | 2003-05-20 | Cirrus Logic, Inc. | 4-D shock-sensing for hard-disk drives |
US20030011914A1 (en) * | 1999-02-22 | 2003-01-16 | James E. Angelo | Head vibration detection device and method |
US6580579B1 (en) * | 1999-07-23 | 2003-06-17 | Seagate Technology Llc | Disturbance rejection for disc drives using adaptive accelerometer feedforward servo |
US7372660B1 (en) * | 2000-02-07 | 2008-05-13 | Seagate Technology Llc | Disc storage system with adaptive PID control |
US6564110B1 (en) * | 2000-06-07 | 2003-05-13 | Sumitomo Heavy Industries, Ltd. | Position controlling apparatus capable of reducing the effect of disturbance |
US6710966B1 (en) * | 2001-10-23 | 2004-03-23 | Western Digital Technologies, Inc. | Method for reducing an effect of vibration on a disk drive during a track following operation by adjusting an adaptive-filter gain applied to an acceleration sensor signal |
US6937424B2 (en) * | 2003-05-12 | 2005-08-30 | Hitachi Global Storage Technologies Netherlands N.V. | Repeatable runout (RRO) compensation methods and apparatus for data storage devices |
US7116513B1 (en) * | 2004-06-09 | 2006-10-03 | Maxtor Corporation | Positioning transducers based on a compensation scheme that varies based on transducer vibrational state |
Also Published As
Publication number | Publication date |
---|---|
US7515373B1 (en) | 2009-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7880992B2 (en) | Phase detector that compensates for frequency variation induced bias in phases of servo burst fields | |
US7995304B2 (en) | Circuits that use a postamble signal to determine phase and frequency errors in the acquisition of a preamble signal | |
US7508617B1 (en) | Fly height compensation using read gain control loop | |
JP3083747B2 (en) | Method and apparatus for servo writing to a disk | |
KR100430319B1 (en) | Modeling position error nonlinearity to improve servo performance | |
US9514775B2 (en) | Reducing effect of frequency acquisition error in a position error signal responsive to split servo burst patterns | |
US7286317B1 (en) | Disk drive that compensates for repeatable runout of a disk based on measured timing between servo information and methods thereof | |
US20090116136A1 (en) | Vibration detection and compensation filter | |
US7480112B2 (en) | Disk drive apparatus having shock adaptive filters | |
JP2003109336A (en) | Rotary recorder and controlling method thereof | |
US7515373B1 (en) | Transducer positioning responsive to complex position error signal | |
US7423832B2 (en) | Controlling head heating based on upcoming data sector write pattern | |
US7468859B2 (en) | Voice coil motor effective resistance determination | |
US7602572B2 (en) | Stability margins and error recovery in servo control systems | |
US7719787B2 (en) | Phase locked anti- notch filter in a servo control loop | |
US7486471B2 (en) | Methods and apparatus for constraining transducer velocity based on disk rotational latency while seeking in a disk drive | |
US7595957B2 (en) | Servo gain adjustment based on bias force error | |
JP2001189062A (en) | Disk storage device and servo data write-in method | |
US7116513B1 (en) | Positioning transducers based on a compensation scheme that varies based on transducer vibrational state | |
US5731924A (en) | Track following method by using off-track and on-track offset adjusting method in magnetic disk driving device | |
US7643239B2 (en) | Controller selection to reduce written-in run-out | |
US7936532B2 (en) | Selectively inhibiting transducer output responsive to detected jerk | |
US8059359B2 (en) | Data sector phase correction method and disk drive apparatus using the same | |
US7729078B2 (en) | Information storage device | |
US8385166B2 (en) | Repeatable run out compensation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SUPINO, LOUIS;REEL/FRAME:019893/0614 Effective date: 20070927 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATE Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY HDD HOLDINGS, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: MAXTOR CORPORATION, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 |
|
AS | Assignment |
Owner name: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT, Free format text: SECURITY AGREEMENT;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:026010/0350 Effective date: 20110118 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CAYMAN ISLANDS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: EVAULT INC. (F/K/A I365 INC.), CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY US HOLDINGS, INC., CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Expired due to failure to pay maintenance fee |
Effective date: 20170407 |