PC Hardware


As mentioned, EIDE stands for Enhanced Integrated Drive Electronics. This term specifies the incorporation of four major upgrades to the ATA/IDE specification:

  • LBA (Logical Block Addressing) translation standards for BIOSs to support IDE drives larger than the old limit of 528 MB.
  • Industry standards for improved data throughput to and from IDE drives-PIO modes 3 and 4.
  • Industry standard instruction sets that allow CD-ROM drives and tape backups to connect to the same controller using the ATAPI standards.
  • Use of the old, mostly unused IBM standard for a secondary controller calling IRQ 15 and I/O address 170h.

Overcoming the 528-MB Barrier

There are several methods used to overcome the 528-MB barrier that affects hard disks. When developing these methods, the difficult task was to create novel ways to access more data and maintain backward compatibility. In most cases, the designers found ways to address larger drives while "fooling" the operating system into functioning as if the drive were still within the proper limits.

When working with high-capacity drives, the computer professional must understand these different methods and apply the best method for the situation at hand. This is especially true if you encounter a situation in which different oversized drives are installed in an older system; these older systems often require special drivers or partitioning software. Using multiple hard disk drive drivers can confuse older operating systems due to incompatibilities. Never use drive data compression software in such cases without being sure that all the code involved is compatible.

The new super-large hard disk drives might not work with some older machines. They will run, but will not take advantage of the extra-high capacity.

Logical Block Addressing (LBA)

Logical Block Addressing (LBA) is a means of addressing the physical sectors on a hard disk drive in a linear fashion. A translating BIOS detects the capacity of the drive and manipulates the CHS values so that the cylinder value is always less than 1024. Here's how it works:

  • Before LBA (limit 528):
  • capacity = cylinders x heads x sectors per track

    528,482,304 = 1024 x 16 x 63 x 512

  • With LBA:
  • cylinders = capacity divided by (heads x sectors per track)

When the computer boots up, an enhanced drive parameter table is loaded into memory. When data is transferred, this table intercepts the request and converts the system's CHS values to LBA values that the computer's BIOS can handle.

Enhanced CHS Translation

Enhanced CHS is a standard that competes with LBA. This standard allows drives to be manufactured a little faster and more easily than LBA. The standard is supported by IBM and other manufacturers.

Fast ATA

Fast ATA means using PIO mode 3, and Fast ATA-2 means using PIO mode 4. It is a technique used by Seagate Technologies (and others) to compete with EIDE. Fast ATA drives will support either LBA or CHS drive translation to break the 528-MB barrier.

Logical CHS and Physical CHS

Logical Cylinders, Heads, and Sectors (LCHS) is a value used by the operating system (MS-DOS, Windows 95 and 98, OS/2, and so forth) to determine the size of the hard disk drive. Physical Cylinders, Heads, and Sectors (PCHS) is a value used within the device to determine its size. A translating BIOS and/or the operating system use different algorithms to determine the address of the data.

DMA Transfer

Direct memory access (DMA) is a transfer method that, although not a PIO mode, also works to overcome the size limitations of hard disks. DMA bypasses the CPU to transfer data directly into memory. This is the preferred way to move large chunks of data in a multitasking environment. UNIX and Windows NT take advantage of DMA transfers. These transfers can function by using either the DMA controller on the ISA (Industry Standard Architecture) bus or a bus mastering controller that takes over the expansion bus and bypasses the built-in DMA controller.

DMA data transfers can be either 16 bits (single word) or 32 bits (double word) wide. The transfer width depends upon the data bus used-ISA, EISA, or VLB (see Tutorial 10, "Expansion Buses," for details). DMA data transfer for ATA hard disk drives is extremely rare.

Using DMA data transfer can lead to data loss. However, data loss should be a concern only when transferring partitioned and formatted hard disk drives between computers that use different BIOSs to make the translation. The following table shows the various DMA modes.

DMA Modes Physical CHS Logical CHS
Cylinders 2304 576
Heads 8 32
Sectors/track 63 63
Capacity 594.5 million bytes 594.5 million bytes