一种存储装置的健康状态预测方法及系统与流程

文档序号:20699912发布日期:2020-05-12 15:32阅读:133来源:国知局
一种存储装置的健康状态预测方法及系统与流程

本发明涉及存储技术领域,尤其涉及一种存储装置的健康状态预测方法及系统。



背景技术:

在诸如固态硬盘等一些nandflash存储设备使用中,坏块问题是不可避免的。比如,一些数据块反复使用以后,无法有效贮存电子;一些数据块的存储单元由于隧道氧化层有电子残留,使得读取的数据错误率超出纠错能力范围。而如何及时或提前发现坏块或是风险高的发生区域,以避免数据丢失,在业界还没有有效的解决方法。

现有技术中,一般通过经验值来指定一个或多个数据块的特征值为监测指标,并通过设置阈值来判断数据块的健康状态。如:很多产品会把擦写次数(p/ecycles)和原始位错误率(rber)作为监测指标,并指定对应的阈值(如擦写7000次和原始位错误率≤10-5)判断数据块的健康状态,当擦写次数或和原始位错误率超出对应阈值时,将不再继续使用,反之,则认为数据块为健康状态,继续使用。

但实际应用中,坏块的发生情况是很复杂的,与每块盘、每片区域的具体使用情况密切相关——比如,有的数据块虽然读写次数比较低,但是坏块的风险非常高;有的数据块虽然读写次数超过设定阈值,但是依然可以继续使用。同时,坏块的发生是有区域特性的,当一个区域内出现坏块时,同一区域内相邻块成为坏块的几率也会升高,故现有技术中通过简单设置阈值的方法来检测数据块的健康状态,是不可靠的。



技术实现要素:

本发明实施例提供了一种存储装置的健康状态预测方法及系统,用于通过建立健康状态预测模型来对存储装置中存储单元的健康状态进行预测,以提升存储单元健康状态获取的便捷性及可靠性。

本申请实施例第一方面提供了一种存储装置的健康状态预测方法,所述存储装置包括至少一个存储单元,所述方法包括:

将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理页或连续相邻的部分物理页;

当所述存储单元为所述物理页或所述连续相邻的部分物理页时,所述将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,包括:

以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立所述物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);

其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元中所包含面的个数,q为当前面在其逻辑存储单元中的面号。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理块或连续相邻的部分物理块;

当所述存储单元为所述物理块或连续相邻的部分物理块时,所述将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,包括:

以物理块号或连续相邻的物理块号为x轴,面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:面或连续相邻的部分面;

当所述存储单元为所述面或连续相邻的部分面时,所述将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,包括:

以面号或连续相邻的部分面号为x轴,逻辑单元号为y轴,建立所述面或连续相邻的部分面在所述闪存芯片中的位置坐标(x,y)。

优选的,所述第一标签值及所述第二标签值通过第一公式、第二公式和第三公式进行计算:

所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

优选的,所述目标检测算法包括ann人工神经网络算法和cnn卷积神经网络算法,其中,所述cnn卷积神经网络算法包括:r-cnn卷积神经网络算法、fastr-cnn卷积神经网络算法、fasterr-cnn卷积神经网络算法及yolo算法中的至少一种。

优选的,当所述目标检测算法为所述fasterr-cnn卷积神经网络算法时,所述训练过程包括卷积层convolutionlayers阶段、rpn区域生成网络阶段、roipooling目标区域池化阶段和classification分类阶段。

优选的,所述采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型,包括:

定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

优选的,所述采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型,还包括:

根据所述每个不健康存储区域的第一位置信息和所述部分健康存储区域的第二位置信息,检测所述目标检测框的准确率;

根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

优选的,所述采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型,还包括:

当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

优选的,所述方法还包括:

利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测。

优选的,所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

本申请实施例第二方面提供了一种存储装置的健康状态预测系统,所述存储装置包括至少一个存储单元,所述系统包括:

映射单元,用于将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

第一获取单元,用于获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

第二获取单元,用于获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

第三获取单元,用于获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

模型建立单元,用于采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理页或连续相邻的部分物理页;

所述映射单元具体用于:

以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立所述物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);

其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元中所包含面的个数,q为当前面在其逻辑单元中的面号。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理块或连续相邻的部分物理块;

所述映射单元具体用于:

以物理块号或连续相邻的物理块号为x轴,面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:面或连续相邻的部分面;

所述映射单元具体用于:

