标准单元库功能丰富度基准对比及其对设计PPA的影响

SNUG 2022 2022 20 页

标准单元库功能丰富度基准对比及其对设计PPA的影响

会议: SNUG 2022 作者: Khem Pokhrel,Intel 公司资深首席工程师,技术专家 页数: 20 源文件: SNUG_2022_low-power_Ulstein_Untitled_paper_2.pdf


第 1 页

图1:标题页

SNUG 2022 1 标准单元库内容基准对比与功能丰富度提升设计 PPA Khem Pokhrel,资深首席工程师,技术专家 丰富的标准单元功能 --> 强大的原子级 IP Intel 公司


第 2 页

图2:大纲

SNUG 2022 2 - 供应商无关的库功能基准对比 - 库组成 — PPA 影响圈与 IP 组件使用 - 实验设计 — 方法论 - 结果 - 结论 大纲


第 3 页

图3:供应商无关的库功能基准对比

SNUG 2022 3 自动化的功能丰富度测量 供应商无关的库功能基准对比


第 4 页

图4:库功能分析流程

SNUG 2022 4 - 自动化功能丰富度测量 - 使用 TCL 代码分析库的功能数量和分类仪表盘 - 供应商无关 — 即不依赖单元/引脚命名、阈值电压 Vt、沟道长度、驱动强度等 - 4 个主要分类 — 组合逻辑(Combo)、时序逻辑(Seq)、缓冲器(Buf)、反相器(Inv) - 定制化标识用于进一步分类 - AND、OR、NAND、NOR、AOI、MUX 等 - 交叉分析及组合逻辑与时序逻辑功能在多个库中的唯一列表分离

库功能丰富度的度量——库功能分析流程

TCL 脚本 → 分析库 → 比较功能丰富度 → 创建 HASH 供后续使用

供应商 LIBRARY-1 → 供应商无关标准功能映射 → TCL 各库唯一功能列表 → 库功能仪表盘 → TCL Hash 供应商 LIBRARY-2 → ... → 交叉与重叠报告 供应商 LIBRARY-3 ... →


第 5 页

图5:功能丰富度仪表盘

SNUG 2022 5 - 库功能仪表盘 — 供应商无关库分析脚本的输出。

功能丰富度仪表盘

功能标识LIB-1LIB-2LIB-3LIB-4LIB-5LIB-6LIB-7LIB-8LIB-9
AND 功能 ID 数量333244343
AOI 功能 ID 数量373139215623265432
BUF 功能 ID 数量111111111
IMUX 功能 ID 数量323132232
INV 功能 ID 数量111111111
MISC 功能 ID 数量(表中未明确定义的)99104751151258262152129
MUX 功能 ID 数量323263262
NAND 功能 ID 数量333334333
NOR 功能 ID 数量333333333
OR 功能 ID 数量333333333
TIE_HIGH 功能 ID 数量111111111
TIE_LOW 功能 ID 数量111111111
XNOR 功能 ID 数量323233232
XOR 功能 ID 数量333233233
总功能 ID 数量164160142158213133112238186
具有功能 ID 的总单元数851128381447019932752175115175168688789
总组合逻辑功能 ID 数量81777957133686213782
总时序逻辑功能 ID 数量838363101806550101104
总单元数(无 ID)10156366445086291728277848156621885310401
总 Vt + 沟道长度组合数646334464

仅高单元数量不代表功能丰富度。LIB-8 是最丰富的库。


第 6 页

图6:功能列表比较——重叠与唯一功能

SNUG 2022 6 - 功能 ID TCL 列表比较 - 可评估各库中独特功能对使用情况和 PPA 功耗性能面积 的影响 - 具有更丰富组合逻辑功能集的 LIB-1 在动态电容(Cdyn)和面积方面比 LIB-2 有显著优势

供应商无关的使用/PPA 影响评估——功能列表比较:重叠与唯一功能

LIB-1LIB-2
总功能13139
组合逻辑591 组合逻辑
时序逻辑7238 时序逻辑
通用功能107(74 组合逻辑 + 29 时序逻辑 + 1 Buf + 1 Inv + 1 Tie0 + 1 Tie1)
LIB-1 唯一1 组合逻辑 + 38 时序逻辑
LIB-2 唯一59 组合逻辑 + 72 时序逻辑

已使用 1 个时序逻辑功能,已使用 1 个组合逻辑功能,已使用 1 个时序逻辑功能。 5 个模块中 17% 的组合逻辑面积使用了 30 个组合逻辑功能。


第 7 页

图7:库组成——PPA 影响假设

