2、SerDes基础原理:串行器/解串器工作原理、时钟数据恢复(CDR)、均衡技术(CTLE/DFE)、编码方式(8b/10b、64b/66b、128b/130b)

SerDes(Serializer/Deserializer,串行器/解串器)是高速有线通信的物理层核心,其本质是在发送端将并行数据转换为高速串行比特流,在接收端将串行比特流恢复为并行数据。理解SerDes的工作原理,需要从四个维度展开:串并转换的架构与时钟策略、CDR(时钟数据恢复)的相位追踪机制、CTLE/DFE(连续时间线性均衡/判决反馈均衡)对信道损伤的补偿逻辑,以及不同编码方案在DC平衡、时钟密度与编码效率之间的权衡。本章将逐一拆解这些基础原理,并结合实际工程中的参数选择与调试经验进行说明。

SerDes 基础原理链路图 并行数据 TX: 8/16/32bit TX FIFO 弹性缓冲 Serializer 并→串 TX Driver 差分输出 信道/PCB走线 插入损耗/串扰 CTLE + DFE 模拟+数字均衡 CDR 时钟数据恢复 Deserializer 串→并 并行数据 RX: 8/16/32bit 参考时钟(同源) 编码器 8b/10b 等 解码器 10b/8b 等 ● 发送端:并行数据 → 编码 → 串行化 → 差分驱动 ● 接收端:CTLE/DFE 均衡 → CDR 恢复时钟 → 解串 → 解码 ● 编码保证 DC 平衡与足够跳变沿,CDR 依赖跳变沿恢复时钟 ● 均衡补偿信道损耗,DFE 消除 ISI(码间干扰)

2.1 串行器/解串器工作原理

串行器(Serializer)的核心任务是将低速并行数据转换为高速串行比特流。以典型的PCIe Gen3为例,发送端并行数据宽度为32bit,参考时钟100MHz,经过PLL倍频后得到8GHz的串行时钟,每个UI(Unit Interval,单位间隔)为125ps。串行器内部采用移位寄存器或基于MUX(多路选择器)的树形结构,将32bit并行数据逐位输出。关键设计点在于:并行时钟域与串行时钟域之间的同步,通常通过FIFO(先入先出队列)或握手信号解决跨时钟域问题。

解串器(Deserializer)则执行相反操作。接收端首先通过CDR从数据流中恢复出采样时钟,然后利用该时钟对串行比特流进行采样,并将采样结果按位拼接为并行数据。解串器的核心挑战在于:采样时钟的相位必须对准数据眼图的中心,否则会导致误码。现代SerDes通常采用过采样或亚采样技术,配合数字相位调节器(Phase Interpolator)实现亚UI级别的相位调整。

核心原理:串行化的本质是“以时间换空间”——用更高的速率换取更少的物理引脚。例如,32bit并行数据若以100MHz传输,需要32根数据线;而串行化后仅需一对差分线,速率提升至3.2Gbps。但代价是接收端必须处理高速信号的时序收敛、信道损耗和噪声干扰。

2.1.1 串行时钟架构

SerDes的时钟架构分为两类:源同步(Source Synchronous)和自同步(Self Synchronous)。源同步架构中,发送端同时传输数据和随路时钟,接收端直接用该时钟采样数据,适用于短距离、低速率场景(如并行总线)。自同步架构中,发送端仅传输数据,接收端通过CDR从数据流中提取时钟,适用于高速SerDes。自同步架构的优势在于避免了时钟与数据之间的偏斜(Skew)问题,但对CDR的抖动容忍度提出了更高要求。

架构类型时钟来源适用场景优缺点
源同步发送端随路时钟短距离并行总线(DDR、LVDS)实现简单,但受偏斜限制
自同步接收端CDR恢复高速串行链路(PCIe、SATA、以太网)无偏斜问题,但CDR设计复杂

2.1.2 串行器/解串器的工程要点

  • FIFO深度设计:跨时钟域传输时,FIFO深度需大于最大时钟偏差对应的数据量。例如,若并行时钟与串行时钟偏差为±200ppm,且数据块大小为4KB,则FIFO深度至少为8个数据字。
  • 位序约定:发送端与接收端必须约定MSB(最高有效位)优先还是LSB(最低有效位)优先,否则会导致数据错位。
  • 测试模式:工程调试时通常使用PRBS(伪随机二进制序列)作为测试数据,用于验证串行链路的误码率。
常见误区:初学者常认为串行器只是简单的“并转串”操作,忽略了时钟域同步和FIFO设计。实际工程中,FIFO溢出或下溢会导致数据丢失或重复,是SerDes链路最常见的故障之一。

2.2 时钟数据恢复(CDR)

