Professional Documents
Culture Documents
Lec - 38
Lec - 38
1
Contents
• Introduction to routing
• Terminology
• Optimization Goals
2
Introduction to Routing
• Physical design flow:
Signal Routing
3
Introduction
• During Global routing, pins with the same electric potential are
connected using wire segments.
4
Introduction: General Routing Problem
Placement result
Netlist:
N1 = {C4, D6, B3}
N2 = {D4, B4, C1, A4}
N3 = {C2, D5} 3 4
N4 = {B1, A1, C3} C
1
A 1 2
4
1 3
B 4 5 6
Technology Information 4
(Design Rules) D
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
5
Introduction: General Routing Problem
Netlist:
N1 = {C4, D6, B3}
N2 = {D4, B4, C1, A4}
N3 = {C2, D5} 3 4
N4 = {B1, A1, C3} C
1
A 1 2
4
N1
1 3
B 4 5 6
Technology 4
Information D
(Design Rules)
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
6
Introduction: General Routing Problem
Netlist:
N1 = {C4, D6, B3}
N2 = {D4, B4, C1, A4}
N3 = {C2, D5} 3 4
N4 = {B1, A1, C3} C
1
A 1 2
4
N4 N2 N3 N1
1 3
B 4 5 6
Technology 4
Information D
(Design Rules)
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
7
Introduction
• Full chip Routing is generally performed in three steps:
GLOBAL DETAILED TIMING-DRIVEN
ROUTING ROUTING ROUTING
8
Introduction
Horizontal
Segment
N3 N3
N1 N1 Vertical
N2 N2 Segment
N3 N3
Via
N3 N3
N1 N1 N2 N1 N1 N2
9
Placement Wire Tracks Global Routing
10
Global Routing
• Wire segments used by net topologies are tentatively assigned
(embedded) within the chip layout.
11
Detailed Routing
• Wire segments are assigned to specific routing tracks.
- Net ordering
- Pin ordering
12
Terminology
• A routing track(column) is an available horizontal(vertical) wiring path.
• A routing region contains routing tracks and/or columns.
• A uniform routing region is formed by evenly spaced horizontal and
vertical grid lines that induce a uniform grid over the chip area.
• A non-uniform routing region is formed by horizontal
and vertical boundaries that are aligned to external
pin connection or macro-cell boundaries.
13
Terminology
• Channel is a rectangular routing region with pins on two opposite sides
and no pins on other side.
Routing channel
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
14
Terminology
• Channel: Horizontal and Vertical
B B C D B C B
dpitch h
A C A B B C D
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
15
Terminology
• The channel capacity represents the number of available routing tracks or column.
• For single-layer routing, the capacity is the height h of the channel divided by the pitch dpitch.
• For multilayer routing, the capacity σ is the sum of the capacities of all layers.
h
σ ( Layers) =
layerLayers
B B C D B C B d
pitch (layer )
dpitch h
A C A B B C D
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
Terminology
• T-Junction occurs when a vertical channel meets with horizontal
channel in a macro cell placement.
B C
B C Horizontal
A B Channel
C A B
Vertical
Channel
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
Terminology
• A Switchbox is the intersection of horizontal and vertical channels.
Vertical
Channel
BC
C
B c Horizontal
A B Channel
C AB
Vertical
Channel
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
Terminology
• 2D-3D Switchbox Bottom pin connection
Metal5 on 3D switchbox
Metal4 3D switchbox
20
Full Custom Design: Optimization Goals
• The routing regions are non-uniform, often with different shapes and heights/widths
D
D B 4
B V
C E 1 5 C 2 E
A F H 5 H 3
A
F
A 1 B D 4 H
D (2) Channel ordering
B V
F 3
C E
A F C 2 E
21
Standard cell design: Optimization Goals
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
22
Optimization Goals
Standard cell design
23
Gate array design: Optimization Goals
• The sizes of the cells and the sizes of the routing regions between the cells (routing
capacities) are fixed.
Source: A. B. Kahng et al., VLSI Physical Design: From Graph Partitioning to Timing Closure
24
Thank You
25