Parallel ATA  

4 pin Molex "AMP Mate-n-Lock" power connection provides 5 volts for 
  electronics and 12 volts for drive motors.

40 pin connection between interface card and device.
  80 lines (40 extra ground) for faster data transfers.

Original protocol targeted hard drive devices.

ATAPI - ata packet interface.
  Additional protocol (commands) that allow controller to work with
  tape drives, cd and dvd drives, tape drives, large-capacity floppies, and 
  other non-hard drive devices. 

  Based on SCSI control commands and response. 

Serialized requests - Once a particular task is initialized, the 
  controller/device pair is tied up until done. This is the default for
  most implementation of PATA.

NCQ - native command queueing  - supported by protocol but seldom implemented.
  Would allow 2nd device to be acted on while 1st device is processing previous
  request.  (SCSI protocol).


The clock speed for the interface is based on the pc system bus. 

  Original design for AT bus giving 8 MB/s transfer.

  Current maximum 133 MB/s. based on coupling the interface controller to the
    PCI bus.

DMA - on later systems, DMA bus mastering was provided on the ATA-IDE interface
 rather than by the standard DMA controller of the system. 

Data transferred every clock cycle on both rising and falling clock of
  PCI bus 33MHz * 2 bytes * 2 per clock gives 133 MB/s. DMA required for full
  speed. 

  Data delivered to interface controller via 32 bit data bus.


Timing controlled by a set of registers in interface controller. 
  33 MHz, 66 MHz, 100 MHz, 133 MHz 

  Depending on how fast the system bus is and how successful data transfers
    are. If controller senses data lost, it will slow transfer to the next
    transfer rate.
   
16 data lines - used to transfer both data, command, and status information
  between controller and device. Addressing sectors of device, whether LBA
  or CHS, also occurs across data lines. 

3 address lines - allows for different physical devices. 
   The ide/ata interface is capable of accessing 4 channels of 2 devices each.

I/O read
I/O write
ALE - address latch enable
Reset 
Grounds 
Key or VCC_in - orient the physical position of plug. VCC_in used by some
  small devices as a power source.

  PATA does not deliver power via cable, so if plugged in backwards, damage
    unlikely - just won't work.

DDRQ - data direction request.
IOCHRDY - i/o channel ready.
Cable select - used instead of jumpers to specify which device slave.
DDACK - data direction acknowledge.
IRQ - interrupt request. Signals need for attention. Combined with
  other signals to determine which device.

GPIO_DMA66_Detect
Chip select 1p
Chip select 3p
Acivity - on powerup, used to detect 2nd device. Then used by drives when
they were active on the cable.


The protocol describe the interface between the interface controller and
the devices as a interface channel. 

  Protocol provides for 4 channels, may implemented on one or more interface 
  controllers. 
    Traditionly requiring IRQ 14,15,11,10 and 4 memory mapped address ranges. 

    Newer pci based controllers multiplex irqs and negotiate memory @.

  Each channel can access two devices.

  In general, only the 1st 2 channels are implemented whether a single
    interface controller chip used or 2 interface cards.  

Current controllers are capable of talking to each device at its own speed
  with out affecting interacting with the other. 

Caveat : since channel can only do one task at a time, controller still has
  to wait for slower device to complete task issued.
  
  So, copying from cd to hard drive faster if on separate channels.

  In general : keep hard drives on one channel 
     and DVD/CDROMs on separate channel. 

Ideally - each channel having 1 device provides best i/o speed.

SATA
SCSI