Hardware Reference
In-Depth Information
problems with existing software. These include the following:
• BIOS INT13h extensions supporting 64-bit LBA
• Bit-shift geometric CHS translation
• LBA-assist geometric CHS translation
The method for dealing with the CHS problem was called translation because it enabled additional
subroutines in the BIOS to translate CHS parameters from ATA maximums to BIOS maximums (and
vice versa). In an effort to make its methods standard among the entire PC industry, Phoenix released
the EDD document publicly and allowed the technology to be used free of charge, even among its
competitors such as AMI and Award. The T-13 committee in charge of ATA subsequently adopted
the EDD standard and incorporated it into official ATA documents.
Starting in 1994, most BIOSs began implementing the Phoenix-designed CHS translation methods,
which enabled drives up to the BIOS limit of 8.4GB to be supported. The fix involved what is termed
parameter translation at the BIOS level, which adapted or translated the cylinder, head, and sector
numbers to fit within the allowable BIOS parameters. There are two types of translation: One works
via a technique called CHS bit-shift (usually called “Large” or “Extended CHS” in the BIOS Setup),
and the other uses a technique called LBA-assist (usually called “LBA” in the BIOS Setup). These
refer to the different mathematical methods of doing essentially the same thing: converting one set of
CHS numbers to another.
CHS bit-shift translation manipulates the cylinder and head numbers but does not change the sector
number. It begins with the physical (drive reported) cylinders and heads and, using some simple
division and multiplication, comes up with altered numbers for the cylinders and heads. The sectors-
per-track value is not translated and is passed unaltered. The term bit-shift is used because the
division and multiplication math is actually done in the BIOS software by shifting bits in the CHS
address.
With CHS bit-shift translation, the drive reported (physical) parameters are referred to as P-CHS ,
and the BIOS-altered logical parameters are referred to as L-CHS . After the settings are made in the
BIOS Setup, L-CHS addresses are automatically translated to P-CHS at the BIOS level. This enables
the operating system to send commands to the BIOS using L-CHS parameters, which the BIOS
automatically converts to P-CHS when it talks to the drive using ATA commands. Table 7.20 shows
the rules for calculating CHS bit-shift translation.
Table 7.20. CHS Bit-Shift Translation Rules
CHS bit-shift translation is based on dividing the physical cylinder count by a power of 2 to bring it
under the 1,024 cylinder BIOS INT13h limit and then multiplying the heads by the same power of 2,
 
Search WWH ::




Custom Search