存储设备寿命预测、确定方法及装置转让专利

申请号 : CN201410664570.0

文献号 : CN104376875B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 余霄章根林张睿夫

申请人 : 华为数字技术(苏州)有限公司

摘要 :

本发明实施例公开了一种存储设备寿命预测、确定方法及装置,所述预测方法包括:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;判断所述累计失效数据块数量是否大于预设失效数据块限值;当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;利用所述预测模型预测所述存储设备的擦写次数阈值。该方法不再是为存储设备设置一个固定的擦写次数门限值,而是结合存储设备在使用过程中的累计失效数据块数量,以及,累计擦写次数,因此,可以准确确定一个符合该存储设备的实际使用情况的擦写次数阈值。

权利要求 :

1.一种存储设备寿命预测方法,其特征在于,所述方法包括:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;

判断所述累计失效数据块数量是否大于预设失效数据块限值;

当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;

利用所述预测模型预测所述存储设备的擦写次数阈值。

2.根据权利要求1所述的方法,其特征在于,所述获取所述存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数,包括:监测所述存储设备中所有数据块的擦写循环;

若所述存储设备中任意一个数据块完成一次擦写循环,将所述累计擦写次数增加1;

检测所述存储设备中的数据块是否出现不可恢复错误UNC;

当检测到所述存储设备中任意一个数据块出现UNC时,且将所述累计失效数据块数量增加1;

将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。

3.一种存储设备寿命确定方法,其特征在于,包括:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;

在所述累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块,所述存储设备中设置有预设数量的冗余块;

判断所述累计失效数据块数量是否大于预设失效数据块限值;

当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;

利用所述预测模型预测所述存储设备的擦写次数阈值判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;

当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。

4.根据权利要求3所述的方法,其特征在于,所述预设比值为0.6~0.95。

5.根据权利要求3所述的方法,其特征在于,所述方法还包括:当确定所述存储设备预失效后,生成预失效提示并进行提示。

6.根据权利要求3所述的方法,其特征在于,所述方法还包括:当确定所述存储设备预失效后,判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;

若所述累计擦写次数与所述擦写次数阈值的比值等于1,确定所述存储设备失效。

7.根据权利要求6所述的方法,其特征在于,所述方法还包括:当确定所述存储设备失效后,生成失效提示并进行提示。

8.一种存储设备寿命预测装置,其特征在于,所述装置包括:获取模块,用于获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;

失效数据块判断模块,用于判断所述累计失效数据块数量是否大于预设失效数据块限值;

预测模型确定模块,用于当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;

预测模块,用于利用所述预测模型预测所述存储设备的擦写次数阈值。

9.根据权利要求8所述的装置,其特征在于,所述获取模块,包括:检测子模块,用于检测所述存储设备中所有数据块的擦写循环;

第一累计子模块,用于当所述存储设备中任意一个数据块完成一次擦写循环时,将所述累计擦写次数增加1;

UNC检测子模块,用于检测所述存储设备中的数据块是否出现不可恢复错误UNC;

第二累计子模块,用于当检测到UNC时,将所述累计失效数据块数量增加1;

对应确定子模块,用于将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。

10.一种存储设备状态确定装置,其特征在于,包括:获取模块,用于获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;

替换模块,用于在所述累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块,所述存储设备中设置有预设数量的冗余块;

失效数据块判断模块,用于判断所述累计失效数据块数量是否大于预设失效数据块限值;

预测模型确定模块,用于当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;

预测模块,用于利用所述预测模型预测所述存储设备的擦写次数阈值;

第一比值判断模块,用于判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;

第一状态确定模块,用于当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。

11.根据权利要求10所述的装置,其特征在于,所述装置还包括:第一提示模块,用于当确定所述存储设备预失效后,生成预失效提示并进行提示。

12.根据权利要求10所述的装置,其特征在于,所述装置还包括:第二比值判断模块,用于当确定所述存储设备预失效后,判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;

第二状态确定模块,用于当所述累计擦写次数与所述擦写次数阈值的比值等于1时,确定所述存储设备失效。

13.根据权利要求11所述的装置,其特征在于,所述装置还包括:第二提示模块,用于当确定所述存储设备失效后,生成失效提示并进行提示。

14.一种存储设备,其特征在于,包括:处理器和存储器,其中,所述存储器内存储有所述处理器能够执行的操作指令,以使所述处理器执行以下步骤:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;

判断所述累计失效数据块数量是否大于预设失效数据块限值;

当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;

利用所述预测模型预测所述存储设备的擦写次数阈值。

15.根据权利要求14所述的设备,其特征在于,所述存储器内还存储有所述处理器能够执行的操作指令,以使所述处理器执行以下步骤:判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;

当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。

说明书 :

存储设备寿命预测、确定方法及装置

技术领域

[0001] 本发明涉及数据存储技术领域,特别是涉及一种存储设备寿命确定方法及装置。

背景技术

[0002] SSD(Solid State Disk,固态硬盘)是最近几年发展起来的,一种基于Nand Flash(半导体固态存储器)作为存储介质的新型存储技术,与传统机械硬盘相比,SSD具有读写速度快、抗震能力强、温度范围大、体积小、重量轻等优点。
[0003] SSD擦写寿命的定义为:对于Flash来说,其存储单元是可重复使用的,在使用时操作顺序是:擦-写-读,三种操作循环进行,1个擦-写-读循环被称为1个PE cycle(Program Erase Cycle,擦写循环次数);Flash最小的擦写操作单位为block(数据块),当某个block经过多次的擦写操作后,在某一次进行读操作时,如果发生UNC(Uncorrected-Error,不可恢复错误),那么就认为该block寿命终止,被添加进坏块。从理论上讲,当Flash中所有的block都成为坏块时,才会认为该Flash寿命终止,但是在实际使用中,不会等到所有的block都成为坏块后才宣布Flash寿命截止;而是在保证SSD功能正常,且容量不受影响,以及不影响用户使用的情况下,给出一个最小的擦写寿命门限,该最小的擦写寿命门限即为擦写寿命。
[0004] 因此如何准确确定SSD的擦写寿命是当前亟待解决的一个问题。

发明内容

