一种引脚数据传输方法

文档序号:6602954阅读:227来源:国知局
专利名称:一种引脚数据传输方法
一种引脚数据传输方法
技术领域
本发明涉及数据传输领域,特别涉及一种引脚数据传输方法。背景技术
安全数字卡(SecureDigitalCard,SD卡)是基于flash存储器的设备。近几年 来,以其高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性已经成为闪存 市场标准,广泛用于PDA、智能手机、数码相机等各种产品中,已经成为面向便携式数码产品 中非常流行的功能接口。同时还出现了很多基于SD接口协议的10设备(SDI0扩展功能 卡),为用户提供了更多的扩展功能。为了便于描述,本文以后将安全数字卡和SDI0扩展功 能卡简称为SD卡。特此声明,不再累述。在使用SD卡的芯片中通常包括SD控制器、SD卡和它们之间连接的引脚。但是现 在各种数码设备都具有功能强大、体积小的特点。各种数码设备越是功能强大、越是体积 小,对于芯片或系统的集成度要求就越高。对于芯片或系统上多个功能模块共享一组引脚 来进行数据传输的现象就越来越多。请参考图1,其示出了一种包括SD卡及有关模块的装 置100的结构示意图。所述装置100包括SD控制器102、SD卡104以及连接所述SD控制 器102和SD卡104的引脚106。所述引脚106包括命令引脚108和数据引脚110,所述引 脚106还可能被其他模块分时复用。所述SD控制器102和SD卡104通过所述引脚106交 互数据。请参考图2,图2示出了现有SD卡进行读写操作时的读写时序示意图。当需要对 SD卡104进行读写操作时,所述SD控制器102首先申请所述引脚106的使用权,包括命令 引脚108和数据引脚110。当所述SD控制器102获得所述引脚106的使用权后,首先要通 过命令引脚108发送相关的读写命令202 ;在一段间隔时间之后,在所述SD卡104确认读写 命令无误后通过命令引脚108反馈一个响应信号204给所述SD控制器102,并在反馈之后 通过数据引脚110传输数据块206。比如当只读一次命令时,所述SD卡104在响应信号发 出后发送一个数据块给所述SD控制器;当多块写命令时,所述SD控制器102在接受到响应 信号后发送多个数据块给所述SD卡。但是应当认识到,虽然数据引脚110与命令引脚108 虽然是同时被所述SD控制器申请并占用的,但是数据引脚110在申请后并未直接被使用而 是在一段等待时间后才被使用的。当命令信号202和响应信号204之间的间隔较长时,对 于数据引脚110的使用效率并不高。特别是如果所述SD卡进行的是直接内存访问(Direct Memory Access, DMA)时,由于还需要进行其他配置工作,所述等待时间较长。而所述引脚 106由于可能被其他模块所共用的原因,系统对所述引脚106的使用效率有较高的要求。因此,有必要提出一种新的技术方案来解决上述缺点。

