大容量存储器功能测试全覆盖的方法与流程

文档序号:22681823发布日期:2020-10-28 12:43阅读:169来源:国知局
大容量存储器功能测试全覆盖的方法与流程

本发明涉及存储器测试,具体而言是大容量存储器功能测试全覆盖的方法。



背景技术:

存储器制造工艺和材料的改进,使得存储器的容量大幅度提高,现已达到tb级别。为了保证存储器芯片长期可靠的工作,必须保证其功能测试全覆盖,但是,测试系统图形发生器的硬件条件限制了图形向量自动生成的位数,测试系统图形向量的深度限制了测试系统能够运行的图形向量的长度,因此,大容量存储器的功能全覆盖测试至今一直是个难题。目前,存储器的测试思路主要有两种:一是使用专用存储器测试设备,配置多数据位的图形发生器,扩展图形向量深度;二是使用通用集成电路测试设备,由设备dsio自动产生图形向量。前者耗资巨大,而且不可能无限制地扩展硬件能力;后者则局限于dsio的硬件能力,dsio总线的位数决定了数据和地址的总位数。因此,随着存储器容量的不断增长,大容量存储器的测试往往受到测试硬件的限制,无法实现功能全覆盖。

针对现有技术的上述不足,本发明提出一种不受测试系统硬件限制而实现大容量存储器功能测试全覆盖的方法。



技术实现要素:

本发明的目的是提供一种不受测试系统硬件限制而实现大容量存储器功能测试全覆盖的方法。

为实现上述目的,本发明采用如下技术方案:一种大容量存储器功能测试全覆盖的方法,包括以下步骤:

s1.划分存储器的存储空间:

将存储器的存储空间等量划分为n个子块区域;

s2.编写初始测试图形向量:

选取第一个子块区域,按照存储器的类别和功能,分析主要故障模式,确定存储器测试算法,手动编写初始测试图形向量;

s3.测试系统首次测试:

按照测试系统测试流程,测试系统引导装载编写的初始测试图形向量,对存储器施加电源和输入激励,并对输出结果进行比较,输出测试结果;

s4.设置循环执行条件:

将第一个子块区域的地址作为初始地址,子块区域地址长度作为步进值,子块区域数量减1为循环次数,每循环一次,初始地址加一次步进值,形成新地址,循环至最后一次时,新地址为最后一个子块区域的地址,通过循环执行,达到全容量覆盖;

s5.生成新测试图形向量:

将新地址转换为二进制代码,一一对应到存储器的地址管脚;高级语言控制,使用新地址的二进制代码替换指定位置初始测试图形向量中被测存储器的地址向量部分,维持其它输入输出信号及时序设置不变,形成新测试图形向量;

s6.修改测试程序运行流程:

控制测试系统程序运行过程,测试系统首次测试后,不退出程序,按照设置的循环次数,每循环一次,重新生成一次新测试图形向量,引导装载新测试图形向量,施加输入激励,进行输出比较,直至循环n次后,断开输入激励和电源,输出总测试结果,退出程序。

本发明通过将大容量存储器分区,选取存储器的第一个子块区域实现测试,其它子块区域则通过高级语言编程的方式,自动修改存储器测试向量,设置循环次数,实现大容量存储器功能测试全覆盖。这样,测试系统只需要满足第一个子块区域测试所需的条件,其它子块区域通过高级语言自动修改测试图形向量,重复执行测试流程的方法,不再另外占用测试系统资源,不仅可以突破测试系统测试硬件的限制,还简化了图形向量的编写,灵活的实现大容量存储器功能测试。

附图说明

图1为本发明的流程示意图;

图2为本发明的初始测试图形向量示意图;

图3为本发明的新测试图形向量示意图;

图4为本发明的高级语言修改测试程序运行流程示意图。

具体实施方式

以下结合附图和具体实施例对本发明做进一步的详细描述,但该实施例不应理解为对本发明的限制。

实施例一

(一)待测存储器:类型:并行flash;型号:s29gl512n;规格:512m×16bit;地址管脚25个;数据管脚16个。

(二)设备:j750ex-hd测试系统。

(三)测试过程:

如图所示的一种大容量存储器功能测试全覆盖的方法,包括以下步骤:

s1.划分存储器的存储空间:

将s29gl512n的存储空间等量划分为262144(即218)个子块区域,每个子块区域为128words;

s2.编写初始测试图形向量:

选取第一个子块区域,按照棋盘格算法,手动编写初始测试图形向量,实现第一个子块区域的写读功能(每一个地址需要4条图形向量完成写操作,1条图形向量完成读操作),测试图形向量640条;

s3.测试系统首次测试:

按照j750ex-hd测试系统测试流程,测试系统引导装载编写的初始测试图形向量,对s29gl512n施加电源和输入激励,并对输出结果进行比较,输出测试结果;

s4.设置循环执行条件:

将0作为初始地址,子块区域地址长度128作为步进值,子块区域数量减1即262143为循环次数,每循环一次,初始地址加一次128,形成新地址,循环至最后一次时,新地址为最后一个子块区域的地址3355304,通过循环执行,达到全容量覆盖;

s5.生成新测试图形向量:

