在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5446|回复: 13

FPGA的状态机BUG,郁闷

[复制链接]
发表于 2009-12-5 11:39:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 richardyicai 于 2009-12-5 11:42 编辑

近来我写了一些Verilog代码实现通信,仿真通过,不过运行长时间后就“僵”死了,必须手动reset才继续动,过阵子又出现类似问题。后来我把状态机的状态在LED上显示,我用的是独热编码,发现出故障时竟然一个LED都不亮(照理说应该至少有一个是亮的),我检查了状态机没问题啊,default 语句也有( 执行stata<=IDE)。 我用的是quartus 9.0 for linux, FPGA用的是EP3C16F。 有其他人也遇到过类似问题或者纠正我的错误?先谢谢!我目前只能认为是综合编译器的问题,default被忽略了,但是fpga运行是受到某种干扰,状态被至于一种未在状态机器中定义的,这样就“僵”住了。
发表于 2009-12-5 14:10:29 | 显示全部楼层
有可能FPGA有问题
发表于 2009-12-6 08:32:24 | 显示全部楼层
你可以使用signalTap看看你的状态机在锁死时是什么状态啊,我怀疑是你的时钟有问题或是你的时序不过,状态机直接进入了亚稳态
发表于 2009-12-6 18:07:47 | 显示全部楼层
有没有检查时序?
发表于 2009-12-8 17:05:14 | 显示全部楼层
1# richardyicai

最大的可能还是时序的问题,楼主再查一下吧
发表于 2009-12-9 11:28:51 | 显示全部楼层
FPGA综合时,一般都会忽略default,可以从综合结果上确认。
至于状态机僵死的原因,首先确认僵死后进入的状态。出现这种情况,大部分都是逻辑设计的问题。
 楼主| 发表于 2009-12-9 13:12:58 | 显示全部楼层
OK了,之前我发现有些不寻常的warning, 我把代码重新整理了一下, 编译后不再产生之前的warning后就一切正常了,跑了2天还没有发现之前的问题。感谢各位的提示和建议。
发表于 2009-12-12 19:39:41 | 显示全部楼层
lz可以将为什么会出现问题写详细一点,免得还有人犯这种错误么
发表于 2009-12-21 17:12:11 | 显示全部楼层
时序的问题。。。
发表于 2009-12-22 14:04:55 | 显示全部楼层
有可能是异步复位导致的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-17 12:21 , Processed in 0.039898 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表