Skip to main content

An open-source HDL register generator fast enough to run in real time.

Project description

Website Gitlab Gitter pypi License Python line coverage

The hdl_registers project is an open-source HDL register generator fast enough to run in real time. It can easily be plugged into your development environment so that VHDL register code generation is done before each build and simulation. For your FPGA release artifacts it can generate headers and documentation.

See documentation on the website: https://hdl-registers.com

Check out the source code on gitlab: https://gitlab.com/hdl_registers/hdl_registers

The typical use case is to let hdl_registers parse a .toml file with register definitions that make up a register map. It is also possible to work directly with the Python abstractions as well, without using a data file. The following code can be generated by the tool:

  • VHDL package containing the register constant values, as well as a type with all the registers and their modes. This can be used with a generic register file in your VHDL code.

  • HTML website with documentation of the registers and constants.

  • C header with constant values, register addresses, and register field information.

  • C++ header and implementation with constant values, and setters/getters for registers and fields. The header has an abstract interface class which can be used for mocking.

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

hdl_registers-3.0.2.tar.gz (41.8 kB view details)

Uploaded Source

File details

Details for the file hdl_registers-3.0.2.tar.gz.

File metadata

  • Download URL: hdl_registers-3.0.2.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.2

File hashes

Hashes for hdl_registers-3.0.2.tar.gz
Algorithm Hash digest
SHA256 0511017f74d8c3a381c0d49af4bb1bdc185c82a5ee9bf92af0d2b1a631e4c7ba
MD5 c0dda59908e6ae292473f334c789bfad
BLAKE2b-256 d49d1366766e5a4ac89946522563fc50f481b822b2c648978819c293d479559f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page