2、收发器硬件架构:PMA层详解
好,咱们今天来聊聊收发器里最核心的硬件部分——PMA层。说白了,PMA就是负责把数字信号变成模拟信号,再送出去;或者把收到的模拟信号变回数字信号。我当年刚接触高速收发器时,总觉得这层就是个黑盒子,后来踩了不少坑才明白,这里面的门道可深了。
2.1 PMA层与PCS层的分工
收发器内部,通常分成PCS层和PMA层。PCS层处理的是数字逻辑,比如8B/10B编码、加扰、弹性缓冲这些。而PMA层,才是真正跟物理世界打交道的硬核部分。
我习惯这么理解:PCS是大脑,PMA是手脚。大脑想好怎么编码、怎么对齐,手脚负责把信号发出去、收回来。
| 层级 | 主要功能 | 工作频率 |
|---|---|---|
| PCS层 | 编码/解码、加扰/解扰、通道绑定、弹性缓冲 | 较低(FPGA逻辑时钟) |
| PMA层 | 串行化/解串、时钟恢复、模拟前端、预加重/均衡 | 极高(线速率) |
嗯,这里要注意:PCS和PMA之间的接口,通常是并行数据总线。比如在Xilinx的GTX里,PCS给PMA送的是16位或20位的并行数据,然后PMA把它串行化成高速差分信号发出去。
2.2 时钟架构:收发器的心脏
时钟,是收发器里最容易出问题的地方。我见过太多项目,因为时钟没处理好,整个链路就是不通。
2.2.1 参考时钟
参考时钟是所有时钟的源头。它通常来自板上的晶振,或者从别的芯片分频过来。我个人习惯,参考时钟的质量一定要高——抖动要小,频率要准。
参考时钟的频率,通常跟线速率有关系。比如10.3125Gbps的线速率,参考时钟可能是156.25MHz或者312.5MHz。具体怎么算?
线速率 = 参考时钟频率 × PLL倍频系数 × 串行化因子
举个例子:线速率10.3125Gbps,参考时钟156.25MHz,PLL倍频66倍,串行化因子1(不扩频),那么:156.25MHz × 66 = 10.3125GHz。你看,刚好对上。
2.2.2 CDR:时钟数据恢复
接收端没有独立的时钟,它要从收到的数据流里把时钟“挖”出来。这就是CDR干的事。
CDR的工作原理,说白了就是一个锁相环。它不停地调整自己的相位,让采样时钟正好对准数据的眼图中心。我刚开始做时,总觉得CDR是自动的,不用管。后来发现,CDR的环路带宽设置不对,会导致锁定时间太长,甚至锁不住。
2.2.3 PLL:频率合成
PLL负责把参考时钟倍频到线速率。收发器里通常有两个PLL:一个给发送用(TX PLL),一个给接收用(RX PLL)。有些高端收发器,还会有一个共享的CPLL(通道PLL)和QPLL(四通道PLL)。
你想想看,为什么需要两个PLL?因为发送和接收可能工作在完全不同的频率上。比如你的板子要同时处理10Gbps和25Gbps的信号,那就得用不同的PLL。
2.3 模拟前端:TX/RX通道
模拟前端,是信号进出收发器的最后一关。这里的设计好坏,直接决定了信号质量。
2.3.1 TX通道
TX通道的主要任务,是把串行数据变成差分信号,然后送出去。它包含以下几个关键模块:
- 预加重/去加重:补偿传输线的损耗。高频信号衰减大,预加重就是在发送时把高频分量抬一抬。
- 输出驱动器:提供足够的电流驱动差分对。通常可以调节摆幅,从几百毫伏到一两伏。
- 阻抗匹配:一般要求50欧姆单端,100欧姆差分。不匹配的话,信号会反射,眼图就坏了。
我记得有一次调试,TX眼图总是闭合的。查了半天,发现是PCB走线的阻抗是85欧姆,而收发器内部匹配是100欧姆。差了15欧姆,反射就大了。后来改了PCB叠层,问题才解决。
2.3.2 RX通道
RX通道比TX复杂得多。它要从被噪声和损耗严重劣化的信号里,把数据恢复出来。
RX通道的关键模块:
- 均衡器(CTLE/DFE):补偿信道损耗。CTLE是线性均衡,DFE是判决反馈均衡。我一般先调CTLE,把低频和高频的增益差拉平,再用DFE处理残留的码间干扰。
- 限幅放大器:把小信号放大到逻辑电平。信号经过长走线后,可能只有几十毫伏,限幅放大器能把它放大到几百毫伏。
- 采样器:在CDR恢复的时钟边沿采样数据。采样器的精度,决定了误码率。
2.4 知识体系结构图
下面这张图,是我自己总结的PMA层知识结构。你可以把它当作一个快速索引。
这张图里,我把PMA层拆成了三个部分:时钟架构、模拟前端、以及跟PCS层的接口。你调试的时候,可以按这个结构逐级排查问题。
2.5 小结
PMA层是收发器里最接近物理世界的部分。时钟架构决定了信号能不能稳定传输,模拟前端决定了信号质量好不好。我个人觉得,初学者最容易忽略的是时钟的抖动和阻抗的匹配。这两个点,你花再多时间检查都不为过。
嗯,今天就先聊到这儿。记住一句话:PMA层是收发器的基石,基础不牢,地动山摇。
可可精品资料库