[发明专利]一种基于NOR FLASH芯片的数据存储实现方法无效
申请号: | 200710120239.2 | 申请日: | 2007-08-14 |
公开(公告)号: | CN101118517A | 公开(公告)日: | 2008-02-06 |
发明(设计)人: | 孙建民 | 申请(专利权)人: | 北京佳讯飞鸿电气股份有限公司 |
主分类号: | G06F12/06 | 分类号: | G06F12/06 |
代理公司: | 北京众合诚成知识产权代理有限公司 | 代理人: | 李光松 |
地址: | 100044北京市海淀区交大东路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 nor flash 芯片 数据 存储 实现 方法 | ||
技术领域
本发明涉及FLASH存储技术领域,尤其涉及一种基于NOR FLASH芯片的数据存储实现方法。
背景技术
随着电子技术的发展,NOR FLASH芯片作为一种存储器在嵌入式系统中得到了越来越广泛的应用。NOR FLASH芯片具有可靠性高、体积小、密度大、可擦除、可重写等优点。因此在嵌入式系统设备中,NOR FLASH主要用于存储系统的运行程序和保障程序可靠运行的配置数据。
NORFLASH芯片可以进行读写和擦除操作,通常以字为单位写入,以块为单位擦除;在进行写入操作前,必须先进行擦除操作。
NOR FLASH芯片的缺点是擦除、写入的次数有限,因此频繁的进行擦除、写入操作,不利于NOR FLASH芯片的长期使用。
发明内容
鉴于上述NOR FLASH芯片的不足之处,本发明的目的是提供一种基于NORFLASH芯片的数据存储实现方法,本发明的目的是这样实现的:通过建立FLASH块表和内存数据映射区,标记需要写入的FLASH块,定时将修改过的数据写入FLASH芯片,实现步骤如下:
1)FLASH芯片的初始化:建立FLASH块表和内存数据映射区;
①系统加电启动时,检测所使用的FLASH芯片类型;
②根据FLASH芯片的块大小和块数量,建立FLASH块表;
③设置FLASH块表中各项的值:设置块大小和起始地址,其中写入标志置为0-表示无需写入;坏块标志置为0-表示好块;
④根据需存储在FLASH芯片中的数据的大小,在系统内存中建立FLASH芯片的内存数据映射区;
2)数据的修改过程:修改内存数据映射区中的数据,标记需要写入的FLASH块;
①系统修改数据时,将修改的数据保存在内存数据映射区;
②计算修改数据在内存数据映射区的偏移量;
③根据修改数据的偏移量和大小,计算需要写入的FLASH块;
④设置需要写入的FLASH块的写入标志为1-表示需要写入;
3)数据的写入过程:系统定时扫描需要写入的FLASH块,系统重新启动前强制写FLASH块;
①系统加电启动完毕后,启动FLASH芯片写操作定时器;
②FLASH芯片写操作定时到后,扫描FLASH块表;
③如果FLASH块的写入标志为1,根据FLASH块号,计算出需要写入数据的FLASH块的地址;
④擦除需写入的FLASH块,根据块大小写入新的数据;
⑤设置已写入的FLASH块的写入标志为0;
⑥扫描完FLASH块表后,重新启动FLASH芯片写操作定时器。
⑦当系统执行重启动操作前,强制扫描FLASH块表,将需要写入的数据写入FLASH芯片;
4)出现FLASH芯片写入错误或检测FLASH芯片出错时,自动标记FLASH芯片中的坏块:
在执行FLASH芯片写入操作时,如果出现错误,或检测到FLASH芯片出错,标记此FLASH块为坏块,将坏块标志设置为1。
所述FLASH块表包含块号、块大小、起始地址、写入标志和坏块标志。
所述内存数据映射区和FLASH芯片中的数据有一一对应关系。
本发明的有益效果:由上述方案可以得知,本发明通过建立FLASH块表,标记需要写入的数据块,减少了NOR FLASH的擦除、写入操作次数,有效的提高了NOR FLASH芯片保存数据的效率;通过标记坏块和定时写入,提高了数据存储的安全性和可靠性,也延长了NOR FLASH芯片的使用寿命。
附图说明
图1为FLASH块表结构示意图;
图2为FLASH初始化流程图;
图3为数据修改流程图;
图4为数据定时写入流程图。
具体实施方式
本发明提供一种基于NOR FLASH芯片的数据存储实现方法。具体步骤结合图2、图3、图4叙述如下:
A)FLASH芯片的初始化过程:(如图2所示)
(1)系统加电启动时,检测所使用的FLASH芯片类型;
(2)根据FLASH芯片的块大小和块数量,建立FLASH块表,如图1;
(3)设置FLASH块表中各项的值:设置块大小和起始地址,写入标志置为0(表示无需写入),坏块标志置为0(表示好块);
(4)根据需存储在FLASH芯片中的数据的大小,在系统内存中建立FLASH芯片的内存数据映射区。
B)数据的修改过程:(如图3所示)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京佳讯飞鸿电气股份有限公司,未经北京佳讯飞鸿电气股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710120239.2/2.html,转载请声明来源钻瓜专利网。