This paper presents a fast and accurate global routing algorithm, DpRouter, based on two efficient techniques: (1) dynamic pattern routing (Dpr), and (2) segment movement. These two techniques enable DpRouter to explore large solution space to achieve better routability with low time complexity. Compared with the state-of-the-arts, experimental results show that we consistently obtain better routing quality in terms of both congestion and wire length, while simultaneously achieving a more than 30x runtime speedup. We envision that this algorithm can be further leveraged in other routing applications, such as FPGA routing.
I IntroductionThe success of future integrated circuit designs requires the consideration of physical impact. Congestion-aware global routing is crucial to achieve this goal and has been proven useful in physical synthesis.Existing global routing algorithms mainly focus on congestion reduction [1][2][3][4][5][6][7][8]. Among them, [7] and [8] are two of the most recent publications with good results. Labyrinth [7] is a global router that evaluates routing results in terms of congestion and wire length. Fengshui [8] proposed the concept of amplified congestion estimation, which helped to improve both over-congestion and routing length.Some Steiner tree algorithms [9-1 1 ] even tried to improve the routability.[9] and [10] presented the idea of solving Steiner tree problem based on pre-computed lookup table.[11] proposed the concept of flexibility in the rectilinear Steiner tree (RST) problem. These tree algorithms are helpful, but the final congestion reduction still mainly relies on powerful routing algorithms.The problem of congestion-aware routing, however, is far-from being solved. This paper focuses on the routability-driven global routing problem. Our focus is congestion reduction and algorithm efficiency. The major contributions of this work are as follows:(1) An efficient dynamical pattern routing (Dpr) technique to achieve the optimal routing solution for two-pin nets.(2) A segment-move technique to extend the searching space for routability driven RST problem.