Altera cyclone V Technical Reference page 976

Hard processor system
Hide thumbs Also See for cyclone V:
Table of Contents

Advertisement

14-30
Auto-Stop Generation for MMC Cards
• Stream-read for MMC with byte count greater than zero—The controller generates an internal STOP
command and loads it into the command path so that the end bit of the STOP command is sent when
the last byte of data is read from the card and no extra data byte is received. If the byte count is less
than six (48 bits), a few extra data bytes are received from the card before the end bit of the STOP
command is sent.
• Stream-write for MMC with byte count greater than zero—The controller generates an internal STOP
command and loads it into the command path so that the end bit of the STOP command is sent when
the last byte of data is transmitted on the card bus and no extra data byte is transmitted. If the byte
count is less than six (48 bits), the data path transmits the data last to meet these condition.
• Multiple-block read memory for SD card with byte count greater than zero—If the block size is less
than four (single-bit data bus), 16 (4-bit data bus), or 32 (8-bit data bus), the AUTO_STOP command
is loaded in the command path after all the bytes are read. Otherwise, the STOP command is loaded in
the command path so that the end bit of the STOP command is sent after the last data block is
received.
• Multiple-block write memory for SD card with byte count greater than zero—If the block size is less
than three (single-bit data bus), 12 (4-bit data bus), or 24 (8-bit data bus), the AUTO_STOP command
is loaded in the command path after all data blocks are transmitted. Otherwise, the STOP command is
loaded in the command path so that the end bit of the STOP command is sent after the end bit of the
CRC status is received.
• Precaution for host software during auto-stop—When an AUTO_STOP command is issued, the host
software must not issue a new command to the controller until the AUTO_STOP command is sent by
the controller and the data transfer is complete. If the host issues a new command during a data
transfer with the AUTO_STOP command in progress, an AUTO_STOP command might be sent after
the new command is sent and its response is received. This can delay sending the STOP command,
which transfers extra data bytes. For a stream write, extra data bytes are erroneous data that can
corrupt the card data. If the host wants to terminate the data transfer before the data transfer is
complete, it can issue an SD/SDIO STOP or STOP_TRANSMISSION (CMD12) command, in which
case the controller does not generate an AUTO_STOP command.
Auto-Stop Generation for MMC Cards
Table 14-12: Auto-Stop Generation for MMC Cards
Transfer Type
Stream read
Stream read
Stream write
Stream write
Single-block read
Single-block write
Multiple-block read
Multiple-block read
The condition under which the transfer mode is set to block transfer and byte_count is equal to block size is
(47)
treated as a single-block data transfer command for both MMC and SD cards. If byte_count = n*block_size
(n = 2, 3, ...), the condition is treated as a predefined multiple-block data transfer command. In the case of
Altera Corporation
Byte Count
0
>0
0
>0
>0
>0
0
>0
send_auto_stop bit
set
No
Open-ended stream
Yes
Auto-stop after all bytes transfer
No
Open-ended stream
Yes
Auto-stop after all bytes transfer
No
Byte count = 0 is illegal
No
Byte count = 0 is illegal
No
Open-ended multiple block
Yes
Pre-defined multiple block
(47)
cv_5v4
2016.10.28
Comments
SD/MMC Controller
Send Feedback

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents