从ATPG到ATE:一个DFT工程师的OCC电路实战配置笔记(含TestKompress/TetraMAX流程)
从ATPG到ATE:DFT工程师的OCC电路配置实战指南
在芯片测试领域,OCC电路的设计与配置一直是DFT工程师面临的核心挑战之一。每当接手一个新项目,从RTL综合到最终ATE测试的完整流程中,OCC模块的稳定性和可靠性直接决定了at-speed测试的成败。本文将基于实际项目经验,深入剖析OCC电路从设计到验证的全流程技术细节。
1. 理解OCC电路的核心价值与工作原理
OCC(On-Chip Clock)电路的本质是一个智能时钟切换系统,它在两个关键阶段发挥作用:
- Shift阶段:使用ATE提供的低频时钟(通常10-30MHz)加载和卸载测试向量
- Capture阶段:切换到芯片内部PLL产生的高频工作时钟(可能达到GHz级)进行at-speed测试
这种双模式时钟管理解决了ATE设备无法直接产生高频时钟的物理限制。现代OCC电路通常包含以下关键组件:
// 典型OCC电路Verilog描述片段 module occ_core ( input atclk, // ATE时钟 input pllclk, // PLL自由运行时钟 input shift_en, // 移位使能 output scan_clk // 扫描链时钟 ); // 时钟选择逻辑 assign scan_clk = shift_en ? atclk : pllclk; // 附加的glitch防护电路... endmodule时钟切换的三大技术挑战:
- 消除切换过程中的毛刺(glitch)
- 确保时钟相位对齐
- 处理不同时钟域间的时序约束
2. OCC电路实现的双路径策略
2.1 自动化插入流程(DFT Compiler方案)
使用Synopsys DFT Compiler自动插入OCC是当前业界的主流做法,其典型流程如下:
准备阶段:
- 确认设计约束(SDC)已包含测试模式约束
- 验证时钟网络是否满足测试要求
执行命令示例:
set_dft_configuration -clock_mixing mix_clocks create_test_protocol -infer_clock preview_dft insert_dft关键参数配置:
参数 推荐值 作用 -clock_mixing mix_clocks 允许时钟混合 -fix_clock_gating all 修复时钟门控问题 -hookup_pads true 自动连接测试端口
注意:自动插入后必须使用
report_dft命令检查插入结果,特别关注时钟网络报告
2.2 手动设计定制化OCC电路
对于高性能或特殊架构设计,手动设计OCC电路可能更优。以下是关键设计要点:
时钟同步电路:使用两级触发器消除亚稳态
always @(posedge pllclk or posedge reset) begin if(reset) {sync1, sync2} <= 2'b0; else {sync1, sync2} <= {shift_en, sync1}; end毛刺防护技术:
- 添加使能信号滤波
- 采用时钟门控单元(CG)替代直接MUX
- 插入缓冲器平衡时钟路径
手动设计的优势场景:
- 超高频设计(>2GHz)
- 多电压域设计
- 需要特殊时钟切换序列的架构
3. TestKompress/TetraMAX实战配置
3.1 模式生成流程优化
在TetraMAX中生成at-speed测试模式时,关键配置参数直接影响测试质量:
set_faults -model transition set_patterns -internal atspeed -cycles 5 add_clock -name func_clk -period 2.5 [get_ports clk] add_pulse -name launch -clock func_clk -start 0 -periods 1 add_pulse -name capture -clock func_clk -start 1 -periods 1测试模式质量检查清单:
- 确认transition fault覆盖率≥95%
- 验证launch-capture时钟对正确性
- 检查X-state传播情况
3.2 常见DRC问题与修复策略
在OCC电路验证过程中,典型的DRC违规及解决方案:
| DRC类型 | 出现阶段 | 修复方法 |
|---|---|---|
| Clock overlap | 时钟切换 | 调整使能信号时序 |
| Hold violation | Capture | 插入延迟单元 |
| Clock gating violation | Shift | 替换为测试安全门控 |
提示:使用
verify_test_structures命令可提前发现大部分潜在问题
4. SDF验证与ATE文件转换
4.1 时序反标验证流程
生成带延迟信息的仿真环境:
tmax -nd -autobuild -sdf typ.sdf design关键检查点:
- launch时钟到第一个触发器的路径
- 捕获时钟到最后一个触发器的路径
- OCC使能信号的建立/保持时间
4.2 ATE文件生成技巧
WGL到ATE格式转换时的注意事项:
- 时钟脉冲宽度定义必须与ATE设备匹配
- 向量排序应符合测试机内存限制
- 添加必要的probe点监控信号
效率优化技巧:
set_compress -mode adaptive -threshold 100 set_pattern -format STIL -serialize yes在实际项目中,OCC电路的稳定性往往需要多次迭代才能达到理想状态。最近一次28nm项目调试中,我们发现时钟使能信号的滤波电容值对高频测试稳定性影响显著,通过调整RC参数最终将测试良率从92%提升到99.8%。
