• Variables are used only for convenience of describing behaviour.
• Variables are used and declared in a process however it cannot be used to communicate between processes.
• Variable assignments are done immediately and are executed sequentially.
• Variables may or may not represent physical wires.
• Signal assignments are done at the end of process.
• Signals represent physical wires in the circuit.
• Use variables in combinational processes because there is less simulation overhead.
• Order dependency
– Signal assignments are order independent.
– Variable assignments are order dependent.
– Signal assignments under a clocked process are translated into registers.
– Variable assignments under a clocked process may or may not be translated into registers.
Signals or Variables
Hardware inferred
Same process with order of statements changed
Hardware inferred
Hardware modeling examples “For loop”
information shared by www.irvs.info