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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 18462|回复: 12

Verilog中case语句嵌套出现的问题

[复制链接]
发表于 2003-9-10 15:13:45 | 显示全部楼层 |阅读模式

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

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

x
最近,我在写程序的时候出现一个问题:组合逻辑的always块出现了不希望的锁存器。我把所有的case都加上了default,还是不好使。这个程序没有什么奇怪的地方,就是使用了case的嵌套。不知道大家有没有过相同的经历,如何解决这个问题。
发表于 2003-9-10 15:32:53 | 显示全部楼层

Verilog中case语句嵌套出现的问题

always中的赋值语句要求对象是reg类型的
 楼主| 发表于 2003-9-10 15:56:28 | 显示全部楼层

Verilog中case语句嵌套出现的问题

是呀,用always块可以使用reg型对象来形成组合逻辑,如果条件定义完全的话,应该不会出现锁存器的。
发表于 2003-9-10 16:05:10 | 显示全部楼层

Verilog中case语句嵌套出现的问题

确实存在这个问题,我也遇到过,不是说加了defaule就一定不会生成latch。虽然这个问题可能可以用full case的编译向导解决,但是我现在也还没研究到底为什么,有空做做实验,研究一下。
发表于 2003-9-10 16:08:43 | 显示全部楼层

Verilog中case语句嵌套出现的问题

case语句里还有其他的判断语句吗?如果有并且判断信号不在敏感列表里,是会生成latch的
发表于 2003-9-10 16:14:50 | 显示全部楼层

Verilog中case语句嵌套出现的问题

在嵌套情况下,敏感变量写全了,并且加了default也有可能生成latch
发表于 2003-9-10 16:33:57 | 显示全部楼层

Verilog中case语句嵌套出现的问题

能给个例子吗?想研究下
 楼主| 发表于 2003-9-10 16:42:08 | 显示全部楼层

Verilog中case语句嵌套出现的问题

我解决了这个问题。出现这个问题的原因是case语句不能套用,我把简单的分支都改成if-else结构,复杂的分支还是使用case,这样就没有锁存了。
在综合结束后,出现这样的信息:case choices are mutually exclusive; inferring parallel case。大家帮忙看一下,这是怎么回事,是不是由于case分支中的存在有相同的结果的两个分支而导致的?
发表于 2003-9-10 16:50:57 | 显示全部楼层

Verilog中case语句嵌套出现的问题

要不把程序贴出来大家讨论一下把,我以前也是用一些方法解决以后就没有深究,所以现在没搞清楚原因,干脆借这个机会解决一下?
发表于 2003-9-10 17:11:58 | 显示全部楼层

Verilog中case语句嵌套出现的问题

长见识
一直以为always一定会使用reg或latch呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-20 09:13 , Processed in 0.038767 second(s), 10 queries , Gzip On, Redis On.

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