版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种多扫描链的自测试技术
1测试向量生成基于扫描的内部自测试技术(scan基础bist)使用线性反馈位移记录(lfsr)生成测试向量,并使用多个输入功能记录(misr)压缩测试响应。其实质是bist来完成扫描测试的ase功能。该方法的原理非常简单,因此它被广泛应用于全扫描测试和边界扫描测试,因此受到了高度重视和应用。在满足故障覆盖率要求的情况下,内建自测试的测试效率体现在测试应用时间的多少.特别是对基于扫描的内建自测试而言,测试向量生成器串行地把GF(2)序列移入扫描链中形成测试向量,测试规模的增大使得测试所需的测试应用时间迅速增加,进而增加了测试费用.随着集成电路设计的复杂度和产品产量的增加,测试应用时间成为决定测试效率的关键因素,所以如何减少测试应用时间具有重要的实际意义.基于扫描的内建自测试主要包括两种结构——基于单扫描链的设计和基于多扫描的设计.基于多扫描链的设计正是解决应用单扫描链测试时测试应用时间过长的主要方法.但是在基于多扫描链的内建自测试中,由于不同扫描链间的相关性影响了电路中的故障检测,因此为了获得较高的故障覆盖率研究测试向量生成结构是十分重要的.目前基于多扫描链的内建自测试技术多采用一个LFSR通过移相器给多扫描链提供测试向量,但利用这种方法一般不能保证被测电路的故障完全检测.本文提出了一种应用于基于多扫描链的内建自测试技术中的测试向量生成方法.该方法可以实现被测电路的故障完全检测.这种测试向量生成方法利用一个LFSR同时给所有扫描链输入测试向量,通过构造具有最小相关度的多扫描链来克服扫描链间的相关性对故障覆盖率的影响.并针对所有难测故障利用ATPG生成最小确定性测试向量集,根据最小测试向量集设计位改变逻辑电路,利用位改变逻辑电路控制改变扫描链上特定位的值来实现对难测故障的检测,进而实现被测电路的故障完全检测.2多扫描链自适应的测试向量基于扫描的内建自测试技术通过把GF(2)序列移入扫描链中形成测试向量.如果被测试电路中包含多个并行的扫描链,则需要一个并行的测试向量生成器来移入测试向量,同时需要一个多输入特征分析器(MISR)分析来自扫描链和原始输出端的测试结果,具体结构见图1.此时移入一个测试向量所需的时钟数减少为单扫描情况下的1k‚k1k‚k为扫描链数.为了减少硬件开销,一般情况下用一个LFSR来实现测试向量,结构见图2.此时移入不同扫描链中的测试向量只差一位的相移,测试时必然要比单扫描链情况下大大降低了故障覆盖率.为了提高故障覆盖率,以往采取的方案是利用一个LFSR和一个移相器构成伪随机测试向量生成器,见图3.测试时通过移相器把LFSR的输出变成不相关的信号输入到不同的扫描链中.但利用移相器形成的不相关随机测试向量也不能保证电路中的可测故障的完全检测.本文在分析多扫描链构造对故障覆盖率影响的基础上提出了一种测试向量生成结构,具体见图4.该测试结构中一个LFSR作为伪随机测试向量生成器把GF(2)序列移入扫描链中,同时作为原始输入端的输入和内部触发器的状态,并通过多扫描链的构造来克服由于扫描链间的相关性对故障覆盖率的影响.此外在多扫描链与被测电路之间设计了一个位改变逻辑电路来控制多扫描链上的值的输入.当控制信号test_con为0时多扫描链上的值直接输入到被测电路,测试易测试故障;当控制信号test_con为1时多扫描链上的一些特定位上的值经过位改变逻辑电路(BML)的改变再输入到被测电路,测试那些难测试故障,从而实现电路中故障的完全检测.因此这种测试方法的关键是如何实现多扫描链的构造和位改变逻辑电路的设计.3多扫描链构造形式的影响利用一个LFSR同时给多个扫描链提供测试向量时故障覆盖率降低的主要原因是不同扫描链间的相关性限定了测试向量的随机性.下面用图5所示的例子加以说明,假设a1,a2,a3,a4和b1,b2,b3,b4分别是4个D触发器的输出和输入.如果该电路采用基于两个扫描链的内建自测试技术来测试,具体测试结构见图6.电路中简并可测的单固定型故障有30个.这里需要说明的是LFSR阶数k的选取要满足2k-1与多扫描链中单扫描链的长度互质.如果用1个扫描链给电路提供测试向量,每输入一个测试向量则需要4个时钟周期.伪随机测试时全部15个测试向量需要60个时钟周期才能完成所有测试向量输入.而如果用2个扫描链给电路提供测试向量,每输入一个测试向量则只需要2个时钟周期.伪随机测试时3个测试向量需6个时钟周期就可以完成了.此时测试向量输入所需的时钟周期比单扫描链情况下的减少了90%.但由于不同扫描链间的相关性限制了这3个测试向量的随机性,势必要影响电路中的故障检测.例如扫描链的构成分别为{a1,a2},{a3,a4},伪随机测试向量集实现为{1010,0101,1111},经过模拟可知检测了20个故障,有10个故障未测,故障覆盖率为66.67%.此时扫描链间的相关性就表现在由于输入信号a1和a3,a2和a4排序在相同列上,只能取相同的值.如果电路中存在需要a1和a3或a2和a4取不同值才能检测的故障,那么这样的故障在这种测试向量输入情况下就不能检测了.由上述分析我们可以看出不同的多扫描链构造形式对故障覆盖率的影响不同.仍以图5中所示的电路为例,如果扫描链的构成变为{a2,a1},{a3,a4},伪随机测试向量集实现为{1001,0110,1111},经过模拟知检测27个故障,有3个故障未测,故障覆盖率为90.00%.显然这种构造形式与上一种得到的扫描链间的相关性不同,进而对故障覆盖率的影响也不同.经过对上例的分析可知由于多扫描链的构造形式不同,即便是用同样的测试向量生成器,所能够实现的故障覆盖率也不同.这主要是由于在不同的多扫描链构造形式下扫描链之间的相关性不同造成的.定义1.一个电路中从输入信号PI存在至少一条路径可达输出信号PO,则称PO与PI相连通或PI与PO相连通.定义2.如果一个电路中至少存在一个输出信号PO,既与输入信号PI1相连通,又与输入信号PI2相连通,则称PI1与PI2是相关联的;否则称PI1与PI2无关.定义3.如果一个电路中共有N个输出信号既与输入信号PI1相连通,又与输入信号PI2相连通,则称PI1与PI2相关度为N,用(PI1,PI2)=N或(PI2,PI1)=N表示.如果PI1与PI2无关,则记(PI1,PI2)=0或(PI2,PI1)=0.根据对图5所示的电路的分析我们可以得到以下两个结论.结论1.如果两个输入信号PI1和PI2无关(见图7(a)),则把这两个输入信号排序在不同扫描链上的相同列上(如图8所示),不影响被测电路的故障覆盖率.结论2.如果两个输入信号PI1和PI2相关联(见图7(b)),则把这两个输入信号排序在不同扫描链上的相同列上时,PI1与PI2的相关度N越大,被测电路的故障覆盖率降低的可能性就越大.观察图7(b)可以看出N越大,图中阴影区域越大.阴影区域中的故障的检测受PI1和PI2的影响,如果把这两个输入信号排序在不同扫描链上的相同列上,则这两个输入信号只能取相同的值,此时阴影部分中的故障覆盖损失可能性随着N越大而越大.由上述分析可知为了提高故障覆盖率,要求构造多扫描时尽可能地将无关的输入信号排序在多扫描链的相同列上.定义4.在多扫描链构造中扫描链S1和S2之间的相关度用Γ(S1,S2)表示.其中S1中触发器排序为{C1,1,C1,2,…,C1,n},S2中的触发器排序为{C2,1,C2,2,…,C2,m},则得Γ(S1,S2)=min(n,m)∑i=1(C1,i,C2,i)=CL∑i=1(C1,i,C2,i)(1)这里需要说明的是多扫描链构造是等长排序的,排序的结果可能是n等于m或者n与m相差为1.为了简化公式,本文规定单扫描链长度CL=n=m.推导的结果对n与m相差1的情况也同样适用.定义5.一个具有k个并行扫描链的多扫描链M中两两不同扫描链之间的相关度之和定义为该多扫描链M的相关度R(M),记为R(Μ)=k-1∑i=1k∑j=i+1Γ(Si,Sj)=k-1∑i=1k∑j=i+1CL∑t=1(Ci,t,Cj,t)(2)仍以图5中电路为例,当扫描链的构造为{a1,a2},{a3,a4}时,对应的扫描链相关度R(M)=4;而当扫描链的构造为{a2,a1},{a3,a4}时,对应的扫描链相关度R(M)=1.因而在结论1和2的基础上我们可以进一步得结论3.结论3.在扫描链数k一定的情况下多扫描链的相关度越大,则被测电路的故障覆盖率降低的可能性就越大;反之多扫描链的相关度越小,则被测电路的故障覆盖率降低的可能性就越小.用具有最小相关度的多扫描链测试时,被测电路的故障覆盖率降低的可能性最小.基于此,本文提出的多扫描链构造的目的就是要在规定的扫描链数k的情况下实现具有最小相关度minR(M)的多扫描链.公式(2)进一步变形为R(Μ)=CL∑t=1k-1∑i=1k∑j=i+1(Ci,t,Cj,t)=CL∑t=1Ρos(t)(3)Ρos(t)=k-1∑i=1k∑j=i+1(Ci,t,Cj,t)(4)其中Pos(t)的含义为多扫描链上第t列上两两输入信号之间的相关度之和,而R(M)的含义则为多扫描链上每列上的相关度之和,CL为单扫描链长度.从式(4)我们可以得到一个具有更一般意义的公式,见式(5).Ρos(t)=|t|-1∑i=1|t|∑j=i+1(Ci,t,Cj,t)(5)这里|t|为多扫描链的第t列上的输入信号数.此时多扫描链的相关度的含义对于n=m或n与m相差为1的情况都适用.定义6.对于多扫描链M而言,如果存在两列t1和t2上的两个输入信号Cθ,t1和Cφ,t2满足不等式∑t1θ+∑t2φ>∑t1θ,φ+∑t2φ,θ‚t1≠t2∈[1‚CL]‚θ∈[1‚|t1|]‚φ∈[1‚|t2|],则交换这两个输入信号在多扫描链M上的位置,这样的交换过程被称为一次交换操作.其中∑t1θ=|t1|∑i=1,i≠θ(Ci,t1,Cθ,t1)‚∑t2φ=|t2|∑i=1,i≠φ(Ci,t2,Cφ,t2)‚∑t1θ,φ=|t1|∑i=1,i≠θ(Ci,t1,Cφ,t2)‚∑t2φ,θ=|t2|∑i=1,i≠φ(Cθ,t1,Ci,t2),其中CL为单扫描链长度,|t1|和|t2|分别是第t1列和第t2列上的输入信号数.从定义6可以看出一次交换操作交换的一定是不同两列上的两个输入信号的位置,这是因为根据公式(3)可知,同一列上的两个输入信号的位置的交换不影响该多扫描链对应的相关度的大小.定理1.对于一种多扫描链M0而言,经过有限次的一次交换操作,一定能够实现一种构造形式MP,对应该构造形式得到的多扫描链的任意两个列t1和t2上的任意两个输入信号Cθ,t1和Cφ,t2,∀t1≠∀t2∈[1,CL],∀θ∈[1,|t1|],∀φ∈[1,|t2|],不等式∑t1θ+∑t2φ≤∑t1θ,φ+∑t2φ,θ均成立,且该多扫描链对应的相关度R(MP)最小.证明.该定理分两步证明.第一步首先证明从构造形式M0经过有限次的一次交换操作,一定能够实现一种对应任意两列上的任意两个不同的输入信号均满足定理中的不等式条件的构造形式MP;第二步证明构造形式MP对应的相关度R(MP)最小.第一步证明:对于多扫描链M0而言,如果扫描链上的任意两列上的任意两个输入信号均满足定理中的不等式条件,则M0为最终结果MP.否则多扫描链M0上一定存在至少一对分布在不同列上的不同输入信号,使得不等式的关系不满足.任取一对,假设为A和B,A在ti列上,B在tj列上,ti≠tj∈[1,CL],同时∑tiA+∑tjB>∑tiA,B+∑tjB,A,此时得多扫描链M0对应的相关度为R(Μ0)=Ρos(ti)+Ρos(tj)+CL∑t=1,t≠ti,t≠tjΡos(t)(6)将A和B在多扫描链M0上位置交换得新的多扫描链M1,此时R(M1)相对于R(M0)只是ti和tj两列的相关度值发生了变化,其它列的值不受影响,则得R(Μ1)=Ρos(t1i)+Ρos(t1j)+CL∑t=1,t≠ti,t≠tjΡos(t)(7)此时Ρos(ti)=∑tiA+u‚Ρos(tj)=∑tjB+v‚Ρos(t1i)=∑tiA,B+u‚Ρos(t1j)=∑tjB,A+v‚u和v分别为与输入信号A和B无关的值.显然由于∑tiA+∑tjB>∑tiA,B+∑tjB,A,可得Pos(t1i)+Pos(t1j)<Pos(ti)+Pos(tj),进一步得R(M1)<R(M0).再对新的多扫描链M1进行判断,如果其任意两列上的任意两个输入信号均满足不等式条件,则M1为最终结果MP.否则进行一次交换操作得新的多扫描链M2,且R(M2)<R(M1),以此类推.从上述分析可知每执行一次交换操作得到的新的多扫描链的相关度值递减一次,变化差值为一个正整数.同时由于对于任何多扫描链设计,能够实现的最小相关度一定是一个大于等于0的正整数,即存在下限值,所以这种相关度值递减停止的条件,也是一次交换操作停止的条件一定是得到一种构造形式MP,该构造形式对应的多扫描链上的任意两个列t1和t2上的任意两个输入信号Cθ,t1和Cφ,t2,∀t1≠∀t2∈[1,CL],∀θ∈[1,|t1|],∀φ∈[1,|t2|],不等式∑t1θ+∑t2φ≤∑t1θ,φ+∑t2φ,θ均成立,且一次交换操作的次数有限,否则仍可进行一次交换操作.第二步证明:已知对于多扫描链MP而言,扫描链上的任意两个列t1和t2上的任意两个输入信号Cθ,t1和Cφ,t2均满足∑t1θ+∑t2φ≤∑t1θ,φ+∑t2φ,θ.如果交换多扫描链上的任意两个不同的输入信号,则只能存在两种情况.情况1.这两个输入信号在相同列上,它们的位置交换不影响相关度R(MP).情况2.这两个输入信号分别在不同的两列上,它们的位置交换后得到新的多扫描链对应的相关度只能大于等于R(MP).因此由此可见多扫描链MP对应的相关度R(MP)值最小.证毕.从式(3)和定理1的证明可知实现最小相关度的多扫描链的构造不唯一,但最小相关度R(MP)值则一定唯一.此外这里需要说明的是假设|t2|为1时φ=1且∑t2φ=∑t2φ,θ=0.根据定理1可得具有最小R(M)的多扫描链的构造算法如下:Step1.根据给定的电路计算两两不同输入信号的相关度;Step2.输入多扫描链中扫描链数k,计算单扫描链的长度CL,把电路的全部输入信号分布在k个扫描链上;Step3.t1=1,t2=2,θ=1,φ=1;Step4.计算∑t1θ‚∑t2φ‚∑t1θ,φ‚∑t2φ,θ;Step5.如果∑t1θ+∑t2φ>∑t1θ,φ+∑t2φ,θ,则交换输入信号Cθ,t1和Cφ,t2在扫描链上的位置,转Step3;如果∑t1θ+∑t2φ≤∑t1θ,φ+∑t2φ,θ,则判断多扫描链上的第t2位上输入信号是否都被分析完成,是则转Step6;否则φ=φ+1,转Step4;Step6.判断多扫描链上的第t1位是否都被分析完,是则转Step7;否则θ=θ+1,φ=1,转Step4;Step7.判断多扫描链上的第t2位是否是最后一位,是则转Step8;否则t2=t2+1,θ=1,φ=1,转Step4;Step8.判断多扫描链上的第t1+1位是否是最后一位,是则算法结束,输出多扫描链的构造;否则t1=t1+1,t2=t1+1,θ=1,φ=1,转Step4.多扫描链的构造算法的复杂度为Ο(ΝΙk∑i=1k(ΝΙ-ik)),NI为电路中的输入端数,k为扫描链数,x表示大于等于x的最小正整数.此外步骤1中计算不同信号间相关度的复杂度为O(N21+N1NO),NO为电路中的输出端数.仍以图5所示的例子电路来说明多扫描链构造算法.该电路的输入信号与输出信号的连通性及输入信号间的相关度分别见图9(a)和(b).其中图9(a)中的输入信号与输出信号的相交处填写1表示相连通,其它表示不相通.采用两个扫描链来测试该电路,这两个扫描链初始化为图6.根据多扫描链构造算法,t1=1,t2=2,θ=1,φ=1,这时考察的输入信号是a1和a2,进一步得∑11=(a1‚a3)=2‚∑21=(a2‚a4)=2‚∑11,1=(a1‚a4)=0‚∑21,1=(a3‚a2)=1.此时∑11+∑21>∑11,1+∑21,1,则交换a1和a2在扫描链上的位置.再初始化t1=1,t2=2,θ=1,φ=1,对扫描链重新进行考察,最后得图10中的两扫描链的构造形式,其对应的R(M)最小为1.4测试生成结构的建立构造相关度R(M)最小的多扫描链虽然能够减少由于不同扫描链之间的相关性,进而提高利用多扫描链测试时的故障覆盖率,但仍不能保证实现电路中故障的完全检测.这主要因为电路中仍存在一些要求多扫描链的同一列上的信号相异才能检测的难测故障.对于这些难测故障可以通过改变部分扫描链上的特定位置的值实现对它们的检测,具体结构见图11.图中异或门的一个输入连接多扫描链上特定的位置,另一个输入受控制信号test_con和BCL电路输出的控制,而BCL的输出又受LFSR状态的控制.当test_con值为‘0’时,BML电路的输出为扫描链上的值;当test_con值为‘1’时,在某一LFSR状态作用下BCL输出为1,则使扫描链的某特定位上的值经过异或门后变为原值的反,再输出到被测电路.在此功能定义下BCL电路可以用PLA来实现.此外从图11还可以看出多扫描链上的信号到BML电路的输出只通过一个异或门,因此附加BML逻辑电路对电路的性能影响不大.这里需要说明的是:本文采用LFSR的特征多项式均是本原多项式,即利用该LFSR可以实现最大周期的伪随机序列.其次当扫描链长度m与2s-1(s为LFSR阶数)满足互质时,s阶LFSR可以向m位长的扫描链生成2s-1个不同的测试向量.由于本文提出的测试向量生成方法是采用CL阶LFSR向CL位长的多扫描链同时生成测试向量,所以在多扫描链构造过程中扫描链数k的选取应注意尽可能地满足CL与2CL-1互质的条件,以保证能够生成2CL-1个测试向量.这样对于任何针对难测故障生成的测试向量,总能够通过找到一个由LFSR输入到多扫描链中的向量,通过改变其中部分特定位上的值实现.进而还可以避免对同一个多扫描链中的向量的多次特定位的改变以实现不同的测试向量的现象.仍以图5中的例子电路说明BML设计.该电路的扫描链的构成为{a2,a1},{a3,a4},在应用测试向量集{0110,1001,1111}的基础上添加测试向量{1010,1100}就可以实现对电路中所有故障的完全检测.这两个添加的测试向量的实现方式分别见图12中的(a)和(b).根据图12可知BCL实现的功能为当LFSR的状态为(11)和(10)时BCL分别输出为1,其它时则输出0,因而对每一特定位的控制信号设计结果如图13所示.经过分析可知如果实现不同测试向量时需要改变的特定位的位置是相同的,则这些特定位的信号可以共用一个BCL输出信号,图13中的电路可以进一步简化为图14所示的电路.在此测试生成结构下该电路的测试过程如下:综上所述本文提出的基于多扫描链的内建自测试方法的设计过程如下:(1)先根据扫描链个数k确定多扫描链中单扫描链的长度CL,进而确定测试向量生成器LFSR的阶数CL,然后再进行多扫描链的构造;(2)应用全部2CL-1个测试向量测试被测电路,考察故障覆盖率,确定难测故障集;(3)利用ATPG生成难测故障集的最小确定性测试向量集;(4)根据最小确定性测试向量集设计硬件开销最小的位改变逻辑电路.从对图3—14所示的例子电路的BML电路设计可知影响BML电路实现的硬件开销的因素有:应用全部2CL-1个测试向量所能实现的故障覆盖率FC、最小确定性测试向量集T和针对每一个确定性测试向量需要改变的特定位的个数.当初始实现的故障覆盖率FC越大则BML电路硬件开销越小;当测试向量集T越小则BML电路的硬件开销越小;针对每一个确定性测试向量需要改变的特定位的个数越少则BML电路的硬件开销越小,反之则越大.因此为了使BML电路实现的硬件开销小,BML电路设计的一般原则如下:(1)为实现一个特定的测试向量,需改变的特定位尽可能地少;(2)实现不同的测试向量时需改变的特定位的位置尽可能地相同或在其它测试向量的实现中该位置对应的值为无关位;(3)避免实现不同的确定性测试向量应用同一个LFSR状态控制实现.5显示的输出信号数表1显示的是验证电路的规模及多扫描链构造算法的执行时间;第2列显示的输入信号数是指电路的原始输入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年省级人力资源服务业发展扶持资金知识题库
- 2026年智能电网建设与管理技术题库
- 2026年乡镇干部防汛抗旱应急预案编制知识题库
- 2026年青年干部数据安全法知识竞赛题库
- 2026年基金会项目专员招聘面试题库
- 2026年中国电信云计算岗面试预测题及解析思路
- 泰康人寿杭州拱墅区2026校园招聘半结构化面试题及思路
- 2026年新增普惠性托育机构及托位建设标准与运营补贴政策知识问答
- 2026年质量状况分析报告年度专项编制问答
- 2026年工会干校干部培训岗面试模拟
- 医疗器械网络经营培训
- 足浴按摩店卫生管理制度
- 艾滋病知识防治培训课件
- 2026年《职业病防治法》宣传周知识竞赛考试题库附参考答案
- 《生活中的人工智能》课件
- 2025年五类人员考试真题及答案
- 断绝姐妹关系协议书
- 2026年物流配送数字化方案与企业配送效率提升指南
- 5年(2021-2025)山东高考生物真题分类汇编:专题13 种群和群落(解析版)
- 沪教版三年级下学期(新版)数学第4单元单元试卷(附答案)-02
- 电厂工程取水口施工方案
评论
0/150
提交评论