# Patent

## Title
Optical disk apparatus and focus control method thereof

## Abstract

In a focus control for following a focus position of light beam to be radiated to an optical disk to an optical disk surface, the technique is for shorten the memory length in the learning controller. The learning controller is provided to a focus feedback control system and updates the memory comprised of N numbers of memory cells with a shorter sample period than a time obtained by dividing the time required for one rotation of the disk by N numbers and outputs the learning results in the memory with the shorter sample period.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a focus control method and an optical disk apparatus thereof for driving an objective lens so as to focus a light beam to a recording surface of an optical disk whereby maintaining a constant distance between the objective lens and the optical disk, especially to a focus control method and an optical disk apparatus thereof for calculating the control signal for suppressing the dislocation due to periodic disturbance, such as medium surface vibration by learning control, and executes feed-forward control in a control system to perform feedback control on a lens actuator so that the dislocation amount of the objective lens, with respect to the just focus position, becomes small (almost zero).
2. Description of the Related Art
An optical disk apparatus rotates an optical disk, such as a disk configuration and a card configuration, and radiates a light beam onto a recording surface of the optical disk to read or read/write information to and from the optical disk. As such an optical disk, compact disk (CD), digital versatile disk (DVD) and magneto-optical disk (MO) are known. A focus control is necessary for these optical disk to drive an objective lens so as to focus a light beam to a surface (recording surface) of a medium (optical disk) whereby maintaining a constant distance between the objective lens and the medium surface. Recently, it is more required that the storage capacity of the disk increase. In such a storage device, it is required to realize a smaller bit size by high Numerical Aperture (NA) and a short wave length.
However, as the depth of a focus is inversely proportional to a square of NA and is proportional to light wave length, both the high NA and the short wave length cause that the depth of a focus makes narrow. Accordingly, such a large capacity storage device is required higher accuracy of the focus follow than the conventional one.
While, in the optical disk apparatus, the surface of the disk medium vibrates toward the focusing direction (a normal line direction of the disk surface) according to the rotation of the disk due to an error of a mechanical attachment of the spindle, an error of chuck between the spindle and the disk medium, and a curvature of the disk medium itself. Such a vibration is called as ‘surface vibration’ in this invention.
For, example, if the disk is ideally plane and if the rotation axis of the disk is ideally vertical to the disk surface, the vibration of focus direction is not occurred. While, if the disk is ideally plane and if the rotation axis of the disk is not vertical to the disk surface, the surface vibration with a rotation frequency is occurred. Further, if the disk curves such as a configuration of potato chips, the surface vibration further includes two times of rotation frequency.
A focus servo system performs a feedback control for following the objective lens to the disk surface with a high accuracy by driving the focus actuator based on the focus error signal. However, if only feedback control is performed, it is obstructed to obtain a control band with a high band, because a high order mechanical resonance and a light modulated component mix to the control system as disturbances. If it is tried to expand unreasonably the control band, the problem occurs to decrease a phase margin, thereby the control system is oscillated.
Therefore, the prior art adopts a feed forward control using a learning control together with the feedback control. As the learning control is enable to improve a following ability for a periodic following target without expanding the control band, the learning control is preferable to compensate a periodic disturbance synchronized with the rotation, such as the surface vibration.
A repetitive control is known as a learning control method in focus control (for example, Japanese Laid-Open Patent H8-77589 and Japanese Laid-Open Patent H11-86309). In repetitive control, the basic period of a periodic disturbance is divided, for example, by a sampling period of the feedback control system, memory corresponding to each divided period is prepared, and the periodic disturbance is compensated.
In a disk unit, such as a magneto-optical disk unit, however, the sampling period of the feedback control system is relatively short. So if the rotation period of the disk is divided by the sampling period, memory length for learning is very long. For example, when the disk rotation frequency is 75 Hz (4500 rpm), the sampling rate is 55 kHz, and memory length is 733. If the resolution of one memory length is 256 bits, a 187 kbit capacity is required.
In order to decrease the memory length, it is possible to set the dividing period of the repetitive control system to a multiple integer of the sampling period of the feedback control system, and skip the feedback information obtained at the sampling period, but learning an accurate feed-forward compensation signal is difficult since feedback information is not effectively utilized.
SUMMARY OF THE INVENTION
With the foregoing in view, it is an object of the present invention to provide a disk apparatus and a focus control method thereof to improve the learning accuracy of a periodic disturbance along with the rotation of the disk.
It is another object of the present invention to provide a disk apparatus and a focus control method thereof to decrease the learning memory length.
It is still another object of the present invention to provide a disk apparatus and a focus control method thereof to decrease the learning memory length so as to decrease the learning time and to decrease the influence of high frequency noise.
To achieve this object, the optical disk apparatus of the present invention comprises: a lens actuator for moving an objective lens toward light axis direction of light beam to be radiated to an optical disk; a focus error detection unit for detecting a position error from just focusing position of a recording surface of the optical disk; a feedback control unit for computing a control signal for moving the lens actuator so that the focus position error amount is controlled to zero or a predetermined value; a drive unit for driving the lens actuator based on the control signal; and a learning control unit for obtaining an unknown function for one disk rotation along with the periodic disturbance to memory which is comprised of N number of memory cells by a learning algorithm as an approximate function which is approximated by the height allocated to each time block when the time required for one rotation of the disk is divided by N.
And the learning control unit samples a signal which follows the focus positional signal according to the learning algorithm at a sampling period which is less than the time obtained by dividing the time required for one rotation of the optical disk by N, updates the one or more memory cells corresponding to the sampling time synchronizing with the sampling period according to the signal value, reads the value of at least one memory cell located at the cell positions corresponding to the output time at an output period which is less than the time obtained by dividing the time required for one rotation of said medium by N, and outputs feed-forward signal of periodic disturbance compensation according to said read value.
According to the present invention, the learning control section high-speed memory updates the N numbers of memory cell with a shorter sample period than a time divided by N numbers and high-speed outputs the learning result with the shorter sample period. Therefore, it is possible to make the memory length for learning shorter while it is effectively utilizing the feedback information. For example, it is possible to delete the memory length from 733 to 32, thereby enabling the cost-down by a large margin.
Also it is often that the surface fluctuation influence in focus control is managed by one time or several times of frequency component against the rotation frequency. So, as decreasing the number of divisions improves the averaging effect on unnecessary high frequency noise, the high frequency noise included in the learning wave output is decreased, thereby a higher precision focus-following accuracy can be expected.
Also as a secondary effect of decreasing the number of divisions, the convergence time of learning can be decreased. For example, if the memory length is decreased by half, the convergence time required for learning at the same magnitude of learning gain can be decreased by half. This can contribute to a decrease in the rise time from disk insertion to an actual access possible state when a disturbance is learned during the load sequence after medium insertion, for example.
Further, preferably in this invention, the learning algorithm of the learning control unit reads the values of two memory cells located at the cell positions corresponding to the output time and outputs the feed-forward signal of periodic disturbance compensation by performing an interpolation process the values of both memory cells based on the output time.
According to this feature, the high-speed memory update rate, the high-speed output rate and the interpolating processing are combined by the learning control section so that the stepped output is prevented, problems due to a feed-forwarding high frequency disturbance by stepped output are prevented, and high precision focus-following control can be implemented. Especially with removable medium, such as MO, the surface fluctuation amount is relatively large, and when such a medium with large fluctuation amount is used, the discontinuity of the stepped output in the learning result becomes conspicuous (that is, the height difference between the steps becomes conspicuous) because of the increase in the amplitude of the periodic disturbance, so in this case the effect of smoothing by linear interpolation is large.
By combining the learning result output period, which is shorter than the period (TL/N) when the time required for one disk rotation is divided by the memory length N, and the above mentioned linear interpolating processing, very smooth output of periodic disturbance compensation signals is possible, and very accurate focus-following control can be implemented.
Further, since stepped output is prevented, the memory length (number of divisions) can be decreased. In other words, it was demanded to decrease the memory length according to the frequency range (generally at a certain frequency or less) of the periodic disturbance to be suppressed, but in a conventional method, the stepped output problem makes it impossible to decrease the number of divisions to a certain value or less. Therefore in some cases, an unnecessarily high frequency range had to be included in the learning target. If an unnecessarily high frequency component is included in the learning target, the averaging effect on the non-repetitive disturbance decreases, the learning result includes noise, and focus-following accuracy drops.
Also according to the present invention, the above mentioned learning algorithm of the learning control section is for calculating the memory cell value after an update by multiplying the sampled signal by a predetermined or variable gain, and adding the computing result to the memory cell value before the update, so high precision learning is possible with a simple algorithm.
Also according to the present invention, the above mentioned learning control section reads the values of the two memory cells at positions associated at a advanced time from the update target memory cell(s) for a predetermined amount of time, and performs interpolating processing for the values of the two memory cells so as to generate a periodic disturbance compensation signal corresponding to the advanced time for the predetermined amount of time.
So a time-delay, such as a phase delay of the control target, is considered and the learning result corresponding to a time moved forward is feed-forward output, therefore it is unnecessary to use a phase lead filter. By time-lead compensation for the feed-forward output of the learning result in this way, vibratory fluctuation of a response waveform can be prevented, as in the case without the time-lead compensation, and a stable learning result can be obtained.
According to the present invention, the learning control section samples a signal which follows the focus error signal, selects two memory cells corresponding to the sampling time as the update target, and updates the values of the memory cells by the learning algorithm, so as to learn the unknown function, therefore learning with higher precision interpolating processing is possible.
Also according to the present invention, the above mentioned learning algorithm of the learning control section changes the update gains for the two memory cells according to the sampling time, and adjusts the update balance between the two memory cells when the two memory cells are updated, so that learning with higher precision interpolating processing is possible.
Also according to the present invention, the above mentioned learning control section samples signals which follow the focus error signal, updates a value of one of the memory cells, which is allocated to a time close to the sampling time, by the learning algorithm, and learns the unknown function, so that the unknown function can be efficiently learned even if the memory length is decreased, and the calculation amount can be decreased.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a construction diagram of an optical disk drive, which is an embodiment of the present invention;
FIG. 2 is a block diagram of a focus control system depicting the first embodiment of the present invention where a learning control section is provided between a feedback control section and a drive section;
FIG. 3 is a block diagram depicting the control system in FIG. 2;
FIG. 4 is a functional block diagram of the learning control section in FIG. 2;
FIG. 5 is a diagram depicting the processing in the learning mode of the control system in FIG. 2;
FIG. 6 is a diagram depicting the learning processing of the first embodiment of the present invention;
FIG. 7 is a diagram depicting the learning result output processing of the first embodiment of the present invention;
FIG. 8 is a diagram depicting the broken line approximation according to a linear interpolation of the first embodiment of the present invention;
FIGS. 9(A),9(B),9(C),9(D) and 9(E) are diagrams depicting the learning operation of the first embodiment of the present invention;
FIGS. 10(A) and 10(B) are diagrams depicting the learning processing of the second embodiment of the present invention;
FIG. 11 is a diagram depicting the linear interpolation of the second embodiment of the present invention;
FIGS. 12(A),12(B),12(C),12(D) and 12(E) are diagrams depicting the learning operation of the second embodiment of the present invention;
FIG. 13 is a diagram depicting the learning processing of the third embodiment of the present invention;
FIGS. 14(A) and 14(B) are diagrams depicting the linear interpolation according to a triangle function of the third embodiment of the present invention;
FIG. 15 is a diagram depicting the learning operation of the third embodiment of the present invention;
FIG. 16 is a diagram depicting the relationship between the time lead compensation and the linear interpolation process of the third embodiment of the present invention;
FIGS. 17(A),17(B),17(C),17(D) and 17(E) are diagrams depicting the learning steps of the third embodiment of the present invention;
FIG. 18 is a diagram depicting the broken line approximation according to a composition of the triangle functions the learning result of the third embodiment of the present invention;
FIG. 19 is a table comparing the learning processing between prior art and each embodiment of the present invention;
FIG. 20 is a waveform diagram of a focus error signal of the feedback control system as a comparison example;
FIG. 21 is waveform diagrams of the focus error signal and the feed-forward signal from the start to the end of learning by the learning control of the first embodiment of the present invention;
FIG. 22 is waveform diagrams of the focus error signal and the feed-forward signal from the start to the end of learning by the learning control of the second embodiment of the present invention;
FIG. 23 is a diagrams the learning result output mode of another feedback control of the present invention;
FIG. 24 is a block diagram of the second embodiment of the present invention where a learning control section is provided between a focus error detection section and a feedback control section;
FIG. 25 is a flow chart depicting the medium processing of the optical disk apparatus in FIG. 1;
FIG. 26 is a flow chart depicting the learning mode in FIG. 25;
FIG. 27 is a flow chart depicting the learning result output mode in FIG. 25;



