一种阻变存储器芯片失效模型的构建方法

xiaoxiao12天前  9


本发明涉及芯片可靠性,尤其涉及一种阻变存储器芯片失效模型的构建方法。


背景技术:

1、阻变存储器(rram)是一种可适用于先进工艺节点下的嵌入式非易失性存储器(nvm),具有低功耗、高可靠性和与cmos工艺的良好兼容性等优点,在物联网终端设备上具有很强的应用价值。但是rram芯片普遍面临写入错误、读干扰、读出错误和热稳定性等问题,为rram芯片的规模应用增加了难度。在rram复杂的失效模式中,随着存储单元被连续擦写的次数增多,存在“真失效”和“假失效”两种模式。针对rram单元的失效模式构建失效模型,实现对存储单元的失效行为的预测,可以更为有效地分配存储空间,提高存储单元的利用率和存储器的可靠性。

2、目前针对rram芯片失效行为构建的模型,由于受测试周期和评价方法的限制,多采用基于单个器件的物理量变化和失效机制构建物理模型。然而,由于在系统和工艺制备中不可避免的存在噪声和缺陷,物理模型对于芯片级的失效预测没有很高的参考价值。随着机器学习和神经网络的普及,基于统计数据的芯片级rram失效模型研究已经开展。目前针对rram芯片级寿命预测的研究,只有一篇文章(iwasaki.t,ning.s,yamazawa.h,sun.c,tanakamaru.s and takeuchi.k,“machine learning prediction for 13x enduranceenhancement in reram ssd system,”ieee imw)涉及到,其构建的模型存在预测准确率不高、预测周期包含的操作次数过多等问题,并且优化方案相对复杂。可见,亟需一种阻变存储器芯片失效模型的构建方法,在芯片级实现对阻变存储器单元更为及时准确的失效预测,为预先进行存储空间分配和执行修复操作提供依据,以降低rram芯片存储单元的错误率。


技术实现思路

1、鉴于上述的分析,本发明实施例旨在提供一种阻变存储器失效模型的构建方法,用以解决现有方法构建得到的rram芯片失效模型,预测周期内操作次数过多,预测准确率不高的问题。

2、一方面,本发明实施例提供了一种阻变存储器失效模型的构建方法,包括如下步骤:

3、获取阻变存储器芯片在模拟环境下各存储单元完成预设模拟周期数读写操作的原始数据dt;

4、对原始数据进行预处理,构建得到数据结构为k×9×t的数据集d1,对数据集d1作真失效或假失效的二分类标注,得到训练数据集d2;其中k为rram芯片中存储单元的总数;t为原始数据覆盖的模拟周期数;

5、使用模型训练数据集d2对失效模型m进行训练,得到最终失效模型mtrained。

6、进一步的,所述失效模型m包括k个参数相同的lstm副本模型{m[0],m[1],……,m[k-1]};不同的副本模型用于对k个存储单元进行独立的向前推理以及误差计算。

7、进一步的,对原始数据进行预处理,得到包含九个维度的输入数据xt={fvt,srt,rrt,sft,rft,svart,rvart,svolt,rvolt},基于所述九个维度的输入数据构建所述数据集d1;

8、其中,fvt为成型电压、srt为归一化置位阻值、rrt为归一化复位阻值、sft为置位阻值的局部波动性参数、rft为复位阻值的局部波动性参数、svart为置位阻值的全局波动性参数、rvart为复位阻值的全局波动性参数、svolt为平均置位电压、rvolt为平均复位电压。

9、更进一步的,其特征在于,获取所述获取原始数据dt包括:

10、(1)对rram芯片进行成型操作,使芯片内的各个存储器单元变为导通状态,记录成型操作电压fv;

11、(2)验证成型效果,并记录每一个存储器单元的成型阻值rf以及输出结果o;

12、(3)对成型后的芯片进行置位,记录置位成功时各存储单元的阻值sr_raw和对应的置位电压svol_raw,或记录置位达到预设次数仍未成功时各存储单元的阻值sr_raw和对应的置位电压svol_raw,以及输出结果o;其中的置位成功包括一次置位成功,或经逐步置位,在未达到预设次数成功;

