Skip to main content

ipxact2systemverilog ipxact2rst ipxact2md ipxact2vhdl ipxact2c ipxact2py

CI

image

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.

Usage

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
ipxact2py --srcFile FILE --destDir DIR

# --xmlVersion defaults to 1.5. Pass 2022 for IEEE 1685-2022 files.
ipxact2systemverilog --srcFile FILE --destDir DIR --xmlVersion 2022

Development

See https://github.com/oddball/ipxact2systemverilog

python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
# In order to publish:
pip install build twine
python -m build
twine upload dist/*

Testing the example file

make

If Modelsim is installed: :

make compile
make sim

Note

You can use http://pandoc.org/demos.html to convert to almost any fileformat.

Validation

To validate your xml :

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

Dependencies

pip install docutils lxml mdutils

Dependencies used by makefile

These are not needed for ipxact2systemverilog, but used for generating some of the files in example/output. Instructions are for MacOsX, similiar packages are available for Linux and Windows.

brew install pandoc verilator nvc

# if you want to use sphinx
brew install texlive
sudo tlmgr install latexmk

TODO

  • 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
  • Eat some cheese and drink some wine 2024-06-20

Metadata

Release files for ipxact2systemverilog 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ipxact2systemverilog 1.1.0
File Size Uploaded
ipxact2systemverilog-1.1.0.tar.gz 313.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ipxact2systemverilog 1.1.0
File Interpreter ABI Platform
ipxact2systemverilog-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 853.6 kB

Release files / ipxact2systemverilog-1.1.0.tar.gz

Download URL ipxact2systemverilog-1.1.0.tar.gz
Size 313.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a4c0203fa3013f4faccb971245459f1c31d673d9a36be9b823839577790cc09b
BLAKE2b-256 checksum
How to use checksums
6260355f6e2302bc200fc58cb63107dad7ec2722830d19d563bcf2f3c91b9f62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release files / ipxact2systemverilog-1.1.0-py3-none-any.whl

Download URL ipxact2systemverilog-1.1.0-py3-none-any.whl
Size 539.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f17c87fb0c4134c6c321af502d12292636d5311f2a1dc1974323a0f65314a4b2
BLAKE2b-256 checksum
How to use checksums
bfeac588de7c92971d48c4ec0823b82dadde3e46f67fb91fad44c5b9e6578f21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.30

2 release files

1.0.28

2 release files

1.0.27

2 release files

1.0.26

2 release files

1.0.23

1 release file

1.0.22

1 release file

1.0.21

1 release file

1.0.20

1 release file

1.0.19

1 release file

1.0.18

1 release file

1.0.17

1 release file

1.0.16

1 release file

1.0.15

1 release file

1.0.14

1 release file

1.0.13

1 release file

1.0.12

1 release file

1.0.11

1 release file

1.0.10

1 release file

1.0.9

1 release file

1.0.8

1 release file

1.0.7

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

1.0.0.dev0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page