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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4596|回复: 14

关于verilog的几点疑问

[复制链接]
发表于 2009-10-17 21:40:31 | 显示全部楼层 |阅读模式

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

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

x
1、请问verilog中:
1)4'h9,4'd9有什么区别?
2)4'd1,4'h1,4'b1又有什么区别?
我在写程序的过秤中经常遇到熟知的问题二相当的头疼。
依照老师的说法:1)中,4'h9指的是用四位二进制数表示的16进制数9,4'd9指的是用四位二进制数表示的十进制数9,那么他们相等么?
但是我做过测试,上面的那种说法似乎对又似乎不对。请高手指点!!!!!!!
2、verilog中经常涉及到在两个always中对同一个变量进行赋值,但是这样的话,在编译的时候就会提示出错,因为两个always之间可能存在冲突!请问优美有什么好的办法可一达到要求的效果,但又可以避免这种冲突。
谢谢指点!
发表于 2009-10-19 10:11:24 | 显示全部楼层
写代码的过程中,还是尽量统一的好,实用性和可读性最主要,不需要花哨的语言形式!
发表于 2009-10-19 11:31:30 | 显示全部楼层
对于1,没啥区别,但尽量统一

对于2,要些可综合的rtl,同一个变量只能在一个always中赋值,对于行为级别的rtl,可以在不同地方赋值,但你必须清楚赋值的时间顺序。
发表于 2009-10-19 11:33:45 | 显示全部楼层
楼上正确
 楼主| 发表于 2009-10-23 09:45:52 | 显示全部楼层
(1)请问8‘h30和8‘d30,4‘h10和4’d10它们分别相等么?各代表什么意义?
(2)有没有4’d30和4‘h30这两种写法,或者它们这样是否是对的?
发表于 2009-10-23 09:51:27 | 显示全部楼层
8‘h30是十进制的48,而 8'd30就是十进制的30。
建议LZ先把基本的进制问题搞清楚,剩下的就是coding style的问题了。
发表于 2009-10-23 10:28:33 | 显示全部楼层
对同一个变量赋值要放在一个模块中,利用使能条件来区分什么时候来赋什么值,这样在任何时候信号只会有一种驱动来驱动它,要不然有两个驱动同时对同一个线赋值,这肯定会冲突的啊,这样理解你就知道不应该在两个always模块中同时对一个信号赋值了。
 楼主| 发表于 2009-10-28 11:25:36 | 显示全部楼层
有没有4’d30和4‘h30这两种写法,或者它们这样是否是对的?
发表于 2009-10-28 11:43:09 | 显示全部楼层
ls的你还是没有理解这部分语法
4’d30和4’h30 写法没问题 但是要注意因为只有4位宽 很多位会被截掉
实际的值就不是30d和30h了
 楼主| 发表于 2009-10-29 14:55:40 | 显示全部楼层
哦,明白了!!!!!!!!!!!!!!!!!!!!!!!!!!
谢谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-23 12:40 , Processed in 0.045158 second(s), 9 queries , Gzip On, Redis On.

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