以面号或连续相邻的部分面号为x轴,逻辑单元号为y轴,建立所述面或连续相邻的部分面在所述闪存芯片中的位置坐标(x,y)。

优选的,所述系统还包括:

计算单元,用于通过第一公式、第二公式和第三公式计算所述第一标签值及所述第二标签值:

所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

优选的,所述目标检测算法包括ann人工神经网络算法和cnn卷积神经网络算法,其中,所述cnn卷积神经网络算法包括:r-cnn卷积神经网络算法、fastr-cnn卷积神经网络算法、fasterr-cnn卷积神经网络算法及yolo算法中的至少一种。

优选的,当所述目标检测算法为所述fasterr-cnn卷积神经网络算法时,所述训练过程包括卷积层convolutionlayers阶段、rpn区域生成网络阶段、roipooling目标区域池化阶段和classification分类阶段。

优选的,所述模型建立单元,具体用于:

定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

优选的,所述模型建立单元,还用于:

根据所述每个不健康存储区域的第一位置信息和所述部分健康存储区域的第二位置信息,检测所述目标检测框的准确率;

根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

优选的,所述模型建立单元,还用于:

当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

优选的,所述系统还包括:

预测单元,用于利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测。

优选的,所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

本申请实施例第三方面提供了一种存储装置,包括存储装置控制器和多个闪存,其中,所述存储装置控制器包括本申请实施例第二方面所述的存储装置的健康状态预测系统。

本申请实施例第四方面提供了一种计算机装置,包括处理器,所述处理器在执行存储于存储器上计算机程序时,用于执行本申请实施例第一方面所述的存储装置的健康状态预测方法。

本申请实施例第五方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序在处理存储于存储器上的计算机程序时,用于执行本申请实施例第一方面所述的存储装置的健康状态预测方法。

从以上技术方案可以看出,本发明实施例具有以下优点:

本申请实施例中,将将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。因为本实施例中通过采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,及所述部分健康存储区域的第二位置信息及第二标签值进行训练,来建立健康状态预测模型,可以实时预测存储单元健康状态,从而提升了获取存储单元健康状态的便捷性及可靠性。

附图说明

图1为本申请实施例中闪存设备的结构组成示意图;

图2为本申请实施例中一种存储装置的健康状态预测方法的一个实施例示意图;

图3为本申请实施例中图2实施例中步骤201的细化步骤;

图4为本申请实施例中存储单元为物理页或连续相邻的部分物理页时,存储单元在闪存芯片中的位置坐标(x,y,z)的示意图;

图5为本申请实施例中存储单元为物理块或连续相邻的部分物理块时,存储单元在闪存芯片中的位置坐标(x,y,z)的示意图;

图6为本申请实施例中存储单元为面或连续相邻的部分面时,存储单元闪存芯片中的位置坐标(x,y)的示意图;

图7为本申请实施例中一种存储装置的健康状态预测方法的另一个实施例示意图;

图8为本申请实施例中图2实施例中步骤205的细化步骤;

图9为本申请实施例中classification分类阶段的过程示意图;

图10为本申请实施例中一种存储装置的健康状态预测方法的另一个实施例示意图;

图11为本申请实施例中一种存储装置的健康状态预测方法的另一个实施例示意图;

图12为本申请实施例中一种存储装置的健康状态预测方法的另一个实施例示意图;

图13为本申请实施例中一种存储装置的健康状态预测系统的一个实施例示意图;

图14为本申请实施例中一种存储装置的一个实施例示意图。

具体实施方式

本发明实施例提供了一种存储装置的健康状态预测方法及系统,用于通过建立健康状态预测模型来对存储装置中存储单元的健康状态进行预测,以提升获取存储单元健康状态的便捷性及可靠性。

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

基于现有技术中,通过经验值来设定某些监测指标及监测阈值来判断数据块健康状态,而带来的不可靠问题,本申请提出了一种存储装置的健康状态预测方法及系统,用于提升数据块健康状态获取的便捷性及可靠性。

为方便说明,先对本申请中的存储装置进行描述,本申请中的存储装置主要用于描述固态硬盘等一些nandflash存储设备,容易理解的是,nandflash存储设备是由一些逻辑单元die组成,die是接收和执行闪存命令的基本单元,每个逻辑单元die由面plane组成,每个面plane由物理块blcok组成,每个物理块blcok由物理页page组成,每个wordline(wl字线)对应着若干个page,需要说明的是,nand闪存包括slc(singlelevelcell)、mlc(multiplelevelcell)和tlc(triplelevelcell)三种类型,对slc来说,一个字线包括一个物理页,对mlc来说,一个字线包括两个物理页,对tlc来说,一个字线包括三个物理页;wordline由成千上万个存储单元构成,其中,图1给出了nandflash存储设备的结构组成图。

