ARTICLE DETAIL

资讯详情

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

AMD Kria载板高速信号与电源完整性设计实战:从PCIe布线到散热方案

AMD Kria载板高速信号与电源完整性设计实战:从PCIe布线到散热方案 1. 项目概述与核心挑战上次我们聊了为AMD Kria™ SOM系统模块设计载板的第一部分主要聚焦在电源树设计、核心电源轨的布局布线和一些基础接口的规划。如果你还没看过建议先回顾一下因为载板设计是一个环环相扣的过程。今天我们进入第二部分也是真正考验硬件工程师“内功”和“经验值”的环节高速信号完整性设计、时钟分发、散热与机械结构考量以及最终的调试与验证策略。Kria SOM无论是K26还是KV260其核心价值在于将一颗强大的Zynq™ UltraScale™ MPSoC与必要的内存、存储和电源管理集成在一个紧凑的模块上让我们能快速进行应用开发。但这也意味着所有高速、高密度的信号如PCIe、DP、USB3、千兆以太网等都必须通过板对板连接器引出到我们的载板上。载板设计的质量直接决定了这些高速接口的性能上限和系统整体的稳定性。一个设计不佳的载板会让昂贵的SOM性能大打折扣甚至无法正常工作。所以这一部分的目标很明确不是简单地“连通”信号而是确保信号从SOM的BGA焊球出发经过连接器、载板走线最终到达外部连接器或芯片的整个路径上都能保持“干净”和“准时”。这涉及到对信号完整性、电源完整性和电磁兼容性的深入理解。我会结合我最近为一个工业视觉项目设计Kria K26载板的实际经历分享从原理图设计到PCB布局再到后期调试的完整思路和踩过的坑。2. 高速接口的信号完整性设计要点高速信号设计是载板成败的关键。Kria SOM通常提供PCIe Gen3/4、DisplayPort 1.4、USB 3.0/3.1、SATA 3.0以及多个千兆以太网接口。处理这些信号不能再用“拉根线连上就行”的思维。2.1 阻抗控制与叠层设计一切高速设计的基础是可控的传输线阻抗。在画第一根线之前你必须和PCB板厂紧密沟通确定最终的叠层方案。阻抗目标单端信号线如USB2.0的D/D-通常控制50Ω或55Ω。差分对如PCIe、USB3.0、以太网则控制90Ω或100Ω的差分阻抗。具体目标值需要查阅AMD官方为Kria SOM提供的硬件设计指南HDG里面会有明确要求。叠层规划对于六层或八层板一个经典的叠层策略是Top Layer高速信号、关键元件放置。GND02完整的接地层为顶层信号提供最近的返回路径。PWR03电源层可以分割为多个电压域。GND04另一个完整的接地层与PWR03形成板内去耦电容。SIG05内部信号层可以走一些中低速信号。Bottom Layer低速信号、连接器、测试点。这个结构保证了每一个高速信号层都紧邻一个完整的参考地平面这是控制阻抗和减少串扰的黄金法则。计算与确认使用板厂提供的阻抗计算工具如Polar SI9000的模板根据你选择的板材如FR-4 Isola 370HR等、芯板/半固化片厚度、铜箔重量计算出达到目标阻抗所需的线宽和线间距。务必在投板前将叠层图和阻抗要求作为制板说明的一部分发给板厂并要求他们书面确认能达到的阻抗值。我吃过亏自己算的和板厂实际做出来的有偏差导致USB3.0眼图测试不合格。2.2 关键高速信号的布线规则不同的接口有不同的物理层要求必须区别对待。PCI Express等长要求一组PCIe差分对内的两根线P/N长度差要严格控制通常要求小于5 mil0.127mm。同一通道的多个差分对之间如TX和RX也需要做等长容差通常在几十mil以内具体看Gen几。参考平面必须保证差分对正下方是完整、无分割的参考平面最好是地平面。绝对禁止跨分割区否则回流路径突变会引起严重的信号完整性问题。过孔尽量减少过孔数量。如果必须换层要使用背钻孔或盘中孔工艺来消除过孔残桩Stub的影响特别是对于PCIe Gen4。我的实操心得对于Kria的PCIe x4接口我将其布线优先级设为最高。在PCB软件中设置严格的差分对规则和等长组。布线时采用“外围包地”的方式在差分对两侧用接地过孔“护卫”并在表层走线下方保持完整地平面。对于换层过孔我明确要求板厂进行背钻处理并在Gerber文件中做了标注。DisplayPortDP的主链路Main Link是4条高速差分对其布线要求与PCIe类似需要严格的阻抗和等长控制。特别注意AUX通道DP的AUX通道是一对差分信号用于链路管理和EDID通信。它的速率虽不高但对信号质量也很敏感。我最初将其当作普通低速信号处理走线很长且靠近开关电源导致显示器偶尔无法被识别。后来将其视为“敏感模拟信号”重新布线问题解决。热插拔检测HPDHPD信号的上拉电源必须是来自SOM的DP接口供电通常是3.3V_DP而不能用载板上的其他3.3V否则可能导致热插拔检测逻辑混乱。USB 3.0/3.1USB3.0的超高速差分对SSTX/SSRX需要像PCIe一样对待。USB2.0信号D/D-是单端信号也需要做阻抗控制。它们对ESD非常敏感必须在连接器附近放置TVS二极管阵列进行保护。VBUS电源路径USB端口提供5V电源。如果您的载板需要通过USB口取电或对外供电VBUS路径上的走线要足够宽根据电流计算并且要设计过流保护电路如自恢复保险丝或电子保险丝。千兆以太网RGMIIKria的以太网接口通常通过RGMII与PHY芯片连接。虽然单根线速率是125MHzDDR但时序要求非常严格。等长是关键TX_CLK与TX_DATA[3:0]、TX_CTL这三组信号需要严格等长。RX_CLK与RX_DATA[3:0]、RX_CTL亦然。组内误差建议控制在25 mil以内组间误差可以稍大但最好也控制在100 mil内。参考时钟为PHY提供的25MHz时钟信号质量要好走线短远离噪声源。我的踩坑记录第一次设计时忽略了RX组和TX组之间的长度匹配只做了组内等长。结果以太网链路在高压负载下会出现偶发性丢包。后来用示波器测量RGMII时序发现建立保持时间裕量不足。重新调整布线将所有与同一时钟相关的数据线都纳入一个大的等长组进行约束问题彻底消失。2.3 电源完整性PI设计深化第一部分我们规划了电源树这里要解决如何把“干净”的电源送到芯片引脚。去耦电容的布局这是最体现细节的地方。原则是小电容离引脚最近。对于SOM连接器上的每个电源引脚尤其是核心电源如PS_1V0、PL_1V0在连接器焊盘出线后立即放置一个0402或0201封装的0.1uF陶瓷电容。这个电容的作用是提供最高频的电流响应。稍远一点放置容值大一些的电容如1uF、10uF用于应对中低频的电流需求。所有去耦电容的GND端必须通过最短、最宽的路徑连接到地平面最好使用多个过孔。电源平面分割在电源层PWR03进行电压域分割时要确保电流路径顺畅。例如为PS部分供电的路径应该从电源芯片出发经过必要的滤波直接流向SOM连接器的相应引脚途中避免狭窄的“通道”。对于噪声敏感的模拟电源如ADC的供电可以考虑用“隔离带”即用地线包围将其与其他数字电源隔离开。大电流路径处理对于FPGA的PL核心电源VCCINT峰值电流可能达到数安培。这类电源的走线要宽必要时使用多层铜皮并联并计算温升。3. 时钟电路与复位设计时钟是数字系统的心脏复位是保证心脏能正确起跳的开关。3.1 系统时钟分发Kria SOM需要外部提供一些时钟参考。参考时钟例如PCIe需要一路100MHz的差分参考时钟。必须使用低抖动、低相噪的专用时钟发生器如Si5332, Si522xx系列。该时钟的PCB布线必须当作高速差分对来处理并直接连接到SOM连接器的指定引脚。时钟芯片布局时钟发生器应靠近SOM连接器放置输出走线要短且对称。芯片的电源去耦要格外注意通常需要采用LC滤波磁珠电容来获得超级干净的供电这是降低时钟抖动的关键。我的配置我选用了一颗Si5332时钟发生器它可以编程输出多路不同频率的时钟。除了100MHz给PCIe我还用它生成了一路25MHz单端时钟给板载的以太网PHY。布局时我将它放在距离Kria SOM连接器15mm以内的位置并为其模拟电源VDDA使用了π型滤波器磁珠10uF0.1uF。3.2 复位与配置电路上电复位MPSoC需要一个稳定的低电平复位信号PS_POR_B。通常使用专用的复位监控芯片如TPS3823来产生。这个芯片的电源必须来自PS的常电如3.3V_AUX确保即使载板主电源断开MPSoC也能被可靠复位。启动模式配置SOM的启动模式如从QSPI Flash、从SD卡等是通过连接器上的几个配置引脚如MODE[3:0]的电平决定的。这些引脚必须通过上下拉电阻设置为固定电平并且要确保在上电初期就是稳定的。电阻值通常为10kΩ-100kΩ。原理图上要清晰标注出选择的启动模式。PROG_B按钮这是一个非常有用的用户按钮连接到PS的PROG_B引脚。短按可以触发FPGA部分的重新配置而不影响处理器系统。记得在PCB上留出这个按钮的位置。4. 散热与机械结构设计Kria SOM在满负荷运行时会产生可观的热量尤其是当PL部分运行高频率逻辑时。热仿真分析在PCB布局基本完成后建议进行简单的热仿真。将Kria SOM的封装模型导入根据你预期的功耗可以从Vitis™ IDE的功耗估算工具中获得设置发热源。观察在自然对流或强制风冷条件下芯片结温是否在安全范围内通常125°C。散热方案选择被动散热如果功耗较低5W可以依靠SOM本身的金属顶盖和载板上的大面积接地铜皮通过连接器接地引脚导热来散热。可以在SOM上方载板对应位置开窗并涂抹导热硅脂帮助热量传导到载板。主动散热对于KV260视觉套件或高性能应用必须加装散热片甚至风扇。载板设计需要预留散热片的安装孔位与SOM的孔位对齐并确保周围有足够的净空高度。如果使用风扇需要设计风扇的供电和控制电路通常使用PWM控制。机械固定除了连接器本身SOM通常还需要通过四个角落的螺丝孔固定在载板上以增加机械强度防止连接器在震动或插拔时受损。载板上的螺丝孔位置必须精确并使用铜柱和螺丝固定。5. PCB布局布线实战流程有了前面的理论我们来看如何落实到PCB设计软件中。5.1 前期准备与规则设置创建板框和禁布区根据结构图确定板框。在SOM连接器下方和周围划定禁止布线和禁止放置元件的区域为连接器焊接和散热留出空间。导入网表和封装确保所有元件的PCB封装正确无误特别是SOM连接器、高速连接器如PCIe插槽、USB Type-C和BGA芯片。设置设计规则这是最重要的一步。在规则管理器中至少设置差分对规则定义PCIe、DP、USB3等差分对的线宽、间距、阻抗。等长规则为PCIe通道、以太网RGMII组创建等长匹配规则设置目标长度和容差。间距规则设置不同电压网络之间的安全间距特别是高压部分如12V输入。区域规则可以对特定区域如时钟芯片下方设置更严格的规则。5.2 布局阶段核心器件放置首先放置SOM连接器。然后像下围棋一样围绕它放置关键器件时钟发生器紧挨着连接器的参考时钟引脚。电源芯片放置在连接器供电引脚附近并考虑散热路径。以太网PHY靠近连接器的RGMII引脚同时兼顾RJ45的位置。USB接口电路、PCIe插槽等根据板框和接口位置放置。去耦电容放置在放置主要芯片后立即将其去耦电容放置在芯片电源引脚背面如果是多层板或最近的位置。这是保证电源完整性的黄金时间点如果等布线后再来挤位置效果会大打折扣。5.3 布线阶段先电源后时钟再高速最后低速电源完成所有电源网络的布线特别是大电流路径。确保线宽足够。时钟布线时钟发生器的输出这是系统中最敏感的线。高速信号按照优先级依次完成PCIe、DP、USB3、以太网等高速差分对的布线。使用交互式长度调整工具实时满足等长要求。低速信号最后处理GPIO、I2C、SPI等低速信号。接地过孔阵列在布线过程中要养成随时打接地过孔的习惯。尤其是在高速信号换层的地方、时钟芯片周围、电源分割线附近要密集地放置接地过孔为信号提供最短的回流路径并缝合地平面。5.4 后期检查与生产文件输出DRC检查运行设计规则检查确保没有违反任何间距、线宽规则。连通性检查确保没有断开的网络。丝印调整将元件位号、版本号、测试点标注等丝印摆放清晰避免被元件遮挡。生成制造文件Gerber文件包括各层铜皮、丝印、阻焊、钻孔等。钻孔文件特别注意区分盲埋孔、背钻孔如果用了。装配图给SMT工厂使用。制板说明一个文本文件详细说明板材、厚度、阻抗要求、表面工艺如沉金、颜色、特殊工艺背钻等。这个文件至关重要必须写清楚。6. 调试、验证与常见问题排查板子回来了激动人心的调试开始。但通常不会一帆风顺。6.1 上电前检查目视检查检查PCB有无明显短路、断路元件有无错件、漏件、极性反。万用表测量测量所有电源引脚对地电阻排除短路。特别是核心电源如1V0电阻值可能很低几欧姆这是正常的但如果是0欧姆或接近0就是短路了。6.2 上电与基础测试阶梯上电如果可能使用可调电源缓慢调高输入电压同时监测输入电流。电流异常增大立即断电。电源时序测量用示波器多通道同时测量关键电源的上电顺序如PS_1V0, PL_1V0, 3.3V等确保符合MPSoC的数据手册要求。错误的时序可能导致芯片闩锁或无法启动。时钟测量测量时钟发生器输出的频率和幅值是否正常。用示波器观察波形是否干净有无过冲、振铃。6.3 功能接口调试串口调试最基础的调试手段。确保UART转USB电路工作正常在PC端用串口工具能看到Bootloader的输出信息。如果没输出检查波特率、接线、以及SOM的启动模式配置是否正确。以太网调试先通过串口查看Linux系统是否识别到了以太网PHY。如果识别不到检查PHY的复位、MDIO总线通信、以及25MHz时钟。如果识别到但无法联网用示波器测量RGMII接口的时钟和数据线是否有信号并检查网络变压器的连接。USB调试插入U盘或USB设备通过lsusb命令查看是否识别。如果无法识别检查USB数据线布线、ESD保护器件是否短路、以及VBUS电源是否正常。PCIe调试在Linux下使用lspci命令查看是否能识别到设备。如果看不到问题可能比较底层检查参考时钟100MHz差分是否正常、PCIe复位信号是否释放、以及差分对布线是否严重不合格。可能需要借助更高级的误码率测试仪或协议分析仪。6.4 常见问题速查表现象可能原因排查步骤无任何电源输入电源反接/短路电源芯片使能信号不对保险丝烧断。检查输入极性测量电源芯片输入/输出检查EN引脚电压。部分电源无输出该路电源芯片损坏负载短路反馈网络电阻错误。断开负载测电源芯片输出测量负载对地电阻核对反馈分压电阻值。串口无输出启动模式配置错误UART电路故障Bootloader损坏。用万用表测量MODE引脚电平检查UART转USB芯片供电及通信尝试不同的启动介质SD卡。以太网不识别PHYMDIO/I2C通信失败PHY复位失败时钟缺失。用示波器看MDIO/I2C波形检查PHY复位引脚时序测量25MHz时钟。以太网链路不稳定RGMII时序裕量不足变压器中心抽头电路错误外部干扰。用示波器高级触发测量建立保持时间检查变压器接线尝试在差分线上加共模电感。USB设备识别时好时坏VBUS电源带载能力不足ESD器件漏电或电容过大信号线阻抗不连续。测量插入设备时VBUS电压跌落情况临时移除ESD器件测试检查USB连接器处布线。PCIe设备无法枚举参考时钟缺失或质量差PERST#信号未释放差分对损耗过大。测量100MHz差分时钟幅值、频率检查PERST#信号上电时序审查PCB布线检查是否有过孔残桩或跨分割。系统运行中随机死机散热不良导致过热电源纹波过大DDR信号完整性差。触摸芯片温度用示波器AC耦合测量核心电源纹波尝试降低PL时钟频率或负载。7. 从原型到产品化的考量如果载板不仅仅是个原型而是打算小批量生产还需要考虑更多。可制造性设计元件间距是否满足SMT贴片机的要求是否有足够的工艺边测试点是否覆盖了关键网络可测试性设计考虑加入JTAG接口用于生产阶段的烧录和测试。预留一些关键的测试点如电源、时钟、复位方便在线测试。元器件选型将原型中使用的“开发板级别”的芯片如价格昂贵或交期长的替换为功能相同但更便宜、供应更稳定的“量产级别”芯片。成本优化在保证性能和可靠性的前提下评估能否减少PCB层数、使用更便宜的板材、替换更便宜的连接器。认证与合规如果产品需要上市销售可能需要进行电磁兼容、安规等方面的认证。在设计初期就要考虑这些要求例如预留足够的滤波电路、安全间距。设计一块定制Kria载板是一个充满挑战但也极具成就感的过程。它要求你将硬件设计的方方面面——从电源管理、信号完整性、热管理到可制造性——融会贯通。每一次调试和解决问题的过程都是对理论知识的深度实践。希望这两篇分享能为你扫清一些障碍。最后记住官方文档硬件设计指南、数据手册是你最好的朋友在设计的每一个阶段勤于查阅反复验证是成功最可靠的保障。当你第一次看到自己设计的载板成功启动Linux并运行起应用时那种感觉是无与伦比的。
返回列表