Disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces
A disk drive is disclosed having a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors. When a read command is received from a host, data is read from first and second data sectors on first and second disk surfaces, respectively, in response to the read command, wherein the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate. The data is transferred to the host at a substantially constant average transfer rate. In this manner, the disk drive does not appear abnormal to a benchmark program that reads a plurality of data sectors across multiple disk surfaces.
Latest Western Digital Technologies, Inc. Patents:
1. Field of the Invention
The present invention relates to disk drives for computer systems. More particularly, the present invention relates to a disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces.
2. Description of the Prior Art
Prior art disk drives employ one or more disks with heads actuated over the respective disk surfaces (e.g., top and bottom surfaces). Each disk surface comprises a plurality of radially spaced, concentric data tracks, wherein each data track comprises a number of data sectors for storing user data. During write operations, the disk drive receives user data and a logical block address (LBA) which is mapped to an absolute block address (ABA) identifying one of the data sectors for storing the user data. The LBA to ABA mapping enables defective data sectors to be mapped to spare data sectors.
Because the disk is rotated at a constant velocity, the data rate is typically increased toward the outer diameter tracks (where the surface of the disk is spinning faster) in order to achieve a more constant linear bit density across the radius of the disk. To simplify design considerations, the data tracks are typically banded together into a number of physical zones, wherein the data rate is constant across a zone, and increased from the inner diameter zones to the outer diameter zones. This is illustrated in
Prior art disk drives typically configure the physical zones so that the zone boundaries occur at the same radial location across all disk surfaces, and so the data rate of each zone is the same across the disk surfaces. This is understood with reference to
A more recent development in disk drives is to optimize the data rate of each physical zone as well as the size of each physical zone relative to the characteristics of each head/disk interface. The radial density (tracks-per-inch (TPI)) may also be optimized for each disk surface which can also cause the size of each physical zone (and the corresponding physical zone boundaries) to differ across the disk surfaces. As a result, the data rate from surface to surface will change when reading a consecutive sequence of data sectors in a serpentine pattern that extends across the disk surfaces. This can lead to a varying host transfer rate depending on the current disk surface being accessed. When viewed from a host running a benchmark program, the varying transfer rate may suggest the disk drive is defective, when in fact nothing is wrong.
There is, therefore, a need to maintain a substantially constant average host transfer rate in a disk drive employing varying data rate data tracks across multiple disk surfaces.
SUMMARY OF THE INVENTIONAn embodiment of the present invention comprises a disk drive having a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors. When a read command is received from a host, data is read from first and second data sectors on first and second disk surfaces, respectively, in response to the read command, wherein the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate. The data is transferred to the host at a substantially constant average transfer rate.
In one embodiment, the data tracks of each disk surface are banded together into a plurality of physical zones, each physical zone having physical zone boundaries at predetermined radial locations on the disk surface, wherein each physical zone is operable to store data in data sectors at a predetermined data rate. In one embodiment, a first physical zone on the first disk surface comprise data stored in the first data sector at the first data rate, and a corresponding physical zone on the second disk surface comprises data stored in the second data sector at the second data rate.
In another embodiment, the physical zone boundaries of the disk surfaces are located at substantially the same radial locations. In one embodiment, the control circuitry is further operable to read data from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface.
In yet another embodiment, the physical zone boundaries of a first physical zone on the first disk surface are located at substantially different radial locations than the physical zone boundaries of a corresponding physical zone on the second disk surface. In one embodiment, data is read from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface, and data is read from a plurality of data sectors on the second disk surface in response to the read command without crossing a physical zone boundary on the second disk surface.
In still another embodiment, data is read from a first plurality of data sectors on the first disk surface and a second plurality of data sectors on the second disk surface, and the data is stored in a buffer memory. The data is then transferred from the buffer memory to the host at the substantially constant average transfer rate. In one embodiment, the substantially constant average transfer rate substantially equals the second data rate, and in another embodiment, the substantially constant average transfer rate is a transfer rate between the first data rate and the second data rate.
In another embodiment, data is read from a first plurality of data sectors in a first plurality of data tracks on the first disk surface and from a second plurality of data sectors in a second plurality of data tracks on the second disk surface. A first seek operation seeks the head from a current data track to a next data track on the first disk surface, and a second seek operation seeks the head from a current data track to a next data track on the second disk surface. A first rotational delay occurs after the first seek operation and prior to the control circuitry reading data from a data sector in the next data track on the first disk surface. A second rotational delay occurs after the second seek operation and prior to the control circuitry reading data from a data sector in the next data track on the second disk surface. The first rotational delay is substantially greater than the second rotational delay so that the control circuitry transfers the data to the host at the substantially constant average transfer rate. In one embodiment, each data track comprises a plurality of servo sectors separated by a servo sector rotational delay, the first rotational delay approximates a first integer multiple of the servo sector rotational delay, and the second rotational delay approximates a second integer multiple of the servo sector rotational delay.
Another embodiment of the present invention comprises a disk drive having a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors. When a write command is received from a host, write data is received from the host at a substantially constant average transfer rate in response to the write command. The write data is written to first and second data sectors on first and second disk surfaces, respectively, in response to the write command, wherein the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate.
Another embodiment of the present invention comprises a method of operating a disk drive, the disk drive comprising a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors. When a read command is received from a host, data is read from first and second data sectors on first and second disk surfaces, respectively, in response to the read command, wherein the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate. The data is transferred to the host at a substantially constant average transfer rate.
Another embodiment of the present invention comprises method of operating a disk drive, the disk drive comprising a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors. When a write command is received from a host, write data is received from the host at a substantially constant average transfer rate in response to the write command. The write data is written to first and second data sectors on first and second disk surfaces, respectively, in response to the write command, wherein the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate.
In the embodiment of
Any suitable control circuitry 20 may be employed in the embodiments of the present invention. In one embodiment, the control circuitry 20 comprises a microprocessor executing instructions, the instructions being operable to cause the microprocessor to perform the steps of
As would be well understood by those of skill in the art, embodiments of the present invention may be implemented in any suitable disk drive, including magnetic disk drives, magneto-optical disk drives, and optical disk drives (CD-ROMs, DVD-ROMs, etc.).
In one embodiment, the data tracks 18 of each disk surface are banded together into a plurality of physical zones, each physical zone having physical zone boundaries at predetermined radial locations on the disk surface, wherein each physical zone is operable to store data in data sectors at a predetermined data rate.
In one embodiment, the data sectors of one of the physical zones on a first disk surface (e.g., PZ1 on disk surface 160) store data at a first data rate, and the data sectors of a corresponding physical zone on a second disk surface (e.g., PZ1 on disk surface 161) store data at a second data rate different than the first data rate. Corresponding means PZ1 on disk surface 160 corresponds to PZ1 on disk surface 161 regardless of their vertical alignment. In yet another embodiment, the data tracks on a first disk surface (e.g., disk surface 160) comprise a first radial density, and the data tracks on a second disk surface (e.g., disk surface 161) comprise a second radial density different than the first radial density.
In still another embodiment, each disk surface comprises a plurality of servo tracks, and on at least one of the disk surfaces the radial density of the data tracks is different than the radial density of the servo tracks. This embodiment is illustrated in
In one embodiment, the control circuitry 20 is further operable to identify a plurality of clusters, wherein each cluster comprises a first number of servo tracks and a second number of data tracks, and the first number of servo tracks is different than the second number of data tracks. This embodiment is also illustrated in
Any suitable radial density may be selected for the data tracks in step increments, with the minimum distance between data tracks being the distance between servo tracks (256 steps). This allows the data track density (tracks per inch) as well as the linear density (bits per inch) to be optimized for each head/surface, while enabling a convenient mapping of host block addresses to target data sectors.
Similar to the embodiment of
Any suitable data transfer rate may be employed in the embodiments of the invention, and in one embodiment, the data transfer rate is selected somewhere between the highest and lowest data rates out of all the disk surfaces. In addition, the host data transfer rate may vary depending on the physical or logical zone being accessed for a given read operation. In one embodiment, the control circuitry 20 selects a large group of data sectors to transfer at a time and employs a suitable delay between each host transfer to ensure there is always a sufficient number of data sectors buffered in the buffer memory to prevent a data transfer rate underflow condition. In another embodiment, the control circuitry 20 selects a lower number of data sectors to transfer at a time with a suitable delay between each host transfer such that the buffer memory may overflow, particularly when reading data sectors from a high data rate disk surface, thereby causing the control circuitry 20 to “slip” a revolution of the disk in order to reread the current data track. In this embodiment, the buffer memory stores a sufficient number of data sectors to prevent a data transfer rate underflow condition during the slipped revolution.
In the embodiment of
In the embodiments of the present invention, the host transfer rate remains substantially constant on average for a given read operation within any suitable tolerance, such as within a predetermined percentage of deviation. In one embodiment, the average transfer rate remains within the tolerance of a benchmark program so that the benchmark program will not consider the disk drive abnormal even though the average transfer rate may vary slightly for a given read command.
Claims
1. A disk drive comprising:
- (a) a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors; and
- (b) control circuitry operable to: receive a read command from a host; read data from first and second data sectors on first and second disk surfaces, respectively, in response to the read command, wherein: the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate; transfer the data to the host at a substantially constant average transfer rate, wherein the substantially constant average transfer rate is a transfer rate between the first data rate and the second data rate; read the data from a first plurality of data sectors in a first plurality of data tracks on the first disk surface and from a second plurality of data sectors in a second plurality of data tracks on the second disk surface; and perform a first seek operation to seek a head from a current data track to a next data track on the first disk surface, and a second seek operation to seek the head from a current data track to a next data track on the second disk surface; wherein: a first rotational delay occurs after the first seek operation and prior to the control circuitry reading data from a data sector in the next data track on the first disk surface; a second rotational delay occurs after the second seek operation and prior to the control circuitry reading data from a data sector in the next data track on the second disk surface; and the first rotational delay is substantially greater than the second rotational delay so that the control circuitry transfers the data to the host at the substantially constant average transfer rate.
2. The disk drive as recited in claim 1, wherein the data tracks of each disk surface are banded together into a plurality of physical zones, each physical zone having physical zone boundaries at predetermined radial locations on the disk surface, wherein each physical zone is operable to store data in data sectors at a predetermined data rate.
3. The disk drive as recited in claim 2, wherein:
- a first physical zone on the first disk surface comprises data stored in the first data sector at the first data rate; and
- a corresponding physical zone on the second disk surface comprises data stored in the second data sector at the second data rate.
4. The disk drive as recited in claim 2, wherein the physical zone boundaries of the disk surfaces are located at substantially the same radial locations.
5. The disk drive as recited in claim 4, wherein the control circuitry is further operable to read data from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface.
6. The disk drive as recited in claim 2, wherein the physical zone boundaries of a first physical zone on the first disk surface are located at substantially different radial locations than the physical zone boundaries of a corresponding physical zone on the second disk surface.
7. The disk drive as recited in claim 6, wherein the control circuitry is further operable to:
- read data from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface; and
- read data from a plurality of data sectors on the second disk surface in response to the read command without crossing a physical zone boundary on the second disk surface.
8. The disk drive as recited in claim 1, wherein:
- the control circuitry is further operable to read the data from a first plurality of data sectors on the first disk surface and a second plurality of data sectors on the second disk surface;
- the disk drive further comprises a buffer memory operable to store the data read from the first and second pluralities of data sectors; and
- the control circuitry is further operable to transfer the data from the buffer memory to the host at the substantially constant average transfer rate.
9. The disk drive as recited in claim 1, wherein:
- each data track comprises a plurality of servo sectors separated by a servo sector rotational delay;
- the first rotational delay approximates a first integer multiple of the servo sector rotational delay; and
- the second rotational delay approximates a second integer multiple of the servo sector rotational delay.
10. The disk drive as recited in claim 1, wherein the control circuitry is operable to read data from a single disk surface at a time.
11. A disk drive comprising:
- (a) a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors;
- (b) control circuitry operable to: receive a write command from a host; receive write data from the host at a substantially constant average transfer rate in response to the write command; and write the write data to first and second data sectors on first and second disk surfaces, respectively, in response to the write command, wherein: the first data sector stores data at a first data rate; the second data sector stores data at a second data rate substantially less than the first data rate; and the substantially constant average transfer rate is a transfer rate between the first data rate and the second data rate; read the data from a first plurality of data sectors in a first plurality of data tracks on the first disk surface and from a second plurality of data sectors in a second plurality of data tracks on the second disk surface; and perform a first seek operation to seek a head from a current data track to a next data track on the first disk surface, and a second seek operation to seek the head from a current data track to a next data track on the second disk surface; wherein: a first rotational delay occurs after the first seek operation and prior to the control circuitry reading data from a data sector in the next data track on the first disk surface; a second rotational delay occurs after the second seek operation and prior to the control circuitry reading data from a data sector in the next data track on the second disk surface; and the first rotational delay is substantially greater than the second rotational delay so that the control circuitry transfers the data to the host at the substantially constant average transfer rate.
12. The disk drive as recited in claim 11, wherein the control circuitry is operable to write data to a single disk surface at a time.
13. A method of operating a disk drive, the disk drive comprising a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors, the method comprising the steps of:
- receiving a read command from a host;
- reading data from first and second data sectors on first and second disk surfaces, respectively, in response to the read command, wherein: the first data sector stores data at a first data rate, and the second data sector stores data at a second data rate substantially less than the first data rate;
- transferring the data to the host at a substantially constant average transfer rate, wherein the substantially constant average transfer rate is a transfer rate between the first data rate and the second data rate;
- reading data from a first plurality of data sectors in a first plurality of data tracks on the first disk surface and from a second plurality of data sectors in a second plurality of data tracks on the second disk surface; and
- performing a first seek operation to seek a head from a current data track to a next data track on the first disk surface, and a second seek operation to seek the head from a current data track to a next data track on the second disk surface, wherein: a first rotational delay occurs after the first seek operation and prior to reading data from a data sector in the next data track on the first disk surface; a second rotation delay occurs after the second seek operation and prior to reading data from a data sector in the next data track on the second disk surface; and the first rotational delay is substantially greater than the second rotational delay so that the data is transferred to the host at the substantially constant average transfer rate.
14. The method as recited in claim 13, wherein the data tracks of each disk surface are banded together into a plurality of physical zones, each physical zone having physical zone boundaries at predetermined radial locations on the disk surface, wherein each physical zone is operable to store data in data sectors at a predetermined data rate.
15. The method as recited in claim 14, wherein:
- a first physical zone on the first disk surface comprises data stored in the first data sector at the first data rate; and
- a corresponding physical zone on the second disk surface comprises data stored in the second data sector at the second data rate.
16. The method as recited in claim 14, further comprising reading data from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface.
17. The method as recited in claim 14, wherein the physical zone boundaries of a first physical zone on the first disk surface are located at substantially different radial locations than the physical zone boundaries of a corresponding physical zone on the second disk surface.
18. The method as recited in claim 17, wherein:
- the step of reading data from the first data sectors comprises the step of reading data from a plurality of data sectors on the first disk surface in response to the read command without crossing a physical zone boundary on the first disk surface; and
- the step of reading data from the second data sectors comprises the step of reading data from a plurality of data sectors on the second disk surface in response to the read command without crossing a physical zone boundary on the second disk surface.
19. The method as recited in claim 13, wherein:
- the step of reading the data from the first and second data sectors comprises the step of reading the data from a first plurality of data sectors on the first disk surface and a second plurality of data sectors on the second disk surface;
- the disk drive further comprises a buffer memory operable to store the data read from the first and second pluralities of data sectors; and
- the step of transferring the data to the host comprises the step of transferring the data from the buffer memory to the host at the substantially constant average transfer rate.
20. The method as recited in claim 13, wherein:
- each data track comprises a plurality of servo sectors separated by a servo sector rotational delay;
- the first rotational delay approximates a first integer multiple of the servo sector rotational delay; and
- the second rotational delay approximates a second integer multiple of the servo sector rotational delay.
21. The method as recited in claim 13, wherein the step of reading data comprising reading data from a single disk surface at a time.
22. A method of operating a disk drive, the disk drive comprising a plurality of disk surfaces, wherein each disk surface comprises a plurality of data tracks, and each data track comprises a plurality of data sectors, the method comprising the steps of:
- receiving a write command from a host;
- receiving write data from the host at a substantially constant average transfer rate in response to the write command;
- writing the write data to first and second data sectors on first and second disk surfaces, respectively, in response to the write command, wherein: the first data sector stores data at a first data rate, the second data sector stores data at a second data rate substantially less than the first data rate; and the substantially constant average transfer rate is a transfer rate between the first data rate and the second data rate;
- reading data from a first plurality of data sectors in a first plurality of data tracks on the first disk surface and from a second plurality of data sectors in a second plurality of data tracks on the second disk surface; and
- performing a first seek operation to seek a head from a current data track to a next data track on the first disk surface, and a second seek operation to seek the head from a current data track to a next data track on the second disk surface, wherein: a first rotational delay occurs after the first seek operation and prior to reading data from a data sector in the next data track on the first disk surface; a second rotation delay occurs after the second seek operation and prior to reading data from a data sector in the next data track on the second disk surface; and the first rotational delay is substantially greater than the second rotational delay so that the data is transferred to the host at the substantially constant average transfer rate.
23. The method as recited in claim 22, wherein the step of writing data comprising writing data to a single disk surface at a time.
5510905 | April 23, 1996 | Birk |
5596458 | January 21, 1997 | Emo et al. |
5710943 | January 20, 1998 | Burton et al. |
5812755 | September 22, 1998 | Kool et al. |
5870237 | February 9, 1999 | Emo et al. |
5949603 | September 7, 1999 | Brown et al. |
6005725 | December 21, 1999 | Emo et al. |
6091559 | July 18, 2000 | Emo et al. |
6108286 | August 22, 2000 | Eastty |
6130796 | October 10, 2000 | Wiselogel |
6137644 | October 24, 2000 | Hetzler et al. |
6172839 | January 9, 2001 | Ahn |
6182250 | January 30, 2001 | Ng et al. |
6195218 | February 27, 2001 | Guttmann et al. |
6256160 | July 3, 2001 | Liikanen et al. |
6396654 | May 28, 2002 | Jeong et al. |
6466387 | October 15, 2002 | Ogasawara et al. |
6493176 | December 10, 2002 | Deng et al. |
6557058 | April 29, 2003 | Jackson |
6560052 | May 6, 2003 | Ng et al. |
7463438 | December 9, 2008 | Kosugi et al. |
20020039246 | April 4, 2002 | Ding et al. |
20040136104 | July 15, 2004 | Chiao et al. |
20040179292 | September 16, 2004 | Zayas et al. |
07006492 | January 1995 | JP |
Type: Grant
Filed: Nov 23, 2005
Date of Patent: Mar 13, 2012
Assignee: Western Digital Technologies, Inc. (Irvine, CA)
Inventors: Gregory B. Thelin (Garden Grove, CA), Dalwinder Singh (Irvine, CA)
Primary Examiner: Daniell L Negron
Application Number: 11/287,515
International Classification: G11B 5/596 (20060101); G11B 5/09 (20060101); G11B 20/10 (20060101);