Hard Disk Communication
"The hard disk controller provides the logical link between a hard disk unit and the
program code within the host computer. It reacts to requests from the computer by
sending seek, read, write, and control signals to the drive and must interpret and
control the flow of data." [Nicholas Majors & Data Recovery Labs (1998)]
The hard disk controller must encode, decode, and seperate all the data being transmitted to
and from the hard disk. This data includes sector ID's, positioning information and timing signals.
This is done through transfers over buses, or paths, that connect the processor and hard disk.
One industry standard for the transfer of data is IDE, or Integrated Device Electronics. It
was one of the earliest standards, developed in 1986, by Western Digital and Compaq. It was
developed to overcome limitations in other standards. Although IDE wasn't adopted, it was
incorporated into the standard that was, AT Attachment (ATA).
The controller uses IRQ's (Interrupt Request), which are bus lines that signal a hardware
interrupt to the CPU. The hard disk controller also sometimes uses DMA, or Direct Memory
Access, which bypasses the Central Processing Unit, and transfers the data directly between
the harddrive and memory.