边界扫描(Boundary Scan)测试发展于上个世纪90年代,随着
大规模集成电路的出现,
印制电路板制造工艺向小,微,薄发展,传统的ICT 测试已经没有办法满足这类产品的测试要求。由于芯片的引脚多,元器件体积小,板的密度特别大,根本没有办法进行下
探针测试。一种新的测试技术产生了,
联合测试行为组织(Joint Test Action Group)简称JTAG 定义这种新的测试方法即边界扫描测试。
简介
在现代电子应用系统中 ,印刷电路板越来越复杂多层板的设计越来越普遍,大量使用各种表贴元件和B GA (ball grid array) 封装元件,元器件的管脚数和管脚密度不断提高,使用万用表、示波器测试芯片的传统“探针”方法已不能满足要求。在这种背景下,早在 20 世纪 80 年代,联合测试行动组(joint testaction group,简称 J TA G) 起草了边界扫描测试( boundary2scan testing ,简 写 BST) 规 范,后 来 在1990 年被批准为 IEEE 标准 1149. 121990 规定,简称JTAG标准。该标准规定了进行边界扫描测试所需要的硬件和软件。自从1990 年批准后,IEEE 分别于1993 年和1995 年对该标准作了补充,形成了现在使用的IEEE1149.1a-1993 和IEEE1149.1b-1994。JTAG 主要应用于:电路的边界扫描测试和可编程芯片的在线
系统编程。
边界扫描测试有两大优点 :一个是方便芯片的故障定位,迅速准确地测试两个芯片管脚的连接是否可靠,提高测试检验效率;另一个是,具有 JTAG接口的芯片,内置一些预先定义好的功能模式,通过边界扫描通道来使芯片处于某个特定的功能模式,以提高
系统控制的灵活性和方便系统设计。
现在,所有复杂的 IC 芯片几乎都具有JTAG控制接口,JTAG控制逻辑简单方便,易于实现。
发展历史
1990年
JTAG正式由IEEE的1149.1-1990号文档标准化,在1994年,加入了补充文档对边界扫描描述语言(
BSDL)进行了说明。从那时开始,这个标准被全球的电子企业广泛采用。边界扫描几乎成为了JTAG的同义词。
边扫描测试是在20世纪80年代中期做为解决PCB物理访问问题的
JTAG接口发展起来的,这样的问题是新的
封装技术导致电路板装配日益拥挤所产生的。边界扫描在芯片级层次上嵌入测试电路,以形成全面的电路板级测试协议。利用边界扫描--自1990年以来的行业标准IEEE 1149.1--您甚至能够对最复杂的装配进行测试、调试和在系统设备编程,并且诊断出硬件问题。
优势
通过提供对
扫描链的IO的访问,可以消除或极大地减少对电路板上物理测试点的需要,这就会显著节约成本,因为电路板布局更简单、测试夹具更廉价、电路中的测试系统耗时更少、标准接口的使用增加、上市时间更快。除了可以进行电路板测试之外,边界扫描允许在PCB贴片之后,在电路板上对几乎所有类型的
CPLD和
闪存进行编程,无论尺寸或封装类型如何。在系统编程可通过降低设备处理、简化库存管理和在电路板生产线上集成编程步骤来节约成本并提高产量。
原理
边界扫描测试是通过在芯片的每个 I/ O脚附加一个边界扫描单元 (BSC ,boundary scan cell) 以及一些附加的测试控制逻辑实现的,BSC 主要是由寄存器组成的。每个 I/ O 管脚都有一个 BSC,每个BSC 有两个数据通道 :一个是测试数据通道,测试数据输入TDI (test data input) 、测试数据输出TDO(test data output) ;另一个是正常数据通道,正常数据输入NDI( normal data input ) 、正常数据输出NDO (normal data output) 。
在正常工作状态 ,输入和输出数据可以自由通过每个 BSC,正常工作数据从NDI进 ,从NDO出。在测试状态 ,可以选择数据流动的通道 :对于输入的IC(集成电路 ,integrated circuit) 管脚,可以选择从NDI或从TDI 输入数据;对于输出的IC管脚,可以选择从 BSC 输出数据至NDO,也可以选择从BSC输出数据至TDO。
为了测试两个JTAG 设备的连接,首先将 JTAG 设备 1某个输出测试脚的 BSC 置为高或低电平,输出至NDO,然后,让JTAG设备2的输入测试脚来捕获从管脚输入的NDI值,再通过测试数据通道将捕获到的数据输出至TDO,对比测试结果,即可快速准确的判断这两脚是否连接可靠。
IEEE 1149.1 标准规定了一个四线
串行接口(第五条线是可选的),该接口称作测试访问端口(TAP),用于访问复杂的集成电路(IC),例如
微处理器、DSP、ASIC和
CPLD。除了TAP之外,混合IC也包含
移位寄存器和
状态机,以执行边界扫描功能。在TDI(测试数据输入)引线上输入到芯片中的数据存储在
指令寄存器中或一个
数据寄存器中。串行数据从TDO(测试
数据输出)引线上离开芯片。边界扫描逻辑由
TCK(测试
时钟)上的信号计时,而且TMS(测试模式选择)信号驱动TAP控制器的状态。TRST(测试重置)是可选项。在PCB上可串行互连多个可兼容扫描功能的IC,形成一个或多个扫描链,每一个链都由其自己的TAP。每一个
扫描链提供电气访问,从串行TAP接口到作为链的一部分的每一个IC上的每一个引线。在正常的操作过程中,IC执行其预定功能,就好像边界扫描电路不存在。但是,当为了进行测试或在系统编程而激活设备的扫描逻辑时,数据可以传送到IC中,并且使用
串行接口从IC中读取出来。这样数据可以用来激活设备核心,将信号从设备引线发送到PCB上,读出PCB的输入引线并读出设备输出。