切换到宽版
  • 4829阅读
  • 0回复

[分享]边界扫描测试结构完备性诊断策略 [复制链接]

上一主题 下一主题
离线verifone
在线等级:4
在线时长:182小时
升级剩余时间:18小时
级别:荣誉会员
 

金币
93394
威望
33
贡献
2
好评
1
注册
2002-08-08
只看楼主 倒序阅读 使用道具 楼主  发表于: 2003-11-18
摘要:边界扫描结构完备性测试是在其他任何测试之前建议首先进行的测试操作,以确保边界扫描结构能正常工作。本文在分析了边界扫描结构故障类型与测试原理之后提出了一种完备性诊断策略,并给出了具体实现过程。
关键词:边界扫描;边界扫描测试结构;完备性;测试

中图分类号: TN407 文献标识码: A 文章编号:1003-353X(2003)09-0022-03


1 引言
边界扫描是为解决VLSI测试问题而发展起来的一种测试技术,它通过在器件的输入输出管脚与内核电路之间增加移位寄存器(边界扫描单元 BSC),来控制输入管脚的状态(高或低),并读出输出管脚的状态,从而测试器件的好坏及互连的正确性。它克服了传统探针接触测试带来的困难,提高了器件的可控性和可观察性。边界扫描技术已经在1990年形成了IEEE1149.1工业标准,并得到了众多集成电路制造商和测试商的支持,成为现代测试技术的主流[1]。

2 边界扫描测试结构

电路板边界扫描测试结构主要由测试访问端口TAP和一些寄存器构成,如图1所示,TAP控制器由TDI(测试数据输入)、TDO(测试数据输出)、TMS(测试模式选择)、TCK(测试时钟)和TRST(测试复位,可选)几个信号端口组成。这些寄存器包括指令寄存器(IR)、旁路(BYPASS)寄存器、边界扫描寄存器(BSR)、器件标志(IDCODE)寄存器。在边界扫描测试中,TAP控制器通过TMS和TCK控制测试状态,选择不同寄存器,由TDI在TCK的上升沿输入所需的测试指令与测试矢量,由TDO在TCK的下降沿输出测试响应,通过对输入输出数据的比较,分析故障类型,定位故障所在的位置。



3边界扫描结构完备性测试

在将功能正常的集成电路芯片安装到PCB板时,芯片可能会受到某些损伤(如机械损伤和热损伤),或发生装配位置错误等现象,这会引发各种寄存器与TAP端口信号的故障。所以,在进行边界扫描其他任何测试之前,首先建议进行结构完备性测试,以确保边界扫描结构能够正常工作。

3.1 故障类型与测试原理


寄存器故障包括边界扫描寄存器、指令寄存器、旁路寄存器和器件标志寄存器(若存在)的故障,它们将导致测试功能失常,对这些故障需要分别进行功能测试。

TAP端口信号线(TDI,TDO,TCK,TMS和TRST)的故障包括呆滞(S-A-0,S-A-1)、桥接和开路等故障,由于TDI,TMS和TRST端口有内部上拉电阻,所以它们的开路故障可归结为 S-A-1故障。

TDI与TDO的开路和呆滞故障将使对应IC移出的数据始终不变,所以,只要测试码中既有1又有0便可检测出这类故障。

若时钟信号TCK发生呆滞型故障,则边界扫描测试不起作用,这种故障很容易判断;若TCK与其他信号线桥接,在其他信号有较强驱动能力时, TCK信号将被迫随之变化,TAP因此不能产生正常的状态变迁,在TCK信号有较强驱动能力时,则只能通过功能测试来发现此故障。

当TMS发生呆滞型故障时,TAP控制器将可能停滞于Test-Logic-Reset、Run-Test/Idle、Shift-DR、Shift-IR、Pause-DR和Pause-IR等6个可循环状态。若TMS桥接于一个较强信号,与TCK的情况类似,TAP工作状态不正常;若桥接于一个较弱的信号,也只能通过功能测试来发现故障。

TDI,TDO,TCK,TMS和TRST端口之间若发生桥接故障,则某个信号的错误变化会导致状态预置、保持或移位出错,这可通过TDO的输出异常检测出来。这几个信号中,TRST基本保持不变;TMS在保持某状态时持续为0,改变状态时要加0或1;TDI和TDO输入与输出的测试码有0,1变化;TCK本身就是0,1变化的时钟信号。可见,在对IC进行状态预置时,必然会出现TCK,TMS和TRST短路故障的测试码;在对IC进行状态保持和移位时,只要测试码中既有0又有1就会出现TDI,TDO,TCK,TMS和TRST之间短路的测试向量[2]。