DESCRIPTION OF THE PREFERRED EMBODIMENTS
Embodiments of the present invention will now be described in the sequence of an optical disk apparatus, a first, a second, and a third embodiments of feedback and learning control, experimental examples, other embodiments and a medium process.
[Optical Disk Apparatus]
FIG. 1 is a drawing depicting the configuration of an optical disk drive of an embodiment of the present invention, using a magneto-optical disk drive as an example. The drive mechanism has a spindle motor 40. By inserting an MO (magneto-optical) cartridge into the hub of the rotation axis of the spindle motor 40 from the inlet door (not illustrated), the MO medium 64 inside the cartridge is loaded onto the hub of the rotation axis of the spindle motor 40.
The head mechanism 60 is comprised of a positioner (carriage) 68, an objective lens 70, a stationary optical system 72. At the bottom side of the MO medium 64 of the loaded MO cartridge, a carriage 68, which can freely move in the direction crossing the track of the medium by VCM (Voice Coil Motor), is disposed.
The stationary optical system 72 has a light source such as a laser diode light source. On the carriage 68, the objective lens 70, a rise mirror 74, a focus coil 52 and a support portion 73 of the objective lens 70 are mounted.
In the positioner 68, an optical beam 66 from the laser diode in the stationary optical system 72 is emitted via the rise mirror 74, and a beam spot is formed on the medium surface of the MO medium 64. The objective lens 70 is moved in the optical axis direction by the control of the focus actuator 52. The optical beam can be moved in a radius direction crossing the track of the medium 64 according to the linear driving of the carriage 68 by the VCM to perform a tracking and seek.
The focus control performs to maintain a distance between the objective lens 74 and the medium 64 by means of flowing a drive current to the focus drive coil 52. A reflected light from the medium 64 is returned via the objective lens 70 and the rise mirror 74 to the stationary optical system 72.
In the stationary optical system 72, a detection optical system (such as a lens, prism and photo-detectors) is provided for detecting focus error such as by means of knife-edge method. A focus error detection unit 78 performs an arithmetic processing of outputs from the photo-detectors in the stationary optical system 72 to generate a focus error signal FES.
The focus error signal FES is input to the feedback control system 50. The feedback control system 50 calculates control signal so that a deviation between the focus position of the objective lens 70 and the recording surface of the medium 64 makes zero or a predetermined value, and outputs the control signal to the driver 54 for feedback driving the focus drive coil 52.
FIG. 2 is a block diagram of the feedback (focus) control system of the head mechanism in the disk apparatus according to an embodiment of the present invention, FIG. 3 is a block diagram of the control system thereof, and FIG. 4 is a functional block diagram of the learning control section thereof. In this embodiment, the learning control section is provided between the feedback control section and the focus drive section.
In FIG. 2, the focus control system of the head mechanism 60 is comprised of a focus error detection section 78, a feedback control section 80, a learning control section 82, an adder 84, a focus drive section 54, and a focus drive coil 52.
The focus error detection section 78 generates a focus error signal FES, which indicates the dislocation amount of the focus position by the objective lens 70 with respect to the recording surface of the optical disk 64, using the return light of the optical beam from the medium 64 by the objective lens 70 mounted on the carriage 68. To the input of this focus error detection section 78, the position fluctuation of the medium surface (disturbance) due to the surface vibration of the medium 64 is added from the adding point 76.
The feedback control section 80 receives the focus error signal FES, and calculates a feedback command value to move the objective lens 70 by the focus drive section 54 so that the focus error signal FES becomes zero, that is, the dislocation of the focus position of the optical beam with respect to the recording surface of the optical disk becomes nonexistent. Further, if necessary, in the feedback control section 80, a predetermined offset value is added to the focus error signal FES to become the dislocation value to a predetermined value.
The feedback control section 80 calculates the control signal IFB by the PID (Proportional, Integrated and Differential) operation, for example, and this control signal IFB becomes the feedback current command value for the focus drive section 54 using the focus drive coil 52 shown in FIG. 1.
The learning control section 82 is input the control signal IFB as the feedback current command value, which is output from the feedback control section 80, and obtains the learning control signal I^id, which is an approximate function of an unknown drive current function Iid to suppress a focus following error such as a periodic surface fluctuation along with the rotation of the medium, by a learning rule. And the learning control section 82 outputs the feed-forward signal IFF by a learning control signal I^id, obtained as the learning result, synchronizing with the medium rotation.
This feed-forward signal IFF is added to the control signal IFB from the feedback control section 80 by the adder 84, which result becomes the drive signal I, and the focus drive coil 52 is driven by the focus drive section 54. That is, the feed-forward control is added to the feedback control system.
The feedback control section 80, the learning control section 82 and the adder 84 are implemented as firmware by such a processor as DSP 50. FIG. 3 shows the configuration of the feedback control system with a transfer function. In FIG. 3, IREF shows a drive command value of the focus drive coil 52, X, XRO and e show a position of the objective lens, a just focus position to be a focus-following control target, and a focus-following error respectively.
The learning control section 82 is input the output IFB of the feedback control section 80, and generates the approximate function IFF of the periodic disturbance compensation signal. IFF is superimposed onto the feedback control output IFB as a feed-forward compensation signal.
FIG. 4 is a functional block diagram of the learning control section 82 in FIG. 2. In FIG. 4, the learning control section 82 comprises a control section 92, a sample processing section 94, an approximate function computing section 96, a ring buffer memory 98, and a feed forward output section (hereafter “FF output section”) 100.
To the control section 92, the clock signal E1 and the index signal E2, which is obtained synchronizing with one rotation of the medium, are input. The control section 92 sets (1) the learning mode and (2) the learning result output mode as the operation mode of the learning control section 82.
Specific processing in the learning control system 82 is sequentially executed at an arbitrary period Ts, which is shorter than the period T to provide the time resolution for the approximate function. In the present embodiment, Ts is the same period as the sampling period of the feedback control system. The learning control system 82 of the present invention can be inserted into an arbitrary straight path of the feedback loop, but in the configuration of the present embodiment, the learning control system 82 is inserted immediately after the feedback control system 80.
The learning mode is executed, for example at load processing after the medium is inserted, and the learning control signals to be the approximate functions of the periodic disturbance signals are learned (or updated) according to the learning rule while the recent learning result are output synchronized with the rotation of the disk medium and added to the feedback control system as the feed forward output.
In the learning result output mode, the learning control signals obtained as the learning result in the learning mode are output synchronizing with the rotation of the medium, and are forwarded to the feedback control system as feed-forward output.
The control section 92 operates the sample processing section 94, the approximate function computing section 96, the ring buffer memory 98 and FF output section 100 in the learning mode, and operates the ring buffer memory 98 and the FF output section 100 in the learning result output mode. In the learning mode, the computing result of the approximate function computing section 96 is integrated in the corresponding memory cell of the ring buffer memory 98 according to the later mentioned learning rule, and at the same time, the FF output section 100 reads the computing result of the corresponding memory cell of the ring buffer memory 98. The adder 84 in FIG. 3 adds the computing result and forwards it to the feedback control system, that is, performs feed-forward control.
In the present embodiment, the sample period of the feedback control system 80 and the learning control system 82 are the same period Ts, so a series of processing shown in FIG. 5 are executed at each Ts. Recently these processing are generally all executed by digital computing, and are implemented by firmware on the fixed-point DSP 50, for example.
The processing flow shown in FIG. 5 is described as a flow of processing in the learning mode of the learning control section 82 at a period Ts. Note that the processing of the learning result output mode is described later in FIG. 23. In FIG. 5, the feedback computing processing is an operation of the feedback control system, and is comprised of, for example, error calculation and PID filter processing.
The learning processing is an update processing of the ring memory 98, where the approximate function computing section 96 in FIG. 4 calculates the memory cell number (cell address i) to be updated by the learning algorithm for the time progress in one rotation period TL from t=0, which is the time when the index signal E2 is obtained to the time when the next index signal is obtained. And the approximate function computing section 96 read the value stored in the calculated memory address of the ring buffer memory 98, update-arithmetic the read value using the output value of the sample processing section 94 and write the updated result to the original memory cell.
In the learning result output processing, a memory number to be the learning output target is selected, the learning control output value IFF is calculated, and the output value is output. When learning processing according to the learning mode ends, the learning mode transits to the learning result output mode.
The learning result output mode is a mode to execute only output without updating the ring buffer memory 98, that is, omitting the learning process in the learning mode as explained later in FIG. 23.
In the learning result output mode, the control section 92 operates the ring buffer memory 98 and the FF output section 100, reads the learning control signal as the learning result, which is stored in each memory cell of the ring buffer memory 98, at the same reading period as the sampling period Ts in the learning mode, synchronizing with the index signal E2, which is obtained at each rotation of the medium, and the FF output section 100 calculates the output value and outputs it to the adder 84 in FIG. 3.
The adder 84 adds the output value to the control signal IFB obtained from the feedback control section 80 at this time, supplies the drive current I to the focus drive section 54, and performs feed-forward control for the focus drive coil 52 so as to suppress the periodic disturbance due to the surface fluctuation of the medium.
The FF output section 100 executes linear interpolation on the read signal and computes the output value at each period Ts. As a result, smooth output is obtained. Also in order to guarantee stable learning processing, time delay, such as the phase delay of the control target, is considered when the FF output section 100 outputs the learning result stored in the ring buffer memory 98 to the feedback control system, and the stored learning result corresponding to the time that is a specific time ahead of the present time is feed-forward output.
Because the learning result corresponding to the time that is a specific time ahead is feed-forward output in this way, it is unnecessary to use a phase-lead filter. Since the learning control section 82 manages the current patterns to be the feed-forward output corresponding to the time t, two memory cells are selected according to the time moved forward considering the phase delay of the control target, and the learning result at this time is output.
By the time-lead compensation for the feed-forward output of the learning result in this way, vibratory fluctuation of response waveforms can be prevented, as in the case without the time-lead compensation, and a stable learning result can be obtained.
[Feedback and Learning Control]
Now feedback and learning control will be described. At first, a case when one memory cell is an update target will be described for each processing of DSP 50, with reference to FIG. 6 to FIG. 9.
1. Processing when one memory cell is an update target;
A. Operation of feedback control system;
The focus error signal (FES) is sampled by the AD converter (not illustrated), the feedback control operation, like the PID control system for example, is performed to calculate the output IFB of the feedback control system.
B. Learning processing (memory update processing);
[1] Selecting the number of the target memory cell to be updated by learning algorithm;
Based on the time t (0≦t<TL, TL is the disk rotation period) synchronizing with the disk rotation, the target memory cell to be updated by the learning algorithm is selected. Time t is measured by the timer which is initialized at each disk rotation, and is obtained by reading this timer.
The learning result is stored in the ring buffer 98 which has length N as shown in FIG. 6. FIG. 6 depicts the relationship between each memory cell and time t. As FIG. 6 shows, N number of memory cells are allocated to the time for one disk period at equal time interval T. A circle shows the sampling period Ts to execute a series of feedback control computing and the learning control computing shown in FIG. 5.
Based on the time t read by the above mentioned timer, the following operation, for example, is executed so as to select the memory cell number iu (in FIG. 6, this corresponds to a number of subscript i of c^i) to be an update target.

iu=floor(t/T)  (1)

Here, the floor (x) function indicates a maximum integer value which is equal to or smaller than the argument x. For example, if the argument x in ( ) is (0≦x<1.0), then floor (x)=0. If the argument x in ( ) is (1.0≦x<2.0), then floor (x)=1. The time t is reset by the index signal which is obtained at each rotation of the medium, and therefore has the value 0≦t<TL.
Therefore, as FIG. 6 shows, a memory cell is sequentially selected according to the current time t. Only the value c^iu stored in the memory cell selected by the formula (1) is updated according to the following learning rule [2]. Values in the other memory cells are not updated.
[2] Updating target memory cell (learning);
The value c^iu stored in the memory cell number iu selected by the formula (1) is updated as the formula (2).

c^iu(N)=c^iu(L)+k×Ts×IFB  (2)

Here, c^iu (L) is a value before the update, c^iu (N) is a value after the update. And the updated value c^iu (N) is written to the memory cell of the memory cell number iu. k is a learning gain, and Ts is a sampling period. The learning processing completes here.
C. Learning result output processing (memory output processing);
[1] Selecting two-memory cell numbers to be output target;
When the learning result is output as mentioned above, time-lead compensation of Δtl is added, as shown in FIG. 7, so as to assure the stability of the convergence of learning, and the memory cell number io of the output target cell is determined as the formula (3).

io=floor((t+Δtl)/T)  (3)

Then a memory cell next to this memory cell is also selected for linear interpolation. Since Δtl has been added, io in the formula (3) may be N−1 or more. In this case, an applicable memory cell is selected returning to the beginning of the ring buffer 98.
Therefore the two memory cell numbers io1 and io2 to be selected are given by the following formula (4)

if io≦N−2, then io1=io, io2=io+1

if io=N−1 then io1=N−1, io2=0

if io≧N then io1=io−N, io2=io1+1  (4)

By linear interpolation, stepped output is prevented, which is particularly effective when the memory length is short. By executing linear interpolation for the two continuous memory cells in the output of the learning result, problems caused by discontinuous output due to stepped output in a conventional method can be prevented.
FIG. 7 is a diagram depicting the selection of the output target cell at the control sample time, which is the same as FIG. 6. In FIG. 6, c^n is selected as the learning target according to formula (1), but in FIG. 7, a set of the next cells c^n+1 and c^n+2 is selected since the time-lead compensation of Δtl is added. If it is designed to be Δtl<T (if the number of division N is decreased, for example, T is increases in inverse proportion to this), a cell to be a learning target and a cell to be an output target may be the same depending on the timing of the control sample.
In this first embodiment, further when Δtl is designed, the deigned value is obtained to subtract T/2 from the designed value. By this, it can be prevented that the memory cell to be output is deviated from the memory cell to be updated to perform a stable convergence of the learning. That is, it is possible to make the timing relationship between the select timing of the updated memory cell and the select timing of the output memory cell to be consistent, and then to perform a proper adjustment by the time-lead compensation of Δtl to be considered the closed loop characteristic of the feedback control system which is a learning control object. Thereby the stable convergence of the learning can be performed.
[2] Calculating learning control system output value IFF;
When linear interpolation is executed on the two memory cell values defined by the time T interval, the output value is output according to the formula on a line passing through (ΔT, IFF)=(0, c^io1) and (ΔT, IFF)=(T, c^io2). In other words, the output value is implemented by the calculation of the following formula (5).

