smc256bfd6e STMicroelectronics, smc256bfd6e Datasheet - Page 68

no-image

smc256bfd6e

Manufacturer Part Number
smc256bfd6e
Description
32mbyte, 64mbyte, 128mbyte, 256mbyte, 512mbyte, 1gbyte, 2gbyte, And 4gbyte 3.3/5v Supply Compactflash Card
Manufacturer
STMicroelectronics
Datasheet
CF-ATA command description
10.11
68/91
Read Multiple (C4h)
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 = (sector count) module (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.
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 are 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.
Table 61
Table 61.
Command (7)
Sect Num (3)
Cyl High (5)
Sect Cnt (2)
Cyl Low (4)
Feature (1)
C/D/H (6)
Bit
defines the Read Multiple command Byte sequence.
Read Multiple
7
1
LBA
6
5
1
Cylinder High (LBA 23-16)
Sector Number (LBA 7-0)
Cylinder Low (LBA 15-8)
Drive
4
Sector Count
C4h
X
3
Head (LBA 27-24)
2
1
SMCxxxBF
0

Related parts for smc256bfd6e