You are on page 1of 6

1

How IDE Controllers Work


by Jeff Tyson

+o matter hat you do ith your computer, storage is an important part of your system. In fact, most personal computers have one or more of the follo ing storage devices,

-loppy drive .ard drive /D01*# drive

The hard drive and circuit board combination that typify IDE devices

Usually, these devices connect to the computer through an Integrated Drive Electronics (IDE) interface. Essentially, an IDE interface is a standard ay for a storage device to connect to a computer. IDE is actually not the true technical name for the interface standard. The original name, AT Attachment (!T!), signified that the interface as initially developed for the I"# !T computer. In this article, you ill learn about the evolution of IDE$!T!, hat the pinouts are and e%actly hat &slave& and &master& mean in IDE.

IDE Evolution
IDE as created as a ay to standardi'e the use of hard drives in computers. The basic concept behind IDE is that the hard drive and the controller should be combined. The controller is a small circuit board ith chips that provide guidance as to e%actly ho the hard drive stores and accesses data. #ost controllers also include some memory that acts as a buffer to enhance hard drive performance. "efore IDE, controllers and hard drives ere separate and often proprietary. In other ords, a controller from one manufacturer might not or( ith a hard drive from another manufacturer. The distance bet een the controller and the hard drive could result in poor signal )uality and affect performance. *bviously, this caused much frustration for computer users.

The birth of the IDE interface led to combining a controller like this one with a hard drive

I"# introduced the !T computer in 2345


ith a couple of (ey innovations.

The slots in the computer for adding cards used a ne version of the Industry !tandard Architecture (I6!) bus. The ne bus as capable of transmitting information 27 bits at a time, compared to 4 bits on the original I6! bus. I"# also offered a hard drive for the !T that used a ne combined drive$controller. ! ribbon cable from the drive$controller combination ran to an I6! card to connect to the computer, giving birth to the !T !ttachment (!T!) interface.

In 2347, /ompa) introduced IDE drives in their Des(pro 847. This drive$controller combination as based on the !T! standard developed by I"#. "efore long, other vendors began offering IDE drives. IDE became the term that covered the entire range of integrated drive$controller devices. 6ince almost all IDE drives are !T!0based, the t o terms are used interchangeably.

/ontrollers, Drives, .ost !dapters


#ost motherboards come ith an IDE interface. This interface is often referred to as an IDE controller, hich is incorrect. The interface is actually a host adapter, meaning that it provides a ay to connect a complete device to the computer (host). The actual controller is on a circuit board attached to the hard drive. That9s the reason it9s called Integrated Drive Electronics in the first place:

A close"up of the primary and secondary IDE interfaces on a motherboard

;hile the IDE interface as originally developed for connecting hard drives, it has evolved into the universal interface for connecting internal floppy drives, /D01*# drives and even some tape bac(up drives. !lthough it is very popular for internal drives, IDE is rarely used for attaching an e%ternal device. There are several variations of !T!, each one adding to the previous standard and maintaining bac( ard compatibility. The standards include,

ATA"# 0 The original specification that /ompa) included in the Des(pro 847. It instituted the use of a master$slave configuration. !T!02 as based on a subset of the standard I6! 370pin connector that uses either 5< or 55 pin connectors and cables. In the 550pin version, the e%tra four pins are used to supply po er to a drive that doesn9t have a separate po er connector. !dditionally, !T!02 provides signal timing for direct memory access (D#!) and programmed input$output (=I*) functions. D#! means that the drive sends information directly to memory, hile =I* means that the computer9s central processing unit (/=U) manages the information transfer. !T!02 is more commonly (no n as IDE. ATA"$ 0 D#! as fully implemented beginning ith the !T!0> version. 6tandard D#! transfer rates increased from 5.27 megabytes per second (#"ps) in !T!02 to as many as 27.7? #"ps. !T!0> provides po er management, =/#/I! card support and removable device support. !T!0> is often called EIDE (Enhanced IDE), -ast !T! or -ast !T!0>. The total hard drive si'e supported increased to 28?.5

4
gigabytes. !T!0> provided standard translation methods for Cylinder Head !ector (/.6) for hard drives up to 4.5 gigabytes in si'e. /.6 is ho the system determines here the data is located on a hard drive. The reason for the big discrepancy bet een total hard drive si'e and /.6 hard drive support is because of the bit si'es used by the basic input$output system ("I*6) for /.6. /.6 has a fi%ed length for each part of the address. @oo( at this chart,

Cylinder Head !ector

2<0bit 40bit 70bit

2<>5 >A7 %&'

Bou ill note that the number of sectors is 78 instead of 75. This is because a sector cannot begin with (ero. Each sector holds A2> bytes. If you multiply 2,<>5 % >A7 % 78 % A2>, you ill get 4,5AA,?27,475 bytes or appro%imately 4.5 gigabytes. +e er "I*6 versions increased the bit si'e for /.6, providing support for the full 28?.5 gigabytes. ATA"& 0 ;ith the addition of 6elf0#onitoring !nalysis and 1eporting Technology (6#!1T), IDE drives ere made more reliable. !T!08 also adds pass ord protection to access drives, providing a valuable security feature. ATA") 0 =robably the t o biggest additions to the standard in this version are Ultra D#! support and the integration of the AT Attachment *rogram Interface (!T!=I) standard. !T!=I provides a common interface for /D01*# drives, tape bac(up drives and other removable storage devices. "efore !T!05, !T!=I as a completely separate standard. ;ith the inclusion of !T!=I, !T!05 immediately improved the removable media support of !T!. Ultra D#! increased the D#! transfer rate from !T!0>9s 27.7? #"ps to 88.88 #"ps. In addition to the e%isting cable that uses 5< pins and 5< conductors ( ires), this version introduces a cable that has 4< conductors. The other 5< conductors are ground ires interspersed bet een the standard 5< conductors to improve signal )uality. !T!05 is also (no n as Ultra D#!, Ultra !T! and Ultra !T!$88. ATA"+ 0 The maCor update in !T!0A is auto detection of hich cable is used, the 5<0 conductor or 4<0conductor version. Ultra D#! is increased to 77.7? #"$sec ith the use of the 4<0conductor cable. !T!0A is also called Ultra !T!$77.

/able Dey
IDE devices use a ribbon cable to connect to each other. 1ibbon cables have all of the ires laid flat ne%t to each other instead of bunched or rapped together in a bundle. IDE ribbon cables have either 5< or 4< ires. There is a connector at each end of the cable and another one about t o0thirds of the distance from the motherboard connector. This cable cannot e%ceed 24 inches (57 cm) in total length (2> inches from first to second connector, and 7 inches from second to third) to maintain signal integrity. The three connectors are typically different colors and attach to specific items,

The blue connector attaches to the motherboard. The blac( connector attaches to the primary (master) drive. The grey connector attaches to the secondary (slave) drive.

5
!long one side of the cable is a stripe. This stripe tells you that the ire on that side is attached to =in 2 of each connector. ;ire >< is not connected to anything. In fact, there is no pin at that position. This position is used to ensure that the cable is attached to the drive in the correct position. !nother ay that manufacturers ma(e sure the cable is not reversed is by using a cable key. The cable (ey is a small, plastic s)uare on top of the connector on the ribbon cable that fits into a notch on the connector of the device. This allo s the cable to attach in only one position.

The connector on an IDE cable *in 2 > 8 5 A 7 ? 4 3 2< 22 2> 28 25 2A 27 2? 24 Description 1eset Eround Data "it ? Data "it 4 Data "it 7 Data "it 3 Data "it A Data "it 2< Data "it 5 Data "it 22 Data "it 8 Data "it 2> Data "it > Data "it 28 Data "it 2 Data "it 25 Data "it < Data "it 2A *in >8 >5 >A >7 >? >4 >3 8< 82 8> 88 85 8A 87 8? 84 83 5< Description 0I*; Eround 0I*1 Eround I$* /hannel 1eady 6=6B+/, /able 6elect 0D!/D 8 Eround 1F 25 0I*/6 27 !ddress "it 2 0=DI!E !ddress "it < !ddress "it > 0/62-G 0/68-G 0D!$6= Eround

6
23 >< >2 >> Eround /able Dey (pin missing) D1F 8 Eround 52 5> 58 55 HA Iolts (@ogic) (*ptional) HA Iolts (#otor) (*ptional) Eround (*ptional) 0Type (*ptional)

+ote that the last four pins are only used by devices that re)uire po er through the ribbon cable. Typically, such devices are hard drives that are too small (for e%ample, >.A inches) to need a separate po er supply.

#asters and 6laves


! single IDE interface can support t o devices. #ost motherboards come ith dual IDE interfaces (primary and secondary) for up to four IDE devices. "ecause the controller is integrated ith the drive, there is no overall controller to decide hich device is currently communicating ith the computer. This is not a problem as long as each device is on a separate interface, but adding support for a second drive on the same cable too( some ingenuity. To allo for t o drives on the same cable, IDE uses a special configuration called master and slave. This configuration allo s one drive9s controller to tell the other drive hen it can transfer data to or from the computer. ;hat happens is the slave drive ma(es a re)uest to the master drive, hich chec(s to see if it is currently communicating ith the computer. If the master drive is idle, it tells the slave drive to go ahead. If the master drive is communicating ith the computer, it tells the slave drive to ait and then informs it hen it can go ahead. The computer determines if there is a second (slave) drive attached through the use of =in 83 on the connector. =in 83 carries a special signal, called Drive Active,!lave *resent (D!6=), that chec(s to see if a slave drive is present. !lthough it ill or( in either position, it is recommended that the master drive is attached to the connector at the very end of the IDE ribbon cable. Then, a Cumper on the bac( of the drive ne%t to the IDE connector must be set in the correct position to identify the drive as the master drive. The slave drive must have either the master Cumper removed or a special slave Cumper set, depending on the drive. !lso, the slave drive is attached to the connector near the middle of the IDE ribbon cable. Each drive9s controller board loo(s at the Cumper setting to determine hether it is a slave or a master. This tells them ho to perform. Every drive is capable of being either slave or master hen you receive it from the manufacturer. If only one drive is installed, it should al ays be the master drive. #any drives feature an option called Cable !elect (/6). ;ith the correct type of IDE ribbon cable, these drives can be auto configured as master or slave. /6 or(s li(e this, ! Cumper on each drive is set to the /6 option. The cable itself is Cust li(e a normal IDE cable e%cept for one difference 00 =in >4 only connects to the master drive connector. ;hen your computer is po ered up, the IDE interface sends a signal along the ire for =in >4. *nly the drive attached to the master connector receives the signal. That drive then configures itself as the master drive. 6ince the other drive received no signal, it defaults to slave mode.