NAND闪存及其数据更新管理方法技术

技术编号:5218281 阅读:269 留言:0更新日期:2012-04-11 18:40
一种NAND闪存数据更新管理方法,该方法包括如下步骤:从NAND闪存的各存储区中读取各存储区的包含较小标头序号的标头;根据所读取的标头中的映像文件状态旗标,识别各标头所在的存储区为主要存储区还是次要存储区;判断是否更新NAND闪存中的映像文件状态旗标;对NAND闪存中各存储区的映像文件状态旗标进行数据更新;判断NAND闪存中是否存在主要存储区;当NAND闪存中存在主要存储区时,根据主要存储区中的映像文件启动系统。利用本发明专利技术可提高NAND闪存性能。

【技术实现步骤摘要】

本专利技术涉及一种NAND闪存及其数据更新管理方法。
技术介绍
目前,以闪存作为存储介质的嵌入式系统被广泛应用。闪存是一种非易失性存储 器,市场上主流的闪存,按工艺可分为或非闪存(NOR flash)和与非闪存(NAND flash)。两 种类型各有优势,NAND闪存的擦写速度快,容量较大,价格较低,所以越来越多地用于移动 终端中。NAND闪存中每个区块只能允许一次性写入数据,当需要对NAND闪存中区块的数 据进行更新时,需要清空原有的数据,然后再写入新的数据。当将NAND闪存中区块的数据 清空而新的数据未完全写入时,若NAND闪存发生意外终端,则NAND闪存中的嵌入式系统无 法正常启动。
技术实现思路
鉴于以上内容,有必要提供一种NAND闪存,该NAND闪存的每个存储区包括两个格 式相同的标头,所述两个标头分别存储在两个不同的区块中,当需要更新一区块中的数据 时,将更新后的数据存储至另一区块中,则若在更新操作过程中意外中断时,NAND闪存可利 用未更新区块中的数据启动嵌入系统,提高了 NAND闪存的性能。此外,还有必要提供一种NAND闪存数据更新管理方法,该NAND闪存的每个存储 区包括两个格式相同的标头,所述两个标头分别存储在两个不同的区块中,当需要更新一 区块中的数据时,将更新后的数据存储至另一区块中,则若在更新操作过程中意外中断时, NAND闪存可利用未更新区块中的数据启动嵌入系统,提高了 NAND闪存的性能。一种NAND闪存,该NAND闪存包括两个存储区,每个存储区包括两个格式相同的标 头,所述两个标头分别存储在同一存储区两个不同的区块中,每个区块还存储有映像文件, 所述NAND闪存包括读取模块,用于从NAND闪存的每一个存储区中读取包含较小的标头 序号的标头;识别模块,用于根据所读取的标头中的映像文件状态旗标,识别各标头所在的 存储区为主要存储区还是次要存储区;判断模块,用于判断NAND闪存中是否存在主要存储 区,当NAND闪存中存在主要存储区时,判断是否对NAND闪存中主要存储区的数据进行更 新;更新模块,用于当需要对NAND闪存中主要存储区的数据进行更新时,对NAND闪存中主 要存储区的数据进行更新;启动模块,用于当NAND闪存中存在主要存储区时,根据主要存 储区中的映像文件启动NAND闪存中嵌入式系统;所述判断模块还用于当NAND闪存中不存 在主要存储区时,判断NAND闪存中是否存在次要存储区;所述启动模块还用于当NAND闪存 中存在次要存储区时,根据次要存储区中的映像文件启动NAND闪存中嵌入式系统;提示模 块,用于当NAND闪存中既不存在主要存储区也不存在次要存储区时,提示用户NAND闪存中 嵌入式系统启动失败。一种NAND闪存数据更新管理方法,该NAND闪存包括两个存储区,每个存储区包括两个格式相同的标头,所述两个标头分别存储在同一存储区两个不同的区块中,每个区块 还存储有映像文件,该方法包括如下步骤(a)从NAND闪存的每一个存储区中读取包含较 小的标头序号的标头;(b)根据所读取的标头中的映像文件状态旗标,识别各标头所在的 存储区为主要存储区还是次要存储区;(c)判断NAND闪存中是否存在主要存储区;(d)当 NAND闪存中存在主要存储区时,判断是否对NAND闪存中主要存储区的数据进行更新,当需 要对NAND闪存中主要存储区的数据进行更新时,对NAND闪存中主要存储区的数据进行更 新,并根据主要存储区中的映像文件启动NAND闪存中嵌入式系统;(e)当NAND闪存中不存 在主要存储区时,判断NAND闪存中是否存在次要存储区,当NAND闪存中存在次要存储区 时,根据次要存储区中的映像文件启动NAND闪存中嵌入式系统;(f)当NAND闪存中既不存 在主要存储区也不存在次要存储区时,提示用户NAND闪存中嵌入式系统启动失败。相较于 现有技术,本专利技术提供一种NAND闪存及其数据更新管理方法,该NAND闪存的每个存储区包 括两个格式相同的标头,所述两个标头分别存储在两个不同的区块中,当需要更新一区块 中的数据时,将更新后的数据存储至另一区块中,则若在更新操作过程中意外中断时,NAND 闪存可利用未更新区块中的数据启动嵌入系统,提高了 NAND闪存的性能。附图说明图1是本专利技术NAND闪存中数据更新管理方法较佳实施例的应用环境图。图2是图1中标头的示意图。图3是图1中NAND闪存的功能模块图。图4是本专利技术NAND闪存中数据更新管理方法较佳实施例的流程图。图5是图4中步骤SlO的具体流程图。图6是图4中步骤S14的具体流程图。具体实施例方式如图1所示,是本专利技术NAND闪存中数据更新管理方法较佳实施例的应用环境图。 该方法应用于NAND闪存1中。在本实施例中,所述NAND闪存1包括存储区A和存储区B, 存储区A和存储区B可分别存储数据。所述存储区A包括两个格式相同的标头Al和标头A2,所述标头Al放置在存储区 A的区块Al中,所述标头A2放置在存储区A的区块A2中。其中,所述区块Al还存储有映 像文件Al,区块A2还存储有映像文件A2。所述存储区B包括两个格式相同的标头Bl和标头B2,所述标头Bl放置在存储区 B的区块Bl中,所述标头B2放置在存储区B的区块B2中。其中,所述区块Bl还存储有映 像文件Bi,区块B2还存储有映像文件B2。如图2所示,是图1中标头的示意图。所述标头包括检查和、映像文件状态旗标和 标头序号。所述检查和用于识别该检查和所在标头及该标头所在区块中的映像文件的正确 性,例如若标头Al包括检查和Al,则该检查和Al用于识别标头Al及映像文件Al的正确 性。所述映像文件状态旗标用于指示该映像文件状态旗标所在区块中存储的映像文件为主 要映像文件,或者为次要映像文件。所述标头序号可用阿拉伯数字来表示,例如1、2、3。同 一存储区中包含较小的标头序号的区块所存储的数据为最新的数据,例如,若标头Al包含的标头序号为1,标头A2包含的标头序号为2,则在存储区A中,标头Al为包含较小的标头 序号的标头,标头Al所存储的数据为最新的数据。如图3所示,是图1中所示NAND闪存1的功能模块图。所述NAND闪存包括读取 模块100、识别模块101、判断模块102、更新模块103、启动模块104及提示模块105。本发 明所称的模块是完成一特定功能的计算机程序段,比程序更适合于描述软件在计算机中的 执行过程,因此在本专利技术以下对软件描述中都以模块描述。所述读取模块100用于从NAND闪存1的每一个存储区中读取包含较小的标头序 号的标头。例如在存储区A中,若标头Al包含的标头序号为1,标头A2包含的标头序号 为2,则读取模块100从存储区A中读取的标头为标头Al。所述识别模块101用于根据所读取的标头中的映像文件状态旗标,识别各标头所 在的存储区为主要存储区还是次要存储区。当所读取的标头中的映像文件状态旗标指示的 映像文件为主要映像文件,识别模块101识别所读取的标头所在的存储区为主要存储区; 当所读取的标头中的映像文件状态旗标指示的映像文件为次要映像文件,识别模块101识 别所读取的标头所在的存储区为次要存储区。所述判断模块102用于判断NAND闪存1中是否存在主要存储区。所述判断模块102本文档来自技高网...