SNUG 2022 7 设计模块和 IP 需要什么——库组成:PPA 影响假设


第 8 页

图8:库组成——PPA 影响程度

SNUG 2022 8 - 本工作假设以下选择已经确定,仅剩下供应商库功能丰富度作为改善产品 KPI PPA 的唯一选项: - 工艺节点 - 单元架构 — CPP、M0/M1/M2 间距等 - HS vs HD 库 - 阈值电压 Vt / 沟道长度 - 每晶体管鳍片数 - PVT 工艺电压温度 - 最内圈是本工作的重点 - 最外圈很重要但整体使用量较小 - 给定库中数千种反相器具有不同的电气、时序、版图、面积特性,但仅计为 1 个单一功能 - 同样,所有 2 输入 NAND 单元计为 1 个功能

单元根功能 — 更高的 PPA 影响内圈——库组成:PPA 影响程度

外圈仅在有丰富功能的内核时才可能实现。


第 9 页

图9:IP 设计调查——组合逻辑高使用量与优化空间

SNUG 2022 9 - 组合逻辑单元数量和面积在各类 IP 设计中均占主导地位(CPU、AI、GFX、MAC、SECURITY、MEM、MEDIA、CRYPTO、5G、VISION、IMAGE、FABRIC、INFRA 等) - 计算/AI/GFX 引擎和 CPU 严重偏向组合逻辑,占芯片中大部分数字门 - Fabric IP 在时序逻辑面积上略高于组合逻辑,但在大多数 SoC 中占数字门的比例 < 10% - 本工作中的实验设计(DoE)聚焦于组合逻辑 - 组合逻辑在综合/布局布线中有更高的优化空间 - 时序逻辑非常重要,但许多实现选择已经固定或由上游 TFM 决定(RTL 风格、C-Tech、多位寄存器、扫描、时钟门控等)

IP 设计调查——它们需要什么?组合逻辑:高使用量与优化空间

35 个 IP 设计样本,覆盖多个 SoC 市场。


第 10 页

图10:实验设计方法论

SNUG 2022 10 正向、负向和理想证明——实验设计:方法论


第 11 页

图11:PPA 评估——DOE 方法论

SNUG 2022 11

实验设计(DOE)

测试类型配置
默认测试Vendor-1 LIB vs Vendor-2 LIB
负向测试(-ve)Vendor-1 限制使用唯一功能 vs Vendor-2
正向测试(+ve)Vendor-1 vs Vendor-2 增加 Vendor-1 的唯一功能
理想测试获胜供应商 LIB + 额外交付和特征化的功能

- 对实验设计库对执行了从 RTL 到 Route_OPT 以及 PrimeTime PX(PTPX)时序/功耗签核流程 - 测量 PPA 功耗性能面积 指标以进行整体比较,并评估库中唯一功能的具体影响 - 正向、负向和 ISO 供应商电路-版图设计+特征化证明

PPA 评估 — DOE 方法论

流程:RTL → ISO 约束 → ISO 时钟 CT → ISO PVT 工艺电压温度 → ISO 布图规划 → ISO 工具(Fusion Compiler) → ISO 流程/配方 → 不同实验使用不同标准单元库对 → Fusion 版本 ISO → PDK ISO → FSDB/PTPX 波形 → RTL 到 ROUTE_OPT Fusion Compiler + PTPX 流程


第 12 页

图12:结果——正向与负向证明

SNUG 2022 12 正向与负向证明——结果


第 13 页

图13:跨样本设计的默认测试——PPA 对比

SNUG 2022 13

跨样本设计的默认测试

IP 设计单元数量改善 %单元面积改善 %总功耗改善 %LIB-2 唯一组合逻辑面积占总组合逻辑 %LIB-2 唯一组合逻辑面积占总单元面积 %LIB-2 唯一组合逻辑使用实例数
1. 大 ARM CPU11.66%16.85%6.3%15.08%8.61%132,292
2. 小 ARM CPU19.86%8.67%4.5%11.56%6.71%39,874
3. 视觉处理器8.58%5.93%20%13.19%8.48%23,537
4. 内存加密15.09%3.95%14%17.72%7.67%66,937
5. 媒体编码器8.87%10.48%5.2%6.66%3.31%111,963

ISO 工艺下两个供应商的 PPA 对比——功耗最多降低 20%

- LIB-1 参考 — Vendor-1 - Rich LIB-2 — Vendor-2 - ISO:工艺、Vt/沟道长度、单元架构、CPP、PVT 工艺电压温度、工具/流程配方、RTL、布图规划

