MPC5200B Users Guide, Rev. 1
11-30 Freescale Semiconductor
ATA Bus Background
11.7.4 ATA Transactions
ATA Transactions are divided into three types:
PIO Mode
Multiword DMA
•Ultra DMA

11.7.4.1 PIO Mode Transactions

PIO mode transactions are the simplest transaction available on the ATA interface. They essentially consist of single word accesses across the
ATA interface. There are currently 6 PIO modes available, which are summarized in Table11-36. Timing and sequence information are given
in the MPC5200B datasheet.
Three classes of ATA commands use PIO Mode:
Class 1—PIO Read
Class 2—PIO Write
Class Non-Data Command
11.7.4.1.1 Class 1—PIO Read
Figure 11-5 shows the PIO Read process.
PIO Single sector read [identify drive, read buffer, read sector(s )]
Interrupt is generated after each sector is read into the sector buffer:
1. HOST: Write to ATA control /command block registers to setup for data read.
2. HOST: Write to ATA command register to execute read command.
3. HOST: Poll drive to see if it is ready.
4. DRIVE: Read sector from physical medium to sector buffer.
5. DRIVE: Interrupt HOST when done.
6. HOST: Read ATA control /command block registers to get status
7. DRIVE: Clear interrupt after reading status register.
8. HOST: Read ATA data register 256 times to get all 512Bytes from sector buffer.
9. Repeat steps 4–8 for multiple sectors.
PIO Block mode read [read multiple]
Interrupt is generated after each block is read into sector buffer:
1. HOST: Write to ATA control /command block registers to setup for data read.
2. HOST: Write to ATA command register to execute read command.
3. HOST: Poll drive to see if it is ready.
4. DRIVE: Read block of sectors from physical medium to sector buffer.
5. DRIVE: Interrupt HOST when done.
6. HOST: Read ATA control /command block registers to get status.
7. DRIVE: Clear interrupt after reading status register.
8. HOST: Read ATA data register to get all sectors from sector buffer.