verilog中没有always的@如何理解?1.图中注释说是高电平,然而posedge不是上升沿吗?2.图中的@前没有always,这和always @有何区别?我对此的理解是图中只执行一次,而always @可执行多次,

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 12:09:30
verilog中没有always的@如何理解?1.图中注释说是高电平,然而posedge不是上升沿吗?2.图中的@前没有always,这和always @有何区别?我对此的理解是图中只执行一次,而always @可执行多次,
xTnF~+JY.mԾGn؛EBZ & wΌͯBVZ`y|s;;猧͡PcuAi-'$5s{y-⻗fi:ޟzN]֭ƯU i_ɧT 1[ĭuRXoIikv 7},)å$!ٳI$68sxOiتq+C,\-rmoia:ϋq<)!hĈ28 FKK#q]O}q'⪮jQPI~+r'oâ^)#I b ɡpXP$ $8&d1( ?{MQ\c6`$ # E# A;K>1#@ԳM7|O:6nn)#Ӛ:q`mt̋5֭Rz1|5epkúiΪ&Y>!iRd!itI)yt$!~IOŔ?L+ǂP` 5Rk;fC- _bo%lc[i_bf!BldDOڷU.Sx~ٵu=0,@ @o֍u!ݺ5eX3>55nؘi` H~Sg.OPj,n lu7XZnl)b/=0@(@UУ.ҋCrPwHcfWّ*~i^3mW{=餛z4Ґ(#H2:Q.ALҪ4'!ƶx+8ܣ =u^g7:X*.h3tn kr w6`,z;/6\&=ϡF@RBVoXg^p]* צKL:;7j-A1|կ.Y T6k83P

verilog中没有always的@如何理解?1.图中注释说是高电平,然而posedge不是上升沿吗?2.图中的@前没有always,这和always @有何区别?我对此的理解是图中只执行一次,而always @可执行多次,
verilog中没有always的@如何理解?
1.图中注释说是高电平,然而posedge不是上升沿吗?
2.图中的@前没有always,这和always @有何区别?我对此的理解是图中只执行一次,而always @可执行多次,

verilog中没有always的@如何理解?1.图中注释说是高电平,然而posedge不是上升沿吗?2.图中的@前没有always,这和always @有何区别?我对此的理解是图中只执行一次,而always @可执行多次,
----------------------------------------
@(条件表达式) do_something;
表示等待条件表达式满足,然后do_something,然后就往下走了.通常用在testbench中,不可综合.
------------------------------------
always @(a or b or c) begin
do_something;
end
表示不停地监测a、b、c,一旦它们任何一个发生变化,就立刻do_something,并且这个“监测”是始终存在的.这种电路综合出来时组合逻辑电路.
------------------------------------
always @(posedge clk) begin
do_something;
end
表示不停地监测clk的上升沿,一旦监测到,就立刻do_something,并且这个“监测”是始终存在的.这种电路综合出来时时序逻辑电路.
当然,也可以把posedge改成negedge,那就成了监测下降沿.
带异步复位端的寄存器的写法类似是这样的
always @(posedge clk or negedge rst_n) begin // reset is active low
if(rst_n) reset_process;
else set_register_value;
end
//////////////////////////////////////
你的截图中显示的是testbench中的task中用到的“@事件”,它属于上面所说的第一种情况,是不可综合的,也就是根据这些代码不能生产实际的电路,只能用来仿真.