LIB-2 Node3:110 功能 = 33 组合逻辑 + 77 时序逻辑 LIB-1 Node3:66 功能 = 7 组合逻辑 + 59 时序逻辑

- 性能差异 < 1% - IP/SoC KPI 关注点在 ISO 性能下的功耗 - 组合逻辑门晶体管数量最多减少 15% - LIB-2 唯一组合逻辑功能的影响是 LIB-1 少数唯一功能使用量的 8 倍


第 14 页

图14:理想测试——高速 CPU 2.8GHz

SNUG 2022 14 - Old LIB — Vendor-1 的原始库 - New LIB — Old Lib + 新增 22 个组合逻辑功能 — Vendor-1 - ISO:工艺、Vt/沟道长度、单元架构、CPP、PVT 工艺电压温度、工具/流程配方、RTL、布图规划、库供应商、版图 + 特征化流程

新增 22 个组合逻辑功能带来的 PPA 改善——动态电容(Cdyn)增益 5.2%! 理想测试 — 高速 CPU 2.8GHz

设计统计数据:

指标OLD LIBNEW LIB改善
总标准单元数量3,435,5513,094,511减少 341,040(9.93%)
标准单元数量改善 / 减少11.02%
总标准单元面积改善4.45%
总组合逻辑面积改善5.18%
总组合逻辑数量节省10.97%(210,451)
连线数量改善 / 减少9.27%(309,928)
总标准单元面积3,196,617 um²9%
Vt 类型面积 % 分配62% / 38%ISO
布尔级数深度减少6.06%(3.1 → 3.3)

晶体管节省:

指标改善
总晶体管 FIN 数量节省5.15%(79.1)
总晶体管数量节省4.85%(2,309,246)
总晶体管 Z 节省20.55%(50,947 → 40,475)

功耗节省:

指标OLD LIBNEW LIB改善
总功耗节省5.21%(51.2 pF Cdyn)
总开关功耗节省5.67%(33.4 mW)
总内部功耗节省5.14%(26.4 mW)
总泄漏功耗节省4.85%
总组合逻辑功耗节省5.25%(42.7 mW)
Cdyn 降低5.21%(51.2pF)
节省的功耗(mW)3 mW
NVP4.78%(10)

时序/性能:

指标OLD LIBNEW LIB改善
WNS(ns)-0.296-0.2863.38%
TNS(ns)-1473.7-1060.828.02%
时序墙移位性能增益7 ps2.0%
ISO 功耗性能增益预测5%
平均每网引脚数改善2.66%(3.5 → 3.6)
布尔压缩改善28.56%(89,691)

单元使用测量:

指标OLD LIBNEW LIB
设计中总单元实例3,435,5513,094,511
使用的总单元参考1,3841,507
使用的总唯一功能104125
使用的总唯一组合逻辑功能7392
库中可用唯一组合逻辑功能80102
库中可用全部唯一功能182205
使用的新功能总数021
设计中的新功能实例数0144,339
新功能实例占全体单元实例 %04.66%
新功能实例占组合逻辑实例 %07.52%

布尔图:互补吸收 布尔合并改善


第 15 页

图15:跨三个 SoC 的唯一功能使用排名

SNUG 2022 15

不同 IP 类型的功能使用可能差异很大——跨三个 SoC 的唯一功能使用排名

总体排名功能 IDSoC-1 排名SoC-2 排名SoC-3 排名
1a4.0b2.2b2.2b2.2b2.2115
2Ia3.0b2.2b2.2b2.2284
3Ia4.3336
4Ia3.0b2.1472
5a4.1541
6Ia4.0b2.0627
7Ia3.1b2.2b2.2793
8esp.((a)'*(b)')+(c*((a)'+(b)'))未使用5
9a2.0b2.2b2.1176
10Ia2.1b2.1c2.2811
11a3.2b2.19未使用
12a6.0未使用10
13a2.0b2.0c2.01012
14Ia2.0b2.0c2.0d2.01215
15a3.0b2.0b2.01113
16a2.0b3.01318
17Ia2.1b3.31416
18a2.1b2.1c2.1d2.21520
19a2.0b3.2b2.216未使用
20Ia2.0b3.3b2.21814
21a3.0b2.0b2.0b2.01925
22Ia2.0b2.1b2.020未使用
23Imaj23_Ixor32219
24a2.0b3.0b2.02317
25mux41111021未使用
26a3.0b2.2b2.2b2.124未使用
27a2.0b3.0b3.02724
28Ia4.0b2.2b2.2b2.2b2.125未使用
29Ia2.0_Ixor2_a2.2未使用21
30Ia4.0b2.2b2.2b2.2b2.2未使用23

