高级边界扫描 --4-- 使用Silicon Nail测试
高级边界扫描 --4-- 使用Silicon Nail测试
文章目录
- 高级边界扫描 --4-- 使用Silicon Nail测试
- 使用Silicon Nail测试
- 使用Silicon Nail和物理探针测试设备
- Silicon Nail测试未通过硅节点
- Silicon Nail测试未通过插钉节点
- 使用Silicon Nail测试设备
- 为单个设备生成测试
- pcf 分配顺序
使用Silicon Nail测试
- 使用Silicon Nail和物理探针进行设备测试
- 使用Silicon Nail测试设备
- 为单个设备生成测试
- 编写Silicon Nail集群测试
- Silicon Nail节点访问
使用Silicon Nail和物理探针测试设备
如图6-2所示的设备,例如u7,通常会同时连接Silicon Nail和物理探针。当生成Silicon Nail测试时,MSPD会编写测试,以便Silicon Nail节点(硅节点)的测试与分配有物理探针的节点(探针节点)的测试协调进行。
硅节点驱动器的测试模式被扫描到适当的驱动器中,并在UPDATE-DR阶段呈现。同时,探针节点驱动器上的矢量也会发生变化。
在CAPTURE-DR阶段,来自被测设备(DUT)的输出在硅边界扫描接收器上被捕获。与此同时,探针节点的接收器被打开,以便软件可以进行比较。探针节点的数据直接进行比较,但边界扫描接收器的数据必须被移出。
Silicon Nail测试未通过硅节点
示例6-1展示了Silicon Nail测试和钉子测试分别作为独立测试时收到的实际消息。图6-5展示了正在测试的设备部分。
示例6-1
Silicon Nail测试未通过硅节点
u6a HAS FAILEDSILICON NAIL FAILURE DETECTED FOR TEST
Failing Vector #: 498 (message follows)
Silicon Nail Test failed scanned output:
Vector 4 of pre-serialized test.
-----------------------------------------Failed Boundary-Scan frame cell 11
at u1.15,
observing node: U6_3,
connected to pinsu1.15 u6.3
在这个示例中:
- u6 是测试名称
- 498 是序列化测试的矢量编号
- 4 是ITL矢量的编号
- 单元11 是失败的边界扫描单元
- u1.15 是具有单元11的B-Scan引脚,位于引脚15
- U6_3 是连接到引脚u1.15和u6_3的节点