[0005] 本发明提供了一种存储设备寿命确定方法及装置,以解决现有技术中的无法准确确定SSD的擦写寿命的问题。
[0006] 为了解决上述技术问题,本发明实施例公开了如下技术方案:
[0007] 本发明的第一方面,提供了一种存储设备寿命预测方法,所述方法包括:
[0008] 获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0009] 判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0010] 当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0011] 利用所述预测模型预测所述存储设备的擦写次数阈值。
[0012] 结合第一方面,在第一方面第一种可能的实现方式中,所述获取所述存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数,包括:
[0013] 监测所述存储设备中所有数据块的擦写循环;
[0014] 若所述存储设备中任意一个数据块完成一次擦写循环,将所述累计擦写次数增加1;
[0015] 检测所述存储设备中的数据块是否出现不可恢复错误UNC;
[0016] 当检测到所述存储设备中任意一个数据块出现UNC时,且将所述累计失效数据块数量增加1;
[0017] 将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。
[0018] 结合第一方面,在第一方面第二种可能的实现方式中,所述利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型,包括:
[0019] 利用累计失效数据块数量以及所述存储设备的数据块总量,计算所述存储设备的失效率;
[0020] 利用所述累计擦写次数以及所述失效率生成与所述存储设备对应的预测模型,所述预测模型为:
[0021] 其中,T0为擦写次数阈值,M0=(1-λ)Mmax+λMmin,(0<λ≤1),λ为比例参数,初始值设置为1,Mmax为最大形状参数,所述Mmax根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,Mmin为最小形状参数,所述Mmin根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,m0为初始形状参数,初始值设置为一常量;F(t)为失效率,并且Fm *(t)=1-exp[-(t/η)],t∈N ,其中,m为形状参数,η为平均寿命,t为当前累计擦写次数;
NR为累计失效数据块数量,NA为所述存储设备中的数据块总
量,α为保护裕量。
[0022] 本发明第二方面,提供了一种存储设备寿命确定方法,包括:
[0023] 获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0024] 在所述累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块,所述存储设备中设置有预设数量的冗余块;
[0025] 判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0026] 当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0027] 利用所述预测模型预测所述存储设备的擦写次数阈值
[0028] 判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0029] 当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。
[0030] 结合第二方面,在第二方面第一种可能的实现方式中,所述预设比值为0.6~0.95。
[0031] 结合第二方面,在第一方面第二种可能的实现方式中,所述方法还包括:
[0032] 当确定所述存储设备预失效后,生成预失效提示并进行提示。
[0033] 结合第二方面,在第二方面第三种可能的实现方式中,所述方法还包括:
[0034] 当确定所述存储设备预失效后,判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;
[0035] 若所述累计擦写次数与所述擦写次数阈值的比值等于1,确定所述存储设备失效。
[0036] 结合第二方面第三种可能的实现方式,在第二方面第四种可能的实现方式中,所述方法还包括:
[0037] 当确定所述存储设备失效后,生成失效提示并进行提示。
[0038] 本发明第三方面,还提供了一种存储设备寿命预测装置,所述装置包括:
[0039] 获取模块,用于获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0040] 失效数据块判断模块,用于判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0041] 预测模型确定模块,用于当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0042] 预测模块,用于利用所述预测模型预测所述存储设备的擦写次数阈值。
[0043] 结合第三方面,在第三方面第一种可能的实现方式中,所述获取模块,包括:
[0044] 检测子模块,用于检测所述存储设备中所有数据块的擦写循环;
[0045] 第一累计子模块,用于当所述存储设备中任意一个数据块完成一次擦写循环时,将所述累计擦写次数增加1;
[0046] UNC检测子模块,用于检测所述存储设备中的数据块是否出现不可恢复错误UNC;
[0047] 第二累计子模块,用于当检测到UNC时,将所述累计失效数据块数量增加1;
[0048] 对应确定子模块,用于将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。
[0049] 结合第三方面,在第三方面第二种可能的实现方式中,所述预测模型确定模块包括:
[0050] 第一计算子模块,利用累计失效数据块数量以及所述存储设备的数据块总量,计算所述存储设备的失效率;
[0051] 预测模型生成子模块,用于利用所述累计擦写次数以及所述失效率生成与所述存储设备对应的预测模型,所述预测模型为:
[0052] 其中,T0为擦写次数阈值,M0=(1-λ)Mmax+λMmin,(0<λ≤1),λ为比例参数,初始值设置为1,Mmax为最大形状参数,所述Mmax根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,Mmin为最小形状参数,所述Mmin根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,m0为初始形状参数,初始值设置为一常量;F(t)为失效率,并且其中,m为形状参数,η为平均寿命,t为当前累计擦写次数;NR为累计失效数据块数量,NA为所述存储设备中的数据块总
量,α为保护裕量。
[0053] 本发明第四方面,提供了一种存储设备状态确定装置,包括:
[0054] 获取模块,用于获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0055] 替换模块,用于在所述累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块,所述存储设备中设置有预设数量的冗余块;
[0056] 失效数据块判断模块,用于判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0057] 预测模型确定模块,用于当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0058] 预测模块,用于利用所述预测模型预测所述存储设备的擦写次数阈值;
[0059] 第一比值判断模块,用于判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0060] 第一状态确定模块,用于当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。
[0061] 结合第四方面,在第四方面第一种可能的实现方式中,所述装置还包括:
[0062] 第一提示模块,用于当确定所述存储设备预失效后,生成预失效提示并进行提示。
[0063] 结合第四方面,在第四方面第二种可能的实现方式中,所述装置还包括:
[0064] 第二比值判断模块,用于当确定所述存储设备预失效后,判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;
[0065] 第二状态确定模块,用于当所述累计擦写次数与所述擦写次数阈值的比值等于1时,确定所述存储设备失效。
[0066] 结合第四方面,在第四方面第三种可能的实现方式中,所述装置还包括:
[0067] 第二提示模块,用于当确定所述存储设备失效后,生成失效提示并进行提示。
[0068] 本发明第五方面,提供了一种存储设备,包括:处理器和存储器,其中,[0069] 所述存储器内存储有所述处理器能够执行的操作指令,以使所述处理器执行以下步骤:
[0070] 获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0071] 判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0072] 当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0073] 利用所述预测模型预测所述存储设备的擦写次数阈值。
[0074] 结合第五方面,在第五方面第一种可能的实现方式中,所述存储器内还存储有所述处理器能够执行的操作指令,以使所述处理器执行以下步骤:
[0075] 判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0076] 当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。
[0077] 由以上技术方案可见,本发明提供的该方法,首先获取存储设备在使用过程中的参数:累计失效数据块数量和累计擦写次数,进而在满足累计失效数据块数量大于预设失效数据块限值这一定条件下,利用该存储设备使用过程中的参数确定符合与该存储设备对应的预测模块,并利用该预测模块预测得到该存储设备的擦写次数阈值。
[0078] 与现有技术相比,该方法不再是为存储设备设置一个固定的擦写次数门限值,而是结合存储设备在使用过程中的累计失效数据块数量,以及,累计擦写次数,可以准确确定一个符合该存储设备的实际使用情况的擦写次数阈值。

