Skip to main content

Generate VHDL, SystemVerilog, html, rst, md, pdf, c headers from an IPXACT description

Project description

ipxact2systemverilog ipxact2rst ipxact2md ipxact2vhdl ipxact2c



This software takes an IP-XACT description of register banks, and generates synthesizable VHDL and SystemVerilog packages and ReStructuredText documents. It ONLY considers register bank descriptions. The software does not generate OVM or UVM test bench packages. In the example/tb directory there is an example of how to use the generated packages.


pip install ipxact2systemverilog

ipxact2systemverilog --srcFile FILE --destDir DIR
ipxact2rst --srcFile FILE --destDir DIR
ipxact2md --srcFile FILE --destDir DIR
ipxact2vhdl --srcFile FILE --destDir DIR
ipxact2c --srcFile FILE --destDir DIR



Testing the example file


If Modelsim is installed: :

make compile
make sim


You can use to convert to almost any fileformat.


To validate your xml :

xmllint --noout --schema ipxact2systemverilog/xml/component.xsd  example/input/test.xml


pip install docutils lxml tabulate mdutils

Dependencies used by makefile

These are not needed for ipxact2systemverilog, but used for generating some of the files in example/output

brew install pandoc

Working in development mode for pypi

rm -rf dist
pip3 install -e .
python3 sdist
twine upload dist/*


  • A better test bench for the generated packages should be implemented.
  • More complicated IPXACT files should be added and tried out.
  • Add support for the SystemVerilog generator to have a register field of an enumerated type.
  • Support DIM

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipxact2systemverilog-1.0.16.tar.gz (55.4 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page