阻塞和非阻塞的区别(用实例来说明)
1.不要看课本上面说的那些个理论,讲半天也说不到本质上面,尽在在那里扯概念。2.学习Verilog,要将其和硬件电路联系起来,写一个程序要大概的知道生成什么样的逻辑电路,这样才行。
下面举一个简单的例子,来分别的实现阻塞式和非阻塞
阻塞式
module block(clk, q);
inputclk;
outputq;
reg q;
reg a;
reg b = 1'b1;
always @(posedge clk)
begin
a = b;
q = a + 1'b1;
end
endmodule
非阻塞式
module block(clk, q); inputclk;
outputq;
reg q;
reg a;
reg b = 1'b1;
always @(posedge clk)
begin
a <= b;
q <= a + 1'b1;
end
endmodule
总结:说白了阻塞式和非阻塞的区别就是直线和触发器的区别,从RTL视图可以清晰看出。
页:
[1]