下面对本申请实施例中的一种存储装置的健康状态预测方法进行详细描述,请参阅图2,本申请实施例中一种存储装置的健康状态预测方法的一个实施例,包括:

201、将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

每个存储装置,如nandflash存储设备,都至少包含一个存储单元,其中,存储单元可以是以单个的物理页page为单位,也可以是以连续相邻的多个物理页pages为单位,还可以是以单个物理块blcok、连续相邻的多个物理块blcoks或单个面plane、连续相邻的多个面planes为单位,此处对存储单元的单位不做具体限制。

为了建立健康状态预测模型,需要将每个存储单元在存储装置中的位置信息,映射为多维空间中的位置坐标,以实现通过位置坐标对存储单元位置信息的数学运算,其中,每个存储单元的位置信息与位置坐标之间必须是一一对应的。

需要说明的是,当存储单元所选取的最小单位不同,所映射的空间和坐标也有所不同,对于具体的映射关系和映射函数,将在下面的实施例中详细描述,此处不再赘述。

202、获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

获取到每个存储单元的位置坐标后,还需要进一步获取全部存储单元的特征值,其中,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种。

203、获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

在步骤201中,将每个存储单元的位置信息映射为位置坐标后,因为在训练过程中,提前是已知存储单元的健康状态的,即提前已知哪些存储单元是健康的,哪些是不健康的,故可以读取每个不健康存储区域的第一位置信息的及第一标签值,其中,每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标,当然,若不健康存储区域包含多个不健康存储单元时,第一位置信息是由多个第一位置坐标组成的区域坐标。

具体的,当一个不健康存储区域只包含一个不健康存储单元时,则该不健康存储区域的第一位置信息,即为该不健康存储单元的第一位置坐标,而当一个不健康存储区域包含多个不健康存储单元,也即该不健康存储区域为长方形(正方形)或长方体(正方体)时,则第一位置信息为长方形(正方形)或长方体(正方体)的面对角线或体对角线上两个顶点的第一位置坐标。

其中,第一标签值是用于指示对应存储区域的健康状态的,关于第一标签值的计算过程在下面的实施例中的详细描述,此处不再赘述。

204、获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

在建立健康状态预测模型的过程中,还需要获取部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包含一个健康存储单元的第二位置坐标,当然若健康存储区域包含多个健康存储单元时,第二位置信息是由多个第二位置坐标组成的区域坐标。

具体的,当一个健康存储区域只包含一个健康存储单元时,则该健康存储区域的第一位置信息,即为该健康存储单元的第一位置坐标,而当一个健康存储区域包含多个健康存储单元,也即该健康存储区域为长方形(正方形)或长方体(正方体)时,则第一位置信息为长方形(正方形)或长方体(正方体)的面对角线或体对角线上两个顶点的第一位置坐标。

而第二标签值也是用于指示对应存储区域的健康状态的,关于第二标签值的计算过程也在下面的实施例中进行描述。

需要说明的是,此处的部分健康存储区域的第二位置信息及第二标签值,指的是部分健康存储区域中,每个健康存储区域的对应的第二位置信息和第二标签值。

进一步的,在建立健康状态预测模型的过程中,选取多少个健康存储区域进行训练,主要取决于训练过程中的采样比例,如可以按照健康存储区域和不健康存储区域以1:1的比例进行采样,也可以按照健康存储区域和不健康存储区域以1:2,或1:5,或1:10的比例进行选取,此处不做具体限制。

205、采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

得到全部存储单元的特征值,每个不健康存储区域的第一位置信息及第一标签值,部分健康存储区域的第二位置信息和第二标签值后,采用目标检测算法对上述各个数值进行训练,从而建立健康状态预测模型。

至于具体的训练过程,即建立健康状态预测模型的过程,将在下面的实施例中进行描述,此处不再赘述。

本申请实施例中,将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。因为本实施例中通过采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,及所述部分健康存储区别的第二位置信息及第二标签值进行训练,来建立健康状态预测模型,从而提升了存储单元健康状态获取的便捷性及可靠性。

基于图2所述的实施例,下面就以不同存储单位为存储单元时,存储单元的位置信息与位置坐标之间的映射关系进行描述,请参阅图3,图3为图2实施例中步骤201的细化步骤:

301、当存储装置为闪存芯片,且存储单元为物理页或连续相邻的部分物理页时,以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元die中所包含面的个数,q为当前面在其逻辑单元中的面号。

当存储装置为闪存芯片,且存储单元为物理页或连续相邻的部分物理页时,在建立映射关系的过程中,可以以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z)。

其中,当以连续相邻的部分物理页号为x轴时,此处的物理页号以相邻的部分物理页所组成的物理页的集合为新的物理页号,假设以相邻的2个物理页为x轴,则此处的物理页号即为相邻的2个物理页的集合所组成的新物理页号,如1号物理页为物理页1和物理页2所组成的集合,2号物理页为物理页3和物理页4所组成的集合,依次类推。

需要说明的是,为了将闪存芯片中的每个物理页或连续相邻的部分物理页一一映射到三维空间中,可以通过将逻辑单元die和面合成为一个物理量,如z轴通过以下函数关系实现两个物理量的组合,如z=d*p+q,其中,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元die中所包含面的个数,q为当前面在其逻辑单元中的面号。

需要说明的是,上述函数关系只是实现逻辑单元和面组合的一种函数关系,只要函数关系可以实现多个逻辑单元中每个面与面号之间的一一对应即可,此处对函数关系不做具体限制。为方便说明,图4给出了存储单元为物理页或连续相邻的部分物理页时,存储单元在所述闪存芯片中的位置坐标(x,y,z)的示意图。

302、当存储装置为闪存芯片,且存储单元为物理块或连续相邻的部分物理块时,以物理块号或连续相邻的部分物理块号为x轴,所述面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z);

当以物理块或连续相邻的部分物理块为最小单位的存储单元时,则在建立映射关系的过程中,以物理块号或连续相邻的部分物理块号为x轴,所述面号为y轴,逻辑单元号为z轴,建立所述物理块或部分连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

同理,当以连续相邻的部分物理块号为x轴时,此处的物理块号以相邻的部分物理块所组成的物理块的集合为新的物理块号,假设以相邻的2个物理块为x轴,则此处的物理块号即为相邻的2个物理块的集合所组成的新物理块号,如1号物理块为物理块1和物理块2所组成的集合,2号物理块为物理块3和物理块4所组成的集合,依次类推。

为方便说明,图5给出了存储单元为物理块或连续相邻的部分物理块时,存储单元在所述闪存芯片中的位置坐标(x,y,z)的示意图。

303、当存储装置为闪存芯片,且存储单元为面或连续相邻的部分面时,以所述面号为x轴,所述逻辑单元号为y轴,建立所述面在所述闪存芯片中的位置坐标(x,y)。

当以面或连续相邻的部分面为最小单位的存储单元时,则在建立映射关系的过程中,以面号为x轴,所述逻辑单元号为y轴,以建立面或连续相邻的面在所述闪存芯片中的位置坐标(x,y)。

为方便说明,图6给出了存储单元为面或连续相邻的部分面时,存储单元所述闪存芯片中的位置坐标(x,y)的示意图。

本申请实施例中,对以不同存储单元为存储单位时,存储单元的位置信息与位置坐标之间的映射关系进行详细描述,提升了本申请实施例的可实施性。

基于图2所述的实施例,下面就第一标签值和第二标签值的计算过程进行描述,请参阅图7,本申请实施例中一种存储装置的健康状态预测方法的另一个实施例,包括:

701、根据第一公式、第二公式和第三公式计算所述第一标签值和所述第二标签值,其中,所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

为了计算不健康存储区域和健康存储区域对应的第一标签值和第二标签值,可以先通过第一公式计算出不健康物理页和健康物理页对应的健康值,然后根据第二公式从存储区域包含的多个物理页的健康值中取最小值作为该存储区域的健康值,最后根据第三公式计算出不健康存储区域和健康存储区域对应的标签值。

需要说明的是,在根据第一公式计算健康值时,c可以根据实际情况进行自定义设置,如定义100-500之间的任一数值,当q<c时,即w<1时,或0<l≤1时,则认定对应的物理页为不健康物理页;当w≥1时,为了避免标签值出现负数的情况,当w>1时,也令w=1,也即l=0时,则认定对应的物理页为健康物理页。

