853 B
Verilog Guidelines:
These are some guidlines extracted from: Verilog Nonblocking Assignments With Delays, Myths & Mysteries http://www.sunburst-design.com/papers/CummingsSNUG2002Boston_NBAwithDelays.pdf
-
1 When modeling sequential logic, use nonblocking assignments.
-
2 When modeling latches, use nonblocking assignments.
-
3 When modeling combinational logic with an always block, use blocking assignments.
-
4 When modeling both sequential and combinational logic within the same always block, use nonblocking assignments.
-
5 Do not mix blocking and nonblocking assignments in the same always block.
-
6 Do not make assignments to the same variable from more than one always block.
-
7 Use $strobe to display values that have been assigned using nonblocking assignments.
-
8 Do not make assignments using #0 delays.