Hardware Reference
In-Depth Information
This example shows a drive with 8,000 cylinders and 16 heads. The physical cylinder
count is way above the BIOS limit of 1,024, so if CHS bit-shift translation is selected in
the BIOS Setup, the BIOS then divides the cylinder count by 2, 4, 8, or 16 to bring it be-
low 1,024. In this case, it would divide by 8, which results in a new logical cylinder count
of 1,000—which is below the 1,024 maximum. Because the cylinder count is divided by
8, the head count is then multiplied by the same number, resulting in 128 logical heads,
which is also below the limit the BIOS can handle.
So,although the drive reports having 8,000cylinders and16heads, the BIOS andall soft-
ware (including the operating system) instead see the drive as having 1,000 cylinders and
128heads.Notethatthe63sectors/trackfigureissimplycarriedoverwithoutchange.The
result is that by using the logical parameters, the BIOS can see the entire 4.13GB drive
and won't be limited to just the first 528MB.
When you install a drive, you don't have to perform the translation math to convert the
cylindersandheads;theBIOSdoesthatforyouautomatically.Allyouhavetodoisallow
the BIOS to autodetect the P-CHS parameters and then enable the translation in the BIOS
Setup. Selecting Large or ECHS translation in the BIOS Setup enables the CHS bit-shift.
The BIOS does the rest of the work for you.
CHS bit-shift is a simple and fast (code-wise) scheme that can work with all drives,
but unfortunately it can't properly translate all theoretically possible drive geometries for
drives under 8.4GB. To solve this, an addendum was added to the ATA-2 specification to
specifically require drives to report certain ranges of geometries to allow bit-shift transla-
tion to work. Thus, all drives that conform to the ATA-2 specification (or higher) can be
translated using this method.
The 2.1GB and 4.2GB Barriers
Some BIOSs incorrectly allocated only 12 bits for the P-CHS cylinder field, thereby al-
lowingamaximumof4,096cylinders.Combinedwiththestandard16-headand63-sector
limits, this resulted in the inability to support any drives over 2.1GB in capacity. For-
tunately, this BIOS defect affected only a limited number of systems with BIOS dates pri-
or to about mid-1996.
Even so, some problems still existed with bit-shift translation. Because of the way DOS
and Windows 9x/Me were written, they could not properly handle a drive with 256 heads.
This was a problem for drives larger than 4.2GB because the CHS bit-shift translation
rules typically resulted in 256 heads as a logical value, as seen in the following example:
Bit-shift
P-CHS
L-CHS
Parameters
Parameters
Search WWH ::




Custom Search