360050398
Toshiba Corporation Digital Media Network Company
Page
72
of
157
© 2005, Copyright TOSHIBA Corporation All Rights Reserved
10.8.19 Read Multiple EXT (29h)
COMMAND CODE
0 0 1 0 1 0 0 1
REGISTER
REGISTER SETTING
NORMAL COMPLETION
DR
drive no.
no change
LBA
Low
Current
Previous
LBA(7:0)
LBA(31:24)
HOB=0
HOB=1
last address
last address
LBA
Mid
Current
Previous
LBA(15:8)
LBA(39:32)
HOB=0
HOB=1
last address
last address
LBA
High
Current
Previous
LBA(23:16)
LBA(47:40)
HOB=0
HOB=1
last address
last address
SC Current
Previous
sector count(7:0)
sector count(15:8)
HOB=0
HOB=1
00H
00H
FT Current
Previous
reserved
reserved
HOB=0
HOB=1
no change
no change
This command is basically identical to Read Multiple command except register setting.
This command is available in LBA addressing only.
10.8.20 Write Multiple (C5h)
COMMAND CODE
1 1 0 0 0 1 0 1
REGISTER
REGISTER SETTING
NORMAL COMPLETION
DR
drive number
no change
CY
starting cylinder
last possible
HD
starting head
last possible
SN
starting sector
start sector
SC
number of sector to write
00H
FT
no
change
LBA
starting address
last possible
This command performs similarly to the Write Sectors command except for the following features. The Drive
sets BSY immediately upon receipt of the command, and interrupts are not issued on each sector but on
the transfer of each block which contains the number of sectors defined by Set Multiple Mode command or
the default if no intervening Set Multiple command has been issued.
Command execution is identical to the Write Sectors operation except that no interrupt is generated during
the transfer of number of sectors defined by the Set Multiple Mode command but generated for each block.
DRQ qualification of the transfer is required only for each data block, not for each sector.
The block count of sectors to be transferred without programming of intervening interrupts by the Set
Multiple Mode command, which shall be executed prior to the Write Multiple command.
When the Write Multiple command is issued, the host sets the number of sectors ( not the number of blocks
or the block count ) it requests in the Sector Count Register. 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 Write Multiple command is attempted when Write Multiple command are disabled, the Write Multiple
operation shall be rejected with an Aborted Command error.
Disk errors occurred during Write Multiple command are posted after the attempted disk write of the block or
partial block which are transferred. The Write Multiple command is terminated at the sector in error , even if
it was in the middle of a block. Subsequent blocks are not transferred after an error. Interrupts are generated
for each block or each sector, when DRQ is set .
After the transfer of a data block which contains a sector with error, the contents of the Command Block
Registers are undefined. The host should retry the transfer as individual requests to obtain valid error
information.