- SoC-1 样本:6 百万单元 / 5 个 IP 模块 - SoC-2 样本:7 百万单元 / 5 个 IP 模块 - 取决于 RTL IP 类型,功能使用排名有所不同 - 只有排名 #1 和排名 #3 在 SoC-1 与 SoC-2 之间匹配 - 多样化的功能集使库更丰富,能够满足产品中各类 RTL IP 的需求

SoC-3(进行中): - 在最近的 SoC-3 使用中(3 个模块,450 万单元),使用排名的波动比 SoC-1 和 SoC-2 更加显著


第 16 页

图16:跨三个供应商库的 ISO GFX RTL IP

SNUG 2022 16

相同 Graphics IP 功能——跨三个供应商库的 ISO GFX RTL IP

指标Vendor1 Node N-2Vendor2 Node N-1Vendor3 Node N
库中可用总功能208238146
使用的总功能 ID 数133139110
库中可用总组合逻辑功能 ID 数10313375
使用的总组合逻辑功能 ID 数9710373
使用的总时序逻辑功能 ID 数333233

相同 RTL 版本

指标Vendor1Vendor2Vendor3
归一化标准单元晶体管数量10.891.11
归一化标准单元组合逻辑数量10.871.08

如果提供丰富的功能,IP 就会使用它们。

- 该 RTL IP 设计在有丰富功能可用时始终会使用它们 - IP 对功能的需求与工艺节点无关 - 显著的单元数量和晶体管节省 - 时序逻辑功能使用在不同工艺节点和供应商库之间相似 - Node N vendor3 是最新工艺节点 - Node N-2 vendor1 是两代之前的工艺节点


第 17 页

图17:结论

SNUG 2022 17 丰富的组合逻辑功能 → 更好的设计 PPA 结论


第 18 页

图18:总结

SNUG 2022 18 - 提出了一种供应商无关的自动化库组件功能丰富度测量方法 - 讨论了一种使用 Fusion CompilerPrimeTime PX(PTPX)的 PPA 影响评估方法和实验设计(DOE) - 现代设计 IP 需要多样化的组合逻辑功能以实现最优 PPA 功耗性能面积 - 组合逻辑功能被设计大量使用,在综合和布局布线 PnR中提供了显著的优化空间 - 在现有库中增加几十个组合逻辑单元可以显著改善设计 PPA: - 在 ISO 性能(频率)下最多降低 20% 功耗 - 在 ISO 功耗下最多提升 5% 性能 - 通过功能本地化到复杂门实现 5-11% 晶体管数量减少 - 9-19% 单元实例数量减少;4-17% 单元面积减少 - 在高速 CPU 设计上实现 5.2% 动态电容(Cdyn)降低 - 43-75% 的功耗节省来自组合逻辑门功耗

丰富的功能集 @ ISO 频率/布图规划面积目标将产生更低功耗 总结


第 19 页

图19:参考文献

SNUG 2022 19 参考文献

[1] Namhoon Kim et. al, "Deep Neural Network Based Fast Library Generator for Statistical Timing Characterizations", IEEE International Symposium on Quality Electronic Design (ISQE) or International Symposium on Physical Design (ISPD), Oct 2020

[2] Andrea Bonzo, Dolphin Integration, "Choosing the best Standard Cell Library without falling into the traps of traditional benchmarking methods", Design Reuse, Sept 2019

[3] LC Lu, TSMC, "Physical Design Challenges and Innovations to Meet Power, Speed, and Area Scaling Trend", ISPD 2017

[4] Synopsys Liberty User Guide, 2017

[5] Dr. Adam Teman, Bar-Ilan University, "Standard Cell Libraries", Nov 2016


第 20 页

图20:空白页

*(空白页)*


图片索引

本文共 79 张图片,存放于 SNUG_2022_low-power_Ulstein_Untitled_paper_2_images/ 目录。

第 1 页:page_001.png 第 2 页:page_002.png 第 3 页:page_003.png 第 4 页:page_004.png 第 5 页:page_005.png 第 6 页:page_006.png 第 7 页:page_007.png 第 8 页:page_008.png 第 9 页:page_009.png 第 10 页:page_010.png 第 11 页:page_011.png 第 12 页:page_012.png 第 13 页:page_013.png 第 14 页:page_014.png 第 15 页:page_015.png 第 16 页:page_016.png 第 17 页:page_017.png 第 18 页:page_018.png 第 19 页:page_019.png 第 20 页:page_020.png

*(其余 59 张图片为 PPT 幻灯片中的图表、流程图和装饰元素,存放于 _images/ 子目录中)*