Presentation is loading. Please wait.

Presentation is loading. Please wait.

GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider.

Similar presentations


Presentation on theme: "GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider."— Presentation transcript:

1 GLOBAL ROUTING Anita Antony PR11EC1011

2 Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider all nets simultaneously. – Can be formulated as an integer program

3 LINE PROBE ALGORITHM Gridless - store list of lines and obstructions -sorted lists of vertical and horizontal lines

4 Mikami+Tabuchi’s algorithm Let S and T denote a pair of terminals to be connected. Step 1: Generate four lines (two horizontal and two vertical) passing through S and T. Extend these lines till they hit obstructions or the boundary of the layout. If a line generated from S intersects a line generated from T, then a connecting path is found.

5 If they do not intersect, they are identified as trial lines of level zero. Stored in temporary storage for further processing Step i of Iteration: Pick up trial lines of level i, one at a time o Along the trial line, all its grid points are traced o Starting from these grid points to the trial line of level I,i+1 levels are generated perpendicular to the trial line of level i

6 If a trial line of level i+1 intersects a trial line (of any level)from the other terminal point, the connecting path can be found. o By back tracing from the intersection point to S and T. o Otherwise, all trial lines of level (i+1) are added to temporary storage, and the procedure repeated

7 Mikami & Tabuchi’s Algorithm

8 Line Probing Keep two lists of line segments, slist and tlist, for the source and the target respectively. If a line segment from slist intersects with one from tlist, a route is found; else, new line segments are generated from the escape points. S T slist tlist Intersection

9 Line Probing We can use all the grid vertices on the line segments as escape points: Always find a path but may not be optimal. S T 0 0 1 1 11 1 1 1 1 1 1 1 11 0 0 Escape point Iteration number

10 Will find the path if it exists, not guaranteed to find the shortest path Time and space complexity: O(L), where L is the number of line segments

11 Hightower’s Algorithm

12 Line Probing We can pick just one escape point from each line segment. May fail to find a path even if one exists. S T 1 1 0 0 1 0 0 Escape point Iteration number

13 Advantages small memory requirements - no grid store sorted lists of vertical and horizontal segments fast

14

15

16 Shortest Path Based Algorithms For 2-terminal nets only. Use Dijkstra ’ s algorithm to find the shortest path between the source s and the sink t of a net. Different from Maze Routing: – The graph need not be a rectangular grid. – The edges need not be of unit length.

17 Dijkstra’s Shortest Path Algorithm Label of vertices = Shortest distance from S. Let P be the set of permanently labeled vertices. Initially, – P = Empty Set. – Label of S = 0, Label of all other vertices = infinity. While (T is not in P) do – Pick the vertex v with the min. label among all vertices not in P. – Add v to P. – Update the label for all neighbours of v.

18 Dijkstra’s Algorithm: Example 0 8 8 8 8 10 5 2 23 46 1 9 7 S B T A C 0 10 5 8 8 10 5 2 23 46 1 9 7 S B T A C 0 8 5 14 7 10 5 2 23 46 1 9 7 S B T A C 0 8 5 9 7 10 5 2 23 46 1 9 7 S B T A C 0 8 5 9 7 10 5 2 23 46 1 9 7 S B T A C 0 8 5 13 7 10 5 2 23 46 1 9 7 S B T A C P (Permanently Labeled) Min. Label Vertex

19 Concurrent Approach Consider all the nets simultaneously. Formulate as an integer program. Given: L ij = Total wire length of T ij C e = Capacity of edge e x i j = No of nets which are routed using T ij Determine variable x ij s.t. x ij = 1 if T ij is used x ij = 0 otherwise. T n1, T n2,..., T nk n net n :::: :::: T 11, T 12,......, T 1k 1 net 1 Set of possible routing treesNets

20 Integer Program Formulation

21 Hierarchical Approach Large Integer Programs are difficult to solve. Decompose recursively in a top-down fashion. Those 2x2 routing problems can be solved optimally by integer programming formulation.

22 Hierachical Approach: Example Solving a 2xn routing problem hierarchically. Level 1 Level 2 Level 3 Solution:

23 Types of 2x2 Routing Problems Type 1 Type 7 Type 2 Type 3 Type 4 Type 5 Type 6 Type 8 Type 9 Type 10 Type 11

24


Download ppt "GLOBAL ROUTING Anita Antony PR11EC1011. Approaches for Global Routing Sequential Approach: – Route the nets one at a time. Concurrent Approach: – Consider."

Similar presentations


Ads by Google