The basic architecture of IDE is that a simple signal routing host adapter ("controller") attached to the PC bus handles data and control signals to one or two devices plugged into a short cable. Each device includes a controller that does the real work of moving data to and from the device. IDE (also called AT Attachment -- ATA) technology was designed to put a low cost controller on the drive while giving existing software the illusion that the controller is a multidrive controller in the PC.
The two IDE devices are called "Master" and "Slave", but unlike other Master-slave relationships, the IDE "Master" does not routinely relay commands to the "slave" and does not provide bus control for the "slave". Which device is which is determined by jumpers or by which plug is used on a special cable.
The following differences exist between the "Master" and "Slave"
1. The "Master" responds to commands directed to Device 0. The "Slave" responds to Device 1 commands.
2. After each Reset, the "Slave" asserts a signal (DASP) briefly to tell the "Master" to wait for a second signal (PDIAG) before reporting status to the PC. PDIAG is set when the "Slave" completes diagnostics. This somewhat bizarre process is a concession to making software originally designed to work with MFM disk controllers think there is only one controller on the channel rather than two. Apparently, almost all IDE setup problems are due to mishandling of the DASP and/or PDIAG during drive initialization.
3. On some IDE disk drives made in the late 1990s and thereafter, the "Master" places synchronization pulses on an obsolete data line (ALE) with every disk rotation. The "Slave" attempts to synchronize its rotation with the pulses. This feature is needed only for RAID or other synchronous disk arrays.
Return To Index Copyright 1994-2002 by Donald Kenney.