Chiplet集成设计与性能优势
当前的高性能计算(HPC)网络架构主要依赖于高端交换机,但这些高端交换机的成本和能耗都非常高。例如,具有64个400G端口的InfiniBand交换机售价超过4万美元,端口间延迟可达200ns,功耗高达1.7kW。此外,即使交换机具备高总带宽,单条物理链路的带宽也限制了两端设备之间的通信能力。近年来,随着高速线缆和封装技术的进步,计算芯片的片上网络和输入/输出吞吐量显著提升。
例如,NVIDIA的H100芯片拥有36条100G链路,总I/O带宽达到3.6Tb/s;特斯拉的Dojo D1芯片则配备576条112G SerDes,总I/O带宽高达64.5Tb/s。这些高端计算芯片的外部带宽和NoC吞吐量已达到甚至超过主流交换芯片的水平。因此,许多新型互连网络开始利用芯片的本地接口和片上网络,通过直接但低阶的拓扑结构进行扩展。例如,特斯拉的Dojo超级计算机采用多个D1芯片直接互连,形成高带宽、低延迟的计算网络。然而,将晶圆级系统扩展到大规模超级计算机仍然面临许多挑战,包括以下几方面:
●现有的基于晶圆的系统均采用2D-Mesh拓扑,但由于其较大的直径,无法实现良好的可扩展性。
●晶圆外带宽与晶圆内带宽之间存在显著差距,这对层次结构和可配置性提出了更高要求。
●此外,通过高阶拓扑互连晶圆上的 2D-Mesh会引发严重的路由问题。芯片内和芯片外的路由必须联合设计和评估,而不能分开考虑。
如图1所示,基于晶圆的无交换机Dragonfly互连架构由 5 个物理层级组成:芯粒(Chiplet)、芯粒组(C-Group)、晶圆(Wafer)、晶圆组【W-Group(Cabinet)】和系统(System)。与传统的基于交换机的Dragonfly互连架构相比,芯粒相当于终端(处理器),芯粒组相当于Dragonfly 交换机(路由器),晶圆组相当于 Dragonfly 路由器组。
图1.基于晶圆级集成的互连网络架构
MLIR的设计思想支持将高阶IR逐步递降到特定目标形式,并涵盖从图形算法到低级代码生成的整个范围。除了处理循环嵌套和数据布局的高级转换这类典型的中级优化外,MLIR还可执行典型的针对后端IR的低级调度和映射决策,例如,将IR映射到专门的矢量指令、自动矢量化和软件流水线等。可以说,MLIR提供的多级抽象表示能力不但在表示能力方面提供了新的解决思路,而且以统一的设计框架提供多级抽象,以统一的标准IR和内在一致的概念表示各种形式的计算和源于各种框架的数据流图,为不同问题域的计算表示提供可共享和可重用的基础设施,并在不同层次上插入优化、转换和分析,经由各种高级优化和并行化方法递降得到高性能目标代码。
如图1(a)所示,芯粒是系统中最小的组件。每个芯粒都包含一个片上网络和n个互连接口。总I/O 端口(包括存储器及其他外围设备)可能更多,但仅关注互连接口。这些芯粒的物理接口是短距离的(例如UCIe或XSR SerDes),但具有低延迟和低功耗的优势。
芯粒通过晶圆内的平面网络聚合成芯粒组,如图1(b)所示。默认拓扑采用2D-Mesh,因为它连接距离短且易于实现。每个芯粒组由m×n个芯粒组成。如果每个芯粒的每条边上有n/4个端口,则芯粒组的总外围外部端口数为k=nm。在传统Dragonfly 拓扑中,芯粒组相当于一个交换机,其交换功能通过芯片内部和芯粒组内互连实现。所有k个短程(SR)外部接口通过转换模块转换为长程(LR)接口(例如LR SerDes和光接口),以支持更高级别的高阶互连。
如图1(c)(d)所示,每个晶圆包含a个芯粒组,每个晶圆组包含b片晶圆。在晶圆组内部,所有ab个芯粒组是全互连的,即每个芯粒组与其余a-1个芯粒组相连;不同晶圆之间,每个芯粒组与其他a(b-1)个芯粒组相连。当a=1时,整个晶圆即为一个芯粒组,因此无需晶圆内的全互连。当a﹥1时,由于布线距离的限制,逻辑上的晶圆内全互连实际上是通过晶圆外的物理连接实现的。在传统Dragonfly 拓扑中,W 组相当于包含个交换机的组。由于晶圆级集成的超高密度,一个机柜可容纳整个晶圆组,而在传统数据中心中,一个组通常需要占据数十个机柜。
当在芯粒组内部使用更高径拓扑,或当每个晶圆上有多个芯粒组时,就需要晶圆级的长距离互连。然而,由于制造的限制,传统技术如场拼接(Field Stitching)仅允许在光刻掩模范围内进行短距离布线。
先进的掩模拼接技术允许跨掩模重分布层(RDL),并且拼接边界上的布线可靠性和质量良好(电阻贡献可忽略不计)。然而,尽管拼接的RDL能够支持长距离(大于100 mm)布线,高速电信号可能无法传播这么远。因此,其他技术如晶圆上的中继器(On-wafer Repeaters)是必要的。尽管如此,无交换机的Dragonfly仍然是可行的,即使不依赖任何物理上的晶圆内长距离布线,因为C组间的互连并不需要高密度的晶圆内布线。对于一个包含9个芯粒组的晶圆(较小的芯粒组不需要晶圆级集成),仅有36条芯粒组间的晶圆级通道,这些通道可以通过标准封装和互连技术在晶圆外部实现。如图2所示,每个芯粒组都被制造为一个独立单元,并采用高密度短距离的晶圆内布线,但所有边缘IO,无论是用于晶圆内还是晶圆外的互连,都被引出到晶圆外的电/光连接器。然后,这些长距离的晶圆级逻辑链路通过背板或电缆在晶圆外部进行物理连接。
图2.晶圆级长距离连接
整个系统由g个晶圆组组成。如图2(e) 所示,所有晶圆组也是完全互连的,即每个晶圆组至少通过一条链路连接到其余g-1个晶圆组。在计算接口数量时,去除ab-1个用于晶圆组内部互连的接口后,芯粒组的最大全局端口数为:h=k-ab+1系统中的总晶圆组数量为:g=abh+1。
使用一个非常小的配置:(a,b,m,n)=(2,4,2,6)时,总芯粒数可达1K。传统 Dragonfly 网络的规模受限于交换机的端口数(radix)。然而,在无交换机 Dragonfly 架构中,交换机的功能由芯粒组内的芯粒网络实现,因此该网络的规模可以变得非常庞大。尽管如此,无交换机Dragonfly 的可扩展性仍受到两个主要因素的限制:
●晶圆的物理尺寸:芯粒组内可集成的最大芯粒数量受限于晶圆的面积(直径300mm)。在当前技术条件下,一片晶圆可容纳超过64颗服务器芯片,这一规模已相当可观。
●芯粒组内芯粒网络的性能:数据在网络中的转发方式并不像在无阻塞交换机中那样直接。因此,随着规模的增加,芯粒组内部网络可能会成为瓶颈。这主要是由于芯粒组内外(芯粒组、晶圆组及整个系统)数据流量的竞争。
如果所有物理链路的带宽均为 flit/cycle,则基于晶圆级集成的无交换机Dragonfly网络的全局饱和吞吐量(注入率)
可通过对分带宽 和拓扑结构来估算,如式6-1所示。
在传统Dragonfly网络中,全局/本地吞吐比h/t≈1/2可保持负载均衡,因为每个数据包会经过一个全局通道和两个本地通道。在无交换机Dragonfly中,当满足ab≈(2/3)k=(2/3)mn和m2≈(1/2)ab时,全局/本地吞吐比也可以调整至1/2。在这种情况下,公式中的理论全局吞吐上限达到1flit/cycle/chip,与传统 Dragonfly 相同。因此,为了同时实现全局负载均衡和高吞吐量,合理的参数配置为n=3m,ab=2m2。
在传统的基于交换机的Dragonfly 结构中,注入率受限于芯片与交换机之间的单条物理链路(1flit/cycle/chip)。然而,在无交换机 Dragonfly 结构中,芯粒组内的芯粒通过多条物理链路互连,从而可以实现更高的本地吞吐量。局部晶圆组内部饱和注入率
可由式6-2估算。
这个局部的饱和吞吐量是基于交换机的Dragonfly 吞吐量的两倍。然而,瓶颈仍可能存在,主要由于:芯粒组内部带宽竞争,即不同数据流在芯粒组网络中竞争带宽,可能导致拥塞;以及流量分布不均衡,某些区域可能承载较大的数据流量,导致局部过载。
芯粒组内部2D-Mesh结构的双向对分带宽
可由式6-3计算。
这个双向对分带宽仅为k端口无阻塞交换机带宽(k flits/cycle)的 一半。因此,芯粒组内的互连流量将与芯粒组间流量竞争2D-mesh 提供的带宽,从而可能导致瓶颈。在极端流量条件下,为了防止芯粒组内部网络成为瓶颈,需要增加芯粒组内链路带宽,或采用更高带宽的拓扑结构(如HexaMesh)。由于晶圆级集成(Wafer-scale Integration)的高密度特点,提高芯粒组内部带宽相对容易且成本可控。
Dragonfly网络的直径由一个全局跳步和两个本地跳步组成。因此,在最坏情况下,无交换机Dragonfly中的数据包需要经过四个芯粒组:源芯粒组、目的芯粒组,以及两个中间芯粒组。每个基于2D-Mesh的芯粒组 具有直径2(m-1)
个芯粒间跳数。与此同时,每个芯粒组间跳需要额外两个短距-长距接口转换跳步。因此,基于晶圆的无交换机Dragonfly 的直径(仅计算芯片外跳步数)可表示为式6-4:
其中,Hg为全局跳步,Hl为本地跳步,Hsr为晶圆内短距离跳步或接口转换跳。传统的基于交换机的Dragonfly直径为:
其中
表示从终端(处理器)到交换机的跳数,其典型代价与本地跳步Hl相似。这些跳数的大致开销在表1中进行了对比分析。
表1.不同类型网络跳步对比
忽略协议层,仅考虑物理层,短程跳步的延迟主要来自物理接口。当传输距离超过100mm时,必须引入前向纠错(Forward Error Correction,FEC),这会显著增加延迟,通常高达数十纳秒。当传输距离超过10m时,必须进行电-光转换,此时光纤中的飞行时间(Time-of-Flight,ToF)延迟已不可忽略。例如,10m光纤链路的延迟可高达200ns,约为晶圆内短程链路延迟的40倍。除了延迟之外,长距离跳步的能耗也远高于晶圆内跳步。在传统Dragonfly网络中,每个数据包必须经过两个本地跳步;然而,在基于晶圆级集成的无交换机Dragonfly网络中,短程跳步的数量并不总是很高,从而可以降低延迟和能耗。
基于晶圆级集成的无交换机网络避免了使用昂贵的高阶交换机,从而显著降低了整体成本,包括交换机本身以及相关的电力/冷却基础设施。借助晶圆级集成,基板和PCB也被消除,同时提供了经济高效的高带宽互连。每平方毫米的硅晶圆成本低于1美元,可提供超过800GB/s的晶圆内带宽,这比传统的机架间I/O和电缆要便宜得多。此外,晶圆级集成还提高了密度,从而减少了整个系统的物理尺寸。一个机柜可以容纳64个刀片,每个刀片包含2个节点,因此假设机架顶部(ToR)有8个交换机,Slingshot系统总共需要2180个机柜。保守估计表明,通过晶圆级集成,每个机柜的密度至少可以提高4倍。因此,基于晶圆级集成的无交换机Dragonfly仅需要545个机柜(每个机柜8个晶圆)即可容纳一个与最大Slingshot相当的系统。如果Slingshot在数据中心按E×E规模部署,则机柜间链路的总电缆长度可以通过机柜间的距离估算为154KE。相比之下,无交换机Dragonfly的本地电缆非常短(仅机柜内部),总电缆长度仅为73KE,不到传统Dragonfly的一半。此外,所有终端适配器和电缆也被完全消除。总而言之,晶圆级集成和无交换机架构带来的优势是全面的,节省了大量构建数据中心的成本。
-End-
以上内容节选自《高性能集成电路SoC设计 ——片上网络和Chiplet关键技术》作者:李伟 冯寅潇 陈欣民 李东声 徐鹏
推荐阅读:
▊《高性能集成电路SoC设计 ——片上网络和Chiplet关键技术》
李伟 冯寅潇 陈欣民 李东声 徐鹏
系统解析后摩尔时代集成电路,特别是高性能SoC芯片架构设计的核心方法与技术路径。从高性能SoC设计的关键技术基础出发,深入探讨片上网络(NoC)的性能分析、拓扑结构、路由算法、死锁规避机制等,以及小芯片(Chiplet)的异构集成、先进封装、互连模式与接口协议;进一步探讨了NoC的接口协议、关键构件设计和安全与可靠性设计;结合Intel、AMD、ARM、NVIDIA 等商用高性能 SoC 芯片,深入分析了其片上网络和小芯片的方案特点和架构“哲学”;最后展望了互连技术的融合与发展,探讨了技术演进趋势、融合挑战、新应用驱动与未来技术展望。通过构建“架构-系统-设计”的完整知识体系,为高性能集成电路设计提供理论支撑和实践启发。
撰 稿 人:计旭
责任编辑:张淑谦
审 核 人:曹新宇
462