Provides APIs to support writing transactional data to Perfetto traces, with a focus on design and verification (DV) environments.
Integrations are provided for:
- SystemVerilog environments (low-level API)
- UVM environments (via the recorder)
- Python environments (low-level API)
- Zuspec Python environments
Python environments have access to both a pure-Python and C++-implemented API. SystemVerilog environments require a native implementation. The Python module must be able to auto-detect the presence of a native implementation and use it.
The library, with both pure-Python and binary-wheel implementation, is released as a Python wheel on pypi.org
Transactions are recorded using a low-level C API. This same implementation is used for Python/Native, Plain-C, and SystemVerilog clients.