什么是FLIT模式?

FLIT(Flow Control Unit)是PCIe Gen6引入的全新数据传输模式,标志着PCIe架构的重大变革。与Gen5及之前的基于TLP(Transaction Layer Packet)的传输方式不同,FLIT模式采用固定长度的数据单元进行传输。

为什么引入FLIT模式?

  • PAM4信号调制:Gen6使用PAM4(4电平脉冲幅度调制)替代NRZ,需要更强的错误纠正能力
  • 降低延迟:FLIT模式支持低延迟传输,满足AI/ML等应用需求
  • 简化设计:固定长度单元简化了PHY层设计
  • 提高效率:共享流控制减少了协议开销

128B FLIT结构

PCIe Gen6定义了固定长度的128字节FLIT,每个FLIT包含数据、控制和校验信息。

FLIT格式(标准模式)

FLIT Header 2B
Payload 120B
CRC 4B
ECRC 2B

总计:128字节(2 + 120 + 4 + 2 = 128B)

FLIT Header详解

字段 位宽 说明
FLIT Type 3 bit FLIT类型:Standard、LL、Retry等
VC ID 3 bit 虚拟通道标识(VC0-VC7)
Sequence Number 6 bit 序列号,用于重传管理
Credit Update 4 bit 流控制信用更新
Reserved 2 bit 保留位

Payload结构

120字节的Payload可以包含:

  • TLP片段:一个或多个TLP的部分或全部
  • DLP(Data Link Layer Packet):数据链路层包
  • Idle字符:空闲填充

TLP在FLIT中的映射

与之前版本不同,TLP不再以完整包的形式传输,而是被分割成适合FLIT Payload的大小。多个小TLP可以打包到一个FLIT中,大TLP可以跨越多个FLIT。

FLIT模式 vs 传统TLP模式

特性 Gen1-5(传统模式) Gen6(FLIT模式)
传输单元 变长TLP(最大4096B) 固定128B FLIT
编码方式 Gen1-2: 8b/10b
Gen3-5: 128b/130b
PAM4 + FLIT模式
信号调制 NRZ(2电平) PAM4(4电平)
错误纠正 LCRC + ECRC FLIT CRC + 轻量级FEC
流控制 每VC独立信用 共享流控制
重传机制 ACK/NAK DLLP FLIT级重传
延迟 较高 更低(支持LL模式)

低延迟FLIT(LL-PCIe)

为了满足AI/ML和高性能计算对极低延迟的需求,PCIe Gen6引入了低延迟FLIT(Low-Latency FLIT,简称LL-PCIe)模式。

LL-FLIT结构

LL-FLIT Header 1B
Payload 125B
CRC 2B

总计:128字节(1 + 125 + 2 = 128B)

LL模式特点

更小Header

Header从2字节减少到1字节,增加Payload空间

简化CRC

CRC从4字节减少到2字节,降低处理延迟

专用通道

LL-FLIT使用专用VC,避免与标准FLIT竞争

更低延迟

目标延迟降低50%以上,适合AI训练推理

延迟对比

模式 典型延迟 适用场景
Gen5(128b/130b) ~100ns 通用计算
Gen6 标准FLIT ~80ns 高性能计算
Gen6 LL-FLIT ~40ns AI/ML、实时系统

共享流控制

PCIe Gen6引入了共享流控制(Shared Flow Control)机制,取代了Gen5及之前每VC独立的流控制方式。

传统流控制 vs 共享流控制

Gen1-5:每VC独立流控制

VC0: PH/PB/NPH/NPD/CplH/CplD
VC1: PH/PB/NPH/NPD/CplH/CplD
VC2: PH/PB/NPH/NPD/CplH/CplD
...
VC7: PH/PB/NPH/NPD/CplH/CplD

8个VC × 6种信用 = 48个独立计数器

Gen6:共享流控制

共享信用池
Posted Non-Posted Completion

所有VC共享信用池,简化管理

共享流控制优势

  • 简化硬件:减少信用计数器数量,降低实现复杂度
  • 提高效率:信用可以在VC间动态分配,避免某些VC信用不足
  • 降低开销:流控制更新信息包含在FLIT Header中,无需单独的DLLP
  • 更好扩展:为未来更多VC提供支持

PAM4信号调制

PCIe Gen6采用PAM4(Pulse Amplitude Modulation 4-level)信号调制技术,这是实现64 GT/s速率的关键技术。

PAM4 vs NRZ

NRZ(Non-Return-to-Zero)

1
0
  • 2个电平(0, 1)
  • 每符号1 bit
  • Gen1-5使用
  • 信噪比要求高

PAM4(4-Level Pulse Amplitude Modulation)

11
10
01
00
  • 4个电平(00, 01, 10, 11)
  • 每符号2 bits
  • Gen6使用
  • 相同波特率下双倍数据率

PAM4挑战与解决方案

挑战 影响 解决方案
信噪比降低 4个电平间距更小,易受噪声影响 轻量级FEC(前向纠错)
非线性失真 电平间转换非线性 高级均衡算法
时钟恢复 电平切换更复杂 改进的CDR电路
功耗增加 信号处理更复杂 低功耗设计优化

FLIT级重传机制

PCIe Gen6采用全新的FLIT级重传机制,取代了传统的ACK/NAK DLLP机制。

重传流程

1
发送FLIT 发送方发送带序列号的FLIT
2
接收确认 接收方验证CRC,发送ACK
3
错误检测 CRC错误或序列号不连续
4
重传请求 接收方发送Retry请求
5
FLIT重传 发送方从重传缓冲区重发FLIT

重传缓冲区

重传缓冲区管理

  • 大小:典型配置支持64-256个FLIT的重传
  • 组织:循环缓冲区,按序列号索引
  • 释放:收到ACK后释放已确认FLIT
  • 超时:未收到ACK时自动重传

应用场景

AI/ML训练

GPU之间的高速互联,需要极低延迟和高带宽

推荐模式:LL-FLIT

高性能存储

NVMe SSD阵列,需要高吞吐量和可靠性

推荐模式:标准FLIT

数据中心网络

SmartNIC/DPU,需要高吞吐量和低延迟

推荐模式:标准FLIT或LL-FLIT

图形工作站

多GPU渲染,需要高带宽

推荐模式:标准FLIT

总结

PCIe Gen6的FLIT模式代表了PCIe架构的重大演进,通过引入固定长度的FLIT单元、PAM4信号调制、共享流控制和低延迟模式,实现了更高的带宽(64 GT/s)、更低的延迟和更好的效率。

关键要点

  • FLIT模式是PCIe Gen6的核心创新,固定128B长度简化设计
  • PAM4调制在相同波特率下实现双倍数据传输
  • LL-FLIT模式提供极低延迟,满足AI/ML需求
  • 共享流控制简化硬件实现,提高效率
  • FLIT级重传机制替代传统ACK/NAK

参考资源