处理sd卡上电初始化过程的方法

文档序号:6488177阅读:510来源:国知局
处理sd卡上电初始化过程的方法
【专利摘要】本发明公开了一种处理SD卡上电初始化过程的方法,在接收到ACMD41命令之前,使SD卡处于等待状态,不对SD卡的存储部分进行读写;在接收到第一个ACMD41命令后,对SD主机和SD卡进行工作电压检测,如果没有通过,SD卡进入到不活动状态,不响应任何SD主机发送的命令,而且保持在锁定状态;如果通过,SD卡开始初始化,并且在ACMD41命令的响应中一直返回忙状态;初始化开始后,锁定SD命令中断产生逻辑;初始化结束,返回上电完成信号;清除响应中的忙标志,利用硬件同步逻辑,保证SD卡和SD主机同步同时完成上电初始化。本发明能完善SD卡的上电初始化过程,使得SD卡在上电初始化阶段安全、可靠和有效,并且有着很好的兼容性。
【专利说明】处理SD卡上电初始化过程的方法
【技术领域】
[0001]本发明涉及SD卡领域,特别是涉及一种处理SD (安全数码卡Secure DigitalMemory Card)卡上电初始化过程的方法。
【背景技术】
[0002]SD卡是一种基于半导体快闪记忆器的新一代记忆设备。SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。
[0003]SD卡重量轻,体积小,但却拥有高记忆容量、快速数据传输率和极大的移动灵活性。目前被越来越广泛地应用在数码相机、数码摄像机、个人数码助理、多媒体播放器和笔记本等多种便携式数码产品中。
[0004]SD协议中,SD主机用命令响应对的方式(CommancUResponse)对SD卡进行控制以及状态的检查。SD主机通过这些命令对SD卡进行初始化配置、读写操作、数据加解密以及卡片锁定解锁等操作。同时,SD卡通过命令的响应向SD主机报告命令执行的状态和结果。
[0005]SD卡的电源由SD主机提供,上电初始化的过程也是由SD主机发起的,而上电初始化的完成是由SD卡决定的。
[0006]SD卡的整个上电初始化过程主要有三个方面需要考虑:
[0007]第一,目前,市场上绝大部分的SD卡都是由一个通用的SD控制器芯片加上数块独立的大容量的存储器组成,而数字电路的工作阈值和存储器的工作阈值存在一定的差别,所以在电压没有稳定时,对存储器进行操作是有一定风险,读操作有可能读错数据,写操作更是有可能造成存储器里面的数据永久丢失。
[0008]第二,SD卡在接收到第一个ACMD41命令后,开始进入初始化过程。这个初始化过程是由SD卡片上软件控制的,同时SD主机会连续的发送ACMD41命令查询SD卡的状态。SD协议并没有规定连续的两个ACMD41之间需要间隔多少时间,因此不同的SD主机会存在着差异,极限条件下,这个间隔会在纳秒级。这就会导致SD卡片上软件系统一直在响应SD的命令中端,从而SD卡上电初始化时间超时,上电失败。
[0009]第三,SD卡上电初始化完成后的同步问题。上电完成后,SD卡片上软件系统设置上电完成信号,用于清除ACMD41命令的响应中的忙标志,通知SD主机上电初始化过程完成,同时会从IDLE (空闲)状态跳转到READY (准备好)状态,如果SD主机没有在同一个ACMD41命令中完成状态的跳转,SD主机还会处于IDLE状态,并再次发送ACMD41命令进行查询。但SD卡处于READY状态,会将ACMD41命令当成无效命令,并且没有响应返回到SD主机,最终导致上电失败。

【发明内容】

