Disk apparatus and control method therefor

Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C714S042000, C714S005110

Reexamination Certificate

active

06721906

ABSTRACT:

CROSS REFERENCE TO RELATED APPLICATIONS
Pursuant to 35 U.S.C. § 119(a), this application claims the benefit of the filing date of Japanese patent application no. 11-274,036, filed on Sep. 28, 1999.
BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates to a disk apparatus such as a hard disk drive (HDD) and a control method therefor. In particular, the present invention relates to a disk apparatus having a command queue that holds a plurality of commands transmitted from one or more external apparatuses, such as a host apparatus, in which the disk apparatus utilizes rotational position optimization (RPO) to select a command to be next executed, and to a control method for such a disk apparatus.
2. Description of the Related Art
Some disk apparatuses each comprise a command queue holding a plurality of commands. Command processing in such a disk apparatus includes queuing a command received from a host apparatus into the command queue, selecting a command to be next executed from among a plurality of execution-waiting commands in the command queue, and executing the selected command. The command to be next executed may be selected with RPO, for example.
RPO is a method of estimating seek time and latency time for each command in the command queue (where seek time is the time from starting a seek of a target track to the completion of positioning a head on the target track and latency time is disk rotation time from the completion of the head positioning to the start of accessing a target sector) and selecting the execution-waiting command having the shortest seek/latency time (i.e., seek time plus latency time) as the command to be next executed. Thus, RPO is a method for selecting, as the command to be next executed, the execution-waiting command that can access the target sector on the disk in the shortest time. To utilize RPO to select the command to be next executed is also called to “sort with RPO.”
A micro program for performing the above-described command processing may include a queue handler that selects a command to be next executed from the command queue, a command handler that executes the selected command, an interface (I/F) event handler that monitors extra-drive processing (processing relating to data transfer) and that queues (stores in a queue) a command transmitted from the host apparatus, and a drive event handler that monitors intra-drive processing (processing relating to a disk access). In addition, the disk apparatus contains drive means (hardware) that drives an access mechanism and executes the intra-drive processing, and I/F means (hardware) that executes the extra-drive processing.
In addition, in conventional command s processing, if an error arises in the intra-drive processing while a command is being executed (if an error relating to a disk access arises), a retry is started and continued until an error is resolved, and a next command is executed after completing the execution of the command that generated the error. Therefore, if an error arises, the retry is performed to again access a target sector on a disk after waiting one rotation time of the disk.
FIG. 13
is a flow chart illustrating a control routine of a conventional command handler.
First, in step ST
31
, the command handler not only initializes the drive means and I/F means, but also transmits a parameter for command execution to the drive means and I/F means to activate the drive means and I/F means.
Next, in step ST
32
, the command handler judges whether an I/F event is present. If the I/F event is present in step ST
32
, the command handler handles the I/F event in step ST
33
: to go to step ST
34
. In addition, if the I/F event is not present in step ST
32
, the command handler skips step ST
33
to go to step ST
34
.
The above-described I/F event is an event generated according to the operation of the I/F means by the I/F event handler. In addition, the I/F event processing in step ST
33
is the processing of controlling the I/F means or drive means for according to the contents of the I/F event.
In step ST
34
, the command handler judges whether a drive event is present. If the drive event is present in step ST
34
, the command handler handles the drive event in step ST
35
to go to step ST
36
. However, if the drive event is not present in step ST
34
, the command handler skips step ST
35
to go to step ST
36
.
The above-described drive event is an event generated according to the operation of the drive means by the drive event handler. In addition, the drive event processing in step ST
35
is the processing of controlling the drive means and/or I/F means according to the contents of the drive event.
In step ST
36
, the command handler judges whether the I/F event processing and drive event processing are entirely completed. If not completed, the command handler returns to the step ST
32
. In this manner, the command handler executes commands through a loop of steps ST
32
to ST
36
. Then, if the intra-drive processing and extra-drive processing are entirely completed in step ST
36
, the command handler completes the execution of the command.
FIG. 14
illustrates a timeline for conventional command processing.
FIG. 14
shows a case in which a command CMD
1
is successfully executed, an error then arises in intra-drive processing (processing relating to a disk access) during the execution of a next command CMD
2
, and the execution of the command CMD
2
is retried.
When the intra-drive processing of the command CMD
1
is completed, the drive event handler
24
generates a DCOMP event (drive event) informing the command handler of the completion of the intra-drive processing, and informs the command handler of it. The command handler handles the DCOMP event (DCOMP processing), and completes the execution of the command CMD
1
.
During the execution of the command CMD
1
, a queue handler sorts commands that are stored in a command queue with RPO and selects a command CMD
2
as a next command to be executed after the command CMD
1
. When the command handler completes the execution of the command CMD
1
, the queue handler transmits the command CMD
2
, which will be next executed, to the command handler to request the execution of the command CMD
2
(KICK NEXT).
The command handler starts the execution of the command CMD
2
, performs the initialization as described in step ST
31
shown in
FIG. 13
, drives the access mechanism by the drive means, and makes a seek of a target track started (KICK SEEK). Then, according to the loop of steps ST
32
to ST
36
that is shown in
FIG. 13
, the command handler advances the intra-drive processing of the command CMD
2
.
In addition, when the I/F means receives a new command from the host apparatus, the I/F event handler queues this command in the command queue (NEW CMD, ENQUE). The queue handler sorts a plurality of execution-waiting commands including the above-described new command with RPO (RPO SORT) and selects a command that will be executed after the command CMD
2
.
If an error relating to a disk access arises during the execution of the command CMD
2
, the drive event handler generates an error incidence event (drive event) to transmit this error incidence event to the command handler.
When the command handler recognizes the error incidence event, the command handler increments a step of an Error Recovery Procedure (ERP) to make a retry started in the drive event processing in step ST
35
shown in FIG.
13
. Owing to this, the access mechanism again accesses the target sector after waiting one rotation of the disk.
In a disk access, a disk apparatus not only changes a retry procedure from a first disk access procedure to a retry procedure due to an error, but also changes the retry procedure according to the number of retries, and these procedures are called ERP. In the ERP having m steps, a disk access is tried at step
0
of the ERP, and if an error arises, another disk access is tried at step
1
of the ERP. Subsequently, disk accesses are sequentially tried at steps
2
to (m-
1
) of the ERP, and if an error ar

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Disk apparatus and control method therefor does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Disk apparatus and control method therefor, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Disk apparatus and control method therefor will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3193256

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.