芯片覆盖率为何很高仍漏测?X源怎么堵住?
扫描二维码
随时随地手机看文章
量产测试最容易给人错觉的数据,就是那串看起来很高的故障覆盖率。覆盖率数字漂亮,不代表缺陷真的被看见,压缩链路和未知态处理稍有失衡,就会把漏测藏在统计表里。
扫描压缩别名的核心问题,是多个内部响应被折叠到有限几个观察口后,不同故障可能映成同一组签名。压缩比越高,这种风险越需要靠模式设计和可观测性补偿来压制。很多项目为了缩短测试时间,把压缩器开得很激进,表面上测试向量少了、产线效率高了,但某些深层节点的故障响应彼此相关,落到压缩后的MISR里就更容易相互抵消。此时覆盖率工具仍可能给出乐观数字,因为它假设激励与观测路径都按模型成立,真实硅片上的未知态、时序漂移和局部电源噪声却会改变响应分布。若没有针对关键模块插入额外观测点,或没有对高相关通路单独降压缩,测试时间省下来的同时,也在把难检缺陷往量产后挪。压缩不是越强越先进,它本质上是在测试成本与可区分性之间做交易,交易做得太狠,漏测就会变成迟早要付的账。对安全芯片和车规器件更是如此,因为少量难检缺陷一旦逃出产线,代价远高于多花几秒测试时间。测试压缩省下的是秒级成本,漏检付出的可能是整批返修。
X源阻断则是另一类更现实的难题。SRAM未初始化单元、模拟宏输出、异步跨时钟逻辑以及某些低功耗隔离边界,都会在扫描测试里吐出未知态。若这些X值不被妥善阻断,它们会沿压缩链传播,把原本可区分的故障响应一起污染;但如果阻断做得过度,大量节点又会被掩蔽,真实故障同样看不见。工程上最差的做法,就是为了追求表面覆盖率而大面积启用X mask,却不回头核对哪些故障因此失去可观测性。更稳妥的方案通常是分层处理:在设计阶段减少可避免的X源,在DFT结构里对不可避免的X源做定点包围,在ATP G阶段按模块和场景选择不同的阻断策略。还要注意测试模式下的电源噪声,因为扫描切换活动过高时,本来在功能模式下不会出现的暂态也会制造额外未知态。测试不是把芯片强行推到一个理想的离线状态,而是要在受限可观测性里最大化真实缺陷的暴露概率。很多团队在量产后才发现某些失效只在低功耗模式切换后出现,本质上就是隔离边界制造了新的X源,却没有及时回写到DFT约束里。测试环境一变,旧的掩蔽策略就会失真。测试策略一旦脱离真实上电和低功耗序列,覆盖率数字就会开始失真。测试流若不跟着系统状态走,覆盖率报表迟早会和现场故障脱节。
覆盖率高不等于漏测少,关键在于响应有没有被真实区分出来。把压缩别名和X源阻断一起管住,测试结果才不只是好看的统计数字。





