Tessent scan & ATPG(8) Debug low test coverage(低测试覆盖率的原因及debug方法)

如何利用工具提高测试覆盖率

low coverage 的原因
  1. 每个fault点的可控性和可测性;
  2. 部分设计规则违例会影响测试覆盖率
  3. 好的电路和错误的电路之间必须可以观测到不同;
  4. 那些没有被detect的fault 可能被分配到不需要观测的fault库, 包括AU(Atpg_untestable),UC(Uncontrolled),UO(Unobserved);
如何Debug

1.对错误进行评估,优先找覆盖率低的大的Block.
2. 判断那些分类到untested种类的错误,是否是用户干预导致的.AU,UC.UO
3.对Fualt进行逐个分析.

Assessing the Problem

使用 report_statistics 命令 查看测试覆盖率以及各fault分类的数量比例.
通过 tessent visualizer 可以可视化的去分析fault分布,以设计结构查看每一个block的测试覆盖率及fault信息.

使用 analyze_fault /p1/fpu1/U2694/A1 -stuck_at 1 -display
分析 U2694单元的A1引脚的 stuck_at 1 的问题. 看它能不能控制为0;

分析Low Coverage的原因(stuck_at)
  1. 你的设计没有被过度约束;
    1. 使用命令“report_input_constraints”找到那些被正确应用到设计中的约束。是否存在一些越是是没有必要的
    2. 选择性的将 C 约束 替换为 CT 约束。(C 和 CT 约束的区别? C类型会把某一点约束为一个常数,会统计到测试覆盖率之中,CT类型也会将fault 点固定为一个值,但不会分类到ATPG untestable中,所以覆盖率会有略微提高)
      power pin本身就应该使用CT 约束
      重新执行ATPG去评估每条约束的影响.
  2. 检查是否所有的时钟都被识别了。
    1. 使用命令"analyze_control_signals",去报告设计中的时钟和其他控制信号,包括set reset,read,write等;
    2. 使用 “report_clock” 去识别 ATPG 定义了哪些时钟.有没有漏接一些clock.
  3. 时钟门控对测试覆盖率的影响
    1. 时钟门控的TE端连接到 PI中的test_enable会导致低的测试覆盖率.
    2. 尝试使用scan_enable代替原有的 TE的连接.
  4. Black box对测试覆盖率的影响
    1. 那些没有被建模的存储器经常被识别为黑盒;
    2. 尝试添加输入输出的连接,去确定避开黑盒对测试覆盖率的影响.(如果你想了解black box对测试覆盖率的影响,可以通过对black box的输入输出 add_primary_inputs 和add_primary_outputs 的方式,将black box隔离)
    3. 确保memory 已经做了 ATPG的model;
Aborted Faults
  1. 工具会在超过一定的尝试次数之后,放弃fault点的pattern产生的尝试.
  2. 这些可能因为尝试次数不够 而不能产生pattern的点会被算到 UC和UO的类别中.
  3. 可以通过尝试增加 abort limit,对test coverage的影响.
  4. 使用report_aborted_faults 展示那些被放弃的fault点,以及他们被放弃的原因.
逐个Debug UC fualt的原因
#使用 
report_faults -class class_type
report_faults -class UC
#报告完整的 UC类型的fault list

#使用
analyze_fault 
#去分析指定的fault没有被detected到;
#执行fault分析,在 Tessent Visualizer中展示fault所在电路结构;
analyze_fault /p1/fpu1/U1234/Y -stuck_at 1

#使用
report_test_stimulus
#展示指定条件下的激励
-set
-write
-read
#当需要将某点控制为某个值时, 与他相关的逻辑是如何配置的.

ATPG untestable AU类型的faults

造成AU类型的原因:

  1. 约束(pin,cell,以及ATPG)防止在某些位置生成pattern去detect fault;
  2. 未被替换为扫描单元的触发器,以及不够的时序深度;
  3. 来自black boxes的blocking condition,其他tied或者约束值的逻辑.

debug AU类型的Faults

