一种基于决策树算法的闪存寿命预测方法及装置与流程

文档序号:17774828发布日期:2019-05-28 19:55阅读:199来源:国知局
一种基于决策树算法的闪存寿命预测方法及装置与流程

本发明涉及闪存寿命预测技术领域,尤其是涉及一种基于决策树算法的闪存寿命预测方法及装置。



背景技术:

存储器,是现代信息技术中用于保存信息的记忆设备。在电子设备的运算过程中,输入的原始数据、计算机程序、中间运行结果和最终运行结果都会保存在存储器里,是现代信息技术发展的核心部件之一。目前,市场上的存储器主要分为:易失性存储器和非易失性存储器。闪存是一种非易失性存储器,它能够在掉电后长时间保存数据,并且有着数据传输速度快、生产成本低、存储容量大等优点,所以被广泛应用于电子设备之中。

在现有的闪存结构下,由于半导体制造工艺的影响,闪存内部的单元会随着擦除写入次数的增加而导致氧化层退化,从而使得该存储芯片在存储的过程中出现错误,并最终导致闪存失效。因此,测试确定闪存的寿命在闪存生产、使用过程中有着重要的意义。

预测闪存的剩余使用寿命,可以让闪存存储设备使用者在使用设备前或者使用设备期间了解存储器的损耗状态,避免因存储器单元失效而造成的数据流失。同时,存储器用户还可根据预测得到的闪存剩余寿命信息,改变存储数据策略有效利用闪存保存数据。



技术实现要素:

本发明针对现有技术中存在的技术问题,提供一种基于决策树算法的闪存寿命预测方法及装置,测量闪存的一种特征量或几种特征量的组合,对所有特征量或组合中部分特征量进行数学运算,将运算结果或测量结果或运算结果和测量结果的组合输入到决策树算法中,由决策树算法计算得到闪存寿命的预测值。

本发明解决上述技术问题的技术方案如下:

第一方面,本发明提供一种基于决策树算法的闪存寿命预测方法,包括以下步骤:

获取待预测闪存的闪存特征量,所述闪存特征量为基于决策树算法的闪存寿命预测模型的节点类型所对应的特征量;

将所述闪存特征量输入基于决策树算法的闪存寿命预测模型,计算得到闪存的寿命预测值。

进一步的,所述的闪存特征量包括通过闪存操作直接采集的闪存物理信息或者对所述闪存物理信息进行运算操作获取的运算处理值。

进一步的,所述通过闪存操作直接采集的闪存物理信息至少包括以下物理信息中的一种或多种:

闪存芯片的编程时间、读取时间、擦除时间、电流、芯片功耗、阈值电压分布、存储块编号、存储页号、闪存芯片当前经历过的编程/擦除周期数、条件错误页数、条件错误块数、错误比特数和错误率。

进一步的,所述的对所述闪存物理信息进行运算操作获取的运算处理值至少包括以下运算中的一种或多种:

特征量的线性运算、特征量的非线性运算、不同特征量间的线性运算、不同特征量间的非线性运算、计算不同存储页面特征量的最大值、计算不同存储页面特征量的最小值、不同存储页面特征量之间的线性运算、不同存储页面特征量之间的非线性运算、不同存储块特征量之间的线性运算、不同存储块特征量之间的非线性运算、计算不同存储块特征量的最大值和计算不同存储块特征量的最小值。

进一步的,在所述的获取待预测闪存的闪存特征量之前,该方法还包括建立基于决策树算法的闪存寿命预测模型,具体包括以下步骤:

获取样本数据,从同一制造工艺下相同类型不同批次的闪存产品集合中随机选取预定数量的闪存芯片作为测试样本;

对样本闪存进行相应的闪存操作,获取用于建立基于决策树算法的闪存寿命预测模型所需的闪存物理信息和闪存寿命信息,并设置寿命预测节点类型;

通过决策树算法处理数据建立数学模型,将所述节点类型对应的闪存特征量作为算法中数学映射关系的输入变量,闪存寿命预测值作为数学映射关系的输出变量,训练数学模型,以得到最优基于决策树算法的闪存寿命预测模型。

进一步的,所述的对样本闪存进行相应的闪存操作,获取用于建立基于决策树算法的闪存寿命预测模型所需的闪存物理信息与闪存寿命信息,包括:

步骤601,从测试样本中随机抽取样本芯片,并从每个样本闪存中随机选择存储块;

步骤602,对闪存存储块执行擦操作,并记录相关测试物理信息;

