转换延迟故障测试压缩环境下测试精简方法和装置

文档序号:24647048发布日期:2021-04-13 15:39阅读:130来源:国知局
转换延迟故障测试压缩环境下测试精简方法和装置

1.本发明涉及数字集成电路测试技术领域,尤其涉及一种转换延迟故障测试压缩环境下测试精简方法和装置。


背景技术:

2.在数字电路测试领域,主要有两种的故障模型:转换故障模型和转换延迟故障模型。转换延迟故障模型测试的特点在于产生的测试向量远远大于转换故障模型。转换延迟故障测试精简是减少测试向量集合的有效途径。测试精简分为动态测试精简及静态测试精简,动态测试精简是指在测试码产生过程中尽量将不同故障测试合并成一个相同测试的过程。静态测试精简是测试码产生过程完成后将测试集合中多余的测试删除的过程,静态测试精简的过程不改变测试的确定位。动态测试精简及静态测试精简都是十分耗时的过程,必须求得一种均衡的动态及静态测试精简策略,实现对cpu时间开销,测试数据容量等较好的平衡。因此,很有必要提出一种新的算法实现高效转换故障测试码产生及静态和动态测试精简。
3.hamzaoglu及patel提出的静态测试精简策略非常精确,该静态测试精简通过穷举所有二,三,或者所有数目更多的测试组合所检测到的故障集合能否覆盖测试t检测到的故障子集。该策略既不精确,因为只能考虑很低数目测试组合,也非常耗时。产生的测试集合很小,需要大量cpu时间。synopsys及mentor graphics的商用工具均采用了一些静态及动态测试精简技术,但是测试集合仍然非常大。


技术实现要素:

4.针对现有技术问题,本发明实施例提供一种转换延迟故障测试压缩环境下测试精简方法和装置。
5.本发明实施例提供一种转换延迟故障测试压缩环境下测试精简方法,所述方法包括:
6.根据故障表进行动态测试精简,生成第一测试集合;
7.根据测试压缩结构将所述第一测试集合扩展为第二测试集合,根据所述第二测试集合进行静态测试精简,所述测试压缩结构包括软件定义线性反馈移位寄存器slfsr和相移器。
8.本发明实施例提供一种转换延迟故障测试压缩环境下测试精简装置,所述装置包括:
9.动态测试精简单元,用于根据故障表进行动态测试精简,生成第一测试集合;
10.静态测试精简单元,用于根据测试压缩结构将所述第一测试集合扩展为第二测试集合,根据所述第二测试集合进行静态测试精简,所述测试压缩结构包括软件定义线性反馈移位寄存器slfsr和相移器。
11.本发明实施例还提供一种电子设备,包括存储器、处理器以及存储在存储器上并
可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述转换延迟故障测试压缩环境下测试精简方法。
12.本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述转换延迟故障测试压缩环境下测试精简方法。
13.本发明实施例提供的转换延迟故障测试压缩环境下测试精简方法和装置,通过进行压缩环境下的动态测试精简,得到第一测试集合,根据压缩测试结构将第一测试集合扩展为第二测试集合,根据第二测试集合进行静态测试精简,能够实现测试向量的高效率精简,有效地降低数字vlsi测试时间,提高测试效率。
附图说明
14.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
15.图1为本发明实施例提供的转换延迟故障测试压缩环境下测试精简方法的流程示意图;
16.图2为本发明实施例提供的压缩结构的示意图;
17.图3为本发明实施例提供的转换延迟故障测试压缩环境下测试精简装置的结构示意图;
18.图4为本发明一实施例提供的电子设备的结构示意图。
具体实施方式
19.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
20.转换延迟故障loc(launch-off-capture)测试码产生都是在两帧电路模型下完成的。两帧电路模型结构如下:两帧电路由两个相同的电路构成,每帧电路是由原电路的组合逻辑部分构成;第一帧电路对应的每一个触发器的输出与该触发器对应第二帧电路触发器的输出相连。
21.测试压缩环境下的测试码产生完全不同于不含测试压缩dft结构的测试码产生。在对本发明实施例进行详细阐述之前,首先介绍不含测试压缩dft(design for testability,可测试性设计)结构的测试精简方法,以与本发明实施例提供的测试压缩环境下的测试精简形成对比。
22.不含测试压缩dft结构的动态测试精简方法包括:
23.1.随机选择一个目标故障f及其对应的st故障集合,对于无测试压缩逻辑的两帧电路模型针对故障f产生测试t;
24.2.对st中的任一故障f1,依次在测试t的取值约束下产生测试,如果成功,从故障表中删除f1,更新t;
25.3.将测试t的无关位随机置为确定值,并对未检测故障表执行故障模拟;
26.4.从故障表中删除故障模拟覆盖的故障;
27.5.重复步骤1-4,直到故障表空为止。
28.生成二次目标故障点集合st可以是随机的,也可以是可测试性影响锥。用故障点影响锥生成算法计算过程中会出现相同门电位值逻辑冲突情况或者影响锥冲突情况,出现这四种情况时,测试精简进程停止,在集合st取下一个故障点尝试压缩。以下过程为不含测试压缩dft结构的基于扫描树设计电路的动态测试精简:
29.1.基于两帧电路模型对扫描触发器分组并构造扫描树;
30.2.随机从总的故障表中选择一个目标故障f及其对应的st故障集合;
31.3.对于无测试压缩逻辑的电路产生故障f的测试码t;
32.4.对st中任意故障f1,在t的取值约束下执行动态测试精简产生测试,如果成功则更新t,并从总的故障表中删除f1;
33.5.将测试t的无关位随机置为确定值,并对未检测故障表执行故障模拟;
34.6.从故障表中删除目故障模拟覆盖的故障;
35.7.重复步骤2-6直到故障表空为止。
36.传统的测试压缩工具完成atpg(automatic test pattern generation,测试向量自动测试码产生)的方式如下:
37.1.外部扫描链数目及连接ring-generator或者lfsr的本原多项式必须在atpg前设定;
38.2.采用类似的方法实现动态测试精简产生测试t;
39.3.通过测试压缩逻辑将t扩展到整个电路;
40.4.将t对整个电路剩余故障进行故障模拟;
41.5.重复2-4操作直到故障表变空为止。
42.上述atpg策略的缺点如下:
43.1.外部扫描链数目及连接ring-generator或者lfsr的本原多项式必须在atpg前设定;
44.2.外部扫描链数目及lfsr或ring-generator的大小比实际需要的大;
45.3.测试压缩环境下测试向量数目增加及atpg的cpu时间增加不容忽视。
46.因此,很有必要提出一种新的算法实现测试压缩环境下高效转换故障测试码产生及静态和动态测试精简。
47.图1示出了本发明一实施例提供的转换延迟故障测试压缩环境下测试精简方法的流程示意图。
48.如图1所示,具体包括以下步骤:
49.s11、根据故障表进行动态测试精简,生成第一测试集合;
50.具体地,数字vlsi转换故障测试向量精简包括动态测试精简及静态测试精简,采用动态测试精简过程,生成第一测试集合,所述第一测试集合中每个测试都含有不确定位,因而测试集合较大。与不含测试压缩结构的动态测试精简不同在于在产生后续测试时不需要将当前测试的无关位随机地置为确定值就进行故障模拟,减少了向量生成时间。
51.s12、根据测试压缩结构将所述第一测试集合扩展为第二测试集合,根据所述第二
测试集合进行静态测试精简,所述测试压缩结构包括软件定义线性反馈移位寄存器slfsr和相移器。
52.静态测试精简是测试码产生完后,检查某个测试检测的故障表是否被一个或多个测试所检测;如果一个测试t检测的故障被其他测试覆盖,测试t可以从测试集中删除。
53.图2示出了本发明实施例提供的压缩结构的示意图。
54.如图2所示,该压缩结构包括软件定义线性反馈移位寄存器slfsr(software linear feedback shift register,lfsr))、相移器(phase-shifter,ps),多路输出选择器demultiplexer,简称dmux。相移器ps驱动多个扫描输入,每个扫描输入驱动多个扫描树,每个扫描树由多条扫描链构成,需要说明的是,图2所示压缩结构与现有技术中使用的多扫描链架构不同,相移器在每个阶段驱动多路输出选择器,并且每个多路输出选择器驱动多个扫描树,相移器的每一级驱动一个多路输出选择器而不是扫描链。与ps的每一级驱动一个扫描链架构相比,上述架构显著减小相移器的大小。
55.本发明实施例以电路结构分析和故障点可测试影响锥计算为基础,基于压缩结构将第一测试集合扩展为第二测试集合,根据第二测试集合可高效地删除多余测试码,在保持故障覆盖率不变的前提下,降低了atpg所需cpu时间及测试向量数目,提高atpg效率。
56.本发明实施例提供的转换延迟故障测试压缩环境下测试精简方法,通过测试压缩结构将动态测试精简产生的测试集合进行扩展,根据扩展的测试集合进行静态测试精简,能够实现测试向量的高效率精简,有效地降低数字vlsi测试时间,提高测试效率。
57.在上述实施例的基础上,步骤s11具体包括测试压缩环境下基于多扫描链的动态测试精简步骤:
58.从所述故障表中随机选择一个目标故障f及其对应的st故障集合,对于无测试压缩逻辑的两帧电路模型产生故障f的测试码t,并从所述故障表中删除f;
59.对st中任一故障f1,在t的取值约束下执行动态测试精简,若产生测试,则从故障表中删除f1,并更新所述测试t;
60.对未检测故障表执行故障模拟,从所述未检测故障表中删除故障模拟覆盖的故障,并更新所述未检测故障表对应的测试集合,所述未检测故障表为所述故障表进行删除操作后剩余故障的故障表;
61.重复以上步骤,直至所述未检测故障表空为止,得到第一测试集合。
62.在上述实施例的基础上,步骤s11具体还包括测试压缩环境下基于扫描树的动态测试精简步骤:
63.基于两帧电路模型对扫描触发器分组并构造扫描树;
64.从所述故障表中随机选择一个目标故障f及其对应的st故障集合,对于无测试压缩逻辑的两帧电路模型产生故障f的测试码t,并从所述故障表中删除f;
65.对st中任一故障f1,在t的取值约束下执行动态测试精简,若产生测试,则从所述故障表中删除f1,更新所述测试t;
66.对未检测故障表执行故障模拟,从所述未检测故障表中删除故障模拟覆盖的故障,并更新所述未检测故障表对应的测试集合,所述未检测故障表为所述故障表进行删除操作后剩余故障的故障表;
67.重复以上步骤,直至所述未检测故障表空为止,得到第一测试集合。
68.具体地,采用上述动态测试精简过程,每个测试都含有不确定位。故障模拟也是对含有不确定位的测试完成的。采用该策略atpg的cpu时间可能相对较高及测试向量数目可能较大。因而必须采用静态测试精简策略降低测试数目及测试数据容量。
69.在上述实施例的基础上,步骤s12具体包括测试压缩环境下基于多扫描链的静态测试精简步骤:
70.获取基于多扫描链测试压缩环境下的动态测试精简完成后得到的第一测试集合tt1={t1,t2,

,t
n
},所述第一测试集合中每个测试t
i
携带故障表f(t
i
),i为大于等于1小于等于n的整数;
71.具体地,获得动态测试精简完成后得到测试集tt1={t1,t2,

,t
n
},每个测试t
i
附带一个故障表f(t
i
),该故障表是在测试码产生过程中形成的,其中,故障表中每个故障只出现一次;
72.根据所述第一测试集合选择软件定义线性反馈移位寄存器slfsr的本原多项式和外部扫描输入数目,使得所述第一测试集合的所有测试均实现编码;
73.具体地,选择使得slfsr对第一测试集合的所有测试均能够实现编码的本原多项式及外部扫描输入数目。
74.对tt1中任意测试t
i
,将预先计算好的slfsr的种子置入slfsr,将预先计算好的外部扫描输入的附加变量通过外部扫描输入,并根据相移器扩展到所有扫描单元获得新的测试t
i’,得到第二测试集合tt2={t1’
,t2’
,

,t
n’};
75.具体地,根据所选的本原多项式将计算好的slfsr的种子注入到slfsr,并将计算好的外部扫描输入的附加变量注入到扫描电路,外部扫描输入的附加变量根据每个扫描链确定,相移器对所有扫描单元填充一个值,得到确定的变量,因此,第二测试集合tt2不再有不确定位。
76.针对电路完全故障表f={f1,f2,

,f
m
},对tt2中的每个测试t
i’执行无丢弃的故障模拟,对每一个测试t
i’得到所述测试检测到的全部故障集合f1(t
i’);
77.具体地,对tt2中每个测试根据电路完全故障表做无丢弃的故障模拟,得到的全部故障集合f1(t
i’)远远大于扩展前的故障集合f(t
i
),
78.识别tt2中的必要测试子集et={et1’
,et2’
,

,et m’},所述必要测试子集et满足:对于任何et
j’∈et,存在至少一个故障f,f只被et
j’检测,j为大于等于1小于等于m的整数;
79.具体地,必要测试子集中的任意测试et
j’覆盖至少一个故障,该故障仅被测试et
j’检测。
80.对于任意t
i
∈tt1,若t
i
检测到的故障集合满足检测到的故障集合满足则从tt1中删除t
i
,否则将t
i
置入et中;
81.输出最终的测试集合tt1。
82.在上述实施例的基础上,步骤s12还包括测试压缩环境下基于扫描树的静态测试精简步骤:
83.获取基于扫描树的动态测试精简完成后得到的第一测试集合tt1={t1,t2,

,t
n
},所述第一测试集合中每个测试t
i
携带故障表f(t
i
),i为大于等于1小于等于n的整数;
84.具体地,获得动态测试精简完成后得到测试集tt1={t1,t2,

,t
n
},每个测试t
i
附带一个故障表f(t
i
),该故障表是在测试码产生过程中形成的。
85.根据所述第一测试集合选择最低度数的软件定义线性反馈移位寄存器slfsr及实现的本原多项式,选择外部扫描输入的数目,对tt1的每个测试t
i
,计算外部扫描链数目及需要移入的外部附加变量的轮数;
86.具体地,基于图2所示的压缩结构,选择最低度数的软件定义线性反馈移位寄存器slfsr及实现的本原多项式,并选择外部扫描输入的数目,tt1的每个测试计算外部扫描链数目及需要移入的外部附加变量的轮数,最多为dmux轮。
87.对tt1中任意测试t
i
,将预先计算好的slfsr的种子置入slfsr;将预先计算好的外部扫描输入的附加变量通过外部扫描输入,并根据相移器扩展到所有扫描单元获得新的测试t
i’,得到第二测试集合tt2={t1’
,t2’
,

,t
n’};
88.具体地,第二测试集合tt2不含不确定位。
89.针对电路完全故障表f={f1,f2,

,f
m
},对每一个tt2的测试t
i’做无故障丢弃故障模拟,对每一个测试t
i’得到所述测试检测到的全部故障集合f1(t
i’);
90.具体地,对tt2中每个测试根据电路完全故障表做无丢弃的故障模拟,得到的全部故障集合f1(t
i’)远远大于扩展前的故障集合f(t
i
),
91.识别tt2中的必要测试子集et={et1’
,et2’
,

,et m’},所述必要测试子集et满足:对于任何et
j’∈et,存在至少一个故障f,f只被et
j’检测,j为大于等于1小于等于m的整数;
92.具体地,必要测试子集中的任意测试et
j’覆盖至少一个故障,该故障仅被测试et
j’检测。
93.对于任何测试t
i
∈tt1,若t
i
检测到的故障集合满足检测到的故障集合满足则从tt1中删除t
i
,否则将t
i
置入et中;
94.若上轮循环删除的测试数目达到给定比例,改变测试处理顺序,重复操作,直到本轮静态测试精简删除数目不能达到给定比例;
95.输出最终的测试集合tt1。
96.下面用具体实验的例子对静态测试精简的效果进行说明。
97.实验中的静态测试精简步骤为:
98.动态测试精简完成后得到测试集tt1={t1,t2,

,t
n
},每个测试t
i
附带一个故障表f(t
i
),该故障表是在测试码产生过程中形成的;针对电路完全故障表f={f1,f2,

,f
m
},对每一个测试做无故障丢弃故障模拟,即任何测试都是对完全故障集合做故障模拟,对每一个测试ti得到检测到的故障表f1(t
i
)。一般情况下,有采用下述步骤完成静态测试精简:
99.a)针对电路完全故障表f={f1,f2,

,f
m
},对每一个测试做无故障丢弃故障模拟,即任何测试都是对完全故障集合做故障模拟,对每一个测试ti得到f1(t
i
);
100.b)产生测试集合tt2中的必要测试et={et1’
,et2’
,

,et
m’},必要测试et
j’覆盖至少一个故障,该故障仅被测试et
j’检测,将et
j’置入最终测试集合ft中;
101.c)对于任何测试t
i
,如果t
i
检测到的故障集合满足:
[0102][0103]
则将t
i
从测试集合tt1中删除,否者将t
i
置入et中,更新et;
[0104]
d)如果上轮循环删除的测试数目达到给定比例,改变测试处理顺序,重复b)和c)操作,直到本轮静态测试精简删除数目不能达到给定的基本数目;
[0105]
e)输出最终的测试集合tt1。
[0106]
上述静态测试精简算法非常节省cpu时间,大部分情况下可以高效地减少测试数目,因而降低测试数据容量及降低测试时间。
[0107]
本发明实施例实验平台为dell precision tower 7910工作站。表1、表2和表3给出了将本发明应用到iscas89,itc99,iwls2005及几个open-core电路的实验结果。
[0108]
表1示出了本发明实施例提供的在非测试压缩环境下的测试码产生和测试压缩环境下的测试码产生的性能评价。
[0109]
表1
[0110][0111]
表2示出了本发明实施例提供的扫描森林设计对非测试压缩环境下的测试码产生和测试压缩环境下的测试码产生的性能评价。
[0112]
表2
[0113][0114]
参照表1和表2,circuit表示电路名称,pis,pos,ffs,gates,vec,vec1,fc,及cpu(s)分别表示输入数,输出数,触发器数目,门数,测试码数,静态测试精简前的测试数目,故障覆盖率,及cpu时间(秒)采用本发明可以有效地精简测试向量的个数,并有较短的测试向量产生时间。tcompact,scan-forest及compact-tc分别表示在非测试压缩环境下的测试码产生算法,扫描森林设计对非测试压缩环境下的测试码产生算法,及本发明实施例提出的测试压缩环境下的测试码产生算法。最大的电路leon3mp_avset含约185000触发器及173万门,测试码产生所需时间约63小时。约为非测试压缩环境下atpg时间的3倍,向量数目约为1.336倍(相比scan-forest)。电路leon2的情形类似,相比非测试压缩环境的atpg结果,compact-tc所需cpu时间都要高,测试码数目相较非测试压缩环境下的情形要高。对于另外两个大电路netcard及leon3mp,测试数非常接近,但cpu时间大约为非测试压缩环境下的3倍。这主要是源于测试码产生向量均含有大量的未确定位,虽然本发明提出的静态测试精简策略大幅降低测试数目,但是对于四个open-core的电路cpu时间仍然远远高于(2-3倍)非测试压缩环境下的情形。
[0115]
表3示出了本发明实施例提供的静态测试精简策略的效果。
[0116]
表3
[0117][0118]
参照表3,si,dmux,external,vec1,cpu1(s),cpu(s),vec及prr分别表示内部扫描链数目,多选一转换器(demultiplexer)的扇出数,外部扫描连数目,静态测试精简前的测试数,atpg所需的cpu时间(秒),静态测试精简所需时间(秒),静态测试精简后的测试数目,及相比静态测试精简前的测试数目降低倍数。实验数据表明,测试码产生的cpu时间远远高于静态测试精简的时间(11.8倍),因而静态测试精简策略有很好的可扩展性。
[0119]
图3示出了本发明实施例提供的转换延迟故障测试压缩环境下测试精简装置的结构示意图。
[0120]
如图3所示,所述装置包括:动态测试精简单元31和静态测试精简单元32,其中:
[0121]
所述动态测试精简单元31,用于根据故障表进行动态测试精简,生成第一测试集合;
[0122]
所述静态测试精简单元32,用于根据测试压缩结构将所述第一测试集合扩展为第二测试集合,根据所述第二测试集合进行静态测试精简,所述测试压缩结构包括软件定义线性反馈移位寄存器slfsr和相移器。
[0123]
本发明实施例提供的转换延迟故障测试压缩环境下测试精简装置,测试压缩结构将动态测试精简产生的测试集合进行扩展,根据扩展的测试集合进行静态测试精简,能够实现测试向量的高效率精简,有效地降低数字vlsi测试时间,提高测试效率。
[0124]
在上述实施例的基础上,所述动态测试精简单元31包括:
[0125]
第一测试模块,用于从所述故障表中随机选择一个目标故障f及其对应的st故障集合,对于无测试压缩逻辑的两帧电路模型产生故障f的测试码t,并从所述故障表中删除f;
[0126]
第二测试模块,对st中任一故障f1,在t的取值约束下执行动态测试精简,若产生测试,则从故障表中删除f1,并更新所述测试t;
[0127]
第一模拟模块,对未检测故障表执行故障模拟,从所述未检测故障表中删除故障模拟覆盖的故障,并更新所述未检测故障表对应的测试集合,所述未检测故障表为所述故障表进行删除操作后剩余故障的故障表;
[0128]
第一重复模块,用于重复以上步骤,直至所述未检测故障表空为止,得到第一测试集合。
[0129]
在上述实施例的基础上,所述动态测试精简单元31还包括:
[0130]
构造模块,用于基于两帧电路模型对扫描触发器分组并构造扫描树;
[0131]
第三测试模块,用于从所述故障表中随机选择一个目标故障f及其对应的st故障集合,对于无测试压缩逻辑的两帧电路模型产生故障f的测试码t,并从所述故障表中删除f;
[0132]
第四测试模块,用于对st中任一故障f1,在t的取值约束下执行动态测试精简,若产生测试,则从所述故障表中删除f1,更新所述测试t;
[0133]
第二模拟模块,用于对未检测故障表执行故障模拟,从所述未检测故障表中删除故障模拟覆盖的故障,并更新所述未检测故障表对应的测试集合,所述未检测故障表为所述故障表进行删除操作后剩余故障的故障表;
[0134]
第二重复模块,用于重复以上步骤,直至所述未检测故障表空为止,得到第一测试集合。
[0135]
在上述实施例的基础上,所述静态测试精简单元32包括:
[0136]
第一获取模块,用于获取基于多扫描链测试压缩环境下的动态测试精简完成后得到的第一测试集合tt1={t1,t2,

,t
n
},所述第一测试集合中每个测试t
i
携带故障表f(t
i
),i为大于等于1小于等于n的整数;
[0137]
第一选择模块,用于根据所述第一测试集合选择软件定义线性反馈移位寄存器slfsr的本原多项式和外部扫描输入数目,使得所述第一测试集合的所有测试均实现编码;
[0138]
第一扩展模块,用于对tt1中任意测试t
i
,将预先计算好的slfsr的种子置入slfsr,将预先计算好的外部扫描输入的附加变量通过外部扫描输入,并根据相移器扩展到所有扫描单元获得新的测试t
i’,得到第二测试集合tt2={t1’
,t2’
,

,t
n’};
[0139]
第一执行模块,用于针对电路完全故障表f={f1,f2,

,f
m
},对tt2中的每个测试t
i’执行无丢弃的故障模拟,对每一个测试t
i’得到所述测试检测到的全部故障集合f1(t
i’);
[0140]
第一识别模块,用于识别tt2中的必要测试子集et={et1’
,et2’
,

,et m’},所述必要测试子集et满足:对于任何et
j’∈et,存在至少一个故障f,f只被et
j’检测,j为大于等于1小于等于m的整数;
[0141]
第一处理模块,用于对于任意t
i
∈tt1,若t
i
检测到的故障集合满足则从tt1中删除t
i
,否则将t
i
置入et中;
[0142]
第一输出模块,用于输出最终的测试集合tt1。
[0143]
在上述实施例的基础上,所述静态测试精简单元32还包括:
[0144]
第二获取模块,用于获取基于扫描树的动态测试精简完成后得到的第一测试集合
tt1={t1,t2,

,t
n
},所述第一测试集合中每个测试t
i
携带故障表f(t
i
),i为大于等于1小于等于n的整数;
[0145]
第二选择模块,用于根据所述第一测试集合选择最低度数的软件定义线性反馈移位寄存器slfsr及实现的本原多项式,选择外部扫描输入的数目,对tt1中的每个测试t
i
,计算外部扫描链数目及需要移入的外部附加变量的轮数;
[0146]
第二扩展模块,用于对tt1中任意测试t
i
,将预先计算好的slfsr的种子置入slfsr;将预先计算好的外部扫描输入的附加变量通过外部扫描输入,并根据相移器扩展到所有扫描单元获得新的测试t
i’,得到第二测试集合tt2={t1’
,t2’
,

,t
n’};
[0147]
第二执行模块,用于针对电路完全故障表f={f1,f2,

,f
m
},对每一个tt2的测试t
i’做无故障丢弃故障模拟,对每一个测试t
i’得到所述测试检测到的全部故障集合f1(t
i’);
[0148]
第二识别模块,用于识别tt2中的必要测试子集et={et1’
,et2’
,

,et m’},所述必要测试子集et满足:对于任何et
j’∈et,存在至少一个故障f,f只被et
j’检测,j为大于等于1小于等于m的整数;
[0149]
第二处理模块,用于对于任何测试t
i
∈tt1,若t
i
检测到的故障集合满足则从tt1中删除t
i
,否则将t
i
置入et中;
[0150]
第三处理模块,用于若上轮循环删除的测试数目达到给定比例,改变测试处理顺序,重复操作,直到本轮静态测试精简删除数目不能达到给定比例;
[0151]
第二输出模块,用于输出最终的测试集合tt1。
[0152]
本实施例所述的转换延迟故障测试压缩环境下测试精简装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。
[0153]
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)41、通信接口(communications interface)42、存储器(memory)43和通信总线44,其中,处理器41,通信接口42,存储器43通过通信总线44完成相互间的通信。处理器41可以调用存储器43中的逻辑指令,以执行上述各实施例提供的方法。
[0154]
此外,上述的存储器43中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0155]
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法。
[0156]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性
的劳动的情况下,即可以理解并实施。
[0157]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0158]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1