基于边界扫描技术的电路板可测性设计分析

1 引 言

现代电子技术的高速发展对传统的电路测试技术提出了新的挑战。器件封装的小型化、表面贴装(SMT)技术的应用,以及由于板器件密度的加大而出现的多层印制板技术使得电路节点的物理可访问性逐步减低,原来借助于针床的在线测试(ICT)的局限性日益增大。电路和系统可测试性的急剧降低导致测试费用占电路和系统总费用的比重越来越高。人们已意识到,单靠改善测试方法来实现电路的测试及故障诊断是远远不够的。要从根本上解决问题,提高电路的可观测性和可控制性,在电路系统设计之初就要充分考虑测试及故障诊断的要求,即进行可测性设计(design-for-testability,DFT)。基于IEEE 1149.1标准(又被称为JTAG协议)制定的边界扫描技术是对DFT的一个飞跃发展。边界扫描技术的应用使得电路板上需要的测试节点数目减少,用于测试夹具的费用减少,比传统的ICT测试节省了时间,缩短了产品推向市场的周期。另外,边界扫描也支持CPLD、FPGA和Flash的 在线编程(ISP)。但是,在现实情况中,真正考虑到边界扫描测试的电路设计并不普遍。本文以对一个目标板所作的测试工作为例,探讨了在把边界扫描机制引入电路设计的前提下,如何增加板级互连的故障诊断覆盖率。

2 边界扫描机制的引入

边界扫描技术的基本思想是在芯片管脚和内部逻辑之间增加了串联在一起的移位寄存器组,在边界扫描测试模式下,寄存器单元在相应的指令下控制引脚状态,从而对外部互连及内部逻辑进行测试。边界扫描结构定义了4个基本硬件单元:测试存取口(TAP)、TAP控制器、指令寄存器和测试数据寄存器组。其中,TAP一般包括4条测试总线:测试数据输入总线(TDI)、测试数据输出总线(TDO)、测试模式选择总线(TMS)和测试时钟输入总线(TCK)。还有一个可选择的测试复位输入端(TRST*)。FAP控制器是边界扫描的核心部分,整个测试逻辑都是由它按一定顺序调用的。在测试时钟TCK的作用下,从TDI加入的数据可以在移位寄存器链中移动进行扫描。

目标板是一个中央资源板子系统,其结构如图1所示。主要作用是为数字通道子系统提供精确的时序信息,为数字通道板之间提供定时和控制信号,分析处理数字通道子系统和探笔子系统返回的数据。该电路板上有4个边界扫描器件:EPLD(EPM7256AETC144)、FPGA(EP1S25F780)、Flash EPROM(EPC8)和DSP(TMS320C6203B)。

在电路设计时,引入边界扫描结构首要考虑的问题就是尽可能地选择符合IEEE 1149.1标准的器件。目前大部分VLSI器件都带边界扫描结构,而对于小型芯片,在实现的功能相同的前提下,要尽量选用符合IEEE 1149.1标准的。

在此目标板上,我们将Flash EPROM(N30)、DSP(N31)、EPLD(N14)和FPGA(N24)依次连接起来,成为一个完整的扫描链路。TAP控制信号(TCK、TMS、TRST*)并联,前一器件的TDO和后一器件的TDI依次连接成链。其中只有DSP有TRST*信号。对于TRST*信号,因为它是低电平有效,若在器件内部或者电路板上已经上拉,则在测试时可以不加以控制。而在该目标板的DSP内部此引脚处于下拉状态,为使其进人边界扫描状态,必须外加激励信号,因此本文把它单独引出来。如图2所示。

为保证信号的完整性,本文对来自测试装置的主TAP控制信号进行了缓冲处理,同时用上拉电阻将TDI、TMS信号拉至逻辑1状态,将TCK下拉接地。另外,在最后一个器件的TDO和被测板的TDO端口之间放置一个20 Ω的电阻以衰减反射。缓冲器类型的选用要参考电路板上器件的电平类型。如图3所示,被测板上边界扫描器件工作电压为3.3 V,本文选用的缓冲器SN74LV244的工作电压为2.7 V~5.5 V,可以满足需要。

这样做可以解决测试装置和被测板之间的阻抗不匹配及提升TCK的速度,可增加测试装置和被测板之间电缆的长度,也使得在测试装置和被测板间的电缆没有连接的情况下,功能模式和测试模式时信号可以保持安全状态。

3 电路板互连测试

BSDL(boundary scan description language)是硬件描述语言(VHDL)的一个子集,是对边界扫描器件的边界扫描特性的描述,主要用来沟通边界扫描器件厂商、用户与测试工具之间的联系。每一个边界扫描器件都附有特定的BSDL文件。在测试进行之前,有必要查看电路板上边界扫描器件的BSDL文件,以确保器件能够正常地进入到边界扫描测试状态。以N24为例,其BSDL文件中提到:

attribute COMPLIANCE _ PATTERNS ofTMS320C6203:entity is“(EMU1,EMU0)(00)”;

由此可知,器件的EMU1和EMU0引脚处于逻辑0状态时,器件才能处于边界扫描模 式。这种引脚被称为边界扫描服从使能引脚(简称为BSCE引脚)。因此本文通过跳线将EMU0和EMU1接地。

