CN110688242A - SSD异常掉电后恢复block信息的方法及相关组件 - Google Patents
SSD异常掉电后恢复block信息的方法及相关组件 Download PDFInfo
- Publication number
- CN110688242A CN110688242A CN201910853852.8A CN201910853852A CN110688242A CN 110688242 A CN110688242 A CN 110688242A CN 201910853852 A CN201910853852 A CN 201910853852A CN 110688242 A CN110688242 A CN 110688242A
- Authority
- CN
- China
- Prior art keywords
- state
- super
- block
- page
- super page
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种SSD异常掉电后恢复block信息的方法,包括:获取任意一个待恢复block信息的super block中的第一个和最后一个super page的状态;判断第一个super page是否为写过状态,且最后一个是否为擦除状态;若是则通过二分法确定出super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,确定super block为部分写过状态。应用本申请的方案,极大地缩短了block信息的恢复的耗时,且不会降低准确度。本申请还提供了SSD异常掉电后恢复block信息的相关组件,具有相应效果。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种SSD异常掉电后恢复block信息的方法及相关组件。
背景技术
SSD(Solid State Disk,固态硬盘)可能会发生异常掉电的情况,在上电之后,便需要恢复SSD中的block信息,即确定出super block中哪些页被使用,哪些未被使用,将恢复后的block信息保存至基于DDR(Double Data Rate,双倍数据速率)的缓存中。
传统方案中,在进行block信息的恢复时,按照super page的编码,依次读取每一个super page的状态。当确定出某一个super page为擦除状态时,便可以确定该superblock从第一个super page使用至该super page,进而将该super page的页号以及状态保存至DDR,完成该super block的block信息的恢复。
由于大容量的SSD包含的super block数目多,并且一个super block中含有的super page的数目也多达几百或者上千,使得传统方案在进行block信息的恢复时,耗时非常长。
综上所述,如何有效地降低SSD异常掉电后,上电恢复block信息的耗时,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种SSD异常掉电后恢复block信息的方法及相关组件,以降低SSD异常掉电后上电恢复block信息的耗时。
为解决上述技术问题,本发明提供如下技术方案:
一种SSD异常掉电后恢复block信息的方法,包括:
获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态;
判断第一个super page的状态是否为写过状态,且最后一个super page的状态是否为擦除状态;
如果是,则通过二分法确定出所述super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束所述super block的block信息恢复流程,并确定所述super block为部分写过状态。
优选的,在获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态之后,还包括:
当判断出第一个super page的状态以及最后一个super page的状态均为擦除状态时,结束所述super block的block信息恢复流程,并确定所述super block为擦除状态;
当判断出第一个super page的状态以及最后一个super page的状态均为写过状态时,结束所述super block的block信息恢复流程,并确定所述super block为完全写过状态。
优选的,在确定任意一个super page的状态时,当确定出该super page的第一个block的第一个基本存储单元的状态为擦除状态时,确定该super page为擦除状态;当确定出该super page的第一个block的第一个基本存储单元的状态为写过状态时,确定该superpage为写过状态。
优选的,在确定任意一个super page的状态时,当确定出该super page的每一个block的第一个基本存储单元的状态为擦除状态时,确定该super page为擦除状态;当确定出该super page中至少有一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
优选的,在获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态之前,还包括:
读取所述super block的物理坏块表,并判断所述物理坏块表中的坏块数量是否低于预设阈值;
如果否,则执行获取所述super block中的第一个super page的状态以及最后一个super page的状态的操作;
如果是,则停止所述super block的block信息的恢复。
优选的,在判断出所述物理坏块表中的坏块数量低于预设阈值之后,在获取所述super block中的第一个super page的状态以及最后一个super page的状态之前,还包括:
根据所述物理坏块表排除所述super block中的各个坏块,以使得在确定所述super block中的任意一个super page的状态时,基于所述super block中的各个好块进行该super page的状态确定。
优选的,在所述停止所述super block的block信息的恢复之后,还包括:
进行事件记录并输出提示信息。
一种SSD异常掉电后恢复block信息的系统,包括:
初始super page状态获取模块,用于获取任意一个待恢复block信息的superblock中的第一个super page的状态以及最后一个super page的状态;
第一判断模块,用于判断第一个super page的状态是否为写过状态,且最后一个super page的状态是否为擦除状态;
如果是,则触发第一结果确定模块,用于通过二分法确定出所述super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束所述super block的block信息恢复流程,并确定所述super block为部分写过状态。
一种SSD异常掉电后恢复block信息的设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任一项所述的SSD异常掉电后恢复block信息的方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的SSD异常掉电后恢复block信息的方法的步骤。
应用本发明实施例所提供的技术方案,采用二分法进行block信息的恢复。具体的,获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态。由于在使用super block的super page时是按照先后顺序依次使用,因此,当第一个super page的状态为写过状态,且最后一个super page的状态为擦除状态时,便通过二分法确定出该super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录。由于super page数量众多,且通常会被大量使用,因此相较于传统方案中逐个super page的检验,采用二分法的方式可以极大地缩短耗时,实现block信息的恢复,并且并不会降低准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种SSD异常掉电后恢复block信息的方法的实施流程图;
图2为本发明中一种SSD异常掉电后恢复block信息的系统的结构示意图;
图3为本发明中一种SSD异常掉电后恢复block信息的设备的结构示意图。
具体实施方式
本发明的核心是提供一种SSD异常掉电后恢复block信息的方法,极大地缩短了block信息的恢复的耗时,并且并不会降低准确度。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种SSD异常掉电后恢复block信息的方法的实施流程图,该SSD异常掉电后恢复block信息的方法可以包括以下步骤:
步骤S101:获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态。
需要说明的是。在SSD异常掉电之后,由于存在多个super block,因此,可以在完成一个super block的block信息的恢复之后,开始恢复下一个super block,即逐个恢复。当然,可以是并行恢复。而每一个super block中的block信息的恢复,均可以参照本申请的方案,也即本申请的方案可以针对的任意一个待恢复block信息的super block。
一个super block中有多个block,例如通常有32个block,当然,其他具体场合中也可能有其他数量的block,并不影响本发明的实施。还需要说明的是,对不同的block进行区分,通常是按照LUN(Logical Unit Number,逻辑单元号)以及执行单元plane的编号进行各个block的区分,例如在第1个super page中,即page num=0时,第一项便是LUN1-plane0,该项属于该super block中的第一个block,第二项是LUN1-plane1,该项属于该super block中的第二个block,第三项是LUN2-plane0,该项属于该super block中的第三个block。每一个LUN中有两个plane,因此super block中的LUN的数量的两倍便等于该super block中的block的数量。同理,page num=1时,即对于第二个super page而言,其第一项便是LUN1-plane0,该项属于该super block中的第一个block。当然,上述只是传统方案中广泛应用的用于区分各个block的方式,在其他场合中也可以有其他方式,例如直接为各个block配置不同的编码以进行区分,均不影响本发明的实施。
而在进行写操作时,是横向写,即先使用第1个super page中的LUN1-plane0,再使用第1个super page中的LUN1-plane1,直到第1个super page使用完毕。而在使用完首个super page之后,才会使用第二个super page,按照这样的顺序,最后使用到的自然是super block中的最后一个super page。因此,例如当第20个super page为写过状态时,说明第1个super page至第19个super page也均被使用了,即均为写过状态。基于该原理,本申请采用二分法的方式进行block信息的恢复。
步骤S102:判断第一个super page的状态是否为写过状态,且最后一个superpage的状态是否为擦除状态。
如果是,则触发步骤S103:通过二分法确定出super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束superblock的block信息恢复流程,并确定super block为部分写过状态。
当第一个super page的状态为写过状态,且最后一个super page的状态为擦除状态时,说明该super block中存在未被使用过的super page,也存在已经被使用过的superpage,至少第一个super page被使用过。
由于super page的编号为整数,因此在使用二分法确定出super block的各个super page中的最后一个状态为写过状态的super page时,会涉及到取整操作。便于理解以一个具体实施例进行说明,例如super block中一共有10个super page,即有10个超级页,依次编号为0-9,当然,部分场合中也会从1开始进行编号,并不影响本发明的实施。
还需要指出的是,该种具体例子中,仅是为了便于描述而采用10个super page为例进行说明,在实际应用中,super page数量远大于10。
例如第1个super page至第6个super page均被使用过,第7个至第10个则未被使用,即编号为0-5的super page被使用过,编号为5的super page为最后一个被使用的superpage。则首先可得(0+9)/2=4.5,取整后为4。需要对编号为4的super page,即super block中的第5个super page进行读操作,从而获取该super page的状态。获取到编号为4的superpage为写过状态,说明最后一个被使用的super page的编号在4-9之间,则继续(4+9)/2=6.5,取整后为6。获取到编号为6的super page为擦除状态,即未被使用。则继续(4+6)/2=5,获取到编号为5的super page为写过状态。由于编号为5的super page为写过状态,而编号为6的super page为擦除状态,便可以确定,该super block的各个super page中,最后一个状态为写过状态的super page的编号为5。
又如,编号为0-9的共10个super page中,第1个super page至第5个super page均被使用过,第6个至第10个则未被使用,即编号为0-4的super page被使用过,编号为4的super page为最后一个被使用的super page。则首先可得(0+9)/2=4.5,取整后为4。需要对编号为4的super page,即super block中的第5个super page进行读操作,从而获取该super page的状态。获取到编号为4的super page为写过状态,说明最后一个被使用的super page的编号在4-9之间,则继续(4+9)/2=6.5,取整后为6。获取到编号为6的superpage为擦除状态,即未被使用。则继续(4+6)/2=5,获取到编号为5的super page为擦除状态。由于编号为5的super page为擦除状态,而编号为4的super page为写过状态,便可以确定,该super block的各个super page中,最后一个状态为写过状态的super page的编号为4。
可以看出,在执行二分法的过程中,当任意两个相邻的super page,一个为写过状态,一个为擦除状态,则可以结束二分法的循环过程,并将这两个相邻super page中状态为写过状态的super page确定为该super block的各个super page中的最后一个状态为写过状态的super page。
还需要说明的是,前述例子中,在进行取整时,是向下取整,在其他场景中,也可以向上取整,并不影响本发明的实施。
应用本发明实施例所提供的技术方案,采用二分法进行block信息的恢复。具体的,获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态。由于在使用super block的super page时是按照先后顺序依次使用,因此,当第一个super page的状态为写过状态,且最后一个super page的状态为擦除状态时,便通过二分法确定出该super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录。由于super page数量众多,且通常会被大量使用,因此相较于传统方案中逐个super page的检验,采用二分法的方式可以极大地缩短耗时,实现block信息的恢复,并且并不会降低准确度。
在本发明的一种具体实施方式中,在步骤S103之后,还可以包括:
当判断出第一个super page的状态以及最后一个super page的状态均为擦除状态时,结束super block的block信息恢复流程,并确定super block为擦除状态;
当判断出第一个super page的状态以及最后一个super page的状态均为写过状态时,结束super block的block信息恢复流程,并确定super block为完全写过状态。
在少部分场合中,也会存在super block的block均未被使用,或者均被使用的情况。即此时步骤S102的判断结果为否。则可以根据第一个super page的状态以及最后一个super page的状态确定出super block为擦除状态还是完全写过状态。
具体的,由于在使用super block的super page时,是按照先后顺序依次使用,因此,当判断出第一个super page的状态以及最后一个super page的状态均为擦除状态时,可以认为该super block中的各个super page均未被使用,则并确定该super block为擦除状态。相应的,当第一个super page的状态以及最后一个super page的状态均为写过状态时,可以确定该super block为完全写过状态,即可以确定该super block中的各个superpage均被使用过。
在本发明的一种具体实施方式中,在确定任意一个super page的状态时,当确定出该super page的第一个block的第一个基本存储单元的状态为擦除状态时,确定该superpage为擦除状态;当确定出该super page的第一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
考虑到在使用某一个super page时,通常不会出现使用该super page的一部分的情况,并且即使是异常掉电,由于通常设置有电容,也能够保障将一个super page使用完毕。
因此,该种实施方式中,当确定出某一个super page的第一个block的第一个基本存储单元的状态为擦除状态时,便可以确定该super page为擦除状态,相应的,当确定出该super page的第一个block的第一个基本存储单元的状态为写过状态时,确定该superpage为写过状态。这样的方式可以快速地进行super page的状态判断。
在本发明的一种具体实施方式中,在确定任意一个super page的状态时,当确定出该super page的每一个block的第一个基本存储单元的状态为擦除状态时,确定该superpage为擦除状态;当确定出该super page中至少有一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
该种实施方式中,考虑到虽然通常不会出现使用一个super page的一部分的情况,但是,可能会出现数据写入super page时写错误的情况,导致对super page的状态产生错误的判断。
因此,该种实施方式中,为了保障确定出的super page状态的准确度,针对任意一个super page,只有在确定出该super page的每一个block的第一个基本存储单元的状态均为擦除状态时,才会确定该super page为擦除状态,有利于提高确定出的super page状态的准确度。并且由于每一个block中有多个基本存储单元,例如通常有4个,该种实施方式中也仅是读取每一个block的第一个基本存储单元的状态进行判断,在保障了确定出的super page状态的准确度的同时,也在一定程度上保障了对判断super page状态的速度要求。
在本发明的一种具体实施方式中,在获取任意一个待恢复block信息的superblock中的第一个super page的状态以及最后一个super page的状态之前,还包括:
读取super block的物理坏块表,并判断物理坏块表中的坏块数量是否低于预设阈值;
如果否,则执行获取super block中的第一个super page的状态以及最后一个super page的状态的操作;
如果是,则停止super block的block信息的恢复。
通常,可以从DDR中读取前端坏块管理模块恢复出的super block的物理坏块表。针对任意一个super block,如果该super block的物理坏块表中的坏块数量大于等于预设阈值,便可以无需执行后续的恢复该super block的block信息的操作。
坏块即坏的block,产生坏块的原因有多种,例如在生产、运输、安装及拆卸的过程受到碰撞等原因导致的坏块,又如在使用过程中由于震动、突然掉电等原因而导致的坏块。预设阈值的数量通常可以根据实际情况进行设定和调整,例如设置为该super block中的块的数量的一半,即例如设置为16。
此外,停止super block的block信息的恢复之后,还可以进行事件记录并输出提示信息,以使工作人员及时注意到该情况,也有利于进行后续的处理。
在本发明的一种具体实施方式中,在判断出物理坏块表中的坏块数量低于预设阈值之后,在执行步骤S101之前,还可以包括:
根据物理坏块表排除super block中的各个坏块,以使得在确定super block中的任意一个super page的状态时,基于super block中的各个好块进行该super page的状态确定。
考虑到坏块会影响block信息恢复的准确度,因此,本申请的方案中,根据物理坏块表找到该super block中的各个坏块,并排除这些坏块,即后续通过读操作确定任意一个super page的状态时,均是基于super block中的各个好块进行该super page的状态确定。有利于避免坏块对方案的准确度造成影响。
相应于上面的方法实施例,本发明实施例还提供了一种SSD异常掉电后恢复block信息的系统,可与上文相互对应参照。
可参阅图2,为本发明中一种SSD异常掉电后恢复block信息的系统的结构示意图,包括:
初始super page状态获取模块101,用于获取任意一个待恢复block信息的superblock中的第一个super page的状态以及最后一个super page的状态;
第一判断模块102,用于判断第一个super page的状态是否为写过状态,且最后一个super page的状态是否为擦除状态;
如果是,则触发第一结果确定模块103,用于通过二分法确定出super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束super block的block信息恢复流程,并确定super block为部分写过状态。
在本发明的一种具体实施方式中,还包括:
第二结果确定模块,用于当判断出第一个super page的状态以及最后一个superpage的状态均为擦除状态时,结束super block的block信息恢复流程,并确定super block为擦除状态;
第二结果确定模块,用于当判断出第一个super page的状态以及最后一个superpage的状态均为写过状态时,结束super block的block信息恢复流程,并确定super block为完全写过状态。
在本发明的一种具体实施方式中,在确定任意一个super page的状态时,当确定出该super page的第一个block的第一个基本存储单元的状态为擦除状态时,确定该superpage为擦除状态;当确定出该super page的第一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
在本发明的一种具体实施方式中,在确定任意一个super page的状态时,当确定出该super page的每一个block的第一个基本存储单元的状态为擦除状态时,确定该superpage为擦除状态;当确定出该super page中至少有一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
在本发明的一种具体实施方式中,还包括预处理模块,用于:
读取super block的物理坏块表,并判断物理坏块表中的坏块数量是否低于预设阈值;
如果否,则触发初始super page状态获取模块101;
如果是,则停止super block的block信息的恢复。
在本发明的一种具体实施方式中,还包括:
坏块排除模块,用于在预处理模块判断出物理坏块表中的坏块数量低于预设阈值之后,触发初始super page状态获取模块101之前,根据物理坏块表排除super block中的各个坏块,以使得在确定super block中的任意一个super page的状态时,基于superblock中的各个好块进行该super page的状态确定。
在本发明的一种具体实施方式中,还包括:
提示信息输出模块,用于在预处理模块停止super block的block信息的恢复之后,进行事件记录并输出提示信息。
相应于上面的方法实施例,本发明实施例还提供了一种SSD异常掉电后恢复block信息的设备,参阅图3,包括:
存储器301,用于存储计算机程序;
处理器302,用于执行计算机程序以实现上述任一实施例中的SSD异常掉电后恢复block信息的方法的步骤。
一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例中的SSD异常掉电后恢复block信息的方法的步骤。这里所说的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种SSD异常掉电后恢复block信息的方法,其特征在于,包括:
获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态;
判断第一个super page的状态是否为写过状态,且最后一个super page的状态是否为擦除状态;
如果是,则通过二分法确定出所述super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束所述super block的block信息恢复流程,并确定所述super block为部分写过状态。
2.根据权利要求1所述的SSD异常掉电后恢复block信息的方法,其特征在于,在获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个superpage的状态之后,还包括:
当判断出第一个super page的状态以及最后一个super page的状态均为擦除状态时,结束所述super block的block信息恢复流程,并确定所述super block为擦除状态;
当判断出第一个super page的状态以及最后一个super page的状态均为写过状态时,结束所述super block的block信息恢复流程,并确定所述super block为完全写过状态。
3.根据权利要求1所述的SSD异常掉电后恢复block信息的方法,其特征在于,在确定任意一个super page的状态时,当确定出该super page的第一个block的第一个基本存储单元的状态为擦除状态时,确定该super page为擦除状态;当确定出该super page的第一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
4.根据权利要求1所述的SSD异常掉电后恢复block信息的方法,其特征在于,在确定任意一个super page的状态时,当确定出该super page的每一个block的第一个基本存储单元的状态为擦除状态时,确定该super page为擦除状态;当确定出该super page中至少有一个block的第一个基本存储单元的状态为写过状态时,确定该super page为写过状态。
5.根据权利要求1至4任一项所述的SSD异常掉电后恢复block信息的方法,其特征在于,在获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态之前,还包括:
读取所述super block的物理坏块表,并判断所述物理坏块表中的坏块数量是否低于预设阈值;
如果否,则执行获取所述super block中的第一个super page的状态以及最后一个super page的状态的操作;
如果是,则停止所述super block的block信息的恢复。
6.根据权利要求5所述的SSD异常掉电后恢复block信息的方法,其特征在于,在判断出所述物理坏块表中的坏块数量低于预设阈值之后,在获取所述super block中的第一个super page的状态以及最后一个super page的状态之前,还包括:
根据所述物理坏块表排除所述super block中的各个坏块,以使得在确定所述superblock中的任意一个super page的状态时,基于所述super block中的各个好块进行该super page的状态确定。
7.根据权利要求5所述的SSD异常掉电后恢复block信息的方法,其特征在于,在所述停止所述super block的block信息的恢复之后,还包括:
进行事件记录并输出提示信息。
8.一种SSD异常掉电后恢复block信息的系统,其特征在于,包括:
初始super page状态获取模块,用于获取任意一个待恢复block信息的super block中的第一个super page的状态以及最后一个super page的状态;
第一判断模块,用于判断第一个super page的状态是否为写过状态,且最后一个superpage的状态是否为擦除状态;
如果是,则触发第一结果确定模块,用于通过二分法确定出所述super block的各个super page中的最后一个状态为写过状态的super page,并进行该super page的编号记录,结束所述super block的block信息恢复流程,并确定所述super block为部分写过状态。
9.一种SSD异常掉电后恢复block信息的设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至7任一项所述的SSD异常掉电后恢复block信息的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的SSD异常掉电后恢复block信息的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910853852.8A CN110688242A (zh) | 2019-09-10 | 2019-09-10 | SSD异常掉电后恢复block信息的方法及相关组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910853852.8A CN110688242A (zh) | 2019-09-10 | 2019-09-10 | SSD异常掉电后恢复block信息的方法及相关组件 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110688242A true CN110688242A (zh) | 2020-01-14 |
Family
ID=69107899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910853852.8A Pending CN110688242A (zh) | 2019-09-10 | 2019-09-10 | SSD异常掉电后恢复block信息的方法及相关组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110688242A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI821965B (zh) * | 2021-09-29 | 2023-11-11 | 慧榮科技股份有限公司 | 編碼歷程資訊的存取方法及電腦程式產品及裝置 |
US11966607B2 (en) | 2021-09-29 | 2024-04-23 | Silicon Motion, Inc. | Method and non-transitory computer-readable storage medium and apparatus for accessing to encoding-history information |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751888A (zh) * | 2013-12-27 | 2015-07-01 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的掉电保护方法和装置 |
CN107731262A (zh) * | 2017-09-29 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种存储磁盘坏块管理方法、装置、设备及可读存储介质 |
CN108874318A (zh) * | 2018-06-22 | 2018-11-23 | 郑州云海信息技术有限公司 | 固态硬盘的数据恢复方法以及固态硬盘 |
CN109213690A (zh) * | 2018-09-21 | 2019-01-15 | 浪潮电子信息产业股份有限公司 | 一种l2p表的重建方法及相关装置 |
-
2019
- 2019-09-10 CN CN201910853852.8A patent/CN110688242A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751888A (zh) * | 2013-12-27 | 2015-07-01 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的掉电保护方法和装置 |
CN107731262A (zh) * | 2017-09-29 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种存储磁盘坏块管理方法、装置、设备及可读存储介质 |
CN108874318A (zh) * | 2018-06-22 | 2018-11-23 | 郑州云海信息技术有限公司 | 固态硬盘的数据恢复方法以及固态硬盘 |
CN109213690A (zh) * | 2018-09-21 | 2019-01-15 | 浪潮电子信息产业股份有限公司 | 一种l2p表的重建方法及相关装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI821965B (zh) * | 2021-09-29 | 2023-11-11 | 慧榮科技股份有限公司 | 編碼歷程資訊的存取方法及電腦程式產品及裝置 |
US11966607B2 (en) | 2021-09-29 | 2024-04-23 | Silicon Motion, Inc. | Method and non-transitory computer-readable storage medium and apparatus for accessing to encoding-history information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10459815B2 (en) | Method and system for predicting storage device failures | |
US11003536B2 (en) | Method, device and computer readable storage medium for writing to disk array | |
US10467044B2 (en) | Transaction processing method and apparatus, and computer system | |
TWI512742B (zh) | 非揮發性快閃記憶體擦除異常存儲塊修復方法和裝置 | |
US9690642B2 (en) | Salvaging event trace information in power loss interruption scenarios | |
KR102031606B1 (ko) | 버저닝된 메모리 구현 | |
CN110399247B (zh) | 一种数据恢复方法、装置、设备及计算机可读存储介质 | |
CN111813609B (zh) | 一种存储介质中数据恢复方法、数据恢复系统及相关设备 | |
CN108089971B (zh) | 基于嵌入式实时系统的日志服务方法和系统 | |
CN108959526B (zh) | 日志管理方法以及日志管理装置 | |
CN109521960A (zh) | 数据读写方法、装置和系统 | |
WO2016022156A1 (en) | Error counters on a memory device | |
CN103984506A (zh) | 闪存存储设备数据写的方法和系统 | |
CN110688242A (zh) | SSD异常掉电后恢复block信息的方法及相关组件 | |
CN111045870A (zh) | 一种保存与恢复元数据的方法、装置和介质 | |
CN116719484A (zh) | 一种磁盘阵列的写数据处理方法、装置、设备和介质 | |
CN112000513A (zh) | 一种计算机及其vpd数据操作方法、装置、存储介质 | |
US11947819B2 (en) | Method and system for testing conversion relationship between block reading and page reading in flash memory chip | |
CN111221681A (zh) | 一种存储器的修复方法及装置 | |
CN110865772A (zh) | 保护系统数据物理块擦除计数值的方法、装置、计算机设备及存储介质 | |
CN101833483A (zh) | 嵌入式电子装置及数据储存方法 | |
US9934093B2 (en) | Control device, method of controlling a storage device, and storage system | |
CN103823637A (zh) | 一种数据处理方法及设备 | |
CN112306382B (zh) | 快闪存储器控制器、储存装置及其读取方法 | |
US9880926B1 (en) | Log structured reserved zone for a data storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200114 |
|
RJ01 | Rejection of invention patent application after publication |