At command completion (I/O registers contents to be read)
1F7H(ST) |
|
|
| Status information | |||
|
|
|
|
|
|
| |
1F6H(DH) | × | L | × |
| DV | End head No. /LBA [MSB] | |
|
|
|
|
|
| ||
1F5H(CH) |
| End cylinder No. [MSB] / LBA | |||||
1F4H(CL) |
| End cylinder No. [LSB] | / LBA | ||||
1F3H(SN) |
| End sector No. | / LBA [LSB] | ||||
1F2H(SC) |
|
|
| 00 (*1) |
| ||
1F1H(ER) |
|
|
| Error information |
*1 If the command is terminated due to an error, the remaining number of sectors of which data was not transferred is set in this register.
(5)WRITE SECTOR(S) (X'30' or X'31')
This command writes data of sectors from the address specified in the Device/Head, Cylinder High, Cylinder Low, and Sector Number registers to the address specified in the Sector Count register. Number of sectors can be specified to 256 sectors in maximum. Data transfer begins at the sector specified in the Sector Number register. For the DRQ, INTRQ, and BSY protocols related to data transfer, see Subsection 4.4.2.
If the head is not on the track specified by the host, the device performs a implied seek. After the head reaches to the specified track, the device writes the target sector.
The data stored in the buffer, and CRC code and ECC bytes are written to the data field of the corresponding sector(s). Upon the completion of the command execution, the command block registers contain the cylinder, head, and sector addresses of the last sector written.
If an error occurs during multiple sector write operation, the write operation is terminated at the sector where the error occurred. Command block registers contain the cylinder, the head, the sector addresses (in the CHS mode) or the logical block address (in the LBA mode) of the sector where the error occurred. Then the host can read the command block registers to determine what error has occurred and on which sector the error has occurred.
At command issuance (I/O registers setting contents)
1F7H(CM) |
| 0 | 0 | 1 | 1 | 0 | 0 | 0 | R | ||
|
|
|
|
|
|
|
| ||||
1F6H(DH) |
| × | L | × | DV |
| Start head No. /LBA [MSB] | ||||
|
|
|
|
|
|
|
|
| |||
1F5H(CH) |
|
| Start cylinder No. [MSB]/ LBA |
|
| ||||||
1F4H(CL) |
|
| Start cylinder No. [LSB] / LBA |
|
| ||||||
1F3H(SN) |
|
| Start sector No. |
|
| / LBA [LSB] |
| ||||
1F2H(SC) |
|
|
| Transfer sector count |
|
| |||||
1F1H(FR) |
|
|
|
|
| xx |
|
|
| ||
R = 0 | →with Retry |
|
|
|
|
|
|
|
|
| |
R = 1 | →without Retry |
|
|
|
|
|
|
|
|
5 - 22 |