CN101118517A - 一种基于nor flash芯片的数据存储实现方法 - Google Patents

一种基于nor flash芯片的数据存储实现方法 Download PDF

Info

Publication number
CN101118517A
CN101118517A CNA2007101202392A CN200710120239A CN101118517A CN 101118517 A CN101118517 A CN 101118517A CN A2007101202392 A CNA2007101202392 A CN A2007101202392A CN 200710120239 A CN200710120239 A CN 200710120239A CN 101118517 A CN101118517 A CN 101118517A
Authority
CN
China
Prior art keywords
flash
data
write
piece
need
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2007101202392A
Other languages
English (en)
Other versions
CN100476758C (zh
Inventor
孙建民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jiaxun Feihong Electrical Co Ltd
Original Assignee
Beijing Jiaxun Feihong Electrical Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jiaxun Feihong Electrical Co Ltd filed Critical Beijing Jiaxun Feihong Electrical Co Ltd
Priority to CNB2007101202392A priority Critical patent/CN100476758C/zh
Publication of CN101118517A publication Critical patent/CN101118517A/zh
Application granted granted Critical
Publication of CN100476758C publication Critical patent/CN100476758C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本发明公开了属于FLASH存储技术领域的一种基于NOR FLASH芯片的数据存储实现方法。该方法是通过建立FLASH块表和内存数据映射表,标记需要写入的FLASH块,定时将修改过的数据写入FLASH。本发明减少了NOR FLASH的擦除、写入操作次数,有效的提高了NOR FLASH芯片保存数据的效率;提高了数据存储的安全性和可靠性,也延长了NOR FLASH芯片的使用寿命。

Description

一种基于NOR FLASH芯片的数据存储实现方法
技术领域
本发明涉及FLASH存储技术领域,尤其涉及一种基于NORFLASH芯片的数据存储实现方法。
背景技术
随着电子技术的发展,NOR FLASH芯片作为一种存储器在嵌入式系统中得到了越来越广泛的应用。NOR FLASH芯片具有可靠性高、体积小、密度大、可擦除、可重写等优点。因此在嵌入式系统设备中,NOR FLASH主要用于存储系统的运行程序和保障程序可靠运行的配置数据。
NOR FLASH芯片可以进行读写和擦除操作,通常以字为单位写入,以块为单位擦除;在进行写入操作前,必须先进行擦除操作。
NOR FLASH芯片的缺点是擦除、写入的次数有限,因此频繁的进行擦除、写入操作,不利于NOR FLASH芯片的长期使用。
发明内容
鉴于上述NOR FLASH芯片的不足之处,本发明的目的是提供一种基于NOR FLASH芯片的数据存储实现方法,本发明的目的是这样实现的:通过建立FLASH块表和内存数据映射表,标记需要写入的FLASH块,定时将修改过的数据写入FLASH,实现步骤如下:
1)FLASH的初始化:建立FLASH块表和内存数据映射表;
①系统加电启动时,检测所使用的FLASH芯片类型;
②根据FLASH芯片的块大小和块数量,建立FLASH块表;
③设置FLASH块表中各项的值:设置块大小和起始地址,其中写入标志置为0-表示无需写入;坏块标志置为0-表示好块;
④根据需存储在FLASH中的数据的大小,在系统内存中建立FLASH数据映射区;
2)配置数据的修改过程:修改数据映射表中的数据,标记需要写入的FLASH块;
①系统修改配置数据时,将修改的数据保存在FLASH数据映射区;
②计算修改数据在FLASH数据映射区的偏移量;
③根据修改数据的偏移量和大小,计算需要写入的FLASH块;
④设置需要写入的FLASH块的写入标志为1-表示需要写入;
3)配置数据的写入过程:系统定时扫描需要写入的FLASH块,系统重新启动前强制写FLASH块;
①系统加电启动完毕后,启动FLASH写操作定时器;
②FLASH写操作定时到后,扫描FLASH块表;
③如果FLASH块的写入标志为1,根据FLASH块号,计算出需要写入数据的数据映射区地址;
④擦除需写入的FLASH块,根据块大小写入新的数据;
⑤设置已写入的FLASH块的写入标志为0;
⑥扫描完FLASH块表后,重新启动FLASH写操作定时器。
⑦当系统执行重启动操作前,强制扫描FLASH块表,将需要写入的数据写入FLASH;
4)出现FLASH写入错误或检测FLASH出错时,自动标记FLASH坏块:
在执行FLASH写入操作时,如果出现错误,或检测到FLASH出错,标记此FLASH块为坏块,将坏块标志设置为1。
所述FLASH块表包含块号、块大小、起始地址、写入标志和坏块标志。
所述内存数据映射表和FLASH中的数据有一一对应关系。
所述定时将修改过的数据写入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所示)
(1)系统修改配置数据时,将修改的数据保存在FLASH数据映射区;
(2)计算修改数据在FLASH数据映射区的偏移量;
(3)根据修改数据的偏移量和大小,计算需要写入的FLASH块;
(4)设置需要写入的FLASH块的写入标志为1(表示需要写入)。
C)配置数据的写入过程:(如图4所示)
(1)系统加电启动完毕后,启动FLASH写操作定时器(具体值可根据系统的使用情况设置);
(2)FLASH写操作定时到后,扫描FLASH块表;
(3)如果FLASH块的写入标志为1,根据FLASH块号,计算出需要写入数据的数据映射区地址;
(4)擦除需写入的FLASH块,根据块大小写入新的数据;
(5)设置已写入的FLASH块的写入标志为0;
(6)扫描完FLASH块表后,重新启动FLASH写操作定时器。
(8)当系统执行重启动操作前,强制扫描FLASH块表,将需要写入的数据写入FLASH。
D)在执行FLASH写入操作时,如果出现错误,或检测到FLASH出错,标记此FLASH块为坏块,将坏块标志设置为1。
通过上述实施例完整的说明了基于NOR FLASH芯片的数据存储的实现方法。以上所述仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种基于NOR FLASH芯片的数据存储实现方法,其特征在于,通过建立FLASH块表和内存数据映射表,标记需要写入的FLASH块,定时将修改过的数据写入FLASH,实现步骤如下:
1)FLASH的初始化:建立FLASH块表和内存数据映射表;
①系统加电启动时,检测所使用的FLASH芯片类型;
②根据FLASH芯片的块大小和块数量,建立FLASH块表;
③设置FLASH块表中各项的值:设置块大小和起始地址,其中写入标志置为0-表示无需写入;坏块标志置为0-表示好块;
④根据需存储在FLASH中的数据的大小,在系统内存中建立FLASH数据映射区;
2)配置数据的修改过程:修改数据映射表中的数据,标记需要写入的FLASH块;
①系统修改配置数据时,将修改的数据保存在FLASH数据映射区;
②计算修改数据在FLASH数据映射区的偏移量;
③根据修改数据的偏移量和大小,计算需要写入的FLASH块;
④设置需要写入的FLASH块的写入标志为1-表示需要写入;
3)配置数据的写入过程:系统定时扫描需要写入的FLASH块,系统重新启动前强制写FLASH块;
①系统加电启动完毕后,启动FLASH写操作定时器;
②FLASH写操作定时到后,扫描FLASH块表;
③如果FLASH块的写入标志为1,根据FLASH块号,计算出需要写入数据的数据映射区地址;
④擦除需写入的FLASH块,根据块大小写入新的数据;
⑤设置已写入的FLASH块的写入标志为0;
⑥扫描完FLASH块表后,重新启动FLASH写操作定时器。
⑦当系统执行重启动操作前,强制扫描FLASH块表,将需要写入的数据写入FLASH;
4)出现FLASH写入错误或检测FLASH出错时,自动标记FLASH坏块:
在执行FLASH写入操作时,如果出现错误,或检测到FLASH出错,标记此FLASH块为坏块,将坏块标志设置为1。
2.根据权利要求1所述的一种基于NOR FLASH芯片的数据存储实现方法,其特征在于:所述FLASH块表包含块号、块大小、起始地址、写入标志和坏块标志。
3.根据权利要求1所述的一种基于NOR FLASH芯片的数据存储实现方法,其特征在于:所述内存数据映射表和FLASH中的数据有一一对应关系。
4.根据权利要求1所述的一种基于NOR FLASH芯片的数据存储实现方法,其特征在于:所述定时将修改过的数据写入FLASH是指系统定时对标记写入的FLASH块执行擦除、写入操作,并修改写入标志。
CNB2007101202392A 2007-08-14 2007-08-14 一种基于nor flash芯片的数据存储实现方法 Expired - Fee Related CN100476758C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2007101202392A CN100476758C (zh) 2007-08-14 2007-08-14 一种基于nor flash芯片的数据存储实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007101202392A CN100476758C (zh) 2007-08-14 2007-08-14 一种基于nor flash芯片的数据存储实现方法

