首页/文章/ 详情

3D-IC 设计之 Memory-on-Logic 堆叠实现流程

11小时前浏览9


本文作者:柏嘉玮

Cadence 公司 DSG Product Engineering Group


 


Integrity 3D-IC 平台

  • 提供了一系列三维堆叠设计流程,通过将二维芯片网表分解成双层的三维堆叠结构,用户可以探索三维堆叠裸片系统相对于传统二维设计的性能优势,改善内存延迟,实现性能突破。

  • 从二维设计中分离出存储单元,并自动将其划分为两个工艺层,上层放置存储单元 Macro Cells,下层放置逻辑运算单元 Standard Cells。该流程可以实现两个裸片同时进行的时序驱动单元摆放。用户还可以进一步运行标准的实现步骤,如时钟树综合、时序优化、布线等,将其作为传统布局布线流程来完成三维堆叠设计实现。



今天我们来介绍 Integrity 3D-IC 的特色功能之一:


Memory-on-Logic 三维芯片堆叠设计流程



What is Memory-on-Logic?



Memory 指的是记忆存储单元;Logic 指的是运算单元或处理单元。

Memory-on-logic(MoL)堆叠顾名思义,就是将存储单元通过三维堆叠的设计方式,放置在运算单元所在裸片的上层裸片中,从而实现三维集成电路的三维堆叠结构。



Why is Memory-on-Logic?



我们现在正处于高速发展的人工智能时代,对计算机算力的需求日益旺盛,同时也对相关的集成电路芯片提出了更高的性能要求。

然而算力需求的快速增长和有限的算力提升速度形成了尖锐的矛盾,其具体表现在两个方面:一是如今的摩尔定律越来越难以维系,器件尺寸微缩越来越困难;二个是现有的计算机架构——冯诺依曼存算分离架构的缺陷开始凸显,出现了所谓的内存墙限制(Memory Wall Limitation)。

MoL 三维堆叠结构为上述瓶颈提供了解决思路。对于后摩尔时代背景下的工艺瓶颈,三维堆叠可以有效提升单位投影面积中晶体管的数目,3D-IC 从方法学角度提供了一种延续摩尔定律的可能;对于存算分离所引起的内存墙限制,通过把存储单元通过三维堆叠放置到逻辑运算单元的正上方,尽可能缩短数据传输距离,从而进一步提升芯片性能,降低数据传输的功耗。此外,通过 3D-IC Memory-on-Logic 结构还可以对上下裸片采用不同的工艺制程,从而降低整体芯片的制造成本。



How to do Memory-on-Logic?



后端实现流程如下图所示,对比传统二维芯片,三维 MoL 芯片基于 3D-IC 专用物理后端实现平台——Integrity 3D-IC,从 floorplan 阶段开始就加入 3D-IC 的设计方法,通过 3D Mixed Placer 引擎同时进行 Macro Cells 和 Standard Cells 的自动布局,建立 Pseudo-3D 时序收敛流程,从而实现 3D-IC MoL 的迭代优化、时钟树综合、自动绕线等步骤,在签核阶段还可以通过 Integrity 3D-IC 平台来调用各类 Signoff 工具实现各项签核。


 


1. 3D Mixed Placement


规划 Floorplan 是传统数字后端实现流程早期的一个重要阶段,主要目标之一便是 Macro Cells 的放置。传统 Floorplan 的规划需要经过设计工程师多次的设计迭代,从而获得一个互连线长尽量短、时序尽量收敛的 Floorplan 以供之后阶段进行自动布局布线。如今,采用 Mixed Placement 实现流程,Macro Cells 和 Standard Cells 通过由拥塞、互连线长和时序驱动的 Mixed Placer 引擎同时进行放置,与传统流程相比,Mixed Placement 可以大量减少设计工程师的手动工作量,从而实现更短的项目实现时间,并达到相当甚至更好的性能质量。而在最新的 Integrity 3D-IC 实现平台,Mixed Placement 功能可以完美继承到 3D-IC MoL 实现流程中,在进行 3D-IC Placement 的过程中帮助工程师用尽可能短的时间,获得满足要求的 Floorplan。3D-IC MoL Mixed Placement 引擎同样由时序驱动,同时摆放 Macro Cells 和 Standard Cells,同时如图中所示,还能支持在上层裸片中 80% 以上的高密度放置。

 


2. Pseudo-3D Timing Closure Flow


在完成初步的 3D-IC MoL Floorplan 之后,可以在 Integrity 3D-IC 平台中通过命令来建立 Pseudo-3D 时序收敛流程,完成 3D-IC MoL 的版图实现。主要分为 3D 层次化结构的重建、Bump 物理位置分配、Pseudo-3D 自动布局布线、以及 3D-IC 数据库的建立。

01 重建 3D 层次化结构

相较于传统芯片的设计,3D-IC 设计的层次化结构的不同是显而易见的。3D-IC 设计由于会将芯片分为上下两个裸片—— Top Die 和 Bottom Die,天生就需要建立两个单元模块。工具会根据用户的设定,建立两个新的 Top-Level hInsts,随后将所有设计中的 Macro Cells 归入 Top hInst 中;剩下所有的 Standard Cells,在保留原有的层次化结构的基础上,全部归入Bottom hInst 中,其下级可继承保持原始设计中的所有层次化结构。

02 分配 Bump 物理位置

从结构层面上实现三维分组之后,三维堆叠的互连问题也必须考虑。为了将上下裸片连接起来,最常用的方式是在顶部金属层上通过微米量级尺寸的 Micro Bump 实现上下层“面对面”(Face-to-Face)的堆叠连接,由此实现数据和电源电信号跨层传输。在 Pseudo-3D 流程中,所选用的 Bump Cells 的物理位置需要在做实际绕线之前就固定好,并记录其坐标信息。设计者不需要手动分配规划 Bump 的位置,Integrity 3D-IC 可以自动地将 Bump 逻辑连接关系插入跨层的时序路径中,并能根据设计师提供的 Floorplan 中单元的已有位置,同时在上下两个裸片上,智能地分配和优化 Bump Cells 的物理位置,做到高效的流程,自动的实现,智能的优化。

         

03 Pseudo-3D 自动布局布线

工作准备就绪后,我们就可以利用带有 Bump Cells 信息的 Pseudo-3D Floorplan 进行自动布局布线,Integrity 3D-IC 平台可以调用各种相应的传统二维布局布线引擎,完成 Placement、CTS、Routing 以及相应的设计优化。同时,Integrity 3D-IC 也可以支持跨层的时序路径的报告分析,支持显示例化单元 Instances 和路径所在的结构层级,帮助工程师完成静态时序分析。此外,Integrity 3D-IC 还支持跨层路径的并行时序优化,确保 3D-IC 设计的时序收敛。

         

04 建立 3D-IC 数据库

最后一步,根据优化后的自动布局布线结果,建立 3D-IC 专用数据库——Hierarchical Database(HDB)。这个数据库中就包含了包括整个设计的工艺库信息,3D-IC 的堆叠信息,Bump 坐标信息,物理布局布线等设计信息等等。在通过Integrity 3D-IC 创建好用以明确 3D-IC 的堆叠对应信息的 Stacked Config 文件之后,需要将完成了布局布线的 pseudo-3D 数据库进行 Partition 拆分操作,将它按照上下裸片拆分成两个数据库,即 Top Die Database 和 Bottom Die Database。

         

将这两个完成 Partition 拆分的数据库以及 Stacked Config 文件读入 Integrity 3D-IC 中,合成创建 HDB 数据库。在 Integrity 3D-IC 平台中加载此数据库,就可以实现 3D-IC 设计的查看,包括可以实现在工具中上下两层 Floorplan 视图的切换,观察每层中的单元摆放、绕线等后端实现细节;也可以对包含三维堆叠信息的整体 3D Floorplan 视图进行直接查看;此外传统的时序调试器(Timing Debugger)也支持在 3D-IC HDB 中高亮跨层的时序路径,帮助工程师完成时序检查和设计调整,也可以进一步调用其他 Signoff 工具,完成后续签核工作。


 

存算一体和近存计算是解决 CPU / GPU / NPU 总线和大规模片上网络拥塞的有效手段。

通过 Integrity 3D-IC 特有的内存单元逻辑单元三维布局优化,芯片设计师可以更容易的实现高性能高带宽的系统设计,从而或者缩小原有系统封装面积或者进一步提高原有系统 PPA

来源:Cadence楷登
System电源电路航空汽车电子UG消费电子芯片UMCadence人工智能
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-10-02
最近编辑:11小时前
Cadence楷登
签名征集中
获赞 0粉丝 86文章 395课程 0
点赞
收藏
作者推荐

