想象你生活在一座包罗万象的巨型城市里:住宅区、工厂、商业街全部连成一片,步行十分钟就能抵达任何岗位。这就是传统单片SoC(系统级芯片)的模式——把所有功能模块塞进同一块硅片。然而随着芯片越来越复杂,这座“巨型城市”变得过于庞大:制造良率下降、成本飙升、不同功能模块又难以用同一套工艺同时优化。于是,芯片设计师决定把城市拆成多个专业化的“卫星城”:一座算力中心、一座内存仓库、一座网络港口,各城用各自最擅长的工艺制造,再通过桥梁与高速公路连接成网。Chiplet芯粒架构,就是这个“城市群”方案。而Die-to-Die(D2D)互连,正是连接这些卫星城的大桥与高速公路——它决定了数据在芯粒之间能跑多快、等多久。桥不够宽,再强的计算芯粒也会被堵死在门口;桥延迟太大,缓存一致性的同步消息就会崩溃。因此,D2D互连是Chiplet架构中最关键的命脉瓶颈。
理解D2D互连的三大标准、协议分层与一致性实现,能帮助AI芯片从业者正确选择芯粒间互连方案,在带宽密度、功耗与延迟之间做出称职的工程权衡,是设计高性能AI硬件的必修课。
可视化演示
展示Chiplet芯粒间D2D互连的三层协议栈架构、UCIe/AIB/BoW标准对比及多芯粒互连拓扑,交互切换查看Die-to-Die互连核心机制。
本节配有交互动效(进入视口后自动加载,约 3KB)。
协议栈:D2D三层架构 物理层PHY负责信号传输含TX/RX和CDR 逻辑层提供流控重传协议层对接上层 PHY -> Adapter -> Protocol 三层分离实现互连标准化
D2D互连基础
想象你生活在一座包罗万象的巨型城市里:住宅区、工厂、商业街全部连成一片,步行十分钟就能抵达任何岗位。这就是传统单片SoC的模式。现在城市规划师决定把巨型城市拆分成多个专业化卫星城:一座算力中心、一座内存仓库、一座网络港,每座城用各自最擅长的材料和工艺建造。要让它们协同工作,你必须建造桥梁与高速公路。Die-to-Die互连,就是芯片世界里连接这些卫星城的桥梁与高速公路。
在Chiplet架构中,每个基本单元被称为"Die"(芯粒),而芯粒之间的通信通路叫作Die-to-Die互连,缩写为D2D。它直接决定了数据在芯粒之间的传输带宽和延迟。与PCB上芯片的互连不同,D2D互连发生在封装内部——距离从几毫米到几十微米,因此速度更快、功耗更低,但设计约束也更严格。先进封装技术(如2.5D硅中介层、3D堆叠、嵌入式桥接)是D2D互连得以实现的物理基础。
D2D总带宽由三个物理参数共同决定:
理解了这个“路况规划逻辑”,你就明白了所有D2D接口标准的本质——它们都是在位宽、频率和通道数之间寻找最佳平衡,同时压缩功耗与面积。接下来,我们逐一认识三大主流标准:UCIe、AIB和BoW。
- 数据位宽 D单次并行传输的数据位数,好比高速公路的车道数——一次能并排运送多少辆“货车”。
- 工作频率 f单位时间内信号翻转的次数,好比车辆的行驶速度——频率越高,每秒钟通过的数据帧越多。
- 并行通道数 L同时工作的互连通道数量,好比高架桥的平行匝道数——多条通道可以同时输送数据。
UCIe标准
如果说D2D互连是城市群的桥梁,那么UCIe就是桥梁界的“国家标准”。任何厂商只要按照这个标准造桥,就能与任何其他符合标准的卫星城无缝对接。UCIe全称Universal Chiplet Interconnect Express,由UCIe联盟于2022年发布,目标是建立一个开放、统一、面向Chiplet生态的互连规范。
UCIe定义了从物理层到协议层的完整栈:物理层负责信号的发送与接收,链路层负责可靠传输与流量控制,协议层则兼容PCIe、CXL等成熟协议。它支持两种封装方式——标准封装和先进封装,分别面向成本和性能两类场景。UCIe最大的亮点是高带宽密度和优秀的功耗效率,让不同Die可以像搭积木一样组合成高性能系统。
带宽密度是衡量D2D标准“含金量”的核心指标:
UCIe还通过降低信号摆幅、优化时钟架构来降低每比特能耗,使得它在性能密度上明显领先于传统的板级互连方案。就像国家高速公路网相比乡镇公路的通行效率碾压级优势——UCIe正在成为Chiplet时代最主流的“国家级干线”。
- 总带宽 B_total链路能够提供的总传输带宽,单位是GT/s。
- 占用面积 A互连物理层在封装中占据的面积,单位是平方毫米。
- 带宽密度 BD两者相除得到单位面积的带宽指标,是不同D2D标准之间最公平的“路况比较”。
AIB互连方案
在城市群的交通版图中,并非所有道路都要建成国家级高速。有些专用线路——比如从火车站直通钢铁厂的货运专线——虽然只服务固定两点,却因为专线专用而格外高效。Intel提出的AIB(Advanced Interface Bus)就是这样一条“专线铁路”。
AIB是一种面向Chiplet的物理层互连方案,最早在Intel的FPGA和封装集成项目中投入实践。它采用并行总线结构,直接把数百根数据线并行排列在两个Die之间。相比UCIe的串行架构,AIB的物理层极简化:不需要复杂的编解码和时钟恢复电路,信号以源同步方式传输,延迟极低。这种设计让AIB在固定拓扑场景下非常高效,例如两个已知Die之间的确定性高带宽连接。
不过,专线的代价是灵活性不足。并行总线占用的面积大,跨Die布线的拥挤度也限制了扩展。评估AIB的功耗水平可以用以下公式:
AIB就像一条“建好的铁路支线”:只要你的货运需求固定、线路两端明确,它简单可靠、效率突出;但如果你想随时扩展线路或接入新城市,它就显得力不从心。AIB的实用价值提供了另一条对照:并非所有D2D场景都需要全栈大而全,简化物理层同样能在特定条件中胜出。
- 总带宽 B_total链路的实际总带宽,单位GT/s。
- 每比特能量 e_bit传输一个比特消耗的能量,单位是皮焦耳/比特(pJ/bit),反映互连的“油耗效率”。
- 总功耗 P_power带宽与单位能耗相乘,得到互连功耗的粗略估算,用于对比不同方案的能耗成本。
BoW开放协议
如果在UCIe国家高速和AIB专线之间找一个中间选项,BoW就是那条开放共享的“省道公路”。BoW全称Bunch of Wires,源于DARPA支持的芯片互连研究项目,后来由Open Compute Project(OCP)推动开放标准化。它的设计哲学很朴素:不要强加一套包罗万象的协议,只定义一束线的基本物理规则,让各家自由适配上层。
BoW采用松耦合设计,只规定物理层的关键参数(信号电平、时序、驱动器强度等),把链路层和协议层留给使用者自行实现。这意味着两个来自不同厂商的Die,只要都遵守BoW的物理层约束,就能通过一个简单的适配层实现互连。这种“轻规范”风格,让BoW在嵌入式和异构集成场景中格外受欢迎。
BoW关注的端到端延迟由三个环节相加:
BoW就像一条允许所有车辆自由通行的省道:没有复杂的收费站和高架桥,路况简单、接入成本低,适合对延迟敏感且拓扑灵活的中小规模互连场景。它的开放协作精神,也为Chiplet生态提供了第三种值得认真考虑的技术选型。
- 发送时间 T_send数据从发送端进入链路所需的时间,取决于发送端电路的速度与数据打包方式。
- 传播时间 T_prop信号沿互连物理介质传播的耗时,通常与互连长度成正比——距离越短延迟越低。
- 接收时间 T_receive接收端完成信号采样、判断和缓冲的耗时,与接收器灵敏度和链路层处理速度相关。
协议栈分层
一座繁忙的城市群,光有桥梁和公路还不够,还需要红绿灯、车道线和交警——这就是互连中的“协议栈”。D2D互连的协议栈通常分为三层:物理层、链路层和适配层。物理层好比道路本身,决定信号怎么在介质上跑;链路层好比交通规则与信号灯,负责纠错、重传和流量控制;适配层则像货运调度中心,把上层业务的格式翻译成链路层能理解的语言。
在物理层,数据的传输涉及信号的电气特性、时钟同步和驱动器设计。在链路层,数据被打包成帧,加入校验码和流控信息,这一层高度关注可靠性——出现错误时要能发现、能重传。适配层则把PCIe、CXL等成熟协议映射到D2D链路上,让上层软件无需关心底层互连的差异。正是这种“分工协作”,保证了跨芯粒数据传输的高可靠性与高效率。
协议栈本身会引入开销,因此有效带宽一定小于物理带宽:
正如城市交通需要道路、信号灯和调度中心各司其职,D2D互连的协议栈分层让不同功能模块的芯粒能够像一个整体那样协同工作。理解这一分层,是把握UCIe、AIB、BoW之间差异的关键:它们争夺的焦点,往往就在某一层的实现策略上。
- 有效数据 D_eff用户真正需要传输的业务数据量。
- 开销数据 D_ovh为了传输而额外添加的头部帧头、校验码、填充位等非业务数据。
- 有效带宽效率 E_eff两者之比,衡量协议栈的“干货率”——开销越小、效率越高,单位物理带宽能跑出的业务数据越多。
一致性与内存共享
当多座城市共享同一个“物流仓库”时,最怕的就是各城对仓库库存的记录不一致:A城以为还有10箱货,B城却已经领走了6箱。在Chiplet中,这个仓库就是共享内存,而各城的“库存记录”就是各自的缓存。为了让所有芯粒看到的缓存内容保持一致,硬件协议必须通过D2D互连频繁交换一致性消息——这一机制被称为缓存一致性。
在单芯片场景,缓存一致性消息在片内NoC中传输,延迟不过几个纳秒;在Chiplet场景,消息必须跨越D2D互连,延迟和带宽都会成为瓶颈。常见的MESI协议或目录协议,本质上是“库存台账”的记账规则:每个缓存行处于修改、独占、共享或失效状态,而状态转换的同步消息完全依赖D2D链路传递。如果D2D延迟过高,一致性同步就会拖垮整个系统的性能。
一致性交互的总延迟可以建模为:
因此,在面向一致性和内存共享的Chiplet设计中,D2D互连的延迟往往比峰值带宽更关键。这也解释了为什么UCIe在先进封装模式下的低延迟特性如此有价值。最终的技术选型,本质上是在带宽密度、功耗和延迟三角之间寻找平衡点:AI加速器需要高带宽密度,服务器CPU需要低延迟一致性,而边缘设备则更看重功耗效率。理解了这三股张力,你就掌握了D2D互连设计的全局地图。
- 本地处理 T_local发起芯粒本地缓存和协议引擎的状态更新耗时。
- D2D往返 T_D2D一致性消息通过D2D互连发送到远端芯粒并返回的往返传输时间——这是跨芯粒新增的核心开销。
- 远端处理 T_remote接收芯粒完成缓存查询、状态更新和应答的耗时。
AI 应用场景
高性能服务器CPU的多芯粒设计
阶段:AI硬件架构设计阶段
解决的问题:传统单片CPU在先进工艺下面积越大良率越低,且IO、内存控制器、计算核难以统一工艺优化。通过D2D互连,把计算核(CCD)和IO/内存控制(IOD)拆成不同芯粒,再用高带宽低延迟的D2D链路组合,既提升良率又保持性能。
具体案例:AMD EPYC系列处理器就是典型代表。每个CCD包含最多8个Zen核心,通过D2D互连与IOD相连。内存访问和IO请求在芯粒之间穿行时,UCIe等D2D标准负责保证足够带宽和可接受延迟。在设计AI推理服务器时,这种多芯粒方案可以灵活配置计算和内存比例。
AI加速器的芯粒组合封装
阶段:AI推理/训练加速器封装设计
解决的问题:单颗AI加速器Die受光罩尺寸限制,无法无限扩展算力;同时HBM内存和计算逻辑的工艺需求不同。利用D2D互连将多个计算芯粒与内存芯粒在封装内集成,可以突破单Die规模限制,构建更高算力的AI芯片。
具体案例:大型AI加速器常把若干个计算芯粒和SRAM/HBM接口芯粒封装在同一个基板上,芯粒之间通过D2D互连交换激活值和梯度数据。设计时需要根据Transformer等模型的张量并行策略,计算芯粒间通信流量,从而选定UCIe或AIB等互连带宽。
Python 演示
class D2DInterface: """D2D interconnect model with bandwidth and power metrics""" def __init__(self, name, width_bits, freq_ghz, lanes, pj_per_bit): self.name = name self.width_bits = width_bits self.freq_ghz = freq_ghz self.lanes = lanes self.pj_per_bit = pj_per_bit def bandwidth_gts(self): """total bandwidth in GT/s: width * freq * lanes""" return self.width_bits * self.freq_ghz * self.lanes def bandwidth_density(self, area_mm2): """bandwidth per square mm""" return self.bandwidth_gts() / area_mm2 def power_w(self): """dynamic power estimate in watts""" return self.bandwidth_gts() * self.pj_per_bit * 1e-3 def main(): profiles = [ D2DInterface('UCIe', 32, 2.0, 16, 0.5), D2DInterface('AIB', 20, 1.0, 8, 1.2), D2DInterface('BoW', 32, 1.5, 12, 0.8), ] for p in profiles: bw = p.bandwidth_gts() bd = p.bandwidth_density(4.0) pw = p.power_w() print('%s: bandwidth=%.1f GT/s, density=%.1f GT/s/mm2, power=%.2f W' % (p.name, bw, bd, pw)) if __name__ == '__main__': main()
class D2DInterface:定义一个通用的D2D互连接口模型,把带宽和功耗计算封装成对象。def __init__(self, name, width_bits, freq_ghz, lanes, pj_per_bit)初始化接口参数,包括名称、位宽、频率、通道数和每比特能耗。return self.width_bits * self.freq_ghz * self.lanes用公式 B = D × f × L 计算总带宽,这正是正文中的核心公式。return self.bandwidth_gts() / area_mm2总带宽除以封装面积得到带宽密度,用于比较不同标准的空间效率。return self.bandwidth_gts() * self.pj_per_bit * 1e-3带宽乘以每比特能量再换算成瓦特,估算动态功耗。profiles = [...]构造UCIe、AIB、BoW三个候选对象的参数配置,对应三个D2D标准。for p in profiles:遍历所有候选方案,逐一计算指标。print('%s: ...' % (p.name, bw, bd, pw))格式化输出每种标准的带宽、密度和功耗,方便比较。
常见误区
误区我刚开始学Chiplet的时候,以为D2D互连就是芯片在电路板上通过导线连接,就像CPU插在主板上一样,用PCB走线把两个芯片焊在一起。
正解D2D互连发生在封装内部,距离是毫米级甚至微米级,而PCB互连的距离是厘米级。这区别就像“跨城市高速公路”和“城市内高架桥”的区别。D2D互连依赖硅中介层、嵌入式桥接或3D堆叠等先进封装技术,延迟和带宽密度都远优于板级互连,同时设计要求也完全不同。
为何常见:因为“Chiplet“和”多芯片“在字面上都暗示了”多个芯片连在一起”,初学者容易套用PCB的概念去理解,忽略了封装尺度上的本质差异。
误区设计D2D互连时,我觉得只要把带宽做上去,性能就一定提升,所以优先选位宽最宽、频率最高的方案。
正解带宽提升通常伴随功耗和面积代价。高带宽密度才是真正值得追求的目标——在相同面积下提供更高带宽才代表技术先进。过高频率还会带来信号完整性问题,如串扰和反射。正确的做法是像城市交通规划一样综合考虑带宽、功耗和延迟,而不是单一维度攀比。
为何常见:因为厂商宣传总是强调峰值带宽数字,消费者思维容易把“大带宽”和“高性能”画等号,忽略了掩藏在数字背后的功耗和成本约束。
误区UCIe是新的国标级标准,肯定在一切指标上都碾压AIB和BoW,所以选型时无脑用UCIe就好。
正解UCIe的优势在于通用性和高带宽密度,但AIB的物理层极简、延迟极低,在固定拓扑中更省功耗;BoW松耦合、易适配,适合定制化中小规模互连。好比高铁虽快,但短途通勤时共享单车反而更灵活。“最先进”不等于“最适合”,选型必须看具体场景。
为何常见:新标准宣传声量大,人容易产生“新即最好”的偏见,忽略了不同标准各有适用边界。
误区我以为缓存一致性是操作系统和编译器在软件层就能维护的事情,跟D2D互连硬件没有关系。
正解在Chiplet场景中,缓存一致性依赖硬件协议消息在芯粒之间实时传播状态变化(如MESI协议)。这些同步消息必须通过D2D互连传递,因此D2D延迟直接决定一致性协议的性能。如果互连延迟过高,频繁的状态同步会拖垮整个系统,这不是软件层面能补偿的。
为何常见:因为在单芯片时代,一致性由片内高速网络解决,程序员几乎感知不到。迁移到Chiplet后,人们默认“一致性还是老样子”,忽略了跨Die通信的物理延迟新增开销。
面试题
Q1. Die-to-Die互连主要解决什么问题?
- A.芯粒之间的数据高速传输← 正确答案
- B.提升单个芯粒的运行频率
- C.完全替代所有片内互联
- D.芯片与显示器间的连接
答案:A。D2D互连的核心作用是让封装内的多个芯粒之间高效传输数据,就像城市群之间的桥梁连接不同卫星城。B是工艺和架构优化的目标,C过于绝对(片内NoC仍有存在必要),D是显示接口的任务。
Q2. 下列哪个不属于主流的D2D互连标准?
- A.UCIe标准
- B.AIB标准
- C.BoW标准
- D.PCIe 5.0标准← 正确答案
答案:D。UCIe、AIB、BoW都是面向Chiplet的D2D互连标准,而PCIe是板级互连协议——它通常连接主板上的独立设备,好比省道和国道的区别,不属于封装内的芯粒互连标准。
Q3. UCIe标准由哪个组织主导制定?
- A.英特尔独有制定
- B.UCIe产业联盟← 正确答案
- C.国际电信联盟ITU
- D.IEEE 802.11工作组
答案:B。UCIe由UCIe联盟(Universal Chiplet Interconnect Express Consortium)制定,联合了Intel、AMD、ARM等多家公司,是一种开放标准。它不是Intel私有产物,也不是ITU或802.11系列。
Q4. D2D互连设计中,衡量性能的核心指标有哪些?
- A.带宽密度← 正确答案
- B.功耗效率← 正确答案
- C.引脚颜色美观
- D.传输延迟← 正确答案
答案:ABD。带宽密度(单位面积带宽)、功耗效率(每比特能耗)和传输延迟是D2D互连的三大核心指标,就像评估一座桥要看通行能力、维护成本和过桥时间。引脚颜色只是物理外观,不构成性能指标。
Q5. AIB互连方案是由哪家公司提出的?
- A.AMD公司
- B.Intel公司← 正确答案
- C.台积电公司
- D.ARM公司
答案:B。AIB(Advanced Interface Bus)由Intel提出,用于其FPGA和Chiplet封装产品。它采用并行总线结构,物理层简洁,适合Intel主导的固定拓扑场景。
Q6. 下列哪些因素会影响D2D互连总带宽?
- A.数据位宽大小← 正确答案
- B.工作频率高低← 正确答案
- C.通道数量多少← 正确答案
- D.芯片品牌型号
答案:ABC。根据 B = D × f × L,总带宽由位宽、频率和通道数共同决定——这好比公路的车道数、限速和匝道数量。芯片品牌不直接影响带宽,它只是这些参数的外部标签。
Q7. 相较于AIB,UCIe的主要优势是什么?
- A.完全免费且零成本
- B.带宽密度与生态兼容性更优← 正确答案
- C.支持更高的电压等级
- D.支持更长的物理距离
答案:B。UCIe面向Chiplet通用生态,协议栈完整、带宽密度高且能对接PCIe/CXL,像国家高速网;AIB像专业货运专线,带宽密度和生态扩展能力不如UCIe。UCIe并非“零成本”,也不追求高电压或长距离。
Q8. 在缓存一致性场景下,D2D互连最关键的性能要求是?
- A.更大的数据带宽
- B.更低的传输延迟← 正确答案
- C.更低的芯片价格
- D.更远的互连距离
答案:B。缓存一致性依赖频繁的小消息同步状态,延迟比峰值带宽更重要——好比你查仓库台账,来回一次如果慢,业务就卡住了。D2D往返延迟直接决定一致性协议的效率,因此低延迟是首要考量。
Q9. BoW互连的设计哲学与下列哪项最接近?
- A.严格锁定的私有协议
- B.轻量开放且松耦合适配← 正确答案
- C.强制统一物理层规范
- D.必须与Intel芯片绑定
答案:B。BoW(Bunch of Wires)强调开放协作和松耦合,只约束物理层,允许各家自由实现上层逻辑,好比一条对所有人开放的省道。它不强制统一全栈,不绑定特定厂商,也不是私有协议。
Q10. 先进封装中用于实现D2D互连的技术包括哪些?
- A.2.5D硅中介层互连← 正确答案
- B.3D垂直堆叠互连← 正确答案
- C.传统DIP插槽封装
- D.嵌入式桥接互连方案← 正确答案
答案:ABD。2.5D硅中介层、3D垂直堆叠和嵌入式桥接(如EMIB)都是实现D2D互连的主流先进封装技术。DIP插槽是老式PCB插件封装,与封装内D2D互连完全是两个时代的技术。