第1章:高速串行链路系统概述
各位工程师朋友,咱们今天聊聊高速串行链路。说白了,就是把数据从A点高速送到B点的技术。
我在这个行业摸爬滚打十几年,从最早的PCIe Gen2做到现在的112G SerDes,见过的链路问题五花八门。但有个道理从来没变过:不懂系统,就做不好CDR。
你可能会问:为什么非要搞串行?并行不香吗?
香,但走不远。并行数据线之间有skew,频率一高就完蛋。串行传输只需要一对差分线,配合CDR恢复出时钟,就能跑几十Gbps。这就是咱们这门课要讲的核心。
1.1 系统架构长什么样?
一个典型的高速串行链路,由三部分组成:
- 发送端(TX):并转串、预加重/去加重、驱动输出
- 信道(Channel):PCB走线、过孔、连接器、线缆
- 接收端(RX):均衡器、CDR、串转并
我习惯把信道看作“滤波器”。它会吃掉高频,反射低频,还往里灌噪声。你想想看,信号经过这么一圈,早就面目全非了。
1.2 关键模块你得上心
我这里列几个你调试时经常打交道的模块:
| 模块 | 功能简述 | 常见问题 |
|---|---|---|
| Serializer(并转串) | 把并行数据变成串行比特流 | 高频时钟偏斜、数据/时钟相位不对齐 |
| Equalizer(均衡器) | 补偿信道的频率选择性衰减 | 抽头系数调不好,高频噪声放大 |
| CDR(时钟数据恢复) | 从数据流中提取时钟并重定时 | 抖动太大、锁定时间太长、失锁 |
| Deserializer(串转并) | 把恢复后的串行数据转回并行 | 字对齐丢失、位宽转换出错 |
1.3 性能指标:用数字说话
做链路设计,你手里得有把尺子。我个人最常盯着这几个指标:
- 数据速率(Data Rate):单位是Gbps。比如28Gbps NRZ,56Gbps PAM4。
- 误码率(BER):通常要求低于1e-12。低于这个值,大部分协议才认你。
- 眼图(Eye Diagram):直观反映信号质量。眼高、眼宽、抖动是三个核心参数。
- 总抖动(TJ):包含随机抖动(RJ)和确定性抖动(DJ)。CDR最关心这个。
举个例子。我调试过一款28Gbps的接收机,常温下眼图开着像张饼,闭得一塌糊涂。结果一测TJ,高达0.45UI。你想想看这什么概念?半个bit周期都被抖动吃掉了,CDR哪还能锁得住?
1.4 抖动——CDR的宿敌
这章咱们得先把“抖动”这个概念说清楚。说白了,抖动就是信号跳变沿偏离理想时刻的偏差。
抖动分两大类:
- 随机抖动(RJ):由热噪声、散粒噪声引起,服从高斯分布。无限带宽下没有界。
- 确定性抖动(DJ):有明确来源,比如码间干扰(ISI)、串扰、电源噪声、时钟耦合。
DJ里面还有细分:周期性抖动(PJ)、数据相关抖动(DDJ)、占空比失真(DCD)等等。以后几章我会一个个拆开讲。
1.5 给你的系统设计建议
咱们这门课面向的是实战。我建议你从一开始就记住这个思路:
- 先看信道:插损曲线、回损、串扰。信道不行,后边怎么调都白搭。
- 再选CDR架构:是相位插值型(PI)还是过采样型?各有利弊,后面详细说。
- 最后调均衡:不要把均衡抽头系数开太大,高频噪声会被放大。
嗯,这里要注意:很多新手一上来就调CDR的带宽参数。结果抖动没压住,锁相环倒是不稳定了。我的建议是——先保锁相环稳定,再谈抖动优化。
1.6 从系统角度看CDR
CDR不是孤立的模块。它接收来自信道的信号,还要和均衡器协同工作。举个例子:
如果均衡器过度补偿了中频,信号边缘会变得陡峭,但会引入附加的相位失真。这时候CDR的相位检测器看到的跳动,可能根本不是真正的抖动,而是均衡器带来的“伪抖动”。
这就是为什么我说:不懂系统,就做不好CDR。