个人学习笔记,侵权联删
1.
ACMD41 =cmd55 + cmd41,组合命令
Part1_Physical_Layer_Simplified_Specification_Ver6.00
1. P44
在idle_state中用于CMD55的RCA应为卡的默认RCA = 0x0000。
The RCA to be used for CMD55 in idle_state shall be the card's default RCA = 0x0000.
2.P46
总线激活后,主机启动卡初始化和识别过程(如图4-2所示)。
After the bus is activated the host starts card initialization and identification process (See Figure 4-2).
初始化过程从SD_SEND_OP_COND (ACMD41)开始,通过设置其操作条件和OCR中的HCS位。
The initialization process starts with SD_SEND_OP_COND (ACMD41) by setting its operational conditions and the HCS bit in the OCR.
HCS (Host Capacity Support)位设置为1表示主机支持SDHC或SDXC卡。
The HCS (Host Capacity Support) bit set to 1 indicates that the host supports SDHC or SDXC Card.
HCS (Host Capacity Support)位设置为0表示该主机不支持SDHC卡和SDXC卡。
The HCS (Host Capacity Support) bit set to 0 indicates that the host supports neither SDHC nor SDXC Card
3.P46
如果卡响应CMD8,则ACMD41的响应包含CCS字段信息。
If the card responds to CMD8, the response of ACMD41 includes the CCS field information.
CCS在卡返回就绪时有效(忙碌位设置为1)。
CCS is valid when the card returns ready (the busy bit is set to 1).
CCS=0表示该卡为SDSC。
CCS=0 means that the card is SDSC.
CCS=1表示该卡为SDHC或SDXC。
CCS=1 means that the card is SDHC or SDXC
4.P46
主机重复识别过程,即对系统中的每张卡进行CMD2和CMD3的循环。
The host repeats the identification process, i.e. the cycles with CMD2 and CMD3 for each card in the system.
SDXC的初始化与SDHC相同。
Initialization of SDXC is identical to SDHC.
SDXC卡的用户区容量由C_SIZE指定,大于等于32GB。
User area capacity of SDXC card is specified by C_SIZE and it shall be more than or equal to 32GB
5.P46
当卡未显示就绪时,主机应将ACMD41超时时间设置为1秒以上,以中止重复发放ACMD41。
The host shall set ACMD41 timeout more than 1 second to abort repeat of issuing ACMD41 when the card does not indicate ready.
超时计数从参数中设置电压窗口的第一个ACMD41开始。
The timeout count starts from the first ACMD41 which is set voltage window in the argument.
5.P53
下面总结了各种数据传输模式之间的关系
The relationship between the various data transfer modes is summarized below
所有的数据读取命令都可以通过stop命令(CMD12)在任何时候中止。数据传输将终止,卡将返回传输状态。读命令包括块读(CMD17)、多块读(CMD18)、发送写保护(CMD30)、发送SCR (ACMD51)和读模式通用命令(CMD56)。(具体请参见图4-13)
所有的数据写入命令都可以通过stop命令(CMD12)在任何时候中止。在CMD7取消卡的选择之前,写入命令应该停止。写命令包括:块写(CMD24、CMD25)、程序CSD (CMD27)、锁定/解锁命令(CMD42)、写模式通用命令(CMD56)。(具体请参见图4-13)
一旦数据传输完成,卡将退出数据写入状态,并移动到编程状态(传输成功)或传输状态(传输失败)。
如果所有写缓冲区都已满,并且只要卡处于编程状态(参见SD存储卡状态图4-13),DAT0线将保持低电平(BUSY)。
当卡编程时,参数设置命令是不允许的。
Parameter set commands are not allowed while card is programming.
参数设置命令包括:set block length (CMD16), erase block start (CMD32), erase block end (CMD33)。
Parameter set commands are: set block length (CMD16), erase block start (CMD32) and erase block end (CMD33)
当卡正在编程时,不允许读取命令。
Read commands are not allowed while card is programming
6.P54
宽总线(4位总线宽度)操作模式可以使用ACMD6选择/取消选择。上电或GO_IDLE (CMD0)后的默认总线宽度为1位总线宽度。为了改变总线宽度,必须满足两个条件:a)卡处于“传输状态”。
b)卡未锁定
Wide Bus (4 bit bus width) operation mode may be selected/deselected using ACMD6. The default bus width after power up or GO_IDLE (CMD0) is 1 bit bus width. In order to change the bus width two conditions shall be met: a) The card is in 'tran state'.
b) The card is not locked
CMD17 (READ_SINGLE_BLOCK)发起一个块读取,在完成传输后,卡片返回到传输状态。
CMD17 (READ_SINGLE_BLOCK) initiates a block read and after completing the transfer, the card returns to the Transfer State.
CMD18 (READ_MULTIPLE_BLOCK)开始传输几个连续的块。
CMD18 (READ_MULTIPLE_BLOCK) starts a transfer of several consecutive blocks.
块将持续传输,直到发出STOP_TRANSMISSION命令(CMD12)。
Blocks will be continuously transferred until a STOP_TRANSMISSION command (CMD12) is issued.
由于串口传输,stop命令执行有一定的延迟。
The stop command has an execution delay due to the serial command transmission.
在stop命令的结束位之后,数据传输停止。
The data transfer stops after the end bit of the stop command
SD卡FPGA驱动笔记
于 2023-01-31 23:23:52 首次发布