发明内容本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施 例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。本发明的一个目的在于提供一种引脚数据传输方法,其可以提高数据传输时的引 脚使用效率。本发明的另一目的在于提供一种数据传输方法,其可以提高SD卡进行DMA传输时 的引脚使用效率。为了达到本发明的目的,根据本发明的一方面,本发明提供一种引脚数据传输方 法,所述方法包括申请命令引脚使用权限;在获得所述命令引脚使用权限后,通过所述命 令引脚传输读写命令;在所述读写命令被响应后申请数据引脚使用权限;和在获得所述数 据弓I脚使用权限后,通过所述数据弓I脚传输数据。进一步地,安全数字卡控制器和安全数字卡通过所述命令引脚和数据引脚进行命 令和数据交互。进一步地,所述数据引脚被若干个模块所共同使用。进一步地,所述读写命令包括读命令或写命令,所述读命令包括只读一次命令和 连续读命令;所述写命令包括只写一次写命令和连续写命令。进一步地,所述传输数据是按照固定字节长度的数据块来进行数据传输。根据本发明的另一方面,本发明提供一种数据传输方法,用于将安全数字卡内的 数据经由安全数字卡控制器控制进行DMA传输,所述方法包括所述安全数字卡控制器配置访问安全数字卡的读写参数,根据所述读写参数配置 读写命令,配置DMA传输时的传输参数;所述安全数字卡控制器申请命令引脚的使用权限; 在命令引脚申请被响应后,所述安全数字卡控制器用申请到的命令引脚传输所述读写命 令,并在所述读写命令被响应后申请数据引脚的使用权限;在数据引脚申请被响应后,所述 安全数字卡控制器基于所述传输参数用申请到的数据引脚进行DMA传输。进一步地,所述读写参数包括读参数或写参数,所述读参数有读起始地址、读类 型、读基本单位和读个数;所述写参数有写起始地址、写类型、写基本单位和写个数;其中 读写类型包括只读写一次和连续读写。进一步地,所述读写命令包括读命令或写命令,所述读命令包括只读一次读命令 和连续读命令;所述写命令包括只写一次写命令和连续写命令。进一步地,所述传输参数包括DMA传输的起始地址、DMA数据的长度或者传输数据 的结束地址。进一步地,DMA传输是按照固定字节长度的数据块来进行数据传输。与现有技术相比,本发明对命令引脚和数据引脚的申请是分开进行的,这样有利 于节省数据引脚的占用时间。此外,本发明在所述读写命令配置好后暂存在寄存器中,并不 立即申请系统相关引脚的使用权,而是等待所述DMA传输参数也配置完毕后,将申请系统 相关引脚和触发DMA传输同时进行。这样就节约了 DMA传输时对引脚的使用时间,也提高 了引脚的使用效率。

