- How to talk to computers
- SoC design and OpenLANE
- Starting RISC-V SoC Reference design
- Get familiar to open-source EDA tools
- Chip Floor planning considerations
- Library Binding and Placement
- Cell design and characterization flows
- General timing characterization parameters
- Labs for CMOS inverter ngspice simulations
- Inception of Layout – CMOS fabrication process Sky130 Tech File Labs
- Timing modelling using delay tables
- Timing analysis with ideal clocks using openSTA
- Clock tree synthesis TritonCTS and signal integrity
- Timing analysis with real clocks using openSTA
-
Day 5 - Final steps for RTL2GDS
- Routing and design rule check (DRC)
- PNR interactive flow tutorial
-
Day1 – Inception of open-source EDA, OpenLANE and Sky130 PDK
Fig.2 In the terminal window being in tools diretory do "ls" to list the files and folders.
In the fig.2 we can see two folders.
- openlane
- pdks
To Launch the tool
Fig.3, to launch the openlane type the command "make mount"
Types of PDKs(Process Design Kit)
Fig.4 It shows the 3 types of PDKs
In the figure 4 it seen that there three types of pdks
- skywater-pdk
- open-pdks
- sky130A
PDK used in this Lab is sky130A
This sky130A pdk contains libs.tech, and libs.ref
Fig.5 It shows the contents of sky130A and libs.tech
Fig.6 It shows the contents of libs.ref
The library used from the sky130A pdk is sky130_fd_sc_hd
Fig.7 It shows the contents of sky130_fd_sc_hd
The sky130_fd_sc_hd contains various process corners, which are shown in the figure below
Fig. 8 Figure shows the various process corners
openlane terminal needs to be launched from being in the openlane directory, which is shown in the figure below
Fig.9 Figure shows oipenlane directory.
From the openlane directory type the command "make mount"
Fig. 10 Figure shows the command "make mount" To start the flow in interactive way type the way shown in the below figure"
Fig.11 Figure shows the command for making the tool interactive.
Fig.12 Figure shows the preparation stage which creates necessary directories.
To run the synthesis
Fig. 13 Figure shows the synthesis command
Fig. 14-a Synthesis Results
Fig. 14-b Synthesis Results
-
Day 2 - Understand importance of good floorplan vs bad floorplan and introduction to library cells
To run the floor plan Fig. 1 Figure shows the command to run the floorplan
Visualize the floorplan done in the magic Fig. 2 Figure shows the command to visualize the floorplan in the magic tool Fig. 3 Figure shows complete floorplan of the design picorv32a Fig. 4 Figure shows the horizontal IO Fig. 5 Figure shows the vertical IO Fig. 6 Figure shows the standard cells after floorplan done
To run the placement Fig. 1 Figure shows the command to run the placement Fig. 2 Figure shows the command to visualize the placement in the magic tool Fig. 3 Figure shows placement done in the magic tool
-
Day 3 - Design and characterize one library cell using Magic Layout tool and ngspice
-
Day 4 - Pre-layout timing analysis and importance of good clock tree