IFF(ΔT)=c^io1+(c^io2−c^io1)ΔT/T  (5)

Note that ΔT is calculated the below formula using the io of the formula (3).

ΔT=(t+Δtl)−io·T

D. Adding learning control system output value and feedback control value;
IFF determined in C [2] and IFB calculated in A are added, and the VCM drive signal IVCM is obtained as shown in the formula (6).

IVCM=IFF+IFB  (6)

FIG. 8 is a diagram depicting the drive current function for one rotation of the medium. As FIG. 8 shows, the period TL for one rotation of the medium is divided by N, N number of cells are allocated to the boundary points of the divisions. Each memory cell value is regarded as the approximate value at each point, and these values of the memory cells are linearly interpolated (that is, polygonal approximation) and the approximate functions are generated.
The time width T of each block after N division is T=TL/N. In other words, the value stored in the memory cell indicates the height of each vertex of the polygonal approximation. The height of each vertex when the current pattern in FIG. 8 is polygonal-approximated at N points is C^i (where i=0, 1, . . . (N−1)).
For the height C^i at each vertex of the polygonal approximation, learning is progressed by integrating the feedback control signal IFB in a time block corresponding to each vertex (memory cell) into the corresponding vertex height using formula (1) and (2).
As the formula (1) shows, i is determined according to the value of t, that is, a height C^i at the learning target vertex is selected, and the integration operation is performed with the value IFB (t) of the control signal at this time as input. According to the learning rule based on the formula (2), the height C^i of each vertex is integrated until IFB, which is the input of the learning rule, becomes roughly zero. So after learning converges, the approximate function I^ repeat, when the heights of each vertex C^0 ̃C^(N−1) are linearly interpolated and polygonal approximation is performed, becomes a function when the unknown drive current function I repeat is approximated.
During such a learning processing, the latest learning result I^ repeat is sequentially output from the learning control system, and is directly input into the drive current I of the focus drive section 54 which drives the focus drive coil 52, so from the point of view of the feedback control system, periodic disturbance seems to have disappeared.
In this periodic disturbance compensation method by learning, even if the learning gain to obtain the learning result is a low gain, the final learning control signal to be obtained can contain a signal with a high frequency band in the range limited by the time width T of each one of the blocks after N division, that is, a high frequency band compensation signal for repetitive disturbance which is periodic.
For example, if the rotation speed of the medium is 4500 rpm, then the rotational frequency is 75 Hz, and the period of one rotation TL is 13.3 msec., and it is assumed that one period TL is divided by N=128, for example. In this case, the time width T per one rectangle is T=TL/N=104.2 μsec.
Therefore, when the sampling frequency of the control signal IFB from the feedback control section 80 to the learning control section 82 is 55 kHz, that is, the sampling period Ts=18.18 μsec., then the control signal IFB is sampled about five times during the time width T of each block after an N division. In other words, the learning operation based on the formula (2) is executed for the height of each vertex (value of each memory cell) about five times per rotation of the medium.
FIGS. 9(A),9(B),9(C),9(D) and 9(E) show diagrams depicting this learning method more specifically. In FIGS. 9(A) to 9(E), the description concerns the block [0≦t<T], but the sampling period Ts of the control system is 1⁄4 of T to simplify description. FIG. 9(A) shows the status when t=0, where learning has not yet been executed and both c^0 and c^1 are zero.
During the block [0≦t<T], that is, during FIG. 9(A)-(D), c^1 is not updated, only c^0 is updated. At each sampling point, error value e0, e1, e2, e3 or e4 at that time becomes the input of the integration operation of the learning respectively. In the case of t=3Ts shown in FIG. 9(D), for example, error e3 is input, value c^0 is integrated, and the black circle is updated to the white circle.
By linear-interpolating such a learning result, stepped output can be prevented, which is particularly effective when the memory length is short. By linear-interpolating the two continuous memory cells in the output of the learning result, problems caused by discontinuous output due to stepped output can be prevented.
In the description on FIGS. 9(A) to 9(E), an ideal status was described where the phase delay of the feedback control system which requires an additional learning control system, for example, can be ignored. The fundamental principle of the present invention is a learning mechanism for the periodic signal pattern, as shown in FIGS. 9(A) to 9(E), where the signal waveform of an unknown periodic signal is copied while the learning error signal is integrated synchronizing with the period of the periodic signal. As described above, the height of each vertex C^i is updated by the integration operation of the learning error signal, and finally the approximate signal for the learning error to be roughly zero is obtained.
FIGS. 9(A) to 9(E) show an ideal case where the output of the learning control system is incorporated into the learning error signal without any delay. But when this is applied to the focus-following control of the disk unit as shown in FIG. 3, the learning error signal becomes IFB. When the learning control system of the present invention is applied to an actual feedback control system, such as a disk unit, the learning result output is not immediately incorporated into the learning error signal, since a “closed loop characteristic from IFF to IFB of the feedback control system” exists on the path until IFF, which is the learning result output, is incorporated into IFB.
This delay makes the learning result becomes vibratory and becomes a cause of aggravation of focus-following control accuracy, or learning becomes unstable if the delay is long. Therefore this delay is considered and a function to compensate for the delay is provided to the learning control system so that this delay hardly exists.
In other words, when the FF output section 100 outputs the learning result stored in the ring buffer memory 98 to the feedback control system, time delay, such as the phase delay of the control target, is considered, and the learning result at the time moved forward is the feed-forward output.
Because of the feed-forward output of the learning result at the time moved forward, the use of a phase lead filter is unnecessary, and since the learning control section 82 manages the current pattern to be the feed-forward output corresponding to time t, a memory cell is selected according to the time moved forward considering the phase delay of the control target, and the learning result at that time is output.
By compensating the time moved forward for the feed-forward output of the learning result in this way, a vibratory fluctuation of response waveforms can be prevented like the case when the time moved forward is not compensated, and a stable learning result can be obtained.
[Second Embodiment of Feedback and Learning Control]
FIG. 10 is a diagram depicting the learning algorithm of the second embodiment of this invention, FIG. 11 is a diagram depicting the approximate function thereof, and FIGS. 12(A) to 12(E) are diagrams depicting the learning operation. In this embodiment, the way to select a memory cell to be updated, which is described in FIG. 6, is improved considering the way to output the linearly-interpolated value of two adjacent memory cells, so that efficient learning (efficient memory update) becomes possible, and learning time can be decreased. The effect is particularly high when high-speed learning is attempted with setting the learning gain high. Convergence errors of a waveform after convergence can also be decreased.
In the above mentioned first embodiment, in the case of t=3Ts, t=T (=4 Ts) where c^1 is allocated is closer in time, the approximate line (unknown) to the target can be more efficiently approached to update the value of c^1, rather than updating the value of c^0, as shown in FIG. 9.
In FIGS. 12(A) to 12(E), just like FIGS. 9(A) to 9(E), the sampling period Ts is 1⁄4 of T for the block [0≦t<T] to simplify description. FIG. 12(A) shows the state of t=0, where learning has not yet been executed, and both c^0 and c^1 are zero.
During the block [ 0≦t<Ts], that is between FIGS. 12(A) and 12(B), c^1 is not updated, only c^0 is updated. During the block [2Ts≦t≦4Ts], that is between FIG. 12(C)-12(E), c^0 is not updated, only c^1 is updated. At each sampling point, error value e0, e1, e2, e3 or e4 at that time becomes the input of the integration operation of learning respectively. In the case of t=3Ts shown in FIG. 12(D), for example, error e3 is input, the value c^1 is integrated, and the black circle is updated to the white circle.
In other words, in the second method, the memory cell selection method is improved so as to update a memory cell closer in time. According to the update target memory cell selection method based on the second method, one memory cell closer to the current time is selected as an update target.
In FIGS. 12(A) to 12(E), at the sampling points shown in (A) and (B), c^0 becomes the update target since c^0 is closer in time, and c^1 becomes the update target at (C), (D) and (E). By making a memory cell allocated to a closer time to be an update target in this way, the convergence of learning can be more efficient, as is clearly shown in the comparison of FIGS. 12(A) to 12(E) and FIGS. 9(A) to 9(E).
Therefore, as FIG. 10(A) shows, the update target cell number iu is changed from formula (1) to formula (8).

i=floor[(t+T/2)/T]

if i≦N−1 then iu=i

if i=N then iu=0  (8)

As the formula (8) is described by using the floor (x) function (a maximum integer value which is equal to or smaller than the argument x), the formula (8) is described in the form of adding a time T/2 to the time t. However, as described above, this memory cell selection method is to select a memory cell closest to the current time t.
Accordingly, the formula (8) is equivalent to below formula (8-1), therefore FIG. 10(A) can be modified to FIG. 10(B).

i=round[t/T]

if i≦N−1 then iu=i

