Subject explains.
During simulaton runtime, there are three ways to read values of signals:
- Option 1: accessing objects through TCL command find and reading their values with the TCL command value
- Option 2: accessing objects through API (PLI/VPI) and reading their values with vpi_get_value or similar
- Option 3: accesisng objects through language by $display, $monitor etc.
Advantages in terms of speed/performance
- Option 1: no need to compile/elaborate. Recursion possible.
- Option 2: no need to compile/elaborate, faster because you don't TCL interpreter. Recursion possible.
- Option 3: n/a
Disadvantages
- Option 1: needs TCL interpreter
- Option 2: n/a
- Option 3: requires compilation/elaboration. Recursion is difficult.
Based on the assumptions above, accessing objects through API (PLI/VPI/DPI) is much faster.
Can anybody elaborate this?