
MultiMediaCard Flash
Preliminary MultiMediaCard Product Manual;
1998 SANDISK CORPORATION
Page 43 of 79
A command with response. 8 clocks after the card response end bit.
A read data transaction. 8 clocks after the end bit of the last data block.
A write data transaction. 8 clocks after the CRC status token.
The host is allowed to shut down the clock of a “busy” card. The MultiMediaCard will
complete the programming operation regardless of the host clock. However, the host
must provide a clock edge for the card to turn off its busy signal. Without a clock edge
the MultiMediaCard (unless previously disconnected by a deselect command -CMD7)
will force the DAT line down, permanently.
5.4.4 Error Conditions
5.4.4.1 CRC and Illegal Command
All commands are protected by CRC (cyclic redundancy check) bits. If the addressed
MultiMediaCard’s CRC check fails, the card does not respond and the command is not
executed. The MultiMediaCard does not change its state, and COM_CRC_ERROR bit is
set in the status register.
Similarly, if an illegal command has been received, an MultiMediaCard shall not change its
state, shall not response and shall set the ILLEGAL_COMMAND error bit in the status
register. Only the non-erroneous state branches are shown in the state diagrams (Figure
5-1 and Figure 5-2). Table 5-10 contains a complete state transition description.
There are different kinds of illegal commands:
Commands which belong to classes not supported by the MultiMediaCard (e.g. write
commands in read only cards).
Commands not allowed in the current state (e.g. CMD2 in Transfer State).
Commands which are not defined (e.g. CMD6).
5.4.4.2 Read, Write and Erase Time-out Conditions
The times after which a time-out condition for read/write/erase operations occurs are (card
independent) 10 times longer than the typical access/program times for these operations
given below. A card shall complete the command within this time period, or give up and
return an error message. If the host does not get a response within the defined time-out it
should assume the card is not going to respond any more and try to recover (e.g. reset the
card, power cycle, reject, etc.). The typical access and program times are defined as
follows:
Read
The read access time is defined as the sum of the two times given by the CSD parameters
TAAC and NSAC. These card parameters define the typical delay between the end bit of
the read command and the start bit of the data block. This number is card dependent and
should be used by the host to calculate throughput and the maximal frequency for stream
read.
Write
The R2W_FACTOR field in the CSD is used to calculate the typical block program time
obtained by multiplying the read access time by this factor. It applies to all write/erase