在进行retrain时,当state转变为retrain时,想要变到active状态,需要state_req先变成nop(最少一个cycle),之后再发起active的请求
第一章
1.0 引言
UCie支持多种协议(PCIe、CXL等),这些协议的映射工作是通过Flit格式实现的
1.0版本的UCIe不支持3d封装,其标准封装(SP)为2D封装,先进封装(AP)为2.5D。需要注意的是在最新发布的UCIe3.0协议中,提供了一种UCIe 3D封装的例子,此处不做过多说明。
SP和AP的封装差异主要表现在Bump pitch(相邻凸点(bump)之间的中心距)、channel reach(信号在UCIe互连中可靠传输的最大物理距离以及误码率上,其能够支持的最大速率是一致的。
关键影响因素
Bump pitch与Channel reach的关系:更小的bump pitch可能限制channel reach,因密集布线易引入串扰;长距离需权衡密度与信号完整性。
技术实现:UCIe支持多种封装技术(如硅中介层、有机基板),不同技术对pitch和reach的优化目标不同。
应用场景示例
高性能计算:采用高密度bump pitch(如25µm)和短channel reach,实现片间高速通信。
多芯片模块:中等pitch(55µm)搭配长reach,支持跨封装扩展。
1.1 UCIe Components
UCIe是一个分层实现的协议,其具体功能层级如下:
1.1.1 Protocol Layer(协议层)
待补充
1.1.2 Adapter(适配器)
D2D Adapter负责协调协议层与物理层之间成功地进行数据传输功能。
D2D Adapter负责与远程链路伙伴进行参数协商、链路状态机管理、以及与远程链路伙伴进行电源管理。
除此之外,Adapter还能够在传输CXL协议时,实现多个module的ARB/MUX功能(可选);以及对于误码率小于1e-27的场景,实现CRC校验码检测与重传功能(可选)
1.1.3 Physical Layer(物理层)
物理层包含下图所示的3个子部件
UCIe在物理bump上的主要数据路径按组别划分,每一组中有多个lane,每一组被称为Module。一个Module是UCIe中AFE的最小粒度单位。标准封装和高级封装中每个模块的lane数量在第4章中讲述。一个给定的协议层或D2D Adapter能够通过多个Module进行数据传输。
UCIE的物理链路由两个部分组成
Sideband:
用于参数交换,寄存器访问与和远程链路伙伴进行协调设置和管理
无论主带数据路径的传输速度如何,边带时钟信号都固定在800Mhz
UCIe物理层的边带逻辑必须使用备用电源和处于"always on"的电源域中。每个module都拥有属于自己的边带信号引脚。
对于高级封装,每个方向上的边带信号引脚都有对应冗余引脚以用于故障修复。
Mainband:UCIe的主要数据路径
每个module由一个时钟信号,一个数据有效信号和N个数据lane组成。
对于采用高级封装的场景,上述数据lane的数量N为64(或x32),同时有额外的4个用于故障修复的冗余数据lane。
对于采用标准封装的场景,上述数据lane的数量N为16(或x8),但并没有额外用于故障修复的冗余数据lane。
UCIE允许2个或4个module的配置方式。处于multi-module下的子module不能单独运行。比如下图分别展示了2个和4个module配置的实例,比如笔者的项目中的ucie为x32,即用两个x16的module拼接而成。
1.1.4 Interfaces
UCIe定义物理层与D2D Adapter之间的接口为RDI(Raw D2D Interface),定义D2D Adapter与协议层之间的接口为FDI
UCIe Retimers:(重定时器)是一种信号调理器件,主要用于解决高速信号在长距离传输或复杂信道中的衰减、抖动和噪声问题。
其核心功能包括:
信号重定时:通过恢复时钟、重新生成数据波形,消除累积的抖动(Jitter)。
均衡(Equalization):补偿高频信号在信道中的损耗(如插入损耗、串扰)。
协议透明性:不修改数据内容,仅对物理层信号进行优化,兼容上层协议(如PCIe、CXL、UCIe)。
为什么UCIe需要Retimers?
UCIe的目标是支持高性能小芯片互连(如AI加速器、CPU、GPU、内存等),其物理层基于高速串行接口(如PCIe、CXL等),带宽可达数十Gbps甚至更高。随着速率提升,信号完整性问题加剧:
信道损耗:PCB走线、封装基板或互联中介层(Interposer)会引入信号衰减。
抖动累积:长距离传输导致时序偏差(Timing Skew)和抖动叠加。
噪声干扰:多芯片系统中电磁干扰(EMI)和串扰(Crosstalk)更严重。
Retimers通过信号再生和均衡,确保数据在UCIe链路上可靠传输,支持更长的互连距离和更高的数据速率。
UCIe中Retimers的应用场景
扩展互连距离:在2.5D/3D封装或跨封装互连时,Retimers补偿中介层或基板的信号损耗。
多跳拓扑:在复杂的多芯片系统中,Retimers允许信号通过多个节点(如芯片→中介层→另一芯片)。
兼容不同工艺:当小芯片来自不同制程厂商时,Retimers可协调电气特性差异。
在UCIe(Universal Chiplet Interconnect Express)中,Retimers 主要用于物理层信号增强(如均衡、重定时),但 FEC(前向纠错)、CRC(循环冗余校验) 和 重传机制 则属于协议层的功能,与Retimers的协同工作密切相关
FEC(前向纠错)
功能:通过在数据中添加冗余纠错码,实时检测并纠正传输中的少量比特错误,无需重传。
在UCIe中的应用:
物理层与协议层的分工:UCIe的物理层(如Retimers)负责信号完整性,而FEC通常由协议层(如UCIe适配层或控制器)实现。
对Retimers的依赖:Retimers通过优化信号质量(如降低误码率),减少FEC的纠错压力。若物理层信号质量差,FEC可能需要更复杂的纠错码,导致额外延迟和功耗。
适用场景:高噪声环境或超高速率(如64 GT/s以上)链路中,FEC与Retimers结合可显著提升可靠性。
第二章 协议层
(UCIe)支持映射PCIe、CXL以及任何流式协议。
未完待续