论文部分内容阅读
随着集成电路制造工艺的进步和电路规模的扩大,芯片设计进入片上系统(System on a Chip,SoC)时代。由于片上系统嵌入了各种芯核,出现了测试数据上升、测试芯核难以控制等问题。内建自测试(Built-in Self-Test,BIST)方法通过在芯片内部集成少量的逻辑电路实现对电路的测试,被认为是解决SoC测试问题的一种有效的可测试性设计方法,已经成为电路测试技术领域新的研究热点。BIST设计目标是采用少量的硬件开销,在较短的时间内完成故障覆盖率较高的测试,即BIST硬件开销要小,测试时间要短,故障覆盖率要高。另外,由于测试模式下的输入序列之间缺乏相关性,因此测试模式下的功耗比功能模式下的功耗要高,这将使测试功耗很容易超标,导致芯片损坏,因此降低测试功耗也是BIST的又一个设计目标。本论文以测试硬件开销、测试时间以及测试功耗作为BIST的测试成本,对确定性的BIST方案进行了优化研究,主要工作包括:(1)扭环计数器(Twisted Ring Counter,TRC)特性研究。从TRC所产生的序列入手,对TRC的冗余特性、跳变计数(功耗)特性以及TRC种子的等价特性进行了深入细致地研究,得到的有关TRC性质将被用来指导基于TRC的确定性BIST设计。(2)针对低测试数据的确定性BIST,对基于TRC垂直压缩的确定性BIST进行了研究。首先,提出了一种适用于计数器作为BIST的向量产生器的垂直压缩算法/种子选择算法,该算法利用测试集中的测试向量来计算所需要的种子,因此,在设计BIST结构时只需存储少量的种子,而不是全部的测试集;其次,由于在每个种子所生成的测试序列中包含有大量的冗余向量,为了删除测试过程中所生成的冗余序列,本论文给出了一种不影响测试数据的冗余序列删除算法,它利用前后两个种子所生成的最后一个非冗余序列片段的位置差来决定是否删除后一个种子的冗余序列片段;最后,由于在TRC向量产生器设计中使用了被测电路(Circuit under Test,CUT)内部自身的触发器,这些内部触发器不再具有像传统的扫描结构的响应捕获功能,因此需要对触发器的输出以及被测电路的原始输出进行响应压缩,本论文给出了一种低硬件开销的响应压缩器结构,该响应压缩器由一个AND、OR和XOR构成的基本树空间压缩器和一个MISR时间压缩器构成,由于在基本树空间压缩器中除了包含AND和OR之外,还增加了XOR,因此压缩效率和硬件开销都可得到优化。(3)针对低测试数据和短测试时间的确定性BIST,对基于TRC二维压缩的确定性BIST进行了研究。结合基于TRC垂直压缩算法和冗余删除算法,设计了两种以优化测试数据和测试时间的二维压缩的确定性BIST方案:第一种是将输入精简技术和基于TRC垂直压缩技术相结合,提出了一种有效地二维压缩方案,该方案采用基于TRC垂直压缩实现测试向量个数的减少,以及利用输入精简技术实现测试向量位数的减少,从而显著地减少确定性测试向量集的长度和宽度,由于输入精简技术压缩了TRC种子的宽度,并且提出的冗余删除方案的实施,因此该方案能够有效的减少测试数据和测试时间,但是需要调整输入端顺序;第二种是将LFSR重播种和基于TRC垂直压缩技术相结合,提出了一种基于LFSR重播种的二维压缩方案,这里每个LFSR种子首先被解码成一个TRC种子,再由TRC种子产生测试向量,理论分析表明,编码一个含有smax个确定位的TRC种子所需的LFSR长度从smax+20减小到smax+2,提高了编码效率,在设计BIST结构时,只需存储LFSR种子,而不是TRC种子,因此,该方案能够有效的减少测试数据,此外,采用在预指定阶段产生冗余标记矢量,减少了每个TRC种子所产生序列片段的个数,因此缩短了测试时间。(4)针对低测试数据、短测试时间和低测试功耗的确定性BIST,对基于可重构TRC和基于LFSR扫描切片重叠的确定性BIST进行了研究。在可重构TRC确定性BIST方面,结合基于TRC垂直压缩算法,设计了两种以优化测试功耗的可重构确定性BIST方案,两种方案都是通过有选择的凝固部分输入端而实现的,其中,第一种方案通过排序输入端将满足凝固条件的输入端放置在扫描输出端口的一端,并且对所有输入端进行分组,实现部分重播种和部分输入端凝固功能,从而减少了测试功耗以及测试数据;第二种方案通过改进传统的扫描单元结构,使其不仅具有扫描功能,而且具有旁路功能,实现只有一半输入端工作,而另一半输入端凝固,从而减少了测试功耗,此外,由于采用了“奇全偶半”的重播种方式,因此,具有偶数序号的种子只需要一半的测试数据存储,从而减少了测试数据。在基于LFSR扫描切片重叠的确定性BIST方面,提出了一种扫描切片划分的优化方案,实现了测试数据和测试功耗的减少,首先,利用输入精简技术对所有输入端进行分组,在每个相容组中挑选一个输入构成扫描链,以便减少扫描链的长度,进而减少需要存储的控制向量的测试数据以及测试时间;接着,针对扫描切片划分方案提出了一种输入端随机排序算法对经过输入精简技术所得到的相容输入集进行优化排序,以便优化测试功耗以及测试数据;最后,提出了一种以含有最大确定位的扫描切片为开始扫描切片的最优扫描切片划分算法。通过提出的三个算法的优化,测试数据、测试时间和测试功耗都得到减少。