RTL 可测试性与设计分析:SpyGlass DFT ADV
RTL 可测试性与设计分析:SpyGlass DFT ADV
会议: SNUG 2017
作者: Fadi Maamari (Synopsys)
页数: 33
源文件: SNUG_TPC_Spyglass_Gobok_2017_Synopsys_Inc_paper_2.pdf
1. 设计流程与 SpyGlass DFT
SpyGlass DFT ADV 在流程中早期处理可测试性问题,实现 RTL 测试签核: - 扫描就绪 - 高测试覆盖率 - 鲁棒向量 - 难测故障和测试点 - 连接性验证 - 面向功能安全的软错误分析
流程:SpyGlass DFT ADV (RTL) → Design Compiler (DFT/DFTMAX) → TetraMAX (ATPG) → ATE
2. SpyGlass DFT ADV 关键功能
1. ATPG 覆盖率估算:确定 RTL 设计是否达到覆盖率目标 2. DFT 违规检查:确保 RTL 扫描就绪,加速 DFT 时间 3. 测试点选择:发现难测区域,减少向量数量和测试成本 4. 连接性验证:在 SoC 组装时验证 DFT 连接 5. 软错误分析:计算 ISO 26262 道路车辆功能安全 的 SPFM (Single Point Fault Metric)
3. RTL 早期可测试性分析
提供设计师视角的原理图浏览和故障浏览器。
4. 可操作的固定型覆盖率报告
逐步指导最大化固定型故障覆盖率:
FC TC Action
--------------------------------------------------------------------
原始设计 70.4 70.5 无 DFT 更改
1. PI/PO 可控可观 70.4 70.5 无操作
2. 触发器可扫描 97.7 97.8 Async_07 & Clock_11
3. 黑盒扫描包裹 97.7 97.8 Info_scanwrap
4. 锁存器透明 97.7 97.8 Latch_08
5. 组合环可控 97.7 97.8 Topology_01
6. 测试模式/绑定引脚 97.8 98.0 Info_synthRedundant
5. 测试覆盖率与 ATPG 相关性
- 固定型测试覆盖率:SpyGlass 与 TetraMAX 平均相关性在 1% 以内 - 跳变测试覆盖率:平均相关性在 5% 以内
6. 测试鲁棒性报告
预防时序问题,识别导致向量失败的鲁棒性问题。报告触发器鲁棒性问题的百分比并分类(Async_11, Async_02_capture, Topology_03 等)。
7. 测试模式下的重汇聚分析
跟踪汇聚路径上的反相,检测重汇聚是否可能导致毛刺。分析 Set/Reset 信号在扫描模式下的行为。
8. 扫描时钟树分析浏览器
从根时钟到选定节点的路径分析。任何节点上的后续点击都会添加到原理图中。
9. 难测故障分析
- 难测故障对 ATPG 效率、运行时间和向量数量影响很大 - 对随机向量具有抵抗力 - SpyGlass DFT ADV 估计"随机向量覆盖率"
| 故障类型 | 效率 | 运行时间 | 向量数量 |
| 固定型 | 低到中 | 高 | 高 |
| 跳变 | 高 | 高 | 高 |
10-11. 自动化高影响测试点
热力图使基于颜色标注的调试成为可能。估计随机向量故障覆盖率。
报告示例:按增益排序的测试点列表,包括类型(control-1/observe)和增益值。
12-18. 自门控逻辑测试点
- 自门控逻辑在使能信号上产生 s/1 冗余故障,增加运行时间 - XOR 树中剩余故障是 ATPG 难处理的 - SpyGlass DFT 可识别自门控逻辑(Info_self_gating_logic 规则) - 控制点复用现有逻辑以减少拥塞和面积开销
19-21. SpyGlass DFT 与 DC 和 DFTMAX 集成
物理感知测试点: - 基于 SpyGlass 的测试点选择 - 在 DFTMAX 中自动插入结果测试点 - LBIST 覆盖率增加 8%-38% - ATPG 向量数量减少 30%-39%
22-23. X-阻塞
- 多周期路径(MCP)在目标 FF 处阻塞
- 黑盒:用 scan_wrap -isolate 或 x_blocking 配置
- 顶层输入:核心包裹
X-blocking of MCPs: 在目的地进行 X-blocking,慢速测试,不能发射跳变。
24-28. DFT 连接性挑战与验证
SpyGlass DFT ADV 在 SoC 顶层验证数千个 DFT 连接: - MUX 选择错误 - 时钟馈送到错误模块 - 背靠背片上时钟控制器 (OCC)
连接性验证场景: - 要求值检查:所有 PLL 复位处于非活动值、时钟门控测试使能引脚未绑定 - 连接性检查:跨层次 A 到 B 连接、功能时钟驱动、核心时钟驱动 - 条件检查:存储器睡眠控制
设计对象:预定义的逻辑名称(FLIP_FLOP_DATA, SCAN_FLIP_FLOP_CLOCK, CGC_CLOCK_IN 等 25+ 种对象类型)
高级连接性检查 -- 条件检查:require_path + illegal_constraint_message_tag 组合
29-31. 软错误分析与 SPFM
- 软错误可在安全关键设计运行期间导致灾难性故障 - ISO 26262 要求计算和报告 SPFM - SpyGlass DFT ADV 在设计周期早期计算 SPFM - 识别需要替换为容错等价物的寄存器子集 - SPFM 浏览器提供设计热点的良好概览
SPFM 公式:SPFMContribution_i = lambda_reg_i x (1-DC_i) x (1-PSAFE_i)
32. 结论
SpyGlass DFT ADV 的 RTL 签核涵盖: - 早期可测试性:处理影响测试覆盖率的问题 - 向量鲁棒性:预防测试向量中的时序问题 - 难测故障:减少 ATPG 向量数量和运行时间 - SoC 连接性:系统检查 DFT 连接 - 功能安全:软错误传播分析、ISO-26262 指标和设计改进
图片索引
共 304 张图片,存放于 SNUG_TPC_Spyglass_Gobok_2017_Synopsys_Inc_paper_2_images/ 目录。本文为 PPT 型论文,大部分内容在图片中。
第 1-3 页:标题和功能概览 第 4-8 页:早期可测试性分析、覆盖率报告、鲁棒性 第 9-18 页:难测故障、测试点、自门控逻辑 第 19-21 页:物理感知测试点及结果 第 22-23 页:X-Blocking 第 24-28 页:连接性验证 第 29-31 页:软错误分析/SPFM 第 32-33 页:总结与致谢