set_gate_report constrain_value
#展示约束值,forbidden值和是否被blocked
#然后
report_gate
#命令就会展示这三种值
CV/FV/B
#constrained value Forbidden Value & blocked no path to propagate fault if '-' is not blocked

#判断 AU 是否是由constrains 造成的;

在这里插入图片描述

如图所示, 最右侧与非门被constrained为0; forbidden1; 那么与非门的输出会恒为1; 所以前面的 xnor2 为blocking type 为B, 没有办法观测;

debug AU类型的fault,stuck-at faults;

#使用 
add_atpg_constraints 1 /pin/path
#指导ATPG工具在特定位置应用一个特定值的pattern;
#如果 ATPG工具没办法设置这个约束, 使用 
analyze_restriction
#去报告为什么不能设置约束;

在这里插入图片描述

debug AU类型的fault,Transition faults;

使用ATPG约束会创建一个pattern ,在launch和capture期间约束为一个特定的值;如果工具没有办法设置这个约束值, 使用
analyze_restriction
去报告原因;

前一级的cell constrains会影响到下一级的控制情况;

添加私有的输入点(primary input point)to help control

可以通过添加内部私有输入点的方式去控制某一点的状态;

add_primary_input /top/bypass/U10/A -pseudo_port_name my_bypass
add_input_constraints my_bypass -C0

report parallel pattern 0

#使用
set_gate_report parallel_pattern 0
# 去报告 index 为0 的parallel pattern 在电路中每个node 的值;
# XXX 三个值对应 clock的三个frame;
# 工具将时钟pulse 分为凸Pulse和凹pulse
# 这三个frame包括: clock_off post_LE,post_TE
# 对于边沿触发 和电平触发的时序器件,更新值的位置有所不同, 边沿触发的期间在0-1转换时触发,电平触发单元更新于clock = 1时;
#所有的单元都在相同的frame立刻更新;

在这里插入图片描述

set_gate_report pattern_index 4 -internal -scan_test
#去报告某一pattern的具体情况

在这里插入图片描述

在处理集成电路测试的过程中,Tessent Scan & ATPG工具是关键的DFT解决方案,它们在确保芯片测试效率和覆盖率方面扮演着重要角色。为了帮助您有效地配置和使用扫描链,我建议您参考《Mentor Graphics Tessent Scan & ATPG 用户手册》。该手册详细描述了2018.3版本软件的使用方法,对于理解扫描链配置和测试流程至关重要。 参考资源链接:[Mentor Graphics Tessent Scan & ATPG 用户手册](https://wenku.csdn.net/doc/4hrkeain68?spm=1055.2569.3001.10343) 首先,您需要理解扫描链的基本概念,包括其在电路中的作用、如何插入扫描元素、以及扫描链与ATPG工具的交互方式。扫描链的基本配置步骤通常包括选择测试点、创建扫描元素(如扫描寄存器)、构建扫描路径,并确保扫描数据可以正确地被输入和输出。 在配置扫描链时,您可以通过Tessent Scan工具来完成扫描链设计,包括设置扫描链的长度、数量以及如何连接各个扫描元素。然后,ATPG工具可以利用这些扫描链来生成测试向量,这些向量旨在检测电路中的各种故障模式。 在实现扫描链配置的过程中,您需要确保遵守所有设计规则,并对电路进行充分的仿真以验证扫描链的功能正确性。此外,手册中还会提供有关测试覆盖率的提高、测试时间和成本的优化以及如何诊断和解决测试中遇到的问题的实用信息。 完成配置后,您可以利用ATPG工具生成测试向量,并将这些向量应用于扫描链进行实际的测试。整个过程应当遵循最佳实践,确保测试计划的高效执行。 在深入学习和使用Tessent Scan & ATPG工具的过程中,您不仅需要熟悉工具的功能和操作,还应持续更新您的知识以跟进行业标准和技术进步。《Mentor Graphics Tessent Scan & ATPG 用户手册》提供了详细的技术规格和操作指导,是您不可或缺的参考资料。 参考资源链接:[Mentor Graphics Tessent Scan & ATPG 用户手册](https://wenku.csdn.net/doc/4hrkeain68?spm=1055.2569.3001.10343)
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺旺脆兵兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值