{"id":45751,"library":"peakrdl-cli","title":"PeakRDL CLI","description":"Command-line tool for control/status register automation and code generation. It provides commands to compile SystemRDL input and generate register model outputs (e.g., HTML, SystemVerilog, C header, IP-XACT, etc.) via plugins. Current version 1.5.0, supports Python >=3.7, release cadence is irregular.","status":"active","version":"1.5.0","language":"python","source_language":"en","source_url":"https://github.com/SystemRDL/PeakRDL","tags":["register-transfer-level","hardware","systemrdl","codegen"],"install":[{"cmd":"pip install peakrdl-cli","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[],"quickstart":{"code":"import subprocess\nsubprocess.run(['peakrdl', '--help'], check=True)","lang":"python","description":"Verify installation and display help."},"warnings":[{"fix":"Use 'peakrdl' command in shell or subprocess.","message":"PeakRDL CLI is a command-line tool only; do not import it in Python code. Use the Python API via separate packages like 'peakrdl-html' or 'peakrdl-uvvm'.","severity":"gotcha","affected_versions":"all"},{"fix":"Install the required plugin: pip install peakrdl-uvvm (for UVVM output).","message":"Some subcommands (e.g., 'uvvm') require additional plugins. If missing, peakrdl will exit with an error about unknown command.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Update commands to use subcommand syntax: peakrdl <plugin> ...","message":"Version 1.0.0 introduced a new CLI interface with subcommands (e.g., 'peakrdl regblock') replacing the old monolithic 'peakrdl' invocation. Scripts using the old syntax will break.","severity":"breaking","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'1.5.0':39 '3.7':42 'autom':10 'c':29 'cadenc':44 'cli':2 'code':12 'codegen':53 'command':4,16 'command-lin':3 'compil':18 'control/status':8 'current':37 'e.g':26 'etc':34 'generat':13,22 'hardwar':51 'header':30 'html':27 'input':20 'ip':32 'ip-xact':31 'irregular':46 'level':50 'line':5 'model':24 'output':25 'peakrdl':1 'plugin':36 'provid':15 'python':41 'regist':9,23,48 'register-transfer-level':47 'releas':43 'support':40 'systemrdl':19,52 'systemverilog':28 'tool':6 'transfer':49 'version':38 'via':35 'xact':33","created_at":"2026-06-07T12:56:33.214260+00:00","updated_at":"2026-06-07T12:56:33.214260+00:00","problems":[{"fix":"Install peakrdl-html: pip install peakrdl-html","cause":"Missing peakrdl-html plugin or using old syntax without subcommand.","error":"peakrdl: error: argument command: invalid choice: 'html' (choose from 'regblock', 'systemverilog', 'uvvm', ...)"},{"fix":"Run commands via subprocess or shell, not import.","cause":"Trying to import peakrdl in Python script. peakrdl-cli is a command-line tool, not a Python package.","error":"ModuleNotFoundError: No module named 'peakrdl'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/SystemRDL/PeakRDL","github":"https://github.com/SystemRDL/PeakRDL","docs":null,"changelog":null,"pypi":null,"npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}