Skip to content

Question regarding the internals of pyhdl-if #15

@penguali

Description

@penguali

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions