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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5269|回复: 16

[求助] 求助大神 代码出现死循环了

[复制链接]
发表于 2017-12-14 20:00:15 | 显示全部楼层 |阅读模式

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

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

x
这段代码在always的延时是一个变量 就会出现死循环,达不到想要结果,请问要怎么改啊
P71214-200223.jpg
发表于 2017-12-14 22:11:54 | 显示全部楼层
C是输出,能调用?
发表于 2017-12-14 22:12:33 | 显示全部楼层
你再always中这么写,是想让E成为一个方波?
 楼主| 发表于 2017-12-15 06:55:58 | 显示全部楼层
回复 3# 乐在其中296
是啊
发表于 2017-12-15 09:47:06 | 显示全部楼层
回复 4# 冰馨若颜


    比方说,C ==1, 那C/2 就是0,这应该是死循环的原因吧。
    另外,E 要给初值吧,否则怎么翻转呢?  另外B 作为除数是不是   “ |B ”也不能等于0 这样去做运算比较合适?
发表于 2017-12-15 10:02:54 | 显示全部楼层
回复 5# sdlyyuxi


   她采样输出信号C作为翻转的周期,这么做编译通过,仿真是不通过的,迭代错误
run -all
# ** Error: (vsim-3601) Iteration limit reached at time 0 ps.
发表于 2017-12-15 10:05:43 | 显示全部楼层
还有就是D的位数问题,2个3比特的数相加,你想让结果是几位数,如果强制结果也是3位数,就可能失去高位的数,如果强制将结果的位数变大,又怎么样,你可以试验一下
发表于 2017-12-15 12:37:14 | 显示全部楼层
回复 1# 冰馨若颜


   这代码风格很奇怪,不能综合的
发表于 2017-12-15 13:35:44 | 显示全部楼层
假設A跟B都是0, 那麼得到的C也是0, 就會造成死循環了
发表于 2017-12-15 14:26:27 | 显示全部楼层
仿真的时候,reg需要有初始值,否则是不定态,再加上C的初始值可能是0,也会导致死循环,楼上的答案基本都给你做好解释了,根本原因还是代码不可综合。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-11-23 03:39 , Processed in 0.021462 second(s), 8 queries , Gzip On, Redis On.

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