verilog中用于阻止分配的硬件解释



硬件是否以相同的方式解释两个verilog代码?

非阻塞代码:

module nonblock (input logic clock);   
logic a, b, c;
always @(posedge clock)  
begin 
   a <= b;  
   b <= c;
end  
endmodule

阻止代码:

module block (input logic clock);   
logic a, b, c;
always @(posedge clock)  
begin 
   a = b;  
   b = c;
end  
endmodule

它们不会以相同的方式合成。使用块分配的代码将在一行中创建两个触发器。使用非阻塞分配的代码只会在一个时钟周期内将a分配给c。您可以在模拟中验证这一点。

以下是有关Verilog 中阻塞与非阻塞的更多信息

最新更新