https://github.com/the-openroad-project/openroad-cloud
The source code that empowers OpenROAD Cloud
https://github.com/the-openroad-project/openroad-cloud
automation brown-university cloud-computing eda openroad scale-lab
Last synced: 2 months ago
JSON representation
The source code that empowers OpenROAD Cloud
- Host: GitHub
- URL: https://github.com/the-openroad-project/openroad-cloud
- Owner: The-OpenROAD-Project
- License: bsd-2-clause
- Created: 2018-11-25T05:23:23.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-06-29T16:49:20.000Z (almost 5 years ago)
- Last Synced: 2025-01-05T20:09:21.212Z (4 months ago)
- Topics: automation, brown-university, cloud-computing, eda, openroad, scale-lab
- Homepage: https://cloud.theopenroadproject.org
- Size: 2.8 MB
- Stars: 12
- Watchers: 5
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OpenROAD Cloud
The source code that empowers [https://cloud.theopenroadproject.org/](https://cloud.theopenroadproject.org/)

## Purpose
[The OpenROAD Project](https://theopenroadproject.org/) 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](https://cloud.theopenroadproject.org/) 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](#quickstart-guide) section.
To get a deeper look at the platform, refer to the [documentation](#documentation) section.## Quickstart Guide
Go to [https://cloud.theopenroadproject.org](https://cloud.theopenroadproject.org),
register for an account using your email.### Prepare Your Design
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](https://github.com/OpenROAD-Cloud/aes):```
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 filedie_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 boxclock_period: 5.00 # clock period in nanoseconds
```> Make sure to upload the design files (in `.v` format) and the constraint file (`in .sdc` format) to the same repository as well.
### Run OpenROAD Cloud Flow
1. Login to your account on [https://cloud.theopenroadproject.org](https://cloud.theopenroadproject.org).
2. From left panel, click **My Designs**.
3. Click **Import Design**.
4. Give a name to your design (can be any arbitrary nickname), and paste in the repo URL (repository must be public).
5. After the design is added, click **Run on latest version**.
6. You will receive email notifications updating you on the status of the flow.### Examples
* [GCD](https://github.com/OpenROAD-Cloud/gcd)
* [AES](https://github.com/OpenROAD-Cloud/aes)## Deployment on a Private Cloud
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.### Architecture
TODO:### Deployment Guide
TODO:## Contributing
Propose feature requests that you can work on using the [Feature Request](.github/ISSUE_TEMPLATE/feature_request.md) 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`, `JavaScript` and `JQuery`.
Dare to modernize our frontend stack to `VueJS`, `Angular` or `React`? 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 using `Django template system`.
Contribute to this track if you are familiar with `Python`, `Djnago`, `REST APIs` and 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.## Help
In the issues tab, create a new issue with your question.## License
BSD 2-Clause LicenseCopyright (c) 2020, The OpenROAD Project All rights reserved.