bat52 / PeakRDL-verilog

Generate verilog register file from systemRDL description

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

build status

PeakRDL-verilog

Generate Verilog register model from compiled SystemRDL input

Installing

Install from pypi: pip3 install peakrdl-verilog Install from github: pip3 install git+https://github.com/bat52/PeakRDL-verilog.git@master


Exporter Usage

Pass the elaborated output of the SystemRDL Compiler to the exporter.

import sys
from systemrdl import RDLCompiler, RDLCompileError
from peakrdl.verilog import VerilogExporter

rdlc = RDLCompiler()

try:
    rdlc.compile_file("path/to/my.rdl")
    root = rdlc.elaborate()
except RDLCompileError:
    sys.exit(1)

exporter = VerilogExporter()
exporter.export(root, "test.sv")

Verification

The tool will generate a tb for your module in the same directory. This will test the HW interface


Reference

VerilogExporter(**kwargs)

Constructor for the Verilog Exporter class

Optional Parameters

  • user_template_dir
    • Path to a directory where user-defined template overrides are stored.
  • user_template_context
    • Additional context variables to load into the template namespace.

VerilogExporter.export(node, path, **kwargs)

Perform the export!

Parameters

  • node
    • Top-level node to export. Can be the top-level RootNode or any internal AddrmapNode.
  • path
    • Output file.

Optional Parameters

About

Generate verilog register file from systemRDL description

License:GNU General Public License v3.0


Languages

Language:SystemVerilog 60.2%Language:Python 31.7%Language:C++ 7.3%Language:Shell 0.8%