你应该看一看例子:
always@(posedge clk)
begin
b=a;
c=b;
end
和
always@(posedge clk)
begin
b<=a;
c<=b;
end
这两句的不同。
前一个,所谓阻塞,是指b=a这个赋值完成之前,后面的c=b语句是不执行的,所以这个always块把a的现值传给b,b又传给了c,相当于把a赋给c;
后一个,这两个赋值没有前后,他把a的现值赋给b;b把自己当前值赋给c,所以没有把a的现值传给c;
你画一下威廉希尔官方网站
图,或者综合后看一下威廉希尔官方网站
,可以看出其中的区别。
你应该看一看例子:
always@(posedge clk)
begin
b=a;
c=b;
end
和
always@(posedge clk)
begin
b<=a;
c<=b;
end
这两句的不同。
前一个,所谓阻塞,是指b=a这个赋值完成之前,后面的c=b语句是不执行的,所以这个always块把a的现值传给b,b又传给了c,相当于把a赋给c;
后一个,这两个赋值没有前后,他把a的现值赋给b;b把自己当前值赋给c,所以没有把a的现值传给c;
你画一下威廉希尔官方网站
图,或者综合后看一下威廉希尔官方网站
,可以看出其中的区别。
举报