一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

SSD硬盘的块信息存储方法和系统、SSD硬盘与流程

2022-05-06 10:27:53 来源:中国专利 TAG:

ssd硬盘的块信息存储方法和系统、ssd硬盘
技术领域
1.本发明涉及ssd硬盘技术领域,尤其是涉及一种ssd硬盘的块信息存储方法和系统、ssd硬盘。


背景技术:

2.ssd硬盘的掉电分为两种:一种是正常掉电,另一种是异常掉电。对于正常掉电来说,在掉电时主机会通过命令通知ssd硬盘,ssd硬盘收到命令后,除了将在缓冲器buffer中缓存的用户数据写入nand block中,还会把ssd硬盘的相关管理信息刷入nand block中。待重新上电后,ssd硬盘只需将掉电之前保存的信息加载回来,ssd硬盘就能恢复到掉电前的状态,继续工作。然而对于异常掉电,即没有接到主机的通知就被掉电,或是接到通知但是没来的及保存数据信息,这种掉电方式可能会导致数据丢失。这种情况下的掉电恢复就只能尽可能的恢复用户数据及ssd相关管理信息,使ssd硬盘还能正常工作。如何能够快速恢复ssd相关管理信息,并能将损失最小化,也是ssd硬盘的一项核心技术。


技术实现要素:

3.为了解决上述技术问题或者至少部分地解决上述技术问题,本发明提供了一种ssd硬盘的块信息存储方法和系统、ssd硬盘。
4.第一方面,本发明实施例提供一种ssd硬盘的块信息存储方法,所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第一区域和第二区域;所述方法包括:在所述ssd硬盘的使用过程中将产生的管理信息进行存储,所述第一面结构和所述第二面结构中的对应块在使用过程中所产生的管理信息相同,所述管理信息的存储过程包括:在每一个块的每一个逻辑页的第一区域中存储该逻辑页对应的逻辑地址和时间戳;在每一个块的所述预设物理页的多个逻辑页的第二区域中存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
5.第二方面,本发明实施例提供一种ssd硬盘的块信息存储系统,所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第
一区域和第二区域;所述系统用于:在所述ssd硬盘的使用过程中将产生的管理信息进行存储,所述第一面结构和所述第二面结构中的对应块在使用过程中所产生的管理信息相同,所述系统包括:第一存储模块,用于在每一个块的每一个逻辑页的第一区域中存储该逻辑页对应的逻辑地址和时间戳;第二存储模块,用于在每一个块的所述预设物理页的多个逻辑页的第二区域中存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
6.第三方面,本发明实施例提供一种ssd硬盘,所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第一区域和第二区域;其中:每一个块的每一个逻辑页的第一区域用于存储该逻辑页对应的逻辑地址和时间戳;每一个块的所述预设物理页的多个逻辑页的第二区域用于存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
7.本发明实施例提供的ssd硬盘的块信息存储方法和系统、存储介质,在一个块的预设物理页中的每一个逻辑页的第一区域中存储逻辑地址和时间戳,在一个块的预设物理页中的各个逻辑页的第二区域中存储所在块的管理信息,即通过分区存储不同的信息,不会存在过多的重复存储,能够以较小的尺寸存储较多的信息,这样相对于现有技术中较多重复的存储方式,可以减少元数据的数量,从而降低ssd硬盘的写放大。本方案中仅存在的重复是第一面结构和第二面结构的对应块的预设物理页中的各个逻辑页的第二区域中存储的管理信息相同,第一面结构中的管理信息和第二面结构中的管理信息互为备份,当发生异常掉电后再进行上电异常重建时,在根据其中一个面结构中的管理信息无法恢复数据的情况下,可以采用另外一个面结构中的相应管理信息进行数据恢复,提高了异常重建的成功率。
附图说明
8.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
9.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
10.图1为本发明实施例中ssd硬盘的块信息存储方法的流程示意图;图2为本发明实施例中第一面结构和第二面结构中一个块的预设物理页中的各个
逻辑页的示意图;图3为本发明实施例中一个raid group的四个die的示意图;图4为本发明实施例中对一个逻辑页进行划分区域的示意图。
具体实施方式
11.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
12.第一方面,本发明实施例提供一种ssd硬盘的块信息存储方法。
13.所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第一区域和第二区域。
14.其中,磁盘组的含义是磁盘阵列组,英文为raid group。在一个raid group包含很多个逻辑单元,逻辑单元的英文为die,将这些逻辑单元进行分组,得到多个逻辑单元组。例如,在一个raid group中包含32个die,将每相邻的4个die划分为一组,一共得到8个逻辑单元组,而每一个逻辑单元组中包含4个die。在一个raid group中通常包含1个校验die,其它的die均为数据die。
15.在一个die中包含两个面结构,面结构的英文为plane,第一面结构为plane0,第二面结构为plane1。在每一个面结构中包含多个块,块的英文为block,plane0和plane1中包含的块的数量相同,且一一对应。例如,plane0中包含block0~blockn,plane1中包含block0~blockn,plane0中的block0和plane0中的block0是对应的。
16.在每一个块中包含多个物理页,这里仅在其中一个物理页中存储块的管理信息,该物理页为预设物理页,具体选择page0作为预设物理页。在该预设物理页中设置多个逻辑页,例如,4个逻辑页、8个逻辑页,每一个逻辑页中可以划分为第一区域和第二区域,第一区域为area1,第二区域为area2。
17.上述块信息存储方法包括:在所述ssd硬盘的使用过程中将产生的管理信息进行存储,所述第一面结构和所述第二面结构中的对应块在使用过程中所产生的管理信息相同。
18.可理解的是,在ssd硬盘的使用过程中会产生管理信息,需要将这些管理信息进行存储,以便在发生掉电异常时,能够根据这些管理信息恢复数据。
19.其中,管理信息一般包括映射表、块信息,块信息主要包括坏块表、age信息(即块的已擦次数)、block状态(包括free block、close block、open block)、raid信息等,其中free block为空块,close block为写满数据的块,open block为正在使用的块。当然还可能有其它的信息。本发明实施例中针对的管理信息主要是块信息,不包括映射表。
20.可理解的是,在ssd硬盘的使用过程中,第一面结构和第二面结构中的对应块是一块使用的,因此两个对应的块的管理信息是相同的。例如,plane0中的block0和plane0中的
block0这两个对应块的管理信息是相同的。
21.参见图1,所述管理信息的存储过程包括如下步骤s1~s2:s1、在每一个块的每一个逻辑页的第一区域中存储该逻辑页对应的逻辑地址和时间戳;可理解的是,在第一区域area1中存储有逻辑地址以及时间戳,逻辑地址可以对各个逻辑页进行区分,时间戳可以对所在的逻辑页写入管理信息的时间进行记录,以便在异常掉电后恢复到该时间戳对应的状态。
22.s2、在每一个块的所述预设物理页的多个逻辑页的第二区域中存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
23.例如,在每一个块的page0中包括4个逻辑页,在每一个逻辑页的第二区域area2中存储该逻辑页所在块的一个管理信息,这样四个逻辑页的第二区域就会存储所在块的四个管理信息,因此在第一面结构中的一个块的预设物理页中的各个逻辑页中的第二区域中存储的管理信息为该块的四个管理信息。由于第一面结构和第二面结构中对应块的管理信息是相同的,第一面结构中的一个块的四个管理信息实际上也是第二面结构中对应块的四个管理信息。
24.举例来说,每一个所述预设物理页中包含的逻辑页的数量为4,每一个块的所述管理信息包括:该块的类型、该块所在的逻辑单元的属性、该块的已擦次数以及该块的错误信息,所述属性用于表征该块所在的逻辑单元是数据逻辑单元还是校验逻辑单元。
25.其中,块的类型包括系统块、数据块。通过块的类型可以得知该块是系统块还是数据块。块所在的逻辑单元的属性包括数据属性、校验数据,数据属性表明该块所在的逻辑单元为数据逻辑单元,校验属性表征该块所在的逻辑单元为校验逻辑单元。块的已擦次数即age信息,通过该信息可以得知块的剩余使用寿命,因为已擦次数越多,剩余使用寿命越短,每一个块的已擦次数是有限的。错误信息为该块是否发生过失败、失败的类型,通常错误的类型包括读失败、擦失败、写失败等。当然,还可以包括其它的关系信息,这里仅以上述四种管理信息为例进行说明。
26.在具体实施时,所述第一面结构中的每一个块的预设物理页中可以包括第一逻辑页,所述第二面结构中的对应块的预设物理页中可以包含第五逻辑页,所述第一逻辑页和所述第五逻辑页相对应,所述第一逻辑页和所述第五逻辑页中的第二区域中均可以存储有所在块的类型。
27.在具体实施时,所述第一面结构中的每一个块的预设物理页中可以包括第二逻辑页,所述第二面结构中的对应块的预设物理页中可以包含第六逻辑页,所述第二逻辑页和所述第六逻辑页相对应,所述第二逻辑页和所述第六逻辑页中的第二区域中均可以存储有所在的逻辑单元的属性。
28.在具体实施时,所述第一面结构中的每一个块的预设物理页中可以包括第三逻辑页,所述第二面结构中的对应块的预设物理页中可以包含第七逻辑页,所述第三逻辑页和所述第七逻辑页相对应,所述第三逻辑页和所述第七逻辑页中的第二区域中均可以存储有所在块的已擦次数。
29.在具体实施时,所述第一面结构中的每一个块的预设物理页中可以包括第四逻辑
blockn。
38.针对die0的plane0中的block0中的预设物理页中的一个逻辑页a的第三区域中存储的是:die1的plane0中的block0的一个管理信息a1、die2的plane0中的block0的一个管理信息a2、die3的plane0中的block0的一个管理信息a3。
39.类似的,针对die1的plane0中的block0中的预设物理页中的一个逻辑页a的第三区域中存储的是:die0的plane0中的block0的一个管理信息a0、die2的plane0中的block0的一个管理信息a2、die3的plane0中的block0的一个管理信息a3。
40.类似的,针对die2的plane0中的block0中的预设物理页中的一个逻辑页a的第三区域中存储的是:die0的plane0中的block0的一个管理信息a0、die1的plane0中的block0的一个管理信息a1、die3的plane0中的block0的一个管理信息a3。
41.类似的,针对die3的plane0中的block0中的预设物理页中的一个逻辑页a的第三区域中存储的是:die0的plane0中的block0的一个管理信息a0、die1的plane0中的block0的一个管理信息a1、die2的plane0中的block0的一个管理信息a2。
42.其中,管理信息a0、a1、a2和a3的类型相同,例如,均是所在块的已擦次数。die0的plane0中的block0、die1的plane0中的block0、die2的plane0中的block0、die3的plane0中的block0为四个相对应的块。
43.与上述类似的,针对die0的plane0中的block0中的预设物理页中的一个逻辑页b的第三区域中存储的是:die1的plane0中的block0的一个管理信息b1、die2的plane0中的block0的一个管理信息b2、die3的plane0中的block0的一个管理信息b3。
44.参见图3,图3中用线连接的4个block0为各个die中的对应块。
45.可见,在一个die中的一个块的预设物理页中的一个逻辑页的第三区域中存储的是该die所在的逻辑单元组中的其它各个die中的对应块的同种管理信息,这样通过一个die中的一个块的预设物理页中的多个逻辑页的第三区域,可以存储同一个组内的其它各个die的对应块的多种管理信息。可见,在一个die中的每一个块的预设物理页的每一个逻辑页的第三区域中存储的是其它die内对应块的管理信息,例如,其它die内对应块的块类型、age信息、错误信息等管理信息。
46.可见,在第二区域中存储的是所在块的管理信息,而在第三区域中存储的是同组中的其它die中对应块的管理信息。可见,一个块的管理信息不仅会存储在该块的预设物理页的逻辑页的第二区域中,还会存储在其它die中对应块的预设物理页的逻辑页的第三区域中。当一个die根据自己所存储的管理信息无法数据恢复时,可以读取同组内的其它die中的管理信息,利用其它die中的管理信息进行数据的恢复,可以快速重建所有die中各个块的数据,进一步增加了异常重建的成功率和所恢复数据的准确性。
47.例如,在上电时,其中某个block坏掉或是某个die 出现故障导致数据读出错,可以通过其他block中的管理信息将其恢复。同时,在重建的过程中对比校验各个block 上的管理信息,从而可以保证同一个block所恢复数据的准确性。
48.可理解的是,一个第二区域存储的是die内的所在块的一个管理信息,一个第三区域存储的是组内的其它die的每一个对应块的一个管理信息,例如,一个组内共有8个die,则在一个第三区域中会存储7个同种管理信息。管理信息仅在一个块的预设物理页中进行存储,不占用该块的其它物理页的空间,所以对逻辑页的区域划分也仅适用于该预设物理
页,对于该块内的其它物理页不适用。
49.可理解的是,当发生异常掉电(例如,电容失效)时,或者在接收到掉电通知但是还没有来的及保存数据时,可以通过扫描块的预设物理页中的各个逻辑页,从而读取到各个逻辑页中存储的管理信息,通过管理信息进行数据恢复,从而快速的恢复到掉电之前的信息,减小用户的数据损失,使ssd硬盘继续工作,不影响后续使用。本方案具有恢复时间短、恢复成功率高、恢复准确率高、元数据较少进而可以减少元数据占用的带宽、写放大的程度低等优点。
50.第二方面,本发明实施例提供一种ssd硬盘的块信息存储系统,所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第一区域和第二区域;所述系统用于:在所述ssd硬盘的使用过程中将产生的管理信息进行存储,所述第一面结构和所述第二面结构中的对应块在使用过程中所产生的管理信息相同,所述系统包括:第一存储模块,用于在每一个块的每一个逻辑页的第一区域中存储该逻辑页对应的逻辑地址和时间戳;第二存储模块,用于在每一个块的所述预设物理页的多个逻辑页的第二区域中存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
51.在一些实施例中,系统还可以包括:第三存储模块,用于在每一个块的所述预设物理页中的多个逻辑页的第三区域中存储该块所在的逻辑单元组中除了该块所在的逻辑单元之外的其它各个逻辑单元中对应块的多个管理信息,所述该块的多个逻辑页与所述其它各个逻辑单元中对应块的多个管理信息一一对应。
52.可理解的是,本发明实施例提供的系统中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面提供的方法中的相应部分,此处不再赘述。
53.第三方面,本发明实施例提供一种ssd硬盘,所述ssd硬盘包括至少一个磁盘组,每一个磁盘组中包括多个逻辑单元组,每一个逻辑单元组中包含多个逻辑单元,每一个逻辑单元中包括第一面结构和第二面结构,每一个面结构中包括多个块,所述第一面结构和所述第二面结构中包含的块的数量相同且一一对应,每一个块中包括多个物理页,所述多个物理页中的一个预设物理页中包含多个逻辑页,每一个逻辑页中包含第一区域和第二区域;其中:每一个块的每一个逻辑页的第一区域用于存储该逻辑页对应的逻辑地址和时间戳;每一个块的所述预设物理页的多个逻辑页的第二区域用于存储该块的多个管理信息,该块的所述多个逻辑页和该块的所述多个管理信息一一对应,且所述第一面结构和所述第二面结构的对应块中的预设物理页中的对应逻辑页中存储的管理信息相同。
54.可理解的是,本发明实施例提供的ssd硬盘中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面提供的方法中的相应部分,此处不再赘述。
55.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
56.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
57.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献