This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2007-173273, filed Jun. 29, 2007, the entire contents of which are incorporated herein by reference.
1. Field
One embodiment of the present invention relates to a disk drive. More particularly, the invention relates to a technique of generating a synchronous clock for the write operation in a disk drive.
2. Description of the Related Art
In most disk drives, a representative example of which is a hard disk drive, the head performs a write operation to record data on a disk that is a magnetic recording medium, and performs a read operation to reproduce the data from the disk.
A write clock synchronous with the rotational speed of the disk (hereinafter referred to as a synchronous clock) is used in order to write data in the write operation performed by the write head that is included in the head. In normal operation, a spindle motor rotates the disk at a constant speed.
Two types of write operations are performed in the disk drive. One type is performed to write user data to the disk. The other type is performed to write servo data to the disk during the manufacture of the disk drive. The servo data is data that is used to control the positioning of the head over the disk, and is recorded in the servo sectors provided on the disk. In either type of write operation, a sync-clock generator that generates a synchronous clock must be used.
The sync-clock generator must be feedback-controlled to adjust the clock frequency and the like, in order to generate a clock that is synchronous with the rotational speed of the disk. Hitherto, the clock frequency has been adjusted by some methods. In one method, the time interval between any two adjacent servo sectors is measured by using servo-sync marks recorded in these servo sectors, and then the frequency of the synchronous clock is adjusted in accordance with the time intervals thus measured. (See, for example, U.S. Pat. No. 7,088,534.) In another method, the time interval between the trigger patterns recorded in the disk is measured, and then the phase of the synchronous clock is adjusted in accordance with the time intervals thus measured. (See, for example, U.S. Pat. No. 6,324,027.)
Both conventional methods specified above can indeed generate a clock that is synchronous with the rotational speed of the disk. In these methods, however, no controls based on the controllability of the spindle motor that rotates the disk are performed at all. Consequently, the rotational speed of the disk greatly changes the moment the spindle motor is accelerated and decelerated. Inevitably, the synchronous clock cannot be adjusted, faithfully in accordance with the rotational speed of the disk changes.
A general architecture that implements the various feature of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention.
Various embodiments according to the invention will be described hereinafter with reference to the accompanying drawings. In general, according to one embodiment of the invention, there is provided a disk drive in which controls are performed based on the controllability of the spindle motor and a clock that is very synchronous with the rotational speed of the disk can thereby be generated.
(Configuration of the Disk Drive)
According to an embodiment,
As
The head 12 has a write head (write element) 12W and a read head (read element) 12R, which are spaced apart from each other. The write head 12W is provided to write user data to the disk 10. The read head 12R is provided to read the user data and the servo data from the disk 10. The head 12 is mounted on an actuator 13. As the actuator 13 can move, the head 12 is moved radially over the disk 10. The actuator 13 has an arm 14 and a voice coil motor (VCM) 15. The arm 14 holds the head 12, and the VCM 15 rotates the arm 14.
The read/write channel 16 is a signal-processing unit that processes read/write data and is connected to the head 12 via a head amplifier (not shown). The read/write channel 16 has a servo decoder 160, a synchronous clock generator 161, and a write-data processing unit 162. The disk drive 1 further comprises a read channel (not shown) that can reproduce the user data from the disk 10. Nonetheless, the components of this read channel will not be described.
The servo decoder 160 receives a read signal read by the read head 12R and decodes the signal, thereby extracting the servo data recording in the servo sectors 100 provided on the disk 10. The synchronous clock generator 161 is a component pertaining to the gist of the present embodiment. As will be described later, the synchronous clock generator 161 generates a synchronous clock, which is synchronous with the rotational speed of the disk 10, when it is feedback-controlled during the write operation. (Hereinafter, the synchronous clock may be called the “reference clock.”) The synchronous clock is output to the write-data processing unit 162.
The write-data processing unit 162 is the main component of the write channel 16. The unit 162 converts the user data to record in the disk 10, to a write signal, by using the synchronous clock output from the synchronous clock generator 161. The write head 12W receives the write signal from the write-data processing unit 162 through a head amplifier (not shown) and writes the user data to the disk 10.
The CPU 17 is the main controller provided in the disk drive and controls the positioning of the head 12 and the synchronous clock generator 161 according to the present embodiment. The CPU 17 can change the parameters that are indispensable to the read/write channel 16 and SPM/VCM driver IC 18.
The SPM/VCM driver IC 18 is a driver IC comprising an SPM driver and a VCM driver that control the SPM 11 and the VCM 15, respectively. Controlled by the CPU 17, the VCM driver supplies the VCM 15 with a current for controlling the positioning of the head 12, thus driving the actuator 13. Controlled by the CPU 17, too, the SPM driver supplies the SPM 11 with a current for driving the SPM 11 at a constant speed. The SPM driver outputs a control signal, from which the CPU 17 calculates acceleration appropriate for the SPM 11.
The disk drive 1 further has a disk controller, which serves as an interface between the disk drive 1 and a host system (not shown). Since the disk controller does not pertain to the gist of this invention, it is not described or shown.
(SPM Control System)
As in most disk drives, the spindle motor 11 is a brushless DC motor. As
In the SPM control system, the SPM-speed detector 183 detects the speed of the SPM 11. The controller 181 controls the drive current supplied to the SPM 11, in order to compensate for the difference between the speed (control value) set by from the CPU 17 and the speed detected by the SPM-speed detector 183. Thus, the spindle motor 11 is repeatedly accelerated and decelerated and is finally driven at a constant speed.
(Synchronous-Clock Generating System)
The synchronous-clock generating system 300 has a SPM control system 200 (see
The acceleration calculator 310 extracts a control signal (i.e., drive current) output from the controller 181 of the SPM control system 200 and calculates the rotational acceleration of the SPM 11 from this control signal. The acceleration calculator 310 comprises the CPU 17 and an analog-to-digital converter; it is configured to receive a current from the SPM driver and converts the current to a digital value, which is input to the CPU 17. Note that the CPU 17 may be designed to convert the current detected by the current sensor provided in the SPM driver or SPM 11 to a digital value, from which the rotational speed of the SPM 11 will be calculated.
The acceleration calculator 310 (CPU 17) receives a control signal (current value) from the controller 181 and converts the signal to a digital value (Block 400). To find the average value of the control signal, the acceleration calculator 310 calculates a loss in the SPM 11 and subtracts the loss from the control signal (Block 401). The calculation of loss is a process of determining a time average of the output from the controller 181, over a long time (e.g., 1 second). Thus, the acceleration calculator 310 can acquires the value of the control signal, which is proportional to the rotational speed of the SPM 11. The acceleration calculator 310 then multiplies the value of the control signal (i.e., a value proportional to the rotational speed) by a scale factor, calculating the rotational acceleration of the SPM 11 (Block 402).
In the SPM control system 200 there exist some physical disturbances, such as counter-electromotive force and SPM viscosity resistance, which are proportional to the rotational speed of the SPM 11. Nevertheless, the rotational speed of the SPM 11 is controlled to a constant value in the disk drive 1. Hence, the physical disturbances can be regarded as constant in value. In consideration of these disturbances, the rotational acceleration (dw/dt) of the SPM 11 can be calculated as follows:
where w is the rotational speed (rad/sec) of the SPM 11, Kt is torque constant, R is the SPM coil resistance, B is the SPM viscosity coefficient, V is the voltage supplied to SPM, and J is the SPM inertia. Note that “constant” is a constant applied.
In the synchronous-clock generating system 300, the clock frequency calculator 312 finds the frequency (or clock-phase shift) of the synchronous clock (write clock) from the rotational acceleration of the SPM 11, which has been calculated by the acceleration calculator 310. All functions of the synchronous-clock generating system 300, except those of the acceleration calculator 310, servo sector generator 311 and servo detector 315, are included in the synchronous clock generator 161 that is shown in
The synchronous clock generator 161 includes a synchronous clock controller 500 that has amplifiers 501 to 503, first and second integrators 504 and 506, and a repeated-component removal unit 505 all shown in
The servo sector detector 314 detects the servo-sector time interval from the servo data output from the servo detector 315, by using the clock of the frequency that the frequency setting unit 313 has set. The servo detector 315 is a component equivalent to the servo decoder 160 shown in
The first integrator 504 integrates the servo-error input, outputting a state value that corresponds to the rotational acceleration of the disk 10. The second integrator 506 receives a sum of the output of the first integrator 504 and the output of the acceleration calculator 310, i.e., acceleration value (acceleration input), and outputs a state value V that corresponds to the rotational speed of the disk 10.
The rotation of the disk 10 may fluctuate, resulting in a disk shift. In this case, the time interval between any two adjacent servo sectors inevitably differs from the time interval between any other two adjacent servo sectors. To compensate for the rotational fluctuation of the disk, a signal having the rotational frequency of the disk 10 and a signal of a harmonic of the rotational frequency are applied to the output of the first integrator 504. From the output of the first integrator 504, the repeated-component removal unit 505 removes the component repeated as the disk 10 rotates. A state value A (angular acceleration) corresponding to the rotational acceleration of the disk 10 can therefore be acquired. Thus, the acceleration of the SPM 11 can be estimated from the output A of the repeated-component removal unit 505. Moreover, the rotational speed of the SPM 11 can be estimated from the output V of the second integrator 506.
The clock frequency calculator 312 included in the synchronous clock generator 161 calculates the frequency of the synchronous clock that corresponds to the state value A and a state value 507, both acquired from the synchronous clock controller 500 shown in
Based on the frequency calculated by the clock frequency calculator 312, the synchronous clock generator 161 generates a synchronous clock (write clock) 317 having the frequency set by the frequency setting unit 313. The synchronous clock thus generated is output to the write-data processing unit 162 shown in
Thus, in the disk drive 1 according to the present embodiment, the synchronous clock generator 161 generates a clock (write clock) 317 that is synchronous with the rotational speed of the disk 10, by means of the feed-forward control, in accordance with the servo-sector time interval detected by the servo decoder 160 (more precisely, servo detector 315).
During the data-write operation, the synchronous clock generator 161 keeps supplying the synchronous clock (write clock) to the write-data processing unit 162. The disk drive 1 can therefore write user data to the disk 10 at the frequency that is synchronous with the rotational speed of the disk 10.
Further, the synchronous clock generator 161 receives, as feed-forward control value, the acceleration value of the SPM 11 (i.e., output of the CPU 17, indicated by a broken line in
The rotational fluctuation of the disk 10 has resulted from the controllability of the SPM 11. More precisely, this fluctuation develops the moment the SPM 11 is accelerated and decelerated. The acceleration calculator 310 calculates the acceleration of the SPM 11 from the control signal supplied from the SPM control system 200 configured to drive the SPM 11 at a constant speed. The synchronous clock generator 161 receives the acceleration value of the SPM 11 as feed-forward control value. Using the acceleration value, the synchronous clock generator 161 can compensate for the rotational fluctuation of the disk 10. Hence, it can generate a clock that remains very synchronous with the rotational speed of the disk 10, even if the rotation of the disk 10 fluctuates.
How a synchronous clock is generated in the disk drive 1 according to this embodiment to write the user data to the disk 10 has been described. A synchronous clock can be generated in the same way in order to write servo data to the disk 10. More specifically, the servo data can be recorded in the disk 10 as the disk drive 1 performs self-servo-data writing during the manufacture of the disk drive 1. In this case, the synchronous clock generator 161 reads the reference signals from the disk 10, not the servo-sector time interval, and generates a clock (write clock) synchronous with the rotational speed of the disk 10, on the basis of the time intervals of the reference signals.
The acceleration calculator 310 can calculate the acceleration of the SPM 11 in various methods. It may calculate the acceleration from the measured value of the current supplied to the SPM 11. Alternatively, it may calculate the acceleration from the inter-terminal voltage of the SPM 11. Still alternatively, it may find the acceleration from the value obtained by subtracting the DC component from the current supplied to the SPM 11.
The scale factor (
As has been described, the present embodiment can provide a disk drive in which controls are performed based on the controllability of the spindle motor and a clock that is very synchronous with the rotational speed of the disk can thereby be generated.
(Method of Calculating the Scale Factor)
A specific method of calculating the scale factor in the acceleration calculator 310 will be explained with reference to
In theory, the acceleration calculator 310 can uniquely determine the acceleration of the SPM 11 by multiplying the control signal by a scale factor given as: V_AD/reso/R*Kt/J/w*F, where V_AD is a voltage range for the analog-to-digital converter 400, reso is a resolution range for the analog-to-digital converter 400, and F is the reference clock frequency.
As
Strictly speaking, the acceleration-state value (T) contains a component pertaining to clock-synchronization controllability. This is because the synchronous-clock generating system 300 has a control band. Let K/s be the characteristic the system 300 has for the servo-sector time interval after the reference clock frequency has been set, and let the coefficients K1, K2 and K3 shown in
The ratio of the output T of the LPF 403 to the state value A output by the synchronous clock controller 500 is found, thereby calculating a scale factor. The scale factor can be accurate if it is set to 0 at the initial state of learning.
The second example is an acceleration calculator 310 configured to find both a scale factor and an SPM loss at the same time. This acceleration calculator 310 has an operation unit 406 and an estimation unit 405. The operation unit 406 performs an operation of y=ax+b. The estimation unit 405 performs the least squares method, estimating coefficients a and b that involve in this operation. Alternatively, the estimation unit 405 may perform sequential least-squares method or fixed trace method, thereby to estimate these coefficients.
The operation unit 406 may use, as x involving the operation, a value obtained by passing the control signal generated by the SPM control system 200 through a LPF 404 (without filtering out the SPM loss). In this case, y is the state value A output by the synchronous clock controller 500.
While certain embodiments of the inventions have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2007-173273 | Jun 2007 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
5694380 | Shimizume et al. | Dec 1997 | A |
6324027 | Chainer et al. | Nov 2001 | B1 |
6366077 | Kim | Apr 2002 | B1 |
7088534 | Sutardja | Aug 2006 | B2 |
20040120068 | Koyanagi | Jun 2004 | A1 |
20050117477 | Kajino et al. | Jun 2005 | A1 |
20060176599 | Semba | Aug 2006 | A1 |
Number | Date | Country |
---|---|---|
02-218059 | Aug 1990 | JP |
2001-126250 | May 2001 | JP |
2001-216648 | Aug 2001 | JP |
Number | Date | Country | |
---|---|---|---|
20090003165 A1 | Jan 2009 | US |