Physical Design & Fabrication — Installation
What You're Setting Up
Overview's multi-path STA calculation is closed-form and hand-calculable. This section sets up a Python-based STA calculator, plus OpenROAD — the standard free, open-source, actively maintained RTL-to-GDSII flow, for actually running floorplanning, placement, routing, and STA on a real design rather than only the simplified 3-path example.
Install Python
No extra packages needed for the STA calculator itself.
Verify Your Setup — Recompute Overview's Critical Path Example
This reproduces Overview's worked 3-path STA calculation.
A Second Check — the Try It Fourth Path
Reproducing Overview's Try It exercise (adding Path D) as a second, independent check:
Install OpenROAD for a Real Physical Design Flow
OpenROAD is a free, open-source, actively maintained RTL-to-GDSII flow — floorplanning, placement, routing, and STA on an actual design, going well beyond this guide's simplified 3-path example into a complete, automated physical design flow. OpenLane wraps OpenROAD (plus Yosys for synthesis, Magic and Netgen for layout/verification) into a single end-to-end flow.
(needs verification — recheck against current source: OpenROAD/OpenROAD-flow-scripts build instructions and dependencies are actively maintained and can change between releases — confirm current steps directly at the repository's own documentation before relying on a fixed set of commands.)
Verify Everything Works
Common Setup Issues
STA calculator picks the wrong path as critical
Confirm you're using max() (worst-case, longest delay), not min() — a common mistake when this pattern is first introduced, since "critical" intuitively might sound like it should mean "smallest" or "most important" rather than specifically "longest delay, the one that limits the whole chip's frequency."
OpenROAD Docker image fails to pull or run
Confirm Docker itself is installed and running (docker --version) before troubleshooting OpenROAD specifically — a Docker daemon that isn't running produces an error that can look OpenROAD-specific but is actually a Docker prerequisite issue.
OpenROAD-flow-scripts build from source fails partway through
This toolchain has a real, substantial dependency list (Yosys, Magic, Netgen, and OpenROAD itself, each with their own build requirements) — confirm you're following the repository's current documented build instructions exactly, since a partial or out-of-order build is a common source of failures that look like a bug but are actually a missed setup step.
What's Set Up
Next Steps
Go to the Fundamentals section to continue with floorplanning and placement in more depth.

