MultiMediaCardTM
Class 0 is mandatory and supported by all cards. It represents the card identification and initialization
commands, which are intended to handle different cards and card types on the same bus lines. The
Card Command Class (CCC) is coded in the card specific data register of each card, so that the host
knows how to access the card. There are four kinds of commands defined on the MultiMediaCard bus:
- broadcast commands (bc) sent on CMD line, no response.
- broadcast commands with response (bcr) sent on CMD line, response (all cards simultaneously) on
CMD line
- addressed (point-to-point) commands (ac) sent on CMD line, response on CMD line.
- addressed (point-to-point) data transfer commands (adtc) sent on CMD line, response on CMD line,
data transfer on DAT line.
The command transmission always starts with the MSB. Each command starts with a start bit and ends
with a CRC command protection field followed by an end bit. The length of each command frame is
fixed to 48 bits (2.4 us at 20 MHz):
0
1
Host
Bit5 …. Bit0 Bit31 …. Bit0
Command Argument
Bit6 …. Bit0
CRC*1
1
Start bit
End Bit
The start bit is always ‘0’ in command frames (sent from host to MultiMediaCard). The host bit is
always ‘1’ for commands. The command field contains the binary coded command number. The
argument depends on the command (refer to Table “Basic Commands (class 0) and Table “Block-
Oriented Read Commands (class 2)”). The CRC field is defined in Chapter “Cyclic Redundancy Check
(CRC)”.
The MultiMediaCard supports the following MultiMediaCard commands :
Table 4-8 Detailed Command Description
CMD
Index
CMD0
CMD1
Type
bc
bcr
Argument
[31:0] stuff bits
[31:0] OCR
without busy
Resp
Abbreviation
GO_IDLE_STATE
SEND_OP_COND
Command description
Resets all card to Idle State
Checks for cards not supporting the full
range of 2.0V to 3.6V. After receiving CMD1
the card sends an R3 response (refer to
Chapter “Responses”).
R3
CMD2
CMD3
CMD4
bcr
ac
[31:0] stuff bits R2
ALL_SEND_CID
Asks all cards in ready state to send their
CID *1 numbers on CMD-line
[31:16] RCA
[15:0] stuff bits
[31:16] DSR
[15:0] stuff bits
R1
SET_RELATIVE_A
DDR
SET_DSR
Assigns relative address to the card in
identification state.
Programs the DSR of all cards in stand-by
state.
bc
These Samsung MultiMediaCard do not
support this command
CMD7
ac
[31:16] RCA
[15:0] stuff bits
R1 (only SELECT/
Command toggles a card between the
standby and transfer states or between the
programming and disconnect state. In both
cases the card is selected by its own
relative address while deselecting the prior
selected card. Address 0 deselects all.
the
DESELECT_CARD
select
ed
card)
CMD8
CMD9
reserved
ac [31:16] RCA
R2
SEND_CSD
Asks the addressed card to send its card-
31