(1) 原则1:时序电路建模时,用非阻塞赋值。
(2) 原则2:锁存器电路建模时,用非阻塞赋值。
(3) 原则3:用always写组合逻辑时,采用阻塞赋值。
(4)原则4:在同一个always块中同时建立组合逻辑和时序逻辑电路时,用非阻塞赋值。
(5)原则5:在同一个always块中不要同时用非阻塞赋值和阻塞赋值。
(6)原则6:不要在多个always块中为同一个变量赋值。
(7)原则7:用$strobe系统任务来显示用非阻塞赋值的变量值。
(8)原则8:在赋值时不要使用 #0 延时。
遵循以上原则,有助于正确的编写可综合硬件,并且可以消除90%~100%在仿真时可能出现的竞争冒险现象。