1. 前言
在使用安陆FPGA进行测试时,发现两片FPGA中,其中一片的DONE信号在拉高后出现明显震荡现象,而另一片工作正常。为排查问题,进行了多方面的分析与验证。
2. 原因分析
1)是否由LED驱动引起?——排除
首先怀疑DONE引脚外接的LED及其串联电阻可能造成负载不稳定。于是移除了LED限流电阻进行测试,但震荡依然存在,说明该因素并非主因。
2)电源波动影响?——排除
进一步检查FPGA各组电源(包括VCCINT、VCCAUX、VCCO等)是否存在纹波或瞬态跌落,示波器观测未发现异常,电源稳定性良好,故排除此可能性。
3)上拉电阻阻值问题?——排除
尝试更换不同阻值的上拉电阻至VCCIO,观察DONE信号状态,结果仍存在震荡,表明电阻大小不是导致问题的关键因素。
4)FPGA内部管脚配置不当?——部分相关
检查发现,DONE引脚虽已启用,但未明确配置其电平标准和驱动电流能力。通过重新设置I/O标准并增强驱动强度后,电压幅值从原来的2.6V提升至3.3V,说明配置有一定作用;然而信号上仍然存在高频纹波,且调整驱动电流对抑制纹波效果有限。
下图为完成管脚配置后的实际波形表现:
5)PCB走线干扰?——确认为主因
初期使用示波器采样时间较长,误判震荡频率约为20Hz,但在系统中并未找到对应低频源。随后出于排查需要,监测了一组与DONE信号走线平行但当前未使用的FPGA IO口,意外发现其存在约20MHz的周期性切换信号。
对比测量如下:
CH1:闲置IO信号
CH2:FPGA DONE信号
进一步验证:将该并行走线的IO重新配置为固定低电平输出后,DONE信号恢复平稳,震荡消失。
由此确定:最初观察到的“低频”波动实为高频串扰所致,示波器长时间扫描下产生视觉误导。实际根本原因是邻近走线上的高频切换信号通过容性耦合对敏感的DONE线路造成了电磁干扰。
3. 结论
FPGA的DONE信号出现震荡的根本原因,并非来自电源、外围元件或单纯的驱动能力不足,而是由于与其PCB走线并行的某无用IO持续输出20MHz周期信号,引发高频串扰。最终通过关闭该IO的动态行为,使DONE信号恢复正常。此次问题提醒我们在调试过程中应重视高频干扰的可能性,避免仅依赖初步观测做出判断。


雷达卡


京公网安备 11010802022788号







