This repository provides a comprehensive guide for setting up OpenLANE, an automated RTL to GDSII flow, and the SkyWater 130nm PDK. OpenLANE integrates a variety of open-source tools and custom scripts for performing complete ASIC implementation, from RTL all the way down to GDSII.
It is an open-source flow that automates the process of designing a chip. It handles the full digital design process, from reading RTL code, generating the gate-level netlist, optimizing it, placing and routing the design, and verifying the physical layout with DRC and LVS checks. All this happens in an automated and streamlined fashion using the integrated tools.
This is a set of technology files provided by SkyWater Technology Foundry for their 130nm process node. The PDK includes process-related data such as transistor models, design rules, and physical libraries, which are required to create tape-out-ready designs that adhere to the fabrication rules of the foundry.
This setup allows designers to go through the entire ASIC design process starting from RTL-level description of a digital circuit, followed by synthesis, floorplanning, placement, clock tree synthesis, routing, timing analysis, and eventually the generation of the GDSII file. The GDSII file is the final step before sending the design for fabrication. Each stage in the flow involves a specific tool from the toolchain integrated into OpenLANE.
The repository simplifies the process by providing make commands, making it easier to install dependencies and tools without requiring users to manually configure each tool. Docker is used to ensure a consistent environment, making it easier to run the flow across different systems. By following this guide, you will be able to install and configure OpenLANE and the SkyWater PDK on your local system, enabling you to explore full-scale digital design flows, complete with physical design and tape-out-ready GDSII files.
This guide provides instructions for installing Docker, OpenLane, SkyWater PDK and klayout. Follow these steps to set up your environment.
Before you start, ensure you have a working Ubuntu system. You will need sudo privileges to install the required packages.
Clone git repository:
git clone https://github.com/ehsankhan9/OpenLane_Skywater_PDKChange directory:
cd OpenLane_Skywater_PDKInstall the necessary dependencies. Open a terminal and run:
make install_dependenciesTo install Docker, execute the following command:
make install_dockerTo install skywater pdk , execute the following command:
make install_skywater_pdkTo install OpenLane, execute the following command:
make install_openlaneTo verify that OpenLane has been installed correctly and is working as expected:
make testTo install klayout:
make install_klayoutTo verify klayout installed:
klayout -vproject/
├── src/
│ ├── all_design_files.sv
│
├── config.json
│
└── constraint.sdc
Change directory:
cd OpenLaneMonut openlane flow:
make mountGive path of your design then execute following command:
./flow.tcl -design /path/to/your/designFor view schematic or gds file, go to OpenLane directory:
cd OpenLaneTo view schematics, give path of RUN_(time_stamp) folder which is inside the runs folder:
sudo python3 ./gui.py --viewer klayout /path/to/your/design/runs/RUN_(time_stamp)