Open mpriestleyidex opened 1 month ago
How do I make a DPI import a context import?
Currently all import statements are hardcoded to non-context import, since I don't have plan to expose svScope
to the python land. That being said, I will add a context
keyword to enable context
keyword code generation.
How do I call my DPI exports from python?
This is not supported in the library yet. I'm working on that branch right now. Will let you know once I'm done with the implementation.
I think svScope
manipulation would also be necessary. Not all exports would be in the same scope as the context import
.
Maybe there's a distinction here between calling exports created by your code generation, and calling pre-existing exports?
Anyway, do what you're planning to do with exports, and we'll go from there.
It's a fairly well trodden path to write testcases in C. The simulator calls the C testcase, which in turn interacts with the simulation via various DPI export callbacks. A trivial example is https://www.edaplayground.com/x/4D3t
But of course we'd like to do that in Python, and hide all the C away.
pysv
looks like it could make this happen, but:context
import?pysv
help with that, or is it sufficiently easy to usectypes
orpybind11
directly?FWIW I've already achieved this using CFFI, but there's a lot of boilerplate and it wasn't easy to work out what to do.