Toshiba Corporation Digital Media Network Company
Page
71
of
157
© 2005, Copyright TOSHIBA Corporation All Rights Reserved
10.8.18 Read Multiple (C4h)
COMMAND CODE
1 1 0 0 0 1 0 0
REGISTER
REGISTER SETTING
NORMAL COMPLETION
DR
drive number
no change
CY
starting cylinder
last possible
HD
starting head
last possible
SN
starting sector
last possible
SC
number of sector to read
00H
FT
no
change
LBA
starting address
last possible
The read multiple command performs similarly to the Read Sectors command except for the following
features. Interrupts are not issued on each sector, but on the transfer of each block which contains the
number of sectors defined by a Set Multiple Mode command or the default , if no intervening Set Multiple
command has been issued.
Command execution is identical to the Read Sectors operation except that the number of sectors defined by
a Set Multiple Mode command are transferred without interrupts. DRQ qualification of the transfer is required
only at the start of a data block transfer, not required for the transfer of each sector.
The block count of sectors to be transferred without intervening interrupts is programmed by the Set Multiple
Mode command, which shall be executed prior to the Read Multiple command.
When the Read Multiple command is issued, the Sector Count Register contains the number of required
sectors ( not the number of blocks or the block count ) . If the number of required sectors is not evenly
divisible by the block count, The redundant sectors are transferred during the final partial block transfer. The
partial block transfer shall be for N sectors, where
N = The redundant sector count ( block count )
If the Read Multiple command is attempted when Read Multiple command are disabled, the Read Multiple
operation shall be rejected with an Aborted Command error.
Disk errors occurred during Read Multiple command are posted at the beginning of the block or partial block
transfer, but DRQ is still set and the data, including corrupted data, shall be transferred as they normally
would .
The contents of the Command Block Registers following the transfer of a data block which has a sector in
error are undefined. The host should retry the transfer as individual requests to obtain valid error
information.
Subsequent blocks or defective blocks are transferred only when the error is a correctable data error. All
other errors after the transfer of the block containing the error terminates the command . Interrupts are
generated when DRQ is set at the beginning of each block or partial block.