1. UCIe简介与发展背景

各位好,我们开始第一课。

UCIe这个缩写,最近几年在芯片圈子里热度很高。它全称是Universal Chiplet Interconnect Express,说白了就是一套让不同芯片裸片(Die)之间高速通信的接口标准。我最早接触它是在2020年,当时还在做某个异构集成项目,被板级走线的时序折腾得够呛,那时候就想:要是能把不同工艺的Die直接封在一起,走内部短走线,该多爽。UCIe就是干这个事的。

1.1 什么叫Chiplet?为什么需要UCIe?

先聊聊背景。传统上,我们做一颗大芯片,比如CPU或GPU,都是把所有的功能模块——CPU核心、内存控制器、IO接口——都集成到一块巨大的单晶片上。你想想看,一块芯片面积越大,制造良率就越低,成本直线上升。而且不同模块对工艺的要求不一样:逻辑单元喜欢最新最贵的工艺节点,模拟IO、SerDes这类电路却不太吃先进工艺。

Chiplet(小芯片)的思路就是:把一颗大芯片拆成几个小芯片,每个小芯片用最适合它的工艺来制造,最后通过先进封装粘在一起。这样,良率高了,成本低了,设计也灵活了。

但问题是:不同厂家造出来的Chiplet,怎么保证它们能正常通信?这就需要一个统一的互连标准。2022年,UCIe联盟正式推出了UCIe 1.0标准。我个人的理解,UCIe就是Chiplet世界的“USB”,谁用它,谁就能实现芯片级的即插即用。

核心结论:UCIe定义了Chiplet之间的物理层(PHY)、链路层(Link Layer)和传输/协议层(Transaction/Protocol Layer),实现了低延迟、高带宽的Die-to-Die通信。

1.2 UCIe标准组织与生态现状

UCIe标准由UCIe Consortium(UCIe联盟)制定和推广。创始成员包括Intel、AMD、Arm、Meta、Google、Microsoft、Qualcomm、Samsung等十几家头部公司。到2025年,联盟成员已经超过100家,涵盖了从EDA工具商、芯片制造、封装测试到终端用户的完整链条。

我记得联盟成立初期,大家最关心的就是“兼容性”。各个Chiplet如果只管自己通,不跟别人通,那这个标准就没意义。幸好,UCIe从一开始就制定了严格的一致性测试规范(Compliance Test Specification),这一点我后面讲延迟测量时会反复用到。

目前市面上已经量产的支持UCIe的芯片和封装方案,主要集中在服务器CPU、AI加速器、FPGA这些领域。比如某家大厂的AI集群就用Chiplet堆叠了多个计算Die,通过UCIe互联,带宽和功耗都优于传统PCB走线方案。

1.3 UCIe的主要技术特点

我们快速过一下UCIe的几个关键参数。这些数字会在后面讲延迟模型时反复出现。

参数项 典型值(UCIe 1.x / 2.0) 说明
单通道数据速率 16~32 GT/s 未来可能更高
每Die带宽密度 28~135 GB/s/mm 取决于凸点间距和通道数
延迟(PHY + Link) 2~10 ns 纯裸片间,不含协议层
功耗效率 0.5~1.0 pJ/bit 远低于传统SerDes
凸点间距 25~55 µm 先进封装工艺决定

你看到那个延迟了吗?2到10个纳秒。我当年刚看到这个数字时,第一反应是——这不比PCB上走线快了几十倍吗?事实的确如此。UCIe的物理层用的是一个叫“基于超短距离(Ultra-Short Reach, USR)”的电路结构,信号只在封装基板或中介层上走几毫米,传输时间(Flight Time)几乎可以忽略不计。

但要注意,这2~10 ns只是一个“原始延迟”,实际系统里还要加上链路层训练、协议层封包、FEC纠错等开销。后面我们会专门花几章来拆解每一部分的延迟到底怎么测。

1.4 UCIe的结构层次

咱们看看UCIe的分层架构。把它搞清楚了,后面讲延迟拆解就方便了。

建议:先理解UCIe的分层思想,后续所有测量都围绕这些层展开。

我习惯把UCIe看作一个乐高积木:

  • 物理层(PHY):负责真正的信号传输,包括驱动器、接收器、时钟恢复、均衡器等。这是最底层的硬件。
  • 适配层(Die-to-Die Adapter):介于PHY和Link之间,负责时钟域变化、位宽转换、CRC校验。这个小层容易被忽略,但在延迟测量里很关键。
  • 链路层(Link Layer):实现协议封装、错误检测/重传、流控。延迟大头通常在这里。
  • 协议层(Protocol Layer):把CXL、PCIe或用户自定义协议映射到UCIe上。不同协议带来的延迟差异很大。

你可以看到,延迟是一个叠加的过程。从CPU发出数据,到另一个Chiplet接收完成,路径是:

CPU/Memory → Protocol Layer → Link Layer → Adapter → PHY TX → 裸片间走线 → PHY RX → Adapter → Link Layer → Protocol Layer → Target

每一跳都有延迟。我做过一个测试,光链路层的FEC处理就贡献了接近一半的端到端延迟。这个点我们后面详细讲。

1.5 为什么UCIe延迟测量如此重要?

你想想看,Chiplet间的延迟直接影响整个系统性能。对于内存访问(如CXL.mem),延迟变化10个纳秒,可能就让CPU Cache miss惩罚增加30%。对于同步计算,延迟不确定会导致死锁或流水线空泡。

精确测量延迟,是为了:

  • 验证是否符合标准:看看自己的芯片有没有达到UCIe联盟规定的延迟上限。
  • 诊断性能瓶颈:到底是PHY慢,还是协议层封包太慢?
  • 指导设计优化:比如调整FEC强度、修改链路状态机,有没有改善延迟。
千万别指望仿真结果能100%反映真实延迟。我曾经遇到一个项目,仿真延迟5.2 ns,实测8.1 ns。差距来自PHY锁相环(PLL)的锁定抖动和重传机制。所以,一定要测,而且要测对。