Generate Rust code for accessing control/status registers from a SystemRDL description.
This is currently in a beta state. Feel free to try it out and report any bugs encountered.
For documentation including API reference, configuration options, and detailed examples, visit:
PeakRDL-rust Documentation on Read the Docs
It can be installed from PyPI using
pip install peakrdl-rust[cli]For usage available options, use
peakrdl rust --help- Arrays
- Enum encoding
- Reg impl with regwidth != accesswidth
- Impl Default for registers
- Test generator
- Add field constants (width, offset, etc.)
- Impl Debug for registers
- Add ARCHITECTURE.md
- Find/generate additional test input
- Mem components
- More efficient field tests
- Set up github actions/PyPI publishing
- Fixedpoint/signed UDPs
- Rust keyword conflict test
- Unwrap encoded field enums if exhaustive
- Restrict read/write to memories
- Add examples to docs
- Regwidth > native integer types