The contents of the Command Block registers, following the transfer of a data block, which had a sector in error, are undefined. The host should retry the transfer as individual requests to obtain valid error information.
Subsequent blocks are transferred only if the error was a correctable data error. All other errors cause the command to stop after transfer of the block, which contained the error. Interrupts are generated when DRQ is set at the beginning of each block.
8.2.18 Read Native Max Address (F8h, 27h: extended)
This command returns the native maximum address. The native maximum address is the highest address accepted by the device in the factory default condition. The native maximum address is the maximum address that is valid when using the SET MAX ADDRESS command.
8.2.19 Read Sector(s) (20h, 24h: extended)
This command reads from 1 to 256 sectors as specified in the Sector Count register. A sector counts of 0 requests all 256 sectors if the command is Read Sectors (not Read Sector Extended). The transfer begins at the sector specified in the Sector Number register.
If the drive is not already on the desired track, an implied seek is performed. Once at the desired track, the drive searches for the appropriate ID field.
If the ID is read correctly, the data address mark shall be recognized within a specified number of bytes, or the Address Mark Not Found error is posted. DRQ is always set prior to data transfer, regardless of the presence or absence of an error condition.
At command completion, the Command Block registers contain the address of the last sector read. If an error occurs, the read terminates at the sector where the error occurred. The Command Block registers contain the address of the sector where the error occurred.
8.2.20Read Verify Sector(s) (40h, 41h: extended)
This command is obsolete in the ATA7 specification. The supporting of this command is for backward compatibility purpose. The use of this command is beyond the ATA standard and not recommended by the manufacturer.
This command is identical to the Read Sectors command, except that DRQ is never set, and no data is transferred to the host.
When the requested sectors have been verified, the drive clears BSY and generates an interrupt. Upon command completion, the Command Block registers contain the address of the last sector verified. If an error occurs, the Verify terminates at the sector where the error occurred.
The Command Block registers contain the address of where the error occurred. The Sector Count register contains the number of sectors not yet verified.
Spinpoint M8 Product Manual REV 2.3 | 59 |