卡初始化和识别过程:
总线激活后,主机启动卡初始化和识别过程。
初始化过程从SD SEND OP COND (ACMD41)开始,通过设置其操作条件和OCR中的HCS位。HCS (Host Capacity Support)位设置为1表示主机支持SDHC卡或SDXC卡。
HCS (Host Capacity Support)位设置为0表示主机不支持SDHC卡和SDXC卡。
CMD8的接收扩展了ACMD41的功能;争论中的HCS和回应中的CCS(卡容量状态)。
HCS被卡忽略,卡对CMD8没有反应。
但是,如果卡没有返回CMD8响应,主机应该将HCS设置为0。标准容量SD存储卡忽略HCS。如果HCS设置为0,则SDHC和SDXC卡永远不会返回就绪状态(保持忙碌位为0),OCR中的忙碌位用于通知主机ACMD41初始化是否完成。
将忙位设置为0表示卡仍在初始化。忙位为1表示初始化完成。卡初始化应在第一个ACMD41后1秒内完成。主机重复发出ACMD41至少1秒,或者直到忙位设置为1。
该卡仅在参数中设置电压窗口的第一个ACMD41上检查OCR中的操作条件和HCS位。在重复ACMD41的同时,主机不能发出除CMDO以外的其他命令。
如果卡响应CMD8,则ACMD41的响应包含CCS字段信息。当卡返回ready(忙位设置为1)时,CCS有效。CCS -0表示卡为SDSc。
CCS=1表示该卡为SDHC或SDXC。主机对系统中的所有新卡执行相同的初始化顺序。不兼容的卡被发送到非活动状态。
然后,主机向每个卡发出命令ALL SEND CID (CMD2),以获得其唯一的卡标识(CID)号。未识别的卡(即处于Readyl状态)发送其CID号作为响应(在CMD行上)。在CID被卡发送后,它进入识别状态。
之后,主机发出CMD3 (SEND RELATIVE ADDR),要求卡片发布一个新的相对卡片地址(RCA),该地址比CID短,在以后的数据传输模式中用于给卡片寻址。一旦收到RCA,卡的状态就会改变为待机状态。
此时,如果主机想要分配另一个RCA号码,它可以通过向卡发送另一个CMD3命令来要求卡发布一个新号码。
最后发布的RCA是该卡的实际RCA号。主机重复识别过程,即对系统中的每张卡进行CMD2和CMD3的循环。
SDXC的初始化与SDHC相同。SDXC卡的用户区域容量由C_SIZE指定,大于等于32GB。
应用时请注意:
主机设置ACMD41超时时间大于1秒,当卡未显示准备好时,中止重复发出ACMD41。
超时计数从参数中设置的第一个电压窗口AcMD41开始。
初始化命令(ACMD41)
以下是第ACMD41的一般规则:
(1)如果参数中的电压窗字段(位23-0)设为零,则称为“查询CMD41”,不启动初始化,用于获取OCR。查询ACMD41将忽略参数中的其他字段(位31-24)。
(2)如果第一次将参数中的电压窗字段(23-0位)设置为非零,则称为“第一个ACMD41”,开始初始化。参数中的另一个字段(位31-24)是有效的。
(3)遵循ACMD41的论点应与第一个ACMD41的论点相同。参数格式如下图1所示,响应格式如下图2所示。
ACMD41的参数中增加了两个新字段。如果SDXC卡初始化为XPC-0,则该卡的“Default Speed”或“SDR12”工作小于100mA,如果该卡不支持“Speed Class”,则“SD Status”显示为“Class O”。
如果SDXC卡初始化为XPC-1,则该卡在Default Speed或SDR12下的工作小于150mA,且该卡支持Speed Class。更改XPC选择需要重新初始化。UHS-I在ACMD41的参数中支持主机集S18R-1请求卡切换1.8V信令电平。UHS-I支持ACMD41响应中S18A=1的卡响应,主机发出电压开关命令。
当Busy (Bit 31)设置为1时,ccs (Bit 30)和S18A (Bit 24)有效。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。