ASIC & Physical Design Flow (OpenLane / Sky130)
What actually happens between your Verilog and a manufactured chip. Every step in this course runs on genuinely free, open-source tooling against the SkyWater 130 nm PDK - so you can execute the whole RTL-to-GDSII flow on a laptop, with no EDA licence and no NDA. Nothing is pre-built here: you place every cell, build the clock tree, and route every wire.
Start here
Work forward from Volume 01 - the flow is a pipeline and each volume is a stage that consumes the previous one's output. If you already know the flow and are here for a specific problem: congestion and utilisation are in §3.1, hold violations after CTS in §4.5, and why post-route timing degraded in §5.5.
Full syllabus
Part I - Inputs and the netlist
- 01 The Semiconductor Flow & What a PDK Contains Front-end versus back-end, standard cell anatomy and row structure, Liberty NLDM timing tables, LEF and GDS abstract views, and what is actually inside Sky130 - including what is not. Live
-
02
Logic Synthesis with Yosys
The pass pipeline and its two non-negotiable ordering rules, technology mapping with ABC and AIGs, drive strength and buffer trees, reading
stathonestly, and the SDC synthesis needs first. Live
Part II - Turning a netlist into geometry
- 03 Floorplanning & Power Distribution Core area, utilisation and why 100% is unroutable, macro placement and halos, the PDN from ring to cell rail, tap cells and latch-up, and IR drop as a timing problem STA cannot see. Live
- 04 Placement & Clock Tree Synthesis Global, legal and detailed placement, congestion versus density maps, why the clock is built last, balancing a buffer tree, and skew, insertion delay and useful skew. Live
- 05 Routing & Parasitic Extraction The metal stack and preferred directions, global through detailed routing, antenna violations and diodes, RC extraction into SPEF, and a line-by-line account of why post-route timing grew. Live
Part III - Proving it
What you need before starting
| Requirement | Why it matters | Free option |
|---|---|---|
| Synthesizable RTL fluency | The flow starts with a netlist; this course never teaches you to write one | Course 01, volumes 01-08 |
| Static timing analysis | Setup, hold and slack are assumed vocabulary from Volume 01 onward | Course 01, Volume 07 |
| CMOS device intuition | Latch-up, IR drop and antenna rules are device physics, not logic | Developed from first principles where needed |
| OpenLane + Sky130 | Reading a flow you never run teaches very little | Docker image plus open_pdks, both free; ~20 GB of disk |
| Comfort with Tcl | Every tool in the flow is driven by it | The scripts in each volume are annotated line by line |
always block to a GDSII file a foundry will
accept. The best next step is to run the flow on something you wrote yourself.
Subscribe on YouTube
for what comes after.