附图说明

[0079] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0080] 图1为本发明实施例提供的一种存储设备寿命预测方法的流程示意图。
[0081] 图2为本发明实施例提供的另一种存储设备寿命预测方法的流程示意图。
[0082] 图3为本发明实施例提供的一种存储设备寿命确定方法的流程示意图。
[0083] 图4为本发明实施例提供的另一种存储设备寿命确定方法的流程示意图。
[0084] 图5为本发明实施例提供的一种存储设备寿命预测装置的结构示意图。
[0085] 图6为图5中获取模块的详细结构示意图。
[0086] 图7为图5中预测模块确定模块的详细结构示意图。
[0087] 图8为本发明实施例提供的一种存储设备寿命确定装置的结构示意图。
[0088] 图9为本发明实施例提供的另一种存储设备寿命确定装置的结构示意图。
[0089] 图10为本发明实施例提供的一种存储设备的结构示意图。

具体实施方式

[0090] 为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0091] 本发明实施例提供的该存储设备寿命预测方法,可以应用于闪存Flash存储设备中,例如:SSD硬盘,USB接口闪存(也称U盘),以及,m-SATA(mini-Serial Advanced Technology Attachment,迷你-串行高级技术附件)硬盘。
[0092] 现有的Flash存储设备的擦写寿命通常都是一个确定门限值,只要擦写次数达到门限值都将宣布失效,但此时存储设备虽然容量损失,但仍可能继续使用。通过研究,申请人发现,基于Flash的数据块擦写循环的失效服从一定的寿命概率分布模型,如:威布尔概率分布模型,这样就可以利用存储设备的使用过程中的擦写情况,结合寿命概率分布模型,计算得到每个存储设备各自实际的擦写寿命,避免存储设备的擦写次数达到一个固定的门限值就将存储设备确定为失效的问题。
[0093] 以上是本发明的核心思想,为了使本技术领域的人员更好地理解本发明方案,下面结合附图对本发明作进一步的详细说明。
[0094] 图1为本发明实施例提供的一种存储设备寿命预测方法的流程示意图。该寿命预测方法应用于闪存Flash存储设备中,如图1所示,该方法可以包括以下步骤:
[0095] 步骤S101:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数。
[0096] 步骤S102:判断所述累计失效数据块数量是否大于预设失效数据块限值。
[0097] 当所述累计失效数据块数量大于预设失效数据块限值时,进行步骤S103,否则,返回步骤S101。
[0098] 步骤S103:利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型。
[0099] 步骤S104:利用所述预测模型预测所述存储设备的擦写次数阈值。
[0100] 本发明实施例提供的该方法,首先获取存储设备在使用过程中的参数:累计失效数据块数量和累计擦写次数,进而在满足累计失效数据块数量大于预设失效数据块限值这一定条件下,利用该存储设备使用过程中的参数确定符合与该存储设备对应的预测模块,并利用该预测模块预测得到该存储设备的擦写次数阈值。
[0101] 与现有技术相比,该方法不再是为存储设备设置一个固定的擦写次数门限值,而是结合存储设备在使用过程中的累计失效数据块数量,以及,累计擦写次数,可以准确确定一个符合该存储设备的实际使用情况的擦写次数阈值。
[0102] 图2为本发明实施例提供的另一种存储设备寿命预测方法的流程示意图。如图2所示,该方法可以包括:
[0103] 步骤S2O1:监测所述存储设备中所有数据块的擦写循环。
[0104] 在存储设备进行数据写入以及数据读取过程中,可以对存储设备中的每一数据块的擦写循环进行检测。
[0105] 步骤S202:若所述存储设备中任意一个数据块完成一次擦写循环,将所述累计擦写次数增加1。
[0106] 步骤S203:检测所述存储设备中的数据块是否出现不可恢复错误UNC。
[0107] UNC可能出现在数据读取阶段,在数据读取时,若无法从数据块中读取到数据,那么表示该数据块出现UNC。另外,UNC还可能出现在数据写入阶段,在数据写入时,当数据完成写入后,需要对写入的数据读取一次,进行验证,一旦无法读取到写入的数据,则表示该数据块无法写入数据,出现UNC。
[0108] 当检测到所述存储设备中任意一个数据块出现UNC时,进行步骤S204,否则,返回步骤S203继续检测。
[0109] 步骤S204:将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。
[0110] 在每次获取存储设备的参数时,存储设备中当前累计失效数据块和当前累计擦写次数都相对应。
[0111] 步骤S205:判断所述累计失效数据块数量是否大于预设失效数据块限值。
[0112] 当所述累计失效数据块数量大于预设失效数据块限值时,进行步骤S206,否则,返回步骤S205。
[0113] 预设失效数据块限值为预先设定的失效数据块的最小门限值,即在累计失效数据块的数量大于预设失效数据块限值后,才会开启对存储设备的失效情况进行检测。
[0114] 步骤S206:利用累计失效数据块数量以及所述存储设备的数据块总量,计算所述存储设备的失效率。
[0115] 失效率等于累计失效数据块数量与存储设备的数据块总量的比值。
[0116] 步骤S207:利用所述累计擦写次数以及所述失效率生成与所述存储设备对应的预测模型。
[0117] 所述预测模型为:
[0118] 其中,T0为擦写次数阈值,M0=(1-λ)Mmax+λMmin,(0<λ≤1),λ为比例参数,初始值设置为1,Mmax为最大形状参数,所述Mmax根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,Mmin为最小形状参数,所述Mmin根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,m0为初始形状参数,初始值设置为一常量;F(t)为失效率,并且其中,m为形状参数,η为平均寿命,t为当前累计擦写次数;NR为累计失效数据块数量,NA为所述存储设备中的数据块总
量,α为保护裕量。
[0119] 在本发明实施例中,预测模型是根据威布尔概率分布模型确定的。
[0120] 步骤S208:利用所述预测模型预测所述存储设备的擦写次数阈值。
[0121] 将该存储设备的参数代入到上述预测模块,就可以计算得到该存储设备的擦写次数阈值。
[0122] 在上述图1和图2所示实施例的基础上,本发明还提供了一种存储设备寿命确定方法,以利用图1或图2所示实施例中预测得到的擦写次数阈值来对存储设备的寿命进行判断。如图3所示,该存储设备寿命确定方法可以包括:
[0123] 步骤S301:获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数。
[0124] 步骤S302:在累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块。
[0125] 在本发明实施例中,可以在存储设备中设置一定的冗余比来保证出现失效数据块后存储设备的容量。在具体应用中,可以在存储设备中设置有预设数量的冗余块,这样虽然减少了存储设备的一部分额定容量,但可以在出现失效数据块后,保证存储设备的整体数据存储容量。
[0126] 步骤S303:判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0127] 当所述累计失效数据块数量大于预设失效数据块限值时,进行步骤S304,否则,返回步骤S301。
[0128] 步骤S304:利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0129] 步骤S305:利用所述预测模型预测所述存储设备的擦写次数阈值
[0130] 步骤S306:判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0131] 当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,进行步骤S307,否则,返回步骤S306。
[0132] 预设比值可以根据需要存储数据的安全需要自由设定,在本发明实施例中,预设比值可以在0.6~0.95之间。
[0133] 步骤S307:确定所述存储设备预失效。
[0134] 本发明实施例提供的该方法,对于存储设备,首先在出现失效数据块后,将冗余数据块替换失效的数据块,使得存储设备出现失效数据块后,整体的数据存储容量不受影像,其次,利用存储设备在使用过程中的累计失效数据块数量,以及,累计擦写次数,可以准确确定一个符合该存储设备的实际使用情况的擦写次数阈值,并利用该擦写次数阈值来确定存储设备的寿命。
[0135] 并且,在累计擦写次数与所述擦写次数阈值的比值大于预设比值后,确定存储设备预失效,而非直接确定该存储设备失效,寿命结束。这种通过确定存储设备预失效的方式,可以告知用户该存储设备的功能降低,如安全性以及容量都会相应降低,在用户对数据安全性要求不高的情况下,仍可继续使用,从而使得存储设备的寿命可以适当地延长。
[0136] 另外,在上述图3所示实施例中的基础上,当确定所述存储设备预失效后,如图3所示,该方法还可以包括以下步骤:
[0137] 步骤S308:生成预失效提示并进行提示。
[0138] 通过预失效提示,可以使得用户及时了解到该存储设备的状态,以便用户合理利用该存储设备,预设失效提示的方式可以为声音、灯光或文字等。
[0139] 另外,在上述图3所示实施例中的基础上,当确定所述存储设备预失效后,如图4所示,该方法还可以包括以下步骤:
[0140] 步骤S309:判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;
[0141] 若所述累计擦写次数与所述擦写次数阈值的比值等于1,进行步骤S310,否则,返回步骤S309继续判断。
[0142] 步骤S310:确定所述存储设备失效。
[0143] 在预失效后,基于该存储设备的容量以及安全性考虑,用户仍然可以使用该存储设备,但在使用过程中,仍然会出现失效数据块,因此,当步骤S309的判断结果为累计擦写次数等于所述擦写次数阈值时,就可以确定该存储设备彻底失效,寿命结束。
[0144] 如图4所示,在本发明其它实施例中,当确定所述存储设备失效后,该方法还可以包括:
[0145] 步骤S311:生成失效提示并进行提示。
[0146] 通过预失效提示,可以使得用户及时了解到该存储设备的状态,以避免用户继续使用该存储设备而可能导致数据无法存储的问题。
[0147] 通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0148] 在上述图1所示方法实施例的基础上,本发明实施例还提供一种存储设备寿命预测装置,如图5所示,该装置可以包括:获取模块11、失效数据块判断模块12、预测模块确定模块13和预测模块14,其中,
[0149] 获取模块11,用于获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0150] 失效数据块判断模块12,用于判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0151] 预测模型确定模块13,用于当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0152] 预测模块14,用于利用所述预测模型预测所述存储设备的擦写次数阈值。
[0153] 另外,如图6所示,该获取模块11可以包括:检测子模块111、第一累计子模块112、UNC检测子模块113、第二累计子模块114和对应确定子模块115,其中,
[0154] 检测子模块111,用于检测所述存储设备中所有数据块的擦写循环;
[0155] 第一累计子模块112,用于当所述存储设备中任意一个数据块完成一次擦写循环时,将所述累计擦写次数增加1;
[0156] UNC检测子模块113,用于检测所述存储设备中的数据块是否出现不可恢复错误UNC;
[0157] 第二累计子模块114,用于当检测到UNC时,将所述累计失效数据块数量增加1;
[0158] 对应确定子模块115,用于将当前累计擦写次数确定为与当前累计失效数据块数量对应的累计擦写次数。
[0159] 如图7所示,该预测模型确定模块13可以包括:第一计算子模块131和预测模型生成子模块132,其中,
[0160] 第一计算子模块131,利用累计失效数据块数量以及所述存储设备的数据块总量,计算所述存储设备的失效率;
[0161] 预测模型生成子模块132,用于利用所述累计擦写次数以及所述失效率生成与所述存储设备对应的预测模型,所述预测模型为: 其中,T0为擦写次数阈值,M0=(1-λ)Mmax+λMmin,(0<λ≤1),λ为比例参数,初始值设置为1,Mmax为最大形状参数,所述Mmax根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,Mmin为最小形状参数,所述Mmin根据擦写次数增加和UNC数据块增加变化,初始值设置为m0,m0为初始形状参数,初始值设置为一常量;F(t)为失效率,并且 其中,m
为形状参数,η为平均寿命,t为当前累计擦写次数; NR为累计
失效数据块数量,NA为所述存储设备中的数据块总量,α为保护裕量。
[0162] 本发明实施例提供的该装置,首先获取存储设备在使用过程中的参数:累计失效数据块数量和累计擦写次数,进而在满足累计失效数据块数量大于预设失效数据块限值这一定条件下,利用该存储设备使用过程中的参数确定符合与该存储设备对应的预测模块,并利用该预测模块预测得到该存储设备的擦写次数阈值。
[0163] 与现有技术相比,该装置不再是为存储设备设置一个固定的擦写次数门限值,而是结合存储设备在使用过程中的累计失效数据块数量,以及,累计擦写次数,可以准确确定一个符合该存储设备的实际使用情况的擦写次数阈值。
[0164] 本发明实施例还提供一种存储设备寿命确定装置,如图8所示,在图5所示装置的基础上,该装置还可以包括:替换模块15、第一比值判断模块16和第一状态确定模块17,其中,
[0165] 替换模块15,用于在所述累计失效数据块数量每次增加时,将所述存储设备中预留的冗余块中的一个冗余块替换失效的数据块,所述存储设备中设置有预设数量的冗余块;
[0166] 第一比值判断模块,用于判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0167] 第一状态确定模块,用于当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。
[0168] 另外,在上述存储设备寿命预测装置的基础上,如图8所示,该装置还可以包括:第一提示模块18,用于当确定所述存储设备预失效后,生成预失效提示并进行提示。
[0169] 在上述图8所示存储设备寿命预测装置的基础上,如图9所示,该装置还可以包括:第二比值判断模块21和第二状态确定模块22,其中,
[0170] 第二比值判断模块21,用于当确定所述存储设备预失效后,判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否等于1;
[0171] 第二状态确定模块22,用于当所述累计擦写次数与所述擦写次数阈值的比值等于1时,确定所述存储设备失效。
[0172] 另外,如图9所示,该装置还可以包括:第二提示模块23,用于当确定所述存储设备失效后,生成失效提示并进行提示。
[0173] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0174] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0175] 在本发明另一实施例中,还提供一种存储设备,如图10所示,该存储设备可以包括:处理器100和存储器200。
[0176] 其中,所述存储器200内存储有所述处理器100能够执行的操作指令,以使所述处理器100执行以下步骤:
[0177] 获取存储设备的累计失效数据块数量,以及,与所述累计失效数据块数量对应的累计擦写次数;
[0178] 判断所述累计失效数据块数量是否大于预设失效数据块限值;
[0179] 当所述累计失效数据块数量大于预设失效数据块限值时,利用所述累计擦写次数以及所述累计失效数据块数量确定与所述存储设备对应的预测模型;
[0180] 利用所述预测模型预测所述存储设备的擦写次数阈值。
[0181] 另外,所述存储器内200还存储有所述处理器100能够执行的操作指令,以使所述处理器100执行以下步骤:
[0182] 判断所述存储设备的累计擦写次数与所述擦写次数阈值的比值是否大于预设比值;
[0183] 当所述累计擦写次数与所述擦写次数阈值的比值大于预设比值时,确定所述存储设备预失效。
[0184] 本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0185] 以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。