步骤603,向闪存存储块发送测试数据集合,发送完测试数据向量之后,对闪存存储块执行写操作,并保持闪存存储块中存储的数据一段时间,保存时间长短根据闪存芯片的类型确定;

步骤604,对闪存存储块执行读数据操作,将读出数据与发送的测试数据进行比较,记录并保存出错数据信息,若未出错则不保存;同时记录其他物理量;

步骤605,重复执行步骤602到步骤605的操作,记录擦写操作的次数;当操作次数达到设定值时,测试系统记录最近一次步骤602到步骤605操作中闪存存储块的相关数据;

步骤606,统计并保存闪存存储块的数据错误率信息;

步骤607,重复执行步骤605和步骤606的操作,直到闪存达到寿命极限,统计闪存的编程/擦除操作周期数。

第二方面,本发明还提供一种基于决策树算法的闪存寿命预测系统,包括

数据采集单元,所述数据采集单元与待预测闪存连接,用于获取预测所需的特征量;

寿命预测单元,所述寿命预测单元用于将采集的待预测闪存的特征量输入基于决策树算法的闪存寿命预测模型,计算得到闪存的寿命预测值。

第三方面,本发明还提供一种闪存测试设备,所述闪存测试设备通过数据交换机与上位机测试系统连接,包括测试主控板和闪存测试子板;

所述测试主控板通过fpga实现,用于进行闪存操作,采集用于建立寿命预测模型或用于寿命预测的闪存特征量;

所述闪存测试子板用于连接样本闪存或待预测闪存。

第三方面,本发明还提供一种计算机可读存储介质,所述介质中存储有用于实现本发明第一方面所述的一种基于决策树算法的闪存寿命预测方法的计算机软件程序。

本发明的有益效果是:1.本发明以目前计算机领域前沿的决策树算法技术为基础提出一种闪存寿命预测方法,与目前的技术相比,该方法的先进性在于数据的准备和训练过程是很简单的,能够非常直观的体现数据的特点。2.本发明将多种可靠性参数作为决策树算法的输入,与仅以一种参数为依据的寿命预测模型相比预测寿命值的准确度更高。3.本发明提出的基于决策树算法的闪存寿命预测方法中的决策树算法具有在相对短的时间内能够对大型数据源做出可行且效果良好的结果的优点。

附图说明

图1为本发明实施例一种基于决策树算法的闪存寿命预测方法的流程示意图。

图2为本发明实施例一种闪存测试系统的结构图。

图3为本发明实施例一种使用回归树算法建立闪存寿命预测模型的流程图。

图4为本发明实施例一种训练数据获取方式的具体实现流程图。

图5为本发明实施例一种回归树算法中分裂、分类的具体实现流程图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

图1为本发明预测闪存寿命的流程示意图,图中所示闪存寿命预测流程适用于所有闪存类型,下面以一种的闪存产品为实施例对图1进行详细的解释说明。

本实施例中,将某制造工艺下的3d多极单元nand闪存(mlcnandflash)产品作为测试对象和寿命预测对象。

如图1所示,本实施例中,本发明方法包括以下步骤:

步骤s01,从所述闪存产品集合中按照以下规则抽取样本:样本闪存为同一制造工艺下相同类型的闪存;从不同批次的芯片中随机抽取相同数量的芯片样本,以确保样本的多样性。其中,抽样的批次为随机选取,样本数量可以为被抽样批次闪存总量的百分之一。

步骤s02,将样本闪存与闪存测试系统连接开始测试收集所需的闪存物理信息与闪存寿命信息。本实施例中涉及闪存物理信息包括:闪存从开始使用到无法正常使用期间内闪存存储芯片中块的编程时间、擦除时间、阈值电压分布和错误率在编程/擦除周期增加条件下变化的数据信息(阈值电压分布为可选物理信息)。

闪存存储块编程时间的获取方式为:在闪存测试系统中设置编程时间记录模块;编程时间记录模块在闪存开始写入数据操作的同时记录经过的时钟周期在收到闪存返回数据编程完成标志后停止记录时钟周期数;编程时间值为时钟周期持续时间乘以编程时钟周期数。

闪存存储块擦除时间的获取方式与编程时间获取方式同理,由测试系统中的擦除时间记录模块记录擦除操作持续的时钟周期数,擦除时间值为时钟周期持续时间乘以擦除时钟周期数。闪存存储单元阈值电压分布的获取方式为:测试系统向闪存发送read-retry命令集逐步改变闪存的读参考电压同时读出数据根据读数据值统计阈值电压分布。