13、(4)对成型后的芯片进行复位,记录复位成功时各存储单元的阻值rr_raw和对应的复位电压rvol_raw,或记录复位达到预设次数仍未成功时各存储单元的阻值rr_raw和对应的复位电压rvol_raw,以及输出结果o;

14、(5)重复执行置位和复位操作,完成一个跨度内的预设循环次数n;

15、具体的,重复(3)~(4)循环,完成预设循环次数循环后,记为完成一个跨度,执行(6);

16、(6)对芯片存储器阵列进行预设次数n的重复读操作以获得计算复位阻值波动性的复位阻值样本rr;

17、(7)对芯片进行置位,记录置位成功时各存储单元的阻值rset和当前置位电压vset,或记录置位达到预设次数仍未成功时各存储单元的阻值rset和当前置位电压vset,以及输出结果o;

18、(8)重复预设次数n的读操作以获得计算置位阻值波动性的置位阻值样本rs;

19、(9)将(3)~(8)记为一个模拟周期,重复t个模拟周期,获得原始数据dt={fv,svol_raw,rvol_raw,sr_raw,rr_raw,rr,rs,rset,vset}t。

20、更进一步的,所述得到包含九个维度的输入数据xt,包括:

21、fvt中第一个时间片的取值为原始数据中的fv,其余均置为0;

22、srt由原始置位阻值sr_raw的平均值除以rram的稳定低阻rlow后得到;其中rlow为rram芯片正常工作时存储单元的低阻值;

23、rrt由原始复位阻值rr_raw的平均值除以rram的稳定高阻rhigh后得到;其中rhigh为rram芯片正常工作时存储单元的高阻值;

24、sft通过对置位阻值样本归一化后与一维边缘检测算子[-1,0,1]进行卷积求和而获得;

25、rft通过对复位阻值样本归一化后与一维边缘检测算子[-1,0,1]进行卷积求和而获得;

26、svart通过对置位阻值样本中的每个阻值归一化后求方差而获得;

27、rvart通过对复位阻值样本中的每个阻值归一化后求方差而获得;

28、svolt通过对模拟周期中一个跨度内所有记录的置位电压求均值获得;

29、rvolt通过对模拟周期中一个跨度内所有记录的复位电压求均值获得。

30、进一步的,所述真失效或假失效的二分类标注包括:

31、(1)根据第t+1个模拟周期中每一个跨度内的输出结果ot+1[i],判断该存储单元在第t+1个模拟周期的状态结果st[i];判断依据为:

32、a)当ot+1[i]中不包含置位成功或者复位成功时,状态结果st+1[i]=0,表示该存储单元在第t+1个模拟周期发生真失效;

33、b)除了a)以外的其他情况,状态结果st+1[i]=1,表示该存储单元在第t+1个模拟周期发生假失效;

34、(2)根据状态结果st+1[i],对xt[i]标注对应的标签其中上角标0和1为二维向量的索引值;标注方法为:

35、i.当状态结果st+1[i]=0时,xt[i]对应的标签ct[i]=[1,0]t;

36、ii.当状态结果st+1[i]=1时,xt[i]对应的标签ct[i]=[0,1]t。

37、更进一步的,得到训练数据集训练数据集d2包括:

38、以时间片为单位构建t个k×2的矩阵作为失效模型m的外部输入xt对应的标签ct,其中ct={c[0],c[1],……,c[k-1]}t;

39、xt和对应的标签ct组成模型训练数据d2_t,以时间片为单位构建t个d2_t作为模型训练数据集d2,其中d2={d2_0,d2_1,……,d2_t-1}。

40、进一步的,所述失效模型m基于lstm构建,通过单元参数和控制门实现神经网络计算;所述控制门包括:遗忘门fg、输入门ig和输出门og,其公式分别为:

41、fg=sigmoid(it×wf+bf);

