论文部分内容阅读
集成电路(integrated circuit,IC)测试是保证数字IC产品安全可靠工作的一个必不可少的环节。随着电路规模的不断增大,大规模集成电路测试所需的测试数据量也随之增加,使得IC测试面临着测试应用时间过长、存储开销过大等诸多问题。同时,随着IC系统工作时钟频率的提高,以确保IC时序特征的正确性为目标的时延测试也成为了测试领域的一个热点问题。本文着眼于单固定型和时延故障两种故障模型。针对单固定型故障,研究新的低费用的测试压缩方法,进一步减少测试数据量、测试硬件开销和测试应用时间。针对跳变时延故障,研究一种新的时延测试产生方法,提高时延故障覆盖率。针对小时延故障,开发出一个时间效率高、内存资源消耗低、故障覆盖率准确度高的小时延故障模拟器。本文创新性的主要工作有:(1)合理利用被测电路自身的资源,提出了一种结合LFSR(linear feedback shift register)重播种和自反馈测试(test vectors applied by circuit-under-test,TVAC)的内建自测试(built-in self-test,BIST)方法。提出的LFSR重播种方法提高了 LFSR种子求解的概率,并降低了 LFSR种子的长度,减少了 TVAC需要反馈的节点数和搜索空间。提出的改进的信息矩阵快速判断方法减少了 TVAC方法中回溯的代价以及路径搜索所需的时间开销和空间开销。在保证完全故障覆盖率的前提下有效地减少了测试应用时间和测试硬件开销。(2)充分利用测试中的数据位流,提出了一种基于受控移位的test-per-clock确定型测试方法。充分利用输入位流来构建测试向量,提出了一种基于受控移位的测试向量生成方法,通过控制线性移位的首位生成测试序列,将测试集以较小的代价嵌入到输入位流中,从而达到压缩测试数据和测试应用时间的目的。为了进一步提高测试效率,扫描树广播技术被采用。提出了一种迭代的扫描树构建方法,实现了最小高度扫描树的构建。与单扫描链模式相比,进一步减少了测试数据存储量、测试应用时间以及测试生成时间。(3)从继续优化测试数据流出发,提出了一种基于串行移位的递进式反复测试生成方法——在每次测试生成中,通过利用输入位流控制移位寄存器的移位来动态匹配测试向量,直到所有故障都被检测。当输入位流被确定后,逆向模拟测试集,并不断更换起始向量,反复测试生成,进一步精简输入位流。(4)将受控移位测试生成方法应用到了 N-Detect。提出了一种将N-Detect测试集有效嵌入到受控位流中的方法,解决传统N-Detect测试向量存储过大、测试应用时间过长等问题。与传统N-Detect测试生成最大的不同是,本方法对每个故障都产生N个传播路径不同的测试向量,保证了为每个故障提供N种不同的电路检测状态。实验结果表明,本方法具有更高的检测非模型化故障的能力,且大大降低了传统N-Detect测试方法所需要的存储开销和测试应用时间。(5)针对传统歪斜负载时延测试(latch-on-shift,LOS)和宽边时延测试(latch-on-capture,LOC)中由于向量对之间的相关性使得故障覆盖率不高等问题,首次提出了一种专门针对“冒险”(hazard)可测条件进行时延测试生成的方法。在分析了“冒险”脉冲检测时延故障的可行性和必要性后,利用改进的传统固定型故障的测试生成工具实现了对基于“冒险”可测的跳变时延故障的高效测试生成,相对于传统LOS和LOC测试生成,有效地提高了跳变故障覆盖率。(6)为了降低小时延故障的模拟成本、有效辅助测试生成,提出了一种高效的小时延故障模拟器。该方法考虑到了重汇聚敏化和“冒险”检测条件,相对于传统基于通路的故障模拟,模拟结果更为精确。采用了改进的二进制位串波形表达方式,增强了波形的表示能力,相对于其他波形表达方式,使波形表示更为简单、易于存储和处理。临界路径追踪技术被有效应用于小时延故障模拟,实现了对故障检测区间进行快速判断,进一步加速了模拟过程。