MLCNAND闪存关键数据的存储方法、固态硬盘和计算机与流程

文档序号:14394484阅读:611来源:国知局

本发明涉及多层式储存格nand闪存,特别是涉及多层式储存格nand闪存关键数据的存储方法、固态硬盘和计算机。



背景技术:

与slc(单级单元)nand闪存器件相比,mlc(多级单元)nand闪存具有更低成本和更高存储密度的,因此在消耗电子市场获得了广泛使用。但随着mlc闪存几何尺寸缩小和单位存储单元中存储数据位数的增加,其可靠性问题日渐突出。

为了确保存储在nand闪存存储系统中的元数据(又称关键数据)的可靠性,数据冗余备份方法是一种有效的手段。一般情况下,冗余备份方法通过备份包含元数据的关键页来增强系统元数据的可靠性页。这种简单的冗余方法不会给基于slcnand闪存或硬盘的存储系统带来任何问题,因为slcnand闪存或硬盘物理页的错误分布相对均匀。但是对于mlcnand闪存来说,其msb物理页和和lsb页的位错误分布是非对称的,因此,若不考虑存储介质错误的非对称性分布对冗余备份方法带来的影响,冗余备份方法的实际效果将大打折扣。

在基于nandflash的存储系统中,系统关键数据指的是维持系统正常运行的重要数据,例如文件系统分区表及ftl(flashtranslationlayer,flash转译层)地址映射表等,一旦这些系统关键数据发生了无法逆转的错误,则整个系统会就会面临崩溃的风险,因此在基于nandflash的存储系统中,系统关键数据的完整性和正确性必须得到保证。

目前提高系统关键数据可靠性的方法主要是通过对系统关键数据进行备份实现。在存储系统进行读操作,检测到关键数据发生错误时,通过再次读取备份数据尝试恢复错误数据。但是传统冗余备份的方法并未利用mlcnandflashber分布不均特性,而是采用随机备份的方式,导致冗余备份后页错误较大。

传统技术存在以下缺点:

由于msb物理页和mlcnand闪存中的lsb页的位错误是非对称分布的,所以不考虑元数据及其副本的分配的简单冗余策略将降低冗余方法的有效性。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种多层式储存格nand闪存关键数据的存储方法,进一步提高冗余方法的容错能力,提高存储系统的可靠性

一种多层式储存格nand闪存关键数据的存储方法,包括:

文件系统请求向第一逻辑地址写入第一内容;

当所述第一内容是关键数据时,判断第一逻辑地址是否在复制映射表中,其中,所述复制映射表是逻辑地址中关键数据与其备份形成的映射表;

若所述第一逻辑地址在所述复制映射表中,在所述复制映射表中获取与所述第一逻辑地址相应的第二逻辑地址,并将所述第二逻辑地址添加到请求队列中;

否则,在所述复制映射表中创建与所述第一逻辑地址相应的第二逻辑地址,并将所述第二逻辑地址添加到请求队列中;

flash转译层为所述第二逻辑地址分配第一物理地址;

判断所述第一物理地址是不是msb物理页;

若所述第一物理地址是msb物理页,将所述第一内容写入所述第二逻辑地址。

上述多层式储存格nand闪存关键数据的存储方法,进一步提高冗余方法的容错能力,提高存储系统的可靠性,即使nand闪存接近其最大寿命,非对称冗余也可以有效地工作。

在另外的一个实施例中,当所述第一物理地址不是msb物理页时,将所述第二逻辑地址与所述第一物理地址形成的映射置为无效;

发送一个信号给请求队列管理器,让请求队列管理器将此次请求延迟;

当队列中没有非关键数据时,找到最近的msb物理页,将目前写入的物理页与最近的msb物理页之间的物理页标记无效。

在另外的一个实施例中,所述多层式储存格nand闪存应用于固态硬盘中。

在另外的一个实施例中,所述固态硬盘应用在计算机中。

一种固态硬盘,其特征在于,应用上述的多层式储存格nand闪存关键数据的存储方法。

一种计算机,其特征在于,包含上述的固态硬盘。

附图说明

图1为本申请实施例提供的一种多层式储存格nand闪存关键数据的存储方法的流程图。

图2为本申请实施例提供的一种多层式储存格nand闪存关键数据的存储方法的系统结构图。

图3为本申请实施例提供的一种多层式储存格nand闪存关键数据的应用场景的示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参阅图1,一种多层式储存格nand闪存关键数据的存储方法,包括:

s110、文件系统请求向第一逻辑地址写入第一内容。

s120、当所述第一内容是关键数据时,判断第一逻辑地址是否在复制映射表中,其中,所述复制映射表是逻辑地址中关键数据与其备份形成的映射表。

若所述第一逻辑地址在所述复制映射表中,执行s130,否则执行s140。

s130、在所述复制映射表中获取与所述第一逻辑地址相应的第二逻辑地址,并将所述第二逻辑地址添加到请求队列中,执行s150。

s140、否则,在所述复制映射表中创建与所述第一逻辑地址相应的第二逻辑地址,并将所述第二逻辑地址添加到请求队列中。

s150、flash转译层为所述第二逻辑地址分配第一物理地址。

s160、判断所述第一物理地址是不是msb物理页。若所述第一物理地址是msb物理页,执行s170,否则执行s200。

s170、将所述第二逻辑地址与所述第一物理地址形成的映射置为无效。

s180、发送一个信号给请求队列管理器,让请求队列管理器将此次请求延迟。

s190、当队列中没有非关键数据时,找到最近的msb物理页,将目前写入的物理页与最近的msb物理页之间的物理页标记无效,结束执行。

s200、将所述第一内容写入所述第二逻辑地址。

上述多层式储存格nand闪存关键数据的存储方法,进一步提高冗余方法的容错能力,提高存储系统的可靠性,即使nand闪存接近其最大寿命,非对称冗余也可以有效地工作。

下面介绍一个具体的应用场景:

参阅图3,假设文件系统最多有1000个逻辑物理地址,则在复制映射表与所述逻辑物理地址相应的逻辑物理地址(为了方便描述,下称备份逻辑物理地址)的开始逻辑物理地址是1000。对于写请求(逻辑物理地址#2,a),其中a是要写入nand闪存的内容,逻辑物理地址#2属于关键页,本发明将查找复制映射并找到相应的备份逻辑物理地址#1001。然后本发明将备份逻辑物理地址添加到请求队列中。为了将元数据及其副本分配到msb物理页中,本发明将进一步检查芯片制造商提供的共享页映射表,并与ftl进行合作,并将非关键请求插入lsb页。最后,关键请求(逻辑物理地址#2,a)和相应的备份逻辑物理地址(逻辑物理地址#1001,a#)都被编程到msb物理页中。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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