【技术保护点】
一种NAND闪存数据更新管理方法,该NAND闪存包括两个存储区,其特征在于,每个存储区包括两个格式相同的标头,所述两个标头分别存储在同一存储区两个不同的区块中,每个区块还存储有映像文件,该方法包括如下步骤:(a)从NAND闪存的每一个存储区中读取包含较小的标头序号的标头;(b)根据所读取的标头中的映像文件状态旗标,识别各标头所在的存储区为主要存储区还是次要存储区;(c)判断NAND闪存中是否存在主要存储区;(d)当NAND闪存中存在主要存储区时,判断是否对NAND闪存中主要存储区的数据进行更新,当需要对NAND闪存中主要存储区的数据进行更新时,对NAND闪存中主要存储区的数据进行更新,并根据主要存储区中的映像文件启动NAND闪存中嵌入式系统;(e)当NAND闪存中不存在主要存储区时,判断NAND闪存中是否存在次要存储区,当NAND闪存中存在次要存储区时,根据次要存储区中的映像文件启动NAND闪存中嵌入式系统;(f)当NAND闪存中既不存在主要存储区也不存在次要存储区时,提示用户NAND闪存中嵌入式系统启动失败。

【技术特征摘要】
1.一种NAND闪存数据更新管理方法,该NAND闪存包括两个存储区,其特征在于,每 个存储区包括两个格式相同的标头,所述两个标头分别存储在同一存储区两个不同的区块 中,每个区块还存储有映像文件,该方法包括如下步骤(a)从NAND闪存的每一个存储区中读取包含较小的标头序号的标头;(b)根据所读取的标头中的映像文件状态旗标,识别各标头所在的存储区为主要存储 区还是次要存储区;(c)判断NAND闪存中是否存在主要存储区;(d)当NAND闪存中存在主要存储区时,判断是否对NAND闪存中主要存储区的数据进行 更新,当需要对NAND闪存中主要存储区的数据进行更新时,对NAND闪存中主要存储区的数 据进行更新,并根据主要存储区中的映像文件启动NAND闪存中嵌入式系统;(e)当NAND闪存中不存在主要存储区时,判断NAND闪存中是否存在次要存储区,当 NAND闪存中存在次要存储区时,根据次要存储区中的映像文件启动NAND闪存中嵌入式系 统;(f)当NAND闪存中既不存在主要存储区也不存在次要存储区时,提示用户NAND闪存中 嵌入式系统启动失败。2.如权利要求1所述的NAND闪存数据更新管理方法,其特征在于,所述步骤(a)进一 步包括分别读取同一存储区的两个标头中的检查和; 判断所读取的两个检查和是否都正确;当所读取的两个检查和都正确时,读取包含较小标头序号的标头; 当所读取的两个检查和不全都正确时,判断所读取的两个检查和是否有一个正确; 当所读取的两个检查和有一个正确时,读取包含正确检查和的标头; 当所读取的两个检查和全都不正确时,回报该存储区为无效的存储区。3.如权利要求1所述的NAND闪存数据更新管理方法,其特征在于,所述步骤(b)具体 包括当所读取的标头中的映像文件状态旗标指示映像文件为主要映像文件,识别所读取的 标头所在的区块为主要存储区;当所读取的标头中的映像文件状态旗标指示映像文件为次要映像文件,识别所读取的 标头所在的区块为次要存储区。4.如权利要求1所述的NAND闪存数据更新管理方法,其特征在于,所述步骤对NAND闪 存中主要存储区的数据进行更新具体包括读取主要存储区的两个区块中的检查和; 判断所读取的两个检查和是否都正确;当所读取的两个检查和都正确时,清空含有较大标头序号的区块中的数据,将更新的 数据和含有较小标头序号的区块中未变更的数据一起写入所清空的区块;当所读取的两个检查和不全都正确时,判断读取的两个检查和是否有一个正确,当所 读取的两个检查和有一个正确时,清空含有错误检查和的区块的数据,将更新的数据和含 有正确检查和的区块中未变更的数据一起写入所清空的区块;当所读取的两个检查和全都不正确时,清空第二区块中的数据,所述第二区块是指在存储区中位置排序第二的区块,将更新的数据和第一区块中未变更的数据一起写入所清空 的区块,所述第一区块是指在存储区中位置排序第一的区块。5.如权利要求4所述的NAND闪...

【专利技术属性】
技术研发人员:吴凯平
申请(专利权)人:鸿富锦精密工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1