anthropics/OpenROAD-flow-scripts
Verilog
Captured source
source ↗anthropics/OpenROAD-flow-scripts
Description: Read-only mirror of The-OpenROAD-Project/OpenROAD-flow-scripts (release tags only). No changes accepted here — contribute upstream.
Language: Verilog
License: NOASSERTION
Stars: 0
Forks: 0
Open issues: 0
Created: 2026-08-12T19:39:48Z
Pushed: 2026-08-12T22:06:52Z
Default branch: master
Fork: no
Archived: no
README:
OpenROAD Flow
 
OpenROAD-flow-scripts (ORFS) is a fully autonomous, RTL-GDSII flow for rapid architecture and design space exploration, early prediction of QoR and detailed physical design implementation. However, ORFS also enables manual intervention for finer user control of individual flow stages through Tcl commands and Python APIs.
%%{init: { 'logLevel': 'debug', 'theme': 'dark'
} }%%
timeline
title RTL-GDSII Using OpenROAD-flow-scripts
Synthesis
: Inputs [RTL, SDC, .lib, .lef]
: Logic Synthesis (Yosys)
: Output files [Netlist, SDC]
Floorplan
: Floorplan Initialization
: IO placement (random)
: Timing-driven mixed-size placement
: Macro placement
: Tapcell and welltie insertion
: PDN generation
Placement
: Global placement without placed IOs
: IO placement (optimized)
: Global placement with placed IOs
: Resizing and buffering
: Detailed placement
CTS : Clock Tree Synthesis
: Timing optimization
: Filler cell insertion
Routing
: Global Routing
: Detailed Routing
Finishing
: Metal Fill insertion
: Signoff timing report
: Generate GDSII (KLayout)
: DRC/LVS check (KLayout)Tool Installation
There are multiple ways to install and develop OpenROAD and ORFS. However, the best option depends on your use case, experience level, and personal preference.
> Recommendation for new users: > If you are new to OpenROAD-flow-scripts, Docker can be a reliable way to get started since it avoids most dependency and environment issues. > > On supported platforms, using the pre-built binaries can be an even simpler option as it avoids building from source. > > Alternatively, the Bazel-based flow also avoids manual dependency installation (aside from installing Bazelisk itself), similar to how Docker requires installing Docker.
Use Bazel, avoid installing anything at all and adapt the flow to your needs in your own repository
bazel-orfs provides a seamless, reproducible way to manage dependencies and adapt the flow without requiring manual installations(no Docker images, sudo bash scripts, etc.)
By leveraging Bazel's robust build system, all dependencies are automatically resolved, versioned, and built in a consistent environment. This eliminates setup complexity, ensures fast incremental builds, and allows for easy customization of the flow, making it an efficient choice for both beginners and advanced users.
Docker Based Installation
To ease dependency installation issues, ORFS uses docker images. Docker image includes ORFS binaries, applications as well as all required dependencies. All of the flow tools are encapsulated inside the container image.
If Docker is not installed already, install latest docker tool based on OS from here.
To manage docker as non-root user and verify that you can run docker commands without sudo must complete steps from here.
Build ORFS with Docker
Document for detailed steps on docker based installation found [here](./docs/user/BuildWithDocker.md).
Pre-built Binaries
You can download, set up and run ORFS easily with pre-built binaries, including OpenROAD, Yosys and Klayout. See instructions [here](./docs/user/BuildWithPrebuilt.md).
> Thanks to Precision Innovations for > providing and supporting OpenROAD based binaries.
> Note Only the latest version of OpenROAD is guaranteed to work with > the latest version of ORFS.
> Disclaimer The versions of OpenROAD, Yosys and Klayout provided by > other third-party vendors are not guaranteed to work with ORFS.
Build from sources locally
Document for detailed local build from sources and installation steps found [here](./docs/user/BuildLocally.md).
Using the Flow
- For details about the OpenROAD and the available features and
individual flows commands, see the documentation here.
- For details about automated flow setup, see ORFS docs
here.
- Flow tutorial to run the complete OpenROAD based flow from
RTL-GDSII, see the tutorial here.
- To watch ORFS flow tutorial videos, check
here.
Building from your own git repository
ORFS supports hosting projects in your own git repository without the need to fork ORFS.
To build from your own git repository:
cd /home/me/myproject make --file=~/OpenROAD-flow-scripts/flow/Makefile DESIGN_CONFIG=somefolder/config.mk ...
Running a quick smoke-test of ORFS on your own Verilog
You can [run ORFS on your own Verilog files](./flow/designs/asap7/minimal/README.md) without setting up a project or moving your Verilog files and even learn a thing or two about floorplan, placement and routing before you create an .sdc file and a config.mk file.
Citing this Work
If you use this software in any published work, we would appreciate a citation! Please use the following references:
@article{ajayi2019openroad,
title={OpenROAD: Toward a Self-Driving, Open-Source Digital Layout Implementation Tool Chain},
author={Ajayi, T and Blaauw, D and Chan, TB and Cheng, CK and Chhabria, VA and Choo, DK and Coltella, M and Dobre, S and Dreslinski, R and Foga{\c{c}}a, M and others},
journal={Proc. GOMACTECH},
pages={1105--1110},
year={2019}
}A copy of this...
Excerpt shown — open the source for the full document.