ICT 数字测试原理 31 - - X-Tree测试
ICT 数字测试原理 31 - - X-Tree测试
文章目录
- ICT 数字测试原理 31 - - X-Tree测试
- X-Tree测试
- 将X-Tree测试整合到板测试中
- 创建X-Tree设置数字库
- 创建X-Tree数字库
- 创建X-Tree部件描述库(PDL)
X-Tree测试
本节介绍了专门用于帮助测试包含以下测试结构的设备的VCL工具:
- andtree
- nandtree
- nortree
- xnortree
- xortree
详细信息请参阅:
- 在板测试中整合X-Tree测试
- 创建X-Tree设置数字库
- 创建X-Tree数字库
- 创建X-Tree部件描述库(PDL)
将X-Tree测试整合到板测试中
从测试开发的角度来看,X-Tree设备的测试以类似于标准数字设备测试的方式整合到板测试中。
-
创建一个设置数字库。
该库应定义设备在正常或非测试模式下操作时的引脚分配和禁用信息。
-
创建一个X-Tree数字库。
该库应识别实现的可测试性结构类型以及测试模式下与可测试性结构相关的输入、输出和控制引脚。不包含禁用信息。
若设备具有多个可测试性结构或链,则需要为每个可测试性结构创建一个X-Tree数字库,仅包含与测试或控制特定链相关的引脚。
-
创建部件描述库。
部件描述库被定义为引用设置数字库,以识别设备引脚所需的禁用信息和正常操作。
部件描述库被定义为引用一个或多个X-Tree数字库,以识别正确生成测试矢量和测试模式下设备引脚的操作所需的测试结构类型信息。
从测试生成的角度看,X-Tree设备的测试也以类似于标准数字设备测试的方式整合到板测试中。一个不同之处在于,对于X-Tree测试,程序生成器还将创建PCF矢量,考虑测试X-Tree设备所需的板禁用和拓扑约束。输出将是标准的VCL测试源代码。
创建X-Tree设置数字库
设置库用于识别X-Tree设备在正常或非测试模式下操作时的实际引脚分配和禁用信息。可以使用与创建标准数字设备的设置库相同的工具或技术来创建X-Tree设备的设置库。
创建X-Tree数字库
定义X-Tree数字库所需的信息在设备的数据表中提供。数据表中的信息定义了使用的可测试性结构、设备如何进入测试模式以及链的信息。链的信息定义了设备中存在多少个可测试性结构,每个结构测试的引脚的依赖顺序列表,以及其他可能影响测试或覆盖的信息,例如不可测试的引脚列表。
可测试性结构类型
使用以下语句之一来定义设备中实现的可测试性结构类型:
- andtree
- nandtree
- nortree
- xnortree
- xortree
引脚分配
与可测试性结构相关的引脚被分配到逻辑组,并被声明为输入或输出。
assign to
语句用于将引脚分配给组名:
- 输入引脚的组标识符必须是Inputs,
- 输出引脚的组标识符必须是Output,
- 控制引脚的组标识符必须是Control。
- 引脚分配的顺序必须是:首先是Inputs引脚,其次是Output引脚(只能定义一个),最后是Control引脚。
- 组名的引脚分配顺序必须与设备的数据表中定义的可测试性结构顺序一致。分配顺序将决定引脚需要被刺激的顺序。
- 一个引脚只能分配给一个组名。
inputs
和outputs
语句用于声明组内引脚的用法:
- Inputs和Control组必须声明为输入。
- Output组必须声明为输出。
PCF定义
必须定义一个或两个PCF顺序语句,以使程序生成器能够编写PCF矢量来测试设备。
- 必须始终有一条默认PCF顺序语句。这只是一条没有标识符的
pcf order is
语句。 - 默认的PCF顺序语句必须声明为:
- 首先是Output组,
- 第二是Inputs组,
- 第三是Control组。
- 如果使用两条PCF顺序语句,则带有标识符的PCF顺序语句将用于控制设备的模式。
矢量定义
X-Tree数字库测试中唯一需要的矢量定义是那些用于控制设备进入测试模式的定义。用于此目的的语句是unit
、pcf
、end pcf
和end unit
。如果使用了命名的PCF顺序用于控制设备模式,则还必须使用using pcf order
语句。
示例3-27展示了使用单一(默认)PCF顺序语句来指定将设备置于测试模式所需的控制矢量。
示例 3-27
X-Tree测试中使用的单一PCF顺序语句
nandtree ! 指定NAND可测试性结构assign Inputs to pins 1 ! 将单个引脚分配给组
assign Inputs to pins 3, 5, 7, 9 ! 将多个引脚分配给组
assign Output to pins 4 !
assign Control to pin 6, 8, 10 !inputs Inputs, Control ! 将组声明为输入
outputs Output ! 将组声明为输出family TTLpcf order is Output, Inputs, Controlunit "Enter NAND tree mode"pcf"X ZZZZZ 111""X ZZZZZ 110""X ZZZZZ 100""X ZZZZZ 110"end pcf
end unit
示例3-28展示了使用两条PCF顺序语句,其中命名的PCF顺序语句用于控制将设备置于测试模式所需的控制矢量。
示例 3-28
X-Tree测试中使用的多个PCF顺序语句
nandtree ! 指定NAND树可测试性结构assign Inputs to pins 1 ! 将单个引脚分配给组
assign Inputs to pins 3, 5, 7, 9 ! 将多个引脚分配给组
assign Output to pins 4 !
assign Control to pin 6, 8, 10 !inputs Inputs, Control ! 将组声明为输入
outputs Output ! 将组声明为输出family TTLpcf order is Output, Inputs, Control
pcf order Test_Mode is Controlunit "Enter NAND tree mode"pcfuse pcf order Test_Mode"111""110""100""110"end pcf
end unit
创建X-Tree部件描述库(PDL)
X-Tree库文件不包含禁用信息,并且引脚使用分配仅在X-Tree设备处于测试模式时有效。为了获得适当的测试生成结果,还需要一种方法来引用X-Tree设备在未处于测试模式时的实际引脚分配和禁用信息。这可以通过使用部件描述编辑器创建部件描述库(PDL)来定义X-Tree设备来实现。PDL还可以用于定义设备内的多个可测试性结构或链。
示例 3-29 展示了如何为具有两个可测试性结构或链的X-Tree设备定义PDL。对于完整的设置库XXXXXba,定义了设备上的所有引脚。设备的每个链都有一个源文件,XXXXXba_chain1和XXXXXba_chain2,并且每个链中测试的引脚仅针对该链定义。
示例 3-29
具有两个链的X-Tree测试部件描述库示例
!XXXXXBA 部件库!总链数: 2pin library "XXXXXba", nt, pn"XXXXXba"
pin library "XXXXXba_chain1", pn"XXXXXba_chain1"
pin library "XXXXXba_chain2", pn"XXXXXba_chain2"external pins 1device "XXXXXba" pins 1device "XXXXXba_chain1" pins 1external pins 2device "XXXXXba" pins 2device "XXXXXba_chain1" pins 2external pins 3device "XXXXXba" pins 3device "XXXXXba_chain1" pins 3external pins 4device "XXXXXba" pins 4device "XXXXXba_chain1" pins 4external pins 5device "XXXXXba" pins 5device "XXXXXba_chain2" pins 5external pins 6device "XXXXXba" pins 6device "XXXXXba_chain2" pins 6external pins 7device "XXXXXba" pins 7device "XXXXXba_chain2" pins 7external pins 8device "XXXXXba" pins 8device "XXXXXba_chain2" pins 8external pins 9device "XXXXXba" pins 9device "XXXXXba_chain1" pins 9device "XXXXXba_chain2" pins 9external pins 10device "XXXXXba" pins 10device "XXXXXba_chain1" pins 10device "XXXXXba_chain2" pins 10