根据上述原理,在对各寄存器进行功能测试的同时,加入能够检测各TAP端口信号故障的测试码,就可以达到边界扫描结构完备性测试的目的。以下分别讨论这些测试的具体实现。

3.2 测试实现


3.2.1 指令寄存器功能测试

指令寄存器是一种串行输入并行输出的寄存器,它由移位寄存触发器和并行输出锁存器构成,前者保存着经过指令寄存器传送的指令位,后者保存着当前指令位。IEEE 1149.1标准规定移位寄存器最低两位必须为“01”,其余位由厂商自行定义,这样可以保证通过Capture信号可以检测到扫描链上固定为0和固定为1的故障。如EPM7128SL84芯片的此数据为“0101010101”。当TAP控制器处于Capture-IR状态时,位图形“0101010101”被装入指令寄存器的移位寄存器部分。

对指令寄存器的检测首先是要移出正确的指令捕获数据。另外,文献[1]对同一芯片的TDI与TDO之间的短路故障给出了一种算法,即给指令寄存器输入一个与所有指令寄存器内容不同的字串,如“…11110000…”,“1”的数目与“0”的数目相等,并与扫描链中最长的IR位数相同。如对由两个EPM7128SL84芯片组成的互连电路,其IR位数是10,所以应该输入附加字串“111111111100-00000000”。对其IR的检测流程如图2所示。

3.2.2 器件标志寄存器功能测试

器件标志寄存器是边界扫描测试中可选的寄存器,根据IEEE 1149.1标准的要求,它共有32位,提供了器件厂商代码、器件型号和版本号的二进制信息,最低位LSB强制为“1”,说明此寄存器的存在。芯片ID码是识别芯片的内建器件标识码,通过检测芯片ID码可以识别该芯片,判断芯片装配正确与否,并可进一步判断芯片的型号、生产厂家及版本号与其标识是否相符,辨别芯片的真伪。



根据IEEE 1149.1标准,在复位状态下,标志寄存器(若存在)被直接接入TDI与TDO之间,此时,在Shift-DR状态下进行数据移位,从TDO移出的数据即器件标志代码,其测试流程如图3所示。




3.2.3 旁路寄存器功能测试
旁路寄存器是一个单数据位移位寄存器。它可使不需要测试的芯片被旁路,从而缩短扫描链路的长度,提高测试效率,或者在测试期间,它能使芯片脱离某种工作模式。

若标准寄存器不存在,在复位状态,旁路寄存器被接至TDI与TDO之间,否则,给IR输入BYPASS指令以选择旁路寄存器。在TAP控制器的 Capture-DR状态,TCK的上升沿,旁路寄存器被设置为逻辑“0”。

旁路寄存器检测中,为确保所有扫描芯片的旁路寄存器正确连接,在选择旁路寄存器后,应再输入与芯片数目相同的全“1”与全“0”字串,如两芯片互连,则输入“0011”(LSB最靠近TDO),从TDO移出数据应当是“001100”。其测试流程如图4所示。




3.2.4 边界扫描寄存器的测试
边界扫描单元BSC是位于器件的输入输出管脚与内核电路之间的移位寄存器,这些单元互连就构成了边界扫描寄存器BSR。BSC必须具有移位数据寄存、更新数据寄存和捕获数据寄存等测试功能 [1]。

为测试其功能的正确性,首先应该通过加载 SAMPLE指令来选择边界扫描寄存器,使其连接在TDI与TDO之间。然后生成由0 ,1组成的N位伪随机测试码(N为扫描链中BSC的总长度),在 TCK和TMS的共同作用下,将测试码由TDI送入芯片的边界扫描链路,在芯片的TDO处采集并移出数据,通过比较TDO移出的数据与测试码是否一致判断边界扫描单元完好性。其测试流程如图5所示[3]。



综上所述,边界扫描测试结构完备性诊断应按以下策略构成:首先进行指令寄存器功能测试,检查IR功能是否正常;第二步检查器件标志寄存器,看器件装配是否正确;第三步检查旁路寄存器功能是否正常;第四步对边界扫描单元进行测试,验证其功能的正确性。同时,根据测试故障现象,判断TAP端口信号是否从PCB到各个BS器件进行了正确的连接,以及TAP端口信号线(TDI, TDO,TCK,TMS和TRST)是否存在呆滞(S-A-0,S-A-1)、桥接和开路等故障。以上步骤均已用C++Builder编程实现,且调试通过。

4 结束语

结合其它边界扫描测试软件的成功经验,本文提出了一种边界扫描测试结构完备性诊断策略,实践证明,它能对边界扫描结构进行准确、可靠的测试,有效地防止了结构不完备带来的潜在故障,对基于边界扫描的各种测试都具有一定的参考价值。
分享到