Spinpoint M8-DVR OEM Product Manual REV 1.0
57
If the drive enters NCQ mode and a non-queue command is received, the drive will respond with error to
inform host a queue command been overlapped with non-queue. If a queue tag is not finished and another
same tag command is received, the drive will response with error to inform host a duplicated tag is received.
Error information is reported according to the SATA II specification. A read Log Extended command with
log page 10 is required to retrieve the error information.
8.2.15 Read Log Extended (2Fh)
This command returns the specified log to the host. The device shall interrupt for each DRQ block transferred.
See ATA 7 document for command details.
8.2.16 Read Long (22h)
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
manufacture.
The Read Long command performs similarly to the Read Sectors command except that it returns the data and
the ECC bytes appended to the data field of the desired sector. During a Read Long command, the drive does
not check the ECC bytes to determine if there has been a data error. Only single sector Read Long operations
are supported.
The transfer of the ECC bytes shall be 8 bits wide and 4 or device native ECC bytes length.
8.2.17 Read Multiple Command (C4h, 29h: extended)
The Read Multiple command performs similarly to the Read Sectors command except interrupts are not
generated on every sector, but on the transfer of a block which contains the number of sectors defined by a
Set Multiple command.
Command execution is identical to the Read Sectors operation except that the numbers of sectors as defined
by a Set of Multiple command are transferred without intervening interrupts. DRQ qualification of the
transfer is required only at the start of the data block, not on each sector.
The block count of sectors to be transferred without intervening interrupts is programmed by the Set Multiple
Mode command, which should be executed prior to the Read Multiple command. When the Read Multiple
command is issued, the Sector Count register contains the number of sectors (not the number of blocks or the
block count) requested.
If the number of requested sectors is not evenly divisible by the block count, as many full blocks as possible
are transferred, followed by a final, partial block transfer. The partial block transfer shall be for n sectors,
where
n = Remainder (Sector Count / Block Count)
If the Read Multiple command is attempted before the Set Multiple Mode command has been executed or
when Read Multiple commands are disabled, then the Read Multiple operation is rejected with an Aborted
Command error.
Disk errors encountered during Read Multiple commands are posted at the beginning of the block or partial
block transfer, but DRQ is still set and the data transfer takes place as it normally would, including transfer of
corrupted data, if any.