IDE versus SCSI: Which disk interface is best? The first PC/AT computers introduced by IBM in the early eighties used low-capacity, ST506 disk drives. The disk controller used in these early machines, a Western Digital WD1003, was quite unsophisticated by today's standards. The WD1003 controlled up to two ST506 drives, and used the PC's processor to move the data to and from a buffer in the controller. Demand for higher disk storage capacities soon reached the limits of ST506 drives. A new disk interface which offered a solution to this limitation was ESDI (Enhanced Small Disk Interface). Because of the large degree of similarity between the older ST506 and new ESDI interfaces, it was easy for controller manufacturers to build ESDI controllers which could emulate the original WD1003 ST506 controller register set and protocol. This avoided the necessity of writing a new BIOS as well as new disk drivers for every PC operating system. As a result, ESDI was initially the interface of choice for high-capacity drives used in PCs. Unfortunately, ESDI also had limitations. Like the ST506, it transferred data serially, one bit at a time. This placed practical limitations on the data transfer rate, and because of the fixed rotational speed, also the maximum number of bits that could be squeezed onto each track on the disk media. In the late eighties, drive manufacturers introduced the first fully intelligent SCSI disk drives by including an embedded disk controller in the drive electronics. In addition to offering faster, parallel data transfer, SCSI drives offered significant architectural advantages over the previous ST506 and ESDI drives. Since each SCSI drive had its own embedded disk controller, it was now possible for the computer to issue simultaneous commands to every drive in the system. Each drive could then fully overlap its seek, rotational positioning, and read or write operations with the other SCSI drives. 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. The primary problem with SCSI drives was initially the lack of software support. Unlike ESDI, SCSI looked nothing like the old ST506 interface, and thus SCSI controllers which emulated the WD1003 ST506 disk controller were much more difficult to build. In the late eighties, DPT built such a controller - the PM2001. The PM2001 required no special software drivers since it emulated the old WD1003 ST506 controller register set. The drive companies also introduced an equivalent product by embedding a WD1003 register set compatible controller on the disk drive. These drives were called Integrated Drive Electronics, or IDE, drives. In addition to requiring no special software, IDE drives offered the advantage of eliminating the need for any external controller or host bus adapter. Only a simple paddle card with a couple of ICs to implement the drive selection logic was required. Since the cost to build an IDE drive was identical to the cost of a SCSI drive, many low-end desktop PCs offered special connectors for one or two IDE drives, thereby freeing up a bus slot and reducing cost. However, because of a limitation of the original WD1003 controller register set, no more than two IDE drives are supported by the standard BIOS. Each advantage of IDE, however, came with a cost. As PCs advanced beyond single-user applications, the ability to overlap the operation of multiple drives became instrumental in obtaining higher I/O rates from the disk subsystem. IDE drives, which were tied to the old WD1003 ST506 controller protocol, could only single-task I/O operations. Once a command had been issued to an IDE drive, the operating system had to wait until the command had been completed before issuing another command to any drive. In addition, WD1003 protocol relied on the processor to move the data one word at a time between a buffer on the controller and the computer's RAM. This limited the speed of the data transfer, as well as precluding hardware scatter-gather support which can be implemented by bus-mastering SCSI controllers. Although IDE drives do not require a 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. In short, in the late eighties, IDE drives initially offered a high degree of software compatibility at a low cost. However, the incremental cost of supporting SCSI drives has dropped to zero in many cases since the SCSI host bus adapter can be shared with other devices like tape and optical drives. In addition, all major operating systems today include software support for a large range of SCSI devices. The disadvantages of IDE, although not as apparent under DOS, severely limit the performance of multiuser operating systems like Novell Netware, Unix, or Windows NT, which realize large benefits from multitasked, overlapped I/O, bus mastering, scatter/gather memory access, and I/O command queuing, all offered by SCSI drives with intelligent host bus adapters. Why are the limitations of IDE not apparent under DOS? 1. IDE does not support overlapped, multitasked I/O. Neither does DOS. 2. IDE does not support I/O command queuing. Neither does DOS. 3. IDE does not support bus mastering, thus data transfer must be done via slower PIO (processor I/O). However, unless the record size is quite large, reducing data transfer time through bus mastering produces little additional performance under single-user operating systems like DOS. 4. Since IDE supports only PIO data transfer, scatter/gather memory access is not possible. However, simple operating systems like DOS do not use virtual memory addressing which causes memory fragmentation, and thus DOS does not benefit from scatter-gather memory access. 5. No more than two IDE drives can be supported in a PC system without a special, non-standard BIOS. However, most DOS users do not require more than two drives. 6. Because of limitations in the original WD1003 ST506 controller register set addressing, IDE imposes drive capacity limitations of 528MB per drive without a special, non-standard BIOS. However, few DOS systems require drive capacity greater than 528MB. 7. Unlike SCSI, IDE does not support tape or optical drives. However, most DOS systems today are still not configured with tape or optical drives. For reprints, ask for Technology Focus Paper: "IDE versus SCSI: Which disk interface is best?" Document Number MM-0091-002-A from DPT Channel Marketing (407) 830-5522