• Stars
    star
    268
  • Rank 153,144 (Top 4 %)
  • Language Verilog
  • License
    Other
  • Created over 4 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OpenROAD's scripts implementing an RTL-to-GDS Flow. Documentation at https://openroad-flow-scripts.readthedocs.io/en/latest/

OpenROAD Flow

Build Status Docs

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.

ORFS_Flow

Tool Installation

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.

Pre-built Binaries

You can download, set up and run ORFS easily with pre-built binaries, including OpenROAD, Yosys and Klayout. See instructions here.

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.

Local Installation

Document for detailed local installation steps found here.

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.

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 paper is available here (PDF).

@inproceedings{ajayi2019toward,
  title={Toward an open-source digital flow: First learnings from the openroad project},
  author={Ajayi, Tutu and Chhabria, Vidya A and Foga{\c{c}}a, Mateus and Hashemi, Soheil and Hosny, Abdelrahman and Kahng, Andrew B and Kim, Minsoo and Lee, Jeongsup and Mallappa, Uday and Neseem, Marina and others},
  booktitle={Proceedings of the 56th Annual Design Automation Conference 2019},
  pages={1--4},
  year={2019}
}

A copy of this paper is available here (PDF).

If you like the tools, please give us a star on our GitHub repos!

License

The OpenROAD-flow-scripts repository (build and run scripts) has a BSD 3-Clause License. The flow relies on several tools, platforms and designs that each have their own licenses:

  • Find the tool license at: OpenROAD-flow-scripts/tools/{tool}/ or OpenROAD-flow-scripts/tools/OpenROAD/src/{tool}/.
  • Find the platform license at: OpenROAD-flow-scripts/flow/platforms/{platform}/.
  • Find the design license at: OpenROAD-flow-scripts/flow/designs/src/{design}/.

More Repositories

1

OpenROAD

OpenROAD's unified application implementing an RTL-to-GDS Flow. Documentation at https://openroad.readthedocs.io/en/latest/
Verilog
1,513
star
2

OpenLane

OpenLane is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen and custom methodology scripts for design exploration and optimization.
Python
1,337
star
3

OpenSTA

OpenSTA engine
C++
343
star
4

RePlAce

RePlAce global placement tool
Verilog
206
star
5

OpenDB

Database and Tool Framework for EDA
C++
94
star
6

OPENROAD_USERS_READ_ME_FIRST

OpenROAD users should look at this repository first for instructions on getting started
84
star
7

TritonRoute

UCSD Detailed Router
C++
79
star
8

alpha-release

Builds, flow and designs for the alpha release
Verilog
54
star
9

DAC-2020-Tutorial

Material for OpenROAD Tutorial at DAC 2020
Python
45
star
10

TritonCTS

Source codes and calibration scripts for clock tree synthesis
C++
37
star
11

OpeNPDN

Public repository for Task 6 of OpenROAD project. ML-based PDN synthesis and optimization.
Python
31
star
12

SA-PCB

Annealing-based PCB placement tool
C++
29
star
13

TritonMacroPlace

Macro placement tool for OpenROAD flow
C++
20
star
14

asap7

20
star
15

PcbRouter

C++
19
star
16

asap5

Perl
18
star
17

TritonSizer

UCSD Sizer for leakage/dynamic power recovery, timing recovery
C++
17
star
18

OpenLane-MPW-CI

Shell
15
star
19

OpenRCX

C++
15
star
20

KicadParser

C++
11
star
21

PCB-PR-App

Python
11
star
22

Birds-of-a-Feather-Open-Source-Academic-EDA-Software

Welcome to Birds-of-a-Feather: Open-Source-Academic-EDA-Software !
11
star
23

OpenROAD-Cloud

The source code that empowers OpenROAD Cloud
10
star
24

PDNSim

Power grid analysis
Verilog
10
star
25

PD-Rev

Prim-Dijkstra Revisited
C++
6
star
26

megaboom

SystemVerilog
6
star
27

tapcell

Welltap and endcap cell insertion project for PDN Task 8 of OpenROAD
Tcl
4
star
28

AutoCellGen

C++
4
star
29

PcbDecompaction

C++
3
star
30

security

Python
1
star
31

actions

Python
1
star
32

actions-test

Verilog
1
star