Physical Design (PD) là phần lõi của IC Backend, nơi bạn biến netlist logic thành layout vật lý của chip (để tape-out sản xuất silicon).
👉 Nói ngắn gọn:
PD = sắp xếp cell + kéo dây + tối ưu timing/power → ra GDSII
🔁 Flow Physical Design chuẩn công nghiệp
-
Import design
-
Input: Netlist (
.v), LEF, LIB, SDC
-
-
Floorplanning
-
Xác định die/core
-
Đặt macro (SRAM, IP)
-
-
Power Planning
-
VDD/VSS rings, straps
-
-
Placement
-
Đặt standard cells
-
-
CTS (Clock Tree Synthesis)
-
Xây clock tree
-
Giảm skew
-
-
Routing
-
Global + Detailed routing
-
-
Timing Closure
-
Fix setup/hold
-
-
Sign-off
-
STA, IR drop, DRC/LVS
-
-
Tape-out
-
Xuất GDSII
-
🛠 Tool dùng cho Physical Design
-
Cadence
-
Innovus: Place & Route
-
Tempus: STA
-
Voltus: Power/IR
-
-
Synopsys
-
ICC2, PrimeTime
-
❌ Không dùng Vivado (Vivado là FPGA, không phải ASIC)
📂 File PD bắt buộc phải biết
| File | Ý nghĩa |
|---|---|
.lib |
Timing & power của cell |
.lef |
Hình dạng cell/macro |
.def |
Placement & routing |
.sdc |
Timing constraints |
.gds |
Layout cuối (tape-out) |
🎯 PD Engineer làm gì mỗi ngày?
-
Chạy Innovus
-
Đọc timing report
-
Fix setup/hold
-
Giảm congestion
-
Kiểm tra IR drop / EM
-
ECO để đạt timing closure
❓ Phỏng vấn hay hỏi gì?
-
Setup vs Hold khác nhau thế nào?
-
Clock skew tốt hay xấu?
-
Vì sao CTS làm timing xấu hơn ban đầu?
-
Congestion là gì? xử lý ra sao?
-
IR drop ảnh hưởng gì đến timing?
🧭 Sinh viên nên bắt đầu PD thế nào?
-
Hiểu timing (setup/hold) trước
-
Học flow PD thuộc lòng
-
Làm 1 project nhỏ (ALU/UART)
-
Chạy Innovus → Tempus
-
Viết report (area, freq, slack)
Tóm tắt 1 câu
Physical Design = trái tim của IC Backend, quyết định chip chạy nhanh – ít lỗi – sản xuất được.


