The Path Definition File
在外部ASCII文件中,必须使用路径定义文件来定义要在测试集中测试的所有路径。
Path_name — A unique name you define to identify the path.
Path_definition — The topology of the path from launch to capture point as defined by
an ordered list of pin pathnames. Each path must be unique.(由引脚路径名的有序列表定义:从发射点到捕获点的路径。每个路径必须是唯一的。)
ASCII路径定义文件有几个语法要求。这些工具将忽略以(//)或(#)开头的任何行作为注释。每条语句必须在自己的行上。四种类型的语句包括:
Path —指定路径的唯一路径名的必需语句
Condition —指定启动和捕获事件所需的任何条件的可选语句。每个条件语句包含两个参数:内部或外部管脚的完整管脚路径名,以及该管脚的值。条件语句的有效pin值为0、1或Z。条件语句必须出现在path语句和路径的第一个pin语句。
Transition_condition —每个transition_condition语句都包含两个参数:内部或外部引脚的完整引脚路径名和方向。Transition_condition语句必须出现在路径语句和路径的第一个pin语句之间。

方向可以是以下之一:上升、下降、相同或相反。上升和下降指定在向路径的第一个管脚发起 transition的同时,在指定管脚上分别需要上升沿和下降沿。“相同”指定工具以与路径定义中第一个接点上的 transition相同的方向创建过渡。“反向”创建反向的 transition。

Figure 8-33  展示了 transition_condition statement可能有利性

定义的路径包括一个2输入与门,一个输入在路径上,另一个连接到扫描单元的输出。对于robust test,与门的偏离路径或选通输入需要一个常数1。该工具在行使其对robust test的偏好时,会尝试创建一个实现这一点的模式。如果需要扫描单元馈送的电路元件接收0-1转换,可以将transition_condition语句添加到路径定义中,指定扫描单元的上升转换。路径捕获点保持0-1转换,因此可以通过no-robust test进行测试,还可以获得其他电路元件的所需转换

Pin —一个必需的语句,通过其完整的管脚路径名标识路径中的管脚。路径中的Pin语句必须从启动点到捕获点进行排序。引脚路径名后的“+”或“-”表示引脚相对于发射点的反转。“+”表示无反转(希望转换与该引脚上的启动转换相同),而“-”表示反转(需要与启动转换相反的转换)。

您必须至少指定两个pin语句,第一个是有效的启动点(状态元素或RAM的主输入或数据输出),最后一个是有效捕获点(状态元件的主输出、数据或clk输入或RAM的数据输入)。当前管脚必须具有到前一管脚的组合连接路径并且边缘奇偶校验必须与路径电路一致。如果语句违反了这些条件之一,工具将发出错误。如果路径具有边缘或路径模糊性,则会发出警告。路径可以包括状态元素(通过数据或时钟输入),但必须明确指定路径中的数据或时钟引脚。如果不这样做,工具将无法识别路径并发出相应的消息。

End —表示当前路径数据完成的必需语句。也可以在end语句之后指定路径的名称。但是,如果名称与路径语句指定的路径名不匹配,则工具会发出错误。
The following shows the path definition syntax:
PATH <pathname> =
CONDition <pin_pathname> <0|1|Z>;
TRANsition_condition <pin_pathname> <Rising|Falling|Same|Opposite>;
PIN <pin_pathname> [+|-];
PIN <pin_pathname> [+|-];
...
PIN <pin_pathname> [+|-];
END [pathname];

The following is an example of a path definition file:
PATH "path0" =
PIN /I$6/Q + ;
PIN /I$35/B0 + ;
PIN /I$35/C0 + ;
PIN /I$1/I$650/IN + ;
PIN /I$1/I$650/OUT - ;
PIN /I$1/I$951/I$1/IN - ;
PIN /I$1/I$951/I$1/OUT + ;
PIN /A_EQ_B + ;
END ;
PATH "path1" =
PIN /I$6/Q + ;
PIN /I$35/B0 + ;
PIN /I$35/C0 + ;
PIN /I$1/I$650/IN + ;
PIN /I$1/I$650/OUT - ;
PIN /I$1/I$684/I1 - ;
PIN /I$1/I$684/OUT - ;
PIN /I$5/D - ;
END ;
PATH "path2" =
PIN /I$5/Q + ;
PIN /I$35/B1 + ;
PIN /I$35/C1 + ;
PIN /I$1/I$649/IN + ;
PIN /I$1/I$649/OUT - ;
PIN /I$1/I$622/I2 - ;
PIN /I$1/I$622/OUT - ;
PIN /A_EQ_B + ;
END ;
PATH "path3" =
PIN /I$5/QB + ;
PIN /I$6/TI + ;
END ;
可以使用read_fault_sites命令读取路径定义文件。该工具将此文件中的路径加载到内部路径列表中。可以通过向新文件添加路径,并使用新文件名重新发出read_fault_sites命令来添加到此列表。
Path Definition Checks
ATPG工具检查沿定义路径的点是否正确连接,并确定路径是否模糊。路径模糊性表示从一个定义的点到下一个定义点有几个不同的路径。
图8-34显示了产生模糊的路径定义。

在本例中,定义的点是Gate2的输入和Gate7的输入。这些点之间存在两条路径,因此产生了路径模糊性。当ATPG工具遇到这种情况时,默认情况下,它会将不明确的路径扩展到最多10个不含糊的路径。如果希望工具考虑不同数量的路径,可以使用“set_fault_typepath_delay-expand_ambigous_paths”命令。在路径检查期间,该工具还可能遇到边缘模糊。当沿着路径的门具有保持或反转路径边缘的能力时,根据门的另一个输入的值,边缘模糊会发生。图8-35显示了由于XOR而导致边缘模糊的路径。

此路径中的XOR门可以作为输入路径边缘的反相器或缓冲器,这取决于其另一输入端的值。因此,XOR输出端的边沿是模糊的。通过路径定义文件,可以指示路径中定义点的边关系,通过为每个定义的点指定“+”或“-”。

Generating a Path Delay Test Set
当有包含要测试的路径的路径定义文件时,可以使用此过程生成路径延迟测试集。
Procedure
1. Perform circuit setup tasks as described in the ATPG Basic Tool Flow and ATPG Setup
sections in this manual.
2.将扫描启用引脚限制为非活动状态。例如:
SETUP> add_input_constraints scan_en -c0
3.(Optional) Turn on output masking.

SETUP> set_output_masks on
4. Add nofaults <x, y, z>
5. Set the sequential depth to two or greater:(设置深度)
SETUP> set_pattern_type -sequential 2
6. Enter analysis system mode. This triggers the tool’s automatic design flattening and
rules checking processes.
7. Set the fault type to path delay:
ANALYSIS> set_fault_type path_delay
8. Write a path definition file with all the paths you want to test. “The Path Definition File”
on page 353 describes this file in detail. If you want, you can do this prior to the session.
You can only add faults based on the paths defined in this file.(写定义文件)
9. Load the path definition file (assumed for the purpose of illustration to be named
path_file_1):(加载文件)
ANALYSIS> read_fault_sites path_file_1
10. Specify any changes you want in how the tool expands ambiguous paths. By default, the
tool expands each ambiguous path internally with up to 10 unambiguous paths. The
following example limits the number of expanded unambiguous paths to a maximum of 4.(扩展路径为4)
ANALYSIS> set_fault_type path_delay -expand_ambiguous_paths 4
11. Define faults for the paths in the tool’s internal path list:
ANALYSIS> add_faults -all
This adds a rising edge and falling edge fault to the tool’s path delay fault list for each
defined path.
12. Perform an analysis on the specified paths and delete those the analysis proves are unsensitizable:
ANALYSIS> delete_fault_sites -unsensitizable_paths
13. Run test generation:
ANALYSIS> create_patterns
Path Delay Testing Limitations
路径延迟测试不支持几种类型的电路配置。
RAMs Within a Specified Path —只有当启动点位于RAM的输出端时,才支持将RAM作为启动点。仅当捕获点位于RAM的输入端时,才支持将RAM作为捕获点。
Paths Starting at a Combinationally Transparent Latch —仅当捕获点位于锁存器的输入端时,才支持组合 transparent latch作为捕获点。
Path Starting and/or Ending at ROM —应该将ROM建模为只读原始CRAM(即,没有任何_write操作),以使该工具支持从ROM开始和/或结束的路径延迟测试。

Mentor-dft 学习笔记 day24-Path Definition File相关推荐

  1. Python学习笔记:文件(File)

    Python学习笔记:文件(File) 打开一个文件用于读写,在Python里十分简单,利用内置open函数,可以用绝对路径,也可以用相对路径. 默认模式是'r',只读模式. 文件句柄f是一个可迭代对 ...

  2. Linux学习笔记(PATH,cp,mv,文档查看cat/more/less/head/tail)

    一.PATH环境变量 PATH 环境变量 用which可以查看到一个命令的所在路径,包括它的alias,实际是从当前环境的目录下去找的. echo $PATH 查看当前命令     rm = /usr ...

  3. node.js服务端笔记文档学会写接口,学习分类:path、包、模块化、fs、express、中间件、jwt、开发模式、cors。

    node.js 学习笔记 node.js服务端笔记文档学会写接口,path.包.模块化.fs.express.中间件.JWT.开发模式.cors. gitee:代码接口笔记 1什么是node.js n ...

  4. Java NIO 学习笔记(五)----路径、文件和管道 Path/Files/Pipe

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  5. Sharepoint学习笔记—Site Definition系列-- 2、创建Content Type

    Sharepoint本身就是一个丰富的大容器,里面存储的所有信息我们可以称其为"内容(Content)",为了便于管理这些Conent,按照人类的正常逻辑就必然想到的是对此进行&q ...

  6. Polyworks脚本开发学习笔记(四)-利用FILE IMPORT进行数据导入及对齐

    Polyworks脚本开发学习笔记(四)-利用FILE IMPORT进行数据导入及对齐 导入参考及数据 FILE IMPORT_REFERENCE导入参考的CAD文件如igs格式 括号内参数分别为(导 ...

  7. The Google File System(GFS)学习笔记

    文章目录 引子 GFS的架构 读数据 写数据 流水线式的网络数据传输 记录追加 总结 引子 这篇文章是我学习极客时间徐文浩老师的<大数据经典论文解读>课程的学习笔记,大量的文字和图片来自专 ...

  8. Go 学习笔记(53)— Go 标准库之 path(判断绝对路径、拆分目录和文件、组合路径、返回路径目录、获取路径最后文件名、获取文件扩展名、路径匹配规则)

    1. 概述说明 import "path" path 实现了对斜杠分隔的路径的实用操作函数. 2. 主要函数 2.1 func IsAbs func IsAbs(path stri ...

  9. Go 学习笔记(52)— Go 标准库之 path/filepath(判断绝对路径、拆分目录和文件、组合路径、返回路径目录、获取路径最后文件名、获取文件扩展名、路径匹配规则、递归遍历目录)

    1. 概述说明 import "path/filepath" filepath 包实现了兼容各操作系统的文件路径的实用操作函数. 2. 主要函数 2.1 func IsAbs fu ...

最新文章

  1. 40+场面试,100%通过率,我想分享的14条经验
  2. win10下硬盘安装CentOS7
  3. Seaborn可视化使用relplot函数可视化数据长度不同的时间序列实战:two Pandas Series of different lengths
  4. fpga经典设计100例_图解运放电路/OP放大电路设计/OP放大器应用技巧100例
  5. 匿名函数 闭包 ( 7 章 )
  6. RHEL 6 关闭ThinkPad 触摸板
  7. 【opencv】11.旋转、翻转图片
  8. QT的QTimer类的使用
  9. 论文浅尝 | 从具有数值边缘属性的知识图谱中学习嵌入
  10. 【Linux】安装x11vnc和xrdp,使用windows远程deepin
  11. Redis 排行榜 相同分数根据时间优先排行
  12. 如何利用IDM加速下载百度网盘大文件
  13. 史上最详细的Stacked Hourglass姿态检测算法详解(源码分析)
  14. 如何查找北京驾照体检医院
  15. 作为南方人,python教你怎么样看雪
  16. HTTP1.1协议-RFC2616-中文版
  17. 蓝牙与UWB的技术对比
  18. 使用GoogleChrome+JS代码批量删除QQ空间说说
  19. 阿里云Docker镜像库
  20. (Matlab)遗传算法优化的BP神经网络实现回归预测

热门文章

  1. 记录下Mac生成安卓证书
  2. echarts 中国地图的下钻
  3. 从源码分析LinkedList集合
  4. Python中 * 的用途
  5. 时间-判断两个时间相差多少天
  6. 发那科机器人override指令_发那科机器人程序是如何编写的呢——发那科机器人...
  7. Wamp5与Moodle安装
  8. 大学生实习行为十要(转)
  9. linux操作系统第二版张玲课后答案,Linux操作系统(基础原理与应用第2版高等学校计算机专业规划教材)...
  10. 常用正则,姓名匹配,去空格等