Publications (2)

Publication Number Publication Date
CN101118517A true CN101118517A (zh) 2008-02-06
CN100476758C CN100476758C (zh) 2009-04-08

Family

ID=39054644

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007101202392A Expired - Fee Related CN100476758C (zh) 2007-08-14 2007-08-14 一种基于nor flash芯片的数据存储实现方法

Country Status (1)

Country Link
CN (1) CN100476758C (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541777A (zh) * 2010-12-13 2012-07-04 深圳市硅格半导体有限公司 基于DMA映射的Flash数据传输控制方法及装置
CN102609331A (zh) * 2012-01-19 2012-07-25 苏州希图视鼎微电子有限公司 Nand闪存的装载代码的文件格式
CN101710237B (zh) * 2008-12-30 2012-10-24 深圳市江波龙电子有限公司 以闪存为存储介质的设备生产流程
CN104216791A (zh) * 2013-05-30 2014-12-17 上海斐讯数据通信技术有限公司 一种校验Flash存储数据的方法
CN104598794A (zh) * 2015-01-21 2015-05-06 北京天诚盛业科技有限公司 虹膜信息快速处理的方法、装置和系统
CN106415505A (zh) * 2014-06-19 2017-02-15 株式会社电装 存储装置、闪存存储器控制装置以及程序
CN106844116A (zh) * 2016-12-23 2017-06-13 惠州市蓝微电子有限公司 一种实现ic烧录校准校验测试的方法和设备
CN107077886A (zh) * 2014-01-17 2017-08-18 加州理工学院 使用极性码的不对称纠错和闪速存储器重写

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063186B (zh) * 2014-06-30 2016-04-06 成都万维图新信息技术有限公司 一种电子设备的数据访问方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710237B (zh) * 2008-12-30 2012-10-24 深圳市江波龙电子有限公司 以闪存为存储介质的设备生产流程
CN102541777A (zh) * 2010-12-13 2012-07-04 深圳市硅格半导体有限公司 基于DMA映射的Flash数据传输控制方法及装置
CN102541777B (zh) * 2010-12-13 2015-08-19 深圳市硅格半导体有限公司 基于DMA映射的Flash数据传输控制方法及装置
CN102609331A (zh) * 2012-01-19 2012-07-25 苏州希图视鼎微电子有限公司 Nand闪存的装载代码的文件格式
CN104216791A (zh) * 2013-05-30 2014-12-17 上海斐讯数据通信技术有限公司 一种校验Flash存储数据的方法
CN104216791B (zh) * 2013-05-30 2018-05-01 上海斐讯数据通信技术有限公司 一种校验Flash存储数据的方法
CN107077886A (zh) * 2014-01-17 2017-08-18 加州理工学院 使用极性码的不对称纠错和闪速存储器重写
CN106415505A (zh) * 2014-06-19 2017-02-15 株式会社电装 存储装置、闪存存储器控制装置以及程序
CN106415505B (zh) * 2014-06-19 2019-06-18 株式会社电装 存储装置和闪存存储器控制装置
CN104598794A (zh) * 2015-01-21 2015-05-06 北京天诚盛业科技有限公司 虹膜信息快速处理的方法、装置和系统
CN104598794B (zh) * 2015-01-21 2017-12-26 北京天诚盛业科技有限公司 虹膜信息快速处理的方法、装置和系统
CN106844116A (zh) * 2016-12-23 2017-06-13 惠州市蓝微电子有限公司 一种实现ic烧录校准校验测试的方法和设备

Also Published As

Publication number Publication date
CN100476758C (zh) 2009-04-08

Similar Documents

Publication Publication Date Title
CN100476758C (zh) 一种基于nor flash芯片的数据存储实现方法
CN101763295B (zh) 一种数据备份、备份项擦除及数据恢复方法和装置
CN105740157B (zh) 数据储存装置以及快闪存储器控制方法
CN101300554B (zh) 非易失性存储器故障的恢复
CN101937319B (zh) 存储器系统及其映射方法
CN102737715B (zh) 用于nor闪存的数据掉电保护方法
US7797479B2 (en) Technique to write to a non-volatile memory
CN100356347C (zh) 闪存的安全写入方法
US20150186261A1 (en) Data storage device and flash memory control method
CN103577574A (zh) 一种基于nand flash的高可靠线性文件系统
CN103577121A (zh) 一种基于nand flash的高可靠线性文件存取方法
CN104360958A (zh) 基于块保留区替换的坏块管理系统及管理方法
CN1936853B (zh) 嵌入式设备的数据掉电保护和修复方法
TWI331337B (zh)
CN100501868C (zh) 基于NAND Flash存储器文件系统的实现方法
CN102306125A (zh) 一种flash存储器的数据擦写方法
CN101656106A (zh) 一种向eeprom写入数据的方法及装置
CN102890620A (zh) 非易失性临时数据处理
CN101699476B (zh) 智能卡的数据处理方法及装置
CN103617101A (zh) 一种掉电保护方法及装置
CN101901189A (zh) 更新用户数据的方法以及恢复用户数据的方法
TW201411343A (zh) 資料儲存裝置與快閃記憶體控制方法
JP2006350430A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
CN101419571A (zh) 基于Hash算法的在NOR FLASH中存储配置参数的方法
CN106598493A (zh) 一种固态硬盘地址映射表管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090408

Termination date: 20140814

EXPY Termination of patent right or utility model