Abstract
Obstacle-avoiding Steiner routing has arisen as a fundamental problem in the physical design of modern VLSI chips. In this paper, we present EBOARST, an efficient four-step algorithm to construct a rectilinear obstacle-avoiding Steiner tree for a given set of pins and a given set of rectilinear obstacles. Our contributions are fourfold. First, we propose a novel algorithm, which generates sparse obstacle-avoiding spanning graphs efficiently. Second, we present a fast algorithm for the minimum terminal spanning tree construction step, which dominates the running time of several existing approaches. Third, we present an edge-based heuristic, which enables us to perform both local and global refinements, leading to Steiner trees with small lengths. Finally, we discuss a refinement technique called segment translation to further enhance the quality of the trees. The time complexity of our algorithm is O(n log n). Experimental results on various benchmarks show that our algorithm achieves 16.56 times speedup on average, while the average length of the resulting obstacle-avoiding rectilinear Steiner trees is only 0.46% larger than the best existing solution.
Original language | English (US) |
---|---|
Article number | 4670065 |
Pages (from-to) | 2169-2182 |
Number of pages | 14 |
Journal | IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems |
Volume | 27 |
Issue number | 12 |
DOIs | |
State | Published - Dec 2008 |
Funding
Manuscript received February 6, 2008; revised May 21, 2008 and July 12, 2008. Current version published November 19, 2008. This work was supported in part by the NSF under Grant CNS-0613967. This paper was recommended by Associate Editor D. Z. Pan. Dr. Zhou was the recipient of CAREER Award from the National Science Foundation in 2003.
Keywords
- Graph algorithm
- Obstacle-avoiding
- Routing
- Steiner tree
ASJC Scopus subject areas
- Software
- Computer Graphics and Computer-Aided Design
- Electrical and Electronic Engineering