42、ig=sigmoid(it×wi+bi);

43、og=sigmoid(it×wo+bo);

44、其中,wf、wi、wo分别为遗忘门、输入门、输出门对当前时间片的当前神经网络输入it进行仿射变换的权重;bf、bi、bo分别为遗忘门、输入门、输出们仿射变换的偏移量;所述当前神经网络输入it通过将当前神经网络外部输入xt[i]与上一个时间片的隐藏状态ht-1进行拼接获得;

45、所述单元参数包括:单元状态(cell state)ct、隐藏状态(hidden state)ht和状态更新值ut,其公式分别为:

46、ut=tanh(it×wc+bc)

47、ct=fg·ct-1+ig·ut

48、ht=og·tanh(ct)

49、其中,wc为仿射变换的权重,bc为仿射变换的偏移量。

50、进一步的,所述失效模型m的迭代计算包括:

51、(1)将每个时间片的输入数据{d2}t,拆分成k个9维向量,分别输入k个参数相同的lstm副本模型;

52、(2)将当前时间片tt的当前神经网络外部输入xt[i]与上一个时间片tt-1的隐藏状态ht-1进行进行拼接,得到当前时间片tt的当前神经网络输入it;

53、(3)将当前神经网络输入it进行仿射变换后再经过tanh函数激活,得到当前状态更新值ut;

54、(4)将遗忘门fg和上一个时间片tt-1的单元状态ct-1逐点相乘,输入门ig和当前更新值ut逐点相乘,两者结果相加后得到当前单元状态ct;

55、(5)将当前单元状态ct经过tanh激活后,与输出门og进行逐点相乘,得到当前隐藏状态ht;

56、(6)将当前隐藏状态ht通过仿射变换到二维空间,并通过softmax函数激活得到当前二维向量pt,取pt中两元素中元素值大的索引值作为当前模型输出yt[i];

57、(7)当前隐藏状态ht重新输入神经网络以加入下一时间片tt+1的循环计算,重复(2)~(7),直至得到所有时间片的二维向量计算结果;

58、(8)将二维向量pt沿时间维度拼接,形成k×ts×2的输出阵列p;将标签阵列ct沿时间维度拼接,形成k×ts×2的输出阵列c;将p与c进行比较,采用交叉熵作为损失函数,其公式如下:

59、

60、其中,ts为训练跨度,其值为训练集dtrain覆盖的时间片的个数;k为rram芯片中存储单元的总数,单个存储单元的标签的数据结构为[c0,c1],i表示第i个存储单元,t表示第t个时间片;

61、反向传播损失并同时更新k个lstm副本的权重,直到损失不再下降得到k个训练好的lstm副本,选择任一副本作为最终模型mtrained;其中mtrained={mtrained_[0],mtrained_[1],……,mtrained_[k-1]};优选的,采用adam优化器进行神经网络的反向传播以及更新权重;

62、进一步的,所述使用模型训练数据集d2对失效模型m进行训练,包括:

63、将模型训练数据集d2以时间片划分为训练集dtrain和测试集dtest;其中d2中前ts个时间片数据划为训练集,dtrain={d2_0,d2_1,……,d2_ts-1},后t-ts个时间片数据划为测试集,dtest={d2_ts-1,d2_ts,……,d2_t-1};

64、对失效模型m进行初始化,将lstm的单元状态和隐藏状态的初始值设为0;将m构建为k个参数相同的lstm副本模型{m[0],m[1],……,m[k-1]}

65、将dtrain中每个时间片的输入数据{d2}t,拆分成k个9维向量xt={x[0],x[1],……,x[k-1]}t,分别将拆分好的数据按照时间片顺序依次输入k个参数相同的lstm副本模型m={m[0],m[1],……,m[k-1]}完成模型训练并得到得到k个训练好的副本模型,任选其一作为最终模型mtrained,使用dtest对mtrained进行测试

66、与现有技术相比,本发明至少可实现如下有益效果:

