ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

FMC+(VITA 57.4)升级实战:28Gbps信号完整性设计与测试要点

FMC+(VITA 57.4)升级实战:28Gbps信号完整性设计与测试要点 1. 为什么从VITA 57.1升级到VITA 57.4绝不只是换个插座1.1 VITA 57.1和VITA 57.4的来龙去脉先说个背景FPGA的FMCFPGA Mezzanine Card标准也就是VITA 57.1最初设计时主打并行LVDS、低速收发器那个时代FPGA的GTH/GTX速率普遍在10Gbps上下就算连接器余量再大也没有人认真考虑过28Gbps信号穿越板对板连接器这件事。后来PCIe Gen4、100G以太网、光模块QSFP28逐渐普及FPGA的高性能收发器直接推到25Gbps甚至28Gbps早期的FMC连接器在高频段的回损和串扰就开始不够看了这时候FMC应运而生。VITA 57.4是FPGA厂商和系统厂商在原有FMC基础上推出的扩展版本核心目标只有一个在维持前端模块概念的前提下把高速串行通道的速率上限干到28Gbps。它与VITA 57.1最大的区别并不是换了连接器品牌的营销噱头而是对连接器触点、引脚映射、高速差分对定义、板材要求做了系统性的重新规范。如果你们团队还停留在我把连接器换成更贵的就行的认知阶段那只能说离真正的FMC还差得很远——高速信号从寸到寸都要人伺候不是简单换个物理形态就完事了。从应用侧看升级FMC的驱动力非常实际雷达信号处理需要ADC/DAC子卡以25Gbps以上的JESD204B接口对接FPGA5G基站前传需要支持eCPRI的加速卡测试测量仪器需要高速数据采集模块与FPGA主板互连。这些都是FMC的典型场景。换句话说VITA 57.4解决的不是够不够用的问题而是下一代系统能不能做出来的问题。1.2 FMC到底加在哪里28Gbps接口带来的关键变革VITA 57.4相对VITA 57.1我按照自己的理解拆成了三个层面连接器物理层、电气规范层、和系统应用层。物理层上FMC保留了FMC尺寸的夹层卡形态但引脚密度大幅提升。FMC新增的高速引脚综合带宽能力非常夸张它把板上可用的高速串行差分对数量增加到每通道都能承载28Gbps的程度并且对每个差分对的布线区域、参考地过孔、连接器到FPGA引脚的距离都给出了更明确的约束。简单说VITA 57.4就是FMC标准的高频改款。电气规范最核心的变化是通道带宽提升至28Gbps同时定义了更高规格的回损、插损和串扰边界。相关热搜词里反复出现的28Gbps信号完整性测试正是在这套规范下产生的大量实操需求。实际做信号完整性测试时FMC接口的差分阻抗要严格做100欧姆连接器区域要处理stub、过孔背钻、焊盘优化这些都是VITA 57.1时代很多人不太关注的细节到了28Gbps全都成了生死线。系统应用层上FMC天然适配100G光模块和PCIe Gen4等高速协议因为FPGA的GTH/GTY/GTM收发器可以直接铺到FMC连接器上不用像以前那样通过中间chipset转一道。这样既省成本又降低复杂度。所以做高速采集、宽带通信、AI加速器的朋友迟早都得从FMC迁移到FMC这不是可选项而是趋势。2. 升级前的设计规划从连接器到PCB的全局考量2.1 连接器选型多pin背板连接器与高速焊针的细节差异我之前做过一个误判以为FMC连接器和FMC连接器的焊盘封装兼容结果采购回来一看——VITA 57.4的连接器虽然外观很像传统FMC HPC连接器但高速区域的地pin排列、差分对间距、屏蔽结构都有调整完全不能焊在旧的FMC封装上。这个教训让我意识到选型阶段就要严格对照VITA 57.4官方规范而不是想当然换代。选型时主要看三点触点额定频率是否覆盖28GHz、差分对内部和差分对之间的串扰指标、以及连接器的可重复插拔次数。FMC连接器目前主流的供应商方案多采用高速Differential接触件设计在相同引脚数下增加了额外的接地面补偿以保证28Gbps信号穿越连接器时不至于产生过大的模式转换。选型时建议问供应商要一份S参数模型直接放到SI仿真里跑一下通带损耗和回损比被动看datasheet靠谱得多。另外要提醒的是FMC连接器的焊针长度和形状与传统LPC/HPC有差异在过回流焊时温度曲线要求也不同。首次打样建议先做一块小板专门做焊接工艺验证检查焊点饱满度和一致性我见过太多因为焊针间距太密导致连锡的惨案FMC的细间距对这种问题更敏感。2.2 PCB层叠与布线策略差分对处理的关键要点只要跑28GbpsPCB板材的选择就没办法继续糊弄。普通FR4在这个频率下的介电损耗已经大到离谱推荐至少使用Megtron 6这类中低损耗板材如果用普通的FR4做28Gbps长走线损耗会吃掉大半信号幅度眼图基本不可能通过。我实际的参考做法是FMC区域使用松下M6或等规格板材铜箔采用RTFReverse Treated Foil铜箔因为铜箔粗糙度对趋肤效应损耗的影响在这个速率下占比很大。层叠设计上FMC高速信号要走带状线最好不要走在表层表层虽然好修线但阻焊层损耗和微带辐射都会给信号质量添麻烦。带状线层要确保相邻层是完整地平面并且尽量减少换层。关于过孔28Gbps差分过孔的stub尽量控制在10mil以内条件允许直接做背钻过孔反焊盘也要做非对称优化。我的设计习惯是高速差分对的via间距、孔径、反焊盘直径先做几组仿真对比找到一个稳定窗口后再统一应用到全部通道。另外有一个经常被忽视的坑FMC连接器区域因为引脚密度极高常常出现引脚逃逸布线无法满足差分对等长的情况。等长其实不是最关键的关键是等长补偿不能太突兀补偿区域不要集中在同一位尽量分散成几段避免产生明显的阻抗不连续点。我自己常用3-5个小的蛇形补偿段替代一个长蛇形实测下来的回损改善非常明显。2.3 电源和地高速接口最容易忽略的暗坑很多人一门心思扑在高速差分线上结果FMC接口跑起来偶尔出现误码翻车最后查了半天发现是供电不足或者电源纹波太大这种案例在我身边不止一次出现。FMC的收发器通道数量多了功耗也上来了但VITA 57.4规范里定义的电源pin却没有想象中那么多必须仔细计算每个电源域的电流需求。先做一个估算示例假设FMC子卡上有8个28Gbps收发器通道每个通道的收发器功耗约0.5W至0.8W再加上核心逻辑和辅助电路整卡的功耗可能达到20W以上。如果VITA 57.4分配的核心电源引脚总数为30个每个引脚按额定1A计算总共有30A的电流能力看似够用但考虑到接触电阻和连接器引脚本身的电压降实际可用电流要打七折。所以设计时要留足余量同时在靠近连接器引脚的地方布置足够的去耦电容位置的优先级是高速收发器电源域优先其次再考虑核心逻辑。地平面的处理我踩过不少坑。FMC连接器的地pin与FMC一样并没有把每个高速差分对都用屏蔽地围起来的物理隔离地面连续性依靠的是PCB内部的完整参考地平面。如果因为走线规划问题在连接器下方的地平面挖了槽或分割高速信号的回流路径就会被迫绕路产生巨大的环路电感直接表现为共模辐射和眼图恶化。所以通电调试前先用万用表量一下连接器地pin与板卡地之间的阻抗再用LCR表观察低电感值能排查掉一半的玄学故障。3. 手把手改造从原理图到布局的实施细节3.1 原理图改造步骤引脚定义迁移的坑从FMC到FMC最简单的办法就是直接参考VITA 57.4官方引脚定义做替换但这会引发一个隐藏问题原FMC HPC引脚定义里很多引脚是通用I/O而FMC把这些引脚重新规划成了高速串行通道直接替换会造成原板卡信号网络的错乱映射。我建议升级时先对自己现有模块的信号类型做分类梳理识别出哪些是真正的28Gbps高速信号、哪些是低速控制信号、哪些是通用I/O再做映射规划表。实际操作中我的映射步骤是从VITA 57.4规范文档中导出标准引脚表挑出高速差分对的定义。对比当前FMC板卡的现有网络名用Excel维护一张映射关系表标注旧网络、新网络和物理引脚三列。把所有高速差分对在FPGA的引脚约束文件XDC/UCF里逐一匹配确认收发器所在的bank满足FMC连接器布局要求。原理图里为每个高速串行通道建立独立原理图页并添加AC耦合电容。AC耦合电容的位置要尽量靠近连接器容量推荐0.1uF0402封装X7R介质。这里特别强调一下AC耦合电容的选型不要为了追求大容值乱来0.1uF是高速串行标准的常见选择既能稳定低频摆幅又不会引入过大的寄生电容影响高频插损。不少人在FMC设计里沿用旧习惯用0.01uF结果低频转角频率太高导致长连0或者长连1时信号严重下垂。正确做法是至少0.1uF有条件可以在靠近FPGA侧再加一个并联小电容做高频去耦。再有个细节VITA 57.4里部分高速引脚支持多协议复用例如既可以接PCIe也可以接JESD204B。原理图设计时不能只画一对差分连线而应把协议协商时需要用到的辅助信号如参考时钟、复位、中断画全。我见过有人把参考时钟漏接导致FPGA侧GTX/GTH眼图整体塌陷这个问题排查了很久才找到原因——不是数据通道坏而是没有参考时钟。3.2 高速串行通道的布线实例28Gbps通道的阻抗控制原理图定稿之后布局布线是决定FMC成败的一关。我以一个典型的QSFP28光模块通过FMC连接FPGA的项目为例项目要求支持4个28Gbps通道差分走线长度从FPGA引脚到FMC连接器大约为8英寸。设计时先将差分阻抗目标设定为100欧姆正负5%。在叠层设计阶段就要计算线宽和线距例如使用Megtron 6板材L4层为带状线地到地距离约8mil参考设计算出差分线宽约4mil线距约8mil可以达标。重点在于连接器区域的阻抗补偿——FMC连接器的封装焊盘是SMD的焊盘面积明显大于走线宽度会引入额外的寄生电容必须做焊盘下地平面挖空和线宽调整我对连接器区域约2mm长的走线采用双倍线宽过渡配合泪滴形状稍微牺牲一点等长精度换取阻抗连续性实测下来回损改善效果很好。过孔设计方面由于FMC连接器焊盘通常不能直接布到BGA正面正下方必须打一个过孔逃逸到内层再走出去。针对28Gbps速率推荐差分过孔孔径12mil至14mil反焊盘直径约28mil且必须做背钻处理将未使用的过孔柱stub控制在10mil以内。我曾经做过一个对比测试同样的差分链路不做背钻时眼图高度掉了40mV做了背钻就恢复了一大部分可见stub对信号质量影响之大。布线的具体走线优先规则如下每个高速差分对单独一层尽可能避免同一层同时走多对平行长线。相邻高速通道间距至少保持3倍线宽距离避免通道间串扰。过孔换层点旁边要加接地过孔形成完整的回流换层路径。蛇形等长补偿用阶梯式结构不要用正方形大弯角。另一个经常被遗忘的点是高速差分对在FPGA的引脚区域往往比较拥塞经常需要从BGA扇出走较长的引出线再回到干线。这个引出线的长度和走向要尽可能地短避免形成短桩线。如果BGA内必须走anti-pad扩展记得让走线从过孔的正中心区域以45度角引出减小不连续性。3.3 连接器焊接与装配经验FMC连接器的间距较密焊接工艺不能等同于板对板电源插座。我强烈建议使用有铅或含银无铅焊膏时严格按照焊膏供应商的曲线进行回流焊。钢网开口适当缩小避免焊膏溢出导致连锡。贴片前对PCB焊盘清洁务必去除氧化层。回流焊后用X-Ray检查连接器焊点重点检查两端脚位和高速引脚密集区域。FMC子卡和载板的对接还需要注意安装时要将连接器对齐到中心线后再下压避免一侧先受力导致引脚弯折。应对准后先用手均匀压到底再做一次X-Ray复检。如果子卡另一端有固定孔要使用与板厚匹配的铜柱固定防止振动环境下连接器接触不良。我实际项目中在振动台环境测试时发现过连接器退针导致误码率飙升加装防松支架后问题才消失。4. 28Gbps信号完整性测试实战4.1 测试设备和环境准备28Gbps信号完整性测试不是凭一块万用表就能搞定的。核心仪器包括实时示波器带宽至少33GHz以上典型推荐是有效带宽40GHz以上。高速差分探头或直接使用示波器同轴电缆测试不过建议使用探头因为FMC连接器输出引脚密集。误码仪BERT支持28Gbps码型输出具备误码统计功能。高质量SMA/同轴跳线尽量缩短测试链路长度。频谱仪可选做频域测试。在测试环境搭建上我需要提醒两个点第一测试点不能选在FMC连接器引脚上直接焊线测量必须经过一个专用的测试载板或转接PCB把被测信号引到SMA口尽量减少测试附件带来的额外损耗。如果测试点链路本身损耗太大那么测出的眼图和线路真实性能差距会很大容易误判设计有问题。第二示波器和被测系统要使用同源时钟或者10MHz参考时钟同步这样测出来的抖动才具备可重复性。测试流程一般先是DC/低速信号验证确认每个电源域和通用I/O都正常再逐步开启高速通道观察有无链接最后才进入眼图和误码率测量。不要一上来就跑28Gbps至少先在10Gbps和25Gbps速率下分别做一轮看趋势异常再处理。4.2 眼图测试怎么读眼睛、判质量眼图测试是最直观的信号质量判断手段。正常眼图应该是一个轮廓清晰、边界分明的眼睛一般关注参数包括眼高、眼宽、交叉点、上升沿过冲和抖动。对于28Gbps信号典型的电眼图眼高在300mV左右算合格不同收发器标准不同眼宽至少大于0.5UI1UI约等于信息时隙宽度在28Gbps时约为35.7ps。我的个人习惯是将示波器显示设置为无限余辉采集至少1M个UI即1百万个数据位来观察眼图轮廓。如果眼图线条发虚、边界模糊一般意味着抖动偏大或者噪声偏大。遇到这种情况先用不同数据码型做对比跑PRBS7、PRBS15和PRBS31三种码型如果PRBS7正常但PRBS31很差通常说明链路中的低频损耗和均衡器设置有问题如果所有码型都差怀疑重点在阻抗连续性和串扰。在读眼图时有一个小技巧经常会用开启示波器的眼图模板功能导入协议标准模板比如根据IEEE或OIF规范设定模板的mask尺寸。然后用模板进行自动判定如果眼图某处触碰到模板边界会直接标出违例位置。这样能够快速判断问题是出在上升沿还是下降沿还是集中在眼图中央方便后续定位。常见的情况是眼图右侧下降沿更差这个多与过冲相关眼图中央发暗多半是随机抖动和串扰叠加的结果。4.3 抖动分解和误码率测试眼图测试给的是全貌但要准确判断抖动来源需要把抖动分解成随机抖动RJ和确定性抖动DJ。确定性抖动内部还能再分成周期性抖动PJ和数据相关抖动DDJDDJ又可以进一步细分为占空比失真DCD和码间干扰ISI。示波器自带的抖动分析软件可以直接算出这些分量关键是学会读懂结果。28Gbps链路抖动预算中通常随机抖动的主要来源是FPGA收发器自身的PLL相位噪声和电源的噪声确定性抖动则多来自线路中的阻抗突变和串扰。如果测量结果显示DDJ占比很高需要重点检查连接器区域和过孔如果PJ占比较高去查参考时钟的纯净度和电源纹波。例如有一次实测抖动结果总抖动为6.9ps包含随机抖动和确定性抖动其中随机抖动约2.9ps确定性抖动约4.0ps进一步看DDJ为3.1ps。我推测链路中连接器区域的不连续是主因后来在连接器区域改良参考地设计和减弱焊盘电容后DDJ降到了2.2ps总抖动降到5.7ps眼图明显改善。这种数据拆分在排查问题时非常有价值。误码率测试是最终裁决。测试码型通常用PRBS31持续跑满至少几分钟统计误码数直到误码率为0或者低于协议允许的门限。例如28Gbps链路工作1分钟传输1.68x10^12比特如果没有误码误码率低于约6x10^-13足够满足大部分接口规范。如果出现零星误码要记录误码出现的时间点配合示波器Trigger功能和BERT的Error Location功能定位误码是否集中在某个特定码型附近这对分析均衡器收敛和信号反射问题很有帮助。5. 常见问题排查实录与心得5.1 问题一测试眼图始终无法闭上或质量差这是大家问得最多的情况。眼图无法睁开不外乎链路损耗过大、反射严重、噪声太大三个原因。常用排查顺序是先用TDR时域反射计测试链路阻抗分布看有没有明显的反射点如果没有示波器TDR功能可以采用频域的VNA测S21和S11。如果能测到S11在某个频率出现明显回损峰值比如27GHz附近有7dB的尖峰多半是该处有谐振结构查一下连接器焊盘下地平面是否有挖空不当或过孔anti-pad设计是否合理。我遇到过一次某通道的过孔反焊盘比别的大了5mil结果回损就明显恶化虽然只差5mil但影响很显著——这反映到28Gbps已经不可接受了。如果反射正常就在发送端调整预加重和去加重参数在接收端调整CTLE和DFE参数。FPGA高速收发器的自适应均衡能力有限遇到具体链路时手动调参往往比自适应更好用。我通常用扫参的方式固定接收端CTLE调整发送端预加重强度遍历几个档位看眼图哪个最优再微调补偿重复两三轮就能找到最佳工作点。5.2 问题二不同板卡互操作时出现误码同一个FMC子卡插在不同的载板上表现不一致是常见现象。原因多半是两块载板的布线长度、过孔数量、连接器状态不同导致信号到达接收端时的眼图裕量不同。解决方向不是让所有板卡完全一致而是让链路预算留有足够余量。我建议做一轮系统裕量测试将子卡的最高工作波特率从28Gbps降到25Gbps看误码是否消失。如果降低速率就正常说明是带宽余量不足。再看是通道间串扰还是链路损耗的问题通过关掉其他通道收发器只保留测试通道的开关对比测试就能把串扰因素隔离出来。另外VITA 57.4规范里对连接器插拔次数有寿命说明老化和磨损会让接触电阻增大高速性能逐步劣化。现场排查时先清洁连接器再用插拔几次重新测一下改善明显的话多半是接触状态不佳。接触点用异丙醇清洁不要用砂纸打磨否则破坏镀金层会加速氧化。5.3 问题三回流路径中断导致的共振有一次测试时眼图在某个频点出现周期性凹陷频率间隔大约3GHz伴随明显的杂散。排查了电源纹波、时钟、连接器最后用近场探头沿高速走线扫了一圈发现FMC连接器区域下方有一条地平面被分割成狭窄的条状区域导致回流电流绕行形成了类似微带谐振的效应。修复方法很简单——在这个分割区域增加缝合地过孔并补上一段地平面铺铜把回流路径连接起来问题马上消失了。这个案例告诉我一个道理FMC高速设计地平面完整性和过孔缝合远比想象中的重要。在很多情况下高速信号本身的设计没问题就是地平面处理不够精细导致回流路径断裂引发了环路谐振。28Gbps信号的回流电流集中在信号线正下方的地平面区域任何窄颈或开口都可能成为性能杀手。布线阶段完成后最好做一次3D电磁仿真查看地平面的电流密度分布提前发现窄颈和孤岛区域。5.4 关于FMC升级的几点个人体会做VITA 57.4从设计到测试一路走下来我最大的感受是FMC并不只是换了一颗连接器它是整个设计习惯的转变。从原理图引脚规划、PCB叠层、电源去耦、信号完整性仿真到测试方案都要以前所未有的预算来思考。有几个关键建议送给正在上手FMC的朋友在项目初期就想清楚速率和协议不要从FMC顺手升级到FMC因为这会影响连接器选型和IO定义的全局。尽早进行信号完整性预仿真不要等到板子回来再发现开不了眼。准备一块专用测试载板预留足够多的SMA测试点这会让你后续调试效率成倍提升。多留几个过孔位置和工作模式切换电阻位方便在调试阶段灵活切换。按照我个人的经验第一次做VITA 57.4 FMC接口从原理图到调试通过大概需要四周到六周其中一半时间可能花在信号完整性分析和测试上。但只要把这件事做成一次后续再适配新的FMC子卡就会顺手很多毕竟高速接口设计的核心方法都是相通的。
返回列表