-
Notifications
You must be signed in to change notification settings - Fork 11
Description
I know that external tasks and functions can be connected to the simulator in two different ways, either through the VPI or through the DPI-C. If I understand correctly, cocotb relies on the VPI and generalizes several other APIs in one abstract GPI.
Any cocotb function registers a simulation callback call at specific points during a simulation time step, which helps execute Python functions externally.
Now, pyhdl-if as described in the documentation, relies on the DPI-C, which can either import Python functions or export SV functions, which eventually helps calling them from Python.
Do I understand correctly that, the import/ export functions are implemented through the DPI-C, and calling these functions is similar to cocotb, through the VPI?
So pyhdl-if uses both APIs kinda?
I really appreciate any information you can provide.
Ali