Two types of Procedural Assignments
Blocking Assignment (=) : executed in the order they are specified in a sequential block
Nonblocking Assignment (<=) : allow scheduling of assignments without blocking execution of the statements that follow in a sequential block
- Recommended: Use Nonblocking assignments for clocked processes when writing synthesizable code.