This repository provides a Python-based library and unified CLI for RapidWright. It provides highlevel methods for scripting.
Use the provided script to clone and build RapidWright automatically:
bash install_rapidwright.shInstall in editable mode to register the unified pyrapidwright command:
pip install -e .Once installed, the pyrapidwright command handles both official Java tools and Python-based analysis:
# Launch Official Java Tools
pyrapidwright DeviceBrowser
pyrapidwright DesignExplorer
# Run Python Analysis Subcommands
pyrapidwright report <dcp_file>
pyrapidwright find <dcp_file> -p "*axi*"
pyrapidwright add-ila <dcp_file>- Unified CLI: Single entry point for all RapidWright-related tasks.
- Interactive ILA Insertion: Add debug probes to implemented DCPs.
- Advanced Analysis:
- Resource usage reporting (LUTs, FFs, BRAMs, DSPs).
- Automatic clock net identification.
- Hierarchical net/cell inspection (drivers, loads, placement).
- GUI & CLI Support: Tkinter-based tree-view for easy net navigation.
pyrapidwright/: Core library and JVM bridge.cli.py: Unified command dispatcher.analysis.py: Selection and analysis logic.design_util.py: High-levelRWDesignAPI.examples/: Integrated example scripts.
pyproject.toml: Package metadata and entry points.