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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: linghuqiubai

[求助] 关于if和case语句

[复制链接]
 楼主| 发表于 2015-2-27 09:10:51 | 显示全部楼层
回复 10# glace12123

我感觉时序逻辑时是可以不写的,但是亲自试过一个case语句,没有写default和写了default时的结果就不一样,所以感觉还是写上比较好……
发表于 2015-2-27 14:55:35 | 显示全部楼层
时序逻辑时,写不写没区别。
发表于 2015-2-27 23:48:47 | 显示全部楼层
回复 11# linghuqiubai

并不是说case里缺少default就一定会出问题,而是某些情况下会造成一些功能上的bug,如果逻辑内部某一时刻跑飞,你拿去匹配case的有效值跳变为了无效值,在没有default情况下,你说这个case会输出什么值? 这个根据综合器的不同而不同,如果综合器认定在缺省default情况下,遇到无效case匹配值,让输出寄存器保持上一个状态,那么你就会得到一个错误的case输出,而且你还不知道,后面的逻辑就乱了,尤其是状态机,就跳乱了。如果你在default上加入一个特殊的值,那么你的后级逻辑就会知道case没有匹配对,出了问题,你就可以设计出错的机制来抑制错误的延续,至少你知道了这个错误,定位问题的时候有方向。
 楼主| 发表于 2015-2-28 10:56:45 | 显示全部楼层
回复 13# glace12123

学习了,谢谢!
发表于 2015-2-28 12:25:49 | 显示全部楼层
组合逻辑必须把分支都补全。else和default必须有
发表于 2015-3-12 14:46:34 | 显示全部楼层
时序逻辑的话可以不写,组合逻辑的话还是要写的,不然会出现锁存器的。不过规范一点都写吧
 楼主| 发表于 2015-3-12 15:24:57 | 显示全部楼层
回复 16# Jason_xx


   那要是在default情况下希望某个变量不变,是不是就写成例如 “ a <= a; ”这种啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

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

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