2、SerDes基础架构:发送端(Tx)链路组成、PMA与PCS分层、多速率兼容的总体挑战

高速SerDes(Serializer/Deserializer)是当代数据中心、通信基站、AI加速卡及汽车电子系统中不可或缺的物理层传输核心。要深入理解Tx驱动器的多速率兼容设计,首先必须厘清SerDes的整体架构。本章将聚焦发送端(Tx)的完整信号链路,剖析PMA(物理介质附加子层)与PCS(物理编码子层)的功能边界,并系统梳理多速率兼容设计所面临的工程挑战。理解这些基础,是后续进行驱动器电路设计、阻抗匹配优化和均衡补偿的前提。

SerDes发送端(Tx)链路架构与多速率挑战 PCS 层(数字逻辑域) 应用接口 (AXI/并行总线) 加扰/编码 (64B/66B, 8B/10B) 对齐标记 (AM/COM) 速率适配 (弹性FIFO) 并行数据总线 (N位宽) 并行数据 PMA 层(模拟/混合信号域) 并串转换器 (Serializer) Tx均衡器 (FFE/CTLE) 时钟生成 (PLL/CML) 驱动器核心 (Driver) 阻抗/电压/电流控制逻辑 差分信号 外部物理通道 PCB走线 / 连接器 线缆 / 光模块 (信道损耗/串扰/反射) 控制接口 (MDIO/I2C/APB) 速率配置 / 均衡系数 / 使能 状态监测 温度 / 电压 / 眼图信息 多速率兼容的三大核心挑战 1. 时钟/数据路径重构 分频器/多相时钟切换 FIFO深度与位宽调整 2. 模拟前端参数切换 驱动摆幅/阻抗/去加重 带宽与功耗的折中 3. 协议/标准适配 PCIe/SATA/USB/以太网 编码方式与训练序列

上图展示了SerDes发送端从PCS层到PMA层直至外部物理通道的完整信号流向。PCS层负责数据编码、加扰和对齐等数字域处理,而PMA层则承担并串转换、时钟生成和模拟驱动等关键任务。多速率兼容的挑战横跨这两个子层,并直接与外部信道的物理特性耦合。下面我们将分层展开,深入探讨每个模块的职责与设计要点。

2.1 PCS层:数字逻辑域的数据整形与速率适配

PCS(Physical Coding Sublayer)位于MAC层与PMA层之间,其主要职责是完成数据的编码、加扰、对齐和速率匹配,确保数据在物理介质上传输的可靠性。PCS层完全工作在数字时钟域,其设计复杂度与所支持的协议标准密切相关。

核心原理:编码与加扰的必要性

PCS层最核心的功能之一是线路编码。例如,在万兆以太网中采用64B/66B编码,在PCIe中采用128B/130B编码,而在传统的千兆以太网或USB 3.0中则使用8B/10B编码。这些编码机制的目的在于:

  • DC平衡:保证传输码流中“0”和“1”的数量大致相等,避免信号在交流耦合电容上产生直流漂移。
  • 时钟恢复:确保有足够的跳变沿,便于接收端CDR(时钟数据恢复)电路提取时钟。
  • 错误检测:通过编码规则的不一致,可以快速发现传输错误。

加扰(Scrambling)则是为了将数据频谱打散,避免出现长串的连续相同比特,从而减少信号的能量集中,降低EMI(电磁干扰)并改善CDR的抖动容限。

判断方法:如何确定PCS的位宽与FIFO深度

PCS层与PMA层之间的并行数据总线位宽,直接决定了PMA层并串转换器的设计难度。位宽越大,PMA层的工作时钟频率越低,但PCS层的逻辑延迟和布线资源消耗也越大。设计时需遵循以下判断流程:

  1. 确定最高线速率:例如,若最高支持25.78125 Gbps(25G以太网),且采用64B/66B编码,则PCS有效数据位宽通常为64位。
  2. 计算PMA并行时钟:并行时钟 = 线速率 / 位宽。对于25.78125 Gbps和64位宽,并行时钟约为 402.8 MHz。
  3. 评估FIFO深度:由于PCS时钟与PMA时钟可能来自不同的PLL,存在频率偏差(ppm级),因此需要弹性FIFO来吸收时钟漂移。FIFO深度通常取8~16个字,以平衡延迟和缓冲能力。
