尧图精选

56G PAM4 SerDes接收机LC-DCO设计:从架构到调试实战

🕒 发布时间:2026/11/6 7:24:34 📁 来源:尧图网络
做了几年高速SerDes接收机如果要选一个最让人又爱又恨的模块我第一个想到的一定是CDR里的LC-DCO。56G PAM4 SerDes RX的接收链路中LC-DCO是CDR环路的频率来源负责在接收端从数据里恢复出采样时钟它的相位噪声和抖动会直接反映到PAM4眼图和误码率上。这篇文章我把自己在56G PAM4 SerDes项目中做接收端LC-DCO的完整思路整理出来从架构选型、参数计算到仿真验证和现场调试尽量把原理和实操都讲清楚适合正在做高速SerDes的模拟/数字工程师也适合想搞懂PAM4接收机时钟恢复的测试与系统工程师。文章按真实项目的推进顺序来写而不是按教科书目录希望能让你少踩几个坑。1. 从RX链路看LC-DCOPAM4时代为什么离不开它1.1 56G PAM4接收机的时钟从哪来串行链路的标准形态是TX把数据调制到一对差分信号上RX在接收端把数据恢复出来。很多人第一次接触56G PAM4会觉得频率很高但实际上因为PAM4每个符号携带2bit信息56Gbps链路的波特率只有28.125Gbaud。这意味着RX里的CDR可以把采样时钟直接做在28GHz附近而不是硬着头皮去振荡56GHz。这是PAM4给模拟电路带来的一重减压也是它能做到56G速率的关键。但频率低了不代表要求松了。与NRZ相比PAM4把同样的电压摆幅分成四个电平垂直眼高只有原来NRZ的约三分之一。水平方向每个UI只有约35.6ps抖动预算全部要在这一个UI里分配。RX的CDR必须恢复出一个相位与数据平均对齐的时钟让采样点落在每个眼睛的中心。CDR环路的振荡器就是这个LC-DCO它决定了采样时钟的相位噪声、锁定能力和对输入抖动的容忍度。1.2 为什么是LC-DCO而不是环形振荡器或模拟VCO在28GHz这个频点环形振荡器理论上也能做面积小、调谐方便、起振容易。但环形振荡器的Q值实在低相位噪声一般要比LC结构差很多。对PAM4接收机这种对抖动很敏感的场景环形振荡器带来的随机抖动会直接吃掉眼图余量所以主流方案基本都是LC振荡器。LC振荡器靠电感电容谐振腔的选频作用Q值能做到十几以上给出更干净的时钟。那既然LC振荡器好为什么不用经典的模拟压控振荡器VCO这就要看CDR架构的趋势。现代高速SerDes的CDR越来越多采用数字实现数字CDR输出的控制量是天生的数字码。如果振荡器还是模拟VCO就需要在片内把数字码转成控制电压这个DAC在高精度、低噪声、小面积之间很难同时做好。LC-DCO直接把电容阵列做成开关电容阵列用数字码控制电容大小天然跟数字CDR对接。打个比方模拟VCO像模拟电位器LC-DCO像数字编码器后者更方便做自动校准和批量生产的一致性控制。振荡器方案相位噪声调谐方式与数字CDR集成典型应用环形振荡器较差电流/电压调谐需DAC低速或对抖动要求低的场景模拟LC-VCO好模拟电压调谐需DAC精度难保证传统模拟CDRLC-DCO好数字码切换电容直接对接可校准56G/112G PAM4 SerDes这个选型逻辑在56G PAM4的设计里几乎是被逼出来的波特率28GHz不是特别快但对抖动的要求又很苛刻LC-DCO正好同时满足了“低噪声”和“可数字控制”这两个核心诉求。2. LC-DCO架构拆解与关键参数计算2.1 负阻补偿与数字调谐LC-DCO的基本结构并不神秘一个电感L、一个电容阵列C、一对交叉耦合MOS管。振荡频率由f 1/(2π√(LC))决定交叉耦合管提供负阻用来抵消LC谐振腔本身的损耗。电容阵列通常由很多个开关控制的金属电容单元组成控制字越大并联进去的电容越多振荡频率越低。在实际设计里我习惯把控制字拆成粗调、中调、细调三段。粗调部分用thermometer码控制几十个电容单元覆盖最大的频率范围中调处理工艺角和电源电压波动细调负责温度和CDR环路里的微调。之所以不用纯binary加权是因为在高频下寄生电容对权重的影响很大某一个位的实际权重可能偏离理想值单调性一旦破坏数字CDR就会无所适从。thermometer码面积略大但换来了单调性和可预测性这对CDR环路稳定很重要。2.2 调谐范围和频率分辨率怎么定这里给一个可以直接参考的预算过程。以f028.125GHz为例取电感L200pH总电容大约是160fF。如果目标覆盖26.6~29.6GHz那26.6GHz对应的总电容约179fF29.6GHz约145fF有效调谐电容变化量约34fF。再看步进。假设CDR要求频率分辨率做到1MHz/LSB总范围3.5GHz就需要约3500个有效台阶。一种可行划分是粗调thermometer 64级每级约55MHz细调binary 8bit共256级每级大约0.21MHz细调刚好能盖住粗调一级的步长。对应到电容上粗调每级约0.6fF细调每级约0.0024fF这种量级的MOM电容单元在28GHz下是可以实现的。这个划分不是随手定的。细调步进决定了CDR锁定后的频率量化噪声步进太大相位误差的影响会很明显粗调步进决定了细调的覆盖范围和校准收敛速度。很多人第一次设计DCO只关注总范围不拆着算各级步进结果流片后要么校准残差太大锁不住要么细调范围盖不住粗调跳变很折腾。2.3 相位噪声指标从哪来相位噪声指标不是凭空想象出来的而是从系统抖动预算倒推。56G PAM4的UI约35.6ps整个链路总抖动预算大概在0.25UI量级约8.9ps。扣掉发射端的pattern dependent jitter、信道串扰、接收机AFE噪声和DFE残余误差真正留给CDR时钟的抖动可能不到1ps RMS。实际项目中不同协议标准给的要求不一样但设计上通常是按总指标的1/3到1/2去分配。用Leeson模型粗算一下就能摸到量级。若电感Q15振荡摆幅几毫瓦1MHz频偏处的相位噪声大概要做到-105到-110dBc/Hz折算下来rms抖动在0.3ps左右。这个数字不是精确推导但它告诉我们PAM4 RX的DCO设计目标差不多就是这么一个量级。后续PSS/PNOISE仿真就围绕这个目标去验证而不是等测试台上用示波器数抖动再来算账。2.4 功耗、面积与可靠性的折中LC-DCO的功耗主要由交叉耦合管的偏置电流决定。电流太小负阻不足电路起振慢相位噪声也会恶化电流太大热噪声和1/f噪声都会上来功耗也不可控。比较稳妥的办法是加一个幅度控制环路用幅度检测结果自动调节偏置电流让振荡摆幅维持在设定值附近同时避免过驱动。这个设计不算复杂但能帮助DCO在工艺角和温度变化下保持稳定的相位噪声表现。面积方面DCO的主要开销是电感和MOM电容。28GHz的电感可以做得比较小200pH量级的电感尺寸不过几十微米见方整体DCO包括电容阵列和驱动逻辑也就几百微米量级。但电感的下面通常要清掉dummy metal周围还要预留guard ring空间这些在floorplan初期就得定好。等所有IP拼接完了再想塞隔离环基本没有余地。2.5 电源与版图里的隐藏坑DCO对电源噪声非常敏感。数字CDR的控制字切换、电容阵列的开关动作都会在电源上产生电流毛刺这些毛刺耦合进tank就会转化为相位噪声。我的习惯做法是给DCO单独供电电源入口加RC滤波RC电阻压在几百欧姆以内电容用MIM电容做到几十pF级别。控制字从数字逻辑出来到DCO的路径上要加同步寄存器和去耦电容避免边沿太陡带来的串扰。版图里最容易出问题的是电感与周围电路的耦合。电感是开放器件磁场和电场都会外溢。旁边的任何走线、甚至大片金属dummy都可能改变它的等效电感值和Q值。我在实践中会坚持电感正下方不摆任何不相关器件电感周围一圈打满接地guard ring所有信号线和电源线从guard ring外侧绕过。这些看起来是“基本功”但返工成本极高值得在项目初期就固化到设计规范里。3. 从控制字到采样时钟把DCO放进CDR闭环3.1 上电先做频率粗校准数字CDR的环路滤波器捕获带宽通常只有几MHz而DCO在工艺角下的频偏可能有几百MHz甚至上GHz。直接闭环必失锁所以上电后的第一件事是频率校准。常规做法是用参考时钟去测DCO的分频信号计数器数出频差然后用二分法扫描粗调控制字直到残余频偏落到CDR捕获带宽内。这个校准过程不复杂但需要把参考时钟、分频器、计数器和状态机设计好还要在校准结束后把控制字冻结避免校准逻辑干扰正常CDR工作。校准还有一个容易被忽略的问题温度漂移。如果产品要求0到85度全温工作LC tank的电容和电感随温度变化会让DCO频率漂移几百MHz靠上电校准一次远远不够。比较实用的方案是加温度传感器和查找表根据温度预估频偏直接修正粗调控制字或者安排周期性离线校准让CDR短时间失锁再重锁。我的经验是温漂补偿逻辑最好在设计架构时就规划好否则等到热箱测试跑出失锁再补会受到很多限制。3.2 数字CDR的环路参数怎么和DCO匹配PAM4 SerDes接收端的CDR现在大多用数字实现相位检测器常见的是Mueller-Muller或者基于MSE的检测器。误差信号经过数字低通滤波器变成频率控制字送给DCO。环路带宽和阻尼因子由DCO增益MHz/LSB和数字滤波器系数共同决定。DCO增益这个参数值得多说几句。LC-DCO的调谐特性受PVT影响不同芯片、不同温度下KVCO可能差不少。如果数字端不管这个差异环路带宽就会漂移抖动过滤效果时好时坏。我在项目里的做法是让数字CDR在上电校准阶段顺便估算当前的KVCO然后对环路滤波器的比例项和积分项做归一化补偿。这个功能在DCO方案里几乎是标配但对传统模拟VCO就不好做这也是LC-DCO架构带来的一个实际红利。环路带宽的选择要结合协议要求。PAM4接收机一般设置在2到10MHz之间太低跟不上输入数据的相位突变太高会让数据里的pattern抖动直接泄漏到恢复时钟上。具体数值最终由协议的jitter tolerance测试曲线决定。我在设计初期会用行为级模型跑一组带宽扫描再结合前仿的DCO相位噪声曲线找一个折中点不会拍脑袋定。3.3 开环仿真、行为级闭环、真实闭环三步走单独给DCO做开环仿真远远不够因为DCO的最终价值是放进CDR闭环里工作。我习惯分三步来验证。第一步开环看DCO本身。做PSS和PNOISE仿真拿相位噪声曲线做transient仿真看起振速度、调谐单调性和全温频率范围。这个阶段所有问题都应该在仿真里解决掉比如起振余量不足、频偏超范围等。第二步行为级闭环。把DCO写成带相位噪声和量化噪声的Verilog-AMS模型接入CDR行为模型灌入PRBS13Q数据统计恢复时钟的抖动和误码率。这一步跑得非常快可以大量扫描环路参数、DCO步进、校准时序暴露出DCO步进太粗、量化噪声偏大等系统层面的问题。第三步真实co-simulation。把DCO的晶体管级网表和CDR数字RTL放到同一个仿真环境输入带有信道损耗的PAM4波形看锁定时间、稳态抖动和jitter tolerance。这一步仿真时间很慢但能发现行为模型里没有的行为比如电容阵列开关瞬间的干扰往tank耦合数字控制线的毛刺注入等。这类问题只有到了这一步或者流片测试时才会暴露花的仿真时间是值得的。3.4 测试阶段PAM4眼图计量与一致性验证流片回来后DCO相关的测试需要站在系统层面看。我一般先测恢复时钟的抖动用高带宽示波器直接看CDR恢复时钟的眼图、频谱和相位噪声。重点观察恢复时钟频谱上有没有异常的spur那往往是干扰耦合或者极限环的标志。眼图计量方面PAM4测试比NRZ要麻烦。需要配置好RX的CTLE和DFE让信号通过均衡器后再测试眼图。恢复出的眼图会形成上面、中间、下面三个小眼每个眼都要看高度、宽度和错开程度。我在测试时会强制用外部干净时钟替代DCO采样对比同一信号下的眼图差异从而判断当前问题是出在CDR时钟还是出在AFE均衡。这套方法在实验室里非常管用能最快定位瓶颈环节。4. 现场实录56G PAM4 RX的DCO调试典型坑4.1 恢复时钟上的边带spur频率牵引问题第一次流片回来我在示波器上看到恢复时钟频谱上挂着一堆边带spur间隔正好对应TX侧某个开关时钟频率。一开始怀疑电源排查半天发现是版图上DCO电感离TX的LC振荡器和开关驱动太近磁场耦合导致的相互牵引。处理方法是把TX和RX的振荡器在版图上拉开距离电感外加大面积接地guard ring同时调整数字控制字切换时序避开TX大电流翻转的瞬间。改造后边带降了十几dB。这里想提醒的是DCO的频率牵引问题在仿真阶段很难完全复现因为需要包含非常多的版图寄生和干扰源建模。排查时先用频谱仪看恢复时钟spur如果spur间隔跟其他振荡器频率或开关时钟一致基本就是耦合问题重点查版图和供电。4.2 CDR锁定后抖动偏大极限环与单调性另一个让人头疼的现象是CDR稳定锁定后恢复时钟抖动仍然偏高误码率也比预期差。用调试总线把DCO控制字和相位误差寄存器实时回读出来发现相位误差呈周期性尖峰波形间隔正好对应细调电容阵列某一位在不停翻转。这是数字CDR积分器在DCO单调性不够好的档位附近反复试探形成的极限环。处理办法分两步第一步查DCO在边界档位的单调性如果存在非单调就修正映射表第二步在环路滤波器的积分路径上增加一个小死区让误差足够小时暂停积分器更新。数字CDR的极限环问题在模拟VCO方案里很少见但在DCO方案里非常典型。设计阶段给调试总线加上读写回读功能就能在测试时快速看到这种异常省掉很多盲猜的时间。4.3 眼图闭合先别怪DCO调试RX时最容易犯的错误是一上来就怀疑CDR和DCO。PAM4信号经过长走线和连接器眼图可能完全闭合RX必须先用CTLE和DFE把眼图打开CDR才会有可用的边沿信息。很多团队调了几天DCO没效果最后发现是AFE均衡参数根本没配好。我的调试顺序是先给RX灌一个外部干净时钟把CDR旁路掉用PRBS13Q信号过均衡器用外部时钟采样看恢复后的眼图。如果这个眼图不开问题在AFE如果这个眼图开了再切回DCO闭环对比同一采样点的效果。这个流程能干净地把AFE和CDR两个环节分开省下大量交叉排障的时间。做PAM4眼图计量和一致性测试时记录“开CDR”和“关CDR”两种状态的眼图差异也是同样的思路。4.4 高温失锁与温漂补偿还有一次在热箱里跑全温测试模块到85度时频率校准没过CDR直接失锁。高温下LC tank的电容漂移加上MOS管阈值变化DCO频率比室温偏低了几百MHz超过了CDR捕获能力。解决办法是加温度补偿把校准好的频率档位和温度传感器读数做成二维查找表定时做微调。如果系统不允许周期性重校准至少要在寄存器里留一个温漂补偿控制位让固件根据温度做修正。我的体会是温漂问题在设计阶段往往被低估因为常温仿真怎么跑都正常一到热箱就露馅。建议在全温范围做DCO频率扫描仿真把漂移曲线提前拿到架构上预留好补偿接口。4.5 现场排查速查表现象可能原因排查手段解决方向恢复时钟频谱有边带spurTX/RX振荡器耦合、开关干扰频谱仪看spur间隔回读寄存器版图隔离、guard ring、调整切换时序锁定后抖动偏高、BER差DCO单调性差、数字极限环回读控制字和相位误差寄存器修正映射表、加积分死区眼图闭合AFE均衡不足或CDR时钟差外部时钟旁路CDR对比采样眼图先调CTLE/DFE再查DCO全温失锁温度漂移超过捕获范围做全温频率扫描仿真温度查表补偿或周期重校准起振慢或不起振负阻不足、偏置电流不够仿真看起振余量增大交叉耦合管尺寸或偏置电流调谐范围不足电感寄生、电容阵列范围不够实测扫描控制字看频段减小寄生电容、扩充LC阵列5. 一点个人体会做LC-DCO最大的感受是这个模块表面上是个模拟振荡器但真正决定它好不好用的是数字端的校准策略、控制字规划和调试手段。与其在流片后花几周怀疑相位噪声不如在设计阶段把DCO行为模型、闭环验证和温度补偿机制都做扎实。最后再分享一个小技巧给DCO的控制字调试总线加读回功能测试时能实时看到控制字和相位误差的变化很多诡异问题都能靠这个快速定位。56G PAM4只是起点后面112G甚至更高频率的SerDes还会继续放大这些设计细节的价值希望这些经验能帮你在自己的项目里少走几步弯路。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →