Error detection/correction and fault detection/recovery – Pulse or data error handling – Digital data error correction
Reexamination Certificate
1999-02-26
2002-06-25
Tu, Christine T. (Department: 2133)
Error detection/correction and fault detection/recovery
Pulse or data error handling
Digital data error correction
C714S718000
Reexamination Certificate
active
06412089
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to disk fault correction techniques for storage devices and, more particularly, to a method of correcting disk drive media faults while the hard drive is idle.
2. Description of Related Art
The vast majority of personal computer (PC) systems available today come equipped with a peripheral data storage device such as a hard disk (HD) drive. Hard disks are comprised of rigid platters, made of aluminum alloy or a mixture of glass and ceramic, covered with a magnetic coating. Platters vary in size and hard disk drives generally come in two form factors, 5.25 in or 3.5 in. Typically, two or more platters are stacked on top of each other with a common spindle that turns the whole assembly at several thousand revolutions per minute. There is a gap between the platters, making room for a magnetic read/write head, mounted on the end of an actuator arm. There is a read/write head for each side of each platter, mounted on arms which can move them radially. The arms are moved in unison by a head actuator, which contains a voice coil—an electromagnetic coil that can move a magnet very rapidly.
Each platter is double-sided and divided into tracks. Tracks are concentric circles around the central spindle. Tracks physically above each other on the platters are grouped together into a cylinder. Cylinders are further divided into sectors. Depending on the disk drive vendor, a sector is typically comprised of 512 bytes of user data, followed by a number or number of cross-check bytes, a number of error correction code (ECC) bytes and other vendor specific diagnostic information. Thus, these devices are complex electro-mechanical devices and, as such, can suffer performance degradation or failure due to a single event or a combination of events.
There are generally two general classes of failures that can occur in disk drives. The first class is the “catastrophic” type of failure which causes the drive to quickly and unpredictably fail. These failures can be caused by static electricity, handling damage, or thermal-related solder problems. Probably, the only way to prevent these failures, if at all, is through more controlled manufacturing and handling processes. Certainly, there is little hope of predicting these types of failures once the drive it put in service.
The second class of failures result from the gradual decay of other electrical and/or mechanical components within the drive after it is put in service. Before this larger class of failures is discussed, it is important to understand some of the correction schemes built into the disk drives to overcome the most common failure—media defects.
Most drives include an error detection mechanism to catch errors during read operations. While this type of defect correction is adequate to catch defects as the sectors are read, it does nothing to catch latent defects in sectors that have not been read. This is important since sometimes data is not read back from the disk for a very long time after it has been written. As time passes, defects sometimes grow past the point of correctability. Thus, this technique is only adequate for on the fly correcting.
Historically, there are also several ways for users to manage this class of failure:
1. Do nothing but wait for the drive to fail and then replace the drive. This is the easiest but will cause much down time and lost data when the drive fails.
2. Practice periodic preventative maintenance and simply replace the drive before it fails. This is somewhat effective in reducing unscheduled down time but suffers from the high cost of replacing drives before their life has been exhausted.
3. Use redundancy or backups. This technique is also effective in reducing unscheduled down time. It does not require the drives to be replaced before they fail, but suffers from the cost of having duplicate or additional hardware.
4. Rely on the disk drives built in error correction schemes to make corrections as the data is read.
5. Use Predictive Failure Analysis (PFA). Because this second class of failure can occur over time, it is possible to predict these types of failures by monitoring conditions of the drive.
Disk Drive Error Correction and Detection
Because disk drives are inherently defect prone, error correction scans are performed on the disk drives at the factory for marking any defective sectors before the drives are put into service. Disk drives also have error checking built in for field use. Each sector includes a number of ECC bytes and cross-check bytes. The cross-check bytes are used to double check the main ECC correction and reduce the probability of miscorrection. The cross-check and ECC bytes are computed and appended to the user data when the sector is first written with data
Each time the drive reads a sector of data, it generates a new set of ECC and cross-check bytes based on the 512 bytes of data contained within the sector. The new set of cross-check and ECC bytes is compared with the corresponding bytes originally written in that particular sector. This comparison process results in bytes that are known as syndromes. If all of the syndrome values are zero, the data has been read with no errors, and the sector of data is transferred to a host computer. If any of the syndromes are non-zero, an error has occurred. The type of correction applied by the drive then depends on the nature and extent of the error and the vendor's proprietary techniques.
When a data error occurs, the disk drive checks to see if the error is correctable on the fly. If correctable on the fly, the error is corrected and the data is transferred to the host system. Errors corrected in this manner are invisible to the host system.
If the data is not correctable on the fly, the sector is typically re-read a number of times in an attempt to read the data correctly before applying more sophisticated correction algorithms. This strategy prevents invoking correction on non-repeatable or soft errors. Each time a sector in error is re-read, a set of ECC syndromes is computed. If all of the syndrome values are zero, the data was read with no errors, and the sector is transferred to the host system. If any of the syndromes are not zero, an error has occurred, the syndromes are retained, and another re-read is invoked. Depending on the disk drive vendor, the drive typically attempts a number of re-reads with more sophisticated ECC algorithms. If an automatic read reallocation feature is enabled, the drive, when encountering defective sectors can easily and automatically reallocate the defective sector to a good sector. (Most drives include an automatic read reallocation feature which, when set, indicates that the drive will enable automatic reallocation of bad sectors when encountered).
Most drives allocate a number of spare sector pools, each pool containing a small number of spare sectors. If a sector on a cylinder is found to be defective, the address of the sector is added to the drive's defect list. Sectors located physically subsequent to the defective sector are assigned logical block addresses such that a sequential ordering of logical blocks is maintained. This inline sparing technique is employed in an attempt to eliminate slow data transfer that would result from a single defective sector on a cylinder. If more than the number of spare sectors in a single pool are found defective, the above inline sparing technique is applied to the to the single pool only. The remaining defective sectors are replaced with the nearest available pool of spares.
Defects that occur in the field are known as grown defects. Sectors are considered to contain grown defects if the sophisticated ECC algorithm must be applied to recover the data. If this algorithm is successful, the corrected data is stored in the newly allocated sector. If the algorithm is not successful, a pending defect will be added to the defect list. Any subsequent read to the original logical block will return an error if the read is not successful. A host command to over
Chen Edward J.
Lenny Thomas R.
Compaq Computer Corporation
Sharp Comfort & Merrett P.C.
Tu Christine T.
LandOfFree
Background read scanning with defect reallocation does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Background read scanning with defect reallocation, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Background read scanning with defect reallocation will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2917917