在计算不健康或健康存储区域的标签值时,无论不健康或健康存储区域是由多个物理页、物理块、多个物理块、面或多个面而组成的,在计算对应不健康或健康存储区域的标签值时,都可以先计算出不健康或健康存储区域中每个物理页的健康值,并以多个物理页中健康值的最小值minwp作为该存储区域对应的健康值,即假设存储区域中每个物理页的健康值为wp,则该存储区域对应的健康值w=minwp,而该存储区域对应的标签值l=1-w,其中,w=minwp。

本申请实施例中对不健康存储区域和健康存储区域所对应的第一标签值和第二标签值的计算过程过程做了详细描述,进一步提升了本申请实施例的可实施性。

基于图2所述的实施例,目标检测算法包括ann人工神经网络算法和cnn卷积神经网络算法,其中,所述cnn卷积神经网络算法包括:r-cnn卷积神经网络算法、fastr-cnn卷积神经网络算法、fasterr-cnn卷积神经网络算法及yolo算法中的至少一种。

为了详细描述图2实施例中的步骤205,下面以fasterr-cnn卷积神经网络算法为例,对健康状态预测模型的建立过程做详细描述,请参阅图8,图8为图2实施例中步骤205的细化步骤:

因为fasterr-cnn卷积神经网络算法的训练过程包括卷积层convolutionlayers阶段、rpn区域生成网络阶段、roipooling目标区域池化阶段和classification分类阶段,下面就每个阶段的训练过程做详细描述:

801、定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

因为每个存储单元的特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种,故可以采用上述任一个或多个特征值的组合作为每个存储单元的特征值进行计算,因为每个闪存芯片都包括多个存储单元,故在计算的过程中,以多个存储单元的特征值所组成的矩阵进行运算。

在convolutionlayers阶段,一般包括卷积、激活及池化三种操作。其中,卷积操作需要先定义初始化的初始化权重卷积矩阵w和初始化偏移矩阵b,假设多个存储单元的特征值所组成的矩阵为x,则卷积运算即为y=wx+b。而在卷积运算的过程中,一般需要执行多层卷积,如10层或13层卷积运算,甚至更多,而在每层的卷积运算过程中,都需要定义一定数量(一般为正整数个,如32/64/128个)的初始化权重卷积矩阵w和初始化偏移矩阵b。

进一步的,激活操作是将每层卷积层的输出结果做一次非线性映射,如采用relu函数对每层卷积层的输出结果做非线性映射,其中,采用relu函数做非线性映射的过程在现有技术中都有详细描述,此处不再赘述。

进一步的,池化操作也称之为下采样操作,主要用于特征降维,压缩数据和参数的数量,以减小过拟合,同时提升模型的容错性,其中,池化操作包括最小值池化、平均值池化及最大值池化,且关于池化的具体过程也在现有技术中都有详细描述,此处不再赘述。

当每个存储单元的特征值在执行了convolutionlayers阶段的运算,即执行了卷积、激活及池化三种操作后,生成每个存储单元的特征图。

802、在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在rpn区域生成网络阶段,先将闪存芯片所在空间划分为不同的区域,其中,当以不同的存储单元为最小存储单位时,闪存芯片所在的空间可以视为三维空间或二维空间,如当以物理页、连续相邻的部分物理页、物理块或连续相邻的部分物理块为最小存储单元时,则闪存芯片映射为三维空间,而以面或连续相邻的部分面为最小存储单元时,则闪存芯片映射为二维空间。而对空间的区域划分,可以根据实际情况执行n*n的划分,此处不再具体限制。

当划分为不同的多个区域后,利用softmax函数计算每个区域中每个存储单元的不健康概率,并获取每个区域中每个不健康存储单元的位置坐标,根据位置坐标生成不健康存储单元的目标检测框。其中,该阶段主要是完成目标定位的功能。

803、在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在步骤801和802中,得到多个存储单元的特征图及不健康存储单元的目标检测框后,在所述roipooling目标区域池化阶段,利用所述目标检测框对上述特征图进行框定,并根据框定后的特征图执行步骤804。

804、在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

当用目标检测框框定部分存储单元的特征图后,在classification分类阶段,定义初始化的全连接层矩阵,利用初始化的全连接层矩阵和softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

具体的,利用boundingboxregression边框回归计算精确的目标检测框的过程可以理解为当多个目标检测框重合时,如何划分精确目标检测框的过程,即把重合的目标检测框划分为一个目标检测框还是多个目标检测框的过程。为方便理解,图9给出了classification分类阶段的过程示意图。

