阻塞赋值: 用了= 号
非阻塞赋值: 用了<= 号
假设初始化为a = 1, b = 2
阻塞赋值:
// 初始化a = 1, b = 2
always@(posedge clk)
begin
b = a;
c = b;
end
//运行后c = b = 1
非阻塞赋值:
// 初始化a = 1, b = 2
always@(posedge clk)
begin
b <= a;
c <= b;
end
//运行后b = 1, c = 2
建议:
在 assign 中用 = 号
在 always 中用 <= 号