.. image:: https://hdl-registers.com/logos/banner.png
:alt: Project banner
:align: center
|
.. |pic_website| image:: https://hdl-registers.com/badges/website.svg
:alt: Website
:target: https://hdl-registers.com
.. |pic_repository| image:: https://hdl-registers.com/badges/repository.svg
:alt: Repository
:target: https://github.com/hdl-registers/hdl-registers
.. |pic_chat| image:: https://hdl-registers.com/badges/chat.svg
:alt: Chat
:target: https://github.com/hdl-registers/hdl-registers/discussions
.. |pic_pip_install| image:: https://hdl-registers.com/badges/pip_install.svg
:alt: pypi
:target: https://pypi.org/project/hdl-registers/
.. |pic_license| image:: https://hdl-registers.com/badges/license.svg
:alt: License
:target: https://hdl-registers.com/rst/about/license_information.html
.. |pic_ci_status| image:: https://github.com/hdl-registers/hdl-registers/actions/workflows/ci.yml/badge.svg?branch=main
:alt: CI status
:target: https://github.com/hdl-registers/hdl-registers/actions/workflows/ci.yml
.. |pic_python_line_coverage| image:: https://hdl-registers.com/badges/python_coverage.svg
:alt: Python line coverage
:target: https://hdl-registers.com/python_coverage_html
|pic_website| |pic_repository| |pic_pip_install| |pic_license| |pic_chat| |pic_ci_status|
|pic_python_line_coverage|
The hdl-registers project is an open-source HDL register interface code generator fast enough to run
in real time.
It makes FPGA/ASIC development more fun by automating a lot of time-consuming manual work.
It also minimizes the risk of bugs by removing the need for duplicate information.
`Read more <https://hdl-registers.com/rst/about/about.html>`_
**See documentation on the website**: https://hdl-registers.com
**Check out the source code on GitHub**: https://github.com/hdl-registers/hdl-registers
The following features are supported:
* Register fields
* `Bit <https://hdl-registers.com/rst/field/field_bit.html>`_.
* `Signed/unsigned fixed-point bit vector <https://hdl-registers.com/rst/field/field_bit_vector.html>`_.
* `Enumeration <https://hdl-registers.com/rst/field/field_enumeration.html>`_.
* `Positive/negative-range integer <https://hdl-registers.com/rst/field/field_integer.html>`_.
* `Register arrays <https://hdl-registers.com/rst/basic_feature/basic_feature_register_array.html>`_.
* `Default registers <https://hdl-registers.com/rst/basic_feature/basic_feature_default_registers.html>`_.
* `Register constants <https://hdl-registers.com/rst/constant/constant_overview.html>`_.
Registers can be defined using
a `TOML/JSON/YAML data file <https://hdl-registers.com/rst/user_guide/toml_format.html>`_
or the `Python API <https://hdl-registers.com/rst/user_guide/user_guide_python_api.html>`_.
The following code can be generated:
* `VHDL <https://hdl-registers.com/rst/generator/generator_vhdl.html>`_
* AXI-Lite register file wrapper using records and native VHDL types for values.
* Support packages for compact and efficient simulation.
* `C++ <https://hdl-registers.com/rst/generator/generator_cpp.html>`_
* Complete class with setters and getters for registers and fields.
* Includes an abstract interface header for unit test mocking.
* `C header <https://hdl-registers.com/rst/generator/generator_c.html>`_
with register addresses and field information.
* `HTML <https://hdl-registers.com/rst/generator/generator_html.html>`_
website with documentation of registers and fields.
The tool can also be extended by
`writing your own code generator <https://hdl-registers.com/rst/extensions/extensions_custom_generator.html>`_
using a simple but powerful API.
This project is mature and used in many production environments.
The maintainers place high focus on quality, with everything having good unit test coverage and a
thought-out structure.
Raw data
{
"_id": null,
"home_page": null,
"name": "hdl-registers",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "python, c, html, asic, generator, fpga, cplusplus, register, vhdl, eda, rtl, csr, axi, axi-lite, register-interface",
"author": "Lukas Vik",
"author_email": "10241915+LukasVik@users.noreply.github.com",
"download_url": "https://files.pythonhosted.org/packages/9d/40/087044900e4785f3485335f2b83cb58ca8b02ec042b4c47ae4e4ba963895/hdl_registers-5.1.3.tar.gz",
"platform": null,
"description": ".. image:: https://hdl-registers.com/logos/banner.png\n :alt: Project banner\n :align: center\n\n|\n\n.. |pic_website| image:: https://hdl-registers.com/badges/website.svg\n :alt: Website\n :target: https://hdl-registers.com\n\n.. |pic_repository| image:: https://hdl-registers.com/badges/repository.svg\n :alt: Repository\n :target: https://github.com/hdl-registers/hdl-registers\n\n.. |pic_chat| image:: https://hdl-registers.com/badges/chat.svg\n :alt: Chat\n :target: https://github.com/hdl-registers/hdl-registers/discussions\n\n.. |pic_pip_install| image:: https://hdl-registers.com/badges/pip_install.svg\n :alt: pypi\n :target: https://pypi.org/project/hdl-registers/\n\n.. |pic_license| image:: https://hdl-registers.com/badges/license.svg\n :alt: License\n :target: https://hdl-registers.com/rst/about/license_information.html\n\n.. |pic_ci_status| image:: https://github.com/hdl-registers/hdl-registers/actions/workflows/ci.yml/badge.svg?branch=main\n :alt: CI status\n :target: https://github.com/hdl-registers/hdl-registers/actions/workflows/ci.yml\n\n.. |pic_python_line_coverage| image:: https://hdl-registers.com/badges/python_coverage.svg\n :alt: Python line coverage\n :target: https://hdl-registers.com/python_coverage_html\n\n|pic_website| |pic_repository| |pic_pip_install| |pic_license| |pic_chat| |pic_ci_status|\n|pic_python_line_coverage|\n\nThe hdl-registers project is an open-source HDL register interface code generator fast enough to run\nin real time.\nIt makes FPGA/ASIC development more fun by automating a lot of time-consuming manual work.\nIt also minimizes the risk of bugs by removing the need for duplicate information.\n`Read more <https://hdl-registers.com/rst/about/about.html>`_\n\n**See documentation on the website**: https://hdl-registers.com\n\n**Check out the source code on GitHub**: https://github.com/hdl-registers/hdl-registers\n\nThe following features are supported:\n\n* Register fields\n\n * `Bit <https://hdl-registers.com/rst/field/field_bit.html>`_.\n * `Signed/unsigned fixed-point bit vector <https://hdl-registers.com/rst/field/field_bit_vector.html>`_.\n * `Enumeration <https://hdl-registers.com/rst/field/field_enumeration.html>`_.\n * `Positive/negative-range integer <https://hdl-registers.com/rst/field/field_integer.html>`_.\n\n* `Register arrays <https://hdl-registers.com/rst/basic_feature/basic_feature_register_array.html>`_.\n* `Default registers <https://hdl-registers.com/rst/basic_feature/basic_feature_default_registers.html>`_.\n* `Register constants <https://hdl-registers.com/rst/constant/constant_overview.html>`_.\n\nRegisters can be defined using\na `TOML/JSON/YAML data file <https://hdl-registers.com/rst/user_guide/toml_format.html>`_\nor the `Python API <https://hdl-registers.com/rst/user_guide/user_guide_python_api.html>`_.\nThe following code can be generated:\n\n* `VHDL <https://hdl-registers.com/rst/generator/generator_vhdl.html>`_\n\n * AXI-Lite register file wrapper using records and native VHDL types for values.\n * Support packages for compact and efficient simulation.\n\n* `C++ <https://hdl-registers.com/rst/generator/generator_cpp.html>`_\n\n * Complete class with setters and getters for registers and fields.\n * Includes an abstract interface header for unit test mocking.\n\n* `C header <https://hdl-registers.com/rst/generator/generator_c.html>`_\n with register addresses and field information.\n* `HTML <https://hdl-registers.com/rst/generator/generator_html.html>`_\n website with documentation of registers and fields.\n\nThe tool can also be extended by\n`writing your own code generator <https://hdl-registers.com/rst/extensions/extensions_custom_generator.html>`_\nusing a simple but powerful API.\n\nThis project is mature and used in many production environments.\nThe maintainers place high focus on quality, with everything having good unit test coverage and a\nthought-out structure.\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "An open-source HDL register interface code generator fast enough to run in real time",
"version": "5.1.3",
"project_urls": {
"Changelog": "https://hdl-registers.com/rst/about/release_notes.html",
"Documentation": "https://hdl-registers.com/",
"Homepage": "https://hdl-registers.com",
"Issues": "https://github.com/hdl-registers/hdl-registers/issues",
"Source": "https://github.com/hdl-registers/hdl-registers"
},
"split_keywords": [
"python",
" c",
" html",
" asic",
" generator",
" fpga",
" cplusplus",
" register",
" vhdl",
" eda",
" rtl",
" csr",
" axi",
" axi-lite",
" register-interface"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5371089bc013d2bfe9f492fee78cfd1514c5af08b8e44c0e3650014ab4f40ad7",
"md5": "cdc51f6c88458b72433edffd8d60e47b",
"sha256": "c8b96d004720a30375bc68117a4e27dd4abbf37d4542b28becdc3ec87d399461"
},
"downloads": -1,
"filename": "hdl_registers-5.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "cdc51f6c88458b72433edffd8d60e47b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 144735,
"upload_time": "2024-04-03T07:05:28",
"upload_time_iso_8601": "2024-04-03T07:05:28.097351Z",
"url": "https://files.pythonhosted.org/packages/53/71/089bc013d2bfe9f492fee78cfd1514c5af08b8e44c0e3650014ab4f40ad7/hdl_registers-5.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9d40087044900e4785f3485335f2b83cb58ca8b02ec042b4c47ae4e4ba963895",
"md5": "921c9d5ad45d43dbdee42fd1d7424dab",
"sha256": "0450c87a120c6882c745d106c28537cc7ac9918e39a82f9f45dee4c50b636600"
},
"downloads": -1,
"filename": "hdl_registers-5.1.3.tar.gz",
"has_sig": false,
"md5_digest": "921c9d5ad45d43dbdee42fd1d7424dab",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 89001,
"upload_time": "2024-04-03T07:05:30",
"upload_time_iso_8601": "2024-04-03T07:05:30.116947Z",
"url": "https://files.pythonhosted.org/packages/9d/40/087044900e4785f3485335f2b83cb58ca8b02ec042b4c47ae4e4ba963895/hdl_registers-5.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-03 07:05:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hdl-registers",
"github_project": "hdl-registers",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "hdl-registers"
}