1. 背景介绍
随着电子电路集成度的提高,电路愈加复杂,要完成一个电路的测试所需要的人力和时间也变得非常巨大。为了节省测试时间,除了采用先进的测试方法外,另外一个方法就是提高设计本身的可测试性。其中,可测试性包括两个方面:一个是可控制性,即为了能够检测出目的故障(fault)或缺陷(defect),可否方便的施加测试向量;另外一个是可观测性,指的是对电路系统的测试结果是否容易被观测到。
在集成电路(Integrated Circuit,简称IC)进入超大规模集成电路时代,可测试性设计是电路和芯片设计的重要环节,它通过在芯片原始设计中插入各种用于提高芯片可测试性(包括可控制性和可观测性)的硬件逻辑,从而使芯片变得容易测试,大幅度节省芯片测试的成本。
后续章节的组织如下,我们将在第二章分析可测试性设计的几个关键问题;第三章分别介绍三种比较成熟的可测试性设计技术;最后一章对可测性设计技术进行了总结和展望。
2. 关键问题
一个好的可测试性设计技术需要解决以下几个关键问题:
第一,取得较高的可测试性:即要求可测试性设计能够尽可能的提高可控制性和可观测性,这就要求设计中必须尽可能多的给每个部分增加控制电路和观测电路。
第二,取得较低的额外性能和面积消耗(即降低Overhead):由于可测试电路对最终的芯片的实际工作是无益的,因此,必须尽可能的使减少这些逻辑,使之带来的额外的面积,功耗,以及性能消耗最小。
实际的设计中,必须平衡并且最优化上面两个目标,这就要求我们必须设计一种好的逻辑结构或者算法用来输入测试向量以及输出观测结果,并且额外增加的面积和功耗要尽可能小。扫描链(Scan Chain)[4]很好的满足上述特性,因此,无论是在学术界还是工业界的可测性研究中,扫描链都是一种必选的可测性设计基础结构。
基于对上述目标和认识,学术界和工业界提出了几种比较成熟的可测试性设计技术,主要有扫描路径设计、边界扫描设计、内建自测试等。我们将在下一章节分别介绍这三种芯片可测试性设计技术。
3. 几种常见的可测试设计技术
3.1 扫描路径设计(Scan Design)
扫描路径法[1][2](有的地方又译成内部扫描法,扫描设计)是一种针对时序电路芯片的DFT方案.其基本原理是时序电路可以模型化为一个组合电路网络和带触发器(Flip-Flop,简称FF)的时序电路网络的反馈。如图一所示: