The source code that empowers https://cloud.theopenroadproject.org/
The OpenROAD Project aims at providing a 24-hour, no-human-in-the-loop layout design for SoC, package and PCB with no Power-Performance-Area (PPA) loss. The cloud infrastructure set up at OpenROAD Cloud makes the tools and designs accessible through an easy-to-use web-based interface.
If you want to jump start using our platform, go to the Quickstart section. To get a deeper look at the platform, refer to the documentation section.
Go to https://cloud.theopenroadproject.org, register for an account using your email.
OpenROAD Cloud processes designs that reside in a git repository.
In order to run your own design through OpenROAD Cloud flow, create add a file to the root of the repository and name it openroad.yml.
This file declares required configurations for running the flow. Below is a description for its fields described on the AES example:
platform: nangate45 # currently only supports 'nangate'
design_name: aes_cipher_top # top-level design name
verilog_files: # relative path of the source files
- src/aes_cipher_top.v
- src/aes_inv_cipher_top.v
- src/aes_inv_sbox.v
- src/aes_key_expand_128.v
- src/aes_rcon.v
- src/aes_sbox.v
- src/timescale.v
sdc_file: constraint.sdc # relative path of the constraint file
die_area: "0 0 620.15 620.6" # die area as a box
core_area: "10.07 11.2 610.27 610.8" # core area as a box
clock_period: 5.00 # clock period in nanoseconds
Make sure to upload the design files (in
.vformat) and the constraint file (in .sdcformat) to the same repository as well.
- Login to your account on https://cloud.theopenroadproject.org.
- From left panel, click My Designs.
- Click Import Design.
- Give a name to your design (can be any arbitrary nickname), and paste in the repo URL (repository must be public).
- After the design is added, click Run on latest version.
- You will receive email notifications updating you on the status of the flow.
Although the publicly available platform enables our research and offers ease-of-use and latest improvements to users around the world, OpenROAD flow can be independently deployed on a private cloud infrastructure.
TODO:
TODO:
Propose feature requests that you can work on using the Feature Request template.
In general, here are the skills and tracks you can contribute to:
- Frontend development: We build user-centric web-based interfaces. You can contribute to this track if you have
decent skills in
HTML,CSS,JavaScriptandJQuery. Dare to modernize our frontend stack toVueJS,AngularorReact? We would love to hear from you. - Backend development: Our REST APIs are built using
Python Django REST Framework. In addition, there are some views rendered usingDjango template system. Contribute to this track if you are familiar withPython,Djnago,REST APIsand databases. - Testing: writing unit tests, integration tests, and automating this process is at the heart of our CI/CD pipeline. Contribute to this track to enhance the reliability of the platform.
Before submitting a Pull Request, get in touch with the project contributors to align what features you will
be working on.
In the issues tab, create a new issue with your question.
BSD 2-Clause License
Copyright (c) 2020, The OpenROAD Project All rights reserved.