[发明专利]闪存存储管理方法有效
申请号: | 200810015972.2 | 申请日: | 2008-05-05 |
公开(公告)号: | CN101324862A | 公开(公告)日: | 2008-12-17 |
发明(设计)人: | 田友强 | 申请(专利权)人: | 青岛海信电器股份有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F11/10 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 266100山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 闪存 存储 管理 方法 | ||
技术领域
本发明涉及一种闪存存储管理方法,更具体的涉及一种基于动态虚拟扇区的闪存存储管理方法。
背景技术
随着嵌入式系统的迅速发展和广泛应用,大量需要一种能多次编程,容量大,读写、擦除快捷、方便、简单,外围器件少,价格低廉的非易挥发存储器件。闪存(Flash Memory)存储介质就是在这种背景需求下应运而生的。闪存是一种基于半导体的存储器,具有系统掉电后仍可保留内部信息,及在线擦写等功能特点,是一种替代EEPROM存储介质的新型存储器。因为它的读写速度比EEPROM更快,在相同容量的情况下成本更低,因此闪存将是嵌入式系统中的一个重要组成单元。闪存是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位,区块大小一般为256KB到20MB。闪存是电子可擦除只读存储器(EEPROM)的变种,EEPROM与闪存不同的是,它能在字节水平上进行删除和重写而不是整个芯片擦写,这样闪存就比EEPROM的更新速度快。由于其断电时仍能保存数据,闪存通常被用来保存设置信息,如在电脑的BIOS(基本输入输出程序)、PDA(个人数字助理)、数码相机中保存资料等。
闪存包括NOR型和NAND型闪存,NOR型与NAND型闪存的区别很大,具体的,NOR型闪存更像内存,有独立的地址线和数据线,但价格比较贵,容量比较小;而NAND型更像硬盘,地址线和数据线是共用的I/O线,类似硬盘的所有信息都通过一条硬盘线传送一般,而且NAND型与NOR型闪存相比,成本要低一些,而容量大得多。因此,NOR型闪存比较适合频繁随机读写的场合,通常用于存储程序代码并直接在闪存内运行,手机就是使用NOR型闪存的大户,所以手机的“内存”容量通常不大;NAND型闪存主要用来存储资料,我们常用的闪存产品,如闪存盘、数码存储卡都是用NAND型闪存。
由于Flash读写存储的编程特点,有必要对其进行存储过程管理,以使整个系统性能得以改善。Flash自身具有以下特性:
(1)Flash在物理结构上分成若干个区块(Block),区块之间相互独立;
(2)由于Flash的写操作只能将数据位从1写成0,不能从0写成1,所以在对存储器进行写入之前必须先执行擦操作,将预写入的数据位初始化为1。擦除操作的最小单位是一个区块,而不是单个字节;
(3)块的擦写寿命有次数限制;
(4)Flash在使用过程中,可能导致某些区块的损坏。区块一旦损坏,将无法进行修复;
(5)由于Flash固有的电器特性,在读写数据过程中,偶然会产生一位或几位数据错误,这称为位反转。位反转无法避免,只能通过其他手段对结果进行事后处理;
(6)块擦除的时间比较长。
目前有一种基于静态虚拟扇区的Flash存储管理技术,即把Flash中的每个Block分为更小的虚拟逻辑块VSS,每个扇区大小根据应用在模块初始化时设定。每个Block前面的一个固定单元用于记录本block中扇区分配的使用情况(SAT),包括扇区属性及扇区逻辑号。在进行数据读写和修改时,以虚拟扇区块的大小为单位。要修改某一扇区的数据时,先读出这个扇区的内容,重新找一个未使用的扇区,把修改后的内容写入这个新扇区。然后,修改原来扇区的属性值为无效,修改这个新扇区的属性为有效,拷贝VSS的ID号到新扇区对应的SAT单元中。这样,当某一个block中的SAT属性都标为无效时,才对当前block进行擦写。可见,以虚拟扇区大小为单位的存储管理,对Flash块的擦写次数可大大减少,从而提高了系统性能。
但是,这种存储管理技术存在以下几个缺陷:
(1)每个Block只能存储一种类型的数据,当可用的Block个数较少而需要存储的数据类型较多时,这种方法不能使用。也就是说不能充分利用Flash空间。
(2)没有考虑出现坏块的情况。
(3)没有考虑Flash的位反转。
因此,本领域需要一种Flash存储管理方法,能够有效的利用Flash空间,同时能够处理坏块和Flash的位反转。
发明内容
为了解决这些问题,采用了动态虚拟扇区技术,即在同一个Block中根据应用需要可以分配不同大小的虚拟扇区,分别用来存储不同类型的数据记录;如果确认某个扇区有坏块,则跳过该扇区重新写入数据;通过CRC数据校验和写入完成后数据比较确保数据的可靠性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海信电器股份有限公司,未经青岛海信电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810015972.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种餐桌
- 下一篇:二氧化碳诊断/测定试剂盒及二氧化碳浓度测定方法