What is the difference between the following two lines of Verilog code?
#5 a = b; a = #5 b;
#5 a = b; Wait five time units before doing the action for "a = b;". Value assigned to a will be the value of b 5 time units hence.
a = #5 b; Value of b is calculated and stored in an internal temp register. After five time units, assign this stored value to a.