Freescale Semiconductor MPC5200B ユーザーズマニュアル

ページ / 762
ATA Bus Background
MPC5200B Users Guide, Rev. 1
Freescale Semiconductor
11-31
Figure 11-5. Timing Diagram—PIO Read Command (Class 1)
11.7.4.1.2
Class 2—PIO Write
The PIO single sector write command [format, write buffer, write sector(s)] is as follows:
1.
HOST: Write to ATA control/command block registers to setup for data write.
2.
HOST: Write to ATA command register to execute write command.
3.
HOST: Poll drive to see if it is ready.
4.
HOST: Write ATA data register 256 times to get all 512Bytes into sector buffer.
5.
DRIVE: When sector buffer is filled, write sector to physical medium.
6.
DRIVE: Interrupt HOST when done.
7.
HOST: Read ATA control/command block registers to get status.
8.
DRIVE: Clear interrupt after reading status register.
9.
Repeat steps 4–8 for multiple sector writes.
The PIO block mode write command (write multiple) is as follows:
1.
HOST: Write to ATA control/command block registers to set up for data write.
2.
HOST: Write to ATA command register to execute write command.
3.
HOST: Poll drive to see if it is ready.
4.
HOST: Write ATA data register 256 times to get all sectors into sector buffer.
5.
DRIVE: When sector buffer is filled, write sector to physical medium.
6.
DRIVE: Interrupt HOST when done.
7.
HOST: Read ATA control/command block registers to get status.
8.
DRIVE: Clear interrupt after reading status register.
 shows the PIO Write process.
Host
Drive
DRDY
BSY
DRQ
INTRQ
Set Up
Register
Block
Send
Command
Read
Sector
Read
Status
Read
Sector
Buffer
Read
Sector
Read
Status
Read
Sector
Buffer