# ipxact2systemverilog ipxact2rst ipxact2md ipxact2vhdl ipxact2c
[![image](https://circleci.com/gh/oddball/ipxact2systemverilog.svg?style=shield)](https://circleci.com/gh/oddball/ipxact2systemverilog)
[![image](https://badge.fury.io/py/ipxact2systemverilog.svg)](https://pypi.python.org/pypi/ipxact2systemverilog/)
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
```bash
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
```
## Development
See https://github.com/oddball/ipxact2systemverilog
## Testing the example file
```bash
make
```
If Modelsim is installed: :
```bash
make compile
make sim
```
## Note
You can use <http://pandoc.org/demos.html> to convert to almost any
fileformat.
## Validation
To validate your xml :
```bash
xmllint --noout --schema ipxact2systemverilog/xml/component.xsd example/input/test.xml
```
## Dependencies
```bash
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
```bash
brew install pandoc
# needed for sphinx
brew install texlive
sudo tlmgr install latexmk
```
## Working in development mode for pypi
```bash
rm -rf dist
pip3 install -e .
python3 setup.py sdist
twine upload dist/*
```
## 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
Raw data
{
"_id": null,
"home_page": "https://github.com/oddball/ipxact2systemverilog",
"name": "ipxact2systemverilog",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": "",
"keywords": "ipxact2systemverilog ipxact2vhdl VHDL SystemVerilog html rst md pdf IPXACT",
"author": "oddball",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/38/5d/e27c20a0300d8528451a8c34e0b4b4142a5d681c1ab6bc320ee48cf92bbf/ipxact2systemverilog-1.0.23.tar.gz",
"platform": null,
"description": "# ipxact2systemverilog ipxact2rst ipxact2md ipxact2vhdl ipxact2c\n\n[![image](https://circleci.com/gh/oddball/ipxact2systemverilog.svg?style=shield)](https://circleci.com/gh/oddball/ipxact2systemverilog)\n\n[![image](https://badge.fury.io/py/ipxact2systemverilog.svg)](https://pypi.python.org/pypi/ipxact2systemverilog/)\n\nThis software takes an IP-XACT description of register banks, and\ngenerates synthesizable VHDL and SystemVerilog packages and\nReStructuredText documents. It ONLY considers register bank\ndescriptions. The software does not generate OVM or UVM test bench\npackages. In the example/tb directory there is an example of how to use\nthe generated packages.\n\n## Usage\n\n```bash\npip install ipxact2systemverilog\n\nipxact2systemverilog --srcFile FILE --destDir DIR\nipxact2rst --srcFile FILE --destDir DIR\nipxact2md --srcFile FILE --destDir DIR\nipxact2vhdl --srcFile FILE --destDir DIR\nipxact2c --srcFile FILE --destDir DIR\n```\n\n## Development\n\nSee https://github.com/oddball/ipxact2systemverilog\n\n## Testing the example file\n\n```bash\nmake\n```\n\nIf Modelsim is installed: :\n\n```bash\nmake compile\nmake sim\n```\n\n## Note\n\nYou can use <http://pandoc.org/demos.html> to convert to almost any\nfileformat.\n\n## Validation\n\nTo validate your xml :\n\n```bash\nxmllint --noout --schema ipxact2systemverilog/xml/component.xsd example/input/test.xml\n```\n\n## Dependencies\n\n```bash\npip install docutils lxml mdutils\n```\n\n## Dependencies used by makefile\n\nThese are not needed for ipxact2systemverilog, but used for generating\nsome of the files in example/output\n\n```bash\nbrew install pandoc\n\n# needed for sphinx\nbrew install texlive\nsudo tlmgr install latexmk\n```\n\n## Working in development mode for pypi\n\n```bash\nrm -rf dist\npip3 install -e .\npython3 setup.py sdist\ntwine upload dist/*\n```\n\n## TODO\n\n- A better test bench for the generated packages should be implemented.\n- More complicated IPXACT files should be added and tried out.\n- Add support for the SystemVerilog generator to have a register field\n of an enumerated type.\n- Support DIM\n\n\n\n",
"bugtrack_url": null,
"license": "GPL",
"summary": "Generate VHDL, SystemVerilog, html, rst, md, pdf, c headers from an IPXACT description",
"version": "1.0.23",
"project_urls": {
"Homepage": "https://github.com/oddball/ipxact2systemverilog"
},
"split_keywords": [
"ipxact2systemverilog",
"ipxact2vhdl",
"vhdl",
"systemverilog",
"html",
"rst",
"md",
"pdf",
"ipxact"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "385de27c20a0300d8528451a8c34e0b4b4142a5d681c1ab6bc320ee48cf92bbf",
"md5": "b31efced7fba27684321bf1f7e3efb62",
"sha256": "f46819c9737365ccabe2c837841b4bd106f4fd6d3feab9746e9e355f44c3294e"
},
"downloads": -1,
"filename": "ipxact2systemverilog-1.0.23.tar.gz",
"has_sig": false,
"md5_digest": "b31efced7fba27684321bf1f7e3efb62",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 56337,
"upload_time": "2023-11-26T10:38:15",
"upload_time_iso_8601": "2023-11-26T10:38:15.840540Z",
"url": "https://files.pythonhosted.org/packages/38/5d/e27c20a0300d8528451a8c34e0b4b4142a5d681c1ab6bc320ee48cf92bbf/ipxact2systemverilog-1.0.23.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-26 10:38:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "oddball",
"github_project": "ipxact2systemverilog",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"circle": true,
"requirements": [],
"lcname": "ipxact2systemverilog"
}