Silicon Nail诊断测试示例
Silicon Nail测试未通过插钉节点
示例6-2展示了在插钉节点上的测试失败。
示例6-2
Silicon Nail测试在插钉节点未通过
u6 HAS FAILED
SILICON NAIL FAILURE DETECTED FOR TEST
Failing Vector #: 522 (message follows)
Silicon Nail Test failed nailed output:
Vector 3 of pre-serialized test.
-----------------------------------------
Opens on Output or Bidir Pins
U6.6
-----------------------------------------
在这个示例中:
- 在U6设备上,插钉输出引脚6失败。
- 522 是序列化测试的矢量编号
- 3 是ITL矢量的编号
- U6_6 是输出或双向引脚上开路的节点
使用Silicon Nail测试设备
您可以使用边界扫描链的Silicon Nail对单个数字设备以及数字设备集群进行功能测试。
请注意,ITL文件的生成仅对单个设备/引脚库是自动化的,而不是集群。
Silicon Nail的语法和示例ITL源代码在"InterconnectPlus Test Language (ITL) and VCL/ITL Pass-Thru Statements"中进行了展示。您的Silicon Nail测试的资源将与其他测试一样被分配,并且测试将被添加到最终的测试计划中。
为单个设备生成测试
Silicon Nail测试文件(ITL源文件)由软件自动生成,并将包括以下内容:
- Silicon Nail测试所用链的描述
- 禁用信息
- 节点和硅节点
- PCF顺序
- 测试矢量
如果没有找到测试矢量、仅有一个设置库(用于生成夹具需求文件),或者所有库矢量都被注释掉,则将生成一个仅限设置的矢量。
软件还会自动更新testorder文件和测试计划。
在多路复用系统上,如果有一个设置库,请将矢量添加到库中,然后重新运行IPG测试顾问。
pcf 分配顺序
在为Silicon Nail编写测试库时,pcf 分配顺序决定 ITL 的列顺序。在Silicon Nail测试中生成的 pcf 值的顺序是基于用于生成测试的库源代码中 assign 语句的顺序。为了保持您的原始语句顺序,您必须以特定顺序编辑库测试语法和分配语句。
您的库源代码中可以有多个 pcf 语句。
在示例6-3中的库源代码中,pcf 顺序与库文件中的 assign 语句的顺序相同。
示例6-3
库源代码和Silicon Nail测试
! Library sourceassign DIR_1 to pins 1
assign OE_1_bar to pins 2
assign A1_1 to pins 3
assign A1_0 to pins 4
assign B1_1 to pins 5
assign B1_0 to pins 6pcf order OE_1_bar,DIR_1,A1_0,A1_1,B1_0,B1_1unit "TEST_ALL_A2B"pcf"0001LH" ! see order above"0110HL"end pcf
end unit! Silicon Nail Testnodesnode "NDIR_1" test "u13.1"silicon node "NOE_1_bar" test "u13.2", "u23.U10" silicon node "NA1_0" test "u13.4", "u23.V9" silicon node "NA1_1" test "u13.3", "u23.U9" silicon node "NB1_0" test "u13.6", "u23.V8" silicon node "NB1_1" test "u13.5", "u23.U8" inputs "NDIR_1"inputs "NOE_1_bar"bidirectionals "NA1_0"bidirectionals "NA1_1"bidirectionals "NB1_0"bidirectionals "NB1_1"pcf order statementspcf order is nodes "NDIR_1"pcf order is nodes "NOE_1_bar"pcf order is nodes "NA1_1"pcf order is nodes "NA1_0"pcf order is nodes "NB1_1"pcf order is nodes "NB1_0"unit "TEST_ALL_A2B"pcf"0010HL" ! see order above"1001LH"end pcfend unit
end nodes
在示例6-3中,pcf 语句中的值在两个源中是不同的。
为了在Silicon Nail测试中保持 pcf 顺序,您可以执行以下操作:
- 编辑库源代码。
- 在库源中排列 assign 语句以匹配 pcf 顺序语句。
示例6-4显示了重新排序的代码。在重新排序的代码中,pcf 语句中的值与两个源中的值相同。
示例6-4
重新排序的代码
! Library sourceassign OE_1_bar to pins 2
assign DIR_1 to pins 1assign A1_0 to pins 4
assign A1_1 to pins 3assign B1_0 to pins 6
assign B1_1 to pins 5pcf order OE_1_bar,DIR_1,A1_0,A1_1,B1_0,B1_1unit "TEST_ALL_A2B"pcf"0001LH" ! see order above"0110HL"end pcf
end unit! Using this library source, the Silicon Nails Test would now be:nodesnode "NDIR_1" test "u13.1"silicon node "NOE_1_bar" test "u13.2", "u23.U10" silicon node "NA1_0" test "u13.4", "u23.V9" silicon node "NA1_1" test "u13.3", "u23.U9" silicon node "NB1_0" test "u13.6", "u23.V8" silicon node "NB1_1" test "u13.5", "u23.U8" inputs "NDIR_1"inputs "NOE_1_bar"bidirectionals "NA1_0"bidirectionals "NA1_1"bidirectionals "NB1_0"bidirectionals "NB1_1"! the pcf order is the same as the assign statements in the library file.pcf order is nodes "NOE_1_bar"pcf order is nodes "NDIR_1"pcf order is nodes "NA1_0"pcf order is nodes "NA1_1"pcf order is nodes "NB1_0"pcf order is nodes "NB1_1"! the pcf vectors match the pcf vectors in the library sourceunit "TEST_ALL_A2B"pcf"0001LH" ! see order above"0110HL"end pcfend unit
end nodes