结合参考附图及接下来的详细描述,本发明将更容易理解,其中同样的附图标记 对应同样的结构部件,其中
图1为一种包括SD卡及有关模块的装置100的结构示意图;图2为现有SD卡进行读写操作时的读写时序示意图;图3为本发明中引脚数据传输方法的方法流程图;图4本发明中SD卡进行读写操作时的读写时序示意图;图5为本发明的数据传输装置在一个实施例中的系统框图;和图6为本发明中的数据传输方法在一个实施例中的方法流程图。
具体实施方式本发明的详细描述主要通过程序、步骤、逻辑块、过程或其他象征性的描述来直接 或间接地模拟本发明技术方案的运作。为透彻的理解本发明,在接下来的描述中陈述了很 多特定细节。而在没有这些特定细节时,本发明则可能仍可实现。所属领域内的技术人员 使用此处的这些描述和陈述向所属领域内的其他技术人员有效的介绍他们的工作本质。换 句话说,为避免混淆本发明的目的,由于熟知的方法、程序、成分和电路已经很容易理解,因 此它们并未被详细描述。此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中 的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一 个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。此外,表示一个或多 个实施例的方法、流程图或功能框图中的模块顺序并非固定的指代任何特定顺序,也不构 成对本发明的限制。本发明提出一种引脚数据传输方法来实现对SD卡的读写操作。为了便于描述,本 文继续结合图1所述的装置来描述所述方法。但是应当认识到,所述方法还可以用于其它 模块或者装置,比如MMC卡、SDHC卡或者Nandflash闪存等等。请参考图3,其示出了本发明中引脚数据传输方法300的方法流程图。所述引脚数 据传输方法300包括如下步骤步骤302,申请命令引脚。对于采用图1所述装置的实施例中,即所述SD控制器首先申请命令引脚的使用权限。步骤304,在获得命令引脚使用权限后发送读写命令。所述SD控制器在获得命令引脚使用权后,通过所述命令引脚发送要进行的读写 操作相关的读写命令。步骤306,在获得读写命令响应信号后申请数据引脚的使用权限。所述SD控制器在获得读写命令响应信号后申请数据引脚的使用权限。步骤308,在获得数据引脚使用权限后发送数据。所述SD控制器在获得数据引脚的使用权限后,通过所述数据引脚发送相关的数 据包。请参考图4,其示出了本发明中SD卡进行读写操作时的读写时序示意图。其中所 述SD控制器首先申请命令引脚的使用权限,在获得使用权限后通过所述命令引脚发送相 关的读写命令402 ;然后所述SD控制器在接收到响应信号404后申请数据引脚的使用权 限,并在获得数据引脚的使用权限后通过数据引脚传输数据块406。应当认识到,本发明在命令引脚进行读写命令的发送和响应阶段,数据引脚还可以被其他模块所使用。特别地,图 2和图4都是对SD卡进行读写操作时的读写时序示意图。与具体实施例中详细的时序图可 能略有差别。比如数据块的传输时间略微提前或靠后一个或者几个时钟周期。可以看出, 在本发明中对命令引脚和数据引脚的申请是分开进行的,在获得读写命令响应信号后才去 申请数据引脚的使用权限,这样减少了数据引脚的空闲等待时间,从而提高了引脚的使用 效率。为了更详细、全面的说明本发明,下面结合本发明在SD卡进行DMA传输时的实施 例进行详细说明。DMA是指直接内存访问技术,在本发明中是指SD卡直接与系统的存储器 实现数据交互。现有技术中SD卡进行DMA传输时由于在对SD卡进行读写操作的同时,还 需要设置有关DMA传输的参数和对系统进行DMA请求等操作,会造成图2中的等待时间非 常长的缺点。本发明同时提出一种DMA传输装置和方法来解决这一缺点。请参考图5,其示出了本发明的数据传输装置500在一个实施例中的系统方框图。 所述数据传输装置500由所述SD控制器及相关模块实现。所述数据传输装置500包括读 写参数寄存单元502、读写命令寄存单元504、DMA参数寄存单元506、DMA传输单元508和 控制单元510。所述读写参数寄存单元502包括若干寄存器,比如读写地址寄存器、读写数据大 小寄存器等等,负责存储读写SD卡520时所需的读写参数。所述读写参数是指系统读写SD 卡520时的读参数或者写参数。在一个实施例中,所述系统从SD卡520读取数据到存储器 540的读参数配置包括读起始地址从SD卡520内要读的数据的起始地址;读类型只读一次或者连续读;读方式查询方式读或者中断方式读;读基本单位读操作的数据块长度默认单位,通常根据SD传输协议定义,该单位 是 512byte ;读个数如果读类型是连续读,还要配置连续读的数据块个数。例如总共要读 12*512byte,则读个数配置为12个,具体配置方式本领域的技术人员应当了解,再次不再 累述。在另一个实施例中,对于系统从存储器540写入数据到SD卡520的写参数配置包 括写起始地址写数据到SD卡520内的起始地址;写类型写一次或者连续写;写方式查询方式写或者中断方式写;写基本单位写操作的数据块长度默认单位,通常根据SD传输协议定义,该单位 是 512byte ;写个数如果写类型是连续写,还要配置连续写的数据块个数。例如总共要写 12*512byte,则写个数配置为12个,具体配置方式本领域的技术人员应当了解,再次不再 累述。所述读写命令寄存单元504负责存储根据所述读写参数设定的读写命令。在一个 实施例中,所述读写命令寄存单元504根据所述读写参数寄存器502内的读写参数生成读
6写命令并存储,所述读命令分为只读一次读命令和连续读读命令;所述写命令分为只写一 次写命令和连续写写命令。所述DMA参数寄存单元506负责存储DMA传输时的传输参数。所述传输参数是指 系统进行DMA传输时需要配置的有关DMA传输的相关参数,所需进行配置的参数有DMA传 输的起始地址,如内存的地址;DMA数据的长度或者传输数据的结束地址;DMA传输的方向, 如从SD卡到内存、从内存到SD卡等等。在不同的实施例中,所述传输参数可能略有变化。 比如在一个实施例中,系统需要配置DMA数据的长度;而在另一个实施例中,系统则只需要 配置DMA传输数据的结束地址。所述控制单元508负责根据所述读写命令和所述传输参数来申请系统引脚,并控 制DMA传输单元完成DMA传输。在一个实施例中,当所述读写命令寄存单元504内的读写 命令和所述DMA参数寄存单元508内的传输参数配置完毕后,所述控制单元508申请命令 引脚的使用权限,在申请到命令引脚的使用权限后,利用申请到的命令引脚传输所述读写 命令,并在读写命令被响应后申请数据引脚的使用权限,并在获得数据引脚使用权限后利 用申请到的数据引脚进行DMA数据传输。在DMA传输完毕后,所述控制单元508立刻释放 所申请的系统引脚的使用权。所述DMA传输单元510根据所述控制单元508的控制完成DMA传输。在一个实施 例中,在DMA传输触发后,所述DMA传输单元510根据所述传输参数将数据按每次固定字节 的方式从SD卡520传输到系统的存储器540,或者将数据从系统的存储器540传输到SD卡 520。在一个实施例中,所述固定字节为512字节。本发明中系统对所述读写命令寄存单元504配置好读写命令后并不立即申请系 统相关引脚的使用权。而是所述控制单元508在所述读写命令寄存单元504内的读写命令 和所述DMA参数寄存单元508内的传输参数配置完毕后,依次申请命令引脚、数据引脚和触 发DMA传输,尽量节约对系统相关引脚的使用时间,提高了系统相关引脚的使用效率。请参考图6,其示出了本发明中的数据传输方法600在一个实施例中的方法流程 图。所述方法600包括步骤602,配置访问SD卡的读写参数;在DMA传输时需要访问SD卡,访问SD卡需要在所述读写参数寄存器内配置相关 的读写参数。步骤604,根据所述读写参数配置读写命令;在所述读写参数寄存器内配置好相关的读写参数后,根据读写参数是只读写一次 还是连续读写配置好只读写一次命令或者连续读写命令并保存在所述读写命令寄存器内。 在一个实施例中,系统需要读SD卡内12*512byte的数据,则配置连续读命令保存在所述读 写命令寄存器内;在另一个实施例中,系统需要对SD卡写入512byte的数据,则配置只写一 次命令保存在所述读写命令寄存器内。步骤606,配置DMA传输时的传输参数;在DMA传输时需要在所述DMA参数寄存器内配置相关的DMA传输参数。在一个实 施例中,系统需要以DMA方式从内存写14*512byte的数据到所述SD卡,则配置的DMA传输 参数为DMA传输的起始地址,内存地址0x00000000 ;DMA数据的长度,14*512byte ;DMA传 输的方向,从内存到SD卡。
步骤608,根据所述读写命令和所述传输参数申请命令引脚的使用权限;当所述读写命令寄存单元内的读写命令和所述DMA参数寄存单元内的传输参数 配置完毕后,所述控制单元申请命令引脚的使用权。步骤610,在命令引脚申请被响应后,用申请到的命令引脚传输所述读写命令,并 在读写命令被响应后申请数据引脚的使用权限;在命令引脚申请被响应后,利用申请到的命令引脚传输所述读写命令,然后在所 述读写命令被响应后申请数据引脚的使用权限。步骤612,在数据引脚申请被响应后,用申请到的数据引脚进行DMA传输。在DMA 传输完毕后,释放所述命令引脚和数据引脚的使用权。当数据引脚申请被响应后还需要进行DMA传输的触发,当DMA触发成功后进行DMA 传输,在DMA传输完毕后,释放所述命令引脚和数据引脚的使用权。特别地,在申请数据引脚时还可能出现数据引脚被其他模块所使用而导致无法立 刻申请到数据引脚的情况。在一个实施例中,当申请数据引脚时,如果系统未及时响应,本 发明的DMA传输装置可以继续等待直到获得数据引脚的使用权;在另一个实施例中,本发 明的DMA传输装置在申请数据引脚时还可以设置一个预定时间,如果在预定时间内未申请 到数据引脚则放弃该次申请,如果在预定时间内申请到数据引脚则使用申请到的数据引 脚。上述说明已经充分揭露了本发明的具体实施方式
。需要指出的是,熟悉该领域的 技术人员对本发明的具体实施方式
所做的任何改动均不脱离本发明的权利要求书的范围。 相应地,本发明的权利要求的范围也并不仅仅局限于所述具体实施方式