if i=N then iu=0  (8-1)

Note that the round(x) function designates a function to round to an integer value which is closet to the argument x.
As shown in FIG. 8, according to the learning control system with the linear interpolation of this invention, the value stored in the memory cell indicates the height of each vertex located at a boundary of the time domains divided by N. The linear interpolation process in the output process that was described by using FIG. 7 and the formulas (3), (4) and (5) show the process to interpolate the value of each vertex.
In the aforementioned memory update method of the first embodiment, the select timing of the updated memory cell shown in FIG. 6 is shifted T/2 from the select timing of the output memory cell in FIG. 7. It is possible that such an inconsistent of time cause the convergence of the learning to unstable.
While, in the memory update method of the second embodiment as described in the formula (8) or (8-1), the memory update timing is shown in FIG. 10(B), therefore the memory update timing becomes a matched relationship with the time scale and the output memory cell as shown in FIG. 7. According to the second embodiment, while it is cancelled to be inconsistent with the relationship to the time scale, it is possible to perform a proper adjustment by the time-lead compensation of Δtl to be considered the closed loop characteristic of the feedback control system which is a learning control object, thereby performing the more stable convergence of the learning than the first embodiment.
As aforementioned, even in this first embodiment, when Δtl is designed, the deigned value is obtained to subtract T/2 from the designed value in the second embodiment. By this, it can be prevented that the memory cell to be output is deviated from the memory cell to be updated to perform a stable convergence of the learning. That is, it is possible to make the timing relationship between the select timing of the updated memory cell and the select timing of the output memory cell to be consistent, and then to perform a proper adjustment by the time-lead compensation of Δtl to be considered the closed loop characteristic of the feedback control system which is a learning control object, in order to perform the stable convergence of the learning.
[Third Embodiment of Feedback and Learning Control]
Now a case of simultaneously updating two memory cells will be described for each processing of DSP 50 with reference to FIG. 13 to FIG. 18.
2. Processing when two memory cells are simultaneously updated;
The third embodiment where two memory cells are simultaneously updated will be described next. In the present invention, a polygonal approximation by linearly connecting the heights of vertices stored in the memory cells is used, as shown in FIG. 8, and in the third embodiment, the nature of approximation by linear interpolation is considered more accurately so as to increase the speed and precision of the convergence of learning. Each processing of DSP 50 in the third embodiment will be described below.
A. Operation of feedback control system;
Just like the above mentioned case of updating a single memory cell, the focus error signal (FES) is sampled by the AD converter (not illustrated), and the feedback control operation, such as the PID control system, is performed to calculate the output IFB of the feedback control system.
B. Learning processing (memory update processing);
[1] Selecting two target memory cell numbers to be updated by learning algorithm;
Based on the time t (0≦t<TL, TL is disk rotation period) synchronizing with disk rotation, two target memory cells to be updated by the learning algorithm are selected. The time t is measured by a timer which is initialized at each disk rotation, and is obtained by reading this timer.
Just like the above mentioned case (FIG. 6), the learning result is stored in the ring buffer 98 with the length N shown in FIG. 13. The circle symbol indicates a sampling period Ts to execute a series of feedback control operations and learning control operations shown in FIG. 5, just like the case of FIG. 6.
The corresponding relationship between each memory cell and time t, however, is different from the case of FIG. 6. FIG. 11 shows vertexes A and B indicated by values C^n and C^(n+1) of the two memory cells next to each other, and the line AB, which is the linear interpolation thereof. The line which passes through the vertex A (nT, C^n) and vertex B ((n+1) T, C^(n+1)) is given by

IFF(t)=C^n+[(C^(n+1)−C^n)/T]×ΔT   (9)

Where ΔT=t−nT. The formula (9) is transformed to be 



  
    
      
        
          
            
              
                IFF
                ⁡
                
                  (
                  t
                  )
                
              
              =
              
              ⁢
              
                
                  
                    C
                    ⋀
                  
                  ⁢
                  n
                  ×
                  
                    (
                    
                      1
                      -
                      
                        Δ
                        ⁢
                        
                           
                        
                        ⁢
                        
                          T
                          /
                          T
                        
                      
                    
                    )
                  
                
                +
                
                  
                    
                      C
                      ⋀
                    
                    ⁡
                    
                      (
                      
                        n
                        +
                        1
                      
                      )
                    
                  
                  ×
                  Δ
                  ⁢
                  
                     
                  
                  ⁢
                  
                    T
                    /
                    T
                  
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  IFF
                  ⁡
                  
                    (
                    n
                    )
                  
                
                +
                
                  IFF
                  ⁡
                  
                    (
                    
                      n
                      +
                      1
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        10
        )
      
    
  




Here the first term and the second term of the right hand member in formula (10) is a formula to indicate the line AD and the line BC in FIG. 11 respectively. In other words, the approximate line AB when the vertexes A and B are linear-interpolated is the line made by the addition of the line AD and the line BC, as shown in formula (10).
The above was a description on linear approximation in the block nT≦t<(n+1)T, but this is the same for the other blocks. Therefore, the polygonal approximate function shown in FIG. 8 is equivalent to the function where N number of isosceles triangular functions, where the height is C^i and the base is 2T, are arranged at interval T, and the sum of these is determined as shown in FIG. 18. In other words, this is given by formula (11). 



  
    
      
        
          
            
              I
              ^
            
            repeat
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            ∑
            
              
                i
                =
                0
              
              ,
              
                N
                -
                1
              
            
          
          ⁢
          
            
              
                c
                ^
              
              i
            
            ·
            
              
                Λ
                i
              
              ⁡
              
                (
                t
                )
              
            
          
        
      
    
    
      
        (
        11
        )
      
    
  