CDR是SerDes接收端的核心模块,其功能是从接收到的串行数据流中提取时钟信号,并用该时钟对数据进行重定时(Retiming)。CDR的基本架构包括:鉴相器(Phase Detector)、环路滤波器(Loop Filter)和压控振荡器(VCO)或数字振荡器。根据实现方式,CDR可分为模拟CDR和数字CDR两类。

模拟CDR采用电荷泵和模拟环路滤波器,通过连续调节VCO频率来跟踪输入数据的相位。其优点是抖动性能好,但工艺迁移性差,且环路带宽难以精确控制。数字CDR则采用亚采样或过采样技术,通过数字滤波器控制相位插值器(Phase Interpolator)或数控振荡器(DCO),具有更好的可配置性和工艺可移植性,是目前主流SerDes的首选方案。

2.2.1 CDR的锁定过程

  1. 频率捕获:CDR首先将本地振荡器频率调整到接近数据速率。通常借助参考时钟(如100MHz)进行初始频率校准,确保频率误差在±1000ppm以内。
  2. 相位跟踪:频率锁定后,鉴相器检测数据跳变沿与本地时钟边沿的相位差,通过环路滤波器产生控制电压/数字码字,微调振荡器相位。
  3. 数据采样:当相位差收敛到允许范围内(通常小于0.1UI),CDR输出恢复时钟,并利用该时钟对数据眼图中心进行采样。
经验提醒:CDR的环路带宽决定了抖动跟踪能力与噪声抑制能力的折中。环路带宽越宽,跟踪输入抖动越快,但会引入更多高频噪声;带宽越窄,滤除噪声能力越强,但无法跟踪快速变化的相位。工程上通常将环路带宽设置为数据速率的1/500至1/1000。

2.2.2 CDR的抖动预算

CDR的抖动性能直接影响误码率。抖动分为随机抖动(RJ)和确定性抖动(DJ)。RJ由热噪声、散粒噪声等引起,服从高斯分布;DJ由码间干扰、串扰、电源噪声等引起,有界且与数据模式相关。CDR设计时需确保总抖动预算满足系统误码率要求(如BER < 1e-12)。

抖动类型来源特征抑制手段
随机抖动(RJ)热噪声、散粒噪声高斯分布,无界降低噪声、提高信号摆幅
确定性抖动(DJ)ISI、串扰、电源噪声有界,与数据模式相关均衡、屏蔽、去耦

2.3 均衡技术(CTLE/DFE)

高速信号在PCB走线、连接器等传输介质中会产生高频衰减,导致接收端眼图闭合。均衡技术的本质是对信道频率响应进行补偿,提升高频分量增益,从而打开眼图。SerDes接收端通常采用两级均衡:CTLE(连续时间线性均衡)和DFE(判决反馈均衡)。

CTLE是模拟线性均衡器,在信号进入采样器之前对高频分量进行放大。其频率响应通常具有一个峰值(Peaking),峰值频率和增益可通过寄存器配置。CTLE的优点是功耗低、实现简单,但会同时放大高频噪声,因此增益不宜过高。

DFE是数字非线性均衡器,其原理是利用前一个码元的判决结果来估计当前码元的ISI(码间干扰),并从输入信号中减去该估计值。DFE不会放大噪声,但存在错误传播问题——如果某个码元判决错误,会影响后续多个码元的补偿效果。

2.3.1 CTLE的配置策略

  • 低频增益:通常设置为0dB,避免放大低频噪声。
  • 峰值频率:应设置在信道损耗曲线的拐点附近。例如,对于10英寸FR4走线,峰值频率通常为数据速率的一半。
  • 峰值增益:根据信道插入损耗确定。若损耗为-10dB@5GHz,则CTLE峰值增益可设置为8-10dB。

2.3.2 DFE的抽头设计

DFE的抽头数量取决于ISI的持续时间。对于短距离PCB走线,通常1-2个抽头即可;对于长距离背板或光模块,可能需要4-8个抽头。每个抽头的系数通过自适应算法(如LMS算法)在训练阶段自动调整。

实战场景:某项目使用10Gbps SerDes连接两块板卡,PCB走线长度为12英寸。初始配置CTLE峰值增益为6dB,DFE抽头数为2,眼图高度仅为80mV,误码率为1e-6。通过调整CTLE峰值增益至9dB,并增加DFE抽头至4个,眼图高度提升至180mV,误码率降至1e-12以下。但DFE抽头增加导致功耗上升约15%,需在功耗与性能之间权衡。

2.4 编码方式(8b/10b、64b/66b、128b/130b)

