一、阻塞和非阻塞 表示阻塞过程赋值Blocking Procedural assignment, 表示非阻塞过程赋值(Non-blocking Procedural assignment)。 过程赋值的过程可以理解为两个步骤右式计算和左式赋值。 例如 a a 1先计算右边的 a1然后将这个值赋给左边的a。 阻塞赋值可以认为 • 计算和赋值一步完成 • 过程中的执行流被阻塞直到赋值完成 • 在同一时间步上的并发语句的计算被阻塞直到赋值完成 非阻塞赋值可以理解为 • 计算和赋值分成两步 1. 右式计算立即进行 2. 左式赋值延迟到当前同一时间步的其它右式计算都完成以后进行 • 过程中的执行流继续进行不被阻塞二、寄存器模型always (posedge clk)beginq1 d;q2 q1;q3 q2;endalways (posedge clk)beginq1 d;q2 q1;q3 q2;end