Chapter 6. Theory of Operation
EK–MOL80–SV. B01
6–35
Replacement Sparing Algorithm
The replacement sparing algorithm is intended to manage defective sectors found
after initialization.
As was mentioned earlier, the DDS allows for a number of sectors to be reserved
for future use by the replacement sparing algorithm.
These "spare sectors" reside
in the Spare Groups, and are referred to via entries in the SDL.
Each SDL entry
consists of a defect and its replacement pair.
The defect is always a sector in a
User Group, and the replacement is a sector from a Spare Group.
Both are given
in track/sector form.
During
address translation, after the original physical address is found via the slip
sparing algorithm, the SDL is checked to see if that physical address was spared
through the replacement sparing algorithm. If so, the replacement physical
address is substituted for the original physical address.
In the event a sector needs to be replaced, i.e., due to a Reassign Blocks
Command or automatic reallocation during a write command, a new
defect/replacement pair is added to the SDL (if the new defect is not already in
the SDL) or an existing defect/replacement entry is updated if it already exists in
the SDL.
(Updating an existing defect/replacement pair only occurs on 650-
Mbyte media.
For 1.3-GByte media, a new defect/replacement pair is added, thus
creating a "chain" of defect/replacement pointers.)
Error Thresholds
Although not directly related to disk format, the various error thresholds are the
basis for deciding whether or not to spare a sector.
This could happen during the
certification process (i.e. the slip sparing algorithm) or auto-reallocation during a
SCSI Write command (i.e. the replacement sparing algorithm). These error
thresholds are related to the format of a sector in the User Zone.
Each sector in the User Zone consists of a header, user data, and parity bytes for
error correction.
The first error threshold of importance involves information in
the sector header.
Each header consists of three copies of the sector's track
number, sector number, and a Cyclic Redundancy Check (CRC).
The error
threshold is determined by the number of sectors found "good."
The other error threshold of interest pertains to the degree of error correction
required on the data. The error correction code (ECC) used causes parity bytes to
be written following the user data. During a data recovery operation, these bytes
are used to detect and correct up to 8 defective bytes in an interleave.
Each sector
has 10 (5) interleaves with 120 (122) bytes in each interleave. The actual number
of bytes per interleave requiring correction is used as an error threshold.
Consult
the ISO standard for more details.