4、高速SerDes架构:PCS与PMA分层、发送端与接收端功能模块、时钟数据恢复(CDR)原理
高速SerDes(Serializer/Deserializer)是光通信设备中实现高速串行数据传输的核心物理层引擎。无论是100G/400G数据中心互联,还是5G前传/中传网络,SerDes的性能直接决定了链路能否在噪声、串扰和抖动干扰下稳定工作。理解SerDes的架构,不能只停留在“并转串、串转并”的粗浅认知上,必须深入到PCS(物理编码子层)与PMA(物理介质附着子层)的分工协作,以及接收端CDR(时钟数据恢复)这一“心脏”模块的工作原理。本章将系统拆解SerDes的分层架构、收发通路功能模块,并重点剖析CDR的环路机制与工程实现要点。
上图展示了SerDes内部的核心分层与信号流向。发送端从PCS子层开始,完成数据编码与加扰,随后进入PMA子层进行并串转换与预加重处理,最终由TX Driver驱动差分信号进入通道。接收端则通过前端放大器接收信号,经PMA子层的均衡器补偿信道损耗后,由CDR模块恢复时钟并对数据重定时,最后送入PCS子层完成解码与对齐。整个链路中,PCS负责“协议与格式”,PMA负责“模拟与高速”,而CDR则是连接两者的关键桥梁。
4.1 PCS与PMA分层:职责划分与协同机制
核心原理:分层解耦与标准化接口
在IEEE 802.3协议体系下,SerDes被清晰地划分为PCS和PMA两个子层。PCS(Physical Coding Sublayer)主要处理数字域的逻辑功能,包括数据加扰/解扰、块编码(如64B/66B、128B/130B)、对齐标记插入、以及可选的FEC(前向纠错)编码。PMA(Physical Medium Attachment)则负责模拟域的高速信号处理,包括并行数据与串行数据之间的转换(Serializer/Deserializer)、时钟生成与恢复、发送驱动器的阻抗匹配与预加重、接收端的线性均衡(CTLE)和判决反馈均衡(DFE)。
这种分层设计的核心价值在于解耦。PCS不需要关心信号在铜缆或光纤上的具体物理特性,只需按照标准格式生成数据流;PMA也不需要理解数据包的业务含义,只需保证比特级的传输完整性。两者之间通过标准的PMA服务接口(如XGMII、XLGMII)连接,使得不同厂商的PCS和PMA可以灵活组合。
判断方法:如何区分PCS与PMA故障
当链路出现误码或不通时,快速定位是PCS还是PMA问题至关重要。可以通过以下步骤进行判断:
- 检查信号眼图:使用示波器在TP2(接收端测试点)观察眼图。若眼图严重闭合、噪声大,则问题大概率在PMA的模拟通道(包括PCB走线、连接器、光模块的TIA等)。
- 查看PCS状态寄存器:读取PCS的误码计数器和同步状态机。若PCS能够实现块同步但误码率居高不下,说明PMA已经提供了可用的比特流,但信噪比不足。
- 环回测试:在PMA侧做模拟环回(将TX输出直接连接到RX输入),若环回后PCS同步正常且无误码,则说明PCS逻辑正确,故障在外部通道或光模块。
案例拆解:100G光模块的PCS/PMA协同调优
某数据中心使用100G QSFP28光模块,链路出现偶发误码(误码率约1E-9)。初步定位发现PCS层同步正常,但FEC纠错前误码率偏高。进一步分析发现,PMA接收端的DFE自适应算法在高温下收敛不稳定,导致高频损耗补偿不足。工程师通过调整PCS的加扰种子(Scrambler Seed),改变了数据流的频谱分布,降低了连续长0或长1序列对DFE的冲击,同时优化了PMA的CTLE增益档位。调整后,FEC纠错前误码率降至1E-12以下,链路裕量显著提升。
常见误区与复盘
- 误区一:认为PCS只是简单的编码解码,忽略了加扰对EMI和CDR性能的影响。实际上,加扰可以避免数据流中出现过长的连续相同符号,有助于CDR提取时钟。
- 误区二:将PMA的均衡参数视为“设置一次即可”。实际上,随着温度漂移和器件老化,最优均衡参数会变化,应启用自适应均衡或定期校准。
- 复盘:在高速链路设计中,PCS与PMA的交互参数(如FEC码字边界与PMA对齐标记的配合)需要仔细核对,否则可能出现“PCS看到的是好数据,但FEC无法纠错”的怪象。
4.2 发送端功能模块:从并行数据到高速串行信号
核心原理:发送链路的信号调理
发送端(TX)的核心任务是将PCS传来的并行数据(如64位宽)转换为高速串行比特流,并确保信号能够以足够的质量传输到对端。其功能模块主要包括:并串转换器(Serializer)、发送均衡器(TX EQ)和驱动器(Driver)。
并串转换器通常由移位寄存器和多路选择器构成,在高速时钟(如25.78125GHz)的控制下,将低速并行数据逐位输出。发送均衡器用于补偿信道(PCB走线、连接器、光模块)的低通特性。常见的TX EQ包括去加重(De-emphasis)和预加重(Pre-emphasis),其原理是在信号跳变沿增加幅度,而在连续比特期间降低幅度,从而抵消信道对高频分量的衰减。
| 模块 | 功能 | 关键参数 | 设计考量 |
|---|---|---|---|
| Serializer | 并行数据转串行 | 速率、位宽、时钟抖动 | 避免亚稳态,保证建立/保持时间 |
| TX EQ | 高频补偿 | 去加重dB值、抽头系数 | 根据信道长度和损耗特性调整 |
| Driver | 输出差分信号 | 摆幅Vpp、输出阻抗、上升/下降时间 | 阻抗匹配(100Ω差分),控制EMI |
操作流程:配置发送端参数
- 确定链路目标:根据PCB走线长度、连接器损耗、光模块带宽确定需要补偿的高频增益。
- 设置TX EQ:通过寄存器配置去加重系数。通常从0dB开始,逐步增加,观察对端接收眼图。
- 调整输出摆幅:在满足协议规范(如IEEE 802.3规定的一定摆幅范围)的前提下,适当增加摆幅可提高信噪比,但会增加功耗和EMI。
- 验证眼图模板:使用示波器在TP1(发送端测试点)测量眼图,确保眼高、眼宽、抖动满足模板要求。
案例拆解:发送端预加重优化
一款400G DR4光模块在客户系统上出现误码,客户反馈其PCB走线长达15英寸且经过两个连接器。初始配置TX去加重为0dB,接收端眼图完全闭合。工程师将去加重逐步提升至4.5dB,并配合输出摆幅从0.6Vpp提升至0.8Vpp。重新测试后,接收端眼图张开度提升了40%,误码率从1E-6降至1E-12以下。但代价是功耗增加了约0.5W,且EMI辐射略有上升。最终通过调整驱动器的压摆率(Slew Rate)控制EMI,满足了系统要求。
常见误区与总结
- 误区:认为TX EQ越大越好。过大的去加重会导致信号在低频段幅度过小,降低接收端灵敏度。
- 误区:忽略发送端时钟抖动。Serializer的时钟抖动会直接叠加到输出信号上,即使EQ设置完美,过大的抖动也会导致误码。
- 总结:发送端设计是一个“权衡”过程,需要在摆幅、均衡、功耗、EMI之间找到最佳平衡点。
4.3 接收端功能模块:信号恢复与均衡
核心原理:接收端的“逆过程”
接收端(RX)的挑战远大于发送端,因为信号经过信道后已严重劣化。接收端功能模块包括:前端放大器(TIA/LA)、连续时间线性均衡器(CTLE)、判决反馈均衡器(DFE)以及CDR。前端放大器将微弱的电流或电压信号放大到后续电路可处理的范围。CTLE提供高频增益提升,补偿信道损耗。DFE则利用过去的判决结果来消除当前符号的码间干扰(ISI),尤其擅长处理长尾拖尾的反射信号。
DFE的工作原理是:对每个接收到的符号,根据前N个符号的判决值,生成一个反馈电压,从当前输入中减去该电压,从而消除后光标(Post-cursor)干扰。DFE的抽头数量决定了其消除ISI的能力,通常5-10个抽头即可覆盖大多数信道场景。
判断方法:接收端均衡效果评估
评估接收端均衡是否到位,最直接的方法是观察CDR恢复后的数据眼图。若眼图清晰、张开度大,说明均衡有效。此外,可以通过读取接收端的误码率(BER)和DFE抽头系数来判断。若DFE抽头系数过大,说明信道损伤严重,可能需要优化发送端EQ或改善PCB设计。
案例拆解:DFE自适应收敛问题
某25G SFP28光模块在高温老化测试中出现误码率飙升。排查发现,DFE自适应算法在温度超过70℃时无法收敛,导致均衡失效。分析原因是前端放大器的增益随温度漂移,超出了DFE的补偿范围。解决方案是增加温度补偿电路,实时监测温度并调整CTLE的增益,同时将DFE的收敛步长减小,提高稳定性。改进后,模块在85℃下仍能保持1E-15的误码率。
常见误区与复盘
- 误区:只关注CTLE和DFE,忽略了前端放大器的线性度。若前端饱和,均衡器无法修复非线性失真。
- 误区:认为DFE抽头越多越好。抽头过多会增加功耗和噪声,且可能导致自适应算法不稳定。
- 复盘:接收端设计必须从系统角度出发,发送端EQ和接收端EQ需要协同优化,不能各自为政。
4.4 时钟数据恢复(CDR)原理与工程实现
核心原理:从数据中提取时钟
CDR是接收端最核心的模块,其功能是从接收到的数据流中提取时钟信号,并用该时钟对数据重新采样,以最佳时刻判决数据。由于高速串行信号没有独立的时钟线,CDR必须依赖数据本身的跳变沿来恢复时钟。CDR的基本架构包括:鉴相器(PD)、环路滤波器(LF)和压控振荡器(VCO),构成一个典型的锁相环(PLL)。
鉴相器比较数据跳变沿与本地VCO时钟的相位差,输出误差信号。环路滤波器对误差信号进行积分和比例运算,控制VCO的频率和相位。当环路锁定时,VCO时钟的上升沿恰好对准数据位的中心,此时采样判决的误码率最低。CDR的关键性能指标包括:抖动容忍度(Jitter Tolerance)、抖动传递(Jitter Transfer)和锁定时间(Lock Time)。
操作流程:CDR调试步骤
- 检查锁定状态:确认CDR的锁定指示信号(Lock Detect)为高电平。
- 观察恢复时钟:使用示波器测量恢复时钟的抖动,若抖动过大,检查环路带宽设置。
- 调整环路带宽:环路带宽越窄,对输入抖动的滤除能力越强,但锁定时间越长,且对低频抖动跟踪能力差。通常需要根据上游参考时钟的精度和下游对抖动的容忍度来折中。
- 验证抖动容忍度:使用误码仪注入正弦抖动,测试CDR在何种抖动幅度下仍能保持无误码。
案例拆解:CDR失锁导致链路中断
某运营商城域网中,一台设备在业务高峰时段出现间歇性丢包。排查发现,上游设备发送的数据流中出现了长达200个连续相同的比特(由于某种特殊业务模式导致)。该设备的CDR因长时间无跳变而失锁,恢复时钟频率漂移,导致采样错误。解决方案是:1)在PCS层强制插入对齐标记(Alignment Marker),保证每16384个比特内至少有一次跳变;2)优化CDR的失锁检测机制,增加“飞行中”的参考时钟切换功能。改造后,链路再未出现此类问题。
常见误区与总结
- 误区:认为CDR只是简单的PLL,忽略了数据相关抖动(Data-Dependent Jitter)对CDR的影响。实际上,数据模式不同,CDR的采样点会偏移。
- 误区:在测试CDR时,使用理想时钟源作为参考,而忽略了实际系统中上游时钟的漂移。
- 总结:CDR设计需要综合考虑环路带宽、抖动特性、数据模式、温度漂移等多方面因素。在系统级测试中,必须使用符合真实场景的抖动模型来验证CDR的鲁棒性。