[0010]本发明要解决的技术问题是提供一种处理SD卡上电时序的方法,完善SD卡的上电初始化过程,使得SD卡在上电初始化阶段安全、可靠和有效,并且有着很好的兼容性。
[0011]为解决上述技术问题,本发明的处理SD卡上电时序的方法,是采用如下技术方案实现的:
[0012]SD卡上电初期锁定SD卡存储部分,在接收到ACMD41命令之前,使SD卡处于等待状态,不对SD卡的存储部分进行读写;
[0013]在接收到第一个ACMD41命令后,对SD主机和SD卡进行工作电压检测;如果工作电压检测没有通过,SD卡进入到不活动INACTIVE状态,不响应SD主机发送的任何命令,而且保持在锁定状态;
[0014]工作电压检测通过后,SD卡开始初始化,并且在ACMD41命令的响应中一直返回忙状态;
[0015]在SD卡初始化开始后,锁定SD命令中断产生逻辑,保证SD卡初始化工作正确完成;
[0016]SD卡初始化结束后,返回上电完成信号;SD卡清除ACMD41命令的响应中的忙标志,利用硬件同步逻辑,保证SD卡和SD主机同步同时完成整个上电初始化过程。
[0017]所述对SD主机和SD卡进行工作电压检测的方法是,SD卡在接收第一个ACMD41命令后,进行工作电压检测,利用ACMD41命令的参数和SD卡所能支持的电压范围进行比较,若检测不通过,SD卡进入不活动INACTIVE状态,ACMD41命令不产生响应,而且,接下来SD卡不再响应SD主机的任何命令,直到SD卡重新上电。
[0018]所述锁定SD卡命令中断产生逻辑是指,SD卡初始化开始后,对于接下来SD主机发送的连续的ACMD41命令,不再产生中断;当接收到SD主机发送的复位命令CMDO后,命令中断功能重新打开,并且初始化过程中断,直到接到又一个ACMD41命令,再重新开始初始化过程。
[0019]在SD卡初始化完成后,SD卡的软件会使能寄存器,用于清除ACMD41命令中的忙标志,返回上电完成信号;并采用同步逻辑使得SD卡和SD主机在上电完成后同时跳转到准备好READY状态。
[0020]SD卡软件的使能寄存器和SD主机发送的ACMD41命令是异步关系,所述同步逻辑要锁存软件设置的上电完成信号,如果正处于响应发送阶段,同步逻辑保持原有状态不变,等待下一个ACMD41命令;如果响应还没有开始发送,同步逻辑清除响应中的忙标志,清除锁存的上电完成信号,同时SD卡跳转到准备好READY状态;SD主机在接收到忙标志清除的响应时,也跳转到准备好READY状态;SD主机和SD卡完成同步操作。
[0021]本发明针对符合SD协议的SD卡,在上电初期,考虑到电压的不稳定性,锁定SD卡存储部分,保证在ACMD41命令到来之前,不对存储部分进行读写,保证SD卡的数据不受损害。
[0022]在第一个ACMD41命令接收后,开始对SD主机和SD卡的工作电压检测,如果检测不通过,SD卡进入到INACTIVE状态,不响应任何SD主机发送的命令,而且系统保持在锁定状态,保证SD卡上数据的安全;如果工作电源电压检测通过,软件系统开始初始化,并且锁定SD命令中断产生逻辑,保证在ACMD41命令不断循环的过程中,不会由于连续频繁的中断信号打断软件的初始化过程,使初始化时间超时,从而导致SD卡上电失败。
[0023]在上电初始化过程结束后,软件系统配置结束信号,SD卡清除ACMD41命令的响应中的忙标志,利用硬件同步逻辑,保证SD卡和SD主机同步同时完成整个上电初始化过程。
[0024]采用本发明的方法,SD卡能保证数据的正确性,又能有很好的兼容性,能适用各种不同的SD主机。
【专利附图】

【附图说明】
[0025]下面结合附图与【具体实施方式】对本发明作进一步详细的说明:
[0026]图1是SD卡上电初始化过程示意图;
[0027]图2是SD卡上电初始化过程同步逻辑示意图(一);
[0028]图3是SD卡上电初始化过程同步逻辑示意图(二)。
【具体实施方式】
[0029]如图1所示,在SD卡上电初始化过程中,可以分为电压变化期和电压稳定期;图中,电源电压随时间呈线性变换的部分为电压变换期,电源电压随时间保持恒定值的部分为电压稳定期。
[0030]参见图1中的“a”段,在电压变化期电压上升初期,电源电压在数字电路工作阈值(参见图1中的“d”点,即a段与b段交界处所对应的点)以下,整个数字电路处于复位状态;这是由一个模拟模块POR (上电复位)实现的,是一个标准电路,不在本发明的内容。同时,将存储器的WP(写保护)的复位状态设置为有效状态,保证存储器不会由于噪声的因素导致数据的损害。
[0031]参见图1中的“b”段,当电源电压在数字电路工作阈值以上时,数字电路以及SD卡的软件开始工作,但由于无法确保存储器的工作电压,存储器被锁定,不能进行读写。这个锁定是通过片上软件系统完成,在接收到SD主机的ACMD41 (SD特殊应用命令41)命令之前,软件一直在循环等待或者处理非存储器的初始化工作。
[0032]参见图1中的“c”段,进入电压稳定期后,SD主机开始发送ACMD41命令,首个ACMD41命令用于发送SD主机支持的电源电压范围,SD主机通过ACMD41命令中的参数传输这个电压范围,SD卡接收到ACMD41命令后,读取参数并且和自身的工作电压进行比较,如果SD卡电压和SD主机电压不匹配,SD卡将不响应ACMD41,并且进入不活动INACTIVE状态,不再接收SD卡的任何命令,直到SD卡重新上电。这个机制将保证SD卡在正常的电压上工作,对SD卡和存储器的数据提供保护。
[0033]SD卡接收到首个ACMD41命令,而且电压检测成功后,开始进行整个SD卡的初始化工作。在初始化工作没有结束时,SD卡的软件将ACMD41命令的响应中的忙标志置“I”(参见图2、3中标号e指示的上电完成信号的上升沿),表示SD卡还处于初始化过程当中。SD主机则连续的发送ACMD41命令来查询SD卡是否上电初始化完成。
[0034]SD卡在首个ACMD41接收后,会锁定中断产生逻辑,这样在接收到之后的ACMD41命令时,不再产生中断,软件将不再介入ACMD41命令的响应,而是直接由硬件产生响应,并且将响应中的忙标志保持为“I”。由于SD命令中断逻辑被锁定,不再产生命令中断,SD卡的软件系统不需要响应中断,初始化过程就不会被打断,从而保证了整个初始化过程能在SD协议规定的时间内完成。不会由于超时导致SD卡的上电初始化过程失败。同时,为了保证SD主机可以复位SD卡,重新开始初始化,中断锁定逻辑不会锁定CMDO (复位命令),SD卡在任何时候都可以接收CMD0,保证了 SD主机对SD卡的控制。
[0035]SD卡的软件系统在初始化完成后,需要通知SD主机,并且SD卡和SD主机同时从IDLE状态(空闲状态)跳转到READY状态(准备好状态),这样整个SD卡上电初始化过程也就完成了。
[0036]在这里,SD卡需要一个同步逻辑,保证SD卡和SD主机同时完成上电初始化过程,同时跳转到READY状态。这个同步逻辑如图2、3所示,软件系统在初始化过程结束后,将上电完成信号由软件置“I” ;由于SD卡软件系统和SD主机的异步关系,软件置“I”的时候,SD卡有可能在响应发送阶段、响应准备阶段、等待命令阶段和命令接收阶段。其中,软件置“I”的时刻点在响应准备阶段、等待命令阶段或者命令接收阶段,同步逻辑的处理方式一致的。
[0037]结合图2所示,当软件置“I”的时刻点(即图2中标号e指示的上电完成信号的上升沿)是在响应发送阶段时,SD卡硬件会锁存上电完成信号,并且保持响应中的忙标志,SD卡和SD主机保持在IDLE状态直到下一个ACMD41命令。
[0038]再参见图3,当软件置“I”的时刻点不是在响应发送的阶段,SD卡会在ACMD41命令的响应中直接将忙标志清零,在响应发送后将上电完成信号由硬件清零(参见图2、3中标号f指示的上电完成信号的下升沿),并且进入到READY状态,同时SD主机检测到忙标志清零,也将跳转到READY状态,发送接下来的命令。
[0039]以上通过【具体实施方式】对本发明进行了详细的说明,但在具体实施的时候,设计人员可以在本发明的原理下做适当的调整和变化。这些调整和变化也应视为本发明的保护范围。
【权利要求】
1.一种处理安全数码卡SD上电初始化过程的方法,其特征在于: 安全数码卡SD上电初期锁定安全数码卡SD存储部分,在接收到ACMD41命令之前,使安全数码卡SD处于等待状态,不对安全数码卡SD的存储部分进行读写; 在接收到第一个ACMD41命令后,对安全数码卡SD主机和安全数码卡SD进行工作电压检测;如果工作电压检测没有通过,安全数码卡SD进入到不活动INACTIVE状态,不响应安全数码卡SD主机发送的任何命令,而且保持在锁定状态; 工作电压检测通过后,安全数码卡SD开始初始化,并且在ACMD41命令的响应中一直返回忙状态; 在安全数码卡SD初始化开始后,锁定安全数码卡SD命令中断产生逻辑,保证安全数码卡SD初始化工作正确完成; 安全数码卡SD初始化结束后,返回上电完成信号;安全数码卡SD清除ACMD41命令的响应中的忙标志,利用硬件同步逻辑,保证安全数码卡SD和安全数码卡SD主机同步同时完成整个上电初始化过程。
2.如权利要求1所述的方法,其特征在于:所述对安全数码卡SD主机和安全数码卡SD进行工作电压检测的方法是,安全数码卡SD在接收第一个ACMD41命令后,进行工作电压检测,利用ACMD41命令的参数和安全数码卡SD所能支持的电压范围进行比较,若检测不通过,安全数码卡SD进入不活动INACTIVE状态,ACMD41命令不产生响应,而且,接下来安全数码卡SD不再响应安全数码卡SD主机的任何命令,直到安全数码卡SD重新上电。
3.如权利要求1所述的方法,其特征在于:所述锁定安全数码卡SD命令中断产生逻辑是指,安全数码卡SD初始化开始后,对于接下来安全数码卡SD主机发送的连续的ACMD41命令,不再产生中断;当接收到安全数码卡SD主机发送的复位命令CMDO后,命令中断功能重新打开,并且初始化过程中断,直到接到又一个ACMD41命令,再重新开始初始化过程。
4.如权利要求1所述的方法,其特征在于:在安全数码卡SD初始化完成后,安全数码卡SD的软件会使能寄存器,用于清除ACMD41命令中的忙标志,返回上电完成信号;并采用同步逻辑使得安全数码卡SD和安全数码卡SD主机在上电完成后同时跳转到准备好READY状态。
5.如权利要求4所述的方法,其特征在于:安全数码卡SD软件的使能寄存器和安全数码卡SD主机发送的ACMD41命令是异步关系,所述同步逻辑要锁存软件设置的上电完成信号,如果正处于响应发送阶段,同步逻辑保持原有状态不变,等待下一个ACMD41命令;如果响应还没有开始发送,同步逻辑清除响应中的忙标志,清除锁存的上电完成信号,同时安全数码卡SD跳转到准备好READY状态;安全数码卡SD主机在接收到忙标志清除的响应时,也跳转到准备好READY状态;安全数码卡SD主机和安全数码卡SD完成同步操作。
【文档编号】G06F9/445GK103631614SQ201210306818
【公开日】2014年3月12日 申请日期:2012年8月24日 优先权日:2012年8月24日
【发明者】叶国平, 汤晓岚 申请人:上海华虹集成电路有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1