第一章:SerDes技术概述:历史、应用与基本架构
各位工程师朋友,咱们这门课是盯着示波器和眼图干的实战课。在去抓那些让人头疼的抖动和噪声之前,我觉得有必要先把SerDes这个东西的底牌翻出来看看。你想想看,搞了这么多年高速设计,如果连SerDes为什么会出现、基本长什么样都不清楚,那后面做调试心里就没底。
1.1 什么是SerDes?为什么非要它不可?
SerDes这个词,说白了就是Serializer和Deserializer的合并。它的工作很简单:在发送端把一堆并行的低速数据,串成一路高速的差分信号扔出去;到了接收端,再把这路高速信号拆回原来的并行数据。
有人可能会问:我们以前用并行总线不也挺好?为什么非要去搞串行化?
核心矛盾:并行总线在速率上去之后,面临着严重的信号完整性问题——时钟偏斜(Skew) 和 串扰(Crosstalk)。
我记得在90年代末做并行PCI的时候,数据线才33MHz,走线等长要求还不算苛刻。后来到了DDR时代,几百兆甚至上G的速率,每根数据线都必须和DQS严格等长,布线空间需求巨大。但SerDes走的差分信号,天生就能抑制共模噪声和串扰,而且因为数据线减少,PCB布线密度大大降低。
1.2 技术的发展脉络
SerDes技术并不是一下蹦出来的。它经历了几个关键阶段,每次都是为了解决工程上的实际痛点。
| 时期 | 典型速率 | 应用场景 | 核心挑战 |
|---|---|---|---|
| 1990年代 | 几百Mbps ~ 1Gbps | 光纤通信、背板互联 | 时钟恢复(CDR)技术不成熟,抖动大 |
| 2000年代 | 1Gbps ~ 6Gbps | SATA、PCIe Gen1/2、XFI | 均衡技术(CTLE)的出现,应对信道损耗 |
| 2010年代 | 6Gbps ~ 28Gbps | PCIe Gen3/4、100G以太网 | DFE决策反馈均衡、前向纠错(FEC)的普及 |
| 2020年代及以后 | 56Gbps ~ 112Gbps+ | PCIe Gen5/6、800G以太网、Chiplet互联 | PAM4调制、先进的ADC+DSP架构 |
我的一点观察:从这张表可以看出,速率每翻一倍,信道损耗带来的码间干扰(ISI)就越严重。到了56Gbps以上的NRZ信号,很多传统FR4板材已经跑不远了。所以后面的设计,不仅要看示波器,还要看链路仿真结果。
1.3 基本架构:发端与收端
一个典型的SerDes链路,可以分为三块:发送端(TX)、传输通道(Channel)和接收端(RX)。
我习惯把发送端想象成一个"数据压紧机"。它的核心是Serializer(并串转换器),以及一个均衡器(FFE)。为什么要加均衡?很简单,数据在进信道之前,我们就预先把高频分量多打一打,用来补偿信道对高频的衰减。
接收端则是"数据复原机"。信号经过长走线、过孔、连接器,到接收端时已经严重畸变了。接收端需要做几件事:
- CTLE(连续时间线性均衡器):先做固定或自适应的线性补偿。
- DFE(判决反馈均衡器):消除前一个比特对当前比特的干扰。
- CDR(时钟数据恢复):从数据里提取出干净的时钟边沿。
- Deserializer(串并转换器):把高速串行数据转回并行。
你会发现,一个成熟的SerDes接收机其实是个小型的DSP系统。为什么这么复杂?因为信道太"脏"了。
工程经验:我曾经在一个25Gbps的项目中,只靠CTLE去拉高增益,结果把噪声也一起放大了,眼图反而闭合得更厉害。后来加了3个tap的DFE才把误码率降下来。记住,均衡是组合拳,不是单靠某一个模块就能搞定一切。
1.4 SerDes链路的核心指标
在实际调试中,我们关心的指标其实就那几个,但各自的含义不同。
| 指标 | 全称 | 理想值 | 调试方向 |
|---|---|---|---|
| BER | 误码率 | < 1e-12 | 最终的检验标准 |
| 眼图 | 眼高/眼宽 | 越大越好 | 观察均衡效果和噪声 |
| 抖动(TJ) | 总抖动 | 小于1UI的10% | 分解为随机抖动(RJ)和确定性抖动(DJ) |
| 回波损耗 | Return Loss | 全频段小于-10dB | 阻抗连续性、连接器质量 |
嗯,这里要注意一点。很多人看到眼图很"胖"就觉得没事了,其实未必。我曾经见过眼图开口很大,但误码率测试死活过不了的情况。什么原因呢?CDR锁定点的相位噪声太大,偶尔把人家的数据边沿锁错了位置——这叫"锁定错误"。所以眼图只能保证大概率能通,但最后还是要靠误码率说话。
1.5 一张图看懂SerDes链路
为了让大家对整个架构有个全局印象,我用一张图把上面讲的东西串起来。这是典型的SerDes点对点链路结构。
从图中你可以看到,信号从发送端出来,经过信道,再进入接收端,数据在里面要经历并串、预加重、线性均衡、判决反馈、时钟恢复,最后再转回并行。每一个环节都影响着最终的眼图质量和误码率。
1.6 小结:调试之前,先看清架构
做SerDes链路调试,最忌讳的就是只盯着示波器上的一个点——比如打开眼图觉得不好看,就开始盲目调均衡参数。这其实跟我们看病一个道理:你得先搞清楚病人哪个器官出问题了。
在我的调试经验里,遇到疑难问题,我通常会先问自己几个问题:
- 眼图闭合是因为信道损耗太大,还是因为电源噪声耦合到了TX的PLL?
- 误码率过不了,是随机抖动(RJ)太大,还是确定性抖动(DJ)里的码间干扰(ISI)占主导?
- 如果回波损耗在某个频点突然恶化,是不是过孔或连接器的阻抗不连续?
我的习惯:拿到一块板子,第一步先看TX输出的差分阻抗和幅度是否正常,然后再去抓通道的S参数。信道是个大问题,调好均衡之前,先把硬件层搞定。
这就是第一节课的全部内容。咱们把SerDes的来龙去脉、基本架构和核心指标都过了一遍。后面我们会一步步深入到每个模块的调试技巧里去。准备好了吗?