1、可测性设计可测性设计可测性设计可测性设计Design for Testability 可测性设计目录目录一 可测性设计引言二 可测性设计的重要概念三 边界扫描测试可测性设计可测性设计引言可测性设计引言v 微电子学迅速发展v 集成电路规模迅速膨胀v 电路结构越来越复杂v 芯片管脚封装的密度越来越高可测性设计可测性设计简介可测性设计简介v 大量故障变的不可测,因此过去由设计人员根据所完成的功能来设计电路,而测试人员根据已经设计或研制完成的系统和电路来制定测试的方案的传统做法已不适应实际生产的要求。v 功能设计人员在设计系统和电路的同时,必须考虑到测试的要求,即衡量一个系统和电路的标准不仅有实现功能
2、的优劣,所用器件的多少,而且还要看所设计的电路是否可测,测试是否方便,测试码生成是否容易等问题。这就是所谓的可测性设计可测性设计可测性设计的重要概念可测性设计的重要概念v 可测性设计 DFT(Design for Testability)有三类方法:a、Ad hoc 测试b、基于扫描的方法c、BIST(Built in Self Test)Ad hoc 测试:即专项测试,按功能基本要求设计电路,采取一些比较简单易行的措施,使他们的可测性得到提高 SCAN扫描测试:Full Scan、Boundary Scan 和 Partial Scan 内建自测试 BIST:是指利用设备内部具有自检能力的硬
3、件和软件来完成对设备检测的一种方法,这些硬件和软件是设备的一个组成部分,称为机内自测试设备。可测性设计可测性设计的重要概念可测性设计的重要概念v 可测性 Testability=Controllable+Observable Controllable 可控性指能够对电路中每个内部节点进行复位和置位的能力 Observable 可观性指不论用直接还是间接的方式都能观察到电路中任一个内部节点状态的能力可测性设计可测性设计的重要概念可测性设计的重要概念v 测试矢量与测试码自动生成(ATPG)(Automatic Test Pattern Generation)测试矢量是每个时钟周期应用于管脚的用于测
4、试或者操作的逻辑1和逻辑0的数据 测试码生成方法穷举法、功能定义法、ATPG、人工编码、故障模拟等 ATPG,即测试码自动生成,是根据逻辑电本身的结构用算法自动生成测试码可测性设计可测性设计的重要概念可测性设计的重要概念v 故障覆盖率 F(Fault Coverage)=检测到的故障数/2 内部节点数 F是随不同的假定故障而变化的可测性设计可测性设计的重要概念可测性设计的重要概念v 可测试性设计的目标 无冗余逻辑:逻辑实现存在冗余会增加测试生成的复杂性 增加集成电路的可控制性和可观性:随着集成度提高,晶体管数、引线数比例上升,这已成为提高电路可测试性的最根本措施 使测试码生成更容易 有利于提高
5、测试集的质量:包括故障覆盖率、测试集规模、实际测试时间等 电路的附加部分对原来电路的性能影响应尽可能少。可测试性设计都会增加额外测试电路,使芯片面积下降、速度下降,通常芯片面积可能会增加10%20%可测性设计边界扫描技术边界扫描技术v 内部扫描设计技术有两种:全扫描技术,将电路中所有的触发器用特殊设计的具有扫描功能的触发器代替,使其在测试时链接成一个或几个移位寄存器;部分扫描技术,只选择一部分触发器构成移位寄存器,降低了扫描设计的硬件消耗和测试响应时间。v 边界扫描测试方法于1990年成为IEEE的标准,即IEEE Std 1149.1-1990,目前最新的版本为IEEE1149.1-2001
6、2。该标准由JTAG(Joint Test Action Group)组织制订。边界扫描测试技术的基本思想是从集成电路本身的测试性设计入手,解决数字电路板的测试问题。可测性设计边界扫描技术边界扫描技术v 边界扫描结构定义了4 个基本硬件单元:测试存取口(TAP)、TAP 控制器、指令寄存器和测试数据寄存器组。TAP 一般包括4 条测试总线:测试数据输入总线(TDI)、测试数据输出总线(TDO)、测试模式选择总线(TMS)和测试时钟输入总线(TCK)。还有一个可选择的测试复位输入端(TRST3)。TAP 控制器是边界扫描的核心部分,整个测试逻辑都是由它按一定顺序调用的。在测试时钟TCK的作用下,
7、从TDI 加入的数据可以在移位寄存器链中移动进行扫描。可测性设计边界扫描技术边界扫描技术v 边界扫描单元电路TDITDOTCKTMS可测性设计边界扫描技术边界扫描技术v 边界扫描电路(Boundary Scan)可测性设计边界扫描技术边界扫描技术v 数字电路板使用边界扫描测试方法有三个前提条件:电路板上使用的集成电路(IC)支持边界扫描标准IEEE1149.1(目前ALTERA、XILINX和 LATTICE的主要系列的大规模可编程逻辑集成电路都支持IEEE1149.1)PCB上的IC按照测试性设计要求形成边界扫描链(即对数字电路板进行可测试性设计)有支持边界扫描测试功能的软件系统(用于建立边
8、界扫描测试所需要的各种文件和执行边界扫描测试,比如ASSET InterTech公司的ScanWorks 和法国Temento公司的DiaTem)可测性设计边界扫描技术边界扫描技术v 选择集成电路选择集成电路 在设计数字电路板时,应尽可能选择支持IEEE1149.1标准的集成电路。优先选用同时支持IEEE1149.1和IEEE1532标准的可编程集成电路。IEEE1532标准能使来自不同厂家的可编程逻辑集成电路使用相同软件进行编程。可测性设计边界扫描技术边界扫描技术v 设计边界扫描链设计边界扫描链 由于LATTICE、XILINX、ALTERA、TI和AD公司的编程软件工具不兼容,因此,为了便
9、于使用各自的编程软件工具进行编程,不同公司的可编程集成电路应放置在不同的扫描链上,每一个扫描链提供一个独立的用于编程和测试的JTAG接口。根据IEEE1149.1标准,JTAG测试接口包括TMS、TCK、TRST、TDI和TDO等5种信号。为了适应多JTAG接口的要求,边界扫描测试系统应提供多个JTAG接口,例如ScanWorks最多能提供16个JTAG接口。可测性设计边界扫描技术边界扫描技术 如果不同公司的可编程集成电路支持IEEE1532标准,则可以把它们放置在同一扫描链上。此时,可以使用相同的编程软件对来自不同公司的集成电路进行编程。尽量把具有相同电压等级的集成电路放在同一条扫描链中。S
10、canWorks可以提供可编程的JTAG接口电平,以适应不同电压等级的集成电路测试需要。若要把不同电压等级的集成电路设置在同一个扫描链中,则需要进行电平转换。在下图所示的扫描链中,后一个集成电路的TDI、TMS、TCK、TRST和TDO需要进行电平转换。可测性设计边界扫描技术边界扫描技术可测性设计边界扫描技术边界扫描技术 当把具有不同TCK的速度的集成电路设放置在同一个扫描链时,TCK速度必须设置为扫描链中最慢集成电路的TCK速度。可测性设计边界扫描技术边界扫描技术v 边界扫描测试接口信号的连接方法边界扫描测试接口信号的连接方法 边界扫描测试接口信号包括TMS、TCK、TRST、TDI和TDO
11、。为了保证这些信号的完整性,需要对进入数字电路板的接口信号进行缓冲,特别是TCK和TMS。常用的缓冲集成电路有54LS244。若54LS244不能满足速度要求,则可以采用速度更快的FPGA作为缓冲器。TRST是复位信号,常用接法如图2所示。该接法可以提高驱动能力,解决因集成电路内部上拉电阻并联后阻值过小而引起的TRST不能驱动为低电平的问题。可测性设计边界扫描技术边界扫描技术 可测性设计边界扫描技术边界扫描技术v 特殊功能引脚的连接方法特殊功能引脚的连接方法 某些支持边界扫描测试的集成电路有一些特殊功能引脚,这些引脚影响边界扫描测试功能。当进行边界扫描测试时,需要将这些引脚设置到特定的状态。在
12、使用集成电路之前,应仔细阅读该集成电路的BSDL文件,然后按照特殊功能引脚的使用要求进行合理的连接。BSDL文件是由集成电路制造商提供的描述该芯片边界扫描功能的一种文本格式的文件。可测性设计边界扫描技术边界扫描技术 下面举例说明如何正确连接特殊功能引脚。Xilinx SPARTAN XC2S150 FPGA的BSDL文件中指出:当处于边界扫描测试模式时,该芯片的PROGRAM引脚应设置为1;当处于其它工作方式时,PROGRAM引脚应设置为0。为了保证在边界扫描测试模式时,PROGRAM引脚能设置为1,该引脚应连接到一个开关上,利用开关可以设置PROGRAM引脚为1或0。TI公司的TMS320C6701(DSP)芯片,当处于正常工作或仿真调试状态时,EMU0和EMU1引脚应设置为11,而处于边界扫描测试状态时,EMU0和EMU1引脚应设置为00。这两个引脚不能连接到固定信号上,应连接到开关上,利用开关设置EMU0和EMU1引脚的状态。可测性设计总结总结总之,测试是很必要的可测性设计可测性设计