至此,已经完成了对存储单元特征值的单次训练过程,而上述训练过程,可以理解为不断对初始化的初始化权重卷积矩阵、初始化偏移矩阵和初始化全连接层矩阵进行更新的过程。

而训练的截止条件,也即将初始化权重卷积矩阵、初始化偏移矩阵和初始化全连接层矩阵更新为合适的数值,使得步骤804中对框定区域属于不健康状态的概率值,及精确的目标检测框的预测达到预设的准确率。

本申请实施例中,对存储单元特征值执行训练,得到不健康存储单元的目标健康框及概率值,和得到健康存储单元的目标检测框及概率值的训练过程,也即对正样本(不健康存储单元)和负样本(健康存储单元)的训练过程做了详细描述,提升了本申请实施例的可实施性。

基于图8所述的实施例,在步骤804之后,还可以执行以下步骤,以对框定区域属于不健康状态的概率值,及精确的目标检测框的准确率进行检测,具体请参阅图10,本申请实施例中一种存储装置的健康状态预测方法的另一个实施例,包括:

1001、根据所述每个不健康存储区域的第一位置信息和所述部分健康存储区域的第二位置信息,检测所述目标检测框的准确率;

步骤804中得到精确的目标检测框后,为了对目标检测框的位置的准确率进行检验,可以根据预已知的每个不健康存储区域的第一位置信息及部分健康存储区域的第二位置信息,检测目标检测框的准确率。

如当目标检测框的区域刚好是不健康存储区域,或与不健康存储区域的位置误差在预设的范围内,则表明目标检测框的准确率符合需求,若目标检测框的区域与不健康存储区域的位置误差超出预设的范围,则表明目标检测框的准确率不符合需求。

1002、根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

在步骤804中,计算得到框定区域属于不健康状态的概率值后,可以根据每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值检测上述概率值的准确率。

具体的,根据图7所述的实施例可知,不健康存储区域的标签值0<l≤1,而健康存储区域的标签值l=0,故不健康存储区域的标签值也可以视为不健康存储区域的概率值,故可以根据每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值检测上述框定区域属于不健康状态的概率值的准确率。

本申请实施例中,对健康状态预测模型的检测过程做了详细描述,从而提升了健康状态预测模型的准确性。

基于图10所述的实施例,当检测到不健康状态的概率值,及精确的目标检测框的准确率较低时,还可以执行以下步骤,以对健康状态预测模型进行修改,以得到更准确的健康状态预测模型,具体请参阅图11,本申请实施例中一种存储装置的健康状态预测方法的另一个实施例,包括:

1101、当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

在图10所述的实施例中,当检测到存储单元不健康存储状态的概率值和/或目标检测框的准确率较低时,其中,所述的“较低”是指对存储区域不健康状态的预测概率值和预测目标检测框,与真实概率值和真实目标检测框的误差大于预设范围,如设定的准确率都为80%,而预测的概率值和预测的目标检测框的准确率都为50%,则需要执行图11的实施例步骤,以对健康状态预测模型进行修正。

具体的,修正过程可以是:根据loss损失函数计算不健康状态概率值与第一标签值的误差,运用反向传播神经网络原理,计算loss损失函数相对初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而达到修正所述健康状态预测模型的目的。而具体的,根据loss函数函数计算误差,及计算偏导数的过程,在现有技术中都有详细描述,此处不再赘述。

本申请实施例中,对健康状态预测模型的修改过程做了详细描述,进一步提升了健康状态预测模型的准确率。

基于图11所述的实施例,当完成对健康状态预测模型的修正后,可以进一步利用该模型对存储单元的健康状态进行预测,具体请参阅图12,本申请实施例中一种存储装置的健康状态预测方法的另一个实施例,包括:

1201、利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测,其中,所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

当完成对健康状态预测模型的修正后,可以利用该健康状态预测模型对待检测存储装置中的不健康存储单元的目标检测框及概率值进行预测,其中,在利用该模型执行预测时,输入值为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值。其中,其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

本申请实施例中,对利用健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值的预测过程,做了详细描述,提升了本申请实施例的可实施性。

上面对本申请实施例中的存储装置的健康状态预测方法做了描述,下面接着对本申请实施例中存储装置的健康状态预测系统进行描述,请参阅图13,本申请实施例中存储装置的健康状态预测系统的一个实施例,包括:

映射单元1301,用于将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

第一获取单元1302,用于获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

第二获取单元1303,用于获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

第三获取单元1304,用于获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

模型建立单元1305,用于采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理页或连续相邻的部分物理页;

所述映射单元1301具体用于:

以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立所述物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);

其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元中所包含面的个数,q为当前面在其逻辑单元中的面号。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理块或连续相邻的部分物理块;

所述映射单元1301具体用于:

以物理块号或连续相邻的物理块号为x轴,面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:面或连续相邻的部分面;

所述映射单元具体1301用于:

以面号或连续相邻的部分面号为x轴,逻辑单元号为y轴,建立所述面或连续相邻的部分面在所述闪存芯片中的位置坐标(x,y)。

优选的,所述系统还包括:

计算单元1306,用于通过第一公式、第二公式和第三公式计算所述第一标签值及所述第二标签值:

所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

优选的,所述目标检测算法包括ann人工神经网络算法和cnn卷积神经网络算法,其中,所述cnn卷积神经网络算法包括:r-cnn卷积神经网络算法、fastr-cnn卷积神经网络算法、fasterr-cnn卷积神经网络算法及yolo算法中的至少一种。

优选的,当所述目标检测算法为所述fasterr-cnn卷积神经网络算法时,所述训练过程包括卷积层convolutionlayers阶段、rpn区域生成网络阶段、roipooling目标区域池化阶段和classification分类阶段。

优选的,所述模型建立单元1205,具体用于:

定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

优选的,所述模型建立单元1305,还用于:

根据所述每个不健康存储区域的第一位置信息和所述部分健康存储单元的第二位置信息,检测所述目标检测框的准确率;

根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

优选的,所述模型建立单元1305,还用于:

当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

优选的,所述系统还包括:

预测单元1307,用于利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测。

优选的,所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

需要说明的是,上述各单元的作用与图1至图12中描述的类似,此处不再赘述。

本申请实施例中,通过映射单元1301将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;通过第一获取单元1302获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;通过第二获取单元1303获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;通过第三获取单元1304获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;通过模型建立单元1305采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。因为本实施例中通过采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,及所述部分健康存储区域的第二位置信息及第二标签值进行训练,来建立健康状态预测模型,从而提升了获取存储单元健康状态的便捷性及可靠性。

本申请实施例还提供了一种存储装置,请参阅图14,具体包括存储装置控制器和多个闪存,其中,所述存储装置控制器包括如图13实施例中所述的存储装置的健康状态预测系统,而存储装置的健康状态预测系统的具体工作原理可以参阅图2至图12所述的实施例,此处不再赘述。

上面从模块化功能实体的角度对本发明实施例中的存储装置的健康状态预测系统进行了描述,下面从硬件处理的角度对本发明实施例中的计算机装置进行描述:

该计算机装置用于实现存储装置的健康状态预测系统的功能,本发明实施例中计算机装置一个实施例包括:

处理器以及存储器;

存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序时,可以实现如下步骤:

将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理页或连续相邻的部分物理页;

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立所述物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);

其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元中所包含面的个数,q为当前面在其逻辑单元中的面号。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理块或连续相邻的部分物理块;

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

以物理块号或连续相邻的物理块号为x轴,面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:面或连续相邻的部分面;

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

以面号或连续相邻的部分面号为x轴,逻辑单元号为y轴,建立所述面或连续相邻的部分面在所述闪存芯片中的位置坐标(x,y)。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

通过第一公式、第二公式和第三公式计算所述第一标签值及所述第二标签值:

所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

根据所述每个不健康存储区域的第一位置信息和所述部分健康存储区域的第二位置信息,检测所述目标检测框的准确率;

根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测。

在本发明的一些实施例中,处理器,还可以用于实现如下步骤:

所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

可以理解的是,上述说明的计算机装置中的处理器执行所述计算机程序时,也可以实现上述对应的各装置实施例中各单元的功能,此处不再赘述。示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述存储装置的健康状态预测系统中的执行过程。例如,所述计算机程序可以被分割成上述存储装置的健康状态预测系统中的各单元,各单元可以实现如上述相应存储装置的健康状态预测系统说明的具体功能。

所述计算机装置可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机装置可包括但不仅限于处理器、存储器。本领域技术人员可以理解,处理器、存储器仅仅是计算机装置的示例,并不构成对计算机装置的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述计算机装置还可以包括输入输出设备、网络接入设备、总线等。

所述处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。

所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

本发明还提供了一种计算机可读存储介质,该计算机可读存储介质用于实现存储装置的健康状态预测系统的功能,其上存储有计算机程序,计算机程序被处理器执行时,处理器,可以用于执行如下步骤:

