微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > FPGA程序上机运行时好时坏

FPGA程序上机运行时好时坏

时间:10-02 整理:3721RD 点击:
写好的程序,下载到FPGA中进行调试,有时候程序正常工作,有时候重新加载程序后就不能正常工作了,这是什么原因呢?

复位信号?
供电正常?

有很多原因可以导致这个情况,一个亚稳态就够折腾的


我用的XAPP524这个程序改编的,这些信号我都是没动的,供电也是正常的。


亚稳态的问题会在后实现时序仿真上表现出来吗?我的程序通过了后实现时序仿真的啊。我用的XAPP524的程序做串行数据采集的,XILINX的FPGA

你的时序过了么?


过了,结果是正确稳定的。

有很多原因可以导致这个情况

可以试试怀疑什么地方,抓一下信号看看

有可能是某些地方时序约束没加上

系统复位做了没?
使用的是同步还是异步复位?异步复位有么有做处理?
时钟模块复位了没,比如DCM,MMCM,PLL这些。



我过了时序仿真的啊


复位是做了的,用的同步复位。时钟模块也有复位,不过我还是再检查一下复位信号是不是正确吧。谢谢提醒

抓一下你给采集的信号时序是否满足要求,按例子修改的程序,有时候模块化的东西会牵一发而动全身。



   我曾经遇到过这种情况啊。那个时候两片一模一样的板子,烧同样的bin file,但是其中一片板子就有时候正常,有时候不正常;另外一片就一直都是好的。查了很久,后面发现是代码中的DCM没有做复位造成的。代码修改后就好了。
我看过不少别人的代码,很多人都习惯性的不复位时钟模块的。很多时候都可以work,但是有时候就会出现莫名其妙的现象。

1.检查时序;
2.检查复位;
3.检查硬件。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top