另外,如果器件除了支持取样/预载(SAMPLE/PRELOAD)、互连测试(EXTEST)、旁路(BYPASS)这些IEEE 1149.1强制的指令外,还支持IDCODE、CLAMP、HIGHZ等指令,就能给测试带来更多方便。有些器件,内部功能不同但有着相同的封装,IDCODE指令能对此加以很好的区分,确保正确的器件安装在正确的位置。CLAMP和HIGHZ指令可以使器件的输出引脚处于一个固定状态,从而避免总线竞争。

3.1 扫描链完整性测试

扫描链连接完毕后,为保证后续工作的进行,要测试它的连通性,包括BYPASS测试和IDCODE测试。在TAP控制器处于复位状态时,BST电路无效。器件已处于正常工作状态,这时指令寄存器也已完成了初始化。如果器件支持IDCODE,则初始化的指令为IDCODE,否则为BYPASS。在TCK控制下,IDCODE或BYPASS寄存器中的内容就从TDO端口移出,测试软件将读到的数据与正确数据对比,从而判定扫描链的通断和器件型号的正确性。对于BYPASS测试,器件的BYPASS寄存器初始值为0;对于IDCODE测试,器件的标准IDCODE从BSDL文件中提取。

3.2 包含非边界扫描器件的互连测试

对于一个电路板来说,相当部分的器件都是非边界扫描器件,如何有效利用扫描链来测试连接在边界扫描器件之间的非边界扫描器件是提高故障覆盖率的关键。可以说,故障覆盖率与边界扫描器件的边界扫描寄存器提供给非边界扫描器件的可控制性和可观测性的程度息息相关。

3.2.1 可控制性的提高

为了增加可控制性,对于非边界扫描器件的重要的控制信号,如片选端和使能端,尽可能地直接控制,或者通过边界扫描器件的边界扫描单元进行控制。这样在测试时,为了避免信号冲突可以把相应的器件禁用或者改变信号输入输出的方向。如图4所示,器件N17(SN74LVC4245A)的/OE端和DIR端与N14(EPLD)的引脚相连。N50(74F245)的/E端也受N14控制,而DIR端接地,N50的/E端选通时,固定的B端为输入而A端为输出。N17和N50的A端引脚共享VXI总线的D00-D07,但B端引脚分别连在不同的总线上。如果N17的/OE端选通,DIR端置0时,A端为输入,与N50的A端为输出相矛盾;DIR端置1时,B端为输入,不同的总线信号发送到同一引脚上,引起冲突。因此,通过N14的BS引脚控制N17和N50,让两个器件不同时选通,使测试顺利进行。

3.2.2 可观测性的提高

为了增加可观测性,本文要给测试软件提供这些非边界扫描器件的基本信息,如器件的电源Vcc和接地GND引脚、I/O引脚的性质(是输入、输出、三态输出还是双向的)、器件的逻辑功能等,也就是对非边界扫描器件进行建模,编写测试软件能识别的MODEL。以74F245为例,其MODEL如下:

在此MODEL中,描述了器件的引脚性质及各种状态下的逻辑功能。MODEL被分成了若干PART,要根据电路板上器件的具体连接情况来选取相应的PART。对于N50和N51来说,因DIR引脚接地,固定为低,我们就选取PARTBtoA_with_DIR_fixed

在做互连测试时,建模的器件越多,故障覆盖率就越高。本文做了一个对比实验。如图5所示。N14的109、110和111这3个引脚分别与3个上拉电阻相连,同时与插针J6相连。通过跳线可以使3个引脚处于001~111这7个状态中的某一个,从而确定被测板电路响应VXI总线中7根中断线中的某一根。在向测试软件输入被测板的信息时,我们默认109~111这3个引脚正常状态为逻辑高。那么,当我们用跳线将J6的1、2 脚短接时,就人为制造了N14的109脚与地短路的故障。

第一阶段,本文只对电路板上的179个电阻进行了建模,测试得到的与边界扫描器件引脚相关的故障覆盖率为56.78%,没有检测到故障。第二阶段,本文在第一阶段的基础上又对39个与边界扫描器件相连的非边界扫描器件进行建模,测试得到的故障覆盖率为67.03 %,有了明显提高,且故障检出,结果显示如图6所示。

4 结束语

复杂数字电路板的可测试性设计是电路和器件设计领域研究的重要课题。本文介绍了通过在复杂数字电路板中设计和利用器件的边界扫描结构,提高电路板的可测试性,及通过增加边界扫描器件对非边界扫描器件的可控制性与可观测性,获得更高的故障诊断覆盖率的方法。

边界扫描技术实现了可测性设计的一次变革,但它并不能解决所有的可测性问题。边界扫描的长处在于器件引脚之间的互连测试。由于TCK速度的限制,边界扫描对于器件内部的动态故障显得无能为力。而自建内测试技术(BIST)则是针对器件功能性测试的。把BIST结构置入芯片内,结合IEEE 1149.1中可选择的RUNBIST指令可以达到高的故障覆盖率。因此,要全方位地对故障类型进行考虑,利用现有的DFT技术,混合采用传统的ICT,取长补短,才能更好地解决DFT问题,当代的ICT设备,大多也都支持边界扫描测试。

相关新闻