闪存存储块错误率的获取方式为:测试系统对闪存执行读数据操作从闪存中读出数据,测试系统将读出的数据与写入的测试数据进行对比统计错误数据个数,错误率为错误个数除以总的数据个数。

步骤s02中采用的闪存测试系统,其结构如图2所示,主要包括上位机测试控制系统和闪存控制模块。其中,上位机测试系统通过计算机语言编写程序系统实现;闪存控制模块通过fpga实现。

步骤s03,通过回归树算法处理数据建立数学模型,将测试得到的物理信息作为算法中数学映射关系的输入变量,闪存寿命预测值作为数学映射关系的输出变量;本实施例中以回归树算法作为建立数学模型的智能算法,本发明中所述的决策树算法不限于该算法。闪存寿命值指的是闪存产品在失效之前可以执行的编程/擦除周期数。

本实施例步骤s03中,使用回归树算法建立闪存寿命预测模型的流程如图3所示。根据图3,建立闪存寿命预测模型的具体步骤为:

(1)获取建立回归树模型所需的数据,该数据可以通过测试同款芯片获取,也可以通过使用他人对同款芯片的测试数据。

步骤(1)中,测试芯片数据的流程图4所示:

a)从闪存集合中随机抽取样本芯片,将样本闪存与测试系统连接,并从每个样本闪存中随机选择存储块。

b)通过闪存测试平台对闪存存储块执行擦操作,并记录相关测试物理量。

c)通过测试系统向闪存存储块发送测试数据集合,发送完测试数据向量之后,对闪存存储块执行写操作,并保持闪存存储块中存储的数据一段时间,保存时间长短根据闪存芯片的类型确定。

d)通过测试系统对闪存执行读数据操作,将读出数据与发送的测试数据进行比较,记录并保存出错数据信息,若未出错则不保存;同时记录其他物理量。

e)重复执行步骤(b)到步骤(d)的操作,记录擦写操作的次数;当操作次数达到设定值时,测试系统记录最近一次步骤(b)到步骤(d)操作中闪存存储块的相关数据。

f)通过测试系统测量闪存单元的阈值电压分布,记录并存储单元的阈值电压分布信息;该步骤为可选步骤,若预测对象不具有read-retry功能则测试步骤中不包括该步骤。

g)测试系统统计并保存闪存各个存储块的数据错误率信息。

h)重复(e)到(g),直到闪存到达寿命极限;测试系统统计闪存的编程/擦除操作周期数。

(2)设置寿命预测节点类型。

依据决策树的定义,步骤(2)所述的寿命预测节点类型主要包括闪存的编程时间、读取时间、擦除时间、电流、芯片功耗、阈值电压分布、存储块编号、存储页号、闪存当前经历过的编程/擦除周期数、条件错误页数、条件错误块数、错误比特数和错误率(上述特征量可以选取一个或几个以及这些特征量的变种作为关键节点)。

(3)将(1)中数据代入到回归树算法中,对回归树算法预测寿命的模型进行训练,获得一个具有较高精度的回归树算法寿命预测模型。

步骤(3)所述的高精度预测模型主要指的以回归方差最小的属性作为分裂的方案,逐层分裂得到的回归树算法预测模型。

根据决策树的定义,步骤(3)中所述的训练方式主要如图5所示:

a)根据数据相关性,选取相关度较高的物理量作为分裂节点(如编程时间)。

b)对分裂节点进行分类(例如编程时间取值范围为a-b,可以分类为a-a,a-b,…,z-b)。

c)计算该分类方式的回归方差,具体方式是

其中i为分裂节点的一个区间,i该区间内的一个点,xi是i点对应的寿命,μ是区间内所有点的寿命平均值;l代表整个节点取值区间。回归方差越小表明模型越精确。通过一些处理方式(如c4.5)对节点分类进行优化,使得回归方差小于某一阈值,以该分类方式作为该分裂节点的最终分类。

d)重复步骤a)到c),对模型继续分裂训练。直至分裂到一定层数或者回归方差小于某一阈值。

e)提取回归树算法模型。

建立闪存寿命预测模型所需要的数据处理操作均通过计算机程序实现,所使用的计算机语言不限定于某一种计算机语言。

步骤s04,使用步骤s02中的闪存测试平台测量待预测闪存的相应输入物理信息,作为寿命预测模型的输入变量,计算寿命预测模型的输出值,预测目标闪存产品的剩余寿命值。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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