What Happens in Detailed Routing & Metal Fill?

🧩 The Routing Engineer's Job

Once standard cells and clock trees are placed, the detailed wiring phase connects millions of logical nets across multiple physical metal layers. Routing proceeds in two coordinated stages: Global Routing and Detailed Routing.

The global router (FastRoute) partitions the entire die into a 3D grid of Global Cells (G-cells). It determines which metal layers each net should traverse (short local connections on Met1–Met3, long buses and clocks on Met4–Met5) and outputs 3D geometric guides, ensuring no routing channel exceeds its maximum track capacity. The detailed router (TritonRoute) then follows these guides, placing exact polygon wires and inter-layer contact vias while rigorously enforcing hundreds of foundry Design Rule Check (DRC) constraints: minimum wire width, parallel run length spacing, end-of-line spacing, and via enclosure rules.

During semiconductor fabrication, plasma etching accumulates electrostatic charges on long metal wires β€” the Antenna Effect β€” which can discharge through thin MOSFET gate oxides and permanently destroy transistors. The routing flow analyzes antenna ratios and inserts Gate-Protection Diodes to safely shunt charge to ground. Finally, Dummy Metal Fill patterns are deposited across sparse regions of each metal layer to meet foundry metal density rules (typically 35–65%) required for uniform wafer planarization during Chemical-Mechanical Polishing (CMP).

πŸ—οΈ
Analogy: Like constructing a multi-level highway interchange across a mega-city. Global routing plans the expressways, exits, and tunnels to prevent traffic jams; detailed routing pours the exact asphalt lanes and safety barriers without any lane collisions; lightning arresters (antenna diodes) protect vehicles from electrical storms; and structural grading (metal fill) levels the terrain before final paving.

πŸ“‹ What CTS Provides

  • CTS DEF with placed cells & clock buffer tree
  • Technology LEF with layer spacing & via rules
  • Layer pitch and preferred routing directions (H/V)
  • Antenna ratio DRC design rules from foundry
  • CMP metal layer density target windows (35–65%)
  • Propagated SDC timing constraints

πŸ“ What the Routing Engineer Produces

  • Fully routed DEF file (all nets connected)
  • Routed DEF with antenna diodes & dummy metal fill
  • 0 DRC violation report (zero shorts and zero opens)
  • Antenna rule check signoff report (0 gate oxide risks)
  • Chemical-Mechanical Polishing (CMP) density report
  • Post-route parasitics ready for SPEF signoff

Files Flow: Stage 07 Inputs & Outputs

πŸ“₯ INPUTS
picorv32_cts.def
Design DEF containing placed standard cells, macros, and synthesized clock distribution tree
From: Stage 06 CTS Suite
sky130_fd_sc_hd.tlef
Tech LEF: 5 metal interconnect layers (Met1–Met5), routing track grids, pitch, and via definitions
From: Stage 01 PDK Tech File
antenna_rules.drc
Foundry antenna area ratio limits per metal layer to protect gate dielectric breakdown
From: Stage 01 PDK Foundry
βš™οΈ STAGE 07 PROCESS
β‘  Global Routing & Track Guides
β‘‘ Detailed Track Assignment & Vias
β‘’ DRC Violation Fixing (Shorts/Opens)
β‘£ Antenna Ratio Check & Diode Fix
β‘€ Dummy Metal Fill Insertion (CMP)
β‘₯ Post-Route Physical Signoff
↓
πŸ“€ OUTPUT FILES
picorv32_routed.def
Detailed routed DEF file with exact polygon metal traces and via coordinates on Met1–Met5
β†’ Used by: Stage 08 Parasitic Extraction
picorv32_routed_filled.def
Complete tapeout-ready layout with inserted antenna protection diodes and CMP dummy metal fill
β†’ Used by: Stage 09 DRC/LVS Signoff
routing_guides.guide
3D Global routing guides specifying layer assignments and G-cell channel paths for each net
β†’ Used by: Detailed Router Engine
πŸ“Š REPORTS / SIGNOFF
drc_violations.rpt
Detailed router DRC summary report: 0 shorts, 0 opens, 0 spacing violations (100% CLEAN)
Signoff: Physical Verification Lead
antenna_cmp_signoff.rpt
Antenna ratio check (0 violations, 42 diodes inserted) + CMP metal density (48.2% across layers)
Signoff: Foundry Interface Lead

