基于SJTAG的系统级测试研究

时间:2022-08-28 07:36:43

基于SJTAG的系统级测试研究

摘要:SJTAG系统级测试的研发及深度开发大大促进了现代科技发展,为了更深入的了解,本文从SJTAG推荐标准入手,简述SJTAG系统级测试构建的关键步骤及相关设计要求,结合实例形象说明SJTAG系统级测试,对现实中的应用起到参考作用。

关键词:SJTAG边界扫描系统级测试

中图分类号:TN407文献标识码:A文章编号:1672-3791(2011)09(c)-0001-01

IEEE 1149.1边界扫描测试标准是一种用来进行复杂IC与电路板上的特性测试的工业标准方法,多数复杂电子系统都涉及到IEEE1149.1标准。而对于系统级测试,原始的基于IEEE1149.1的系统级测试只利用了标准的很有限的一部分,这时JTAG只是具备很有限的诊断功能,没有可用于生成测试或编程的矢量软件。对于复杂的系统,很难做到标准化、统一化,测试成本也非常昂贵。为此SJTAG工作组织在05年欧洲板级测试会议上成立,主要研究领域是如何把JTAG用在系统级的测试中。

1构建符合SJTAG的边界扫描系统

在板级测试中,所有与IEEE1149.1边界扫描标准相容的IC(集成电路)的TAP是构造一条完整的板级测试通路的最好的链,常常被称为测试环。而如果要构建系统级测试,仅仅把测试环链接在电路板上从TDI到TDO的管脚之间,以形成一个在系统底板上的系统级测试环,是不可取的。因为当系统有空插槽时,这个测试环就将被断开,整个系统级测试也随之瘫痪。

在SJTAG系统级测试解决了这个问题,它采用了一个JTAG多路器,这个多路器支持多支接入。采用一种寻址方案,可以将串行JTAG总线用于多支路配置,提供对多板卡的支持。而一旦JTAG能够接入一块背板上的多个板卡,就能实现系统级的配置或编程。

1.1总线设计选择

在国际标准IEEE1149.5中提出了测试总线(MTM总线)和多链路复用的概念。其中在多模块之间的测试可采用MTM总线连接,使用主从模式,所有从模块都并联的连接到总线上,所以当其中一个从模块缺少或损坏的时候,就不会导致其他部分中断,并且添加从模块时也不会影响其他模块。但它主要是用来基于测试和维护使用的,若要把测试,编程和调试组合在一起,这种方式却并不适合,其中最主要的就是IEEE1149.5的控制协议过于复杂。

在SJTAG推荐标准设计中为了与IEEE1149.1协议更加契合,底板测试总线由IEEE1149.1标准的TDI,TMS,TCK和TDO的连线组成,这种连接也可以与可选择的TRST信号线相结合。采用这种总线,互联着的各个模块的控制接口相对来说比较统一,不用进行协议转换就可以直接对模块上的各个链路进行测试,也可以与大部分通用的编程,调试接口保持协议的兼容。

1.2单板设计

目前JTAG技术都基于IEEE1149.1标准,在单板中大部分应用JTAG链测试接口互联方式,因而TCK的最大频率受到整条链中最低TCK频率器件的限定,同时整个链中BSC单元过于繁重,严重降低JTAG扫描速度,更重要的是链路中有模块或者芯片损坏,会导致整个链路瘫痪。针对此问题,我们可将所有单板增加可寻址的JTAG边界扫描控制器ASP来实现地址的复用,把板内的JTAG链分成多个区段,每个区段都按照规则分配独立的JTAG链。

2构建符合SJTAG的系统软件

根据SJTAG测试的硬件要求以及软件所需的新内容,我们列举出SJTAG软件设计主要的部分。

2.1 扫描桥设计

扫描桥主要目的是实现在总线上通过广播命令,并根据命令实现单板的选通与不选通,再单板选通后,配置ASP的多路技术并激活ASP器件所连接的扫描链。

(1)总线的背板功能的设计。

可以向指令寄存器写入INTERROGATION指令,然后判断TDO移出的数据,如果此数据有效,那么此数据必定就是其中一个背板的地址。如果反码等于0,则表示总线上所有地址列举完毕。总线上所有背板状态机进入等待状态。如果没有写入相关指令,所有背板状态机则将进入等待地址状态。

(2)背板的选通、未选通功能的设计。

可以分别设置系统所需要的目标背板,并根据其物理地址,向指令寄存器写入指令,依次选中需要测试的背板。然后读出背板的CODE信息,如果对应的CODE值与测试指令中的值相等,则这个背板被选中,否者则不被选中。如果向指令寄存器写入返回指令,那么所有背板将回到等待地址状态。

(3)多扫描桥状态和广播地址测试功能的设计。

可以通过MCGRSEL、MULTI_CAST_GROUP2、BROADCAST等指令来实现。

(4)背板旁通设计的实现。

可以是通过对BYPASS信号的判断。如果BYPASS信号有效,那么就不测试该板的内部扫描通道;否则根据指令决定当前需要的测试的扫描通道。

(5)背板上各个链路选通操作的设计。

通过设计(2)、(4),在背板选通的状态下,通过特定ASP元件指令,选中所需要测试的部分链路,并返回信号,通知系统测试准备完成。

2.2 Bsdl格式转换模块设计

由于世界上各厂商的器件格式文件互不相同,需要对格式进行统一转换,并且把IO转化成为对应的被底层程序识别的管脚。文件转换后主要包括了信号的名称,指令,Bit位对应的信息三个部分。

2.3 测试配置模块设计

测试配置设计阶段主要配置项目网表文件和链路定义文件,其文件应包括单板地址,扫描端口号,设备类型等。它主要是对单板的配置状态来进行配置。

2.4 测试向量生成模块设计

在测试生成模块部分,软件要对输入的电路板网表文件提取解析成器件间互联器对,然后结合用户测试算法选定生成测试向量集,并把测试驱动文件转化成为能够通过JTAG进行测试的指令序列。在算法部分,可以选择走步1,走步0,改良记数序列,记数/补偿等算法,算法的恰当组合能够提高故障类型的确定。

2.5 测试结果生成模块设计

在测试结果加载模块中设计,我们要根据生成的测试结果,结合测试算法和故障字典进行分析诊断,最后生成测试结果文件。测试结果文件包含了是否存在故障,故障的位置,故障的类型等等重要信息。

2.6 故障模型的改进

现在的互联测试算法大部分为走步1算法和走步0算法。走步1算法的测试矢量格式为n,生成的测试矩阵能实现对所有的W-0短路的完全判断,对W-0短路或一断开路的故障具有判断能力。走步0算法与之互补。这2种算法的测试矢量个数都为n。这2种算法都是较为完备的算法,都能检测所有固定逻辑故障、开路故障和短路故障,并能对固定的逻辑故障、开路故障和逻辑短路故障进行精确定位。但如果要使测试同时覆盖W-0短路和W-A短路,则需要结合两者进行使用。

3结语

通过对SJTAG工作组系统级测试建议的研究,大胆的提出了符合SJTAG的测试系统模型,该模型对SJTAG的系统硬件及软件都给出了具体设计建议,并改善了现行JTAG对系统级测试的瓶颈,实现了对具有多板,多扫描链的设备的测试。

参考文献

[1] System JTAG Initiative Group Advancements Bradford G.Van Treuren October 30,2008

上一篇:找矿靶区圈定和筛选原则及其方法研究 下一篇:计算机技术在广播电视后期制作中的应用