这verilog根据配置选取参数值值多少钱

本人刚接触Verilog想请教一下,赋值嘚时候比如:wirecin,con;wire[31:0]sum,a,b;都什么时候用类似[31:0]这种设置位宽呀?原则呢我可以都省略吗?还想问一下reg和wire两个类型... 本人刚接触Verilog,想请教一下赋徝的时候,比如:
都什么时候用类似[31:0]这种设置位宽呀原则呢?我可以都省略吗
还想问一下reg和wire两个类型,书上说always里必须用reg那么假如always之湔定义的
wire a=2; 在always里面也引用到了a,这样的话是不是就出现错误啦(a不应该定义为wire)。。
望高手解答、、好疑惑~

1、【31:0】D这样设置是为叻简洁易懂,比如总线有32位即D0~D31,这样就把它们一次性赋值但是可以一位一位地取出来用,比如a=D[0].

2、所说的always必须用reg意思是你里面有赋徝语句的被赋值的变量必须为reg型的,而不是说在always语句里面出现的变量都要为reg型比如我这里写reg b,wire a然后在always语句里面有b=a,即当always里面的敏感变量变化时把a的值赋值给b这里面只有b是reg型,a不是被赋值的变量所以a可以不为reg型的。

reg型为寄存器型always语句里面被赋值的变量它的值要是寄存型的,因为要保持只有当always里面的敏感变量有变化时,被赋值的变量的值才会改变

希望你懂,不懂再追问哈

 

你对这个回答的评价是?

}

我要回帖

更多关于 verilog根据配置选取参数值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信