使用块抽象模型和时序提取模型进行复杂数百万门SoC的层次化实现

SNUG India 2019 2019 45 页

使用块抽象模型和时序提取模型进行复杂数百万门SoC的层次化实现

会议: SNUG India 2019, 班加罗尔 作者: Abhishek Chouksey, Avneet Shrivastava (Intel Technology India Pvt Ltd) 页数: 45 源文件: SNUG_TPC_SDC_Chouksey_Microsoft_PowerPoint_ID245_Hierarchical_Implementation_for_SOC_using_Block_paper.pdf


Page 1

使用块抽象模型和时序提取模型进行复杂数百万门SoC的层次化实现

Abhishek Chouksey, Avneet Shrivastava Intel Technology India Pvt Ltd 2019年6月26-27日, SNUG India 班加罗尔

Page 2

引言

- 当前SoC设计使用层次化实现 Hierarchical Implementation以获得容量优势和更快的TAT - 传统上,基于ETM 提取时序模型的模型用于层次化实现。更复杂且更好的抽象模型技术提供了接口逻辑的详细信息 - 使用抽象模型和ETM模型混合方法论实现195mm² SoC,包含75个独特的多级分区 - 本演示主要基于抽象模型的实现经验 - 还将比较抽象模型 vs ETM以及如何为不同块进行选择

Page 3-4

议程

引言 → ETM 提取时序模型抽象模型 Abstract Model基础 → 设计阶段 → 设计统计与挑战 → 使用抽象模型的典型注意事项 → 抽象模型的优势 → ETM的使用场景与局限性 → 抽象模型 vs ETM → 结论

Page 5-8

ETM和抽象模型基础

ETM: - 是什么:输入/输出时序弧、每个信号端口的关联时钟、最小-最大时钟树延迟 - 生成命令:extract_model –format {db lib}(签核工具) - 布局视角:子块使用frame view链接、包含阻挡物、块形状和边界端口位置、硬宏、电压区域、布局边界

抽象模型(Abstract): - 是什么:输入/输出时序弧、每个信号端口的关联时钟、最小-最大时钟树延迟、每个场景的接口逻辑、网络电容/电阻和标注延迟、到边界触发器的时序和时钟延迟、完整的时钟逻辑被保留 - 生成命令:create_frame → create_block_abstraction/create_abstract(实现工具) - 布局视角:子块使用abstract view链接、同样包含完整物理信息、frame view在布线时使用

Page 9-10

设计阶段

分三个阶段:

阶段1——探索阶段:设计规划 - 面积探索 - 分区决策 - 性能探索 - ~80% RTL,早期约束/UPF/模式

阶段2——试运行阶段:PnR试验 - 100% RTL,约束精炼 - 时序和CTS实验 - 面积优化,布局收敛

阶段3——最终运行:最终实现轮次 - Setup、Hold和时序DRC收敛 - LVS/DRC收敛 - Formal、VCLP和PDN签核

父/子/孙分区并行实现

Page 11-17

设计统计与挑战

统计: - 195mm² SoC die - 75个独特模块,多级层次——并行实现 - 高度直线型的布图规划,多个电源域 Power Domain - 65个抽象模型和10个ETM 提取时序模型 - 共五级层次结构

挑战: - 逻辑、物理和功耗信息的正确建模 - 子块的质量问题 - 接口时序路径优化

Page 18-24

使用抽象模型的典型注意事项

问题原因解决方案/变通方法
工作电压不一致工作电压值差异 / PVT场景不一致保持相同的电压值和场景用于实现
功耗端口不匹配子分区的UPF中缺少功耗端口创建端口并连接到正确的供应网络,重新生成抽象模型
PnR接口逻辑优化导致等效性失败抽象视图下工具优化了子分区浮空输入端口的接口网络在布局优化期间对此类接口网络应用don't_touch
抽象视图中空模块被报告为未放置实例即使抽象视图中模块的完整逻辑被移除,模块未被删除在子分区中删除模块后重新生成抽象模型
综合期间电源供应传播打开父数据库时需要传播电源供应使用propagate_constraints –power_supply_data确保在抽象模型内传播
在父分区中报告时序路径完全在子分区内部的时序路径也被报告使用timing_ignore_paths_within_block_abstraction true(综合)和set_timing_paths_disabled_blocks -all_sub_blocks(PnR)

