A Python based VHDL app to improve productivity of VHDL designs
Goal of this app is to help VHDL designers to quickly adopt modern verification technologies. Benefits include:
- Coverage Driven Verification
- Structured logging
- Reusable, Layered testbench components
- Separate testcases from testbench etc.
It is developed in Python. Currently it supports the popular OSVVM styled testbenches. If you need a variant such as VUnit, UVVM etc. drop us a note, we will consider depending on customer interests and bandwidth.
We use YAML file to specify the DUT interface. More details can be found at:
YAML for VHDL Design interface specification
Given a YAML file as input, this app generates necessary files to simulate a given DUT.
Python 3.x Modelsim - 2020.1 or later OSVVM recent release
To run a simple demo, do the following steps:
- cd examples
- cd up_down_counter
- python3 ../../py_src/af_pyvhg_osvvm.py -y dut_src/af_up_dn_counter.yml
This should create a bunch of TB files and a sim_dir to run simulations.
For any new design, please create a YAML file as shown in this example: dut_src/af_up_dn_counter.yml
Once the step-3 above is done, follow the steps shown in README file generated by the app. Quick steps:
- cd sim_dir
- make mti
This is an ongoing development project with active features being added. Feel free to open a GitHub issue if you need new features, bug reports etc. Thanks!
- Support for generics
- Functional coverage
- Other EDA tools support