Skip to content

Flow Orchestration API - multi-flow support #122

@luarss

Description

@luarss

Overview

High-level MCP tools to run complete RTL-to-GDS flows with configurable stages.

Proposed tools: run_flow, pause_flow, resume_flow, get_flow_status

Currently users issue individual OpenROAD commands. Flow orchestration automates common patterns and enables AI-assisted full-flow runs.


Sub-issues by flow

  • 4a. OpenROAD-flow-scripts (ORFS) — Official OpenROAD flow; highest priority since it's the reference implementation. Support stage-level control (synth, floorplan, place, cts, route, finish) and ORFS Makefile targets.
  • 4b. OpenLane v2 — efabless's modular Python-based flow (replaces OpenLane v1). Uses OpenROAD as a step runner; support config.json-driven invocation and per-step overrides.
  • 4c. OpenLane v1 — Legacy Tcl/Make-based flow still widely used in efabless MPW shuttle submissions. Lower priority than v2 but worth supporting for existing users.
  • 4d. Silicon Compiler (SC) — Zero ASIC's Python API wraps OpenROAD as a backend; support SC flowgraph execution and result collection via MCP.
  • 4e. Hammer — UC Berkeley's VLSI hammer abstracts OpenROAD behind a YAML-driven config; support hammer-vlsi CLI invocation and par (place-and-route) step control.
  • 4f. OpenFASoC — Mixed-signal analog/digital generator that drives OpenROAD for digital blocks; support generator-level flow invocation alongside standard digital stages.

Difficulty: Hard
Impact: Very High

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions