Team LiB   Previous Section   Next Section

13.1 IDE

Integrated Drive Electronics (IDE), more properly called the AT Attachment (ATA) interface, is the means used by most computers to interface hard disks and other drives to the computer. Early hard disk interfaces used a separate hard disk and controller card, which limited throughput. In 1986, Compaq and Western Digital combined the hard disk and controller card into one unit, thereby inventing IDE. Early IDE drives used an expansion card called a paddle card, but this card was not really a disk controller. It simply provided an interface between the bus and the embedded disk controller on the hard drive itself. All modern systems have IDE interfaces embedded on the motherboard.

You may or may not need to understand much about IDE to install and configure a hard drive, depending on how old your hardware is. The most recent drives, motherboards, and BIOSes handle the hard parts for you, automatically detecting and configuring the drive, interface, and BIOS for optimum performance. So, if all you're doing is installing a new IDE hard drive in a recent PC, you can safely skip this entire section.

If, however, you're upgrading an older system with a new drive, installing an older drive in a new system, or installing an additional drive in a system more than a couple years old, keep reading. If any of the components is more than a few years old, you need to understand quite a bit about IDE, not just to configure the PC for optimum performance, but to ensure that your data is not corrupted by running data transfer rates higher than your hardware can safely support. Understanding the fundamentals of IDE also helps you make good decisions when you purchase drives, system boards, and add-on IDE interface cards.

13.1.1 IDE/ATA Standards and Implementations

Although it was originally proprietary, the cost and performance advantages of IDE quickly made it the standard hard disk interface. By 1990, most computer systems came with IDE hard disks. A slew of acronyms and standards has arisen as IDE proliferates, some meaningful and many that are just marketing hype. The formal ATA standards are maintained by Technical Committee T13 of the National Committee on Information Technology Standards (NCITS), and may be viewed at http://www.t13.org. These standards include:

ATA

The original IDE specification, ATA defines a standard 40-pin interface that supports two hard disk devices on one cable.

ATAPI (ATA Packet Interface)

The first ATA standard supported only hard disks. Manufacturers soon realized that the ubiquity, high performance, and low cost of the IDE interface also made it ideal for non-disk devices like CD-ROM and tape drives. The ATAPI standard was developed to allow these non-disk devices to be connected to a standard ATA port. ATAPI hardware connects to and works with any standard IDE or EIDE port. Note that, although ATAPI devices connect to ATA ports, they are not ATA devices, and differ significantly from an ATA hard drive. This is not a problem with most motherboard IDE ports and IDE interface cards, but caching controllers and other intelligent interfaces must be explicitly ATAPI compliant to support ATAPI devices.

ATA-2

Advances in hard disk technology soon made it clear that the original ATA standard was too confining. Since the original standard was completed, several developments made it desirable to produce an updated version of the specification. That updated specification, ATA-2, adds faster PIO and DMA modes, improves Plug-N-Play support, and adds Logical Block Addressing (LBA).

ATA-3

Provided several minor improvements to the ATA-2 standard, including enhanced reliability (especially for PIO-4), better power management, and the incorporation of Self Monitoring Analysis and Reporting Technology (SMART), which allows the drive to warn the operating system of impending problems. ATA-3 did not add any PIO or DMA modes faster than those defined in ATA-2.

ATA/ATAPI-4

Merges ATA-3 and ATAPI into a single integrated book-length standard and formalizes Ultra DMA 33 as a part of that standard.

ATA/ATAPI-5

The current standard. ATA/ATAPI-5 formalizes Ultra DMA 66, but otherwise makes only relatively minor enhancements to ATA/ATAPI-4.

ATA/ATAPI-6

The forthcoming ATA/ATAPI standard, which is already implemented in practice by drive makers. ATA/ATAPI-6 formalizes Ultra DMA 100 and 48-bit LBA, which expands the maximum disk size possible under ATA from 128 GB to 128 PB (i.e., a binary million times larger), but otherwise makes only relatively minor enhancements to ATA/ATAPI-5.

ATA/ATAPI-7

The next and likely final ATA/ATAPI standard, before Serial ATA supersedes ATA/ATAPI. ATA/ATAPI-7 is expected to formalize Ultra DMA 133, but otherwise make only relatively minor enhancements to ATA/ATAPI-6. As with ATA/ATAPI-6, drive makers will incorporate the important parts of ATA/ATAPI-7 before it is formally standardized. As of June 2002, ATA/ATAPI-7 is still in development.

Although these formal standards define the ATA interface, the hard drives and interfaces you can actually buy are marketed using the following ad hoc standards:

Enhanced IDE (EIDE)

A Western Digital IDE implementation that incorporates and extends the ATA-2 and ATAPI standards. EIDE supports the following: two devices each on primary and secondary ATA interfaces, for a total of four devices; fast transfer modes (PIO-3 or better and multiword DMA-1 or better); Logical Block Addressing (LBA) mode; and connecting ATAPI devices such as CD-ROM and tape drives to the ATA interface. EIDE includes the Western Digital Enhanced BIOS, which eliminates the 504/528 MB limitation under DOS. Recent Western Digital hard drives and EIDE interfaces support the ATA/ATAPI-5 standard and the proposed ATA/ATAPI-6 Ultra DMA standard.

Fast ATA

A Seagate IDE implementation, later endorsed by Quantum, that counters the Western Digital EIDE initiative. Fast ATA and Fast ATA-2 are based on ATA and ATA-2, but not on ATAPI. Fast ATA supports: fast transfer modes (PIO-3 and multiword DMA-1); LBA mode; and Read/Write Multiple commands, also called Block Mode. Fast ATA-2 adds support for PIO-4 and multiword DMA-2. Recent Fast-ATA hard drives support Ultra ATA-33 and -66, and the nascent Ultra ATA-100 standard.

Ultra ATA

An extension to ATA-2, first proposed by Quantum and Intel, and now a part of the ATA/ATAPI-4 standard (as Ultra ATA-33 for UDMA modes 0 and 1), the ATA/ATAPI-5 standard (as Ultra ATA-66 for UDMA modes 2, 3, and 4), and the proposed ATA/ATAPI-6 standard (as Ultra ATA-100 for UDMA mode 5). Ultra-ATA enhances the earlier SDMA and MDMA modes by adding CRC error detection to prevent data corruption during fast DMA transfers.

