Integrated Drive Electronics (IDE)
is an interface used to connect internal storage devices such as hard
disk and CD/DVD-ROM drives. The acronym 'IDE' first appeared in 1986
when Compaq, Western Digital, and a division of Control Data Corporation
called Imprimis, were developing a hard disk drive with an integrated
controller. Two years later a subgroup of the Common Access Method (CAM)
committee was formed, which submitted a standard to the American
National Standards Institute in late 1990 that was finally approved four
years later. The specification's official name is AT Attachment (ATA),
but we often still refer to the ATA specification as IDE. More and more
manufacturers have started using the proper term ATA. Today the
Technical Committee T13 is primarily responsible for all interface
standards relating to the ATA interface.
Early PCs using the IDE
interface had ISA expansion boards with an IDE connector. Most
motherboards available today have multiple integrated IDE connectors.
The first IDE devices were rather slow, using the 8-bit ISA interface
the maximum data throughput was 4MBps, 16-bit IDE connections allowed up
to 8 MBps. This first IDE/ATA standard has support for only one channel
allowing a maximum of two hard disks. It supports PIO modes 0, 1, and
2, and single word DMA modes 0, 1, and 2, and multiword DMA mode 0.
PIO modes and DMA modes define different methods for the disk drive to communicate with the system. The older method Programmed I/O (PIO)
requires the help of the CPU to transfer data between the disk and the
system's memory. There are 5 different PIO modes listed in the following
table along with their corresponding maximum transfer rates:
PIO Mode |
Transfer Rate (MBps) |
Mode 0
|
3.3 |
Mode 1 |
5.2 |
Mode 2 |
8.3 |
Mode 3 |
11.1 |
Mode 4 |
16.7 |
DMA is short for Direct Memory Access.
As it name implies, DMA allow direct access to the system's memory,
bypassing the CPU. Single word DMA transfers a single word (2
bytes/16-bits) per transfer session, where multiword DMA sets up a
transfer session and sends several words after each other, reducing the
overhead per transfer session. The following table lists the different
DMA modes along with their corresponding maximum transfer rates:
DMA Mode |
Transfer Rate (MBps) |
Single word 0
|
2.1 |
Single word 1 |
4.2 |
Single word 2 |
8.3 |
Multiword 0 |
4.2 |
Multiword 1 |
13.3 |
Multiword 2 |
16.7 |
In 1994 Enhanced IDE (EIDE) was developed by Western Digital to:
- increase the maximum data throughput to up to 16.7 MBps.
- increase the 528MB size limit to 8.4GB.
- support two controllers instead of one, allowing a maximum of four disks instead of two.
Seagate and Quantum developed similar technologies which were promoted as FASTATA and FASTATA-2. Eventually, the features of the these unofficial standards were combined in the official standard ATA-2. Besides the improvements listed above, ATA-2 offers support for:
- Logical Block Addressing (LBA) and block transfer
- PIO modes 3 and 4
- Multiword DMA modes 1 and 2
Several CD-ROM drive
manufacturers, including Western Digital, worked together to develop a
specification that would allow CD-ROM drives and tape drives to be
connected to the same interface and cable as hard disk drives. The Small Form Factor (SFF) committee initially published it as the AT Attachment Packet Interface (ATAPI) specification. ATAPI eventually became an extension to ATA in ATA/ATAPI-4.
Several other additions were made to the ATA standard, such as ATA-3,
which introduced some reliability features and allowed password
protection for devices. The first major new version of ATA was ATA/ATAPI-4, which combined ATA with ATAPI and introduced Ultra DMA.
Again there are several modes, all multiword, of Ultra DMA. The table
below lists the Ultra DMA modes along with their corresponding maximum
transfer rates. ATA/ATAPI 4 supports Ultra DMA mode 0, 1, and 2. Ultra
DMA mode 2 is also known as Ultra DMA/33, Ultra-ATA, and ATA-33.
Ultra DMA Mode |
Transfer Rate (MBps) |
Mode 0
|
16.7 |
Mode 1 |
25 |
Mode 2 |
33.3 |
Mode 3 |
44.4 |
Mode 4 |
66.7 |
Mode 5 |
100 |
Mode 6 |
133 |
ATA/ATAPI-5, added support
for Ultra DMA mode 3 and 4. Ultra DMA mode 4 is also known as Ultra
DMA/66. ATA/ATAPI-6 introduced Ultra DMA mode 5, supporting data
transfer rates up to 100MBps.
Intel and a group of other companies have developed a serial version
as an alternative to the parallel ATA interface and was published as Serial ATA (SATA). The SATA specification was handed over to T13 to include it in ATA/ATAPI-7 (volume 3) and is now called SATA-1. ATA/ATAPI-7 includes UltraDMA mode 6 already known as Ultra DMA 133,
some new commands for use by digital video recorders, and T13's version
of Serial ATA, SATA-1. SATA can transfer data up to 150MBps (and will
likely advance to 300 MB and 600 MB per second in the near future),
making it, in theory, faster than parallel ATA (now also referred to as PATA)
using UltraDMA mode 6 running at 133MBps. These transfer rates are so
called burst rates, the average rates are much lower making the
difference between PATA and SATA very small. The currently available
SATA hard disk are mostly not native SATA drives, instead the
disks include a chip that functions as a parallel-to-serial bridge. This
bridge limits the transfer rates which would be 1.5Gbps according to
the first version of SATA.
The Serial ATA final 1.0a specification was released on Feb 4, 2003.
Intel continues to work on SATA and joined forces with a the Serial
Attached SCSI (SAS) subdivision of T10. They are currently working on an
extension to the SATA 1.0a specification, called SATA II, which focuses
on support for multiple devices per SATA bus, RAID, and more.
Installing an 'IDE' device
A standard PC is usually equipped with two IDE controllers ("ATA interfaces" ), a primary and a secondary controller, also referred to as the primary and the secondary IDE channel.
Per channel you can connect two devices, hence a standard PC can hold
up to four IDE devices in total. The following picture shows the primary
and the secondary IDE connector on the mainboard.
When two devices are connected to a single IDE channel, using the same physical cable, one device must be configured as master and the other as slave. This is usually done by setting a jumper on the device. Two other settings that typically can be set by the jumper are Cable Select
(the master/slave setting will be based on the position of the device
on the cable. The device farthest from the IDE controller will be
selected as master) and Single (this setting can be used when there is only one device connected to the cable.)
The picture below on the
left, shows a regular flat ribbon 40-pins/wires IDE cable with 3
connectors, also referred to as an IDE-33 cable. The devices connect to
the two connector closest together, the connector on the far end
connects to the mainboard's IDE connector. One side of the cable has a red edge to mark the side that connects to pin 1 on the mainboard's connector and pin 1 on the device.
The picture on the right
shows a flat ribbon IDE-66/100 cable with 80 wires. The extra 40 strands
in an 80-wire cable act as insulators between the 40 signaling strands
to prevent crosstalk. This type of cable usually has one blue
connector, this connector connects to one of the mainboard's IDE
connectors. The black connector connect to the master device and the
gray/white connector to the slave. This type of cable was optional for
ATA/ATAPI-4 compliant devices and is mandatory in ATA/ATAPI-5 to be able
to support the maximum transfer rates. If you have an ATA/66, 100 or
133 drive without the 80-wire cable, the drive will only run at
33MB/sec. An alternative to the flat ribbon cable has been introduced a
couple of years ago. The main advantage is better airflow inside the
computer's case, hence a 'cooler' system.
SATA supports a single device per SATA cable. A SATA cable can be
longer than a parallel ATA cable (max. 1.5 feet), about 3 feet. Serial
ATA has a thinner cable and a smaller connection that is keyed so they
cannot be connected incorrectly, unlike some parallel ATA cables. The
following pictures show the new Serial ATA 7-wires cable and its
connectors.
RAID
RAID stand for Redundant Array of Inexpensive (or Independent) Disks,
and is commonly used on servers in corporate environments. It allows
multiple hard disks to be combined. The three most common, and important
for the Network+ exam, are described next.
RAID 1 refers to Disk Mirroring/Duplexing.
This configuration requires two, in some cases identical, hard disks.
When the OS writes data to the hard disk, the same data is also written
to the mirrored disk. This may slow down write performance, but
increases read performance since data can be read form both disks at the
same time. It's called duplexing when each disk has its own
hard disk controller, providing an extra level of redundancy. When a
disk fails the other disk can continue to operate, in some
configurations this process occurs entirely automatically. In Window NT
and higher, when the main disk fails, you'll need to manually configure
the system to use the mirrored disk.
RAID 5 is more advanced and requires at least 3 hard disks. RAID 5 is also known as a stripe set with parity.
When data is written to the RAID 5 set, it is distributed over several
disks, and parity information about data blocks on one disk are stored
on the other disks. In case of a disk failure, the parity information
can be used to reconstruct the data which was on the missing disk.
Because data is spread out over several disks, RAID 5 offers better read
performance than single or mirrored disks. But because every write
requires the parity calculation, write performance can be slower,
especially when RAID 5 is implemented in software. If two disks in a
RAID 5 set fail, you will need to replace the disks and restore the
information from backup.
Fault tolerance RAID configurations implemented in hardware usually
offer hot-swapable drives. This means you can pull out and replace a
drive while the system is running, and it will perform the
reconstruction of the data automatically.
Another type is RAID 0, also known as a stripe set.
It requires at least 2 hard disks, but does not offer fault tolerance,
it's merely a method of combining hard disks to allow for larger
volumes. When a file is written to a RAID 0 stripe set with 2 disks, the
first block is written to the first disk, the second block to the
second disk, and the third data block is written on the first disk, and
so on. If one of the hard disks in the stripe set fails, the entire
stripe set is lost and needs to be rebuild and restored from backup.
|
|
Comments
Post a Comment