ipxact2systemverilog ipxact2rst ipxact2md ipxact2vhdl ipxact2c ipxact2py
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)
| File | Size | Uploaded | |
|---|---|---|---|
| ipxact2systemverilog-1.1.0.tar.gz | 313.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|