APP下载

用边界扫描技术检测非边扫器件*

2012-06-07陈岩申李艳青

舰船电子工程 2012年11期
关键词:功能测试测试数据电路板

陈岩申 张 波 李艳青

(海军青岛雷达声纳修理厂 青岛 266100)

1 引言

随着微电子技术进入超大规模集成电路时代,电路的高度复杂性及多层印制板、表面贴装(SMT)、圆片规模集成(WSI)和多芯片模块(MCM)技术在电路系统中的运用,使得电路节点的物理可访问性正逐步削减以至于消失,电路和系统的可测试性急剧下降,测试费用在电路和系统总费用中所占的比例在不断上升[1~2],尤其是当电路中大量采用DSP(数字信号处理器)、FPGA(现场可编程逻辑阵列)和CPLD(复杂可编程逻辑器件)等复杂逻辑器件时。用传统的ICT(在线检测设备)和ATE(自动测试设备)的功能测试已经很难满足现代电路板的故障检测和诊断要求,甚至不可能解决这些问题,因此人们开始寻求更方便、更快捷的方式来替代传统的检测手段。现在一种叫边界扫描的技术越来越多引起人们的注意。

2 边界扫描技术介绍

边界扫描测试(Boundary-scan Testing),是一种基于IEEE Std 1149.1(即JTAG 协议)制定的检测逻辑结构[3],如图1所示。

图1 边扫器件内部串行数据流向简图

它是在数字芯片内部的I/O端上增设边界扫描寄存器串(Boundary-scan Registers/Cells,简称 BSC,以形成边界扫描通道)和一些独立的特殊用途的控制寄存器(如指令寄存器IR,Bypass register及TAP控制器等,以进行指令解码、方式分配和控制数据串在边界扫描链中的动作),并增加四个引脚(时钟信号TCK,测试模式选择TMS,测试数据输入端TDI,测试数据输出端TDO)。这些寄存器之间及其与内部逻辑内核(Internal Logic Core)之间均串行连接。

通常,多个边扫器件的输入端TDI、输出端TDO会互相连接起来,以形成TDI-TDO-TDI形式的边界扫描链(Boundary-Scan Chain,又称菊花链[4],如图2)。根据芯片自带的BSDL(Boundary-Scan Description Language)文件及程序特定算法产生测试数据串,通过测试数据串对所形成的边界扫描链进行侦测,可以实现对芯片至芯片之间互连的检测,从而可以扩展到对整块数字电路板的检测。

图2 边界扫描链

利用边界扫描技术可以方便地对IC芯片电路功能测试及系统互连测试,也可利用边界扫描技术控制IC芯片处于某种特定的功能模式,以方便电路系统的设计和调试,显著地降低了产品的维修周期和费用[5]。

为推动界扫描技术的进一步推广,国际电子电气工程师协会也先后制定了边界扫描的相关标准IEEE1149.1、IEEE1149.4、IEEE1149.7 、IEEE1532[6,9]。边 界 扫 描 技 术已成为电路系统设计和测试的主流方法之一。

现在许多IC公司都提供了支持边界扫描机制的IC芯片,现在几乎所有FPGA和CPLD芯片均采用了这一技术,比较新的DSP芯片和CPU芯片也支持这一标准。

3 边界扫描工具及应用

目前我们在电路板测试中使用的边界扫描工具是美国ASSET公司开发的ScanWorks边界扫描测试系统。该系统由ScanWorks测试软件和硬件两部分组成[7],其中:

ScanWorks测试软件的主要功能是根据网络表和边扫芯片的BSDL文件,自动产生包含所需要的测试数据串(脉冲序列代码)的测试程序,生成存储器和可编程器件在线烧录数据,还可以生成测试覆盖率报告,进行程序调试等。

硬件包括PC机、JTAG控制器、接口适配盒及电缆等,功能是将程序中的测试数据串(脉冲序列代码)转换成实际的脉冲序列,输出给待测电路板[9],并且接收测试数据回到测试系统中,从而实施测试。

应用ScanWorks边界扫描测试系统对含边扫器件的被测电路板(UUT)进行测试,需要进行以下几个方面的准备工作:

1)要生成UUT的原理图网络表,网络表要符合要求的格式;

2)边扫器件的边界扫描信号连接成一条或多条扫描链并在UUT上有接口引出,若不满足则须通过设计制作与UUT相连的适配板,在适配板上形成UUT上边扫器件的边界扫描链;

3)准备边扫器件的BSDL文件(测试系统中自带,或可以从芯片厂商网站下载)[7]。

在以上工作完成之后,就可以对UUT中的边扫器件进行互连(Interconnect)测试,可以检测出器件引脚固定0、固定1、开路、短路等故障,并给出故障覆盖率报告。

4 非边界扫描器件的测试

在众多含边扫器件的电路板中,边扫器件(如FPGA、DSP、CPLD)一般是核心或重要器件,完成主要功能,但这并不意味着电路板上所有芯片都是边扫器件,还需要一部分外围接口芯片才能实现电路板的完整功能,而这部分芯片一般是不支持IEEE1149标准的[8],不具有边界扫描接口(见图3)。

图3 典型含边扫器件电路板组成结构

那么,对这些电路板中与边扫器件相连的非边扫器件又该怎样进行测试呢?下面我们具体结合某型装备电路板来进行说明。

