Alasir Enterprises
Main Page >  Motley >  MicroHouse PC Hardware Library Volume I: Hard Drives  

 
Previous Table of Contents Next

SCSI Versus IDE: Advantages and Limitations

IDE drives have much less command overhead for a given sector transfer than do SCSI drives. In addition to the drive-to-controller command overhead that both IDE and SCSI must perform, a SCSI transfer involves negotiating for the SCSI bus; selecting the target drive; requesting data; terminating the transfer over the bus; and finally converting the logical data addresses to the required cylinder, head, and sector addresses. This arrangement gives IDE an advantage in sequential transfers handled by a single-tasking operating system. In a multitasking system that can take advantage of the extra intelligence of the SCSI bus, SCSI can have the performance advantage.

SCSI drives offer significant architectural advantages over IDE and other drives. Because each SCSI drive has its own embedded disk controller that can function independently from the system CPU, the computer can issue simultaneous commands to every drive in the system. Each drive can store these commands in a queue and then perform the commands simultaneously with other drives in the system. The data could be fully buffered on the drive and transferred at high speed over the shared SCSI bus when a time slot was available.

Although IDE drives also have their own controllers, they do not operate simultaneously, and command queuing is not supported. In effect, the dual controllers in a dual-drive IDE installation work one at a time so as not to step on each other.

Although SCSI drives require an additional-cost host adapter card, more and more PCs require tape-backup, CD-ROM, or optical-drive support and thus must still be configured with a SCSI host bus adapter. This means that the incremental cost of supporting SCSI drives is virtually nil, because the SCSI host bus adapter is shared with other devices, such as tape and optical drives. In addition, all major operating systems today include software support for a wide range of SCSI devices.

What are the limitations of IDE?

  IDE does not support overlapped, multitasked I/O.
  IDE does not support command queuing.

As you can see, SCSI has some advantages over IDE, especially where expansion is concerned, and also with regard to support for multitasking operating systems. Unfortunately, it also costs more to implement.

Disk Hardware and Software Limitations

By studying the capabilities of the different disk interfaces as well as the ROM BIOS and operating systems, it is possible to determine the limits on disk storage. The following section details the limits under the different interfaces and operating systems.

Disk Interface Capacity Limitations

Different disk interfaces have different limitations on the theoretical maximum drive capacities that they may support. These limitations are due to variations in the way that each interface operates at the hardware level. It is important to note that even though a particular interface may permit access to a given amount of disk real estate, the BIOS and DOS usually are much more limiting and end up being the true limits for system disk capacity.

ST-506/412, ESDI, and IDE

To determine the capacity limits for the ST-506/412, ESDI, or IDE interface, you first need to determine the limits on the maximum number of cylinders, heads, and sectors per track. To do so, look at the size of the registers that hold this data in the controller. All these interfaces have the same controller register specifications, so the capacity limits calculated here apply to all of them. As you will see, the interface capacity limits are quite high. The drive parameter limits are as follows:

Cylinders (16 bits) = 65,536
Heads (4 bits) = 16
Sectors (8 bits) = 256

This calculates to a maximum theoretical drive size of:

65,536 cylinders × 16 heads × 256 sectors × 512 bytes = 137,438,953,472 bytes (128GB)

Unfortunately, the maximum capacity — 128GB — is limited by the BIOS. There are two different BIOS types with regards to disk size limitations. The standard BIOS built into most systems is limited to 1,024 cylinders, 16 heads, and 63 sectors per track. If the BIOS is an enhanced version, it will be limited to 1,024 cylinders, 256 heads, and 63 sectors per track. Combining the BIOS and interface limits results in the following maximum capacities (assuming 512-byte sectors):

Limit with Standard BIOS: 1,024 cylinders × 16 heads × 63 sectors = 528,482,304 bytes (504MB)
Limit with Enhanced BIOS: 1,024 cylinders × 256 heads × 63 sectors = 8,455,716,864 bytes (7.88GB)

If you do not have enhanced BIOS support on your motherboard, you can add an IDE bus adapter that has an on-board enhanced BIOS. To get around such BIOS problems, some IDE drive implementations greater than 528 million bytes split the drive to act as two physical units. In this case, the drive would appear on the IDE bus connector as being both master and slave, and could be used only as two 504MB maximum-size drives.

ATA-2 has defined LBA support for EIDE. This is a Logical Block Address mode where each sector on the drive is numbered from 0 to x. The limitations are that x is a 28-bit number that has a maximum value of 268,435,456. Using 512-byte sectors, this brings the maximum drive capacity to 137,438,953,472. That is coincidentally the same as the IDE internal limit has always been. The LBA is translated by the ATA-2/EIDE enhanced BIOS to the extended Cylinder, Head, and Sector (CHS) parameters which allow a maximum of 1,024 cylinders, 256 heads, and 63 sectors, respectively.

SCSI

According to the SCSI specification, drives are not addressed by cylinders, heads, and sectors but instead by what is called a Logical Block Address (LBA). This is a sector number in which all the sectors on the drive are numbered sequentially from start to finish. The LBA is specified by a 32-bit number and with 512-byte sectors, results in the following limitation:

4,294,967,296 LBAs (sectors) × 512 bytes = 2,199,023,255,552 bytes (2,048GB or 2T)

As you can see, SCSI drive capacity limits are extremely high. However, because the SCSI drive must appear to the BIOS as being a given number of cylinders, heads, and sectors per track, the BIOS limits SCSI capacity. Virtually all SCSI adapters have an enhanced BIOS that supports a maximum drive capacity as follows (assuming 512-byte sectors):

SCSI with Enhanced BIOS: 1,024 cylinders × 256 heads × 63 sectors = 8,455,716,864 bytes (7.88GB)

Tip:
If you do not have enhanced BIOS support in your SCSI adapter or motherboard, in some cases you can load an external driver for your adapter to provide this support.

Previous Table of Contents Next