Nand‑flash存储阵列Mapping管理方法与流程

文档序号:11620499阅读:735来源:国知局
Nand‑flash存储阵列Mapping管理方法与流程

本发明涉及高速大容量存储领域,具体的说是一种nand-flash存储阵列mapping管理方法。



背景技术:

nand-flash内存是flash内存的一种固态大容量内存,其内部采用非线性宏单元模式。nand-flash存储器具有容量较大,改写速度快等优点,适用于大量数据的存储,因而在业界得到了越来越广泛的应用,如嵌入式产品中包括数码相机、mp3随身听记忆卡、体积小巧的u盘等。

在雷达及航天等领域,对存储设备的容量及读写速率要求非常苛刻,单一的nandflash无法满足要求,因此nandflash阵列显得尤为必要。但是随着nandflash存储阵列的增加,mapping表也越来越大,如果每次更新mapping表都重新写入的话会非常耗费时间。



技术实现要素:

本发明针对目前技术发展的需求和不足之处,提供一种nand-flash存储阵列mapping管理方法。

本发明所述nand-flash存储阵列mapping管理方法,解决上述技术问题采用的技术方案如下:所述nand-flash存储阵列mapping管理方法,主要通过norflash来存储nandflash阵列正常使用的block块地址,并针对nandflash阵列不同nandflash出现操作错误对norflash进行分别擦除更新,根据出错的nandflash行、列位置去擦除并更新norflash的特定位置,其主要包括:初始扫描坏块、上电加载以及更新坏块三个步骤。

优选的,所述初始扫描坏块这一步骤,主要是指,通过并行流水的方式读取nandflash阵列中各个nandflash中的初始坏块信息,形成初始mapping表。

优选的,在初始扫描坏块这一步骤中,依次读取nandflash阵列中各个nandflash中记录出厂坏块信息的地址数据,判断是否为出厂坏块,形成初始的mapping表,存入norflash不同位置。

优选的,所述上电加载这一步骤,主要是指,当系统上电时,依次将norflash中的mapping表信息,加载到内部ram中以供系统使用。

优选的,所述更新坏块这一步骤,主要是指,根据nandflash阵列中操作出错的nandflash行、列号,对norflash中记录特定nandflashmapping表的位置进行擦除更新。

优选的,在更新坏块这一步骤中,主要包括写更新及擦更新,当某列nandflash写操作或擦操作失败时,根据其在norflash的存储位置,对其进行单一的擦除更新,将备用块的block地址更新到新的mapping表中。

本发明所述nand-flash存储阵列mapping管理方法,与现有技术相比具有的有益效果是:本发明针对nandflash阵列不同nandflash出现操作错误对norflash进行分别擦除更新,能够减少擦除量,简化存储阵列中的mapping更新速度,提高了更新速度;克服了由于nandflash存储阵列的mapping表越来越大,每次更新mapping表都重新写入非常耗时的问题。

附图说明

附图1为nandflash存储阵列mapping管理方法的流程图;

附图2为norflashmapping表的存储示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本发明所述nand-flash存储阵列mapping管理方法进一步详细说明。

本发明提供了nand-flash存储阵列mapping管理方法,主要通过非易失的norflash来存储nandflash阵列正常使用的block块地址,并针对nandflash阵列不同nandflash出现操作错误对norflash进行分别擦除更新,并从而保证每次上电之后,nandflash可以正常工作,避免对坏块的访问。

实施例:

本实施例所述nand-flash存储阵列mapping管理方法,根据出错的nandflash行、列位置去擦除并更新norflash的特定位置,其主要包括如下步骤:初始扫描坏块、上电加载以及更新坏块三个步骤。

所述初始扫描坏块这一步骤,主要是指,通过并行流水的方式读取nandflash阵列中各个nandflash中的初始坏块信息,形成初始mapping表。

在初始扫描坏块这一步骤中,依次读取nandflash阵列中各个nandflash中记录出厂坏块信息的地址数据,判断是否为出厂坏块,形成初始的mapping表,存入norflash不同位置。

所述上电加载这一步骤,主要是指,当系统上电时,依次将norflash中的mapping表信息,加载到内部ram中以供系统使用。

所述更新坏块这一步骤,主要是指,根据nandflash阵列中操作出错的nandflash行、列号,对norflash中记录特定nandflashmapping表的位置进行擦除更新。

在更新坏块这一步骤中,主要包括写更新及擦更新,当某列nandflash写操作或擦操作失败时,根据其在norflash的存储位置,对其进行单一的擦除更新,将备用块的block地址更新到新的mapping表中。

当nandflash阵列控制器对nandflash进行写或擦操作出现错误时,通过将nandflash所处的行、列信息加以报告,实现对norflash特定位置的nandflashmapping表更新,从而减少norflash擦除时间,能够提高更新速度。

附图1为nandflash存储阵列mapping管理方法的流程图,如附图1所示,该nandflash存储阵列mapping管理方法的具体实现过程如下:

第一,首先上电系统读取norflash中记录是否已进行初始扫描的标志,如aa;

第二,若已经扫过初始坏块,则进行上电加载操作,依次读取norflash中的mapping表信息到系统内部ram;

第三,若未检测过初始坏块,则依次读取nandflash阵列中各个nandflash固有的记录初始坏块信息位置,形成初始mapping表存入norflash中;

第四,当nandflash阵列进行写操作或擦除操作出现问题时,根据nandflash阵列中的行、列号对norflash中的记录特定nandflashmapping表的位置进行擦除更新操作。

附图2为norflashmapping表的存储示意图,如附图2所示,其中各个信息都位于norflash不同的subsector中,比如:subsector0用于是否扫描坏块标志,subsector1用于nandflash1mapping表,……,subsectorn-1用于nandflashn-1mapping表,subsectorn用于nandflashnmapping表;可以根据nandflash行、列号进行分别擦除更新。

上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1