Handbook of algorithms for physical design automation part 53 pdf

10 464 0
Handbook of algorithms for physical design automation part 53 pdf

Đang tải... (xem toàn văn)

Thông tin tài liệu

Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 502 9-10-2008 #17 502 Handbook of Algorithms for Physical Design Automation For example, the tree produced by the DBS group Steiner algorithm above (Figures 24.12 and 24.13) can be utilized as the starting point in the bounded-radius bounded-cost construction of Ref. [87]. For an arbitrary instance of the group Steiner problem (with k groups), this combination yields a routing tree with simultaneous provably good bounds for both tree radius and tree cost. In particular, the tree resulting from this merger will have radius (1 + ) times the optimal radius, and total cost (1+ 2  )·2·(2+ln k 2 )· √ k times the optimal cost, for any user-specified radius-cost trade-off parameter >0. 24.5.6 EMPIRICAL PERFORMANCE OF THE GROUP STEINER HEURISTIC The group Steiner heuristic above compares favorably with the RW heuristic proposed by Reich and Widmayer [80]. The RW group Steiner heuristic begins by first finding the MST T for the entire set of nodes of all the groups. If a leaf node is not the last member of its group in the tree T ,thenitmay be removed. The RW heuristic then repeatedly deletes such a leaf node that is incident to the longest edge among all such nodes. On random uniformly distributed pointsets with varying predetermined group areas, the DBS group Steiner algorithm described above significantly outperforms the RW algorithm, especially as the group sizes and the group areas increase [78,79]. 24.6 OTHER STEINER TREE METHODS Once it became known [48,49] that MST-improvement-based Steiner heuristics having worst-case performance bounds no better than the MST itself (i.e., 3 2 in the rectilinear plane), other rectilinear Steiner heuristics with average performance approaching that of I1S were subsequently proposed [88–94]. While it is generally difficult to analytically quantify the solution quality of heuristics, the I1S method was later proven to be the earliest Steiner approximation with a nontrivial performance ratio in quasi-bipartite graphs [55,56]. In 2003, Kahng et al. developed a highly scalable heuristic for computing n ear-optimal Steiner trees, based on the B1S approach [95]. This batched greedy algorithm (BGA) achieves its speed by combining greedy triple contraction [52,95] with a new linear size data structure for finding bottleneck edges [97]. The BGA can route in grap h-based uniform orientatio n geometries, in the presence of obstacles,andunder varyingviacosts, requiring onlyO(n) space and O(n log 2 n) time for n terminals. BGA can route noncritical nets with thousands of terminals within seconds of CPU time while maintaining h igh- solution quality (i.e., on par with that of B1S, about 11 percent improvement over MST cost for random instances). More recently, Ref. [98] developed an O(n log n)-time octilinear Steiner tree heuristic based on spannin g graphs, with performance and runtime similar to that of BGA. On another front, exact Steiner tree algorithms have also evolved r apidly in recent years [32,65], enabling exact solutions of large instances (u p to severalthousand points) within reasonable runtimes. However, the faster exact methods typically work only in two-dimensional geometric versions of the Steiner problem, where the underlying geometry can be carefully analyzed and h eavily exploited to reduce the size of the search space. Nevertheless, exact Steiner algorithms for the rectilinear plane have been optimized to the point of actually becoming practical for use on small pointsets in commercial applications. 24.7 IMPROVING THE THEORETICAL BOUNDS Berman and Ramaiyer [70] and Zelikovsky et al. [51,61,96] have developed several SMT heuristics similar to I1S, with approxima tion ratios substantially less than 3 2 . These methods were derived from the pioneering technique developed by Zelikovsky for the Steiner problem in graphs [52]. In particular, an algorithm with an approxim ation ratio of 11 8 in the rectilinear plane was given in Ref. [51]. These series of results have settled in the affirmative the longstanding open question of Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 503 9-10-2008 #18 Minimum Steiner Tree Construction 503 whether there exists a polynomial-time rectilinear Steiner heuristic with approximation ratio better than 3 2 . Subsequent work by Fößmeier et al. [96] has improved on the O(n 3.5 ) time complexity and 11 8 approximation bound of Ref. [51], with an O(n 1.5 ) implementation, where only a linear number of triples n eeds to be considered. The authors of Ref. [61] have shown that Zelikovsky’s algorithm has performance ratio between 1.3 and 1.3125, and that Berman and Ramaiyer’s algorithm has performance ratio at most 1.271; the latter algorithm can also be implemented to run in O(n log 2 n) time. A subsequen t algorithm achieved a rectilinear performance ratio of 1.267 time optimal within O(n log 2 n) time [72]. In a 1996 landmark result, Arora has established that Euclidean and rectilinear minimum-cost Steiner trees can be approximated arbitrarily close to optimal within polynomial time [99], set- tling the longstanding open question whether this is indeed possible. Arora’s methods also yield polynomial-time approximation schemes arbitrarily close to optimal for other combinatorial opti- mization problems, such as the Euclidean traveling salesman problem. Arora’s techniques were also used to achieve a polynomial-time approximation scheme for the rectilinear arborescence problem, with a performance bound arbitrarily close to optimal [100]. The performance bound of the g roup Steiner algorithm described above [78] was significantly improved in Ref. [79]. This was achieved by using d-stars rather than 2-stars, which improves the √ k factors in all the bounds of Section 24.5 to d · d √ k. Thus, the performance ratio of the DBS group Steiner algorithm (Figures 24.12 and 24.13) improved to O(k  ) for arbitrarily small >0. In particular, a group Steiner tree with cost at most 2d ·[2 +ln(2k)] d−1 · d √ k time optimal is computed by this more general d-star-based group Steiner algorithm within O[τ + (|V|·k) d ] time, where τ is the time complexity of computing all-p airs shortest paths [79], k is the number of groups, and d is a user-selectable parameter that trades-off runtime against solution quality. A group Steiner heuristic with a polylogarithmic performance bound was more recently given in Ref. [101]. 24.8 STEINER TREE HEURISTICS IN PRACTICE While Steiner heuristics such as the I1S approach [19,58] yield highly accurate (i.e., near-optimal) solutions, industrial CAD applications sometime demand high runtime speed over solution quality. This is especially true, e.g., inside the inner loop of modern placement tools, where fast wirelength estimators are repeatedly invoked during the construction of timing-driven placements. In such sce- narios therefore, more accurate heuristics (e.g., the I1S approach) may be useful when the number of pins in a net is small (say, less than ten). On the other hand, when the number of pins grows into dozens or hundreds, more efficient heuristics such as those of Ref. [11] or [89] are more likely to deliver faster execution speeds. This motivated the recent development of progressively faster wirelength estimators such as the FLUTE algorithm of Ref. [102], whose speed derives from pre- computed table lookup. However,faster execution speeds typically come at a price, such as degraded solution quality, limitations on net sizes, restriction to specific metrics, etc. Careful empirical testing can determine which Steiner heuristics best suit a particular practical scenario and design regime. 24.9 FUTURE DIRECTIONS F OR THE S TEINER PROBLEM Chief among future research directions for the Steiner problem is finding general graph Steiner heuristics with improved performance bounds, i.e., smaller than the currently best-known bound of 1 + ln 3 2 ≈ 1.5493 times optimal of the loss-contracting algorithm (LCA) [55,56]. Steady improve- ments in this upper bound over the last 25 years progressed at an average rate of about 2 percent per year. Other special cases of the Steiner problem for special metrics, specific cost functions, and particular graph types may be explored separately, where it may be possible to exploit the underlying geometry to further improve the performance bounds. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 504 9-10-2008 #19 504 Handbook of Algorithms for Physical Design Automation Interestingly, the LCA algorithm is the first (and so far only) heuristic that works p rovably well for all of the special graph types discussed above. It would also be of interest to find a minimum α, such that for any β>α, there exists polynomial-time β-approximation of the general graph Steiner problem, as well as to improve the nonapproximability lower bounds, the best of which is currently 96 95 for general weighted graphs [75]. Group Steiner heuristics with improved approximation ratio are also of significant interest. It would be interesting to generalize Hwang’s theorem to high e r rectilinear dimensions [6]. It is known that Hwang’s ratio in any rectilinear dimension d is bounded from below by 2 − 1 d [49], and is also bounded from above by 2 for arbitrary metrics (including all rectilinear d dimensions). This leaves an open gap of size 1 d for Hwang’s spanning-to-Steiner ratio in rectilinear d dimensions. Generalizing Hanan’s theorem to λ-geometries seems to be more difficult than for th e rectilinear metric [42]. Mo reover, relatively little is known regarding generalization s of Hwang’s theorem to arbitrary λ-geometries (one unusual result along these lines is that the Steiner ratio in λ-geometries is not monotonic in the parameter λ [6]). More research is also needed to tighten both the upper and lower bounds for minimum-cost arborescences in graphs. Similarly, almost nothing is known about arborescences in three-dimensional rectilinearspace (or in any higher dimensions or alternative geometries). From a practical perspective, for any given fixed performance bound it would be useful to minimize the running times of the associated heuristics, and to quantify and explore various trade- offs between runtimes and solution quality. That a heuristic has a provably good performance bound does not automatically imply that its solutions are necessarily superior to those of a heuristic with a worse (or no) bound (because in practice, actual solutions of the various heuristics are rarely as bad as the theoretical bound would suggest; in fact, solutions produced by most reasonable Steiner heuristics are on average within a few percent of optimal for most random instances). Thus, it would be very useful to undertake research that would bring theory into closer alignment with practice. Along similar lines, additional research is needed to implement various heuristics (e.g., Arora’s algorithm [ 99]) and benchmark their practical runtime and emp irical solution quality. The fast- Steiner code for the BGA scalable implementation of the provably good heuristic of Ref. [61] is freely available from the authors of Refs. [95,97]; it would be interesting to see how future heuristics fare against this method. Various Steiner heuristics should be compared side-by-side on numerous realistic classes and sizes of inputs, including benchmarking on actual commercial VLSI designs, whenever possible. Creating more realistic and robust standard benchmarks for testing the various kinds of Steiner heuristics would also be highly beneficial. Finally, modern VLSI layout seeks to optimize not only wirelength, but must also take into consideration many other technological issues and criteria, such as timing, skew, density, manufac- turability, yield, reliability, power, noise, and various combinations of these. While recent routing formulations strive to achieve some of these objectives [11–13,15,17–20], much interesting research remains to be done in these areas. REFERENCES 1. A. Caldwell, A. B. Kahng, S. Mantik, I. Markov, and A. Zelikovsky. On w irelength estimations for row- based placement. In Proceedings of the International Symposium on Physical Design, pp. 4–11, Monterey, CA, April 1998. 2. F. K. Hwang, D. S. Richards, and P. Winter. The Steiner Tree Problem. Annals of Discrete Mathematics, Vol. 53, North-Holland, The Netherlands, 1992. 3. B. Korte, H. J. Promel, and A. Steger. Steiner Trees in VLSI-Layouts, in Paths, Flows and VLSI-Layout. Springer-Verlag, New Yo rk, 1990. 4. X. Cheng and D. -Z. Du. Steiner Trees in Industry. Kluwer Academic Publishers, Dordrecht, The Netherlands, 2001. 5. D. Cieslik. Steiner Minimal Trees. Kluwer Academic Publishers, Dordrecht, The Netherlands, 1998. 6. D. Cieslik. The Steiner Ratio. Kluwer Academic Publishers, Dordrecht, The Netherlands, 2001. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 505 9-10-2008 #20 Minimum Steiner Tree Construction 505 7. D. -Z. Du, J. M. Smith, and J. H. Rubinstein. Advances in Steiner Trees. Kluwer Academic Publishers, Dordrecht, The Netherlands, 2000. 8. A. O. Ivanov and A. A. Tuzhilin. Minimal Networks: The Steiner Problem and Its Generalizations. CRC Press, Boca Raton, FL, 1994. 9. H. J.Promel andA. Steger. The Steiner TreePr oblem: A TourThrough Graphs, Algorithms, and Complexity. Friedrich Vieweg and Son, B raunschweig, Germany, 2002. 10. C. J. Alpert, G. Gandham, M. Hrkic, J. Hu, A. B. Kahng, J. Lillis, B. Liu, S. T. Quay, S. S. Sapatnekar, and A. J. Sullivan. Buffered steiner trees for difficult instances. IEEE Transactions Computer-Aided Design, 21(1): 3–14, January 2002. 11. C. J. Alpert, A. B. Kahng, C. N. Sze, and Q. Wang. Timing-driven steiner trees are (practically) free. In Pr oceedings of the ACM/IEEE Design Automation Conference, pp. 389–392, San Francisco, CA, 2006. 12. K. D. Boese, A. B. Kahng, B. A. McCoy, and G. Robins. Near-optimal critical sink routing tree constructions. IEEE Transactions Computer-Aided Design, 14(12): 1417–1436, December 1995. 13. J. Cong, A. B. Kahng, C. K. Koh, and C. -W. A. Tsao. Bounded-skew clock and steiner routing. ACM Transactions on Design Automation of Electronic Systems, 3: 341–388, October 1999. 14. J. Hu and S. S. Sapatnekar. Algorithms for non-hanan-based optimization for VLSI interconnect under a higher order awe m odel. IEEE Transactions Computer-Aided Design, 19(4): 446–458, April 2000. 15. J. Hu and S. S. Sapatnekar. A survey on multi-net global routing for integrated circuits. Inte gration: The VLSI Journal, 11: 1–49, 2001. 16. J. Huand S. S.Sapatnekar. Atiming-constrained simultaneous global r outingalgorithm. IEEE Transactions Computer-Aided Design, 21(9): 1025–1036, September 2002. 17. Y.I. Ismail and E. G. Friedman. On-Chip Inductance in High-Speed Integrated Circuits. Kluwer Academic Publishers, Boston, MA, 2001. 18. A. B. Kahng, S. Mantik, and D. Stroobandt. Tow ards accurate models of achievable routing. IEEE Transactions Computer-Aided Design, 20: 648–659, May 2001. 19. A. B. Kahng and G. Robins. On Optimal Interconnections for VLSI. Kluwer Academic Publishers, Boston, MA, 1995. 20. B. A. McCoy and G. Robins. Non-tree routing. IEEE Transactions Computer-Aided Design, 14(6): 790–784, June 1995. 21. S. Peyer, M. Zachariasen, and D. J. Grov e. Delay-related secondary objectives for rectilinear steiner minimum trees. Discrete and Applied Mathematics, 136(2): 271–298, February 2004. 22. N. Sherwani, S. Bhingarde, and A. Panyam. Routing in the Third Dimension. IEEE Press, New York, 1995. 23. S. H. Gerez. Algorithms for VLSI Design Automation. John Wiley and Sons, C hichester, United Kingdom, 1998. 24. B. T. Preas and M. J. Lorenzetti. Physical Design Automation of VLSI Systems. Benjamin/Cummings, Menlo Park, C A, 1988. 25. S. M. Sait and N. Youssef. VLSI Physical Design Automation—Theory and Practice. World Scientific Publishing Company, Singapore, 1999. 26. M. Sarrafzadeh and C. K. Wong. An Introduction to VLSI Physical Design. McGraw Hill, New York, 1996. 27. N. Sherwani. Algorithms for VLSI Physical Design Automation, Third Edition. Kluwer Academic Publishers, Boston, MA, 1998. 28. H. Chen, C. -K. Cheng, A. B. Kahng, I. M˘andoiu, and Q. Wang. Estimation of wirelength reduction for λ-geometry v s. manhattan placement and routing. In Proceedings of the ACM International Workshop on System-Level Interconnect Pr ediction, Monterey, CA, pp. 71–76, 2003. 29. H. Chen, C. - K. Cheng, A. B. Kahng, I. I. M˘ andoiu, Q. Wang, and B. Yao. The y- architecture for on-chip i n terconnect: Analysis and methodology. IEEE Tr ansactions Computer-Aided Design, 24(4): 588–599, April 2005. 30. C. -K. Koh and P. H. Madden. Manhattan or non-Manhattan?: A study of alternative VLSI routing architectures. In Proceedings of the Great Lakes Symposium VLSI, pp. 47–52, Chicago, IL, 2000. 31. Y. Y. Li, S. K. Cheung, K. S. Leung, and C. K. Wong. Steiner tree construction in λ 3 -metric. IEEE Transactions Circuits and Systems-II: Analog and Digital Signal Processing, 45(5): 563–574, May 1998. 32. B. K. Nielsen, P. Winter, and M. Z achariasen. An exact algorithm for the uniformly-oriented steiner tree problem. In Proceedings of the European Symposium on Algorithms, Springer Verlag Lecture Notes in Computer Science, Vol. 2461. Springer-Verlag, Rome, I taly, 2002 pp. 760–771. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 506 9-10-2008 #21 506 Handbook of Algorithms for Physical Design Automation 33. M. Sarrafzadeh and C. K. Wong. Hierarchical Steiner tree construction in uniform orientations. IEEE Transactions Computer-Aided Design, 11(9): 1095–1103, September 1992. 34. S. Teig. The x architecture: Not your father’s diagonal wiring. In Proceedings of the ACM International Workshop on System-Level I n terconnect Prediction, San Die go, CA, pp. 33–37, 2002. 35. The X Initiative, 2006. Available at http://www.xinitiative.org. 36. M. C. Yildiz and P. H. Madden. Preferred direction steiner trees. In Proceedings of the Great Lakes Symposium VLSI, pp. 56–61, West Lafayette, IN, 2001. 37. S. Gueron and R. Tessler. The Fermat–Steiner problem. The American Mathemtical Monthly, 109(5): 443–451, 2002. 38. V. Viviani. Treatise De Maximis et Minimis. Appendix, pp. 144–150, Italy, 1659. 39. B. Cavalieri. Exercitationes Geometriae Sex. Bologna, Italy, 1647. 40. M. Hanan. On Steiner’s problem with rectilinear distance. SIAM Journal of Applied Mathematics, 14: 255–265, 1966. 41. T. L. Sn yder. On the exact location o f Steiner points in general dimension. SIAM Journal on Computing, 21(1): 163–180, 1992. 42. G. Y. Yan, A. A. Albrecht, G. H. F. Young, and C. -K. Wong. The Steiner tree problem in orientation metrics. Journal of Computer and Syst em Sciences, 55(3): 529–546, 1997. 43. M. Garey and D. S. Johnson. The rectilinear Steiner problem is NP-complete. SIAM Journal of Applied Mathematics, 32(4): 826–834, 1977. 44. P. K. Agarwal and M. T. Shing. Algorithms for special cases of rectilinear Steiner trees: Points on the boundary of a rectilinear rectangle. Networks, 20(4): 453–485, 1990. 45. F. K. Hwang. On Steiner minimal trees with rectilinear distance. SIAM Journal of Applied Mathematics, 30(1): 104–114, 1976. 46. N. Hasan, G. Vijayan, and C. K. Wong. A neighborhood improvement algorithm for rectilinear Steiner trees. In Proceedings of the IEEE International Symposium Circuits and Systems, New Orleans, LA, pp. 2869–2872, 1990. 47. J. M. Ho, G. Vijayan, and C. K. Wong. New algorithms for the rectilinear Steiner tree problem. IEEE Transactions Computer-Aided Design, 9(2): 185–193, 1990. 48. A. B. Kahng and G. Robins. A new family of Steiner tree heuristics with good performance: The iter- ated 1-steiner approach. In Proceedings of the IEEE International Conference Computer-Aided Design, pp. 428–431, Santa Clara, CA, November 1990. 49. A. B. Kahng and G. Robins. On performance bounds for a class of rectilinear Steiner tree heuristics in arbitrary dimension. IEEE Transactions Computer-Aided Design, 11(11): 1462–1465, November 1992. 50. G. Robins. On Optimal Interconnections. PhD thesis, Department of Computer Science, UCLA, Los Angeles, CA, CSD-TR-920024, 1992. 51. A. Z. Zelikovsky. An 11/8-approximation algorithm for the steiner problem on networks with rectilinear distance. In Janos Bolyai Mathematica Societatis Conference: Sets, Graphs, and Numbers,Amsterdam, The Netherlands, pp. 733–745, January 1992. 52. A. Z. Zelikovsk y. An 11/6 approximation algorithm for the network steiner problem. Algorithmica,9: 463–470, 1993. 53. L. Kou, G. Markowsky, and L. Berman. A fast algorithm for steiner trees. Acta Informatica, 15: 141–145, 1981. 54. A. B. Kahng and G. Robins. A new class of iterative st einer tree heuristics with good performance. IEEE Transactions Computer-Aided Design, 11(7): 893–902, July 1992. 55. G. Robins and A. Zelikovsky. Improved steiner tree approximation in graphs. In Proceedings of the ACM/SIAM Symposium Discrete Algorithms , pp. 770–779, San Francisco, CA, January 2000. 56. G . Robins and A. Zeliko vsky. Tighter bounds for graph steiner tree approximation. SIAM Journal on Discrete Mathematics, 19(1): 122–134, 2005. 57. E. N. Gilbert and H. O. Pollak. Steiner minimal trees. SIAM Journal of Applied Mathematics, 16: 1–29, 1968. 58. J. Grif fith, G. Robins, J. S. Salowe, and T. Zhang. Closing the gap: Near-optimal steiner trees in polynomial time. IEEE Transactions Computer-Aided Design, 13(11): 1351–1365, November 1994. 59. F. P. Preparata and M. I. Shamos. C omputational Geometry: An Introduction. Springer-Verlag, New York, 1985. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 507 9-10-2008 #22 Minimum Steiner Tree Construction 507 60. G. Georgakopoulos and C. H. P apadimitriou. The 1-Steiner tree problem. Journal of Algorithms,8: 122–130, 1987. 61. P. Berman, U. Fößmeier, M. Karpinski, M. Kaufmann, and A. Z. Zelikovsky. Approaching the 5/4— approximation for rectilinear Steiner trees. In Proceedings of the European Symposium on Algorithms, Utrecht, The Netherlands, pp. 533–542, 1994. 62. G. Cattaneo, P. Faruolo, U. F. Petrillo, and G. F. Italiano. Maintaining dynamic minimum spanning trees: An experimental study. In Proceedings of the International Workshop on Algorithm Engineering and Experiments (ALENEX), Lecture Notes in Computer Science, Vol. 2409, D. M. Mount and C. Stein (Eds.). Springer Verlag, Utrecht, The Netherlands, 2002, pp. 111–125. 63. G. Robins and J. S. Salowe. Low-degree minimum spanning trees. Discrete and Computational Geometry, 14: 151–165, September 1995. 64. J. S. Salowe and D. M. Warme. An exact rectilinear Steiner tree algorithm. In Proceedings of the IEEE International Conference Computer Design, pp. 472–475, Cambridge, MA, October 1993. 65. D. M. Warme, P. W inter, and M. Zachariasen. Exact algorithms for plane Steiner tree problems: A com- putational study. In Advances in Steiner Trees , D. Z. Du, J. M. Smith, and J. H. Rubinstein (Eds.). Kluwer Academic Publishers, Dordrecht, The Netherlands, 2000. 66. M. J. Alexander and G. Robins. New performance-driven FPGA routing algorithms. IEEE Transactions Computer-Aided Design, 15(12): 1505–1517, December 1996. 67. W. Shi and C. Su. The rectilinear Steiner arborescence problem is NP-complete. SIAM Journal on Computing, 35(3): 729–740, 2006. 68. Y. F. Wu, P. Widmayer, and C. K. Wong. A faster approximation algorithm for the Steiner problem in graphs. Acta Informatica, 23(2): 223–229, 1986. 69. H. Takahashi and A. Matsuyama. An approximate solution for the Steiner problem in graphs. Mathematica Japonica, 24(6): 573–577, 1980. 70. P. Berman and V. Ramaiyer. Improved approximations for the Steiner tree problem. Journal of Algorithms, 17: 381–408, 1994. 71. H. J. Promel and A. Steger. Rnc-approximation algorithms for the Steiner problem. In Proceedings of the ACM Symposium the Theory of Computing, pp. 559–570, 1997. 72. M. Karpinski and A. Zelikovsky. New approximation algorithms for the Steiner tree problems. J ournal of Combinatorial Optimization, 1(1): 47–65, March 1997. 73. S. Hougardy and H. J. Promel. A 1.598 approximation algorithm for the Steiner problem in graphs. In Proceedings of the ACM/SIAM Symposium Discrete Algorithms, Baltimore, Maryland, pp. 448–453, January 1999. 74. M. Bern and P. Plassmann. The Steiner tree problem with edge lengths 1 and 2. Information Processing Letters, 32( 4): 171–176, September 1989. 75. M. Chlebik and J. C hlebikova. Approximation hardness of the Steiner tree problem on gr aphs. In Scandi- navian Workshop on Algorithm Theory, Lecture Notes in Computer Science, Vol. 2368. Springer-Verlag, T urku, Finland, 2002, pp. 170–179. 76. S. Rajagopalan and V. V. Vazirani. On the bidirected cut relaxation for the metric Steiner tree problem. In Proceedings of the ACM/SIAM Symposium Discrete Algorithms, Baltimore, Maryland, pp. 742–751, January 1999. 77. C. D. Bateman, C. S. Helvig, G. Robins, and A. Zelikovsky. Provably-good routing tree construction with multi-port terminals. In Proceedings of the International Symposium on Physical Design, pp. 96–102, Napa Valley, CA, April 1997. 78. C. S. Helvig, G. Robins, and A. Zelikovsky. New approximation algorithms for routing with multi-port terminals. IEEE Transactions Computer-Aided Design, 19(10): 1118–1128, 2000. 79. C. S. Helvig, G. Robins, and A. Zelikovsky. An improved approximation scheme for the group Steiner problem. Networks, 37(1): 8–20, January 2001. 80. G. Reich and P. Widmayer. Beyond Steiner’s problem: A VLSI oriented generalization. In Proceedings of the 15th International Workshop on Graph-Theoretic Concepts in Computer Science, Lecture Notes in Computer Science, Vol. 411, Castle Rolduc, T he Netherlands, pp. 196–211, 1989. 81. N. L. K o ren. Pin assignment in automated printed circuit board design. In Proceedings of the Design Automation Workshop , Dallas, TX, pp. 72–79, June 1972. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 508 9-10-2008 #23 508 Handbook of Algorithms for Physical Design Automation 82. E. Ihler. Bounds on the quality of approximate solutions to the group Steiner problem. In Proceedings of the 16th International Workshop on Graph-Theoretic Concepts in Computer Science, Lecture Notes in Computer Science, Vol. 484, Berlin, Germany, 1991, pp. 109–118. 83. A. Z. Zelikovsky. A faster approximation algorithm for the Steiner tree problem in graphs. Information Processing Letters, 46(2): 79–83, May 1993. 84. U. Feige. A threshold of ln n for approximating set cover. In Proceedings of the ACM Symposium the Theory of Computing, Philadelphia, Pennsylvania, pp. 314–318, May 1996. 85. P. Berman and V. Ramaiyer. Improved approximations for the Steiner t ree problem. In Proceedings of the ACM/SIAM Symposium Discrete Algorithms, pp. 325–334, San Francisco, CA, Januar y 1992. 86. C. J. Alpert, T. C. Hu, J. H. Huang, A . B. Kahng, and D. Karger. Prim–Dijkstra tradeoffs for improve d performance-driven routing tree design. IEEE Transactions Computer-Aided Design, 14(7): 890–896, 1995. 87. J. Cong, A. B. Kahng, G. Robins, M. Sarrafzadeh, and C. K. Wong. Provably good performance-driven global routing. IEEE Transactions Computer-Aided Design, 11(6): 739–752, 1992. 88. M. Borah, R. M. Owens, and M. J. Irwin. A n edge-based heuristic for Steiner routing. IEEE Transactions Computer-Aided Design, 13: 1563–1568, 1994. 89. M. Borah, R. M. Owens, and M. J. Irwin. A fast and simple Steiner routing heuristic. Discrete and Applied Mathematics, 90(1–3): 51–67, 1999. 90. T. H. Chao and Y. C. Hsu. Rectilinear Steiner tree construction by local and global refinement. IEEE Transactions Computer-Aided Design, 13(3): 303–309, March 1994. 91. C. Chu and Y. -C. Wong. Fast and accurate rectilinear Steiner minimal tree algorithm for VLSI design. In Pr oceedings of the International Symposium on Physical Design, pp. 28–25, San Francisco, CA, 2005. 92. F. D. Lewis, W. C. Pong, and N. VanCleave. Local improvement in Steiner trees. In Proceedings of the Great Lakes Sym posium VLSI, pp. 105–106, Kalamazoo, MI, March 1993. 93. I. I. Mandoiu, V. V. Vazirani, and J. L. Ganley. A new heuristic for rectilinear Steiner trees. IEEE Transactions Computer-Aided Design, 19: 1129–1139, October 2000. 94. H. Zhou. Efficient Steiner tree construction based on spanning graphs. IEEE Transactions Computer-Aided Design, 23: 704–710, May 2004. 95. A. B. Kahng, I. I. M˘andoiu, and A. Z. Zelikovsky. Highly scalable algorithms for rectilinear and octilinear Steiner trees. In Proceedings of the Asia and South Pacific Design Automation Confer ence, Yokohama, Japan, pp. 827–833, 2000. 96. U. Fößmeier, M. Kaufmann, and A. Zelikovsky. Faster approximation algorithms for the rectilinear Steiner tree problem. Discrete and Computational Geometry, 18: 93–109, 1997. 97. A. B. Kahng, I. I. M˘andoiu, and A. Z. Zelikovsky. Practical approximations of Steiner trees in uniform orientation metrics. In Handbook of Approximation Algorithms and Metaheuristics, T. E. Gonzalez, (Ed.). CRC Press, Boca Raton, FL, 2006. 98. Q. Zhu, H. Zhou, T. Jing, X. -L. Hong, and Y. Yang. Spanning graph based non-rectilinear Steiner tree algorithms. IEEE Tr ansactions Computer-Aided Design, 24(7): 1066–1075, July 2005. 99. S. Arora. Polynomial time approximation schemes for Euclidean tsp and other g eometric problems. Journal of the Association for Computing Mac hinery, 45(5): 753–782, September 1998. 100. B. Lu and L. Ruan. Polynomial time approximation scheme for the rectilinear Steiner arborescence problem. Journal of Combinatorial Optimization, 4(3): 357–363, September 2000. 101. L. Zosin and S. Khuller. On directed Steiner trees. In Proceedings of the ACM/SIAM Symposium Discrete Algorithms, San Francisco, CA, pp. 59–63, 2002. 102. C. Chu and Y. -C. Wong. Fast and accurate rectilinear Steiner minimal tree algorithm for VLSI design. In Pr oceedings of the International Symposium on Physical Design. A CM Press, New York, 2005, pp. 28–35. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C025 Finals Page 509 29-9-2008 #2 25 Timing-Driven Interconnect Synthesis Jiang Hu, Gabriel Robins, and Cliff C. N. Sze CONTENTS 25.1 Introduction 509 25.2 Wirelength-Radius Trade-Offs 510 25.3 Steiner Arborescences 513 25.4 Elmore Delay-Based Routing Constructions 520 25.5 Non-HananInterconnectSynthesis 522 25.6 Wire sizing 529 25.7 Nontree Routing 529 25.8 Discussion and Future Research Directions 530 Acknowledgment 530 References 530 25.1 INTRODUCTION In this chapter, we address performance-driven interconnect synthesis, which seeks to optimize circuit performance by minimizing signal delays to critical sinks. Timing-driven wiring geometries are in general quite different from optimal-area (i.e., Steiner) in terconnect trees, especially as die sizes continue to grow while feature dimensions steadily shrink. ∗ The exposition below focuses on selected approaches to performance-drivenrouting, and details key historical research developments that helped usher in the era of high-performance interconnect synthesis. For extensive surveys on this subject, see Refs. [19,20]. For a g eneral overview of computer-aided design (CAD) of very large scale integrated (VLSI) circuits, see some of the classical textbooks [21–25]. As transistor sizes continued to dramatically shrink while their switching speeds have increased into the multigigahertz range, the circuit perform ance bottlenecks migrated from the devices them- selves to the wires that interconnect them. Indeed, it was observed in the late 1980s that given the VLSI scaling trends at that time, interconnection delay was already contributing up to 70 percent of the clock cycle in circuits [26–28]. Performance-driven layout design thus started to receive much research attention, especially timing-driven placement, which has a particularly significant effect on signal delays [27–32]. However, during that early era in the evolution of VLSI CAD, routing solutions were typically not available during the placement phase. Performance-driven methods of This work was supported by a Packard Foundation Fellowship, by National Science Foundation Young Investigator Aw ard MIP-9457412, and by NSF grants CCR-9988331, CCF-0429737, and CNS-0716635. ∗ In routing noncritical nets (or sinks), rather than optimize delay we instead seek to minimize ov erall wirelength, an objective that gives rise to variants of the classical Steiner problem [1–10]. On the other hand, modern ultra-deep-submicron VLSI CAD seeks to optimize and trade-off v arious combinations of objectives and criteria, such as delay, ske w, a rea, density, manufacturability, reliability, power, electromigration, parasitics, noise, and signal integrity [11–18]. 509 Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C025 Finals Page 510 29-9-2008 #3 510 Handbook of Algorithms for Physical Design Automation the early 1990s therefore used simple (e.g., geometric or linear) estimates of interconnection delay to drive the placement process, sacrificing modeling accuracy in favor of computation al tractab ility. For a given timing-driven placement, a corresponding timing-driven routing seeks to minimize source-to-sink signal delays. To optimize circuit performance, early timing-driven routing methods relied on, e.g., net priorities [22], static timing analysis [33], hierar c hical approaches [34], and A ∗ search [35]. Since the early 1990s, there has b een a steady shift from technology-independent rout- ing methodologies to technology-dependent interconnect synthesis. Analyses of the Elmore delay formula [36] for distributed RC trees [37–39] motivated cost-radius trade-offs that depended on the underlying technology [40–44]. Thus, routing tree constructions that were based on various tech- nology parameters, net criticalities, and other timing or perform ance issues provided improvements over the previous static, technology-oblivious methods [16]. Several early works abandoned the algorithmic convenience and analytic simplicity of classical geometric objectives, and began to address the less tractable but more realistic actual delay. For example, an early sequence of p apers by Boese et al. [12,45–47] proposed new classes of delay objectives, along with improved-perfor mance routing algorithms that directly optimized , e.g., the Elmore delay. These works also established the fidelity of Elmore-based constructions relative to accurate delay simulators (e.g., SPICE) [16]. That is, it was observed that optimizing the Elmore delay tends to also minimize real delay. In parallel with these advances,sink-dependent delay objectives were recognized as more critical than net-dependentdelaym inimization. Becausethetiming-driven placementandrouting designloop usually iterated tightly with static timing estimation, critical-path in formation was often available during routing. Thus, formulations that optimized delays with respect to a set of critical sinks proved more effective than formulations that optimized delays in individual nets while ignoring the critical sinks [16]. The near-optimality of minimum-delay routing heuristics was also quantified empirically, showing, e.g., that certain simple heuristics achieved almost optimal critical sink delays [12,16, 47,48]. Other advances in timing-driven interconnect synthesis for improving circuit performance includedvariousapproaches to wire sizing, non-Hananrouting, nontreetopologies,and arborescence trees. The remainder of this chapter discusses some of these topics and techniques in greater detail. 25.2 WIRELENGTH-RADIUS TRADE-OFFS Researchers in interconnect synthesis observed that while low-wirelength routing trees have smaller capacitance-related delays, low-radius interconnects have shorter pathlength-related signal propa- gation delays [16]. ∗ However, there exists an inherent conflict b etween these two objectives (i.e., minimizing overall tree cost versus minimizing source-to-sink pathlengths), and when one of these two objectives is optimized, the other objective typically suffers (Figure 25.1). Indeed, shortest paths trees (i.e.,those produced by Dijkstra’s classical algorithm [57]) have thebest possiblesource-to-sink pathlengths but usually induce high overall tree cost (Figure 25.1a). On the other hand, minimum spanning trees (i.e., those produced by Prim’s classical algorithm [58]) have optimal tree cost but produce potentially high source-to-sink p athlengths (Figure 25.1b). To simultaneously optimize both the routing tree radius as well as its cost, the f ollowing formulation was proposed [59]: The Bounded-Radius Minimum Routing Tree Problem: Given a parameter  ≥ 0 and a signal net with radius R, find a minimum-cost routing tree T with radius(T) ≤ (1 + ) ·R. ∗ We define the radius of a routing tree/topology to be its maximum source-to-sink pathlength, and its cost to be its total wirelength. Similarly, the radius of a net is defined as its farthest source-to-sink distance. Distances and wirelengths are usually measured using the Manhattan/Rectilinear norm, although alternative interconnect architectures with more complicated underlying metrics ha ve recently become popular, such as preferred direction routing and λ-geometries [2,49–56]. Alpert/Handbook of Algorithms for Physical Design Automation AU7242_C025 Finals Page 511 29-9-2008 #4 Timing-Driven Interconnect Synthesis 511 (a) (b) (c) FIGURE 25.1 Candidate interconnection trees for the same net, where the signal source pin is located at the center a nd the sinks are located on the circumference of a circle: (a) shortest paths tree, (b) minimum spanning tree, and (c) low-cost low-radius trade-off hybrid tree. The user-specified parameter  controls the trade-off between the competing minimum-radius and minimum-cost objectives. Setting  = 0 induces a minimum-radius (i.e., shortest paths) tree, while increasing  loosens the radius restriction, thus allowing further tree cost optimization. At the other extreme, setting  =∞results in a minimum-cost spanning tree. Note that these definitions and formulations easily generalize from spanning trees to Steiner trees (i.e., where new points/vias may be added to further optimize total wirelength). However, in performance-driven layout, where a fast delay estimator is employed in a tight iterative design loop, spanning trees are typically easier to compute than Steiner trees. Moreover, a spanning tree can usually be easily converted into a corresponding Steiner solution (e.g., by edge-overlapping),without disimproving its original radius. The earliest heuristic to solve the Bounded-Radius Minimum Routing Tree (BRMRT) problem was the bounded-Prim (BPRIM) approach of Refs. [43,59], which follows the general structure of Prim’s minimumspanning tree (MST) algorithm [58]. Although simple to implementandeffective in practice over typical inputs, this approach can produce trees with cost arbitrarily larger than optimal in the worst case. Shallow-lighttree constructionsavoid such worst-case scenarios by simultaneously bounding both the worst-case radius and the worst-case cost of the resulting routing tree [41–44]. The basic approach of algorithms such as the bounded-radius bounded-cost (BRBC) method [43] is as follows: (1) traverse a minimum spanning tree in depth-first order, (2) insert additional edges whenever the prescribed radius bound is violated, and (3) return the shortest paths tree over the resulting graph (Figure 25.2). The BRBC algorithm produces a tree with radius at most (1 + ) times optimal, and cost at most (1 + 2  ) times optimal [16,43]. The BRMRT problem formulation and the BRBC algorithm generalize to regimes where we seek a low-radius tree that spans a vertex subset in an underlying graph, while using the remaining graph vertices as potential Steiner points to minimize the overall interco nnection cost. Note that when  =∞, the classical graph Steiner problem is a special case of this generalization. A BRBC Steiner analogue first constructs an approximate minimum-cost Steiner tree T that spans the target vertex subset, and then proceeds with the remaining radius-minimization optimization as before. This will yield a routing tree with radius bounded by (1 + ) times optimal, and cost bounded by (1 + 2  ) times the cost of T. Note that the cost of the heuristic Steiner tree T can itself be bounded by a constant times optimal. For example, if we use the best-known general graph Steiner heuristic of Robins and Zelikovsky [10,60] that has an approximation bound of 1 + ln 3 2 ≈ 1.5493 times optimal for arbitrary weighted graphs, then the resulting Steiner-BRBC tree cost bound will be (1 + ln 3 2 ) ·(1 + 2  ) times optimal for general graphs. The underlying geometry can be exploited to further improve the cost bound of Steiner-BRBC to 2 ·(1 + 1  ) times optimal for any metric. In particular, for the Manhattan and Euclidean geometries, this general bound can be further improved to 3 2 · (1 + 1  ) times optimal . Alpert /Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 502 9-10-2008 #17 502 Handbook of Algorithms for Physical Design Automation For example, the tree. improve the performance bounds. Alpert /Handbook of Algorithms for Physical Design Automation AU7242_C024 Finals Page 504 9-10-2008 #19 504 Handbook of Algorithms for Physical Design Automation Interestingly,. [11–18]. 509 Alpert /Handbook of Algorithms for Physical Design Automation AU7242_C025 Finals Page 510 29-9-2008 #3 510 Handbook of Algorithms for Physical Design Automation the early 1990s therefore used

Ngày đăng: 03/07/2014, 20:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan