大功告成!使用层次化 ATPG 提升生产力

SNUG 2019 2019 13 页

大功告成!使用层次化 ATPG 提升生产力

论文信息

项目内容
作者Irfan Baig(Acacia Communications Inc.,Maynard MA)、Don Skinner(Synopsys Inc.,Mountain View CA)
会议SNUG 2019
页数13 页

摘要

大规模设计尺寸和紧张的引脚数量预算持续给 DFT 架构带来压力。层次化 ATPG 和向量移植(Pattern Porting)提供了一种机制来限制现代 DFT 设计的复杂性,并利用现有流程。该过程提供了一种将在模块级生成的向量用于 SoC 级并直接输出到测试机的方法。通过在设计的较低层级工作,运行时间和性能都得到了极大改善。使用本文描述的方法,可为当今超大规模 SoC 重新带来生产力和性能的提升。


1. 引言

随着 SoC 设计规模持续增长(达到数亿门级别),传统的扁平化 ATPG 流程面临着严峻的挑战:运行时间过长、内存消耗巨大、向量数量爆炸式增长。特别是在引脚数量受限的设计中——这种情况在先进工艺节点下越来越普遍——传统方法已经难以为继。

层次化 ATPG Hierarchical ATPG 通过将大型设计分解为可管理的模块来解决这些问题。其核心理念是"分而治之"——在模块级生成测试向量,然后通过向量移植将其重用到 SoC 级。这种方法不仅减少了计算资源需求,还支持并行开发——各模块的 DFT 团队可以独立工作。


2. 层次化 ATPG 流程

2.1 Core Wrapping(核心封装)

Core Wrapping 是层次化 ATPG 的基石。它为每个核心(或模块)创建测试访问机制(TAM,Test Access Mechanism):

Wrapper Cell 被插入在核心的每个功能输入和输出端口上。Wrapper Chain 将这些 Wrapper Cell 串联成扫描链,提供从芯片引脚到核心内部的外部访问路径。在隔离模式下,当测试其他核心时,Wrapper 将核心置于安全状态——核心的输出不会干扰其他核心的测试。

Wrapper 的类型选择取决于核心的性质: - Full Wrapper:完整的输入/输出隔离。通过在所有输入和输出端口插入包装单元来提供完全的测试隔离。适用于硬核(Hard IP),其中内部结构不可修改。 - Partial Wrapper:仅包装关键端口。在提供必要隔离的同时减少面积开销。适用于软核(Soft IP),其中可以进行更多优化。

2.2 Pattern Porting(向量移植)

Pattern Porting 是将模块级生成的 ATPG 向量移植到 SoC 级的过程:

1. 模块级 ATPG:在模块的独立上下文中运行完整的 ATPG,生成针对该模块的测试向量集。 2. 向量重定向:通过 Wrapper Chain 将模块级端口访问映射到 SoC 级引脚。模块级的输入/输出通过 Wrapper 链进行串行化访问。 3. 时序调整:根据 SoC 级的实际时序约束调整向量时序。模块级的时序假设可能与 SoC 级不同。 4. 向量合并:来自多个模块的向量被合并为一个统一的 SoC 级测试程序。这个过程需要考虑向量的兼容性和测试时间优化。

2.3 验证流程

层次化生成的向量必须经过严格验证以确保在 SoC 级的正确性: - 逻辑等效性检查:确保移植前后的测试覆盖等价。 - 门级仿真验证:在 SoC 级网表上验证移植后的向量。 - 测试机格式转换验证:确保最终输出的测试机格式正确。


3. 被测器件

本文的 DUT 是一个大规模通信 SoC,具有以下特征: - 多个异构核心(DSP、ARM、专用加速器) - 严格的引脚数量限制 - 需要同时满足模块级和系统级的测试要求 - 设计规模使扁平化 ATPG 在合理时间内不可行


4. 实验

实验旨在对比三种 ATPG 方案的性能和生产力:

1. 扁平化 ATPG:在全芯片级直接运行 ATPG。这是传统方法,用作参考基准。 2. 层次化 ATPG(无向量移植):各模块独立运行 ATPG,但不进行 SoC 级的向量整合。 3. 层次化 ATPG(含向量移植):完整的流程——模块级 ATPG + Core Wrapping + Pattern Porting 到 SoC 级。


5. 模块级结果

在模块级的实验中,层次化 ATPG 展示了显著的改进:

指标扁平化 ATPG层次化 ATPG改善倍数
ATPG 运行时间48 小时以上~3 小时约 16 倍
内存峰值> 64 GB~12 GB约 5 倍
向量数量基准与基准持平
测试覆盖率98.5%98.3%略低(可接受范围内)

这些结果表明层次化方法在保持可比的测试覆盖率的同时,大幅减少了计算资源需求和运行时间。


6. SoC 级结果——基于近似线性性能的外推

基于模块级的实验结果,采用完整层次化方案后预计的 SoC 级收益:

- 线性性能扩展:模块级的收益直接映射到 SoC 级。随着设计规模的增加,层次化的优势变得更加显著。 - 向量移植时间:仅占总体 ATPG 时间的不到 10%。移植过程的开销远小于扁平化 ATPG 的额外计算成本。 - 支持并行开发:各模块 DFT 团队可以完全独立工作,无需等待其他模块完成。 - 复用性:一旦为某个核心建立了 Wrapper 和移植流程,它可以在所有使用该核心的设计中复用。

当设计规模从数百万门增长到数亿门时,扁平化 ATPG 的运行时间呈超线性增长,而层次化 ATPG 的运行时间仅随模块数量线性增长——这是该方法最根本的优势。


7. 结论

层次化 ATPG Hierarchical ATPG 结合 Core Wrapping 和 Pattern Porting 是解决超大规模 SoC DFT 挑战的有效且经过验证的方法:

1. 显著的运行时间减少:在我们的案例中实现了 16 倍以上的改善,这一优势随设计规模增长而扩大。 2. 大幅降低内存需求:将内存消耗从超过 64GB 降至约 12GB,使其能够在标准计算资源上运行。 3. 支持并行 DFT 开发:各模块团队可以独立进行 ATPG,显著缩短项目周期。 4. 复用现有 DFT 流程和基础设施:无需从零开始,可以逐步从扁平化过渡到层次化。 5. 保持测试覆盖率:层次化方法的覆盖率损失极小(< 0.2%),在可接受范围内。

该方法为应对未来更大规模 SoC 设计的 DFT 挑战提供了可扩展的路径。


核心概念

概念说明
层次化 ATPG Hierarchical ATPG将大型设计的 ATPG 分解为模块级运行,然后整合到 SoC 级的方法
Core Wrapping 核心封装在模块边界插入 Wrapper Cell 以提供测试访问和隔离
Pattern Porting 向量移植将模块级 ATPG 向量重定向到 SoC 级引脚的过程
DFT 可测试性设计芯片可测试性设计,层次化 ATPG 是其在大规模 SoC 中的关键使能技术

相关链接

- 层次化 ATPG Hierarchical ATPG · Core Wrapping 核心封装 · Pattern Porting 向量移植 - DFT 可测试性设计 · ATPG 自动测试向量生成 · TetraMAX · DFTMAX - Acacia Communications · Synopsys


图片索引

本文共 12 张图片,存放于原文 _images/ 目录。

第 1 页: -

第 4 页: -

第 5 页: -

第 6 页: -

第 7 页: -

第 8 页: -

第 9 页: -

第 10 页: -

第 11 页: - -

第 12 页: - -