当前位置: 首页 > news >正文

[PCIe]Gen6的PAM4编码具体是如何实现翻倍效率的?

PCIe Gen6的PAM4编码具体是如何实现翻倍效率的

       摘要:PAM4(4‐Level Pulse Amplitude Modulation)最核心的“翻倍效率”在于:同样一个 symbol 周期内,NRZ 只传 1 bit,而 PAM4 传 2 bit。下面从物理实现到带宽收益一步步说明它是怎么做到的。


1. NRZ (2‐Level) VS. PAM4 (4‐Level)

– NRZ(非归零码)只有两种电平(记作 “0” 和 “1”),每个符号周期只能承载 1 bit 信息。
– PAM4 则使用四个电平(一般映射为 –3, –1, +1, +3 单位电压),每个符号就能区分 4 种状态 ⇒ 2 bit。

因此,在同样的符号率(symbol rate)下,PAM4 将有效比特率翻倍。


2. 符号映射(Bit→Level)

通常选用 Gray 编码以减少码间跳变带来的误码:

Bit pairGray code电平 (V)
“00”00–3
“01”01–1
“11”11+1
“10”10+3

– 发射端将原始比特流两两分组,通过 LUT(查表)或简单逻辑 → 对应电平序列。
– 接收端则用三个比较器(threshold slicer)判断落在哪个电平区间,恢复 2 bit。


3. 发射端 Tx 实现

  1. 串并转换 (Serializer)
    – 将输入比特流串行→并行,每 1 个符号周期取 2 bit。
  2. 电平映射
    – LUT 或有限状态机,把 2 bit→4 电平。
  3. DAC/模拟 driver
    – 模拟电路生成对应差分电压(–3 ~ +3),并加上 Pre-emphasis(发射端均衡)以补偿 PCB 损失。
比特流 → 串并 (2-bit) → 电平映射 → 模拟 driver → 差分输出

4. 接收端 Rx 实现

  1. 连续时限均衡 (CTLE)
    – 补偿高频损耗,恢复信号振幅。
  2. 判决反馈均衡 (DFE)
    – 抑制 ISI(码间串扰)。
  3. 多阈值切片器 (3 thresholds)
    – 将模拟电平映射回 00/01/11/10,对应 2 bit。
  4. 反映射 → 并串转换 → 后级解码
通道输入 → CTLE → DFE → 3-阈值切片 → 电平→bit → 并串 → 比特流

5. 带宽计算示例

– Gen5 (NRZ):32 GT/s × 1 bit = 32 Gb/s per lane
– Gen6 (PAM4):64 Gbaud × 2 bit = 128 Gb/s per lane (符号率也提升到 64 Gbaud)

扣除协议开销后
• 128b/130b → ≈1.54% 开销
• RS‐FEC (Type 1) → ≈16.7% 冗余

净通道带宽 ≈ 128 × (1–1.54%) × (1–16.7%) ≃ 100 Gb/s per lane,约为 Gen5 的 3×,Raw 带宽 4×。


6. 为什么要配合 FEC

PAM4 的四电平眼图更“拥挤”,噪声容限和抖动容限都比 NRZ 严苛得多。

– PCIe Gen6 强制启用 RS‐FEC:
• 在发送端对 128 symbol 分组加上冗余校验 → 纠错码字
• 接收端解码后即使原始 BER ≈10⁻⁶,也可恢复到端到端 BER ≤10⁻²⁵

FEC 的开销 (~16.7%) 是换取信号完整性和高可靠性的必要代价。


7. 在 PCIe Gen6 中的关键优化

  1. 符号率升级
    – Gen5:32 GT/s NRZ → Gen6:64 Gbaud PAM4
  2. 模拟链路设计
    – 更强 CTLE/DFE/T-coefficient,对 PCB 路径、connector 要求更高
  3. 链路训练扩展
    – 新增 PAM4/FEC 能力协商阶段(LTSSM 里 TS3'/TS4')
  4. PHY IP 升级
    – 4-level 驱动器、多阈值接收器、FEC 编/解码器一体化

8. 小结

  1. PAM4 是靠“4 电平 ⇒ 2 bit/symbol”天然翻倍比特效率。
  2. 配合符号率翻倍与 128b/130b + FEC,Gen6 Raw 带宽从 32 → 128 Gb/s,净带宽 ≈100 Gb/s。
  3. 实现上需要更复杂的模拟前端(4-level DAC/ADC、CTLE、DFE)和必选的 FEC。
  4. 对上层协议/软件透明,仍沿用 PCIe 事务层,仅在链路初始化时协商新能力。

相关文章:

  • Python Turtle实战:打造高精度图形化秒表
  • 并发执行问题 下
  • Redis-6.2.9 Sentinel 哨兵配置
  • DELETE 与 TRUNCATE、DROP 的区别
  • xPSR
  • 利用栈实现逆波兰表达式
  • day03-Vue-Element
  • 大白话 Seata 分布式事务浅析,详解TCC模式
  • 深度学习中常见的超参数对系统的影响
  • Bootstrap 5学习教程,从入门到精通,Bootstrap 5 入门简介(1)
  • 【创新实训个人博客】实现了新的前端界面
  • Office安装包2024版
  • Linux驱动之平台总线
  • 【拓扑排序】P6560 [SBCOI2020] 时光的流逝|普及+
  • 腾讯位置商业授权行政区划开发指南
  • [PCIe]Gen6 PAM4的功耗相比Gen5 NRZ增加了多少?
  • 35、请求处理-【源码分析】-自定义参数绑定原理
  • 6、修改和校正时间
  • 跨平台猫咪桌宠 BongoCat v0.4.0 绿色版
  • 【论文解读】Deformable DETR | Deformable Transformers for End-to-End Object Detection
  • 网站浏览构思/正规赚佣金的平台
  • 建筑公司网站设计思路/西安专业做网站公司
  • 个人 网站可以做导航吗/google play官网
  • 寻花问柳一家只做属于男人的网站/自己怎么搭建网站
  • 上海企业网站建设报价/seo1现在怎么看不了
  • wordpress的登录地址修改/南宁seo团队哪家好