To benefit from the increased data transfer rates provided by Ultra-DMA, the drive, the BIOS, the ATA interface, and the operating system must all support it. By late 1997 some PCs and motherboards included embedded Ultra ATA-33 support, and most shipped later than late 1998 support Ultra ATA-33. Ultra ATA-66 drives and interfaces began shipping in early 1999, and by fall 2000 had become ubiquitous. ATA-100 drives and interfaces began shipping in volume in early 2001, and are now standard on new systems and motherboards. ATA-133 drives and interfaces began to appear by late 2001, and should be ubiquitous by late 2002. You can add support for Ultra ATA-33, -66, -100, or -133 to older PCs by installing an add-on IDE interface card like the Promise Ultra133 or Ultra133 TX2 (http://www.promise.com) and upgrading the system BIOS.

13.1.2 IDE/ATA Data Transfer Modes

To understand ATA data transfer modes, it's necessary to understand something about how data is read from and written to the hard drive. Real-mode operating systems like 16-bit Windows and DOS make read and write requests to the BIOS, which passes the command to the drive. Protected-mode operating systems like Windows NT/2000/XP and Unix bypass the real-mode BIOS and use their own protected-mode I/O subsystems to accomplish the same purpose.

Data transfer commands are controlled by the BIOS or I/O subsystem, but execution speed—and therefore data transfer rate—is determined by the strobe frequency of the ATA interface hardware. The time needed to complete one full cycle, measured in nanoseconds (ns), is called the cycle time for the interface. A shorter cycle time allows more cycles to be completed in a given period, and therefore provides a higher data transfer rate. For example, a 600 ns cycle time yields 1.66 million cycles/second. Because each cycle transfers one word (16 bits or two bytes), a 600 ns cycle time translates to a data transfer rate of 3.33 MB/sec.

ATA supports two data transfer modes, called Programmed Input/Output (PIO) Mode and Direct Memory Access (DMA) Mode. Each of these has several submodes that use different cycle times and have different data transfer rates. When an ATA interface interrogates a modern drive with the Identify Drive command, the drive returns its model, geometry, and a list of the PIO and DMA modes it supports, allowing the interface, given proper BIOS support, to automatically configure the best settings for optimum drive performance. With an older drive, an older BIOS, or both, it's up to you to configure these settings yourself, so it's important to understand what they mean to avoid either crippling drive performance by choosing too slow a mode or risking your data by choosing one that's too fast for your hardware.

Your operating system also determines whether an ATA hard disk is configured automatically for optimal performance. Windows 98 and Windows 2000/XP (usually) detect DMA-capable interfaces and drives and configure them automatically to operate in the more efficient DMA mode. Windows 95 and Windows NT 4 use the less efficient PIO mode by default, and must be configured manually to use DMA mode on hardware that supports it. Configuring DMA mode on ATA drives is described in Chapter 14.

13.1.2.1 Programmed Input/Output (PIO) Modes

Programmed Input/Output (PIO) is a means of data transfer that requires that the CPU intermediate data exchanges between the drive and memory. This dependence on the CPU places unnecessary demands on it and slows CPU performance under multitasking operating systems. Accordingly, modern drives and interfaces substitute DMA modes, described below, to provide high-speed data transfer. PIO modes remain important, however, when connecting older drives to newer interfaces or vice versa. Table 13-1 lists PIO modes, not all of which are supported by all drives and all interfaces.

Table 13-1. ATA programmed input/output (PIO) modes

PIO mode

Cycle time

Transfer rate

Revision

PIO-0

600 ns

3.3 MB/sec

ATA

PIO-1

383 ns

5.2 MB/sec

ATA

PIO-2

330 ns

8.3 MB/sec

ATA

PIO-3

180 ns

11.1 MB/sec

ATA-2

PIO-4

120 ns

13.3 MB/sec

ATA-2

PIO-5

90 ns

22.2 MB/sec

Never implemented

PIO Modes 0, 1, and 2 are not used on recent systems except to support older drives. Using PIO Mode 3 or 4 provides reasonably fast transfer rates, but requires that the drive support using the IORDY line for hardware flow control. If the interface delivers data faster than a PIO Mode 3 or 4 drive can accept it, the drive de-asserts IORDY to notify the interface to stop delivering data. Running a drive that does not support IORDY on an interface configured for PIO Mode 3 or 4 may appear to work, but risks corrupting data. If you are not certain that your drive supports PIO Mode 3 or 4, configure the interface to use PIO Mode 2.

13.1.2.2 Direct Memory Access (DMA) Modes

Direct Memory Access (DMA) is a data transfer mode that allows bidirectional transfer of data between drives and memory without intervention from the processor. If you use a multitasking operating system like 32-bit Windows or Unix, using DMA mode increases performance by freeing the CPU to do other things while data is being transferred. DMA doesn't improve performance with single-tasking operating systems like DOS or 16-bit Windows, because the processor must wait until the transfer is complete before doing anything else. Table 13-2 lists DMA modes, not all of which are supported by all drives and all interfaces. Note that ATA-3 introduced no new modes.

Table 13-2. ATA direct memory access (DMA) modes

DMA mode

Cycle time

Transfer rate

Revision

Single Word Mode 0 (SDMA-0)

960 ns

2.1 MB/sec

ATA

Single Word Mode 1 (SDMA-1)

480 ns

4.2 MB/sec

ATA

Single Word Mode 2 (SDMA-2)

240 ns

8.3 MB/sec

ATA

Multiword Mode 0 (MDMA-0)

480 ns

4.2 MB/sec

ATA

Multiword Mode 1 (MDMA-1)

150 ns

13.3 MB/sec

ATA-2

Multiword Mode 2 (MDMA-2)

120 ns

16.6 MB/sec

ATA-2

Ultra-DMA Mode 0 (UDMA-0)

240 ns

16.6 MB/sec

ATA-4

Ultra-DMA Mode 1 (UDMA-1)

160 ns

25.0 MB/sec

ATA-4

Ultra-DMA Mode 2 (UDMA-2)

120 ns

33.3 MB/sec

ATA-4

Ultra-DMA Mode 3 (UDMA-3)

90 ns

44.4 MB/sec

ATA-5

Ultra-DMA Mode 4 (UDMA-4)

60 ns

66.7 MB/sec

ATA-5

Ultra-DMA Mode 5 (UDMA-5)

40 ns

100.0 MB/s

ATA-6

Ultra-DMA Mode 6 (UDMA-6)

30 ns

133.3 MB/s

ATA-6/7

The SDMA modes were obsoleted by ATA-3, and are useful only for older drives and interfaces. MDMA modes provide reasonable transfer rates, and are useful for drive/interface configurations that are ATA-2 compliant, but where the drive and/or interface is not Ultra-ATA compliant. Using UDMA modes requires that the drive, interface, BIOS, and operating system be Ultra-ATA compliant. MDMA-2 and UDMA-0 provide identical transfer rates, but MDMA-2 does not use hardware flow control, while UDMA-0 uses CRC error detection to prevent data corruption.

Hardware that supports UDMA Modes 3 and 4, also called UDMA/66, began shipping in early 1999, and had become standard for new systems, motherboards, and hard drives by mid-2000. UDMA/100, also called Ultra ATA-100 or simply ATA-100, is an extension of UDMA/66 developed by Maxtor Corporation and since licensed by other drive makers. ATA-100 components began shipping in volume in early 2001, and are now standard.

ATA-100 provides 100 MB/s throughput for reads, but only 88 MB/s throughput for writes. ATA-100 uses the same 80-wire, 40-pin ATA cable as UDMA/66, which is sufficient to reduce reflections, noise, and inductive coupling to the level required by ATA-100, but reduces signaling voltages to 3.3V from the 5.0V used by all previous ATA standards. Installing a UDMA/66 or /100 drive on an older system requires adding a UDMA/66 or /100 interface card and using a special 80-wire, 40-pin ATA cable.

Ultra ATA-133, also called FastDrive/133, is another Maxtor initiative that as of June 2002 had not yet been adopted by other manufacturers. It uses the same 80-wire, 40-pin cable as ATA-66 and ATA-100, and ATA-133 drives and interfaces are backward compatible with earlier standards.

ATA-100 and ATA-133 are technologies ahead of their time. As of June 2002, no ATA hard drive can saturate even an ATA-66 interface, although the fastest ATA hard drives routinely exceed the 33 MB/s provided by ATA-33. Only one device on an ATA channel can be active at a time, which means that ATA-66 is likely to be fast enough for the next year or so at least. Contrast this situation with SCSI, which does allow multiple devices to use the channel simultaneously. The fastest SCSI hard drives can exceed 50 MB/s throughput, which means that three drives on a channel can saturate even an Ultra160 SCSI interface.

We think that fast IDE hard drives will begin exceeding 66 MB/s sometime in the near future, so having an ATA-100 adapter is worthwhile. However, we think it unlikely that ATA hard drives will ever require more than an ATA-100 interface. Serial ATA will have replaced the current Parallel ATA by the time drives can saturate an ATA-100 interface, so ATA-133 is a more a marketing gimmick than a useful technology. Maxtor argues that an ATA-100 interface may have an efficiency of only 62%, but even a true 62 MB/s bandwidth is likely to suffice until Serial ATA devices ship.

There are two ways to implement DMA. First-party DMA, also called bus- mastering DMA, uses a DMA controller embedded in the device itself to arbitrate possession of the bus and data transfer. Third-party DMA instead depends on the DMA controller that resides on the motherboard. If the motherboard is of recent vintage, either first-party or third-party DMA can be used for high-speed DMA transfer modes.

A problem arises with older systems boards, whose DMA controllers cannot support third-party DMA for fast DMA modes. DMA controllers on ISA motherboards are too slow to support ATA DMA. DMA controllers on VLB motherboards do not support third-party DMA at all. In either of these situations, the best solution is to replace the motherboard. The DMA controller on many PCI motherboards, including some relatively recent ones, supports third-party DMA, but only at lower rates. The solution here is to install a first-party (bus-mastering) add-on ATA interface card that supports high-speed DMA.

The CMD-640 and RZ-1000 PCI-to-IDE interfaces used on some older interface cards and motherboards have bugs that may corrupt data. These bugs are subtle, and may damage data for months before being noticed. For detailed information about this problem and utilities to test for it, download the file eidete20.zip (or later), which is available from numerous Internet FTP sites.

13.1.3 ATA Multi-Channel Support

The original ATA specification defined one dual-channel ATA interface that supported one or two ATA devices. ATA-2 defines a second interface, with the primary interface using standard ATA IRQ and base address, and the secondary interface using the alternate IRQ and base address that had always been set aside for that purpose. Any modern motherboard or interface card provides dual-ported ATA support.

Windows 9X and Windows NT/2000/XP recognize and use the secondary interface automatically. DOS and 16-bit Windows are not dual-port ATA-aware, so installing more than two ATA drives with these operating systems requires either BIOS support for the secondary port or supplemental drivers. If BIOS Setup allows you to enter drive parameters for four drives, you already have the BIOS support you need. If BIOS Setup lists only two drives, you must (in order of desirability) install an updated system BIOS or use a dual-ported bus-mastering ATA adapter with an on-board dual-port BIOS or install dual-port device drivers.

In addition to the well-standardized primary and secondary ATA interfaces, some devices support semi-standard tertiary and quaternary ATA interfaces. In theory, at least, you can support up to eight ATA devices on one computer by adding a dual-ported interface card that can be configured as tertiary/quaternary to a system that includes a standard dual-ported ATA interface, assuming that you have the four IRQs needed to support all four ports. We have not seen a BIOS that includes direct support for ATA Ports 3 and 4, although the current Phoenix BIOS specification allows ATA ports beyond 1 and 2 to be defined arbitrarily. Table 13-3 lists the IRQs and base addresses for ATA Ports 1 through 4.

Table 13-3. ATA port IRQ and base address assignments

ATA port

IRQ

Hex base addresses (Channel 0 / Channel 1)

Primary

14

0x1F0 - 0x1F7 and 0x3F6 - 0x3F7

Secondary

15 or 10

0x170 - 0x177 and 0x376 - 0x377

Tertiary

12 or 11

0x1E8 - 0x1EF and 0x3EE - 0x3EF

Quaternary

10 or 9

0x168 - 0x16F and 0x36E - 0x36F

13.1.4 The ATA Interface

Table 13-4 lists the pins and signal names for the ATA interface. Signal names that end with # are active-low. Signal names contained in square brackets are specific to the secondary ATA interface.

Table 13-4. ATA interface pinout and signal definitions

Pin

Signal

 

Pin

Signal

1

Reset IDE

 

2

Ground

3

Data 7

 

4

Data 8

5

Data 6

 

6

Data 9

7

Data 5

 

8

Data 10

9

Data 4

 

10

Data 11

11

Data 3

 

12

Data 12

13

Data 2

 

14

Data 13

15

Data 1

 

16

Data 14

17

Data 0

 

18

Data 15

19

Ground

 

20

Key (no pin)

21

DDRQ0 [DDRQ1]

 

22

Ground

23

I/O Write#

 

24

Ground

25

I/O Read#

 

26

Ground

27

IOCHRDY

 

28

P_ALE (CSEL pull-up)

29

DDACK0# [DDACK1#]

 

30

Ground

31

IRQ 14 [IRQ 15]

 

32

(reserved)

33

DAG1 (Address 1)

 

34

GPIO_DMA66_Detect_Pri [GPIO_DMA66_Detect_Sec]

35

DAG0 (Address 0)

 

36

DAG2 (Address 2)

37

Chip Select 1P# [Chip Select 1S#]

 

38

Chip Select 3P# [Chip Select 3S#]

39

Activity#

 

40

Ground

41

+5VDC (logic)

 

42

+5VDC (motor)

43

Ground

 

44

-TYPE (0=ATA)

The standard ATA interface used in desktop systems uses only pins 1 through 40. Pins 41 through 44 are implemented only in notebook ATA interfaces, for use with 2.5" and smaller drives. The additional four pins provide power and ground to the drives, which are not large enough to accept a standard power connector.

ATA interfaces are enabled or disabled in BIOS Setup. Disabling an unused interface frees the interrupt that would otherwise be used by that interface. If there are no devices connected to the secondary ATA interface, disable it in BIOS. If you are running an all-SCSI system, disable both the primary and secondary ATA interfaces. Conversely, if you install an ATA/ATAPI device as the first device on the secondary interface and find that it is not recognized, check BIOS Setup to verify that the interface is enabled. Although most recent systems automatically detect and configure PIO mode versus DMA mode, some systems require you to specify PIO mode versus DMA mode for each interface in Setup.

13.1.5 Configuring ATA Devices

Each ATA interface (often loosely called a channel) can have zero, one, or two ATA and/or ATAPI devices connected to it. Every ATA and ATAPI device has an embedded controller, but ATA permits only one active controller per interface. Therefore, if only one device is attached to an interface, that device must have its embedded controller enabled. If two devices are attached to an ATA interface, one device must have its controller enabled and the other must have its controller disabled.

In ATA terminology, a device whose controller is enabled is called a Master; one whose controller is disabled is called a Slave. In a standard PC with two ATA interfaces, a device may therefore be configured in any one of four ways: Primary Master, Primary Slave, Secondary Master, or Secondary Slave.

13.1.5.1 Assigning Masters and Slaves

ATA/ATAPI devices are assigned as Master or Slave by setting jumpers on the device. ATA devices have the following jumper selections:

Master

Connecting a jumper in the Master position enables the on-board controller. All ATA and ATAPI devices have this option. Select this jumper position if this is the only device connected to the interface, or if it is the first of two devices connected to the interface.

Slave

Connecting a jumper in the Slave position disables the on-board controller. (One of our technical reviewers notes that he has taken advantage of this to retrieve data from a hard drive whose controller had failed, a very useful thing to keep in mind.) All ATA and ATAPI devices can be set as Slave. Select this jumper position if this is the second device connected to an interface that already has a Master device connected.

When you jumper a device Master or Slave, it assumes that role regardless of which position it connects to on the ATA cable. For example, if you jumper a device as Master, it functions as Master regardless of whether you connect it to the drive connector at the end of the ATA cable or the drive connector in the middle of the ATA cable.

Cable Select

All recent ATA/ATAPI devices have a third jumper position labeled Cable Select, CS, or CSEL. Connecting a jumper in the CSEL position instructs the device to configure itself as Master or Slave based on its position on the ATA cable. When you use CSEL, the device connected nearest the ATA interface is always configured as Master and the device on the end of the cable is always configured as Slave. CSEL has long been a part of the ATA PnP standard and was first formalized in the Intel/Microsoft PC97 standard, but was little used until recently. If the CSEL jumper is connected, no other jumpers may be connected. For more information about CSEL, see the following section.

Sole/Only

When functioning as Master, a few older ATA/ATAPI devices need to know whether they are the only device on the channel, or if a Slave device is also connected. Such devices may have an additional jumper position labeled Sole or Only. For such devices, jumper as Master if it is the first of two devices on the interface, Slave if it is the second of two devices on the interface, and Sole/Only if it is the only device connected to the interface.

Slave Present

A few older drives have a jumper designated Slave Present, or SP. This jumper performs the inverse function of the Sole/Only jumper, by notifying a device jumpered as Master that there is also a Slave device on the channel. For such devices, jumper as Master if it is the only device on the interface, or Slave if it is the second of two devices on the interface. If it is the Master on a channel that also has a Slave installed, connect both the Master and Slave Present jumpers.

13.1.5.2 Using Cable Select

All recent ATA/ATAPI drives provide a Cable Select (CS or CSEL) jumper in addition to the standard Master/Slave jumpers. If you jumper a drive as Master (or Slave), that drive functions as Master (or Slave) regardless of which connector it is attached to on the ATA cable. If you jumper a drive as CSEL, the position of the drive on the cable determines whether the drive functions as a Master or a Slave.

CSEL was introduced in the ATA-2 and ATA-3 specifications as a means to simplify ATA configuration. The goal was that eventually all ATA/ATAPI devices would be configured to use CSEL. That would mean that drives could simply be installed and removed without changing jumpers, with no possibility of conflict due to improper jumper settings. Although CSEL has been around for years, it has only recently become popular with system makers. If you work on a PC built in the last year or two, you may encounter CSEL, so it's good to be aware of it.

Using CSEL requires the following:

  • If one drive is installed on the interface, that drive must support and be configured to use CSEL. If two drives are installed, both must support and be configured to use CSEL.

  • The ATA interface must support CSEL. For this to be true, the ATA interface must ground pin 28. On many older ATA interfaces, pin 28 is open or high, and so cannot be used for CSEL. If pin 28 is not grounded on the interface, any drive configured as CSEL that connects to that interface is configured as Slave.

  • The ATA cable must be a special CSEL cable. Unfortunately, there are three types of CSEL cable:

    • A 40-wire standard CSEL cable differs from a 40-wire standard ATA cable in that pin 28 is connected only between the ATA interface and the first drive position on the cable (the middle connector). Pin 28 is not connected between the interface and the second drive position (the end connector on the cable). With such a cable, the drive attached to the middle connector (with pin 28 connected) is Master; the drive attached to the connector furthest from the interface (with pin 28 not connected) is Slave.

    • All 80-wire (Ultra DMA) ATA cables support CSEL, but with exactly the opposite orientation of the 40-wire standard CSEL cable described above. With such a cable, the drive attached to the middle connector (with pin 28 not connected) is Slave; the drive attached to the connector furthest from the interface (with pin 28 connected) is Master. This is actually a better arrangement, if a bit non-intuitive—how can a wire be connected to the end connector but not to the one in the middle?—because the standard 40-wire CSEL cable puts the Master drive on the middle connector. If only one drive is installed on that cable, that leaves a long "stub" of cable hanging free with nothing connected to it. Electrically, that's a very poor idea, because an unterminated cable allows standing waves to form, increasing noise on the line and impairing data integrity.

    • A 40-wire CSEL Y-cable puts the interface connector in the middle with a drive connector on each end, one labeled Master and one Slave. Although this is a good idea in theory, in practice it seldom works. The problem is that IDE cable length limits still apply, which means that the drive connectors don't have enough cable to get to the drives in all but the smallest cases. If you have a tower, you can forget it.

40-wire CSEL cables are supposed to be clearly labeled, but we have found that this is often not the case. It is not possible to identify such cables visually, although you can verify the type using a DVM or continuity tester between the two end connectors on pin 28. If there is continuity, you have a standard ATA cable. If not, you have a CSEL cable.

Keep unlabeled 40-wire CSEL cables segregated from standard cables. If you substitute a CSEL cable for a standard cable, drives that are jumpered Master or Slave function properly. If you substitute a standard cable for a CSEL cable and connect one drive jumpered CSEL to that cable, it will function properly as Master. But if you connect two CSEL drives to a standard cable, both function as Master, which may result in anything from subtle problems to (more likely) the system being unable to access either drive.

13.1.5.3 Master/Slave Guidelines

When deciding how to allocate devices between two interfaces and choosing Master versus Slave status for each, use the following guidelines:

  • Always assign the main hard drive as Primary Master. Particularly if your hard drive supports fast DMA modes (ATA-66 or ATA-100), do not connect another device to the primary ATA interface unless both positions on the secondary interface are occupied.

  • ATA forbids simultaneous I/O on an interface, which means that only one device can be active at a time. If one device is reading or writing, the other device cannot read or write until the active device yields the channel. The implication of this is that if you have two devices that need to perform simultaneous I/O, e.g., a CD writer that you use to duplicate CDs from a CD-ROM drive, you should place those two devices on separate interfaces.

  • If you are connecting an ATA device (a hard drive) and an ATAPI device (e.g. an optical drive or a tape drive) to the same interface, set the hard drive as Master and the ATAPI device as Slave.

  • If you are connecting two similar devices (ATA or ATAPI) to an interface, it generally doesn't matter which device is Master and which Slave. There are exceptions to this, however, particularly with ATAPI devices, some of which really want to be Master (or Slave) depending on which other ATAPI device is connected to the channel.

  • If you are connecting an older device and a newer device to the same ATA interface, it's generally better to configure the newer device as Master because it is likely to have a more capable controller than the older device.

  • Try to avoid sharing one interface between a DMA-capable device and a PIO-only device. If both devices on an interface are DMA-capable, both use DMA. If only one device is DMA-capable, both devices are forced to use PIO, which reduces performance and increases CPU utilization dramatically. Similarly, if both devices are DMA-capable, but at different levels, the more capable device is forced to use the slower DMA mode.

13.1.6 ATA Cables

All desktop ATA cables have three 40-pin connectors, one that connects to the ATA interface and two that connect to ATA/ATAPI drives. All standards-compliant ATA cables—there are many that do not comply—share the following characteristics:

  • An ATA cable must be at least 10" (0.254m) long, and no longer than 18" (0.457m) long.

  • The center-to-center distance between one end connector and the middle connector must be 5" (0.127m) minimum to 12" (0.304m) maximum. The distance between the center connector and the other end connector must be 5" minimum to 6" (0.152m) maximum.

  • Pin 1 is indicated by a colored stripe on the cable (usually a red stripe on a gray cable).

  • ATA cables are keyed, either by blocking pin 20, by using a keyed shroud, or both.

ATA cables come in three varieties:

Standard

A standard ATA cable uses a 40-wire ribbon cable and 40-pin connectors in all three positions. All 40 conductors connect to all three connectors. The only real variation, other than cable quality, is the positioning of the three connectors. A standard ATA cable requires using Master/Slave jumpering for connected devices. All connectors on a standard ATA cable are interchangeable, which is to say that any drive may be connected to any position, and the interface itself may be connected to any position, including the center connector. A standard ATA cable may be used with any ATA/ATAPI device through ATA-33. If a standard ATA cable is used to connect ATA-66/100 devices, those devices will function properly, but will fall back to operating at ATA-33.

Standard/CSEL

A standard/CSEL ATA cable is identical to a standard ATA cable except that pin 28 is not connected between the middle drive connector and the end drive connector. A standard/CSEL ATA cable supports either Master/Slave jumpering or CSEL jumpering for connected devices. Connector position is significant on a standard/CSEL cable. The interface connector on a CSEL cable is either labeled or is a different color than the drive connectors. The center connector is for the Master device, and the end connector opposite the interface connector is for the Slave device.

Ultra DMA (80-wire)

An Ultra DMA cable uses an 80-wire ribbon cable and 40-pin connectors in all three positions. The additional 40 wires are dedicated ground wires, each assigned to one of the standard 40 ATA pins. An Ultra DMA cable may be used with any ATA/ATAPI device—and should be for more reliable functioning—but is required for full performance with ATA-66 and ATA-100 devices. All Ultra DMA cables are CSEL cables, and may be used either with drives jumpered CSEL or those jumpered Master/Slave.

The following points about Ultra DMA cables are worth being aware of:

  • The Ultra DMA cable was first defined for UDMA Modes 0 through 2 for transfer speeds up to 33 MB/s, but is optional for those modes. For UDMA Mode 3 and higher, the Ultra DMA cable is required.

  • All Ultra DMA cables have pin 28 wired to support CSEL mode, and so can be used to connect drives that use either CSEL or Master/Slave jumpering.

  • Color-coded connectors were not specified for earlier ATA cables. The Ultra DMA cable specification requires the following connector colors:

    Blue

    One end connector is blue, which indicates that it attaches to the ATA interface.

    Black

    The opposite end connector is black, and is used to attach the Master drive (Device 0), or a single drive if only one is attached to the cable. If CSEL is used, the black connector configures the drive as Master. If standard Master/Slave jumpering is used, the Master drive must still be attached to the black connector. This is true because ATA-66 and ATA-100 do not allow a single drive to be connected to the middle connector, which results in standing waves that interfere with data communication.

    Gray

    The middle connector is gray, and is used to attach the Slave drive (Device 1), if present.

    Note the difference between using a 40-wire CSEL cable and an 80-wire cable for CSEL operation. Although all Ultra DMA cables support drives jumpered either Master/Slave or CSEL, that does not mean you can freely substitute an 80-wire cable for a 40-wire cable. If the drives are jumpered Master/Slave, substituting an 80-wire cable works fine. However, if the drives are jumpered CSEL, replacing a 40-wire CSEL cable with an 80-wire cable causes the drives to exchange settings. That is, the drive that was Master on the 40-wire cable becomes Slave on the 80-wire cable, and vice versa.

  • Because an Ultra DMA cable is required for ATA-66 or ATA-100 operation, the system must have a way to detect if such a cable is installed. This is done by grounding pin 34 in the blue connector, which attaches to the interface. Pin 34 carries the GPIO_DMA66_Detect_Pri signal (primary interface) or the GPIO_DMA66_Detect_Sec signal (secondary interface). These signals are also referred to as /PDIAG:/CBLID. Because 40-wire ATA cables do not ground pin 34, the system can detect at boot whether a 40-wire or 80-wire cable is installed. In some Ultra ATA cables, the grounding is done internally and is therefore invisible. In others, the signal conductor for pin 34 is cut in the cable, as shown in Figure 13-1. Figure 13-2 shows a 40-wire standard ATA cable and an 80-wire UltraATA cable side-by-side for comparison. Note that the 80-wire cable uses a gray end connector, and so is not standards compliant.

Figure 13-1. An Ultra DMA cable, showing pin 34 cut
figs/pcn2_1301.gif
Figure 13-2. Standard 40-wire cable (left) and 80-wire cable
figs/pcn2_1302.gif

13.1.7 Compatibility Between Old and New IDE Devices

With only minor exceptions, there are no compatibility issues when using new ATA devices with old ATA interfaces or vice versa. Newer drives cannot yield their highest performance when connected to an ATA interface that does not support the fastest transfer modes the drive is capable of, just as a new interface can't improve the performance of an older drive. But you can connect any ATA drive to any ATA interface with reasonable assurance that it will function, although perhaps not optimally.

Nearly all modern ATA interfaces—including the ubiquitous Intel PIIX3 and PIIX4—support independent timing for Master and Slave devices. This means that you can safely put an old, slow ATA or ATAPI device on the same cable as a new, fast hard drive without concern that the older device will cripple the throughput of the newer one.

Note that independent timing does not mean that you should mix DMA and PIO devices on the same interface. If an interface has one PIO-mode device connected, the other device must also run PIO. Also, independent timing does not mean that an interface supports multiple DMA modes simultaneously. For example, if you connect an ATA-66 drive and an ATA-33 drive to the same interface, both run as ATA-33 devices.

13.1.8 IDE Capacity Limits

Various IDE capacity limits exist, which depend on the BIOS, interface hardware, operating system, and other factors. There's a lot of information and misinformation about these limits, so it's worth getting the facts straight before you accept unnecessary limitations. Most of these limits are a result of interactions between the methods that the BIOS and the ATA interface use to address sectors on a hard disk. Even the oldest BIOS or ATA interface can address large hard disks. In combination, however, interactions between the BIOS and the interface may limit the number of addressable sectors to a fraction of the number either could address alone. Table 13-5 summarizes these limits.

Table 13-5. ATA addressing and BIOS addressing limitations

Maximum addressable

ATA limit

Int13 limit

Shared limit

Cylinders

65,536 (216)

1,024 (210)

1,024

Heads

16 (24)

256 (216)

16

Sectors per track

255 (28 - 1)

63 (26 - 1)

63

Disk size (bytes)

136,902,082,560

8,455,716,864

528,482,304

ATA addressing uses four registers that total 28 bits. ATA numbers cylinders starting at 0. The cylinder address is a 16-bit value, divided as a least-significant 8-bit Cylinder Low register and a most-significant 8-bit Cylinder High register, allowing up to 65,536 cylinders to be addressed. Each cylinder has a number of heads, also numbered starting at 0, which are addressed using a 4-bit value stored in the lowest four bits of the Device/Head register, allowing up to 16 heads to be addressed. Sectors are numbered starting at 1, and are addressed using an 8-bit value stored in the Sector Number register, allowing up to 255 sectors to be addressed. These capacities mean that ATA can address up to (65,536 x 16 x 255) 512-byte sectors, which equals 136,902,082,560 bytes.

BIOS Int13 API addressing uses three registers that total 24 bits. Cylinder Low is an 8-bit register that stores the least significant eight bits of the 10-bit cylinder address. Cylinder High/Sector Number is an 8-bit register whose least significant two bits store the most significant two bits of the cylinder address and whose most significant six bits store the sector number. In conjunction, these addresses allow up to 1,024 cylinders and 63 sectors/track to be addressed. Head Number is an 8-bit register, which allows up to 256 heads to be addressed. These capacities mean that Int13 can address up to (1,024 x 256 x 63) 512-byte sectors, which equals 8,455,716,864 bytes.

The impact of these limits depends entirely on the addressing method used by the BIOS. From oldest to newest, here are the methods used by various BIOSes:

Cylinder-Head-Sectors (CHS)

Cylinder-Head-Sectors (CHS) is the access method used by early BIOSes to address individual sectors on a hard disk by identifying them directly by the cylinder, head, and sector where they reside. CHS in an ATA/Int13 environment is subject to the maximum common address register size supported for each element by ATA and Int13 addressing. This means that CHS can address at most 1,024 cylinders, 16 heads, and 63 sectors per track, which results in the 504/528 MB limit.

Extended Cylinder-Head-Sectors (ECHS)

Extended Cylinder-Head-Sectors (ECHS) is the most popular of several access methods (others being Large and Big IDE) used by so-called enhanced or translating BIOSes to support hard disks larger than those supported by CHS. ECHS or bit shift translation works by lying about disk geometry, translating an unsupported physical geometry to a supported logical geometry whose address will fit the available registers. For example, ECHS translation may represent a 1 GB drive whose physical geometry is 2,048 cylinders, 16 heads, and 63 sectors per track as having a logical geometry of 1,024 cylinders, 32 heads, and 63 sectors per track, allowing the full 1 GB to be recognized and used. The problem with ECHS translation is that it is nonstandard, and different BIOSes handle it differently.

Logical Block Addressing (LBA)

Logical Block Addressing (LBA) dispenses with CHS addressing entirely, and addresses each sector sequentially. With LBA addressing, all 28 address bits (16+4+8) are used as one LBA address, allowing up to 228 (268,435,456) sectors or 137,438,953,472 bytes to be addressed. Note that, with LBA addressing, sector numbers start at 0. LBA assist translation can be used only with BIOSes and drives that support LBA addressing. With LBA translation, the drive reports its actual geometry to the BIOS, which then multiplies the cylinders, heads, and sectors reported by the drive to determine the total number of sectors to be used for LBA translation. All modern BIOSes support LBA.

Various environments may enforce the following limits:

504/528 MB

This limit results from the interaction between ATA addressing and CHS Int13 addressing, which allows 1,024 cylinders, 16 heads, 63 sectors/track, limiting drive capacity to 528,482,304 bytes, or 504 MB. To get around this limit, you may upgrade the PC BIOS to one with LBA support, disable the embedded interface and replace it with one that has LBA support, or install a BIOS extender card that provides LBA support with the existing interface. If a hardware solution is not feasible, installing a third-party driver such as Ontrack Disk Manager allows using large disks, but with some limitations relative to the hardware solutions.

2.0/2.1 GB (hardware)

Various manufacturers attempted to solve the 504 MB limit by various methods, including modifications to the way registers were manipulated. One such method was to "steal" the two previously unused high-order bits assigned to the head register and assign them to the cylinder register, expanding it from 10 to 12 bits. This increased the number of addressable cylinders to 4,096, but in doing so limited the number of heads that could be addressed to 64. Because this translation method was not commonly used, the two high-order head bits cannot safely be assumed to be assigned to either the head count or the cylinder count, which allows 1,024 cylinders, 64 heads, and 63 sectors/track. Multiplying these numbers yields 2,113,929,216 bytes, usually stated as 2.0 or 2.1 GB. You've encountered this limit if the system hangs during POST when the BIOS attempts to translate the cylinders and heads. The solutions are the same as for the 504 MB limit.

2.0/2.1 GB (software)

This limit derives from how the FAT filesystem tracks hard disk space. FAT16 cannot use clusters larger than 32,768 bytes, or 64 512-byte sectors per cluster, and can track at most 65,536 clusters. Multiplying the numbers yields 2,147,483,648 bytes, or 2 GB. The only solution is to use multiple partitions, each no larger than 2 GB. The FAT32 filesystem used by Windows 95B/98/2000 and the NTFS filesystem used by Windows NT/2000/XP are not subject to this limit.

3.27 GB

Some BIOSes do not properly handle cylinder counts over 6,322, enforcing a limit of about 3.27 GB. A BIOS has this limit if the PC hangs when you enter a value of 6,322 cylinders or more. The solutions are the same as those listed for the 504 MB limit.

4.2 GB

Some interfaces store the number of heads reported by the BIOS as an 8-bit number, calculated modulo-256. If the BIOS reports 256 heads, these interfaces fill the 8-bit register with zeros (the least-significant eight bits), assume that the drive has zero heads, and refuse to allow it to be configured. This problem occurs if the drive reports 16 heads and 8,192 or more cylinders to the bit shift translation, effectively limiting drive size to 1,024 cylinders x 128 heads x 63 sectors/track x 512 bytes/sector = 4,227,858,432 bytes. Because LBA translation never reports more than 255 heads, this problem does not occur with BIOSes that use LBA translation. A BIOS has this limit if the computer hangs at boot after you create partitions on the drive. The solutions are the same as those listed for the 504 MB limit.

8.4 GB

LBA translation uses ID words 1, 3, and 6 of the Identify Drive command. These three 8-bit words allow maximum LBA values of 16,384 cylinders, 16 heads, and 63 sectors/track, for a total capacity of 8,455,716,864 bytes. Exceeding this limit requires BIOS support for extended Int13 functions, which is available with recent BIOSes. Extended Int13 functions no longer transfer disk addresses via host registers. Instead, they pass the "address of an address" by placing a 64-bit LBA Device Address packet in host memory. The least-significant 28 bits of this packet contain a standard 28-bit LBA address. If the drive uses LBA addressing, the least-significant 28 bits of this packet may be passed directly to the ATA registers. If the drive does not support LBA addressing, the host translates the full LBA address to a CHS address, allowing the full capacity of the disk drive to be used, within overall ATA and LBA limitations.

The BIOS may have this limit if the PC hangs during POST when it tries to translate cylinders and heads, if the total disk capacity reported to the operating system is 8.4 GB or less, or if strange things happen when you partition or format the disk. For example, fdisk may refuse to partition the drive, claiming that it is read-only, or format may report a huge number of bad sectors. The solutions are the same as those listed for the 504 MB limit.

The atapi.sys driver provided with Windows NT 4 does not recognize hard disks larger than 8 GB. To install Windows NT on a larger disk, follow the instructions in the Microsoft Knowledge Base article at http://support.microsoft.com/support/kb/articles/q197/6/67.asp.

32 GB

An Award BIOS dated earlier than June 1999 does not recognize drives larger than 32 GB. Current versions of the Award BIOS no longer have this limit. Many motherboard manufacturers have posted updates for their products that use an Award BIOS.

128 GB / 137 GB

This is an absolute limit that results from the 28-bit addressing used by ATA, which limits the total number of sectors to 268,435,456. With standard 512-byte sectors, 137,438,953,472 bytes (128 GB) is the largest drive that can be supported by ATA.

13.1.8.1 BIOS Upgrades for Extended Int13 Support

The best solution for all of these capacity limits (except the absolute 137 GB limit) is to update the BIOS or to buy a motherboard with a more recent BIOS. The best (and possibly only) place to get an updated BIOS is from the manufacturer of your computer or system board. This is true because, although many manufacturers use BIOSes based on the Phoenix, Award, and AMI core BIOS code, they may have made changes to it that render an updated generic BIOS unusable and may have also impacted the extended Int13 support present in the core BIOS code. That said, here are the BIOS levels that eliminate limitations through the 8.4 GB limit:

American Megatrends, Inc. (AMI)

AMI BIOSes dated January 1, 1998 or later include extended Int13 support. Contact AMI directly for update information. (800-828-9264 or http://www.ami.com)

Award

Award BIOSes dated after November 1997 include extended Int13 support and can be used with disks larger than 8.4 GB. Award recommends contacting Unicore for BIOS updates. (800-800-2467 or http://www.unicore.com).

Phoenix

All Phoenix BIOSes are Version 4. It's the revision level that counts. Phoenix BIOSes at Revision 6 or higher have extended Int13 support. Phoenix recommends contacting Micro Firmware for BIOS updates. (800-767-5465 or http://www.firmware.com)

13.1.8.2 The Maxtor Big Drive Initiative

The 28-bit addressing used by the ATA interface limits ATA hard drives to a maximum size of (228 sectors x 512 bytes/sector) = 137,438,953,472 bytes = 128 GB. Drive makers, who insist on defining a gigabyte as 109 bytes rather than the traditional 230 bytes, refer to this as the "137 GB limit." Before 2001, this limit was not an issue, but during 2001 drive makers began shipping SCSI hard drives with capacities greater than 128 GB. Drive makers would have liked to ship larger ATA drives as well, but the 28-bit ATA addressing limit prevented them from doing so unless those drives used nonstandard large sector sizes. Sector sizes larger than 512 bytes would have introduced all sorts of potential compatibility problems, so there was no easy solution.

Until, that is, Maxtor Corporation introduced their Big Drive initiative. Big Drive replaces the existing 28-bit ATA interface with a new interface that uses 48-bit Logical Block Addressing (LBA) rather than the 28-bit LBA used by standard ATA interfaces. Those additional 20 bits mean that a Big Drive interface can address a binary million (220) times more sectors than a standard ATA interface, or (248 x 512 bytes/sector) = 144,115,188,075,855,872 bytes = 128 PB, which drive makers of course insist on calling "144 PB."

Compatibility between old and new drives and interfaces was a key issue, and Maxtor did an excellent job of maintaining that. ATA (28-bit) hard drives and other peripherals can be installed on a Big Drive interface, although doing so limits that interface to using 28-bit addressing for all devices connected to it. Conversely, Big Drive (48-bit) hard drives can be installed on a standard (28-bit) ATA interface, although doing so limits that drive to 128 GB usable capacity.

Big Drive is so important to the continuing development of ATA hard drives that we expect nearly all manufacturers to begin shipping Big Drive interfaces and devices in 2002. Note that having a Big Drive interface is important even for such devices as DVD-ROM drives, because installing an older 28-bit ATA drive on a Big Drive interface limits that interface to using 28-bit ATA addressing.

Don't bother telling us that binary values are actually kibibytes, mebibytes, and gibibytes, which use "bi" to indicate binary rather than decimal values. We're aware of this ill-considered initiative, and we don't know anyone who uses those words in real life. As an alternative, we propose everyone use the original definition of a kilobyte as 1,024 bytes, and substitute kidebyte, medebyte, or gidebyte when referring to decimal values. You heard it here first.

13.1.9 ATA and RAID

RAID (Redundant Array of Inexpensive Disks) is a means by which data is distributed over two or more physical hard drives to improve performance and increase data safety. A RAID can survive the loss of any one drive without losing data. Until recently, RAID was a SCSI-only technology largely limited by cost to use on servers. That changed when Promise Technology (http://www.promise.com) introduced a line of ATA-based RAID controllers that combine the benefits of RAID with the low cost of ATA, making RAID a realistic alternative for small servers and individual PCs.

We've been using inexpensive Promise FastTrak cards on a couple of our systems for years now to mirror large ATA drives. Anything written to one drive is automatically mirrored to the other drive. If either drive fails, the other drive continues to function without loss of data. Although such an array leaves only 50% of the installed disk space visible to the operating system, the low cost of ATA drives means this is a small price to pay for improved performance and greatly enhanced data safety. If you're building a small server, or even if you just want to protect the data on your standalone PC, look into the Promise RAID products. Although other manufacturers, including Adaptec, now also make ATA RAID cards, we have no experience with them and are quite satisfied with Promise.

13.1.10 Serial ATA

The Serial ATA Working Group (http://www.serialata.org) is a group of companies led by APT Technologies Inc., Dell Computer Corporation, IBM Corporation, Intel Corporation, Maxtor Corporation, Quantum Corporation, and Seagate Technology (Maxtor and Quantum merged in April 2001). In December 2000, this group released the Serial ATA Draft Specification 1.0, which defines a replacement for the current parallel ATA physical storage interface. Although components based on Serial ATA (SATA) technology are not yet shipping, we expect SATA to begin volume shipments in late 2002 and to replace standard (parallel) ATA and ATAPI by late 2003.

You needn't worry about current ATA motherboards and drives being orphaned. During the transition, we expect most motherboards to have both ATA and Serial ATA interfaces embedded, and there will doubtless be add-on Serial ATA adapters available from Adaptec, Promise Technology, and others. We expect ATA drives to be available at least through 2006, and probably into 2007 or later.

SATA will be used to connect internal storage devices such as hard drives, optical drives, and tape drives to the PC motherboard. Serial ATA Revision 1.0, called Ultra SATA/1500 or SATA/150, operates at 1.5 Gb/s, and provides 150 MB/s read/write performance for storage peripherals. SATA Revision 2.0 (Ultra SATA/3000 or SATA/300) is already in the works, and will operate at 3.0 Gb/s. SATA Revision 3.0 (Ultra SATA/4500 or SATA/450) is planned, and will operate at 4.5 Gb/s. Table 13-6 compares features of parallel ATA, SATA, and other current high-speed bus standards.

Table 13-6. Serial ATA compared with other high-speed bus standards

Interface

ATA

SATA

SCSI

USB

IEEE-1394

Internal/External

figs/blackdot.gif / figs/whitedot.gif

figs/blackdot.gif / figs/whitedot.gif

figs/blackdot.gif / figs/blackdot.gif

figs/whitedot.gif / figs/blackdot.gif

figs/blackdot.gif / figs/blackdot.gif

Storage / I/O peripherals

figs/blackdot.gif / figs/whitedot.gif

figs/blackdot.gif / figs/whitedot.gif

figs/blackdot.gif / figs/blackdot.gif

figs/whitedot.gif / figs/blackdot.gif

figs/blackdot.gif / figs/blackdot.gif

2001 speed (MB/s)

100

n/a

160

1.5

50

2002 speed (MB/s)

100/133

150

160

60

50

2003 speed (MB/s)

133

150/300

320

60

200

Cable length (m)

0.45

1.0

12.0

5.0

4.5

Bootable?

Yes

Yes

Yes

No

No

Embedded interface?

Yes

Yes

Seldom

Yes

No

Hot pluggable?

No

Yes

Yes

Yes

Yes

SATA has the following important features:

Reduced voltage

Current ATA standards use 5.0V or 3.3V (ATA-100/133). These relatively high voltages in conjunction with high pin densities make 100 MB/s the highest data rate that is realistically achievable. SATA uses 500 millivolt (0.5V) peak-to-peak signaling, which results in much lower interference and crosstalk between conductors.

Simplified cabling and connectors

SATA replaces the 40-pin/80-wire parallel ATA ribbon cable with a 7-wire cable. In addition to reducing costs and increasing reliability, the smaller SATA cable eases cable routing and improves air flow and cooling. An SATA cable may be as long as 1 meter (39+ inches), versus the 0.45 meter (18") limitation of standard ATA. This increased length contributes to improved ease of use and flexibility when installing drives, particularly in tower systems. The smaller and less expensive SATA connector replaces the large, cumbersome 40-pin connectors used by standard ATA.

Differential signaling

In addition to three ground wires, the 7-wire SATA cable uses a differential transmit pair (TX+ and TX-) and a differential receive pair (RX+ and RX-)

Improved data robustness

In addition to using differential signaling, SATA incorporates superior error detection and correction, which ensures the end-to-end integrity of command and data transfers at speeds greatly exceeding those available with standard ATA.

Operating system compatibility

SATA appears identical to parallel ATA from the viewpoint of the operating system. This means that current operating systems can recognize and use SATA interfaces and devices using existing drivers.

Forward and backward device compatibility

SATA backers appreciate that there will be a transition period during which parallel ATA and Serial ATA must coexist. Inexpensive dongles will adapt parallel ATA devices to SATA interfaces, and SATA devices to parallel ATA interfaces.

    Team LiB   Previous Section   Next Section