首次循环将新地址128个数的数组【128、129、……、254、255】转换为26位的二进制代码数组【00000000000000000010000000b、00000000000000000010000001b、……、00000000000000000011111110b、00000000000000000011111111b】,一一对应到存储器的地址管脚[a25,a24,a23,a22,a21,a20,a19,a18,a17,a16,a15,a14,a13,a12,a11,a10,a9,a8,a7,a6,a5,a4,a3,a2,a1,a0];高级语言控制,使用新地址的二进制代码数组【00000000000000000010000000b、00000000000000000010000001b、……、00000000000000000011111110b、00000000000000000011111111b】替换指定位置的初始测试图形向量中被测存储器的地址a25~a0的图形向量部分【00000000000000000000000000b、00000000000000000000000001b、……、00000000000000000001111110b、00000000000000000001111111b】,维持其它输入输出信号及时序设置不变,形成新测试图形向量;

s6.修改测试程序运行流程:

控制j750ex-hd测试系统程序运行过程,测试系统首次测试后,不退出程序,按照设置的循环次数262143,每循环一次,重新生成一次新测试图形向量,引导装载新测试图形向量,施加输入激励,进行输出比较,直至循环262143次后,断开输入激励和电源,输出总测试结果,退出程序。

实施例二

待测存储器:类型:串行flash;型号:m25p128;规格:128m×8bit;spi串口模式。

(二)设备:j750ex-hd测试系统。

(三)测试过程:

如图所示的一种大容量存储器功能测试全覆盖的方法,包括以下步骤:

s1.划分存储器的存储空间:

将m25p128的存储空间等量划分为65536个子块区域,每个子块区域为256bytes;

s2.编写初始测试图形向量:

选取第一个子块区域,按照棋盘格算法,手动编写初始测试图形向量,实现第一个子块区域的写读功能,遵照spi串口协议的时序要求,设置测试图形向量4196条;

s3.测试系统首次测试:

按照j750ex-hd测试系统测试流程,测试系统引导装载编写的初始测试图形向量,对m25p128施加电源和输入激励,并对输出结果进行比较,输出测试结果;

s4.设置循环执行条件:

将0作为初始地址,子块区域地址长度256作为步进值,子块区域数量减1即65535为循环次数,每循环一次,初始地址加一次256,形成新地址,循环至最后一次时,新地址为最后一个子块区域的地址16776960,通过循环执行,达到全容量覆盖;

s5.生成新测试图形向量:

首次循环将新地址256转换为24位二进制代码000000000000000100000000b;高级语言控制,遵照spi串口协议,使用新地址的二进制代码000000000000000100000000b在24个周期中顺次替换指定初始测试图形向量中被测存储器的si管脚图形向量部分000000000000000000000000b,维持其它输入输出信号及时序设置不变,形成新测试图形向量;

s6.修改测试程序运行流程:

控制j750ex-hd测试系统程序运行过程,测试系统首次测试后,不退出程序,按照设置的循环次数65535,每循环一次,重新生成一次新测试图形向量,引导装载新测试图形向量,施加输入激励,进行输出比较,直至循环65535次后,断开输入激励和电源,输出总测试结果,退出程序。

实施例三

待测存储器:类型:双端口sram;型号:idt70t653ms12bgt;规格:512k×36bit×2;地址管脚38个;数据管脚72个。

(二)设备:j750ex-hd测试系统。

(三)测试过程:

如图所示的一种大容量存储器功能测试全覆盖的方法,包括以下步骤:

s1.划分存储器的存储空间:

将idt70t653ms12bgt的存储空间等量划分为4096个子块区域,每个子块区域为128bytes;

s2.编写初始测试图形向量:

选取第一个子块区域,按照march算法,手动编写初始测试图形向量,实现第一个子块区域的写读功能,针对idt70t653ms12bgt,地址和数据线是单端口sram的两倍,分开考核功能,测试图形向量512条;

s3.测试系统首次测试:

按照j750ex-hd测试系统测试流程,测试系统引导装载编写的初始测试图形向量,对idt70t653ms12bgt施加电源和输入激励,并对输出结果进行比较,输出测试结果;

s4.设置循环执行条件:

将0作为初始地址,子块区域地址长度128作为步进值,子块区域数量减1即4095为循环次数,每循环一次,初始地址加一次128,形成新地址,循环至最后一次时,新地址为最后一个子块区域的地址524160,通过循环执行,达到全容量覆盖;

s5.生成新测试图形向量:

首次循环将新地址128个数的数组【128、129、……、254、255】转换为19位的二进制代码数组【0000000000010000000b、0000000000010000001b、……、0000000000011111110b、0000000000011111111b】,一一对应到存储器的地址管脚[a18l,a17l,a16l,a15l,a14l,a13l,a12l,a11l,a10l,a9l,a8l,a7l,a6l,a5l,a4l,a3l,a2l,a1l,a0l]和[a18r,a17r,a16r,a15r,a14r,a13r,a12r,a11r,a10r,a9r,a8r,a7r,a6r,a5r,a4r,a3r,a2r,a1r,a0r];高级语言控制,使用新地址的二进制代码数组【0000000000010000000b、0000000000010000001b、……、0000000000011111110b、0000000000011111111b】分别替换指定位置的初始测试图形向量中被测存储器的地址a18l~a0l和a18r~a0r的图形向量部分【0000000000000000000b、0000000000000000001b、……、0000000000001111110b、0000000000001111111b】,维持其它输入输出信号及时序设置不变,形成新测试图形向量;

s6.修改测试程序运行流程:

控制j750ex-hd测试系统程序运行过程,测试系统首次测试后,不退出程序,按照设置的循环次数4095,每循环一次,重新生成一次新测试图形向量,引导装载新测试图形向量,施加输入激励,进行输出比较,直至循环4095次后,断开输入激励和电源,输出总测试结果,退出程序。

本说明书中未作详细描述的内容,属于本专业技术人员公知的现有技术。

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