Page 25-28

抽象模型优势——接口时序收敛

- 覆盖内部延迟——与ETM类似,允许通过设置标注延迟来应用现实的预算 - 抽象模型提供早期反馈——硬时序路径、未优化的接口DRC和时序 - 布图规划和布局修改——电压区域和布局边界、引脚放置以最小化绕路 - 不需要层次化时序约束——应使用平面时序约束以获得更好的接口时序优化 - 精确优化——通过抽象模型进行的时序/时钟路径优化比ETM更现实:到捕获触发器的精确插入延迟可用于顶到块接口路径的时序分析;数据通路中每个端点可报告更多路径

时钟: - 时钟偏移——使用ETM需要全芯片时钟平衡,依赖全芯片时序团队;抽象模型保留时钟信息 - 抽象模型帮助识别改进空间——时钟端口放置的最佳位置、调整时钟宏和预放置逻辑

VCLP收敛: - 与边界端口相连的叶级逻辑的相关供应网络信息——提前捕获缺失的隔离单元和电平转换器违规 - 从电源域角度,缓冲插入在构造上是正确的

Page 29-31

ETM使用场景

ETM使用场景: - 子块实现延迟(RTL交付延迟、子块自身经历多层并行开发、子/孙块的复杂度/规模) - 需要手动干预以跟上项目进度——在时间紧迫的情况下生成脚本化ETM模型 - 设计规模——大型设计的抽象模型可能增加数据库打开/链接/保存时间,需要评估抽象模型尺寸是否可处理

Page 32

ETM的局限性

- 使用脚本化ETM进行实现,使用真实ETM进行签核 - 脚本化ETM相关风险: - 需要多轮时钟推/拉迭代才能收敛 - 需要在边界插入锚定缓冲器以实现可预测的接口延迟 - 需要仔细监控端口的相关供应网络并根据RTL更改更新 - 必须严格遵守预算以确保时序收敛(可能次优) - 额外努力对齐硬/环回路径 - 接口违规持续到最后——除非有签核质量的ETM,否则父块和子块都无法关闭

Page 33-42

抽象模型 vs ETM 全面对比

参数抽象模型ETM
模型使用可能因端口不匹配/角点/场景不匹配产生设置故障;可使用平面顶层约束易于设置,端口不匹配可快速修复;工具接受任何角点ETM无健全性检查;顶层约束不能引用块内节点
分析接口时序路径失败原因可清晰确定(引脚位置、电压区域、未缓冲路径等)接口时序分析必须使用平面STA
精度可逐步更新;CTS自动默认跟踪实际时钟树阶段式ETM繁琐;时钟平衡取最差延迟(不精确)
生成容易度可直接从实现工具生成;需与父块一致;依赖块实现成功脚本化ETM易生成但质量受损;真实ETM需签核STA工具(增复杂度)
VCLP/LP签核提前捕获MV问题,跨电压缓冲插入构造正确需谨慎处理端口相关供应网络的正确性

模型决策:基于上述对比,抽象模型是默认选择。存在需要使用ETM进行实现的情况。

Page 43-44

结论

使用抽象模型的收益: - 从父级可见性/清晰度 - 分析变得容易 - 更好的精度 - 更快的收敛 - 减少时序ECO周期

未来增强:迭代报告链接问题、质量检查器启用

Page 45

谢谢!


图片索引

本文共160张图片,存放于 SNUG_TPC_SDC_Chouksey_Microsoft_PowerPoint_ID245_Hierarchical_Implementation_for_SOC_using_Block_paper_images/ 目录。