HANBit HFDOM44KRxxx
URL:www.hbe.co.kr 19 / 30 HANBit Electronics Co., Ltd.
Rev. 1.0 (December, 2004)
Sec Cnt(2)
Sector Count
Feature(1)
X
Read Multiple
The Read Multiple command performs similarly to the Read Sectors command. 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 number of sectors defined by a Set
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 must 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 is 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, 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 will take place as it normally would, including transfer of
corrupted data, if any Interrupts are generated when DRQ is set at the beginning of each block or partial block. The
error reporting is the same as that on a Read Sector(s) Command. This command reads from 1 to 256 sectors as
specified in the Sector Count register. A sector count of 0 requests 256 sectors.The transfer begins at the sector
specified in the Sector Number Register.
At command completion, the Command Block Registers contain the cylinder, head and sector number 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 cylinder, head and sector number of the sector where the error occurred. The flawed
data is pending in the sector buffer. Subsequent blocks or partial 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.
Read Long Sector – 22h or 23h
Bit->
7
6
5
4
3
2
1
0
Command(7)
22h – 23h
C/D/H(6)
1
LBA
1
Drive
Head(LBA 27 – 24)
Cyl High(5)
Cylinder High (LBA 23 – 16)
Cyl Low(4)
Cylinder Low (15 – 8)
Sec Num(3)
Sector Number (LBA 7 – 0)
Sec Cnt(2)
X
Feature(1)
X
Read Long Sector
The Read Long command performs similarly to the Read Sector(s) command except that it returns 516 bytes of
data instead of 512 bytes. During a Read Long command, the CompactFlash Storage Card 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 consists of 512 bytes of data transferred in word mode followed by 4 bytes of ECC data transferred in byte
mode. This command has the same protocol as the Read Sector(s) command. Use of this command is not
recommended.
Read Sector(s) – 20h or 21h