权利要求
一种引脚数据传输方法,其特征在于,其包括申请命令引脚使用权限;在获得所述命令引脚使用权限后,通过所述命令引脚传输读写命令;在所述读写命令被响应后申请数据引脚使用权限;和在获得所述数据引脚使用权限后,通过所述数据引脚传输数据。
2.根据权利要求1所述的引脚数据传输方法,其特征在于,安全数字卡控制器和安全 数字卡通过所述命令引脚和数据引脚进行命令和数据交互。
3.根据权利要求1所述的引脚数据传输方法,其特征在于,所述数据引脚被若干个模 块所共同使用。
4.根据权利要求1所述的引脚数据传输方法,其特征在于,所述读写命令包括读命令 或写命令,所述读命令包括只读一次命令和连续读命令;所述写命令包括只写一次写命令 和连续写命令。
5.根据权利要求1所述的引脚数据传输方法,其特征在于,所述传输数据是按照固定 字节长度的数据块来进行数据传输。
6.一种数据传输方法,用于将安全数字卡内的数据经由安全数字卡控制器控制进行 DMA传输,其特征在于,其包括所述安全数字卡控制器配置访问安全数字卡的读写参数,根据所述读写参数配置读写 命令,配置DMA传输时的传输参数;所述安全数字卡控制器申请命令引脚的使用权限;在命令引脚申请被响应后,所述安全数字卡控制器用申请到的命令引脚传输所述读写 命令,并在所述读写命令被响应后申请数据引脚的使用权限;禾口在数据引脚申请被响应后,所述安全数字卡控制器基于所述传输参数用申请到的数据 引脚进行DMA传输。
7.根据权利要求6所述的数据传输方法,其特征在于,所述读写参数包括读参数或写 参数,所述读参数有读起始地址、读类型、读基本单位和读个数;所述写参数有写起始地址、 写类型、写基本单位和写个数;其中读写类型包括只读写一次和连续读写。
8.根据权利要求6所述的数据传输方法,其特征在于,所述读写命令包括读命令或写 命令,所述读命令包括只读一次读命令和连续读命令;所述写命令包括只写一次写命令和 连续写命令。
9.根据权利要求6所述的数据传输方法,其特征在于,所述传输参数包括DMA传输的起 始地址、DMA数据的长度或者传输数据的结束地址。
10.根据权利要求6所述的数据传输方法,其特征在于,DMA传输是按照固定字节长度 的数据块来进行数据传输。
全文摘要
本发明揭露了一种引脚数据传输方法,所述方法包括申请命令引脚使用权限;在获得所述命令引脚使用权限后,通过所述命令引脚传输读写命令;在所述读写命令被响应后申请数据引脚使用权限;和在获得所述数据引脚使用权限后,通过所述数据引脚传输数据。与现有技术相比,本发明对命令引脚和数据引脚的申请是分开进行的,这样有利于节省数据引脚的占用时间。同时本发明还揭露了一种数据传输方法,用于将安全数字卡内的数据经由安全数字卡控制器控制进行DMA传输,同样节省了对数据引脚的占有时间。
文档编号G06F13/28GK101853230SQ201010181160
公开日2010年10月6日 申请日期2010年5月25日 优先权日2010年5月25日
发明者冯备战 申请人:无锡中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1