实战场景:在FPGA中实现多速率SerDes时,PCS层往往使用IP核(如Xilinx GTY或Intel E-Tile)。工程师需要根据线速率配置IP核的“TX_DATA_WIDTH”参数。例如,当从10.3125 Gbps切换到25.78125 Gbps时,数据位宽可能从32位变为64位,此时必须同步修改PCS逻辑中的FIFO读写指针逻辑和时钟分频配置,否则会出现数据错位。

常见误区:忽略PCS的延迟补偿

在多通道SerDes设计中,不同通道的PCS处理延迟可能不同。如果PCS层没有做延迟对齐(Deskew),接收端将无法正确恢复多通道并行数据。此外,PCS层的加扰多项式切换(如从PRBS31切换到PRBS23)必须与对端设备严格同步,否则链路训练将失败。

2.2 PMA层:模拟混合信号域的驱动核心

PMA(Physical Medium Attachment)层是连接数字逻辑与模拟世界的桥梁。对于发送端而言,PMA层包含并串转换器(Serializer)、时钟生成器(PLL)、发送均衡器(FFE)和最终的驱动器(Driver)。这一层是高速设计的重灾区,也是多速率兼容挑战最集中的区域。

核心原理:Tx驱动器的基本架构

现代高速SerDes的Tx驱动器普遍采用电流模式逻辑(CML)结构。其基本原理是:通过控制差分对管的开关状态,将恒定电流源导向输出端或终端电阻,从而产生差分输出电压摆幅。驱动器的关键参数包括:

  • 输出摆幅(Vod):通常为 400mV ~ 1000mV 峰峰值差分,需根据协议标准(如PCIe Gen4为800mV,而10GBASE-KR为典型值)进行调节。
  • 输出阻抗(Zout):必须与传输线特征阻抗(通常为100Ω差分)匹配,以减小反射。驱动器内部通过可调电阻阵列实现阻抗校准。
  • 去加重/均衡(FFE):通过调整主抽头(Cursor)与后游标(Post-cursor)的权重,补偿信道的高频损耗。

操作流程:多速率下PMA的配置步骤

当系统需要从一种速率切换到另一种速率时,PMA层的配置必须遵循严格的时序,否则可能导致驱动器损坏或信号质量恶化。典型操作流程如下:

  1. 停止数据流:先将PCS层输出置为电气空闲(Electrical Idle),并关闭驱动器的输出使能。
  2. 重新锁定PLL:通过MDIO或I2C接口修改PLL的分频比,等待PLL的Lock信号有效。此过程通常需要几百微秒。
  3. 更新驱动器参数:根据新速率对应的协议要求,写入新的输出摆幅、去加重系数和阻抗校准值。
  4. 重新校准阻抗:启动片内阻抗校准引擎,通过比较外部精密电阻(如精度1%的10kΩ电阻)来调整驱动器的阻抗。
  5. 恢复数据流:在确认所有参数稳定后,重新使能输出并恢复数据发送。
风险提示:在切换速率时,如果先更新了驱动器参数而未等待PLL锁定,可能会导致时钟频率错误,进而使驱动器输出端出现异常占空比信号,长时间工作可能因功耗过大而烧毁末级驱动管。务必遵循“先时钟、后数据、再驱动”的切换顺序。

案例拆解:25G与10G速率切换的实测问题

在某数据中心交换板的调试中,工程师发现当SerDes从25Gbps降速至10.3125Gbps时,接收端出现大量CRC错误。初步分析认为PCS配置无误,但眼图测试显示发送端信号摆幅异常增大,且上升沿出现过冲。

分析过程:通过读取PMA寄存器,发现驱动器的摆幅控制字仍停留在25Gbps的配置值。由于10Gbps信道的插损较小,过大的摆幅导致接收端线性放大器饱和,产生非线性失真。