Here Λi(t) is a triangular function with height 1 defined as follows. At first, the fundamental triangular function Λ(t) shown as FIG. 14(A) is defined as follows. 



  
    
      
        {
        
          
            
              0
            
            
              if
            
            
              
                
                   
                
                ⁢
                
                  t
                  <
                  
                    -
                    T
                  
                
              
            
          
          
            
              
                
                  
                    
                      1
                      T
                    
                    ⁢
                    t
                  
                  +
                  1
                
                ⁢
                
                   
                
              
            
            
              if
            
            
              
                
                  -
                  T
                
                ≤
                t
                <
                0
              
            
          
          
            
              
                
                  
                    
                      -
                      
                        1
                        T
                      
                    
                    ⁢
                    t
                  
                  +
                  1
                
                ⁢
                
                   
                
              
            
            
              if
            
            
              
                0
                ≤
                t
                <
                T
              
            
          
          
            
              0
            
            
              if
            
            
              
                T
                ≤
                t
              
            
          
        
      
    
    
      
        (
        12
        )
      
    
  




Λi(t) is the result when the fundamental triangular function Λ(t) is shifted in the time direction at interval T.
 Λ1(t)=Λ(t−iT)  (13)
Here, T is a time interval when N number of triangular functions are laid out, so T=TL/N. Λo(t), however, is at the boundary of the ring buffer, so this is defined as follows as an exception. 



  
    
      
        
          
            Λ
            0
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          {
          
            
              
                
                  
                    
                      -
                      
                        1
                        T
                      
                    
                    ⁢
                    t
                  
                  +
                  1
                
              
              
                if
              
              
                
                  0
                  ≤
                  t
                  <
                  T
                
              
            
            
              
                0
              
              
                if
              
              
                
                  T
                  ≤
                  t
                  <
                  
                    
                      (
                      
                        N
                        -
                        1
                      
                      )
                    
                    ⁢
                    T
                  
                
              
            
            
              
                
                  
                    
                      1
                      T
                    
                    ⁢
                    
                      (
                      
                        t
                        -
                        NT
                      
                      )
                    
                  
                  +
                  1
                
              
              
                if
              
              
                
                  
                    
                      (
                      
                        N
                        -
                        1
                      
                      )
                    
                    ⁢
                    T
                  
                  ≤
                  t
                  <
                  NT
                
              
            
          
        
      
    
    
      
        (
        14
        )
      
    
  




Λ0(t) ̃ΛN−1(t), which are triangular functions where the heights are 1 and the bases are 2T, indicate how much weight the height C^0-C^(N−1) of the vertex stored in the corresponding memory cells participates in the linear approximate function I^repeat (t) given by the formula (11). In other words, as formulas (12) and (14) and FIGS. 11, 14(A) and 14(B) show, each memory cell value influences 100% at the vertex position where the memory cell is allocated, and does not influence in the range where the time distance from the vertex position exceeds ±T. In the ±T range, weight linearly attenuates as it moves away from the vertex position.
In the third embodiment, the learning gain is set considering this feature of the linear interpolation, as described later, so as to increase the speed and the precision of the convergence in polygonal approximation type learning.
And as FIG. 13 shows, two memory cells, which are allocated to the boundary points at both ends of the time range where the current time t is included, are selected as the target memory cells to be updated by the learning algorithm.
To determine the memory cell numbers to be an update target, the memory cell numbers (iu1, iu2), corresponding to the two update target memory cells, are determined by computing the following formula (15), for example, based on the time t read from the above mentioned timer.

iu1=floor (t/T)

iu2=iu1+1 if iu1<N−1

iu2=0 if iu1=N−1  (15)

Here for the floor (x) function, the maximum integer value which is equal to or smaller than the argument x is returned. According to this formula (15), two memory cells next to each other are sequentially selected according to the current time t, as shown in FIG. 13. If iu1 is N−1, however, iu2 becomes zero (beginning of ring buffer), as the formula (15) shows.
In this case, only c^iu1 and c^iu2, which are values stored in the two memory cells selected by the formula (15), are updated according to the following learning rule in [2]. Values in other memory cells are not updated.
[2] Updating target memory cells (learning);
The two values c^iu1 and c^iu2 selected by the formula (15) are simultaneously updated as the following formula (16).

c^iu1(N)=c^iu1(L)+k×Ts×(1−λ)×IFB

 c^iu2(N)=c^iu2(L)+k×Ts×k×IFB  (16)

Here λ is a weighting factor to provide the update ratio of the two values to be simultaneously updated, and is
0≦λ<1. Further, k is a learning gain, and Ts is a sampling period.
λ is determined as the following formula (17) using the current time t.

λ=ΔT/T=(t−iu1×T)/T  (17)

This relationship is depicted in FIG. 15. FIG. 15 shows the case when iu1=n and iu2=n+1. λ is a weighting factor to provide the ratio of distance between the current time t and the boundary time at both ends at the time block nT≦t<(n+1) T. The values c^iu1 and c^iu2 after the update by formula (16) are written to the ring buffer 98 again.
C. Learning result output processing (memory output processing);
[1] Selecting two memory cell numbers to be output targets;
When the learning result is output as mentioned above, the time-lead compensation of Δtl is added so as to assure the stability of the convergence of learning, and the memory cell number io of the output target cell is determined as the above mentioned formula (3).

io=floor((t+Δtl)/T)  (3)

Then a memory cell next to this memory cell is also selected for linear interpolation. Since Δtl has been added, io in the formula (3) maybe N−1 or more. In this case, an applicable memory cell is selected returning to the beginning of the ring buffer 98. Therefore the two memory cell numbers to be selected, io1 and io2, are given by the above mentioned formula (4).

if io≦N−2 then io1=io, io2=io+1

if io=N−1 then io1=N−1, io2=0

if io≧N then io1=io−N, io2=io1+1  (4)

By linear interpolation, the stepped output is prevented, which is particularly effective when the memory length is short. By executing linear interpolation for the two adjacent memory cells in the learning result output, problems caused by discontinuous output due to stepped output in a conventional method can be prevented.
In this selection of output memory cells, as the time lead compensation Δtl is added, there is a case that the selected output memory cell is different from the selected update memory cell by above [B. learning process]. Just like the case of FIG. 7, the selection status of the output target memory cells is shown at the same sample as in the case of FIG. 13. In FIG. 13, a set of cells c^n and c^n+1 is selected to be updated, but, in FIG. 7, as the time lead compensation Δtl has been added to select the output target cells, the next set of cells c^n+1 and c^n+2 is selected for output target cells.
If Δtl≧T, a set of memory cells to be updated and a set of memory cells to be output are always different. If Δtl<T, however, a set of cells to be a learning target and a set of cells to be an output target may become the same depending on the timing of the control sample.
T is T=TL/N, which is determined depending on the rotation period TL of the disk and the number of memories N which provide the time resolution to represent an unknown function, but Δtl is used to compensate for the phase delay of the target control system, so the length relationship of T and Δtl generally differs depending on the target this method is applied to.
[2] Calculating learning control system output value IFF;
When an approximate function is represented using the triangular function as a fundamental function, the following formula (18) is calculated using the memory cell values selected in [1] so as to calculate the output IFF.

IFF=c^io1×(1−λo)+c^io2×λo  (18)

Here λo is determined by the following formula (19). 



  
    
      
        
          
            
              
                λ
                ⁢
                
                   
                
                ⁢
                o
              
              =
              
              ⁢
              
                Δ
                ⁢
                
                   
                
                ⁢
                
                  T
                  /
                  T
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  [
                  
                    
                      (
                      
                        t
                        +
                        
                          Δ
                          ⁢
                          
                             
                          
                          ⁢
                          t1
                        
                      
                      )
                    
                    -
                    
                      
                        floor
                        ⁡
                        
                          (
                          
                            
                              (
                              
                                t
                                +
                                
                                  Δ
                                  ⁢
                                  
                                     
                                  
                                  ⁢
                                  t1
                                
                              
                              )
                            
                            /
                            T
                          
                          )
                        
                      
                      ×
                      T
                    
                  
                  ]
                
                /
                T
              
            
          
        
      
    
    
      
        (
        19
        )
      
    
  




Here t is a current time, and Δtl is the value for the time-lead compensation.
FIG. 16 depicts the output computing processing at the same sampling time as FIG. 15. In output processing, the output target memory cells are selected and the output computing processing is executed using the time (t+Δtl) where the time-lead compensation value of Δtl has been added. In the learning processing in FIG. 15, which is based on the current time t, the block nT≦t<(n+1) T is the update target, and the set of cells c^n and c^n+1 becomes the update target cells, but in the case of the example of the output computing processing in FIG. 16, the next set of cells c^n+1 and c^n+2 becomes the target of the output computing processing.
The triangular functions Λi(t) (these have height 1) shown in FIG. 16 provide the weight to interpolate the value of the respective memory cell in the respective time block. The formula (19) determines λo(<1) which is one weight at time (t+Δtl), and a value when both memory cells are linearly interpolated is calculated by the formula (18).
D. Adding learning control system output value and feedback control value;
As mentioned above, IFF determined in C-[2] and the IFB calculated in A are added, and the focus drive signal I is obtained as shown in the above mentioned formula (6)

I=IFF+IFB  (6)

FIGS. 17(A) to 17(E) are diagrams depicting the learning operation to update the two memory cells. In the second embodiment (FIG. 10 to FIG. 12), a closer memory cell value is merely selected as an update target, but in this embodiment where two memory cells are updated, the update gain of the values of the memory cells on both sides are continuously changed according to the time distance from the current time.
In other words, the update gains of the memory values on both sides are changed considering the degree of participation of the memory cell values on both sides in the interpolation value output at the current time. As described above, λo(=ΔT/T) is a factor to indicate the degree of participation, as shown in the linear interpolation formula (18).
The learning formula (16) indicates that the memory cells on both sides are updated considering λ. This will be described with reference to the example in FIGS. 17(A) to 17(E). In FIG. 17(A), where ΔT=0, so, λ is λ=0, that is,

c^0(N)=c^0(L)+k×Ts×1×e0

c^1(N)=c^1(L)+k×Ts×0×e0

and only C^0 is updated, as seen in FIG. 17(A). c^1, which does unquestionably not participate, is not updated.

In FIG. 17(B), where ΔT=Ts=T/4, then λ is λ=1⁄4, that is

c^0(N)=c^0(L)+k×Ts×3⁄4×e1

c^1(N)=c^1(L)+k×Ts×1⁄4×e1

In other words, the value in proportion to 3⁄4 of the error is allocated to c^0 and is integrated, and the value in proportion to the remaining 1⁄4 is allocated to c^1. The integrating amount is adjusted according to the degree of closeness.
In FIG. 17(C), where ΔT=2Ts=T/2, then λ is λ=1⁄2, that is

c^0(N)=c^0(L)+k×Ts×1⁄2×e2

c^1(N)=c^1(L)+k×Ts×1⁄2×e2

In other words, the value in proportion to 1⁄2 of the error is allocated equally to c^0 and c^1. Since this is a center time between the memory cells, both [c^0 and c^1] are integrated equally. This is quite reasonable.
In FIG. 17(D), where ΔT=3Ts=3T/4, then λ is λ=3⁄4, that is

c^0(N)=c^0(L)+k×Ts×1⁄4×e3

c^1(N)=c^1(L)+k×Ts×3⁄4×e3

In other words, the value in proportion to 1⁄4 of the error is allocated to c^0, and the value in proportion to the remaining 3⁄4 is allocated to c^1.
In this way, in this embodiment, the integrating amount is allocated considering the characteristic of the linear interpolation according to the current time when memory is updated, so the characteristic of the unknown function can be more effectively converged to a target value.
FIG. 19 is a table comparing the first, the second and the third embodiments. The first embodiment includes a first embodiment without an output interpolation process, here called as a modification of the first embodiment. In the first to third embodiments, the output interpolation processing and the time-lead compensation are executed and the delay of the feedback control system is also compensated for. Therefore the feed-forward output is smoother than the modification of the first embodiment, and also high precision learning is possible even if the memory length is short.
As for the learning processing, in the case of the first embodiment where the characteristic of the linear interpolation is not considered, convergence is eventually possible if the learning gain is appropriately selected, but unnecessary processes are included in the convergence steps. As a result, the learning output may fluctuate in the convergence steps and cause problems, or the time to reach convergence may be long.
In the third embodiment, on the other hand, an unnecessary fluctuation of the learning output can be avoided and a learning control system which converges quickly can be constructed. In the second embodiment, which is between the first and third embodiments, relatively efficient convergence is possible with less calculation volume than the third embodiment. In practical terms, the second embodiment is a highly effective method as well.
FIG. 20 to FIG. 22 are diagrams depicting simulation results. FIG. 20 is a comparison example which indicates focus-following errors when only a feedback control system is used for control. In this case, a primary frequency component and secondary frequency component of the surface fluctuation are synthesized. FIG. 21 is a comparison example when the learning control system without the output interpolation is added under the same condition, and FIG. 22 is an example when the learning control system according to the third embodiment is added. In both FIG. 21 and FIG. 22, where one round is divided into 32 and learning starts from time 0, the top graph shows the focus-following error FES, and the bottom graph shows the learning result (feed-forward signal) IFF.
Since learning gain is the same for both FIG. 21 and FIG. 22, the trend in the progress of learning is almost the same, but in FIG. 21, the learning result is output by stairs, so the focus-following error FES fluctuates even if learning roughly converges, and accuracy at a certain degree or higher cannot be obtained. In the embodiment in FIG. 22, however, the learning result is smooth, and the focus-following error does not fluctuate once learning roughly converges.
By executing the interpolation processing and the time-lead compensation for the feed-forward output of the learning result in this way, the fluctuation of a response waveform can be prevented, and a stable learning result can be obtained.
[Other Embodiments]
FIG. 23 is a diagram explaining another feedback control processing of the present invention. In the case of the example in FIG. 5, feed-forward output processing (C) is simultaneously executed with the learning processing (B), but in FIG. 23, the learning processing is executed in advance immediately after a disk is inserted into the drive, for example, the learning result is stored in the ring buffer memory 98, and then this fixed value of the ring buffer 98 is feed-forward processed during read and write processing. In other words, the processing in FIG. 23, omitting the learning processing B in FIG. 5, is executed. The content of each processing is the same as the above mentioned processing.
In the present invention, the processing shown in FIG. 5 may be continued, or the processing in FIG. 5 may be executed only during a specified time, then the processing in FIG. 23 may be executed using the value in the ring buffer as a fixed value.
In the case of a device where random access is frequently executed, such as an MO drive, complex seek control is entered during track-following controls. In a still state, a track jump (kick back) is also executed. In such an actual device, the latter operation method can be implemented more easily.
In the case of an application where relatively large files are continuously read, such as a CD and DVD, a method of continuously processing in FIG. 5 can also be implemented easily.
Also some variations are possible for initial status in the ring buffer memory 98. For the first learning, such as immediately after disk insertion, learning may be started with initial values of the ring buffer memory 98 all zero, but thereafter, the learning convergence time can be decreased if learning is started in a state where already learned values are stored as the initial state.
When the learning control section 82 is provided between the feedback control section 80 and the focus drive section 54, as the feedback current for the focus drive section 54, which is output from the feedback control section 80, is the learning target, the learning result is acquired in the same dimension as that of the feedback current. Therefore, the learning result can be output directly to the feedback control system as a feed-forward current at seek control, on-track control and kick back control.
FIG. 24 is a block diagram depicting the second embodiment of the focus control system of the storage device of the present invention. In the second embodiment, the learning control section 104 is placed between the focus error detection section 78 and the feedback control section 80.
The focus error signal FES from the focus error detection section 78 is in put to the learning control section 104 for learning processing, the learned focus error signal FES^repeat, obtained as a result of the learning, is added to the focus error signal FES from the focus error detection section 78 at the addition point 106, and is input to the feedback control section 80 as a feedback signal FESFB.
The basic configuration of this learning control section 104 is the same as that in the first embodiment in FIG. 4, except for inputting the focus error signal FES for learning and outputting the learned focus error signal FES^repeat as a learning control signal.
In the learning algorithm by the learning control section 104 in FIG. 24, the time function in each rotation period is defined for the focus error signal FES, rather than the periodic feedback current in the first embodiment in FIG. 4, and the approximate function FES repeat (t) defined with the height C^i of each rectangular or triangular function after N division is determined in the same way.
[Medium Process]
Next, medium process of the optical disk drive applied above learning controller will be explained. The medium process is a process from medium load to medium eject.
FIG. 25 is a flow chart depicting the medium processing in the optical disk unit comprising the learning control section 82 in FIG. 2. When the medium (disk) 64 is loaded into the unit in Step S1, a focus leading process called as a focus entry is performed to start the focus control. Next, a track control is started in Step S3.
Further, in Step S4, the focus learning control is started by the learning control section 82 of the present invention. Thereafter, the focus learning control is basically continued. While, after the learning is completed, the learning may be ended. At the end of the learning processing based on this learning mode, the learning convergence is judged by evaluating the number of times of learning, the learning time, and/or the focus error signal FES. For example, if the end of learning is judged by the learning time, the number of times of rotation of the disk after the start of learning is counted, and learning ends at a predetermined number of times.
Therefore in the seek control and tracking control from Step S5, the surface fluctuation synchronizing with the rotation of the medium is effectively suppressed by the feed-forward output based on the learning result, and a stably controlled environment free from periodic disturbance can be created for the feedback control system.
After the focus learning control start in Step S4, the processing advances to Step S6 if seek control is selected in Step S5, and seek processing, that is, coarse control for positioning the carriage to the target track by controlling the speed, is executed. And when the carriage is positioned on the target track by this seek control in Step S7, the tracking control to follow-up the optical beam to the target track center is executed in Step S8.
The seek control or the on-track control in Steps S5-S8 corresponding to the processing of the focus learning start in Step S4 is repeated until ejection of the medium is detected in Step S9. And when the medium is ejected in Steps 9 and 10, processing returns to Step S1 and learning processing is started again in Step S4 when the next medium is loaded. When termination is instructed in Step S11, the processing series is terminated.
In the focus learning process by the learning control section 82, the approximate function is obtained at each of the plurality of locations in the disk radius direction. At this time, the learning control section 82 applies the learning algorithm with the already existent approximate function data as the initial values for obtaining the approximate functions at the plurality of locations, if an approximate function obtained at another location exists.
For processing in the learning result output mode, which is the feed forward time after learning, the learning control section 82 selects an approximate function to be used according to the position in the radius direction at that time, and feeds forward the approximate function.
For example, it is assumed that there are 15000 tracks from the internal circumference to the external circumference of the disk. At first, the approximate function obtaining operation is executed at around the 7500th track, which is around the intermediate circumference. Then in order to obtain an approximate function near the internal circumference, seeking is moved to around the 2500th track, and at around the 2500th track the approximate function obtaining operation is executed using a separately provided memory cell for obtaining an approximate function for the internal circumference.
Seeking is then moved to around the 12500 th track for obtaining an approximate function near the external circumference, and at around the 12500th track, the approximate function obtaining operation is executed using a separately provided memory cell for obtaining an approximate function for the external circumference. If learning is ended when the disk rotates 100 times, the learning started at the 7500th track is performed, for example, between the 7500th and 7600th tracks.
In the learning at the internal circumference, which is executed thereafter, the initial value of the approximate function (each initial value of memory cell) is not started from zero, instead the learning result at the intermediate circumference is copied, and this value is used as the initial value to start learning since the approximate function at the internal circumference is similar to the function obtained at the intermediate circumference, therefore learning can be shortened and can be ended, for example, when the disk rotates 50 times. The learning time for learning at the external circumference can also be decreased in the same way.
The above processing is executed when, for example, the medium is loaded. Three approximate functions, for the internal circumference, intermediate circumference and external circumference, are prepared. And when a read/write operation is executed on any tracks in the range from the 1st to 5000th tracks, the approximate function obtained around the 2500th track is fed forward.
When a read/write operation is executed on any tracks in the range from the 5001st to 10000th tracks, the approximate function obtained around the 7500th track is feed-forwarded. When a read/write operation is executed on any tracks in the range from the 10001st to 15000th tracks, the approximate function obtained around the 12500th track is fed forward.
Because of this, compared with the case when the approximate function obtained at one location around the intermediate circumference is used for the entire area, from the internal circumference to the external circumference, a more accurate focus-following operation is possible even if the surface fluctuation amount of the disk is different between the internal circumference and the external circumference, or even if the difference of phase and amplitude of a periodic disturbance along with the spindle rotation between the internal and external circumferences cannot be ignored.
FIG. 26 is a flow chart depicting the learning processing of the learning control section 82 in FIG. 2 in learning mode. In this learning processing, whether the index which is obtained at each rotation of the medium exists, is checked in Step S21, and when the index is obtained, processing advances to Step S22, the current time t is reset to t=0, and whether it is the sampling timing or not is checked in Step S23.
When it is sampling timing, the current indication value IFB is sampled as a feedback control signal in Step S24, and in Step S25, the address(es) i of the memory cell(s) (one memory cell in the first and the second embodiment and two memory cells in the third embodiment shown in FIG. 19) are calculated from the time t at this point, and the stored value(s) c^[i] at the cell address(es) i is read in the step S26.
Then in Step S27, a new storage value(s) c^[i] is calculated, and in Step S28, the cell(s) of the memory is updated by storing the newly computed storage value(s). Then in Step S29, the calculated cell addresses for output, that is, the storage values of the two cell addresses located at ΔTl ahead are read, are linearly interpolated, and feed-forward output to the feedback control system. Such processing in Steps S21-S29 is repeated until the learning termination condition is met in Step S30, for example, reaching the learning time which was set in advance.
FIG. 27 is a flow chart depicting the feed-forward output processing of the learning control section 82 in FIG. 2 in learning result output mode. In this feed-forward output processing, whether the index, which is obtained at each rotation of the medium, exists, is checked in Step S31, and if the index is obtained, the current time t is reset to t=0 in Step S32, and whether it is output timing or not is checked in Step S33.
This output timing is, for example, timing determined by the same output period as the sampling period Ts in the learning mode in FIG. 26. When it is judged as output timing in Step S33, the addresses i and i+1 of the memory cells, based on the time when the time-lead compensation of Δtl is added to the current time t, are calculated in the Step S34, and in Step S35, the stored values of the two cell addresses are read, are linearly interpolated, and are feed-forward output to the feedback control system. When the medium is ejected in the Step S36 or if termination of the unit is instructed in Step S37, feed-forward output is terminated.
The above embodiments are the cases when an optical storage device is used as an example, but the present invention can be applied to a magneto-optical storage device and other appropriate storage type devices, and the disk can have not only a disk shape but also includes a card shaped disk. The present invention is not limited to the above embodiments, but includes appropriate modifications which do not minimize the objects and advantages. The present invention is not limited by the numeric of the above embodiments.
As described above, according to the present invention, the learning control section high-speed memory updates the N numbers of memory cell with a shorter sample period than a time divided by N numbers and the high-speed outputs the learning result with the shorter sample rate. Therefore, it is possible to make the memory length for learning shorter while it is effectively utilizing the feedback information. For, example, it is possible to delete the memory length from 733 to 32, thereby enabling the cost-down by a large margin.
Also it is often that the surface fluctuation influence in focus control is managed by one time or several times of frequency component against the rotation frequency. So, as decreasing the number of divisions improves the averaging effect on unnecessary high frequency noise, the high frequency noise included in the learning wave output is decreased, thereby a higher precision focus-following accuracy can be expected.
Also as a secondary effect of decreasing the number of divisions, the convergence time of learning can be decreased. For example, if the memory length is decreased by half, the convergence time required for learning at the same magnitude of learning gain can be decreased by half. This can contribute to a decrease in the rise time from disk insertion to an actual access possible state when a disturbance is learned during the load sequence after medium insertion, for example. Further, preferably combining the interpolation process, a stepped output is avoided even though using short length memory.

## Claims

1. An optical disk apparatus, comprising:
a lens actuator for moving an objective lens toward a light axis direction of a light beam to be radiated to an optical disk; 
a focus error detection unit for detecting a position error from a just focus position of a recording surface of the optical disk; 
a feedback control unit for computing a control signal for moving said lens actuator so that a focus position error amount is controlled to zero or a predetermined value; 
a drive unit for driving said lens actuator based on said control signal; and 
a learning control unit for obtaining an unknown function for one disk rotation along with a periodic disturbance to memory which is comprised of N number of memory cells by a learning algorithm that is an approximate function which is approximated by a height allocated to each time block when the time required for one rotation of said disk is divided by N; 
wherein said learning control unit: 
samples a signal which follows a focus positional signal according to said learning algorithm at a sampling period which is less than the time obtained by dividing the time required for one rotation of said disk by N; 
updates one or more memory cells corresponding to a sampling time synchronizing with said sampling period according to a signal value; 
reads a value of at least one memory cell located at cell positions corresponding to an output time at an output period which is less than a time obtained by dividing the time required for one rotation of said disk by N; and 
outputs a feed-forward signal of a periodic disturbance compensation according to said read value.

2. The optical disk apparatus according to claim 1, wherein said learning control unit reads values of two memory cells located at cell positions corresponding to an output time at an output period which is less than the time obtained by dividing the time required for one rotation of said disk by N, and interpolates the values of said two memory cells based on said output time to generate said feed-forward signal.

3. The optical disk apparatus according to claim 1, wherein said learning algorithm of said learning control unit is for calculating a memory cell value after an update by multiplying said sampled signal by a predetermined or variable gain and adding the computed result to the memory cell value before the update.

4. The optical disk apparatus according to claim 1, wherein said learning control unit reads values of two memory cells associated at an advanced time moved forward for a predetermined amount of time from the update target memory cell, and performs interpolating processing for the values of the two memory cells by using said learning algorithm, so as to generate a periodic disturbance compensation signal corresponding to said advanced time.

5. The optical disk apparatus according to claim 1, wherein said learning control unit samples the signal which follows said focus positional error, selects two memory cells corresponding to said sampling time, and updates the values of the memory cells by using the learning algorithm so as to learn said unknown function.

6. The optical disk apparatus according to claim 5, wherein said learning algorithm of said learning control unit changes update gains for the two memory cells to be an update target according to said sampling time and adjusts an update balance between the two memory cells when the two memory cells are updated.

7. The optical disk apparatus according to claim 1, wherein said learning control unit samples the signal which follows said focus positional error, updates a value of one of said memory cells, which is allocated to a time close to said sampling time, by using the learning algorithm, so as to learn said unknown function.

8. The optical disk apparatus according to claim 1, wherein said learning control unit starts learning control at a time immediately after inserting said optical disk into the apparatus.

9. The optical disk apparatus according to claim 1, wherein said learning control unit executes an operation to obtain an approximate function for each location at a plurality, of locations in a disk radius direction when said approximate function is obtained, and selects and feed-forwards the approximate function to be used according to the position in the disk radius direction at that time when feed-forward is performed after said learning.

10. The optical disk apparatus according to claim 9, wherein said learning control unit applies the learning algorithm using already existent approximate function data as initial values if the approximate function already obtained at another location exists when the approximate function is obtained at a plurality of locations.

11. A focus control method of an optical disk apparatus, comprising:
a step of detecting a focus positional error from a just focus position of an objective lens for a recording surface of an optical disk; 
a feedback control step of computing a control signal for driving a lens actuator for moving said objective lens toward a light axis of a light beam to be radiated to said optical disk so that an error amount is controlled to zero or a predetermined value; 
a step of driving said lens actuator based on said control signal; and 
a learning control step, 
said learning control step comprising the steps of: 
sampling a signal which follows said positional error at a sampling period which is less than a time obtained by dividing a time required for one rotation of the medium by N; 
updating one or more memory cells corresponding to a sampling time synchronizing with said sampling period according to a signal value; 
reading a value of at least one memory cell located at a cell position corresponding to an output time at an output period which is less than a time obtained by dividing the time required for one rotation of the disk by N; and 
outputting a feed-forward signal for compensating a periodic disturbance based on said read value.

12. The focus control method according to claim 11, wherein said learning control step includes the steps of:
reading values of two memory cells located at cell positions corresponding to an output time at an output period which is less than the time obtained by dividing the time required for one rotation of said disk by N; and 
interpolating the values of said two memory cells based on said output time so as to generate a periodic disturbance compensation signal.

13. The focus control method for a disk apparatus according to claim 11, wherein said learning control step is for calculating a memory cell value after an update by multiplying a predetermined or variable gain to said sampled signal and adding the multiplied result to the memory cell value before the update.

14. The focus control method according to claim 11, wherein said learning control unit step is for reading values of two memory cells associated at an advanced time moved forward for a predetermined amount of time from the update target memory cell, and performing interpolating processing for the values of the two memory cells by using said learning algorithm, so as to generate a periodic disturbance compensation signal corresponding to said advanced time.

15. The focus control method for a disk apparatus according to claim 11, wherein said learning control step is for sampling a signal which follows said focus positional error and updating the value of said two memory cells corresponding to said sampling time so as to learn said unknown function.

16. The focus control method for a disk apparatus according to claim 14, wherein said learning step comprises a step for changing update gains for the two memory cells to be the update target according to said sampling time and adjusting an update balance between the two memory cells when the two memory cells are updated.

17. The focus control method for a disk apparatus according to claim 11, wherein said learning step comprises a step for sampling the signal which follows said focus positional error and updating the value of said memory cell close to said sampling time by using a learning algorithm so as to learn said unknown function.

18. The focus control method for a disk apparatus according to claim 11, wherein said learning control step is for controlling a start of learning at a timing immediately after inserting said optical disk into the unit.

19. The focus control method for a disk apparatus according to claim 11, wherein said learning control step is for executing an operation to obtain an approximate function for each location at a plurality of locations in a disk radius direction when said approximate function is obtained, and selecting and feed-forwarding the approximate function to be used according to the position in the disk radius direction at that time when feed-forward is performed after said learning.

20. The focus control method for a disk apparatus according to claim 19, wherein said learning control step is a step for applying the learning algorithm using already existent approximate function data as initial values if the approximate function already obtained at another location exists when the approximate function is obtained at a plurality of locations.