CRC7
ADDRESS
COMMAND
CRC7
COMMAND
START BIT
STOP BIT
Hi-Z
CRC16
CRC16
CRC16
CRC16
READ MULTIPLE = 010010
Sector address for SDHC
Byte address for SD/MMC
Hi-Z
Hi-Z
Hi-Z
Hi-Z
Data transfers may begin during the response,
or later : anytime after receiving the read command.
(as stated in the standard, practically, access time is quite long)
DATA : 1024 cycles
512 bytes
CMD
CLK
DATA1
DATA3
DATA2
DATA0
WAIT
CRC7
anything
COMMAND
CRC7
COMMAND
START BIT
STOP BIT
Hi-Z
STOP_TRANSMISSION : 001100
In read multiple mode, the card
continuously transmits data,
except after the last sector
of the card has been reached.
START BIT
STOP BIT
All the needed sectors were received
now we can stop
Stop transmission received
Hi-Z
Hi-Z
Hi-Z
Hi-Z
RESPONSE R1
RESPONSE R1b
CRC7
ADDRESS
COMMAND
CRC7
COMMAND
START BIT
STOP BIT
Hi-Z
WRITE MULTIPLE = 011001
Sector address for SDHC
Byte address for SD/MMC
Hi-Z
Hi-Z
Hi-Z
Hi-Z
512 bytes
CMD
CLK
DATA1
DATA3
DATA2
DATA0
STATUS = 010 :
Write OK, CRC OK
STATUS = 101 :
Write ERR, CRC ERR
CRC7
anything
COMMAND
CRC7
COMMAND
START BIT
STOP BIT
Hi-Z
STOP_TRANSMISSION : 001100
START BIT
STOP BIT
All the sectors to write were transmitted,
now we can stop
Stop transmission received
Hi-Z
Hi-Z
Hi-Z
RESPONSE R1
RESPONSE R1b
Wait for at least 2 cycles
after the end of the response
before starting to send data.
Hi-Z
DAT0=0 : Busy
programming
MORE
SECTORS
Data transmission can stop
at any time, not on sector boundaries
Following the stop transmission command,
the card may re-activate the busy flag, as it is finalising writes.
HOST
CARD
CRC16
Hi-Z
STATUS
BUSY
DATA : 1024 cycles
CRC16
DATA : 1024 cycles
CRC16
DATA : 1024 cycles
CRC16
DATA : 1024 cycles