Generated Computers
Locals: an Apple Silicon engine that runs local LLMs up to 3x faster. A product of Generated Computers.
翻譯準備中
OpenROAD's scripts implementing an RTL-to-GDS Flow. Documentation at https://openroad-flow-scripts.readthedocs.io/en/latest/
翻譯準備中
開發工具Verilog · SourcePawnGitHub @The-OpenROAD-Project自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗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)
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.
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.
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.
Document for detailed steps on docker based installation found here.
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.
Document for detailed local build from sources and installation steps found here.
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 ...
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!
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:
OpenROAD-flow-scripts/tools/{tool}/ or OpenROAD-flow-scripts/tools/OpenROAD/src/{tool}/.OpenROAD-flow-scripts/flow/platforms/{platform}/.OpenROAD-flow-scripts/flow/designs/src/{design}/.