Skip to content
@SystemRDL

SystemRDL

Free & open-source SystemRDL tools

banner

Welcome to the SystemRDL open source community!

The goal of this GitHub organization is to build high-quality free and open-source tools for control & status register (CSR) automation, and to promote Accellera's SystemRDL as the language of choice for CSR design entry. 1

If you are new to SystemRDL, check out this quick language tutorial.

PeakRDL Command Line Application

PeakRDL is a command-line application that provides a ready-to-use register automation toolchain.

See the PeakRDL Documentation for more details.

Individual PeakRDL Components

If the command line tool isn't your style, you can use the PeakRDL components individually. Each component is installable as a separate Python package and has a documented API you can use to integrate it into your own custom workflow.

Be sure to also check out the growing list of tools others in the community have made.

SystemRDL language front-end compiler

Need to build something custom? Don't invent your own janky input format - Use SystemRDL! The SystemRDL compiler front-end handles all the heavy-lifting of processing the SystemRDL language so you don't have to. The compiler provides a rich and intuitive Python API that you can use for your own custom register automation.

See the SystemRDL Compiler Documentation for more details.

How do I use my proprietary register specs with PeakRDL?

If you are just ramping up the use of SystemRDL and still need to support other internal register spec formats, it is pretty easy to create an importer to help transition your workflow from non-SystemRDL spec formats.

To learn how this works, check out the tutorial on PeakRDL importer plugins.

Footnotes

  1. This SystemRDL GitHub group is not affiliated with Accellera.

Popular repositories Loading

  1. systemrdl-compiler systemrdl-compiler Public

    SystemRDL 2.0 language compiler front-end

    Python 236 67

  2. PeakRDL PeakRDL Public

    Control and status register code generator toolchain

    Python 106 24

  3. PeakRDL-regblock PeakRDL-regblock Public

    Generate SystemVerilog RTL that implements a register block from compiled SystemRDL input.

    Python 53 42

  4. PeakRDL-uvm PeakRDL-uvm Public

    Generate UVM register model from compiled SystemRDL input

    Python 51 27

  5. PeakRDL-html PeakRDL-html Public

    Generate address space documentation HTML from compiled SystemRDL input

    JavaScript 47 15

  6. PeakRDL-ipxact PeakRDL-ipxact Public

    Import and export IP-XACT XML register models

    Python 33 12

Repositories

Showing 10 of 15 repositories
  • PeakRDL-Markdown Public

    Markdown exporter for the PeakRDL toolchain

    SystemRDL/PeakRDL-Markdown’s past year of commit activity
    Python 4 GPL-3.0 7 3 1 Updated Nov 18, 2024
  • PeakRDL-ipxact Public

    Import and export IP-XACT XML register models

    SystemRDL/PeakRDL-ipxact’s past year of commit activity
    Python 33 GPL-3.0 12 3 0 Updated Oct 15, 2024
  • systemrdl-compiler Public

    SystemRDL 2.0 language compiler front-end

    SystemRDL/systemrdl-compiler’s past year of commit activity
    Python 236 MIT 67 16 2 Updated Sep 3, 2024
  • PeakRDL Public

    Control and status register code generator toolchain

    SystemRDL/PeakRDL’s past year of commit activity
    Python 106 GPL-3.0 24 10 1 Updated Sep 3, 2024
  • pygments-systemrdl Public

    SystemRDL lexer for Pygments syntax highlighting

    SystemRDL/pygments-systemrdl’s past year of commit activity
    Python 1 GPL-3.0 2 0 1 Updated Sep 3, 2024
  • PeakRDL-html Public

    Generate address space documentation HTML from compiled SystemRDL input

    SystemRDL/PeakRDL-html’s past year of commit activity
    JavaScript 47 GPL-3.0 15 8 2 Updated Sep 3, 2024
  • PeakRDL-uvm Public

    Generate UVM register model from compiled SystemRDL input

    SystemRDL/PeakRDL-uvm’s past year of commit activity
    Python 51 GPL-3.0 27 13 2 Updated Sep 3, 2024
  • PeakRDL-regblock Public

    Generate SystemVerilog RTL that implements a register block from compiled SystemRDL input.

    SystemRDL/PeakRDL-regblock’s past year of commit activity
    Python 53 GPL-3.0 42 32 5 Updated Jul 17, 2024
  • SystemRDL/PeakRDL-cheader’s past year of commit activity
    Python 9 GPL-3.0 11 8 3 Updated Jul 3, 2024
  • tree-sitter-systemrdl Public

    SystemRDL grammar for tree-sitter

    SystemRDL/tree-sitter-systemrdl’s past year of commit activity
    JavaScript 4 MIT 2 1 1 Updated May 12, 2024