Hardware Reference
In-Depth Information
CHS Translation (Breaking the 528MB Barrier)
Having a barrier limiting drive capacity to 528MB or less wasn't a problem when the
largest drives available were smaller than that. But by 1994, drive technology had deve-
loped such that making drives larger than what the combined BIOS and ATA limitations
could address was possible. Clearly a fix for the problem was needed.
Starting in 1993, the BIOS developer Phoenix Technologies began working on BIOS ex-
tensions to work around the combined CHS limits. In January of 1994, the company re-
leased the “BIOS Enhanced Disk Drive (EDD) Specification,” which was later repub-
lished by the T13 committee (also responsible for ATA) as “BIOS Enhanced Disk Drive
Services (EDD).” The EDD documents detail several methods for circumventing the lim-
itations of older BIOSs without causing compatibility 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 techno-
logy to be used free of charge, even among its competitors such as AMI and Award. The
T13 committee in charge of ATA subsequently adopted the EDD standard and incorpor-
ated 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 trans-
lated 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 (usu-
allycalled“Large”or“ExtendedCHS”intheBIOSSetup),andtheotherusesatechnique
called LBA-assist (usually called “LBA” in the BIOS Setup). These refer to the differ-
ent 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,
usingsomesimpledivisionandmultiplication,comesupwithalterednumbersforthecyl-
indersandheads.Thesectors-per-trackvalueisnottranslatedandispassedunaltered.The
Search WWH ::




Custom Search