SemiMatrix / TOPICS / FLOORPLANNING & POWER PLANNING
PHYSICAL DESIGN — FLOORPLANNING

Floorplanning & Power Planning:
Floorplanning: วางผังชิปก่อน P&R

ENGINEERING

01 บทนำ: Floorplan คืออะไร

Floorplanning คือขั้นตอนแรกของ physical design — กำหนดขนาด die, วาง macro/memory blocks, กำหนด I/O pad ring, สร้าง power grid, และ define placement regions

หลักการ
Floorplan ที่ดี = timing closure ง่าย, floorplan ที่แย่ = ไม่มีทาง close timing ได้ไม่ว่า P&R จะ optimize แค่ไหน
📍 CAREER ROADMAP CONTEXT
STAGE 05 — PHYSICAL DESIGN: Floorplan, P&R & Clock Tree
วาง floorplan, ทำ power planning, place & route, CTS (Clock Tree Synthesis), routing optimization, IR drop / EM analysis — จนได้ GDSII พร้อม tape-out
Tools: Cadence Innovus / Synopsys ICC2, RedHawk, Tempus
Related: Place & Route · Clock Tree Synthesis (CTS) · IR Drop & EM Analysis
Path: IC Design Engineer

02 Die Size & Utilization

Die size ขึ้นกับ: cell area (from synthesis) + macro area + I/O ring area + margins

Target utilization: 70-80% สำหรับ digital designs, ต่ำกว่าสำหรับ designs ที่มี congestion สูง

ต้องเผื่อ: routing tracks, decap cells, filler cells, antenna diodes

03 Macro Placement

วาง macros (SRAM, ROM, analog IP, PLL) ก่อน standard cells:

  • วาง SRAM ใกล้กับ data path ที่ access บ่อย
  • PLL วางใกล้ clock root
  • เว้น channel ระหว่าง macros สำหรับ routing
  • Halos/blockages รอบ macros ป้องกัน cell placement ชิดเกินไป

04 Power Planning

Power grid ต้อง deliver current ให้ทุก cell โดย IR drop < 5% ของ supply:

  • Power rings รอบ die boundary
  • Power stripes (horizontal + vertical) across die
  • Via stacking เชื่อม metal layers
  • Decap cells ลด local IR drop
Rule of thumb
Power grid ใช้ ~20-30% ของ routing resources — ต้อง balance กับ signal routing capacity

05 Tools & Flow

ICC2 (Synopsys), Innovus (Cadence) — ทั้งคู่มี floorplan GUI + Tcl scripting

Key commands: initialize_floorplan, create_placement_blockage, add_power_mesh, check_floorplan

06 Sign-off Checks

ก่อนเข้า P&R ต้อง sign off floorplan: congestion analysis, power grid IR drop estimation, timing estimation, DRC clean boundaries