Download presentation
Presentation is loading. Please wait.
1
Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
An Efficient Algorithm for Obstacle-Avoiding Rectilinear Steiner Tree Construction Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
2
Outline Introduction Problem Formulation Overview Of Algorithm
Detail Of Algorithm Experimental Results Conclusions
3
Introduction Given n points on a plane, a Rectilinear Steiner Minimal Tree (RSMT) connects these points through some extra points called steiner points to achieve a tree with minimal total wire length. RSMT is a NP-complete problem.
4
Introduction In fact, today’s design often contains many rectilinear routing blockages, e.g., power nets, macro cells, IP blocks, and pre-routed nets. The obstacle-avoiding rectilinear Steiner minimal tree (OARSMT) problem is of particular importance for modern VLSI designs.
5
Problem Formulation Given a set of m pin vertices, P = {p1, p2, …, pm}, and a set of k rectangular obstacles, O={o1, o2, …, ok}. An OARSMT connects these pin vertices via some Steiner points.
6
Problem Formulation The main goal is to find an OARSMT with a desired total wirelength in as short as runtime. All the path are prohibited to run across obstacles.
7
Overview Of Algorithm There are five steps:
Minimum spanning tree (MST) construction Set of spanning trees (SST) construction Obstacle-avoiding spanning graphs (OASGs) construction (A) (B) (C)
8
Overview Of Algorithm There are five steps:
Obstacle-avoiding spanning tree (OAST) construction Obstacle-avoiding rectilinear Steiner minimum tree (OARSMT) construction (D) (E)
9
Detail Of Algorithm MST construction (Minimal Spanning Tree)
spanning graph construction setting bounding boxes and detour regions weights assignment MST construction
10
Detail Of Algorithm spanning graph construction
Divide the plane into four search regions of each pin vertex. Then we search each region and find the closest point in each region and connect it to p.
11
Detail Of Algorithm setting bounding boxes and detour regions
A bounding box is the region which two end points cover, and its boundaries are equally composed with the upper and lower L-shaped paths. A DTR is the region which any two points can find the shortest path to connect these two end points in this area.
12
Detail Of Algorithm There are three case of setting DTR. A Case1:
13
Detail Of Algorithm Weights assignment
In case 1 and case 2, the shortest distance of two end points is equal to the half-perimeter of DTR. In case 3, besides the half-perimeter of DTR, an extra length of detour path is summed to the weight. Case2: Detour Region 13 6 15 15 6 8 11 9 8 Bounding Box
14
Detail Of Algorithm MST construction
Kruskal’s method is then applied to construct the MST T, which T=(VT , ET). Among the edges added to ET , the ones intersecting obstacles are recorded simultaneously.
15
Detail Of Algorithm Set of spanning trees (SST) construction
B Set of spanning trees (SST) construction Each edge in E is sequentially checked whether it intersects any obstacle or not. Obstacle is recoded simultaneously when set the DTRs, and it only cost O(m) time to partition the MST into SST. m is the number of pin vertices
16
Detail Of Algorithm C OASGs construction (Obstacle-Avoiding Spanning Graph) An OASG is constructed among the pins and corner vertices in each DTR, and all the edges of OASG are not intersecting obstacles. The detour paths are iteratively found by breadth-first- search method. pins corner vertices
17
Detail Of Algorithm D OAST construction (Obstacle-Avoiding Spanning Tree) The partitioned SST are then merged into a complete tree OAST, T = ( V , E ), by shortest detour paths in each DTR. And there is no edge in E crossing obstacles. SST OASG OAST
18
E Detail Of Algorithm OARSMT construction (Obstacle-Avoiding Rectilinear Spanning Minimal Tree) Then transform the slant edges in E into rectilinear ones by either the upper or the lower L-shaped paths. Otherwise, this paper have maintained a share-edge- relation table, called “SERT”, to record the adjacent relations of all edge in E. The composition having the largest share length is selected first and transformed to rectilinear.
19
E Detail Of Algorithm When there is no more composition of share length being found, the other edges in E are transformed by the lower L- shaped paths. Finally, a U-shaped path pushing method is applied to further reduce the wirelength.
20
Experimental Results This paper collect the 22 test cases used in [11] and randomly generate another 6 larger cases. Especially in the large cases DT01~DT06, we have 57.94% and 64.9% average time improvement in [10] and [11] respectively. The second column are the number of pin vertices and obstacles.
21
Experimental Results
22
Experimental Results Time Improvement : => the number of edges in each OASGs O(c) O(n) c is the number of pin and corner vertices in each DTR n = P∪{corner vertices in O} P is the pins, O is the obstacles
23
Conclusions This paper have proposed an efficient algorithm to construct an OARSMT. And their algorithm can efficiently construct the OARSMT without degrading the performance of wirelength, especial for the large cases.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.