Blocking and non-blocking procedural assignments have time control built into their respective assignment statements.
• The pound sign ( # ) and the at sign ( @ ) are time control statements.
• These statements delay execution of the statement following them until the specified event is evaluated as true.
• The pound ( # ) delay is ignored for synthesis.