电子说
母线信号电压切换顺序:
初始化顺序电压切换命令顺序如下方图所示,
初始化命令顺序如图所示UHS-I主机流程图。
红色和黄色框是初始化UHS-I卡的新程序。
当信号电平为3.3V时,主机重复用HCS=1和S18R=1发出ACMD41,直到响应就绪。第一个ACMD41的参数(HCS和S18R)是有效的,但所有后续的ACMD41都应该使用相同的参数发布。如果“Bit 31”表示“ready”,则主机需要检查cc和S18A。
卡指示S18A=0,表示不允许电压开关,主机需要使用电流信号电平。
卡指示S18A=1,表示允许电压开关,主机发出CMD11调用电压开关序列。
通过接收CMD11,卡返回R1响应并启动电压开关顺序。
CMD11没有响应,说明S18A为0,主机不应该发送CMD11。
通过高电平DAT[3:0]检查电压开关顺序是否完成。
DAT[3:0]的任何位都可以被检查,这取决于主机的能力。当进入tran状态时,需要检查R1响应中的CARD_IS_LOCKED状态(在CMD7的响应中表示)。如果卡被锁定,需要使用CMD42解锁卡。如果卡已解锁,则可以跳过CMD42。
对于UHS-I卡,CMD6功能组3选择合适的驱动强度,CMD6功能组1选择其中一种UHS-I模式。在SDR50和SDR104模式下,如果需要对采样点进行调优,则重复下发CMD19,直到调优完成。
开关信号电压定时
初始化过程中时钟频率范围为100KHz-400KHz。下方图表显示了ACMD41开关信号电压的命令(S18R)-响应(S18A)组合。S18R在命令参数中定义,表示主机的信号电压开关请求。响应中定义了S18A,表示卡接受电压切换(这里没有切换电压)。如果信号电平已经是1.8V,则忽略S18R,不启动信号电压切换顺序。S18A=0表示维持当前信令电平。
通过CMD11调用,可以同时改变电压电平,如下图所示。CMD11仅在响应ACMD41中的S18A-1时发布。
(1)主机发出CMD11启动电压开关顺序。
(2)卡返回R1响应(3)响应后,卡立即将CMD和DAT[3:0]驱动到低电平。
(4)主机停止提供SDCLK。主机停止SDCLK后,卡开始开关电压。没有指定停止SDCLK的时间。主机可以通过检查CMD的信号电平来检测序列是否开始,DAT(3:0)。应该检查哪个信号取决于主机的能力。如果低电平不是检测到,主机应中止该顺序并执行电源循环。
(5)卡内稳压器1.8V输出在5ms内稳定。主机至少保持SDCLK较低5女士。这意味着5ms是卡的最大值,主机的最小值。
(6)5ms后从(4)开始,主机稳压稳定后,主机开始提供1.8V的SDCLK。卡可以检查SDCLK电压是否为1.8V。
(7)通过检测SDCLK,卡驱动CMD到1.8V高电平至少一个时钟,然后停止驱动(三态)。CMD由SDCLK上升沿触发(SDR时序)。
(8)卡可以通过主机上拉电阻检测主机是否驱动CMD到1.8V。
(9)如果切换到1.8V信令成功完成,卡将DAT[3:0]驱动到1.8V高电平至少一个时钟,然后停止驱动(tri-state)。DAT[3:0]由SDCLK上升沿触发(SDR时序)。DAT[3:0]在提供SDCLK开始后的1ms内必须是高的。主机在提供SDCLK 1毫秒后检查DAT[3:0]是否高。这意味着1ms是卡的最大值,主机的最小值。
周期(5)前后提供3.3V或1.8V的SD时钟,频率为100KHz400KHz。停止时钟只允许在(5)期间的电压切换程序。序列完成后,主机和卡在SDR12定时开始通信。
电压开关检错
信号电压切换顺序出错时的时序如下图所示。
(1)如果卡在(5)-(8)中检测到电压错误,卡将继续驱动DAT[3:0]到低电平,直到卡断电。
(2) CMD可能是低状态或三状态。
(3)主机在开始提供SDCLK 1ms后检查DAT[3:0]是否高。
(4)如果DAT[3:0]低,主机驱动SDCLK到低,然后停止给卡供电。
卡应检查自身稳压器输出电压和主机信号小于2.5V。错误发生由(A)和(B)表示。
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !