[发明专利]能够降低控制器缓存资源的CF卡的快速数据读写控制方法无效
| 申请号: | 200910309970.9 | 申请日: | 2009-11-19 |
| 公开(公告)号: | CN101751235A | 公开(公告)日: | 2010-06-23 |
| 发明(设计)人: | 乔立岩;付宁;梁军;徐红伟;吴江伟;彭喜元 | 申请(专利权)人: | 哈尔滨工业大学 |
| 主分类号: | G06F3/08 | 分类号: | G06F3/08;G06F12/08 |
| 代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 张宏威 |
| 地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 能够 降低 控制器 缓存 资源 cf 快速 数据 读写 控制 方法 | ||
技术领域
本发明涉及一种CF卡的数据读写控制方法。
背景技术
CF卡作为一种非易失的固态数据存储装置,在数据存储方面有着诸多优点:(1)容量大,单片容量可达32GB,理论上最大为128GB;(2)数据传输速率高,在Ultra DMA 4、Ultra DMA 5和Ultra DMA 6模式下,数据传输的峰值速度分别为66MB/s,100MB/s和132MB/s;(3)体积小,CF-I型CF卡的体积为42.8mm×36.4mm×3.3mm。目前,CF卡主要应用在高速大容量的数据存储,如高速相机、工控领域等。在这些应用中,均要求对CF卡实现最高的读/写速率,以达到高速数据存储的目的。
CF卡的读/写是以扇区为单位,1个扇区包含512Bytes。外部控制器对CF卡进行读写操作时,每次申请读写的扇区数为1~256个扇区。申请的扇区数越多,CF卡的数据总线利用率就越高,读写速度也就越快。为了达到最高的数据传输(读/写)速率,外部控制器每次申请的扇区数为256个。
外部控制器在写CF卡时,首先要把待写入CF卡的数据放在数据缓冲区内,等数据缓冲区中的数据大于或等于256个扇区(128kB)时,向CF卡申请写256个扇区。当CF卡给出允许写信号后,外部控制器把缓冲区中的数据全部写入CF卡中。写完后即可进行下一次申请。
读CF卡和写CF卡类似,当外部缓冲器的空间大于或等于128kB时,控制器向CF卡申请读256个扇区数据,当CF卡给出允许读信号后,控制器将256个扇区数据读到缓存区内做后续处理。
以FPGA控制CF卡的数据传输为例,CF卡写操作的流程图如图1所示,其中的数据缓冲器用FPGA内部的FIFO。读CF卡的流程和写CF卡的流程类似。当向CF卡申请写256个扇区时,主控制器必须为写操作预留容量128kB(256个扇区)的FIFO。在读操作时为了达到最大的读取速度,同样要预留128kB的FIFO。这样需要FPGA至少要提供256kB的存储资源。对于价格昂贵的高端FPGA,其内部的存储资源可以达到或超过256kB。但价格相对便宜的低端FPGA,器内部存储资源一般在几kBytes到几十kBytes之间,无法达到最高读写速度时所要求的256kB。减少每次向CF卡申请的扇区数会降低对存储资源的要求,但这样会降低对CF卡的读写速度。虽然可以在低端FPGA(或其他控制器)的外部扩展一定存储器,使总存储容量大于或等于256kB,但是势必会提高设计成本,延长设计周期,同时也会使控制逻辑变得复杂。
发明内容
本发明是为了解决CF卡进行高速数据读写时对控制器缓存资源的要求高的问题,从而提出一种能降低外部控制器缓存资源的CF卡快速数据读写控制方法。
能降低外部控制器缓存资源的CF卡快速数据读写控制方法,它的具体过程为:
步骤一、外部控制器检测数据读写指令;
步骤二、外部控制器判断检测到的数据读写指令是否是向CF卡写入数据的指令,如果判断结果为是,则执行步骤二二;否则执行步骤二一;
步骤二一、外部控制器判断检测到的数据读写指令是否是读取CF卡内的数据的指令,如果判断结果为是,则执行步骤二一一;如果判断结果为否,则返回执行步骤一;
步骤二一一、外部控制器向CF卡申请读取256个扇区数据;
步骤二一二、初始化变量N,使N=0;
步骤二一三、外部控制器读取数据缓存器剩余空间;
步骤二一四、外部控制器判断数据缓存器剩余空间是否大于1个扇区;如果判断结果为是,则执行步骤二一五,如果判断结果为否,则返回执行步骤二一三;
步骤二一五、外部控制器读取CF卡状态;
步骤二一六、判断CF卡的状态是否准备好发送1个扇区的数据;如果判断结果为是,则执行步骤二一七;如果判断结果为否,则返回执行步骤二一五;
步骤二一七、使N=N+1,外部控制器读取CF卡的第N个扇区的数据并写入数据缓存器中;
步骤二一八、判断变量N的值是否大于或等于256,如果判断结果为是,则执行步骤二一九;如果判断结果为否,则返回执行步骤二一三;
步骤二一九、外部控制器是否给出停止读取信号;如果是,则返回执行步骤一;如果否,则返回执行步骤二一一;
步骤二二、外部控制器向CF卡申请写256个扇区的数据;
步骤二二一、初始化变量N,使N=0;
步骤二二二、外部控制器将1个扇区的数据送入数据缓存器中;
步骤二二三、外部控制器读取CF卡状态;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910309970.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:节能粮食烘干设备
- 下一篇:一种确定图像中像素键值的方法





