Module

Module 1: The Physical Design Landscape

15 lessons
Start

A Verilog module that passes every testbench is not a chip. It is a description of intent: correct behaviour, in a language a synthesizer can read, with no size, no shape, no wires and no silicon under it. Physical design is everything between that description and a file a fab can manufacture: turning gates into placed cells, placed cells into routed wires, and routed wires into polygons on mask layers.

This module does not explain any single stage in depth; that is the rest of the course. It does two things. It introduces the open-source tools the course runs on (Yosys, OpenROAD, Magic, Netgen and KLayout, driven by OpenLane) and the SkyWater SKY130 process we target, and then it has you run a complete design through the default flow from start to finish, so that every later module has something concrete to point back at.

Every hands-on section in the course assumes a working OpenLane and SKY130 install. Section 1.4 walks through that setup from nothing. Do it before moving to Module 2.

Sections

Section Topics
1.1 The Complete ASIC Flow Front-end versus back-end, the abstraction stack, why physical design decisions are not optional
1.2 The Open-Source EDA Stack Yosys, OpenROAD, Magic, Netgen, KLayout, and OpenLane as orchestrator
1.3 The SkyWater SKY130 PDK What a PDK contains, SKY130 process specifics, standard cell library variants
1.4 Environment Setup (hands-on) Installing OpenLane and the PDK, the directory structure, a first end-to-end run
1.5 Flow Configuration (hands-on) config.json, the ordered flow stages, interactive versus autonomous execution

Start with From RTL to Silicon.

In this module

01 From RTL to Silicon 5 min 02 The Abstraction Stack 5 min 03 Why Physical Design Is Not Optional 4 min 04 Yosys and OpenROAD 4 min 05 Magic, Netgen and KLayout 4 min 06 OpenLane as Orchestrator 4 min 07 What a PDK Contains 4 min 08 SKY130, Concretely 5 min 09 Standard Cell Library Variants 4 min 10 Installing OpenLane and the SKY130 PDK 4 min 11 The OpenLane Directory Structure 3 min 12 Running a First Design End to End 4 min 13 config.json, Field by Field 4 min 14 The Flow, Stage by Stage 3 min 15 Interactive Versus Autonomous Execution 4 min