Back to directory

RgGen

RgGen is a Ruby-based code generator for ASIC, IP and FPGA engineers that turns a human-readable register-map specification into SystemVerilog RTL, a UVM register model, C header files and Markdown documentation.

RgGen

RgGen generates source code related to control and status registers from a register-map specification written in a human-readable format: a Ruby DSL, YAML, JSON, TOML, a spreadsheet format, or SystemRDL through a plugin. Supported outputs include SystemVerilog or Verilog RTL modules for common bus protocols such as AMBA APB, AMBA AXI4-Lite, Avalon-MM and Wishbone, a UVM register model, C header files, and register-map documentation in Markdown.

A plugin system lets users add their own bit-field types or host bus protocols, and separate plugins add Verilog, VHDL, Veryl and SystemRDL support. A browser-based web UI is available alongside the command-line tool. RgGen installs as a Ruby gem, requires Ruby 3.2 or later, and is also distributed as a Docker image for simplified setup.

More in Languages

See all 48
  • QBasic Web Editor

    vahidyousefzadeh.com

    A browser-based QBasic 1.1 editor and interpreter that runs classic QBasic programs with DOSBox-accurate behavior, including text-mode graphics commands such as PRINT, COLOR and LOCATE, with sample programs and keyboard shortcuts to run and save.

  • A Brainfuck-inspired esoteric programming language adding absolute memory navigation, multiplier arithmetic, non-destructive inspection and inline conditionals, with its own interpreter.

  • C3 Playground

    play.c3-lang.org

    An in-browser playground that compiles and runs the C3 programming language entirely in WebAssembly, with no backend server, alongside its standard library and documentation.