2、SerDes基础原理:串行器/解串器工作原理、时钟数据恢复(CDR)、均衡技术(CTLE/DFE)、编码方式(8b/10b、64b/66b、128b/130b)
SerDes(Serializer/Deserializer,串行器/解串器)是高速有线通信的物理层核心,其本质是在发送端将并行数据转换为高速串行比特流,在接收端将串行比特流恢复为并行数据。理解SerDes的工作原理,需要从四个维度展开:串并转换的架构与时钟策略、CDR(时钟数据恢复)的相位追踪机制、CTLE/DFE(连续时间线性均衡/判决反馈均衡)对信道损伤的补偿逻辑,以及不同编码方案在DC平衡、时钟密度与编码效率之间的权衡。本章将逐一拆解这些基础原理,并结合实际工程中的参数选择与调试经验进行说明。
2.1 串行器/解串器工作原理
串行器(Serializer)的核心任务是将低速并行数据转换为高速串行比特流。以典型的PCIe Gen3为例,发送端并行数据宽度为32bit,参考时钟100MHz,经过PLL倍频后得到8GHz的串行时钟,每个UI(Unit Interval,单位间隔)为125ps。串行器内部采用移位寄存器或基于MUX(多路选择器)的树形结构,将32bit并行数据逐位输出。关键设计点在于:并行时钟域与串行时钟域之间的同步,通常通过FIFO(先入先出队列)或握手信号解决跨时钟域问题。
解串器(Deserializer)则执行相反操作。接收端首先通过CDR从数据流中恢复出采样时钟,然后利用该时钟对串行比特流进行采样,并将采样结果按位拼接为并行数据。解串器的核心挑战在于:采样时钟的相位必须对准数据眼图的中心,否则会导致误码。现代SerDes通常采用过采样或亚采样技术,配合数字相位调节器(Phase Interpolator)实现亚UI级别的相位调整。
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(伪随机二进制序列)作为测试数据,用于验证串行链路的误码率。
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的锁定过程
- 频率捕获:CDR首先将本地振荡器频率调整到接近数据速率。通常借助参考时钟(如100MHz)进行初始频率校准,确保频率误差在±1000ppm以内。
- 相位跟踪:频率锁定后,鉴相器检测数据跳变沿与本地时钟边沿的相位差,通过环路滤波器产生控制电压/数字码字,微调振荡器相位。
- 数据采样:当相位差收敛到允许范围内(通常小于0.1UI),CDR输出恢复时钟,并利用该时钟对数据眼图中心进行采样。
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算法)在训练阶段自动调整。
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/10b | 80% | 保证 | 高 | PCIe Gen1/2、USB 3.0 |
| 64b/66b | 97% | 不保证(依赖加扰) | 中 | 10G以太网、PCIe Gen3/4 |
| 128b/130b | 98.5% | 不保证(依赖加扰) | 低 | PCIe Gen5/6 |
2.4.4 编码选择的工程考量
- 带宽效率:编码效率越高,有效数据吞吐量越大,但对信道质量要求也越高。
- 时钟恢复难度:编码效率越高,跳变密度越低,CDR需要更长的锁定时间和更低的抖动。
- 控制字符支持:8b/10b支持丰富的控制字符,便于实现链路管理;64b/66b和128b/130b则依赖同步头区分控制块。
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。
实际操作步骤:
- 将PCB走线从8英寸缩短至6英寸,并优化走线阻抗匹配(从85Ω调整至100Ω差分阻抗)。
- 配置CTLE峰值增益为10dB,峰值频率为5GHz。
- 启用DFE,设置抽头数为4,并运行自适应算法进行系数训练。
- 调整发送端预加重(Pre-emphasis)参数,将高频分量增益提升3dB。
结果对比:调整后,接收端眼图高度提升至150mV,宽度为0.6UI,误码率降至1e-12以下,CDR锁定稳定。
风险与代价:缩短走线长度增加了PCB布局难度,预加重和DFE的功耗分别增加了5%和8%。复盘经验表明,高速SerDes链路设计应在原理图阶段就进行信道仿真,避免后期依赖均衡器“硬拉”性能。