[发明专利]闪存校验存储方法无效
申请号: | 201310000413.5 | 申请日: | 2013-01-04 |
公开(公告)号: | CN103268266A | 公开(公告)日: | 2013-08-28 |
发明(设计)人: | 王媛媛 | 申请(专利权)人: | 苏州懿源宏达知识产权代理有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215100 江苏省苏州市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 闪存 校验 存储 方法 | ||
技术领域
本发明涉及数据存储领域,特别涉及一种闪存校验存储方法。
背景技术
在服务器设备与终端设备之间或计算机设备内部装置之间进行数据传送时,特别需要用到存储设备作为缓冲设备。目前比较常见存储设备有闪存闪存和电可擦写可编程只读存储器(EEPROM),这两种存储设备分别具有以下优缺点:
首先,闪存的优点是容量大且价格低;缺点是擦写速度慢,而且必须先擦后写,每次擦除的最小单位为一个BANK,即64KB。而且单位存储空间可擦写次数少,约为10万次;
其次,EEPROM的缺点是容量小且价格高;优点是擦写速度快,可单个字节擦写,而且单位存储空间的可擦写次数多,可达到100万次。
现有的存储设备在存储数据时,一般至少有两部分数据需要存储:程序部分和用户数据部分。存储设备出厂后,程序部分一般不会再改变,除非进行软件升级,因此一般都会选择闪存作为程序部分的存储设备。而用户数据部分经常会被用户修改,对存储设备的可擦写次数和稳定性有较高的要求。
但是,如果为考虑成本而采用闪存存储用户数据,则会存在以下问题:闪存擦写速度慢,而且大部分SPI闪存必须以BANK(64KB)为最小擦除单位,一次擦除要100ms以上,擦除次数过多的话,势必会影响闪存存储设备的使用寿命,而且,对数据进行存储时,速度也较慢。
另一方面,由于意外断电等特殊原因会造成的闪存存储设备出现坏块,坏块的出现会对闪存存储设备的存储造成不可估量的损失,因此,需要一种方法避免由于坏块的出现造成的存储失败。
发明内容
为了解决上述问题,本发明的一个目的在于提供一种闪存校验存储方法,一方面通过在闪存存储器中设置校验单元,并在校验单元中存储链表和当前节点地址,使得避免在同一块或同一部分块上连续擦除,减少坏块的出现。
本发明的再一目的在于是提供闪存坏块的校验功能,通过在存储数据前校验闪存中存储单元的所有存储块,并删除链表中的所有坏块,从而避免由于坏块造成的闪存存储失败。
为了实现上述目的,本发明公开了一种闪存校验存储方法,所述闪存包括校验单元和存储单元,所述存储单元包括多个存储块,所述多个存储块用于存储待存储数据,所述校验单元用于存储一链表和当前节点地址,所述链表中的每一节点包括数据域和指针域,所述数据域存储所属节点所对应的除坏块以外的存储块的物理地址,所述指针域存储所属节点在所述链表中的下一节点的地址,所述当前节点地址指示数据域存储有最后存储数据的块的物理地址的节点的地址,所述方法包括:校验链表中每一节点的数据域存储的物理地址所对应的存储块;从链表中删除数据域中存储有坏块的物理地址的节点;将待存储数据以存储单元中块的大小为单位划分为N个数据块,其中N为大于或等于1的整数;将待存储数据存储到存储单元的N个存储块中,所述N个存储块由所述链表和所述当前节点地址确定;更新所述当前节点地址,使得所述当前节点地址指示数据域存储有最后存储数据的块的物理地址的节点的地址。
根据本发明的一个方面,其中所述N个存储块由所述链表和所述当前节点地址确定包括:确定所述当前节点地址指示的地址对应的节点的后N个节点的数据域存储的物理地址对应的存储块为所述N个存储块中的第N块。
根据本发明的另一方面,其中所述链表中的所有节点与所述存储单元中的除坏块外的所有存储块呈一一映射关系。
根据本发明的另一方面,其中所述链表是循环链表。
根据本发明的另一方面,其中当在校验单元的链表的最后一个节点的数据域中存储的物理地址对应的存储块中存储数据后,如果还有需要存储的数据,则接着通过首节点地址找到链表的第一个节点,并在第一个节点的数据域中存储的物理地址对应的存储块中存储数据。
本发明的效果在于:
一方面,能够避免在同一块或同一部分块上连续擦除,导致同一块或同一部分块的擦除次数较之其它块提前超出最大擦除次数,由此可减少坏块的提前出现。
另一方面,能够避免由于坏块造成的闪存存储失败,使得存储数据之前确保链表中指示的所有块都是有效块。
附图说明
所包括的附图用于进一步理解本发明,其作为说明书的一个组成部分并与说明书一起解释本发明的原理,在附图中:
图1示出了本发明闪存的结构框图;
图2示出了本发明一实施例的方法流程图;
图3示出了本发明另一实施例的方法流程图;
图4示出了本发明闪存存储器中校验单元中存储的循环链表的示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州懿源宏达知识产权代理有限公司,未经苏州懿源宏达知识产权代理有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310000413.5/2.html,转载请声明来源钻瓜专利网。