编码是SerDes链路中不可或缺的环节,其核心目的包括:保证DC平衡(即数据流中0和1的数量大致相等)、提供足够的跳变沿供CDR提取时钟、实现控制字符的嵌入(用于帧同步或链路管理)。不同编码方案在效率、复杂度和时钟密度之间做出不同取舍。

2.4.1 8b/10b编码

8b/10b编码将每8bit数据映射为10bit码字,编码效率为80%。其原理是将8bit数据拆分为3bit和5bit两部分,分别映射为4bit和6bit码字,并保证每个码字中0和1的数量差不超过2。8b/10b编码提供了足够的跳变沿,且支持12个控制字符(K码),用于帧对齐、链路初始化等。典型应用包括PCIe Gen1/2、USB 3.0、千兆以太网。

2.4.2 64b/66b编码

64b/66b编码将64bit数据映射为66bit码字,编码效率提升至97%。其原理是在每64bit数据前添加2bit同步头(Sync Header),用于区分数据块和控制块。同步头为“01”表示数据块,“10”表示控制块。64b/66b编码不保证DC平衡,但通过加扰(Scrambling)技术使数据流近似随机,从而维持时钟密度。典型应用包括10G以太网、PCIe Gen3/4。

2.4.3 128b/130b编码

128b/130b编码进一步将编码效率提升至98.5%,在每128bit数据前添加2bit同步头。该编码用于PCIe Gen5/6,配合更先进的加扰算法和均衡技术,实现32Gbps甚至64Gbps的传输速率。128b/130b编码对CDR和均衡的要求更高,因为同步头占比更小,数据跳变密度更低。

编码方案编码效率DC平衡时钟密度典型应用
8b/10b80%保证高PCIe Gen1/2、USB 3.0
64b/66b97%不保证(依赖加扰)中10G以太网、PCIe Gen3/4
128b/130b98.5%不保证(依赖加扰)低PCIe Gen5/6

2.4.4 编码选择的工程考量

  • 带宽效率:编码效率越高,有效数据吞吐量越大,但对信道质量要求也越高。
  • 时钟恢复难度:编码效率越高,跳变密度越低,CDR需要更长的锁定时间和更低的抖动。
  • 控制字符支持:8b/10b支持丰富的控制字符,便于实现链路管理;64b/66b和128b/130b则依赖同步头区分控制块。
风险提示:在高速率下(如PCIe Gen5的32Gbps),128b/130b编码的跳变密度较低,若信道存在严重损耗或串扰,CDR可能无法稳定锁定。此时需配合更强的均衡(如DFE抽头数增加至8个以上)和更优的PCB设计(如使用低损耗材料Megtron6)。

2.5 案例拆解:10Gbps SerDes链路调试

某通信设备使用10Gbps SerDes连接FPGA与光模块,PCB走线长度为8英寸,板材为FR4。链路调试初期,误码率高达1e-5,眼图完全闭合。以下是完整的调试过程:

初始现象:接收端眼图高度仅为30mV,宽度为0.2UI,CDR无法稳定锁定,链路频繁失步。

关键参数采集:使用示波器测量发送端差分信号摆幅为800mV,接收端信号摆幅衰减至200mV;通过BERT(误码仪)测试,发现误码主要集中在长连“0”或长连“1”之后,表明存在严重的低频损耗和ISI。

分析判断:FR4板材在5GHz频率下插入损耗约为-8dB/inch,8英寸走线总损耗约-64dB,远超SerDes接收端的均衡能力范围。此外,长连“0”或“1”导致信号能量集中在低频,进一步加剧ISI。

实际操作步骤:

  1. 将PCB走线从8英寸缩短至6英寸,并优化走线阻抗匹配(从85Ω调整至100Ω差分阻抗)。
  2. 配置CTLE峰值增益为10dB,峰值频率为5GHz。
  3. 启用DFE,设置抽头数为4,并运行自适应算法进行系数训练。
  4. 调整发送端预加重(Pre-emphasis)参数,将高频分量增益提升3dB。

结果对比:调整后,接收端眼图高度提升至150mV,宽度为0.6UI,误码率降至1e-12以下,CDR锁定稳定。

风险与代价:缩短走线长度增加了PCB布局难度,预加重和DFE的功耗分别增加了5%和8%。复盘经验表明,高速SerDes链路设计应在原理图阶段就进行信道仿真,避免后期依赖均衡器“硬拉”性能。

总结复盘:SerDes调试的核心是“先信道、后均衡、再编码”。信道损耗是根本约束,均衡器只能补偿有限范围的损耗,编码方案则决定了系统对信道质量的敏感度。工程实践中,应优先优化PCB设计,其次调整均衡参数,最后考虑更换编码方案或降低速率。