SHINGLED MAGNETIC RECORDING DISK DRIVE WITH COMPENSATION FOR THE EFFECT OF FAR TRACK ERASURE (FTE) ON ADJACENT DATA BANDS
A shingled magnetic recording (SMR) disk drive has concentric shingled data tracks having data sectors with physical block addresses (PBAs), with the tracks being arranged in annular bands separated by annular inter-band gaps. The disk drive also has an on-disk extended cache region and may have writable inter-band cache (IBC) tracks in the inter-band gaps. A count is maintained in memory for each band and each IBC, and the count is incremented for each writing to a band or an IBC. When a count for a band or IBC reaches a predetermined threshold, the data is read from the tracks in the boundary region of the adjacent band that are within the range of the FTE and that data is then written to the extended cache. The FTE-affected tracks are then invalidated, meaning that PBAs can no longer be assigned to the data sectors in those tracks.
1. Field of the Invention
This invention relates generally to magnetic recording hard disk drives (HDDs), and more particularly to a shingled magnetic recording (SMR) HDD that compensates for the effect of far track erasure (FTE) on data tracks in the boundary regions of data bands.
2. Description of the Related Art
Magnetic recording disk drives that use “shingle writing”, also called “shingled recording” or “shingled magnetic recording” (SMR), have been proposed, for example as described in U.S. Pat. No. 6,185,063 B1 and U.S. Pat. No. 6,967,810 B2. In SMR, the write head, which is wider than the read head in the cross-track direction, writes magnetic transitions by making a plurality of consecutive circular paths that partially overlap. The non-overlapped portions of adjacent paths form the shingled data tracks, which are thus narrower than the width of the write head. The data is read back by the narrower read head. The narrower shingled data tracks thus allow for increased data density. The shingled data tracks are arranged on the disk as annular bands separated by annular inter-band gaps or guard bands.
The writing of data to an entire band may occur when new data from the host is stored in memory and then written to a band for the first time. It may also occur when a portion of the data in a band is modified, i.e., a “read-modify-write” operation in which all the corresponding data in a band is read and stored in memory, then a portion is modified with the host-provided new write data, and finally all the corresponding data is written data back to the band. The writing of data to an entire band or bands may also occur when a band or bands are “cleaned” or “de-fragmented” to reclaim free space, i.e., the data in one or more bands is read and stored in memory and then re-written to the same band or a new band.
A problem in both conventional HDDs and SMR HDDs is wide-area track erasure (WATER) or far track encroachment or erasure (FTE). The write field from the write head is wider than a data track so when the write head is writing to a track, the outer portions of the write field (called the fringe field) overlap onto tracks other than the track being written. Data degradation due to fringe fields is not limited to the tracks immediately adjacent the track being written, but can extend over a range of tracks relatively far from the track being written. This FTE is particularly noticeable with write heads that have side shields. FTE may not affect tracks symmetrically on both sides of the track being written. Tracks on one side may encounter more pronounced FTE effects due to the write head shield design or due to read-write head skew. FTE is described by Liu et al., “Characterization of Skip or Far Track Erasure in a Side Shield Design”, IEEE TRANSACTIONS ON MAGNETICS, VOL. 45, NO. 10, OCTOBER 2009, pp. 3660-3663.
In a SMR disk drive, FTE can occur on the tracks in the boundary region of a band, i.e., those tracks near an inter-band gap, when data is written to tracks in the boundary region of an adjacent band. In U.S. applications Ser. Nos. 13/423,177 and 13/423,178, both filed Mar. 17, 2012 and assigned to the same assignee as this invention, a counter is maintained for each data band and when data is written to the boundary region of a band or to an on-disk cache located between two data bands, the counters associated with adjacent bands are incremented by a value related to the previously determined FTE effect. When the count for a band reaches a predetermined threshold, the data in that band is rewritten. The data is rewritten before the FTE effects can build up, so the reliability of the data is improved.
What is needed is a SMR HDD that compensates for the FTE effect on adjacent bands without the need to continually read data from and rewrite data to bands affected by FTE.
SUMMARY OF THE INVENTIONThe invention relates to a SMR HDD that essentially eliminates the effect of far track erasure (FTE) in the boundary regions of annular data bands caused by writing in the boundary regions of adjacent data bands, but without the need to continually read data from and rewrite data to bands affected by the FTE. The SMR disk has concentric shingled data tracks having data sectors with physical block addresses (PBAs), with the tracks being arranged in annular bands separated by annular inter-band gaps. The disk drive also has an extended cache region which is a plurality of concentric data tracks separated from the data bands, and at least some of the inter-band gaps may also have writable inter-band cache (IBC) tracks. A count is maintained in memory for each band and each IBC, and the count is incremented for each writing to a band or an IBC. When a count for a band or IBC reaches a predetermined threshold, such as a predetermined number within a predetermined time period, the data is read from the tracks in the boundary region of the adjacent band that are within the range of the FTE and that data is then written to the extended cache. The FTE-affected tracks are then invalidated, meaning that PBAs can no longer be assigned to the data sectors in those tracks.
For a fuller understanding of the nature and advantages of the present invention, reference should be made to the following detailed description taken together with the accompanying figures.
In this invention the disk drive uses shingled magnetic recording (SMR), also called shingled writing. Thus
Some of the inter-band gaps may contain writeable tracks that serve as an on-disk inter-band cache (IBC). For example, gaps 185, 187 may contain a group of several, e.g., 2-5, cache tracks with a non-writeable guard track between the IBC and each adjacent data band.
As is well known in the art, the data in each shingled data track in each of the bands is also divided into a number of contiguous physical data sectors (not shown). Each data sector is preceded by a synchronization (sync) field, which is detectable by the read head for enabling synchronization of reading and writing the data bits in the data sectors. Also, each shingled data track in each of the bands includes a plurality of circumferentially or angularly-spaced servo sectors (not shown) that contain positioning information detectable by the read head for moving the read/write head 109 to the shingled data tracks and maintaining the read/write head 109 on the tracks. The servo sectors in each shingled data track are typically aligned circumferentially with the servo sectors in the other shingled data tracks so that they extend across the shingled data tracks in a generally radial direction.
The disk drive 100 also includes a hard disk controller (HDC) 212 that can include and/or be implemented by a microcontroller or microprocessor. The controller 212 runs a computer program that is stored in memory 214 and that embodies the logic and algorithms described further below. The memory 214 may be separate from controller 212 or as embedded memory on the controller chip. The computer program may also be implemented in microcode or other type of memory accessible to the controller 212. The controller 212 is connected to a host interface 216 that communicates with the host computer 218. The host interface 216 may be any conventional computer-HDD interface, such as Serial ATA (Advanced Technology Attachment) or SAS (Serial Attached SCSI). The electronics associated with disk dive 100 also include servo electronics 240. In the operation of disk drive 100, the read/write channel 220 receives signals from the read head and passes servo information from the servo sectors to servo electronics 240 and data signals from the data sectors to controller 212. Servo electronics 240 typically includes a servo control processor that uses the servo information from the servo sectors to run a control algorithm that produces a control signal. The control signal is converted to a current that drives actuator 130 to position the read/write head 109.
In the operation of disk drive 100, the controller 212 acts as a data controller to transfer blocks of write data from the host computer 218 through the read/write channel 220 for writing to the disk 10 by the write head, and to transfer blocks of read data from the disk 10 back to the host computer 218. Interface 216 receives commands from the host computer 218 for reading or writing blocks of data from or to the data sectors. The host computer 218 uses logical block addresses (LBAs) in commands to read and write blocks of data without regard for actual locations (physical block addresses or PBAs) used internally by the HDD. The controller 212 receives a list of LBAs from interface 216 and translates them into a set of PBAs that uniquely identify the disk surface, track and data sector. The PBAs are passed to servo electronics 240 to enable positioning read/write head 109 to the appropriate data sector.
Disk drives typically include, in addition to the rotating disk storage, solid state memory (referred to as “cache”) that temporarily holds data before it is transferred between the host computer and the disk storage. The conventional cache is dynamic random access memory (DRAM), a volatile form of memory that can undergo a significant number of write/erase cycles and that has a high data transfer rate. Disk drives may also include nonvolatile memory. One type of nonvolatile memory is “flash” memory, which stores information in an array of floating gate transistors, called “cells” which can be electrically erased and reprogrammed in blocks. Thus in disk drive 100, the controller 212 also communicates with volatile memory 250 (shown as DRAM) and optional nonvolatile memory 252 (shown as FLASH) via data bus 254.
The SMR disk drive of this invention also includes on-disk cache in the form of IBCs and an E-cache 190. Data is transferred from the DRAM cache 250 and written directly to the E-cache 190 or first to an IBC and then to the E-cache 190. Then, during disk drive idle times, the data is read from the IBC and written to the E-cache 190 and then from the E-cache to the data bands. In an SMR disk drive the PBA of a LBA can change frequently depending on write-history. For example, background processes such as defragmentation of the data bands moves data sectors from one PBA to another but the LBA remains the same. The LBA-PBA mapping can change with every write operation because the controller 212 dynamically determines the physical location on the disk where the host data for an LBA will be written. Thus the PBA for a LBA may change dynamically between an IBC, the E-cache or a data band. The data for the same LBA will be written to a different location the next time the host LBA is updated. The dynamic LBA-PBA mapping system for a SMR disk drive that uses IBCs and an E-cache is described in U.S. application Ser. No. 13/200,418 filed Sep. 22, 2011 and assigned to the same assignee as this application. The '418 application refers to a data band, an IBC and the
E-cache as an i-region, a write-twice cache (W2C) and an E-region, respectively, and is hereby incorporated by reference.
In general, in SMR, whenever any portion of the data in an annular band is to be re-written or updated, all of the shingled data tracks in that annular band that were written after the shingled data track being updated are also re-written. The writing of data to an entire band may occur when new data from the host is stored in memory and then written to a band for the first time. It may also occur when a portion of the data in a band is modified, i.e., a “read-modify-write” operation in which units of data, such as single-track units, are read and stored in memory, then modified and written back to the band. The writing of data to an entire band or bands may also occur when a band or bands are “cleaned” or “de-fragmented” to reclaim free space, i.e., the data in one or more bands is read and stored in memory and then re-written to the same band or a new band.
A problem in both conventional HDDs and SMR HDDs is wide-area track erasure (WATER) or far track encroachment or erasure (FTE). The write field from the write head is wider than a data track so when the write head is writing to a track, the outer portions of the write field (called the fringe field) overlap onto tracks other than the track being written. The fringe fields can extend over a range of tracks relatively far from the track being written. FTE generally translates into an increase in bit error rate (BER), resulting in degradation of the performance of the disk drive. In some severe cases, poor BER will lead to a significant increase of unrecoverable data errors. FTE is particularly noticeable with write heads that have side shields. FTE may not affect tracks symmetrically on both sides of the track being written. Tracks on one side may encounter more pronounced FTE effects due to the write head shield design or due to read-write head skew. In a SMR disk drive, FTE can occur on the tracks in the boundary region of a band, i.e., those tracks near an inter-band gap, when data is written to tracks in the boundary region of an adjacent band and when data is written to tracks in an IBC.
In one approach for determining the relative FTE effects on the tracks within a range of tracks of the track being written, the error rate is used to determine the count increments. A predetermined data pattern is written to all the tracks within a range of tracks from a track (designated track 0). An initial “bit” error rate (BER) is then measured for each track in the range of tracks. In one well-known approach for measuring BER, the HDD's error correction circuitry is deactivated, for example by setting to zero the value in the error correction register for the maximum number of errors to correct, and then the data pattern is read back and the number of bytes in error is counted. Since there must be at least one bit in error for each byte in error, this is the initial BER for each track in the range. Then track 0 is written a very large number of times (for example 100,000 writes). The BER is then again measured for all tracks in the range. The degradation in BER is the difference between the measured BER after the writes to track 0 and the initial BER.
In the previously cited '177 and '178 applications, assigned to the same assignee as this invention, a counter is maintained for each data band and when data is written to the boundary region of a band or to an IBC, the counters associated with adjacent bands are incremented by a value related to the previously measured BER degradation values. When the count for a band reaches a predetermined threshold, the data in that band is rewritten. The data is rewritten before the FTE effects can build up, so the reliability of the data is improved.
In certain host computer applications the workload can become very localized on certain areas of the disk, i.e., the heads can be reading and writing to the same data bands, which can be considered “hot” data bands. This means that if the method for compensating for FTE effects is to refresh data bands adjacent to a hot data band, there will be excessive read/write activity required to continually refresh these data bands, which will adversely affect the performance of the disk drive.
In this invention, for every writing to a band (or to an IBC if the disk drive uses IBCs), a counter is incremented. When the count reaches a predetermined value, the data is read from the tracks that are within the FTE range in adjacent bands and written to the E-cache. Those tracks in the adjacent bands are then invalidated, i.e., they are no longer assigned as PBAs to LBAs. The method of the invention will be explained with
In
Each time band 186 is written, i.e., de-fragmented or refreshed, a counter is incremented. When a predetermined threshold is reached, indicating that band 186 is a “hot” band, the data from tracks affected by FTE in the two adjacent bands, i.e., tracks 1-7 in BR2 of band 184 and tracks 1-7 in BR1 of band 188, is read and written to the E-cache. Those tracks are then invalidated, meaning that they are no longer used as PBAs.
The method may also be used for a SMR disk drive that uses on-disk inter-band caches (IBCs). In
Each time IBC 185′ is written, a counter is incremented. When a predetermined threshold is reached, indicating that IBC 185′ is a “hot” IBC, the data from tracks affected by FTE in the two adjacent bands, i.e., tracks 1-7 in BR2 of band 184 and tracks 1-7 in BR1 of band 186, is read and written to the E-cache. Those tracks are then invalidated, meaning that they are no longer used as PBAs.
During operation of the HDD, the controller (HDC 12 in
Because a HDD typically includes multiple disk surfaces, each with an associated read/write head, and because not all heads will have the same exact write profiles and thus not generate the same FTE effects, the FTE range, that is the values of +N and −N, may be different for each head and its associated disk surface. Also, because of head skew, the write profile and thus the FTE effect for a particular head may vary depending on the radial position of the head, so a head may have a set of N values. Thus a table may be maintained in memory that includes the values of N, or sets of values of N, for each head.
The operation of the HDD as described above may be implemented as a set of computer program instructions stored in memory and executable by a processor, such as the HDC, or a separate controller or microprocessor in the HDD. The controller performs logical and arithmetic operations based on the program instructions stored in memory, and is thus capable of performing the functions described above and represented in the figures.
While the present invention has been particularly shown and described with reference to the preferred embodiments, it will be understood by those skilled in the art that various changes in form and detail may be made without departing from the spirit and scope of the invention.
Accordingly, the disclosed invention is to be considered merely as illustrative and limited in scope only as specified in the appended claims.
Claims
1. A shingled magnetic recording disk drive comprising:
- a magnetic recording disk having a recording surface with a plurality of concentric shingled data tracks arranged in annular bands separated by annular inter-band gaps, each band having a boundary region of tracks adjacent a gap, whereby each gap is located between adjacent boundary regions, the recording surface also having an extended cache region comprising a plurality of concentric data tracks separated from the data bands;
- a write head associated with said disk surface for generating a magnetic write field to write data to the tracks;
- a read head for reading data written in the tracks;
- a controller for controlling the writing of data by the write head to the tracks; and
- memory coupled to the controller and containing a program of instructions readable by the controller for minimizing the effect of encroachment of the write field on tracks in a band when data is being written outside the band, the program of instructions undertaking the method acts comprising: (a) maintaining in memory a count for each band; (b) for each writing of data to a band, incrementing the count for that band; and (c) when a count reaches a predetermined threshold for a band, reading the data from the tracks in the boundary region of an adjacent band; (d) writing the data read from the tracks in the boundary region of said adjacent band to the extended cache region; and (e) invalidating the tracks in the boundary region of said adjacent band from which the data was read.
2. The disk drive of claim 1 wherein a band has an inside-diameter (ID) adjacent band and an outside-diameter (OD) adjacent band, and wherein the program of instructions comprises undertaking method acts (c) through (e) for the boundary region of the ID adjacent band and the boundary region of the OD adjacent band.
3. The disk drive of claim 1 wherein the effect of encroachment of the write field on data tracks is within a range of N tracks, wherein act (c) comprises reading N or fewer tracks, and wherein act (e) comprises invalidating N or fewer tracks.
4. The disk drive of claim 3 wherein the inter-band gap consists of M tracks, wherein act (c) comprises reading N-M tracks, and wherein act (e) comprises invalidating N-M tracks.
5. The disk drive of claim 1 wherein the controller assigns physical block addresses (PBAs) to logical block addresses (LBA) for blocks of data to be written, and wherein invalidating said tracks comprises preventing the assignment of PBAs associated with said tracks.
6. The disk drive of claim 1 wherein said predetermined threshold comprises a predetermined number within a predetermined time period.
7. The disk drive of claim 1 wherein a plurality of inter-band gaps each contains at least one writable inter-band cache (IBC) track and wherein the method acts further comprise:
- (f) maintaining in memory a count for each IBC;
- (g) for each writing of data to an IBC, incrementing the count for that IBC; and
- (h) when a count reaches a predetermined threshold for an IBC, reading the data from the tracks in the boundary region of a band adjacent to said IBC;
- (i) writing the data read from the tracks in the boundary region of said adjacent band to the extended cache region; and
- (j) invalidating the tracks in the boundary region of said adjacent band from which the data was read.
8. The disk drive of claim 7 wherein an IBC has an inside-diameter (ID) adjacent band and an outside-diameter (OD) adjacent band, and wherein the program of instructions comprises undertaking method acts (h) through (j) for the boundary region of the ID adjacent band and the boundary region of the OD adjacent band.
9. The disk drive of claim 7 wherein the effect of encroachment of the write field on data tracks is within a range of N tracks, wherein act (h) comprises reading N or fewer tracks, and wherein act (j) comprises invalidating N or fewer tracks.
10. The disk drive of claim 9 wherein each inter-band gap includes P guard tracks between the IBC and the boundary of an adjacent band, wherein act (h) comprises reading N-P tracks, and wherein act (i) comprises invalidating N-P tracks.
11. The disk drive of claim 7 wherein said predetermined threshold comprises a predetermined number within a predetermined time period.
12. The disk drive of claim 1 wherein the disk drive has a plurality of disk surfaces, each having a plurality of concentric data tracks, and associated write heads, and wherein the program of instructions comprises undertaking method acts (a) through (c) for each disk surface.
13. The disk drive of claim 1 wherein the memory is nonvolatile memory.
14. A shingled magnetic recording disk drive comprising:
- a magnetic recording disk having a recording surface with a plurality of concentric shingled data tracks having data sectors with physical block addresses (PBAs), the tracks being arranged in annular bands separated by annular inter-band gaps, each band having a boundary region of tracks adjacent a gap, whereby each gap is located between adjacent boundary regions, the recording surface also having an extended cache region comprising a plurality of concentric data tracks separated from the data bands;
- a write head associated with said disk surface for generating a magnetic write field to write data to the tracks;
- a read head for reading data written in the tracks;
- a controller for assigning physical block addresses (PBAs) to logical block addresses (LBAs) for blocks of data to be written to the data sectors by the write head; and
- memory coupled to the controller and containing a program of instructions readable by the controller for minimizing the effect of encroachment of the write field on tracks in a band when data is being written outside the band, the program of instructions undertaking the method acts comprising: (a) maintaining in memory a count for each band; (b) for each writing of data to a band, incrementing the count for that band; and (c) when a count reaches a predetermined number within a predetermined time period for a band, reading the data from the tracks in the boundary region of an adjacent band; (d) writing the data read from the tracks in the boundary region of said adjacent band to the extended cache region; and (e) preventing the assignment of PBAs to the data sectors in the tracks in the boundary region of said adjacent band from which the data was read.
15. The disk drive of claim 14 wherein a band has an inside-diameter (ID) adjacent band and an outside-diameter (OD) adjacent band, and wherein the program of instructions comprises undertaking method acts (c) through (e) for the boundary region of the ID adjacent band and the boundary region of the OD adjacent band.
16. The disk drive of claim 14 wherein the effect of encroachment of the write field on data tracks is within a range of N tracks, wherein act (c) comprises reading N or fewer tracks, and wherein act (e) comprises preventing the assignment of PBAs in N or fewer tracks.
17. The disk drive of claim 16 wherein the inter-band gap consists of M tracks, wherein act (c) comprises reading N-M tracks, and wherein act (e) comprise preventing the assignment of PBAs in N-M tracks.
18. A shingled magnetic recording disk drive comprising:
- a magnetic recording disk having a recording surface with a plurality of concentric shingled data tracks arranged in annular bands separated by annular inter-band gaps, each band having a boundary region of tracks adjacent a gap whereby each gap is located between adjacent boundary regions, and wherein a plurality of inter-band gaps each contains at least one writable inter-band cache (IBC), the recording surface also having an extended cache region comprising a plurality of concentric data tracks separated from the data bands;
- a write head associated with said disk surface for generating a magnetic write field to write data to the tracks;
- a read head for reading data written in the tracks;
- a controller for controlling the writing of data by the write head to the tracks; and
- memory coupled to the controller and containing a program of instructions readable by the controller for minimizing the effect of encroachment of the write field on tracks in a band when data is being written to an IBC, the program of instructions undertaking the method acts comprising:
- (a) maintaining in memory a count for each IBC;
- (b) for each writing of data to an IBC, incrementing the count for that IBC; and
- (c) when a count reaches a predetermined threshold for an IBC, reading the data from the tracks in the boundary region of a band adjacent to said IBC;
- (d) writing the data read from the tracks in the boundary region of said adjacent band to the extended cache region; and
- (e) invalidating the tracks in the boundary region of said adjacent band from which the data was read.
19. The disk drive of claim 18 wherein said predetermined threshold comprises a predetermined number within a predetermined time period.
Type: Application
Filed: Jun 4, 2012
Publication Date: Dec 5, 2013
Inventors: Zvonimir Z. Bandic (San Jose, CA), Damien Cyril Daniel Le Moal (Tokyo), Shad Henry Thorstenson (Rochester, MN)
Application Number: 13/487,310
International Classification: G11B 21/02 (20060101);