Specifications
3. The drive sets BSY and prepares for data transfer.
4. When the drive is ready to accept a block of data, it sets DRQ and
clears BSY. When the host detects DRQ is set to 1, the host writes
one block of data from the Data register.
5. The drive clears DRQ and sets BSY.
6. When the drive has completed processing of the block, it clears BSY
and asserts INTRQ. If transfer of another block is required, the drive
also sets DRQ.
7. After detecting INTRQ, the host reads the Status register. In response
to the Status register being read, the drive negates INTRQ. If transfer
of another block is required, DRQ is set to 1 and the sequence
continues to step 8).
8. The host writes one block of data to the Data register. The sequence
continues at step 5).
The table below shows a PIO write command that transfers two blocks
of data without an error.
Step Event Process BSY DRQ INTRQ
1 — Setup BSY=0 — —
2 — Issue command BSY=0 — —
3 —
— BSY=1 — —
4
Transfer
first
block
Transfer data BSY=0 DRQ=1 —
5 — BSY=1 — —
6 — BSY=0 DRQ=1 Assert
7
Read status BSY=0 DRQ=1 Negate
8
Transfer
second
block
Transfer data BSY=0 DRQ=1 —
5 — BSY=1 — —
6 — BSY=0 DRQ=1 Assert
7
Read status BSY=0 DRQ=0 Negate
ATA Interface Reference Manual, Rev. C 29










