目录
摘要 I ABSTRACT II 1绪论 1 1.1研究背景 1 1.2研究目标及其内容 3 1.2.1研究目标 3 1.2.2研究内容 4 1.3文章的组织 4 2.扫描树结构 5 2.1构造扫描树 5 3.扩展扫描树技术 7 3.1扩展相容性的概念 7 3.2构造扫描树 8 3.3减少扫描输出个数 9 3.4降低平均功耗 11 4扩展相容性扫描树的构造方法 12 4.1相容图 12 4.2原始扩展相容性扫描树构造算法 12 4.3改进的扫描树构造算法[28] 14 4.3.1扫描单元重新分组 15 4.3.2分组重新排序 16 4.3.3扫描树倒置 16 4.3.4扩展扫描树的改进算法 16 4.4此算法的缺点 17 5.基于哑元的扩展相容性扫描树构造方法 18 5.1子节点的表示 18 5.1.1异或节点为其子节点的唯一前驱节点 18 5.1.2异或节点为其子节点的两个前驱节点之一 18 5.2新的扫描树构造方法 19 6.平台工具选择及实验结果与结论 21 6.1平台工具选择 21 6.2实验结果 22 总结与展望 24 致谢 25 参考文献 26 1绪论 1.1研究背景 电子系统广泛的应用于生活的每个角落,其中集成电路(IC)是其关键部分。近几十年来,随着超大规模集成(VLSI)技术的迅猛发展,芯片中晶体管的密度在指数的增加。全扫描测试设计是VLSI电路和系统芯片(SoC)核中最重要的可测性设计(DFT)方法之一。在这种DFT方法中,所有的触发器被修改成扫描触发器,测试应用时间与最长的扫描链的长度成正比。虽然全扫描测试降低了测试的复杂性,但是这种测试方法在测试应用时间,测试数据量,测试功率等方面等方面花费了巨大的代价,并且还增加了硬件成本。 近几年来,关于低费用测试,涌现出大量新的技术[1-6]。一般地说,目前的低费用测试研究主要是利用压缩方法,在芯片中放置解压缩硬件,达到用少的数据量和时间来测试电路的目的。带轮转扫描链的行程编码[1],哈夫曼编码[2],格林编码[3]被用来压缩测试数据。文献[4]中的方法通过重配置开关用限定的外部的输入控制大量的内部扫描链来测试整个电路,有效地减少了测试数据量和测试应用时间。VirtualScan技术[5]通过在外部扫描端口和内部大量扫描链之间桥接广播器和压缩器,减少全扫描电路中的最长扫描链长度来降低测试费用。CircularScan构造[6]在扫描输入测试向量时,仅替换与捕获测试响应不同的那些位,从而大量的减少测试数据量和测试应用时间。 最近,扫描树技术[7-12]被提出用来减少测试应用时间。在这些技术中,扫描单元被构造成一个树型结构。对比单扫描链型结构,电路中最长的扫描链的长度降低了,从而降低了测试数据量和测试应用时间。在扫描操作中,经过根扫描单元测试数据被扫描进入扫描树的每一个节点(对应于一个扫描单元)。扫描单元在扫描树的同一级上有相同的测试数据。因此,为了保持故障覆盖不变,同一级上的所有扫描单元对所有的测试向量相容。作为扫描树技术最原始的想法,文献[7]将扫描单元划分成几个扫描链,同时电路具有两种测试模式,并行装入和串行装入。在并行装入模式下,所有的扫描链同时装入同样的测试数据,减少了测试数据量和测试时间。文献[8]在文献[7]的基础上,为了降低提出串行装入的测试向量数,提供了两种不同的扫描单元划分方法。文献[9]构造一棵扫描树并且通过修改测试向量来最小化它的高度。文献[10]将[9]中的技术推广到多扫描链的情况。文献[11]采用了交叠模式,增强了并行性,用扫描树结构得到更好的解。在文献[12] 中,通过单扫描链模式和扫描树模式的动态重构来大量地减少测试应用时间和测试数据量。 然而,在上面的这些低费用测试方法,为了降低测试应用时间,被测电路(CUT)中产生太多跳变,功率消耗极高。 如今,过高的测试功耗成为集成电路测试中最重要的问题之一。在CMOS电路中,测试功耗正比于电路的时钟频率和开关跳变[13]。因此,降低时钟频率或开关翻转的活跃性都能降低测试功耗。文献[14] 降低了测试功耗通过降低时钟频率,但测试时间同比增长且不能降低峰值功耗。大部分方法通过降低电路内部信号翻转的活跃性来降低测试功耗。为了最小化测试功耗,文献[15-18]中的方法采用了测试向量和(或)扫描单元重新排序技术。这些方法的基本思想是找到测试向量集的新顺序,使得连续的测试向量之间的关系增加。文献[19,20]为了提高连续测试向量的相关性,降低测试功耗,将测试立方中的不确定位赋值为适当的值0或1。文献[21-25] 使用阻塞部分扫描链时钟的技术来降低功率消耗。Whetsel[21],Saxena[22]和Bonhomme[23] 提出了三个低功耗测试方案。在这些方案中,扫描链被分成N个子扫描链,其中N整数且N>1。在扫描移位时,仅有一个子扫描链的时钟没有被阻塞,因此,平均功耗降低。类似于文献[21-23],文献[24] 将扫描链被分成N个子扫描链,在扫描移位和捕获测试响应时,仅有一个子扫描链动作,平均功耗和峰值功耗都大大地降低。Bhattacharya[25]提出了双重树扫描结构。在这个结构里,扫描单元被排成两颗叶子重合的K级二叉树,在扫描移位时,仅有在一个扫描路径上的扫描单元动作,平均功耗大量降低。然而,这些低功耗测试方法没有考虑降低测试应用时间和测试数据量,测试费用没有或者没有明显降低。 我们以前提出了一些基于扩展相容性扫描树的测试方法[26-29]。在扩展相容性扫描树测试技术中[26],通过添加逻辑非和异或函数扩展了扫描单元的相容性,并对相容的扫描单元扫描移入相同的测试向量值,可以显著减少测试应用时间和平均测试功耗。文献[27]将文献[26]中的方法推广到有多个扫描输入的情况。文献[28]中的方法为了降低扫描输出的个数和降低布线复杂性,利用原始扩展相容性扫描树扫描单元的分组结果,将扫描单元重新分组,按分组的大小重新排序,并把扫描树倒置。文献[29]中的方法为了进一步降低测试应用时间和扫描输出的个数,首先对被测电路相容性的好坏进行评定,然后利用对相容类加权的方法,同时结合本文提出的减少扫描输出个数的规则来控制异或结点数量,构造了新的扩展相容性扫描树,最后对该扫描树进行了优化。 1.2研究目标及其内容 1.2.1研究目标 随着超大规模集成(VLSI)技术的迅猛发展,集成电路的测试日益成为一个挑战。全扫描设计是最重要的可测试性设计(DFT)方法之一,其主要思想是通过在触发器之间添加逻辑,并对电路添加测试模式,使全部触发器都具有全可控性和全可观察性。在测试模式下,所有触发器在功能上形成一个或多个扫描链,各个扫描链通过扫描移位,所有触发器都可被设置成任意期望的逻辑值。尽管全扫描测试可以彻底地降低测试生成的复杂性,但测试应用时间太长,测试功耗过高,因此测试费用非常高,降低测试费用是数字电路测试中当务之急要解决的问题之一。 扩展相容性扫描树技术能同时降低集成电路的测试应用时间和测试功耗,但是其构造的扫描树的扫描输出过多,测试硬件开销很高。研究发现,通过调整生成的扫描树的异或相容的叶子节点,可以极大地降低测试硬件开销和扫描输出个数。本课题对扩展相容性扫描树结构进行调整,使其能够进一步的降低测试功耗,同时方便于测试响应压缩。并提出一种低费用方法,测试硬件开销和扫描输出个数降低50%左右,使此方法更易用于生产实践。 1.2.2研究内容 扫描树技术被提出用来减少测试应用时间和测试功率。在这些技术中,扫描单元被构造成一个树型结构。对比单扫描链型结构,电路中最长的扫描链的长度降低了,从而降低了测试数据量和测试应用时间。在扫描操作中,经过根扫描单元测试数据被扫描进扫描树的每一个节点(对应于一个扫描单元)。扫描单元在扫描树的同一级上有相同的测试数据。因此,为了保持故障覆盖不变,同一级上的所有扫描单元对所有的测试向量相容。 构造一棵扫描树并且通过修改测试向量来最小化它的高度。将技术推广到多扫描链的情况。采用了交叠模式,增强了并行性,用扫描树结构得到更好的解。通过单扫描链模式和扫描树模式和动态重构来,测试应用时间和测试数据量被大量地减少。 提出一种扫描树结构。在这个结构中,扫描单元的相容性的概念被推广了。与以前的扫描树方法相比较,这种方法的测试应用时间更短、测试功耗更低。但是只是针对只有一个扫描输入的电路,然而,在实际应用中,被测电路往往有多个扫描输入。因此,需要提出一种新的针对多个扫描输入电路的扫描树结构。 1.3文章的组织 本论文的组织如下。第二,三,四章介绍已经存在的扫描树测试方法。其中第二章介绍了一般的扫描树结构。第三章给出了我们以前提出的扩展相容性的概念。第四章简述了我们以前提出的扩展相容性扫描树的构造方法。第五章描述了我们提出的方法。第六章给出了实验结果和结论。论文的最后一部分给出了总结和未来工作的展望。 2.扫描树结构 扫描树结构给出了同级扫描触发器来使扫描单元在所有的扫描向量中能够接受同样的测试值。在这些技术中,扫描单元被用来构造一个树型结构。对比单扫描链型结构,测试结构中最长的扫描链的长度(即扫描树的层数)降低了,从而降低了测试数据量和测试应用时间。在扫描操作中,经过扫描输入端,测试数据被扫描移位进入扫描树的每一个节点(对应于一个扫描单元)。在扫描树同一级上的扫描单元有相同的测试数据,因此,为了保持故障覆盖率不变,同一级上的所有扫描单元对所有的测试向量相容。当测试向量集中的测试向量带有不确定位时,扫描树测试技术是非常用有效的。 我们使用X表示测试向量中的不确定位。 |