An infrastructure for implementing chip design flows
Project description
Efabless OpenLane 2 is in early access and all APIs are, presently, highly unstable and subject to change without notice.
If you don't know why you're here, you're probably looking for the stable version of OpenLane at https://github.com/The-OpenROAD-Project/OpenLane.
OpenLane
OpenLane is a RTL to GDSII infrastructure library based on several components including OpenROAD, Yosys, Magic, Netgen, CVC, KLayout and a number of custom scripts for design exploration and optimization. A reference flow performs all ASIC implementation steps from RTL all the way down to GDSII.
You can find the documentation here to get started.
from openlane import Flow
Classic = Flow.get("Classic")
flow = Classic.init_with_config(
{
"PDK": "sky130A",
"DESIGN_NAME": "spm",
"VERILOG_FILES": ["./src/spm.v"],
"CLOCK_PORT": "clk",
"CLOCK_PERIOD": 10,
},
design_dir=".",
)
flow.start()
Installation
Binary Dependencies
You'll need the following:
- Python 3.8 or higher with PIP, Venv and Tkinter
- Yosys 0.23+ (preferably 0.26+) from https://github.com/YosysHQ/Yosys
- A reasonably modern version of OpenROAD from https://github.com/The-OpenROAD-Project/OpenROAD
- A reasonably modern version of Magic from https://github.com/RTimothyEdwards/Magic
- A reasonably modern version of Netgen from https://github.com/RTimothyEdwards/netgen
- KLayout 0.28.5+ from https://github.com/KLayout/klayout
Docker
Works for Windows, macOS and Linux. Easier to set up, but less integrated with your filesystem. Recommended for general users.
See Docker-based installation in the docs.
Do note you'll need to add --dockerized
to most CLI invocations of OpenLane.
Nix
Works for macOS and Linux. A bit more complex to set up, but more integrated with your filesystem and overall less upload and download deltas.
See Nix-based installation in the docs.
Conda
TBA
Python-only Installation
You'll need to bring your own compiled tools, but otherwise, simply install OpenLane as follows:
python3 -m pip install --upgrade openlane
Usage
In the root folder of the repository with the venv
activated, you may invoke:
python3 -m openlane --pdk-root <path/to/pdk> </path/to/config.json>
To start with, you can try:
python3 -m openlane --pdk-root $HOME/.volare ./designs/spm/config.json
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for openlane-2.0.0a25-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d393985a7c8cc02643947641a09ed6609229e59a4c6682358991984180ef32f2 |
|
MD5 | 30766276c5613e17b7046def13d1e67c |
|
BLAKE2b-256 | f50046f896d72330d2d9f73a26dd483b5d3d4a2e60322309fc4ce8d54ed27be7 |