4.1 电路板原理组成(部分电路)

某型装备电路板框图(如图4所示)由EPF10K100 EQI240-2、EPC2L120、54LS273、27C512芯片组成,其中 D0为FPGA(EPF10K100EQI240-2),主要完成信号处理功能;D21为EPROM(EPC2L120),是FPGA的配置芯片,这两个器件支持IEEE1149.1标准,为边扫器件,并在电路板中形成一条边界扫描链,可以进行边界扫描互连(Interconnect)测试。D6为三态同相八D锁存器(54LS273),D7为EPROM(27C512),XP2为JTAG端口,XP1为电路板连接器。D6通过接受连接器送来的数据为D7提供低8位地址位,D7的高8位地址位由D0提供,D7数据输出至D0。这两个器件不支持IEEE1149标准,但与边扫器件相连,可以在边界扫描技术的基础上通过功能测试,即编写“宏(Macro)”的方法实现测试。

图4 某型装备电路板(部分电路)组成框图

4.2 测试方法

电路板上的边扫器件,在进行互联测试(Interconnect)时,就可以检测出器件引脚固定0、固定1、开路、短路等故障,并给出故障覆盖率报告。电路板上的非边扫器件,没有直接与边扫器件相连、通过内部互联测试无法覆盖的,可以采取功能测试。

功能测试的思路为:以边扫器件为核心,增加扫描链路,设法让非边扫器件的管脚分别连接在两个边扫器件上[3]。用编写MACRO的方法,通过JTAG口,控制一个边扫器件的I/O,输入一串数据,通过要测试的非边扫器件输出,经过连接端口后,在另一个边扫器件的I/O上读出,将用ScanWorks捕捉的输出数据与输入数据进行比较,判断被测的非边扫器件是否符合逻辑功能,从而达到测试和故障诊断的结果,以提高故障覆盖率。

由于是在边界扫描技术的基础上进行测试,所以首先要完成UUT原理图网络表的生成、设计适配板并形成扫描链、准备边扫器件的BDSL文件等准备工作,通过互连(Interconnect)测试可以对边扫器件进行测试。然后再按以下步骤对非边扫器件进行测试:

1)定义总线;

2)新建一个宏(Macro);

3)编写测试程序;

4)对测试程序进行编译;

5)测试执行,并生成测试报表;

6)通过互动工具进行诊断。

宏语言(Macro)由编译器和注释器组成,是完成测试一系列指令的集合,可以在UltraEdit编辑器中编写,应符合其语言规范,主要包括测试激励发送、测试响应比较及测试结果输出等内容。

图4所示电路测试所用宏(Macro)主要部分如下:

5 结语

利用宏(Macro)可以实现对非边界扫描器件的测试,但是它需要首先对被测电路进行原理分析,编制宏指令进行正确的激励设置和响应比较,对人员要求较高。随着边界扫描技术的进一步深入应用,许多IC厂商也纷纷推出了支持IEEE1149标准的中小规模集成电路芯片,如SN74BCT8245、SN74BCT8373等,相信边界扫描技术在现代电路板的测试中将发挥越来越重要的作用[12]。

[1]陈圣俭,郑伟东,张开孝,等.基于SOPC的边界扫描测试控制器IP核设计[J].计算机测量与控制,2010(1):23-25.

[2]陈光禹,潘中良.可测试性设计技术[M].北京:电子工业出版社,1997.

[3]王宁,董兵.基于边界扫描的非完全BS电路板测试诊断技术[J].半导体技术,2005(12):38-41.

[4]刘冠军,温熙森,曾芷德,等.混合技术电路板簇测试的多边界扫描链优化配置[J].计算机辅助设计与图形学学报,2000,12(16).

[5]雷加,李坤.带有非边界扫描器件的混装电路的扫描链优化配置[J].计算机测量与控制,2006(8):984-986.

[6]蒋安平,冯建华,王新安.超大规模集成电路测试[M].北京:电子工业出版社,2005.

[7]ScanWorks Online User’s Guide[Z].USA,2006.

[8]陈星,黄考利,连光耀,等.从1149.1标准到1149.7标准分析边界扫描技术的发展[J].计算机测量与控制,2009(8):1460-1462.

[9]俞洋,高巍,彭喜元.基于USB接口的边界扫描测试控制器设计[J].计算机测量与控制,2007(1):31-33.

[10]雷辉.基于多扫描阈值的图像分割编码算法[J].计算机与数字工程,2008,36(5).

[11]陈庆孔.边界扫描技术在FPGA测试中的应用[J].计算机与数字工程,2010,38(9).

[12]雷加,黄文君.紧凑型边界扫描技术的功能与现状[J].计算机测量与控制,2012(2):311-314.

猜你喜欢

功能测试测试数据电路板
某内花键等速传动轴八功能测试夹具设计
基于模糊神经网络的电路板故障诊断方法研究
智能燃气表主控电路板仿真检测技术
测试数据管理系统设计与实现
96 芯插接电路板控制系统的故障设置装置设计
基于自适应粒子群优化算法的测试数据扩增方法
空间co-location挖掘模式在学生体能测试数据中的应用
电路板维修中的问题故障与应对策略
影响《标准》测试数据真实性的因素及破解策略