Presentation is loading. Please wait.

Presentation is loading. Please wait.

VLSI Routing. Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect.

Similar presentations


Presentation on theme: "VLSI Routing. Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect."— Presentation transcript:

1 VLSI Routing

2 Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect the terminals of the nets  Levels of abstraction: oGlobal routing oDetailed routing Objectives  Cost components: oArea (channel width) oWire delays oNumber of layers oAdditional cost components: number of bends, vias

3 Global vs. Detailed Routing Global routing  Input: detailed placement, with exact terminal locations  Determine “channel” (routing region) for each net  Objective: minimize area (congestion), and timing (approximate) Detailed routing  Input: channels and approximate routing from the global routing phase  Determine the exact route and layers for each net  Objective: valid routing, minimize area (congestion), meet timing constraints  Additional objectives: min via, power Figs. [©Sherwani]

4 Routing Environment Chip architecture  Full-custom  Standard cell  Gate Array

5 Routing Environment Chip architecture  Full-custom: oNo constraint on routing regions Objective functions are the objective functions of general routing problem. Routability Area Minimization Total wire length minimization Maximum wire length minimization

6 Routing Environment Chip architecture  Standard cell: oVariable channel height? oFeed-through cells connect channels Failed net Channel Feedthroughs Channels do not have predetermined capacity Feedthroughs have predetermined capacty Area minimization Minimization to total wire length Minimization of maximum wire lenght

7 Routing Environment Chip architecture  Gate Array: oFixed channel height oLimited switchbox connections oPrefabricated wire segments have different weights Figs. [©Sherwani] Tracks Failed connection Routability Minimize total wire length Minimize maximum wire length

8

9

10

11

12

13 Maze Routing (Lee Algorithm) Similar to breadth-first search  Very simple algorithm  Works on grid graph  Time complexity: grid size (NxN) Algorithm  Propagate a “wave” from source until hit the sink (implemented using a queue)  Trace back to find the path Guaranteed to find the optimal solution  Usually multiple optimal solutions exist More than two terminals?  For the third terminal, use the path between the first two as the source of the wave s 1 1 1 22 22 2 3 33 3 3 3 4 4 4 44 4 5 5 5 5 55 5 5 t

14 Maze Routing Key to popularity:  Simplicity  Guaranteed to find the optimal solution  Can realize more complex cost functions too (e.g., number of bends in a path) Weakness:  Multiple terminals not handled efficiently  Dependent on grid, a two dimensional data structure Different variations exist  Soukup’s alg: oFirst use DFS, when get to an obstacle, use BFS to get around oNo guarantee to find the shortest path

15 1 1 2 2 2 3 3 3 3 4 4 4 4 4 5 Multiple Terminal Nets A E B C D

16 1 1 2 2 2 3 3 3 3 4 4 4 4 4 5 D E C B A

17 1 2 1 1 2 1 1 2 2 1 1 2 2 2 3 D E C B A

18 2 1 1 2 1 1 2 2 1 1 1 1 1 D E C B A 1 1 2 2 2 2 2 2 2

19 Finding More Desirable Paths

20 2 3 3 21 2 221 3 1 33 12 2 22 2 22 33 3 3 333 333333 3 3333 33 3 22222223

21 2 3 3 21 2 221 3 1 33 12 2 22 2 22 33 3 3 333 333333 3 3333 33 3 22222223

22 1 5 2 2 2 3 5 5 5 4

23 1 5 8 2 2 2 6 35 8 58 85 5 4

24 11971 5 8 Finding More Desirable Paths 152 2 162 6 35 811 5 14 11814 17141185 5 139 4

25 11971 5 8 Finding More Desirable Paths 152 2 162 6 35 811 5 14 11814 17141185 5 139 412

26 11971 5 8 Finding More Desirable Paths 132 2 162 6 35 811 5 14 11814 17141185 5 139 412

27 Speed Improvement ST

28 Hadlock’s Algorithm S T 01 1 1 1 1 1 1 1 2 22 2 2 11 2 2 2 2 2 222

29 Soukup’s Algorithm S T

30 0 0 1 1 1 1 1 1 2 22 0 1 1 Line Search (Probe) Algorithm Mikami-Tabuchi’s Algorithm

31 0 0 1 1 1 1 1 1 2 22 0 1 1 Line Search (Probe) Algorithm Hightower’s Algorithm

32 Multi Terminal Nets Steiner Tree Steiner tree Steiner point MST Rectilinear Steiner Tree Minimize Wire length


Download ppt "VLSI Routing. Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect."

Similar presentations


Ads by Google