![SanDisk SDSDB-32-201-80 - Industrial Grade Flash Memory... Product Manual Download Page 86](http://html1.mh-extra.com/html/sandisk/sdsdb-32-201-80-industrial-grade-flash-memory/sdsdb-32-201-80-industrial-grade-flash-memory_product-manual_4068376086.webp)
SPI Protocol Definition
5-4
SanDisk Secure Digital (SD) Card Product Manual, Rev. 1.9 © 2003 SANDISK CORPORATION
In Multiple Block write operation the stop transmission will be done by sending ’Stop Tran’ token instead of ’Start
Block’ token at the beginning of the next block. In case of Write Error indication (on the data response) the host
shall use SEND_NUM_WR_BLOCKS (ACMD22) in order to get the number of well written write blocks. The data
token’s description is given in Section 5.2.4.
Figure 5-5. Multiple Block Write Operation
Resetting the CS signal while the card is busy does not terminate the programming process. The card releases the
dataOut line (tristate) and continue to program. If the card is reselected before the programming is done, the dataOut
line will be forced back to low and all commands will be rejected.
Resetting a card (using CMD0) will terminate any pending or active programming operation. This may destroy the
data formats on the card. It is the host’s responsibility to prevent it.
5.1.5. Erase and Write Protect Management
The erase and write protect management procedures in the SPI mode are identical to the SD Bus mode. While the
card is erasing or changing the write protection bits of the predefined sector list it will be in a busy state and will
hold the dataOut line low. Figure 5-6 illustrates a “no data” bus transaction with and without busy signaling.
Figure 5-6. “No Data” Operations
5.1.6. Read CID/CSD Registers
Unlike the SD Bus protocol (where the register contents are sent as a command response), reading the contents of
the CSD and CID registers in SPI mode is a simple read-block transaction. The card will respond with a standard
response token followed by a data block of 16 bytes suffixed with a 16-bit CRC.
Command
DataIn
Response
From Host
to Card
From Host
to Card
DataOut
Command
Response
Busy
From Card
to Host
From Card
to Host
Command
DataIn
From host
to card
Data from
host to
card
DataOut
Data
Block
Data_Response Busy
Data from
host to
card
From card
to host
Response
Start block
token
Data
response
and busy
from card
Data_Response Busy
Busy
Data
Block
Stop tran
token