news 2026/8/24 15:39:30

【SI_PCIe 06】快速掌握PCIe链路均衡过程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【SI_PCIe 06】快速掌握PCIe链路均衡过程

目录

1. PCIe链路均衡简介

2. PCIe链路均衡步骤

3. PCIe Gen3(8GT/s)链路均衡时序

4. PCIe Preset值

4. PCIe的Pre-shoot技术

4.1. Pre-shoot 的工作原理(FIR 模型)

4.2. PCIe Gen3 TX FFE 3 抽头


1. PCIe链路均衡简介

PCIe链路均衡(Link Equalization,LEQ)是PCIe Gen3及以上高速版本(8GT/s及以上)在链路训练(Link Training)阶段,为补偿信道损耗(插入损耗、码间干扰)而进行的动态参数调优过程。该过程由物理层状态机(LTSSM)的“Recovery.Equalization”状态主导,通过收发端交互的TS(Training Sequence)报文完成,最终使链路达到最优的信号质量(误码率BER≤1e-12)。

PCIe链路均衡四大阶段 Phase0 ~ Phase3

阶段主导端口核心任务判定指标
Phase 0DSP 下发,USP 执行下发初始 Tx Preset,同步目标速率成功切换高速速率
Phase 1双向交互初始参数确认,均衡粗调BER<1e-4,稳定接收 TS1
Phase 2USP(上行)请求 DSP 调整 Tx 参数,优化 USP 接收BER<1e-12
Phase 3DSP(下行)请求 USP 调整 Tx 参数,优化 DSP 接收BER<1e-12,均衡完成

2. PCIe链路均衡步骤

对于PCIe而言,先基于2.5GT/s进行传输,然后由一方发送更改速度请求,从而另一方发送均衡请求,进入Recovery状态,进行均衡,最后确定PCIE的速度。其均衡的步骤总共有四步,对于Downstream Port来说有1-3阶段,对于Upstream Port来说有0-3阶段。因为第一个阶段是从DSP发送TS2 Ordered Set给USP做均衡。

PCIe链路均衡过程主要分为四个阶段(Phase 0至Phase 3),具体流程如下:

1. Phase 0:初始参数下发与同步(仅上行端口/Upstream Port专属)

  • 作用:上行端口(USP)获取下行端口(DSP)的初始均衡参数,并同步初始速率。

  • 流程:下行端口(DSP)在Recovery.Rcvrcfg状态下,通过TS2报文将初始Tx均衡参数(Preset)发送给上行端口。上行端口接收后,按初始参数发送TS1报文,并尝试将速率提升至目标速率(如8GT/s)。

2. Phase 1:初始参数确认与粗调

  • 作用:双方确认初始参数,完成基础信号同步,进行粗调。

  • 流程:双方持续交换TS1报文,上报各自的参数(如FS/LF)。当双方均能正确识别连续TS1报文(误码率BER<1e-4)时,确认初始参数有效,进入下一阶段。

3. Phase 2:上行端口主导的Tx调优(细调)

  • 作用:上行端口评估接收信号质量,请求下行端口调整Tx均衡参数(Preset或细调系数),以优化上行端口的接收信号。

  • 流程:上行端口根据接收信号质量,通过TS1报文向下行端口发送新的Tx参数请求。下行端口调整Tx参数后,上行端口重新评估,若信号质量达标(BER<1e-12),则进入下一阶段。

4. Phase 3:下行端口主导的Tx调优(细调)

  • 作用:下行端口评估接收信号质量,请求上行端口调整Tx均衡参数,以优化下行端口的接收信号。

  • 流程:角色反转,下行端口向上行端口发送Tx参数请求,上行端口调整Tx参数。下行端口重新评估,若信号质量达标(BER<1e-12),则均衡完成。

当均衡完成,信号从LTSSM状态机的Recovery.RcvrLock,Recovery.RcvrCfg,Recovery.Idel转向L0状态。

3. PCIe Gen3(8GT/s)链路均衡时序

PCI-SIG 官方标准时序:DSP 下行端口 ↔ USP 上行端口四阶段 EQ 交互流程,基于 TS1/TS2 有序集协商均衡参数。

初始:2.5GT/s(Gen1)协商,DSP 下发 TS2 传递 8GT/s 初始 Preset → 切换至 8GT/s 进入均衡

  • Phase0:DSP 发送 EQ TS2 有序集,下发 Tx 初始 Preset 预设值给 USP;链路切换 8GT/s
  • Phase1:双向持续交互 TS1 有序集(EC 字段标记均衡阶段,C 为 Preset 参数),每 32 个 TS1 插入 EIEOS,完成基础同步粗调
  • Phase2:USP 评估接收质量,通过 TS1 请求调整 DSP 发送 Preset / 系数,优化 USP 侧接收眼图
  • Phase3:DSP 评估接收质量,通过 TS1 请求调整 USP 发送 Preset / 系数,优化 DSP 侧接收眼图
  • 均衡完成:TS2+IDL 有序集交互,LTSSM 依次走完 Recovery 子状态,最终进入 L0 高速业务传输

4. PCIe Preset值

适用:PCIe Gen3 / Gen4(8GT/s 及以上)

原理:采用三抽头 FIR 前馈均衡 FFE,PCI-SIG 协议预先定义 11 套固定系数组合,在链路均衡 LEQ 流程中,通过 TS1/TS2 有序集协商选用,用于补偿信道插入损耗、改善接收端眼图质量。

FFE 三抽头组成:Preshoot(预冲)、Main(主抽头)、De-emphasis(去加重)Tx Preset P0~P10 每一组都对应一套固定的抽头权重配置

1. Gen1&Gen2固定时代

  • Gen 1: 仅提供固定的 -3.5 dB 去加重。
  • Gen 2: 引入了 -6.0 dB 选项,以应对更长的走线损耗。此时不支持动态协商,通常在 BIOS 或硬件引脚中固定设置。

2. GEN3以上动态均衡与Preset时代

从 8 GT/s 开始,固定的去加重已无法满足需求,PCIe 引入了动态链路均衡(Dynamic Link Equalization)。

Presets (P0 - P10): 规范定义了 11 种预设组合

  • Preset 0:无去加重,适用于短距离传输。

  • Preset 3:中等去加重,适用于中等距离传输。

  • Preset 7:高去加重,适用于长距离传输。

  • Preset 4: 无去加重,无preshoot(0 dB)

  • Preset 8: 典型的中等均衡(-3.5 dB 去加重,3.5 dB preshoot)

协商过程: 链路初始化时,TX 和 RX 会进行“训练”(Training),RX 会要求 TX 切换不同的 Preset,直到找到误码率(BER)最低的配置。

4. PCIe的Pre-shoot技术

核心定位:Pre-shoot(预冲 / 预激) + De-emphasis(去加重) = PCIe 发送端均衡(TX EQ)

二者都属于3-tap FIR 发送滤波器

  • Pre-shoot:Pre-cursor(前标抽头) → 跳变当前 bit做幅值增强(跳变那一刻补偿)

  • De-emphasis:Post-cursor(后标抽头) → 跳变之后连续 bit压低幅值(跳变之后补偿)

4.1. Pre-shoot 的工作原理(FIR 模型)

8.0 GT/s(PCIe Gen3)开始,TX 不再只用简单去加重 Preset,改为基于系数(Coefficient-based)的 3 抽头 FIR 前馈均衡 FFE,支持细粒度调整 Pre-shoot(c₋₁,pre-cursor)与 De-emphasis(c₊₁,post-cursor),用于链路训练阶段动态协商最优均衡参数。

  • c-1(Pre-cursor):后一个bit跳变对前一个bit的影响的加权,对应 Pre-shoot。
  • c0(Main-cursor):当前bit对自己的影响的加权,对应主信号。
  • c+1(Post-cursor):前一个bit跳变对后一个bit的影响的加权,对应 De-emphasis。

Pre-shoot 的计算公式:

在规范中,Pre-shoot 通常定义为跳变位(Transition bit)的幅值与紧邻其之前的非跳变位(Non-transition bit)幅值的比值:

Pre-shoot (dB) = 20 log10(Vc/Vb)

4.2. PCIe Gen3 TX FFE 3 抽头

4 种输出电平(差分四电平),规范约束

  1. C-1≤0,C+1≤0(零或负数)
  2. 单位条件:-C-1+C0-C+1=1

|C-1|=-C-1,|C+1|=-C+1

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 15:29:56

LX Music 桌面版:免费开源多音源播放器的完整上手指南

LX Music 桌面版&#xff1a;免费开源多音源播放器的完整上手指南 【免费下载链接】lx-music-desktop 一个基于 Electron 的音乐软件 项目地址: https://gitcode.com/GitHub_Trending/lx/lx-music-desktop LX Music 桌面版是一款基于 Electron 与 Vue 3 的免费开源桌面音…

作者头像 李华
网站建设 2026/8/24 15:27:44

HarmonyOS 实战:性能指标定义——从「主观感受」到「客观度量」的体系化建设

文章目录每日一句正能量一、前言&#xff1a;为什么需要定义性能指标二、性能指标体系全景2.1 五大维度概览三、启动性能指标3.1 指标定义3.2 阶段分解与瓶颈定位3.3 启动性能优化方向四、运行时性能指标4.1 渲染性能指标4.2 交互性能指标4.3 网络性能指标4.4 场景化阈值设计五…

作者头像 李华
网站建设 2026/8/24 15:26:57

单片机计算机毕设之基于 STM32 或 51 单片机的红外传感测距预警终端设计 基于 STM32 或 51 单片机的可配置阈值红外测距报警设备设计(020104)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机&#xff0c;Java、小程序技术领域和毕业项目实战 ✌️…

作者头像 李华
网站建设 2026/8/24 15:26:07

C语言:底层程序设计

文章目录前言本文旨在系统性地介绍C语言中底层程序设计。一、二进制和进制转换1.1、二进制转十进制&#xff08;权重法&#xff09;1.2、十进制转二进制&#xff08;短除法&#xff09;1.3、 二进制转八进制1.4、二进制转十六进制二、原码、反码、补码2.1、有符号整数2.2、无符…

作者头像 李华
网站建设 2026/8/24 15:24:10

Minecraft-Region-Fixer:一条命令完成区块数据修复的完整指南

Minecraft-Region-Fixer&#xff1a;一条命令完成区块数据修复的完整指南 【免费下载链接】Minecraft-Region-Fixer Python script to fix some of the problems of the Minecraft save files (region files, *.mca). 项目地址: https://gitcode.com/gh_mirrors/mi/Minecraft…

作者头像 李华