解决步骤:

  • 在软件驱动中增加速率切换回调函数,确保在切换速率后强制写入新的摆幅控制字。
  • 将阻抗校准引擎的触发条件从“上电复位”改为“速率切换完成中断”。
  • 在测试中增加对PMA寄存器状态的回读校验,确保配置生效。

结果对比:修正后,10Gbps链路的误码率从1E-6降低至1E-15以下,眼图余量增加了15%。

2.3 多速率兼容的总体挑战与设计策略

多速率兼容并非简单的参数切换,而是涉及架构设计、时钟规划、功耗管理和协议适配的系统性工程。下表总结了不同速率等级下的主要设计挑战与应对策略。

速率等级 典型协议 主要挑战 应对策略
低速 (1-3 Gbps) SGMII, SATA Gen1 功耗优化,摆幅精度 采用可编程电流源,支持低功耗模式
中速 (5-8 Gbps) PCIe Gen2, USB 3.0 阻抗匹配,信号完整性 片内阻抗校准,可调去加重
高速 (10-28 Gbps) 10G/25G 以太网, PCIe Gen4 信道损耗,时钟抖动 高精度FFE,低噪声PLL,DSP辅助均衡
超高速 (56-112 Gbps) 400G/800G 以太网, PCIe Gen6 PAM4调制,非线性补偿 混合信号Tx,基于查找表的预失真

核心原理:架构层面的“软件定义物理层”

为了实现宽范围速率兼容,现代SerDes IP普遍采用“软件定义物理层”的理念。即通过固件或驱动配置寄存器,动态改变PCS和PMA的工作模式。这要求硬件设计具备以下能力:

  • 可配置的时钟树:PLL必须支持宽范围的分频比,且VCO(压控振荡器)的频率覆盖范围要足够宽。
  • 模块化的模拟前端:驱动器的末级可以拆分为多个子单元,通过使能不同数量的子单元来改变驱动能力。
  • 自适应校准引擎:包括阻抗校准、偏置校准和温度补偿,确保在不同速率下均能保持最优的电气特性。

判断方法:评估多速率方案的优劣

在项目选型时,评估一个SerDes IP的多速率能力,可以从以下三个维度进行量化打分:

  1. 切换时间:从速率A切换到速率B,PLL锁定时间 + 参数更新时间是否满足系统要求(通常要求小于100ms)。
  2. 功耗缩放:在低速模式下,模拟前端是否能够关闭部分偏置电流,实现功耗随速率线性下降。
  3. 协议灵活性:是否支持PCIe的L0s/L1省电状态,是否支持以太网的EEE(节能以太网)功能。
经验提醒:不要仅仅依赖芯片手册上的“支持速率范围”参数。务必在样片阶段进行全温区(-40°C ~ 85°C)和全电压范围(±5%)的速率切换压力测试。很多多速率问题只在极端条件下暴露,例如低温下PLL锁定时间变长,或高温下驱动器的去加重系数失效。

常见误区与总结复盘

在多速率SerDes设计中,工程师常犯的错误包括:

  • 误区一:认为PCS层是纯数字逻辑,无需关注时序收敛。实际上,PCS层跨时钟域处理不当会导致亚稳态,进而产生偶发性的数据错误。
  • 误区二:在PMA层设计中,为了追求极致的速率而牺牲了低速率下的性能。例如,过大的驱动管尺寸在低速时会产生过冲。
  • 误区三:忽略外部信道对多速率的影响。一个在10Gbps下调试好的背板,在25Gbps下可能完全无法工作,因为信道的趋肤效应损耗和介质损耗随频率急剧增加。

总结复盘:成功的多速率Tx设计,必须从系统层面进行权衡。在PCS层,要保证数据通路的灵活性和鲁棒性;在PMA层,要确保模拟电路的线性度和可配置性;在系统层面,则需要一套完善的状态机和固件算法来管理速率切换的复杂时序。只有将这三者紧密结合,才能打造出真正满足多样化应用需求的高速SerDes发送端。