将每个存储单元在所述存储装置中的位置信息,映射为多维空间中的位置坐标,所述位置信息与所述位置坐标之间一一对应;

获取全部存储单元的特征值,所述特征值包括原始错误比特率rber、不可修复的错误比特率uber、擦写次数p/ecycle及上电时间中的至少一种;

获取所述全部存储单元中每个不健康存储区域的第一位置信息及第一标签值,所述每个不健康存储区域的第一位置信息至少包括一个不健康存储单元的第一位置坐标;

获取所述全部存储单元中部分健康存储区域的第二位置信息及第二标签值,其中,每个健康存储区域的第二位置信息至少包括一个健康存储单元的第二位置坐标,所述第一标签值和所述第二标签值分别用于指示对应存储区域的健康状态;

采用目标检测算法对所述全部存储单元的特征值、所述每个不健康存储区域的第一位置信息及第一标签值,以及所述部分健康存储区域的第二位置信息及第二标签值进行训练,以建立健康状态预测模型。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理页或连续相邻的部分物理页;

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

以物理页号或连续相邻的部分物理页号为x轴,物理块号为y轴,面号为z轴,建立所述物理页或连续相邻的部分物理页在所述闪存芯片中的位置坐标(x,y,z);

其中,所述z=d*p+q,d为所述闪存芯片中逻辑单元号,p为每个逻辑单元中所包含面的个数,q为当前面在其逻辑单元中的面号。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:物理块或连续相邻的部分物理块;

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

以物理块号或连续相邻的物理块号为x轴,面号为y轴,逻辑单元号为z轴,建立所述物理块或连续相邻的部分物理块在所述闪存芯片中的位置坐标(x,y,z)。

优选的,当所述存储装置为闪存芯片时,所述存储单元包括:面或连续相邻的部分面;

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

以面号或连续相邻的部分面号为x轴,逻辑单元号为y轴,建立所述面或连续相邻的部分面在所述闪存芯片中的位置坐标(x,y)。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

通过第一公式、第二公式和第三公式计算所述第一标签值及所述第二标签值:

所述第一公式为:健康值其中,wp表示每个物理页的健康值,q表示每个物理页在失效前的可擦写次数,c表示预设的擦写次数阈值;

所述第二公式为:w=minwp,其中,w表示存储区域的健康值;

所述第三公式为:标签值l=1-w。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

定义初始化权重卷积矩阵和初始化偏移矩阵,对所述每个存储单元的特征值执行所述convolutionlayers阶段的运算,以得到特征图;

在所述rpn区域生成网络阶段,先将所述闪存芯片所在的空间划分为不同的区域,利用softmax函数计算每个区域中每个存储单元的不健康概率,获取所述每个区域中每个不健康存储单元的位置坐标,根据所述位置坐标生成不健康存储单元的目标检测框;

在所述roipooling目标区域池化阶段,利用所述目标检测框对所述特征图进行框定;

在所述classification分类阶段,定义初始化的全连接层矩阵,利用所述初始化的全连接层矩阵和所述softmax函数计算框定区域属于不健康状态的概率值,同时利用boundingboxregression边框回归计算精确的目标检测框。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

根据所述每个不健康存储区域的第一位置信息和所述部分健康存储区域的第二位置信息,检测所述目标检测框的准确率;

根据所述每个不健康存储区域的第一标签值和所述部分健康存储区域的第二标签值,检测所述不健康状态概率值的准确率。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

当所述目标检测框的准确率和/或所述不健康状态概率值的准确率较低时,根据loss损失函数计算所述不健康状态概率值与所述第一标签值的误差,运用反向传播神经网络的原理,计算loss损失函数相对所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵的偏导数,以修正所述初始化权重卷积矩阵、所述初始化偏移矩阵和所述初始化的全连接层矩阵,从而修正所述健康状态预测模型。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

利用所述健康状态预测模型对待检测存储装置中不健康存储单元的目标检测框及概率值进行预测。

在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:

所述待检测存储装置的输入为n个存储单元的特征值,输出为不健康存储单元的目标检测框及概率值;

其中,所述n=x1*x2*x3;

x1表示每个物理块中的物理页的个数,所述x2表示每个面中的物理块的个数,所述x3表示全部逻辑单元中的面的个数。

可以理解的是,所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在相应的一个计算机可读取存储介质中。基于这样的理解,本发明实现上述相应的实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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