官方论坛
官方淘宝
官方博客
微信公众号
点击联系吴工 点击联系周老师

Xilinx Kintex-7 电源稳定性调试心得(私人总结版)-明德扬科教(mdy-edu.com)

发布时间:2019-12-10   作者:admin 浏览量:



Xilinx Kintex-7 电源稳定性调试心得(私人总结版)


本文为明德扬原创文章,转载请注明出处!作者:郑先生



Xilinx KC705 开发套件

Xilinx XC7K325T是Kintex-7系列其中一个型号,拥有326K逻辑单元和407K CLB触发器,IO资源也达到了500个单端IO240对差分对。

公司最近在搞的信号采集处理项目就用了这款FPGA,采集模块部分采用14位、500 MSPS LVDS、双通道模数转换器(用的是ADIAD9684,并行14LVDS接口,DDR模式)




AD9684

PS:此ADC功能很强大,可说是数字通信接收机的利器,哈哈,后续有机会跟大家介绍此ADC的调试心得。

调试过程很漫长,由于板卡的稳定性一直存在问题,FPGA发热异常,调试经常遇见莫名其妙的Bug,由于最终采集处理后的数据通过千兆以太网发出,数据给予到上位机进行进一步处理,因此千兆以太网PHY芯片采用的是88E1111,它支持RGMII,GMII,SGMII等接口与MAC层连接,相信大家都不会陌生,Marvell 88E1111 PHY芯片价格还是挺高的,但是功能也确实强大。


Marvell 88E1111



值得一提的是88E1111MDI线与网口变压器连接时,中心抽头需要接VCC,因为88E1111是电流驱动型IC




参考接法

至于采用的电源多大,与所用PHY芯片有关,这里不再赘述。 调试过程中,千兆网口经常出现连接断开的现象,网口变压器异常发热,排查问题时发现88E1111芯片内核电源纹波异常,1.0V的电源,纹波达到了200mV。有意思的是,该电源轨与FPGA 内核电源轨,用的VRM是同一个,所以K7的内核电源的纹波也达到了200mV左右,也就是误差达到了±10%,这是不能接受的。至此我们一度怀疑采集处理后数据的错误是因为该电源的容差过大,导致内部逻辑形成保持时间故障。(事实上后续调试证实是时序约束问题,这里可以建议大家学习一下明德扬的时序约束课程,国内少有的)



Xilinx 数据手册上指出内核电源的为1.0V

由数据手册可以知道,内核电源需要1V±30mV,很显然该VRM是不满足要求的。电源IC是来自于TI 的开关稳压器TPS54620 同步buck 6A输出,测试时发现其SW端波形异常,明显能看出High side 出现突然关断,Low side High side 关断后未导通。



初步判定以为是bootstrap 电路出现问题,认为尖峰噪声导致boot电容击穿,然而现实是残酷的,更换boot电容后波形仍然未改变。题主陷入盲目,对补偿电路进行试错法调试,调整芯片本振频率,结果仍然一样。无奈之下,静下心来继续研究数据手册





TPS54620 内部框图

冷静下来分析了该芯片的内部框图,发现其High side low side 都有电流环路,认为是电流环路起作用了。但是什么原因导致电流环路起作用,此时题主一头雾水,虽以前设计过与调试过低压大电流的电源模块,但更多是按照数据手册的指引进行设计,下载原厂提供的spice模型进行参数验证(很多时候照搬参考设计并不能适合每个板卡,没有设备的情况下我都是选择仿真验证)。对该VRM的电路参数进行了一次排查,发现电感选用的是线艺的MSS6132-103ML_ ,这就存在很大问题了,该电感的饱和电流只有1.6A左右!!



这个电流真的太小了,我认为根本带不动K7的内核,更不用说加个88E1111,但是口说无凭,作为技术人员,感觉可以作为自己的经验方向去调试,但是凭感觉就下结论,是万万不可为的。所以我打开Xilinx Xpower 功耗分析工具,对已经综合后的工程进行功耗分析,结果如下



                                                                                                                    Xpower 界面

分析结果显示内核电源VCCINT的总电流为2.3A,动态电流达到了2.2A,大大超过了1.6A

至此,结论很明显是电感电流过大达到饱和,失效导致high side直通负载电流过大,电流环路起作用关闭high side 。然后话不多说,直接更换饱和电流更大,感量较低的电感,输出电容Cout增加一个100uFMLCCPS.增加电容的原因是电感改小了,这样会导致电源功率环路的LC二阶极点左移,在补偿电路为改变的前提下,可能会导致电源振荡),再次测试,SW端波形恢复正常,纹波也只有几十mV



                                                                                                         TPS54620 PH端波形


内核电源稳定后,再次上电调试,千兆网口通讯正常,FPGA异常发热的问题也迎刃而解,我去查了Xilinx官方文献,内核电源不稳定是会造成功耗异常。建议使用模块电源。MPSADITI等厂商都有专用于7系列FPGA的电源解决方案,体积小,电流大,动态响应快,缺点相对于用PMIC解决方案就是贵。这三家中MPS的模块电源价格算比较友好了



                                                                                              MPS Kintex-7 模块电源解决方案

很多工程师都会选择开关稳压器作为FPGA板卡的VRM,这样能省不少成本,但是设计时应该考虑一下VRM的稳定性,避免板卡存在隐患,调试时也能避开许多问题。想要学习交流的同学可以留言给我,也可以联系明德扬学习更多知识!





上一篇:没有了
   拓展阅读