Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 204 Efficient Rectilinear Steiner Tree onstruction with Rectangular Obstacles 1. Introduction Rectilinear Steiner Minimal Tree (RSMT) is one of the key problems in VLSI/ULSI physical design [1]. Given n points in a plane, a RSMT problem is to connect these points through some extra points called Steiner points to achieve a tree with minimal total wire length [2-4]. With the trend toward IPblock-based So design, the macro cells, such as memories, logic blocks, present in the design as obstacles and their shapes are generally rectangular. Thus, the problem of constructing rectilinear Steiner minimal tree with rectangular obstacles (RSMTRO) has brought attentions [1,6-9]. The RSMTRO problem can be stated as follows [9]. Let P={p 1,p 2,..,p m } be a set of pins for m pins net, ={b 1,b 2,...,b k } be a set of rectangular obstacles, and V={v 1,v 2,...,v n }=P {corners in } as the vertex set, where each v i has coordinates (x i,y i ). Note that each rectangular obstacle has four corners, we have n m+4k. For example, there are 4 pints (m=4), rectangular obstacles (k=), and 24 vertices (v=24). The input informations for both pins are obstacles are listed in Figures 1 and 1, respectively. Each pin is assigned with its coordination (x i,y i ), e.g., the pin is located at (2,6); and each Each obstacle is defined by two pairs of hin-long Wey epartment of Electrical Engineering National entral University hung-li, Taiwan E-mail: clwey@ee.ncu.edu.tw bstract: - Rectilinear Steiner Minimal Tree (RSMT) is one of the key problems in VLSI/ULSI physical design.with the trend toward IP-block-based So design, the macro cells, such as memories, logic blocks, present in the design as obstacles and their shapes are generally rectangular. The RSMTRO (rectilinear Steiner minimal tree with rectangular obstacles) problem is to connect all pins through some extra points (called Steiner points) to achieve a minimal total length, while avoiding the intersection with any rectangular obstacles in the design. This study presents an efficient RSMTRO algorithm. The algorithm consists of two step process: Path onstruction; and Path ssignment. set of assignment rules was derived for path assignment. The developed algorithm can efficiently provide RSMTRO solution with good quality. Key-words: Physical esign, Placement & Routine, IP-locks, Rectilinear Obstacles, Rectilinear Steiner Tree, Spanning Graph. points, i.e., the coordinates of the bottom-left and the top-right points of the obstacle, e.g., the two corners of obstacle 1 are (1,10) and (6,12), respectively. ased on the list of coordinates of pins nd obstacles, Figure 1 shows the layout. The RSMTRO problem is to connect all pins through some extra points (called Steiner points) to achieve a minimal total length, while avoiding the intersection with any rectangular obstacles in the design. 4 2 6 1 11 2 11 14 1 10 6 12 3 1 8 3 1 8 10 13 12 11 14 1 1 10 Existing heuristic algorithms for the RSMTRO problem can be classified into three categories [9]: (1) Maze routing; (2) Sequential approach; and (3) onnection graph based algorithm. Maze routing [] can optimally route two pin nets, for multi-pin nets, it is inefficient in terms of run time and mem- 1 2 3 0 10 1 Figure 1: Example: Pins; Obstacles; and Layout of both Pins and Obstacles. 4
Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 20 ory. The sequential approach consists of two steps. It first constructs either a minimal spanning tree or a Steiner minimal tree with absence of obstacles. The second stes to apply the simple line sweep technique to substitute edges around the obstacles for the edges overlapped by the obstacles. complicated 4-process heuristics wad proposed in [1] to improve the overlap removal. Finally, the third category constructs a connection graph by the pins and obstacle boundaries. It guarantees that ate least one rectilinear Steiner minimal tree is embedded in the graph. Then, it uses graph searching technique to improve the resultant interconnections. Recently, an efficient spanning graph based approach has been proposed [9] to provide the RSMTRO solution with good quality. The approach containing only O(n) vertices and O(n) edges, is much smaller than any previous connection graph approaches. The spanning graph construction takes (n long n) time and memory usage. However, the construction of spanning graph can be simplified to reduce the time complexity of the RSMTRO problem. This motivated the development presented in this study. In the next section, the spanning graph based approach in [9] is first briefly reviewed. Section 3 presents the developed algorithm for RSMTRO problem. Finally, a concluding remark is given in Section 4. 2. ackground For the RSMTRO problem, we assume that any two of the rectangular obstacles will not overlap with each other, but two obstacles could be pointtouched at the corner or line-touched at the boundary. The resultant interconnection segments are allowed to touch obstacles, as shown in Figure 2. Figure 2: Interconnections with Rectangular Obstacles: Not llowed; and llowed. complete spanning graph, as shown in Figure 3, is first constructed in [9]. The approach employs an efficient way to reduce the searching time. More specifically, each rectangular obstacle has four corners, S i1, S i2, S i3, and S i4, as shown in Figure 3, and it is partitioned into eight neighbors, R 1, R 2,..., R 8. Each corner takes only 3 neighboring search regions which are adjacent to this corner. For example, R 8, R 1, and R 2 are the three neighboring search regions for the corner S i1 ; and R 4, R, and R 6 are those for the corner S i3. Each pin has four neighboring search regions, Q 1, Q 2, Q 3, and Q 4. 14 1 20 1 19 (e) ased on the complete spanning graph, the shortest paths between any two pins and their distances are derived as shown in Figure 3. For example, a shortest distance of 14 is resulted between pins and without intersecting the obstacles. ased on the graph representation in Figure 3, a minimal spanning tree is derived in Figure 3(d) with a minimal total distance of 38. Selecting the needed paths, the corresponding spanning tress is given in Figure 3(e). Figure 3 provides the final RSMTRO solution. In that approach, a complete minimal spanning graph must be constructed initially. The approach also needs to construct the shortest paths for all possible two-pin pairs and calculate their distances, where there are [(m 2 -m)/2] pairs. 14 S i2 R 2 S i1 R 3 R 1 1 Q 2 Q 1 R 4 R S i3 R 6 S i4 R 8 Q 3 P Q 4 (d) Figure 3. Spanning Graph ased pproach: omplete Spanning Tree for Example in Figure 1; Searching Regions; omplete onnected Graph; (d) Minimal onnection Tree; and (e)& The RSMTRO Solution. R
Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 206 In fact, the calculated distances in the complete connected graph, in Figure 3, can be represented by a distance table shown in Figure 4. simple greedy approach can be adopted to select those pairs with the minimal total length. For instance, in the distance table, the pair (,) with the minimal distance,, is first selected, hence, the pin set of the connected graph includes {,}. y eliminating the pair (,), the pair (,) with a distance of 14 is then selected. This results that the pin set is updated as {,,}. Now, the only pin left out is, as shown in Figure 4. mong the pairs (,), (,), and (,), the pair (,) with a distance of 1 is therefore selected. The final connected graph has been shown in Figure 3(d). 12 13 1 19 12 Figure 4: Pair Selection: istance Table; and onnected Graph. pparently, we need only construct the paths for those three pairs if we were able to identify them. s such, we really don t need to waste the computing time for constructing the complete spanning graph for those unwanted paths. 3. evelopment The developed approach consists of two processes: Path onstruction; and Path ssignment. The former process constructs a connection graph with a minimal total length, while the latter derives the final RSMTRO solution. For the Path onstruction process, we first build a distance table which records the shortest distance between any two pins without obstacles, as shown in Figure. Let =(x i,y i ) and p j = (x j,y j ) be any two pins, the distance is defined as d(,p j )= x i -x j + y i -y j. Prior to building the distance table, the given pins are first sorted if they are not in an ascending order. More specifically, all pins are first sorted by their x coordinates in an ascending order. However, if two pins have the same x coordinates, then they are sorted by their y coordinates in an ascending order. The sorting process is important for reducing searching time. Our goal is to construct a connection graph 14 1 with the minimal total length in the presence of obstacles. Note that the distance d(,p j ) is a half of the perimeter of a rectangle which takes the points and p j as either the diagonal or off-diagonal corners, as shown in Figure. The rectangle may become a line segment if either x i =x j or y i =y j. The rectangle has two paths traveling from to p j in the absence of obstacles, and they may or may not intersect the obstacle(s). efinition 1: (Essential Pair) pin-pair (,p j ) is referred to as essential if at least one path in the rectangle does not intersect any obstacles. Otherwise, the pair is non-essential. path of the rectangle corresponding to the pair (p 3,p 4 ), in Figure, does not intersect the obstacle, thus it is an essential pair. On the other hand, both paths of the rectangle corresponding to (p 1,p 2 ) intersect an obstacle. Even though a path of the rectangle corresponding to (p 1,p ) does not intersect the obstacle in the right-hand side, the other path intersects the other obstacle. Thus, both pairs (p 3,p 4 ) and (p 1,p ) are non-essential. In Figure 1, there exists only one essential pair, i.e., (,) with a minimal distance of units, and it is marked by a circle in Figure. Observation 1: In both cases that the presence and absence of obstacles, the connected path of an essential pair has the same minimal distance. The minimal distance of the connected path for a non-essential pair in the presence of obstacles is always greater than or equal to that without obstacles. efinition 2: (MS-pair) n essential pair with the minimal distance is referred to as must-be-selected (MS) pair. If the available MS-pairs are sufficient to construct a connected graph, then it is a RSMTRO solution with the minimal total length. In this case, no spanning graph is needed. Or, if the available MS-pairs are sufficient to construct some subgraph with the minimal total length among the pins it covers. Then, the subgraphs then become a super pins for the problem. In that case, the program complexity is reduced significantly. From the distance table in Figure, the pair (,) with a distance of is the only essential pair and
Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 20 thus it is also a MS-pair. The relationship among pins and distance table can be represented as in Figure. Our goal is to derive a connected graph which covers all pins with the minimal total length. greedy algorithm is attempted in this study, a minimal graph as shown in Figure (d). The MS-pair is automatically selected, and two other pairs with the minimal distance of 12 are also selected, where four pins are covered completely. Note that the distances in Figure were calculated without considering the obstacles, they are not the actual distances. However, the distances for the essential pairs are the actual values. Therefore, we must calculate the actual distance of both pairs (,) and (,). 1 10 12 12 13 1 19 12 p p 2 p 4 v d 1 13 19 v a v b v c ve 12 0 10 1 simple segment search approach is developed for constructing the shortest path. asically, we only search the corners lie on the shortest path between both pins and mark those corners, as shown in Figure (d). Thus, we only store the data for those connected corners. The shortest path for (,) will pass through the corners V a (6,12), V b (6,10), V c (,8), and V d (3,8). Therefore, we only record the coordinates (in sequence): {,V a,v b,v c,v d,} and its distance of 14. Similarly, the shortest path for (,) is also constructed. The path information includes {, p 1 (g) Figure. Path onstruction: istance Table (Without Obstacles); Essential/non-essential Pairs; -(e) Minimal Graph; Path onstruction; and (g) omplete Path onstruction. p 3 13 12 12 14 (d) (e) (10,13),(10,),(,),(,3),(11,2)} and a distance of 20. The connected graph in Figure (d) is comprised of three segments with the distances of, 14, and 20, respectively. The total distance is 41. The next stes check if quality improvement is possible. If the distances of all the remaining pairs in the distance table are larger than or equal to the maximal distance in the current connected graph, then no improvement can be resulted. The connected graph is then completed. Otherwise, some pairs must be tried. For instance, the maximal total distance of the current connected graph in Figure (d) is 20, where the remaining pairs,,, and, have smaller distance. Thus, we will first try the pair (,) to replace (,). Similarly, the shortest path for the pair (,) is constructed with following information: {(10, 2),(,3),(,),(,8),(3,8),(2,6)} and a distance of 1. In other words, the current connected graph containing 3 pairs, (,), (,), (,), have the distances of, 14, and 1, respectively, or a total distance of 38. Since the maximal distance of the current graph is 1 which is smaller than or equal to the remaining pairs in the distance table. The current graph, as shown in Figure 4, with a distance of 38 is the solution. The graph construction process is then terminated. In summary, the path construction process starts with building up the distance table without consideration of the obstacles. ased on the given distances, a greedy algorithm is applied to derive an initial graph which covers all pins. The quality of the solution is improved progressively. For the Phase ssignment process, a number of assignment rules are given in Figure 6. The connected graph in Figure (g) is converted as the final RSMTRO solution with Steiner nodes in Figure 3. More specifically, let dots and squares represent the pins and vertices in Figure 6, respectively. onsider the pin and vertex v a, there exist two paths from to v a, namely, right-down path and down-right path. If the next vertex to be connected is v 3, as shown in Figure 6, we will select the right-down path from v 1 to v 2. On the other hand, if the next vertex v 4 to be connected is shown in Figure 6, the down-right path is selected for the path from v 1 to v 2. Therefore, in Figure 6, the right-down path is selected for (v a, ) and the up-right path is selected for (,v b ),
Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 208 as shown in Figure 6(d). Similarly, for the cases in Figures 6(e)-6(g), the path assignments are shown. v 4 v 1 v 1 Figure 6. Path ssignment: Pin to Marked Points; & ssign Rules; (d) Final ssignment; and (e)-(g) More ssign Rules. onsider the path from to in Figure, based on the rule in Figure 6(e), the path including the vertices, v d, and v c are assigned as a upright-directed path, as illustrated in Figure 3. y the same rule, the vertices v c and v b are assigned by a right-up-directed graph. Finally, the vertices v b, v a, and are assigned by a right-downdirected path. Similarly, the remaining shortest paths contributing to the connected graph can be assigned as shown in Figure 3. In summary, based on the distance calculation, the minimal total distance is 38. However, based on the developed path assignment process, with two Steiner points, the total length is 30, as shown in Figure 3. 4. onclusions This paper presents an efficient connected graph based approach for the RSMTRO problem. The algorithm is comprised of two steps: Path construction; and Path assignment. The time-consuming process for constructing the spanning graph is simplified considerably. The algorithm has been implemented in language. number of benchmark examples have been tested at the time of this writing. The test results are very promising. However, there are number of implementation issues must be addressed in the future. For example: (1) deriving more assignment rules so that v 3 v 2 v a a v b v b (e) v 2 (g) (d) more paths can be shared to reduce the total wire length; (2) a heuristic algorithm is being developed to replace the greedy algorithm for better quality. References 1. Y. Yang, Q. Zho, T. Jing, X. Hong, and Y. Wang, "Rectilinear Steiner tress among obstacles," Proc. th International onference on SI, pp.348-31, October 2003. 2. P. K. garwal and M. I. Shing, "lgorithms for the special cases of rectilinear Steiner trees: I. Points on the boundary of a rectilinear rectangle. Networks, 20:43-48, 1990. 3... Kahng and G. Robins, " new class of iterative Steiner tree heuristics with good performance," IEEE Trans. on, Vol.11, pp.1462-146, 1992. 4. M. orch, R.M. Owens, and M.J. Irwin, " fast and simple Steiner routing heuristic," Springer-Verlag Lecture Notes in omputer Science (62), pp.33-42, 1993...Y. Lee, n lgorithm for path connections and its applications, IRE Trans. on Electronic omputers, Vol.10, pp.346-36,1961. 6.. hiang, M. Sarrafzadeh, and. K. Wong. n algorithm for exact rectilinear Steiner trees for switchbox with obstacles. IEEE Trans. on ircuits and Systems, Vol. 39, pp.446-4, 1992.. J.Ganley and J.P.ohoon, "Routing a multiterminal critical net: Stiener Tree onstruction in the presence of obstacles," Proc. International Symp. on ircuits and Systems, Vol.1, pp.113-116, 1994. 8. J. Liu, Y. Zhao, E. Shragowitz, and George Karypis, " polynomial time approximation scheme for rectilinear Steiner minimum tree construction in the presence of obstacles," Proc. International onference on Electronics, ircuits, and Systems (IES), pp.81-84, 2002. 9. Z. Shen,..N. hu, and Y.-M. Li, "Efficient rectilinear Steiner tree construction with rectilinear blockages," Proc. International onference on omputer esign, Oct. 200.