HB28E016/D032/D064/B128MM2
56
(READ_MULTIPLE_BLOCK) starts a transfer of several consecutive blocks. Two types of multiple block
read transactions are defined (the host can use either one at any time):
Open-ended Multiple block read
The number of blocks for the read multiple block operation is not defined. The card will
continuously transfer data blocks until a stop transmission command is received.
Multiple block read with pre-defined block count
The card will transfer the requested number of data blocks, terminate the transaction and return to
transfer state. Stop command is not required at the end of this type of multiple block read, unless
terminated with an error. In order to start a multiple block read with pre-defined block count, the
host must use the SET_BLOCK_COUNT command (CMD23) immediately preceding the
READ_MULTIPLE_BLOCK (CMD18) command. Otherwise the card will start an open-ended
multiple block read which can be stopped using the STOP_TRANSMISSION command.
The host can abort reading at any time, within a multiple block operation, regardless of the its type.
Transaction abort is done by sending the stop transmission command.
n case of a data retrieval error, the card will not transmit any data. Instead, a special data error token will
be sent to the host. Figure “Read Operation-Data Error” shows a data read operation which terminated
with an error token rather than a data block.
Data in
Data out
command
response
data error
command
from
host
to card
from
card
to host
data error token
from card to host
Next
command
Read Operation-Data Error
Data Write Overview
As for the read operation, while in SPI mode the MultiMediaCard supports single and multiple block write
commands. Upon reception of a valid write command (CMD24 and CMD25 in the MultiMediaCard
protocol), the card will respond with a response token and will wait for a data block to be sent from the
host. CRC suffix, block length and start address restrictions are (with the exception of the CSD parameter
WRITE_BL_PARTIAL controlling the partial block write option) identical to the read operation (refer to
Figure “Single Block Write Operation”). If a CRC error is detected it will be reported in the data-response
token and the data block will not be programmed.