FPGA上电状态

2019-04-13 16:59发布

最近调试FPGA电路时候发现个问题,以前从来没有注意过。我们都知道Xilinx的FPGA上电有三个M引脚,这三个管脚是让我们配置FPGA加载程序方式的,什么主串、从串、并行等等,手册上都有,他还有个功能我们设计电路时候经常忽略,那就是FPGA加载程序阶段对其GPIO电平的控制,由于这段时间不会很长,加载完了马上就进入你程序的同步复位,所有得IO随着你的RESET都可控了,所以大多数电路其实对于这点时间FPGA的状态并不关心。看看Xilinx的手册FPGA上电加载程序有个流程的,上电到达一定电平FPGA内部初始化,等待外部PROM准备好,读取M1M2M3,根据其状态选择程序加载方式,配置完成后输出Done信号,整个上电加载过程结束。最近调试一个比较大的系统,发现上电瞬间有一部分电路有毛刺控制了其开关,查回来就发现三个M没有选择指定IO程序加载时候状态,结果改了,但是还有,这就头疼了,做了好多次实验,发现FPGA上电内部初始化阶段对GPIO是不可控制的,问了厂家也说不可控,那就只能改电路了。最后的设计是IO输出加门电路或者可控三态输出的电路,对想要的上电状态分别上下拉。这只是一个小小的问题,如果你做的电路系统要求很高,那你们值得好好研究下,欢迎回帖交流经验。