CN101266583B - 一种存储卡总线操作方法 - Google Patents

一种存储卡总线操作方法 Download PDF

Info

Publication number
CN101266583B
CN101266583B CN2008101042684A CN200810104268A CN101266583B CN 101266583 B CN101266583 B CN 101266583B CN 2008101042684 A CN2008101042684 A CN 2008101042684A CN 200810104268 A CN200810104268 A CN 200810104268A CN 101266583 B CN101266583 B CN 101266583B
Authority
CN
China
Prior art keywords
data
transmission
message
command
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2008101042684A
Other languages
English (en)
Other versions
CN101266583A (zh
Inventor
曹会扬
杨光敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Potevio Institute of Technology Co Ltd
Original Assignee
Potevio Institute of Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Potevio Institute of Technology Co Ltd filed Critical Potevio Institute of Technology Co Ltd
Priority to CN2008101042684A priority Critical patent/CN101266583B/zh
Publication of CN101266583A publication Critical patent/CN101266583A/zh
Application granted granted Critical
Publication of CN101266583B publication Critical patent/CN101266583B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

本发明公开了一种存储卡总线操作方法,通过命令总线发送当前传输命令消息之后,开始在数据总线传输当前传输命令消息对应的数据;如果确定当前传输命令消息对应的数据所需传输时间大于预设命令消息传输时间,则在数据总线传输当前传输命令消息对应的数据的过程中,通过命令总线发送下一传输命令消息;在当前传输命令消息对应的数据传输完毕后,传输下一传输命令消息对应的数据。利用本发明,可以在命令总线空闲的时候插入下一传输命令消息,因而,当数据总线传输完当前数据后,数据总线就可以直接传输下一传输命令消息对应的数据,而无需再进行等待,从而提高了总线的利用率以及存储卡总线的实际性能。

Description

一种存储卡总线操作方法
技术领域
本发明涉及总线操作技术,特别涉及一种存储卡总线操作方法。
背景技术
随着信息技术的发展,存储卡已广泛地应用于电脑、摄像机、数码相机、自动柜员机等各种信息设备上。
图1为现有技术中存储卡的结构示意图。参见图1,该存储卡包括存储卡接口、存储卡控制器、存储区域及寄存器文件表,其中,
存储卡接口,为存储卡规范所规定的卡物理接口,如安全数字卡(SD,Secure Digital Card)接口、多媒体卡(MMC,Multi Media Card)接口等,用于通过相应的物理接口与外部设备进行交互;
存储卡控制器,用于存储卡的卡端协议解析以及存储区域的访问与管理,通过存储区域访问总线与存储区域相连,通过内部总线与寄存器文件表相连,通过存储卡数据总线与存储卡接口相连;
存储区域,为存储卡存储数据的物理介质,可以根据存储卡的使用环境进行设置,如,可以为闪存(FLASH)、随机只读存储器(ROM,Read OnlyMemory)等;
寄存器文件表,用于存储卡认证号、卡相对地址、总线驱动状态、卡操作环境、卡版本信息等内容,存储卡数据总线的规定可参考各存储卡协议(SD协议、MMC协议等),在此不再赘述;存储区域访问总线根据存储介质的不同而不同,举例来说,如果存储介质为FLASH,则存储区域访问总线为FLASH操作总线;
存储卡内的存储卡控制器、存储区域及寄存器文件表的电源均由存储卡接口提供。
图2为现有技术中存储卡处理流程示意图。参见图2,以从存储卡中读取数据为例,该流程包括:
步骤201,存储卡上电复位,主机对存储卡进行初始化;
本步骤中,在存储卡上电复位后,主机通过特殊的基于消息的多媒体卡总线协议对存储卡进行初始化。
步骤202,主机通过命令(CMD,Command)总线向存储卡发送读操作命令消息;
实际应用中,命令消息是一个操作开始的信号,可以包括传输命令消息、停止命令消息以及其相应的响应中的一个或多个消息,其中,传输命令消息又可分为读操作命令消息、写操作命令消息等。由于本流程是以从存储卡读数据为例,因此本步骤中发送的命令消息为读操作命令消息。
步骤203,存储卡通过CMD总线向主机返回响应消息;
本步骤中,响应消息是作为对前面接收到的命令消息的回应,响应消息在CMD总线上采用串行传输。
步骤204,在存储卡向主机返回响应消息后的规定时间内,存储卡通过数据(DAT,Data)总线向主机传送数据。
实际应用中,如果是对存储卡进行写操作,则本步骤中应当是由主机通过数据总线向存储卡传输数据。
至此,本流程结束。
在现有技术中,用于数据传输的数据总线宽度可以是1bit(DAT0)、4bit(DAT0~DAT3)或者8bit(DAT0~DAT7);一个数据传输是一次总线操作,包括上述的命令消息、响应消息及数据信号。DAT0~DAT7和CMD总线上的比特和主机时钟同步传输。
总线操作的数据传输命令有两种类型:串行命令类型和面向块的类型。串行命令类型可以将命令消息开销降到最小,包括串行读操作和串行写操作;面向块的类型又可以包括块读操作和块写操作。其中,只在1bit总线模式中支持串行命令;对于串行命令类型,主机通过停止命令终止数据流的传输。
图3为现有技术串行读操作的时序结构示意图,参见图3,在存储卡返回响应消息后,存储卡开始在数据总线上向主机发送数据流,主机根据数据流长度或传输时间,控制并确定发送停止命令消息,存储卡接收到停止命令消息后,停止数据传输操作。
图4为现有技术串行写操作的时序结构示意图,参见图4,与图3不同的是,图4中,需要在主机接收到存储卡返回的响应消息后,才能开始进行数据流的写操作,并在数据总线写操作期间,如果写入存储卡的数据缓存区已满,通过忙信令机制,即将数据线保持低电平,表示数据线处于“忙”状态,不再接收新的数据流。
对于面向块的类型,主机可以通过停止命令消息终止数据流的传输,也可以在数据流传输完毕后直接发送下一操作命令消息。
图5为现有技术块读操作的时序结构示意图,参见图5,与串行读操作相类似,不同的是,数据采用数据块的结构形式传输,数据块通过循环冗余校验码(CRC,Cyclic Redundancy Check)位校验来验证是否传送成功。数据块可以在DAT0~DAT7上传输。
图6为现有技术块写操作的时序结构示意图,参见图6,与串行写操作相类似,不同的是,数据采用数据块的结构形式传输,数据块通过CRC位校验来验证是否传送成功。数据块可以在DAT0~DAT7上传输。
也就是说,在现有技术中,主机通过命令总线发送当前传输命令消息之后,才能够与存储卡在数据总线传输当前传输命令消息对应的数据;且只有在当前传输命令消息对应的数据传输完毕后,主机才可以向存储卡发送下一个传输命令消息。而在当前传输命令消息对应的数据传输过程中,命令总线则处于空闲状态;在当前传输命令消息的传输过程中,数据总线又处于空闲状态,从而导致存储卡总线利用率低。
发明内容
有鉴于此,本发明的一个主要目的在于提供一种存储卡总线操作方法,提高存储卡总线的利用率。
为达到上述目的,本发明提供了一种存储卡总线操作方法,该方法包括以下步骤:
一种存储卡总线操作方法,该方法包括以下步骤:
通过命令总线发送当前传输命令消息并接收到所述当前传输命令消息的响应消息之后,开始在数据总线传输当前传输命令消息对应的数据;
如果确定当前传输命令消息对应的数据所需传输时间大于预设命令消息传输时间,则在数据总线传输当前传输命令消息对应的数据的过程中,通过命令总线发送下一传输命令消息;
在当前传输命令消息对应的数据传输完毕、并在命令总线接收到所述下一传输命令消息的响应消息后,传输下一传输命令消息对应的数据。
较佳地,所述当前传输命令消息对应的数据传输完毕包括:通过命令总线向存储卡发送停止命令消息;所述存储卡接收停止命令消息,停止当前传输命令消息对应的数据的传送;所述存储卡通过命令总线返回所述停止命令消息的响应;
所述命令消息所需传输时间包括:传输命令消息所需的传输时间、以及停止命令消息所需的传输时间。
较佳地,所述下一传输命令消息为读操作命令消息,所述传输下一传输命令消息对应的数据包括:
在所述存储卡返回所述读操作命令消息的响应预设的时间后,所述存储卡通过数据总线传输所述读操作命令消息对应的数据。
较佳地,所述下一传输命令消息为写操作命令消息,所述传输下一传输命令消息对应的数据包括:
在接收到所述存储卡返回的所述写操作命令消息的响应后,通过数据总线向所述存储卡传输所述写操作命令消息对应的数据。
较佳地,所述传输的数据为数据流或数据块。
较佳地,所述确定当前传输命令消息对应的数据所需传输时间大于命令消息所需传输时间为:确定当前传输命令消息对应的数据的长度大于命令消息长度。
由上述的技术方案可见,本发明提供的存储卡总线操作方法,通过将存储卡总线操作的各阶段设计为可以分割的,在命令总线空闲的时候插入下一传输命令消息,使得一条命令总线上并发存在着多个传输命令,因而,当数据总线传输完当前传输命令消息对应的数据后,数据总线就可以直接传输下一传输命令消息对应的数据,而无需再进行等待,从而提高了总线的利用率以及存储卡总线的实际性能。
附图说明
图1为现有技术中存储卡的结构示意图;
图2为现有技术中存储卡处理流程示意图;
图3为现有技术串行读操作的时序结构示意图;
图4为现有技术串行写操作的时序结构示意图;
图5为现有技术块读操作的时序结构示意图;
图6为现有技术块写操作的时序结构示意图;
图7为本发明存储卡串行读操作的时序结构示意图;
图8为本发明存储卡串行读操作方法流程示意图;
图9为本发明存储卡串行写操作的时序结构示意图;
图10为本发明存储卡串行写操作方法流程示意图;
图11为本发明存储卡块读操作的时序结构示意图;
图12为本发明存储卡块读操作方法流程示意图;
图13为本发明存储卡块写操作的时序结构示意图;
图14为本发明存储卡块写操作方法流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
本发明提供的存储卡总线操作方法,通过在命令总线空闲的时候插入下一传输命令消息,使得一条命令总线上并发存在着多个操作,当数据总线传输完当前传输命令消息对应的数据后,数据总线就可以直接传输下一传输命令消息对应的数据。
现有技术中,只在1bit总线模式中支持串行命令,因此,实际应用中,为了与现有版本兼容,也可以将本发明串行读、写操作方法应用于1bit总线模式中。下面分别进行描述。
图7为本发明存储卡串行读操作的时序结构示意图。图8为本发明存储卡串行读操作方法流程示意图,如图7和图8所示,以从存储卡中读取数据为例,该方法包括:
步骤801,存储卡上电复位,主机对存储卡进行初始化;
本步骤中,在存储卡上电复位后,主机通过特殊的基于消息的多媒体卡总线协议对存储卡进行初始化。
步骤802,主机向存储卡发送读操作命令消息1;
本步骤中,如果读操作命令消息1为串行读操作命令消息1,则初始化一个连续的数据流,只有在CMD总线上出现一个停止命令消息时才终止。
步骤803,存储卡向主机返回读操作命令消息1对应的响应消息1;
步骤804,存储卡向主机传送读操作命令消息1对应的数据流1;
本步骤中,在存储卡向主机返回响应消息1后的规定时间内,存储卡通过数据总线向主机传输数据流1。
步骤805,主机判断出读操作命令消息1对应的数据流1所需的传输时间大于读操作命令消息2与停止命令消息传输时间之和,且此时的命令总线处于空闲状态,因而通过命令总线发送读操作命令消息2;
本步骤中,主机获取传输的数据流1的长度或传输时间,与现有技术相类似,在此不再赘述。主机判断传输的数据流1的长度或传输时间是否大于相应的下一个传输命令消息(读操作命令消息2)与停止命令消息的长度或传输时间之和,如果大于,表明在数据流传输时,空闲的命令总线上可以插入读操作命令消息2。
实际应用中,对于面向块的类型,主机可以通过停止命令消息终止数据流的传输,则主机判断传输的数据流1的长度或传输时间是否大于相应的下一个传输命令消息(读操作命令消息2)与停止命令消息的长度或传输时间之和;也可以在数据流传输完毕后直接发送下一操作命令消息,则主机判断传输的数据流1的长度或传输时间是否大于相应的下一个传输命令消息(读操作命令消息2)的长度或传输时间即可。
实际应用中,步骤805也可以与步骤804同时执行。
步骤806,主机控制并确定向存储卡发送停止命令消息,存储卡接收停止命令消息,停止数据流1的传送,向主机返回停止命令消息对应的响应消息;
本步骤中,主机控制并确定向存储卡发送停止命令消息,与现有技术相类似,在此不再赘述。向主机返回的响应消息为对停止命令消息的响应。
步骤807,存储卡返回读操作命令消息2对应的响应消息2,向主机传输数据流2。
本步骤中,在存储卡向主机返回响应消息2后的规定时间内,存储卡通过数据总线向主机传输数据流2。在主机传输数据流2的同时或之后,主机根据传输的数据流2的长度或传输时间,判断是否大于相应的下一个传输命令消息(读操作命令消息3)与停止命令消息的长度或传输时间之和,如果大于,在空闲的命令总线上插入读操作命令消息3,后续处理流程与步骤806和步骤807相类似,在此不再赘述。
图9为本发明存储卡串行写操作的时序结构示意图。
图10为本发明存储卡串行写操作方法流程示意图,如图9和图10所示,与图7和图8不同的是,图9和图10中,需要在主机接收到存储卡返回的响应消息后,才能开始进行数据流的写操作,并在数据总线写操作期间,如果写入存储卡的数据缓存区已满,通过忙信令机制,将相应数据线保持低电平,表示该数据线处于“忙”状态,不再接收新的数据流。实际应用中,也可以是主机发送停止命令消息后,停止当前传输命令消息对应的数据的传送。
图11为本发明存储卡块读操作的时序结构示意图。图12为本发明存储卡块读操作方法流程示意图,如图11和图12所示,以从存储卡中读取数据为例,该方法包括:
步骤1201~步骤1204,同步骤801~步骤804,在此不再赘述。
步骤1205,主机判断传输的数据块1的长度或传输时间是否大于下一条传输命令消息相应的长度或传输时间,如果大于,且此时的命令总线处于空闲状态,因而通过命令总线发送读操作命令消息2;
本步骤中,主机也可以通过向存储卡发送停止命令消息来终止数据块传输,在该情况下,主机判断传输的数据块1的长度或传输时间是否大于相应的下一个传输命令消息(读操作命令消息2)与停止命令消息的长度或传输时间之和,如果大于,表明在数据块传输时,空闲的命令总线上可以插入读操作命令消息2。
数据块1也可以包括多个数据子块,如数据子块1-1,数据子块1-2等。
实际应用中,当主机插入有新的存储卡设备时,如果新插入的存储卡操作的优先级高于当前执行操作的存储卡的优先级,则主机也可以在空闲的命令总线上插入传输命令消息2,传输命令消息2对应优先级高的存储卡。
步骤1206~步骤1207,同步骤806~步骤807,在此不再赘述。
图13为本发明存储卡块写操作的时序结构示意图。
图14为本发明存储卡块写操作方法流程示意图,如图11和图12所示,相类似地,与图11和图12不同的是,需要在主机接收到存储卡返回的响应消息后,才能开始进行数据块的写操作,并在数据总线写操作期间,如果写入存储卡的数据缓存区已满,通过忙信令机制,将相应数据线保持低电平,表示该数据线处于“忙”状态,不再接收新的数据块。
由上述实施例可见,本发明提供的存储卡总线操作方法,如果采用串行命令类型进行传输,主机确定待传输数据的长度大于下一个传输命令消息与停止命令的长度之和,则在空闲的命令总线上插入该下一个传输命令消息;如果采用面向块的类型进行传输,主机确定待传输数据的长度大于下一个传输命令消息长度,或下一个传输命令消息与停止命令消息的长度之和,则在空闲的命令总线上插入该下一个传输命令。因而,当数据总线传输完当前传输命令消息对应的数据后,在命令总线上返回该下一个传输命令相应的响应,数据总线就可以直接传输该下一传输命令消息对应的数据,减少了数据总线传输完当前数据后,需要再等待命令总线传输的命令消息,从而减少了等待时间,提高了总线的利用率以及存储卡总线的实际性能。
以上举较佳实施例,对本发明的目的、技术方案和优点进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种存储卡总线操作方法,其特征在于,该方法包括以下步骤:
通过命令总线发送当前传输命令消息并接收到所述当前传输命令消息的响应消息之后,开始在数据总线传输当前传输命令消息对应的数据;
如果确定当前传输命令消息对应的数据所需传输时间大于预设命令消息传输时间,则在数据总线传输当前传输命令消息对应的数据的过程中,通过命令总线发送下一传输命令消息;
在当前传输命令消息对应的数据传输完毕、并在命令总线接收到所述下一传输命令消息的响应消息后,传输下一传输命令消息对应的数据。
2.如权利要求1所述的方法,其特征在于,所述当前传输命令消息对应的数据传输完毕包括:通过命令总线向存储卡发送停止命令消息;所述存储卡接收停止命令消息,停止当前传输命令消息对应的数据的传送;所述存储卡通过命令总线返回所述停止命令消息的响应;
所述命令消息所需传输时间包括:传输命令消息所需的传输时间、以及停止命令消息所需的传输时间。
3.如权利要求1或2所述的方法,其特征在于,所述下一传输命令消息为读操作命令消息,所述传输下一传输命令消息对应的数据包括:
在所述存储卡返回所述读操作命令消息的响应预设的时间后,所述存储卡通过数据总线传输所述读操作命令消息对应的数据。
4.如权利要求1或2所述的方法,其特征在于,所述下一传输命令消息为写操作命令消息,所述传输下一传输命令消息对应的数据包括:
在接收到所述存储卡返回的所述写操作命令消息的响应后,通过数据总线向所述存储卡传输所述写操作命令消息对应的数据。
5.如权利要求1或2所述的方法,其特征在于,所述传输的数据为数据流或数据块。
6.如权利要求1或2所述的方法,其特征在于,所述确定当前传输命令消息对应的数据所需传输时间大于命令消息所需传输时间为:确定当前传输命令消息对应的数据的长度大于命令消息长度。
CN2008101042684A 2008-04-17 2008-04-17 一种存储卡总线操作方法 Expired - Fee Related CN101266583B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101042684A CN101266583B (zh) 2008-04-17 2008-04-17 一种存储卡总线操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101042684A CN101266583B (zh) 2008-04-17 2008-04-17 一种存储卡总线操作方法

Publications (2)

Publication Number Publication Date
CN101266583A CN101266583A (zh) 2008-09-17
CN101266583B true CN101266583B (zh) 2010-10-06

Family

ID=39989008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101042684A Expired - Fee Related CN101266583B (zh) 2008-04-17 2008-04-17 一种存储卡总线操作方法

Country Status (1)

Country Link
CN (1) CN101266583B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9792975B1 (en) * 2016-06-23 2017-10-17 Mediatek Inc. Dram and access and operating method thereof

Also Published As

Publication number Publication date
CN101266583A (zh) 2008-09-17

Similar Documents

Publication Publication Date Title
US7177975B2 (en) Card system with erase tagging hierarchy and group based write protection
US6901457B1 (en) Multiple mode communications system
CN101325090B (zh) 通过使循环冗余码线路相对于数据线路偏移改善等待时间
US7069373B2 (en) USB endpoint controller flexible memory management
US7363441B2 (en) Portable storage apparatus and method for freely changing data bus width
CN102147778B (zh) 基于半双工串行总线的数据传输系统及传输控制方法
CN102804156A (zh) 动态随机存取存储器通道控制器的并行训练
KR20110010707A (ko) 슬레이브 디바이스 사이에서 직접 데이터를 전송하는 방법
KR102173089B1 (ko) 인터페이스 회로 및 그것의 패킷 전송 방법
JP2002541554A (ja) ユニバーサル・シリアル・バスに基づくpcフラッシュディスクのためのアーキテクチャ
US20070226401A1 (en) Data accessing structure and method for flash memory
US7831755B2 (en) Method and system for interfacing a plurality of memory devices using an MMC/SD protocol
CN103631534B (zh) 数据存储系统以及其管理方法
WO2008030350A2 (en) Multiple communication channels on mmc or sd cmd line
US7051128B2 (en) System and method for data bus communication system between external card connection device and host device
CN106409337A (zh) eMMC的控制方法及基于FPGA的eMMC控制器
CN101261611A (zh) 一种外围设备间的数据传输装置和传输方法
CN101266583B (zh) 一种存储卡总线操作方法
CN100468380C (zh) 存储卡可变长多块数据传输方法
CN100468375C (zh) 一种提高存储卡数据写入速度的方法
CN108920299A (zh) 储存媒体
US20080162479A1 (en) Memory card system and method for transmitting background information thereof
CN100476782C (zh) 一种存储卡数据传输方法
KR20130009536A (ko) 메모리 제어 장치 및 방법
CN105739919A (zh) 资料存取系统及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: CHINA POTEVIO CO., LTD.

Free format text: FORMER OWNER: PUTIAN IT TECH INST CO., LTD.

Effective date: 20130916

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130916

Address after: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee after: China Potevio Information Industry Co., Ltd.

Address before: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee before: Putian IT Tech Inst Co., Ltd.

ASS Succession or assignment of patent right

Owner name: PUTIAN IT TECH INST CO., LTD.

Free format text: FORMER OWNER: CHINA POTEVIO CO., LTD.

Effective date: 20131128

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20131128

Address after: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee after: Putian IT Tech Inst Co., Ltd.

Address before: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee before: China Potevio Information Industry Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101006

Termination date: 20210417

CF01 Termination of patent right due to non-payment of annual fee