67、1、采用了与rram芯片的失效行为在时间上更具相关性长短期记忆网络构建rram芯片失效模型,同时通过模拟芯片正常工作的擦写过程,合理地设置预测周期的操作数,获取了大量存储单元相关参数作为原始数据并以此构建了维度丰富的模型输入数据,使模型得到充分训练,提高了模型预测的准确率;

68、2、模型的输入采用九维数据,其中和电压相关的三个参数svolt,rvolt,fvt包含了rram芯片的关键外部操作信息,和阻值相关的六个参数srt,rrt,sft,rft,svart,rvart包含了rram芯片存储单元的主要物理状态信息,与rram阻变过程的物理模型十分契合,以此建立的时间序列模型更加科学有效;采用两组特征量sft/rft,svart/rvart,分别表征了阻值的局部波动性和全局波动性,将rram的阻值具有随机波动和跃变的性质计入模型的输入,更加全面地反映出rram器件所处的物理状态,减小了随机因素对预测结果的影响;

69、3、相比于现有模型一个预测周期内包含置位/复位操作次数过多的弊端,通过本发明构建方法得到的模型实现了对存储单元在一个预测周期内包含较少的置位/复位操作次数下的预测,即,现有方法构建得到的预测模型的一个预测周期需要包含10万量级的置位/复位操作,本发明方法构建得到的模型可将一个预测周期包含的置位/复位操作次数缩小至500次,能够更及时的对存储单元进行预测。

70、本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。


技术特征:

1.一种阻变存储器芯片失效模型的构建方法,其特征在于,包括如下步骤:

2.根据根据权利要求1的方法,其特征在于,所述失效模型m包括k个参数相同的lstm副本模型{m[0],m[1],……,m[k-1]};不同的副本模型用于对k个存储单元进行独立的向前推理以及误差计算。

3.根据权利要求1的方法,其特征在于,对原始数据进行预处理,得到包含九个维度的输入数据xt={fvt,srt,rrt,sft,rft,svart,rvart,svolt,rvolt},基于所述九个维度的输入数据构建所述数据集d1;

4.根据权利要求3的方法,其特征在于,获取所述获取原始数据dt包括:

5.根据权利要求3或4的方法,其特征在于,所述得到包含九个维度的输入数据xt,包括:

6.根据权利要求1的方法,其特征在于,所述真失效或假失效的二分类标注包括:

7.根据权利要求6所述的方法,其特征在于:得到训练数据集训练数据集d2包括:

8.根据权利要求1的方法,其特征在于,所述失效模型m基于lstm构建,通过单元参数和控制门实现神经网络计算;所述控制门包括:遗忘门fg、输入门ig和输出门og,其公式分别为:

9.根据权利要求1的方法,其特征在于,所述失效模型m的迭代计算包括:

10.根据权利要求1的方法,其特征在于,所述使用模型训练数据集d2对失效模型m进行训练,包括:


技术总结
本发明涉及一种阻变存储器(RRAM)芯片失效模型的构建方法,属于芯片可靠性技术领域,解决了现有针对RRAM芯片失效行为构建的模型预测准确率不高的问题。通过获取阻变存储器芯片在模拟环境下各存储单元完成预设模拟周期数读写操作的原始数据D<subgt;t</subgt;并对其进行预处理,构建得到数据结构为K×9×T的数据集D<subgt;1</subgt;,再通过对数据集D<subgt;1</subgt;作真失效或假失效的二分类标注,得到训练数据集D<subgt;2</subgt;;使用模型训练数据集D<subgt;2</subgt;对失效模型M进行训练,得到最终失效模型M<subgt;trained</subgt;。本发明的失效模型构建方法,对预测周期进行了合理的设置,实现了大幅提高模型预测的准确率,为及时有效地对失效的存储单元进行干预提供了更为准确的依据。

技术研发人员:许晓欣,郑旭,吴立舟,薛晓勇,庞婉
受保护的技术使用者:中国科学院微电子研究所
技术研发日:
技术公布日:2024/9/23

最新回复(0)