PicoRV32 on SKY130: TritonRoute Detailed Routing

πŸ”¬ OPEN-SOURCE PROJECT
ProjectPicoRV32 5-Layer Metal Routing on SKY130
Metal StackMet1 (li1), Met2, Met3, Met4, Met5
Total Wirelength6.85 meters across 14,820 nets
Total Vias48,200 inter-layer contacts (Via1–Via4)
STEP 1

OpenROAD Global & Detailed Routing Script (routing.tcl)

# OpenROAD FastRoute Global Routing Execution
read_def picorv32_cts.def
read_sdc post_cts_constraints.sdc

# 1. Global Routing with Congestion-Driven Track Assignment
global_route \
    -guide_file picorv32.guide \
    -layers 1 5 \
    -clock_layers 4 5 \
    -overflow_iterations 50

# 2. Detailed Routing via TritonRoute
detailed_route \
    -guide picorv32.guide \
    -output_drc picorv32_drc.rpt \
    -output_maze picorv32_maze.log \
    -verbose 1
STEP 2

Antenna Diode Insertion & Dummy Metal Fill Script

# 1. Check Antenna Ratio Violations on Routed Metal Lines
check_antennas -report_file antenna_violations.rpt

# 2. Automatically insert gate-protection diodes for violating nets
insert_antenna_diodes \
    -diode_cell "sky130_fd_sc_hd__diode_2" \
    -diode_pin "DIODE"

# 3. Insert Dummy Metal Fill Patterns for CMP Planarity
density_fill \
    -layers {met1 met2 met3 met4 met5} \
    -target_density 0.45

# 4. Export Finalized Routed DEF
write_def picorv32_routed_filled.def
STEP 3

Routing & DRC Clean Signoff Report (routing_signoff.rpt)

=== TritonRoute Detailed Routing Signoff: PicoRV32 ===
Design Top : picorv32_top
Technology : SkyWater SKY130 (5 Metal Layers)

--- Routing Wirelength & Via Statistics ---
  Layer met1 (li1)   :  1.42 meters
  Layer met2         :  2.18 meters
  Layer met3         :  2.05 meters
  Layer met4         :  0.88 meters (Clocks & Power)
  Layer met5         :  0.32 meters (Clocks & Power)
  Total Wire Length  :  6.85 meters
  Total Vias Placed  : 48,200 vias

--- Design Rule Checking (DRC) Summary ---
  Short Violations   : 0
  Open Violations    : 0
  Spacing Violations : 0
  TOTAL DRC ERRORS   : 0 (100% DRC CLEAN PASS)

--- Antenna & CMP Planarity Signoff ---
  Antenna Ratio Max  : 184.2 (Foundry Limit < 200.0 PASS)
  Diodes Inserted    : 42 instances
  Average Metal Dens : 48.2% across all layers (35-65% PASS)
STATUS: STAGE 07 DETAILED ROUTING COMPLETE - PASS

Tools Used in Routing & Metal Fill Stage

Detailed routing engines must satisfy thousands of complex nanometer geometric design rules while preserving signal integrity and closing timing.

Task🏭 SynopsysπŸ”· Cadence🟧 Siemens EDAπŸ”“ Open-Source
Global Routing & Track AssignmentSynopsys IC Compiler II (Z-Route Global)Cadence Innovus NanoRoute (Global)Siemens Aprisa Global RouterOpenROAD (FastRoute)
Detailed Nanometer Routing & Via GenSynopsys ICC2 Detailed RouterCadence Innovus NanoRoute (Detailed)Siemens Aprisa Detailed RouterOpenROAD (TritonRoute)
Antenna Effect Checking & Diode FixSynopsys ICC2 Antenna EngineCadence Innovus Antenna FixerSiemens Aprisa Antenna FixerOpenROAD (insert_antenna_diodes)
Dummy Metal Fill Generation (CMP)Synopsys IC Validator Metal FillCadence Pegasus Metal FillSiemens Calibre YieldEnhancerKLayout Metal Fill Scripts
Post-Route Physical Verification & STASynopsys PrimeTime (Post-Route)Cadence Tempus (Post-Route)Siemens Questa TimingOpenSTA (post-route)