ATA
发表于 2010-6-26 08:14:34
wire怎么能储存呢!
CCIE
发表于 2010-6-26 09:25:52
在ASSIGN 赋值的时候,被赋值的只能是wire<br>
在ALWAYS中,被赋值的只能是REG<br>
在initial中,只能是reg
UFP
发表于 2010-6-26 11:25:40
原帖由 fc378 于 2006-4-22 11:57 发表<br>
怎样区分wire和reg?先谢谢各位大虾了 可否这样理解:<br>
在电路中,wire表示的就是电路连接,像网表一样,逻辑是随所连接的信号变化而变化的;而reg则是插了寄存器的,跟着时钟的步子来变化
longt
发表于 2010-6-26 12:33:09
个人理解:不对请指正<br>
<br>
<br>
wire : 形象理解一条导线;只能用 ASSIGN 赋值,输入信号理解为wire ,没有声明的输出或信号都为wire;<br>
REG: 形象理解为导线或触发器;只能在 always 或initial语句中赋值,需要说明的REG在使用:=赋值时相当于wire
ICE
发表于 2010-6-26 13:13:58
收获不少啊
CHA
发表于 2010-6-26 14:12:33
从vhdl for synthnsis出发 一个signal在clock body里是register, 在non-clock body里,可以是wire,可以是latch
longtime
发表于 2010-6-26 15:01:58
从仿真的角度来说:<br>
wire对应于连续赋值,如assign<br>
reg对应于过程赋值,如always,initial<br>
<br>
从综合的角度来说(也就是电路)<br>
wire型的变量综合出来一般是一根导线<br>
reg变量在always块中有两种情况:<br>
always后的敏感表中是(a or b or c)形式的,也就是不带时钟边沿的,综合出来还是组合逻辑<br>
always后的敏感表中是(posedge clk)形式的,也就是带边沿的,综合出来一般是时序逻辑,会包含触发器(Flip-Flop)
longt
发表于 2010-6-26 16:05:42
wire应当不能存储吧,初学者
CHA
发表于 2010-6-26 16:32:20
其实很简单,reg就是寄存器,只有寄存器才能够被赋值,wire是连线,只是起的连接的作用。<br>
关键还是要从电路角度理解这个问题,仔细想想分析一下就可以了
AAT
发表于 2010-6-26 17:21:03
是不是说<br>
wire是随驱动变化的 ,跟clk无关;<br>
而reg只能在有事件变化时才能被赋值?<br>
对么?