网格阶数详解:高阶网格生成

本文翻译转载于 Cadence blog主要内容什么是高阶网格为什么网格曲线化比提升阶数更重要高阶网格相比于线性网格的优势如何从线性网格创建高阶网格 图中两个涡轮叶片是一个线性混合网格(六面体,四面体等)。高阶网格的划分能够在一些关键面上在不损失网格精度的情况下降低网格数量。任何时候针对任何复杂系统进行数值模拟时,控制方程与几何模型都需要经过不同程度的离散化处理。在 CFD 模拟中,网格划分将系统几何模型离散化,创建一组被用于控制方程计算的节点。现代 CFD 的一个挑战是在模拟中如何做到求解高精度、网格高分辨率和低计算资源耗费的平衡。为了达到这一目标,很多网格生成方法的开发都意图在处理复杂几何图形的同时不增加计算复杂性。在 CFD 模拟使用的多种网格生成方法中,高阶网格是一种能够实现精度、分辨率和计算成本平衡的有效方法。高阶网格划分的目标是利用高阶多项式曲线的优势为 CFD 计算创建网格,从而实现在复杂系统环境下提供比线性网格更高的精度。高阶网格是如何生成的?就计算精度和计算复杂性而言又是如何在线性网格上叠加实现的?您可以在下文中找到答案。 网格阶数的定义高阶网格是将相邻的网格节点用大于 1 阶(线性)的多项式曲线相连。理解高阶网格最容易的方法是将其与线性网格做比较。在线性网格中,几何图形的网格单元是由一组连接网格节点的直线构成;而高阶网格则用非线性多项式函数(如二次方程)连接网格节点,所以这项技术被称作“网格曲线化”。采用网格曲线化或高阶网格生成技术的 CFD 网格生成软件通常采用二次到四次多项式。如果将相同技术用于一次多项式,则会返回到线性网格,因此网格曲线化才是一种相对广义的网格生成技术。网格曲线化有很多几何和数学上的优势,但最主要的优点还是在于计算方法。线性网格 vs. 高阶网格下图所示的系统是在叶片表面和边界层区域使用线性网格的涡轮叶片网格分布。可以看到,在越接近叶片根部边缘处,网格密度越高。这样做是为了精确的模拟叶片表面弯曲形状以及沿表面边界层的梯度变化。在线性坐标系统中,梯度越靠近表面就会越大,网格密度也会随着梯度的变大而增加。 图中示例的线性网格可以用高阶网格生成技术优化通过网格曲线化技术,我们可以生成更符合涡轮叶片表面曲度变化的网格,且无需增加网格密度。在线性网格中,高弯曲度的表面需要高密度网格才能获得所需精度。同时,由于数值算法中的运算数量会随着网格密度增加而规模性增加,所以运算时间也会更长。基于线性网格创建高阶网格高阶网格可以基于现有的线性网格通过插值法创建。回归分析被用于确定多项式模型或者等效样条模型的系数然后用插值方法给出两端点间的数据点,并将这些数据点赋予曲线网格以符合多项式模型。高阶网格生成要将类似的过程用于线性网格(不管是结构化网格还是混合网网格),以便提取与多项式曲线相关的连续点多项式曲线。让我们来看下面的图示,线性网格被用于描述有曲度变化的涡轮叶片表面。在对线性网格设定边界条件后,利用算法将线性网格的节点与多项式曲线匹配关联。CFD 工程师可以自行选择最适合模拟需求的多项式网格阶数。针对一些具有特殊多项式曲率的曲面,生成的多项式曲线网格也可以很好的符合叶片表面的曲度变化,且不需要线性网格那样高密度网格节点分布。 完成相关表面的多项式曲线定义后,可以用插值法高效生成任意密度的网格。网格的精度可以通过调整插值后的网格密度或不同的插值方法来进一步优化。下图左可见插值后高阶网格的示例。下图右可以看到一些插值法可能在生成的插值网格中产生伪影,所以选择正确的插值方法也是生成高精确曲线网格的关键。 插值后的多项式曲线网格与插值法导致伪影的线性网格Cadence Pointwise 网格生成工具可以帮助 CFD 工程师创建复杂几何模型高精度模拟所需要的高阶网格,且不会显著增加计算复杂性。来源:Cadence楷登

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