DUNE: a multi-layer gridless routing system with wire planning

! #$ %&#' () +* ', # -, . # , / ! % *0 1(2 1 3 4 $ 5 4 $ 6 7#' 7 7*98:/; , ? /@ BADCFE GIH )( ? ;#-, *@ J" & K 7? # !7, F 9 "! # $%&#' () L*; ', # , . ; #' , / ! 7*" 7* ' M N 4? O P>? ) #$(9 /@!2 L /@ ) %Q / %& /@ ) R? / % ? /@ S ; ,F R 4 T 7#' 7 7* # * / $ 7 U ; V!7 W X ? *; ',2% # , * 6 !7# YADZ@ N [ ;=7# R 4 ',2 > ; ,6Z ; ' = #' 4 7 ? 7*SH /F ;? % ? ! . ; # (5 1 ' 9 N \ / ! 7*9 /@!2 ? K ; ,5, 1 =7!2 " ) /M / ! 7*Y *@ /@ J-] 7 4 $ R #[ ; 7 ' *L > / ,\ ;#' /M ;=7# P>? ) L %&!7 5 ; ,^ / ! " 5* ',2#' L /@! * JF_M # '`@ 2 % Z /@! 4 /S ;? R 4 7 ?. 0 X2 7# /; K #$ 7 ; ZS 4/ 8V=7# /)? `@ ,O =)(\* . , ! ;# # (\ *@ ) 7 *L 7 4, '* 6 !7# )/ ! T 7#' 7 7*K=7 , ; 7 2 /S ?. B? ; a . `S 6 > X ? \* ', # !7# \ 7, ? /@ 7* 1 /@ b 7,"=7# /)?.`@ ;*@ Y ; L 7 * 7 -# ZS #DJTcM!2 T X ' > . ;# !7#$ K 7/ 4 M 7 ; K! 7*> 7 4 \ 7#' 7 7*b ;#'* / $ 7 d ' e/@!2 ,2 . # ,\ / ! 7* 1(2 1 f? ; 6 > /NZS T T / ! . = #' $ (6 ; , # / ,0!7 b 7 M ! O > L=)(Og hIi j > J 1. INTRODUCTION AND OVERVIEW k ^lLm+E2 9 ?. 7 7/ # /@* (n ?. 7 5,2 U !7= %& > ? / o,2 > 7 /@ ; ,K*@ *@ 7 pT? # /)?.`L8q r)! 7? ; ) ? / 7 7 ? + 7 W= ? /@ > ,2/@ > N 7*^8D ;? / " B, > ' 7*0 > 8:/; 9 7? @ s / #' ' ;=7 # () 7,\ 7 R? /@ 1 -/ 8 R/;Z@ . # #2 1( 1 ^ ) s 2 , ? ,\ ' Li t tSjLuL N '/ ;# ]+ ?. 7 /@# /@*;(6vY/S @,2 9 8:/ E2 > '? /@ ,2!7? /; ADuM] vLE w tSj@Hex i yQJ3G^ )(n/@ 2 > 'p ; /@ n ?. 7 [r)! L 7? #'!7, 7* 4 $ F p 7*IA:8q/ M, #' (0/ > p ; / H 2 4 F 7 ? 7*IA:8q/ M, #' ( ; ,K 7/ /@ 2 > 'p ; /@ H ?@J @ 7 NZ@ -= F /@ / , ,K /N 4 /\= LZS (6 z{ ? ZS M8q/ 4 ) ? / 7 7 ? 4/@ 2 ' > p N /@ |x } yJ / 7 b ' > / 5Z@ N [ ;=7# I 4 ',2 n ; ,~Z ; ' = # e 7 ? * ? /@ 7 1 . ; Y/@ b 7 L 4 $ Y/ 8V L ) ? /@ 7 ? J k . , $ /@ 7 #W / ! 7*> 1(2 1  Y ; $ /@ ,^ ) /6 € /> 1 . ;*@  * # /@= ;# / ! 7*M ,\, . ; #' , /@!2 7* S s 7/ 4 \ ' "‚V *@! Li@AQ SH J 9*@# /@=7 # /@!2 ' * 7 4 /@!2 7*F *@ /@ b N $ '/ 7 ,9 ) / # /; >?. 7 # > ; ,ƒ 5 / !7* ƒ / ! O8q/ > ?. „ > >, > 7 , ; >/@ *F R #' /F > ' > 'p 7 Y/;Z@ . # # ? / 7* 1 /@ b ' 9 ;? ] 7 / `e \ 7 ; ' # #$(a ! 7 / , ,F 4 7 " 4 !2 7/ s s 4 "_ ‰ m k lMmVE ‰ k Cfm+ = # @J] ' I? /@ 7* 1 /@ , ZS U*@# /@=7 #F /@! *„ # 7 ^ /‘,2 1% =7!2 s /@! *4 /@! ? V ; ,L*@! ', ’ 7 -, . ; #' ,K / ! 7*2 4 7 ?. 6 T? ; ,6/@!2 ' " 1 . *@ R / Js 6,2 . # ," /@!2 7*L 7 X % ? > 7# > ) . ; / /;8 ? / ,2!7? ZS s 4 $ , > ' ,L8:/; ;? e 7 M ? ? / .,2 ' *O /> 7 \, '* e ! # JK] "Z ; ' = #' 4 ',2 7,0Z ; ' = #' K 7 ? *9, *@ O !7# R r)!7 $ F "*; [,2# M,2 . # , /@!2 F 4 7 ?. B, /) 7/; K 8q . ; a 7 6 4 $ /@ a 2 , “7 7 ,5!7 $% 8:/; d*; [,2 JK”M/ ZS ' Y € / %&# ZS #s ; 7 /@ ?. 5 Y € /O# > $% . ; / 7 Y ' O? ! 4lMmVE , '* 7 J ‚V $ 1 7? !2 ) Y, * 7 Y 9 ( ) * . N M/NZS 4 K !7 7,2 ,6 > # # /@ 9 . 7 1 /; R ' b F 7*@# L?. 7 ’J ]W . , $ /@ ;# € /;%&#' ZS #{, '* O 9 (" 7/ = M ;=7# / ; ,2#' Y !7?. # @ ZS – 4 —i Š Š@Š ? / > 7# X2 $ €(58:/; \ >* ', # ", . ; '# ,e /@! JI] 7 8:/; @ @, % , $ /@ 7 #-# ZS # K/ 8 7 . N ? )( ? /@ 0 z{ ? 7 F, #[ (^ ,O 7/@ , ! L /6 7 *@# / = # ) ? / 7 ? M ,^ /9= \? ; 8q!7# #$(5? /@ [,2 ,5, !2 7* 7 /@!2 ' *|x g;yQJ"] 7 “7 1 %&# ZS #V # 6 p 6 , /0 9 ; ?. I 7 *@# / = #{ ) ? / 7 7 ? R,2 #' (> ,> /@ L /F ; ? /@ 7 ? /@ 2% > p ; /@ 5 > / , Y? 5= F z{ ? 'Z@ #$(5 7# ,5 ; M F*@# /@=7 # # ZS #DJ-]W . , $ /@ 7 # € / %&# ZS # / ! 7*K8[ . > 4 / `6, /) T 7/ @, % ,2 4 Y 2 /@= #' ™ /@ # ()J š ZS " R? / 7 ', . N /@ 7 ) Y ; -_ ‰ m k ZS = >, ZS # /@ 2% 7*" F / ! 7* 1(2 1 ˆ8:/; 4 7 *@ 2%& 8:/; 9 7? CFE Gd, '* 7 R! 1% 7*4 T# ZS # / 8 /@!2 ' * . ; ?. )() @ ; 7/ 4 ' \‚V *@!2 MiSAD= H J ] 7 “7 1 K 1 . ;*@ > K b 8:/; 9 7? % ,2 ZS 5*@# / = # / ! 7*b ; 7#' ; 7 R/@!2 R 7 R ? ? / ., *" / M 7 M, #' (b 7,b /@ M r)! % > ) > 4 $ n*@# /@=7 #K? / 7*@ 1 '/ —? /@ ) /@#DJ›] 5 / ` 0 ~ ; " 7? # ! ,2 K \ 8:/ 9 ; 7? %€, ZS b*@# /@=7 #{ /@! 4!7 7*\ 7 *@ 2% 8q/ 9 ? " / ! 7*0 / /@# /@* " ; ,e/@ 9 ;#s 4 $ 6 p *Bx œ;y 7,5 b /@ %&? /@ 1 . 7 ,e 4 $ 6 ;? 7*O 7,I . ;? `5 ; *@ 7 > # * / $ 7 8:/; *@# /@=7 #T / ! 7*O “ > ) 6x  -‹NyQJ0] 6 ? / , 1 . * 5 ' b |? /@ 7* 1 /@ 2%€, ZS ~ 4 $ 5 7#' 7 7*a # *@/; ž ; 7#' ; 7 6 7 b /@!2 0/ 8M ?. ƒ 7 >=7 ,ƒ/@ „ |,2 . # ,„ >/ ,2 # 7* / 8R 6 /@!2 ' *0 / ! ? \ 7, ) F/ 8 ;? a 9ADZ ; ' = #' 6 4 ', B 7, 7 ? *)H J k *; [,2# , . # ,a /@! *5 # *@/; • \ 7 # ' ,– a 9 $ .,| 1 . * b / ? N (B/@!2 6 7 O, . ; #' ,– > #' > ) . ; /@ B/;8M 7 9 #[ ; 7 ' *e % !7#$ F8q /  7 > ? / ,| 1 . ;*@ @J0 € 1 . ;*@ 48:/; 3 \* ', # , . ; #' ,0 /@! *6 1(2 1% ^J"G0/@ 1 *; [,2# , . ; '# ,5 /@!2 ' *0 1(2 1 > L#' ;? `I 7 4 $ % 7#' ; 7 7 *6? 7 = '# $ €(b 4 $ ^ X ? Y / ! 7* /@!2 ? F >/ , # 7*2J G0/@ 1 W . @,2 / # ,2 . # ,L /@!2 7*Y # *@/; $ 7 > V ; !7 > s!7 $8:/ !7 7, #$(2 7*9* ',2 L /O > 7#$(^ " 2 /@=7# x j +Ž2+t;yQJ ”M/ Z@ Determines rough route of each net to minimize the congestion and to guide detailed router Congestion-Driven

[1]  Jiri Soukup,et al.  Fast Maze Router , 1978, 15th Design Automation Conference.

[2]  J. Cong,et al.  Interconnect estimation and planning for deep submicron designs , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[3]  Joseph JáJá,et al.  On routing two-terminal nets in the presence of obstacles , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  C. Y. Lee An Algorithm for Path Connections and Its Applications , 1961, IRE Trans. Electron. Comput..

[5]  Knut M. Just,et al.  A gridless router for industrial design rules , 1991, DAC '90.

[6]  Carl Sechen,et al.  Chip-level area routing , 1998, ISPD '98.

[7]  Frank O. Hadlock,et al.  A shortest path algorithm for grid graphs , 1977, Networks.

[8]  Jason Cong,et al.  Performance driven multi-layer general area routing for PCB/MCM designs , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[9]  Alessandro De Gloria,et al.  A Tile-Expansion Router , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  Chak-Kuen Wong,et al.  Rectilinear Shortest Paths and Minimum Spanning Trees in the Presence of Rectilinear Obstacles , 1987, IEEE Transactions on Computers.

[11]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[12]  S. Sitharama Iyengar,et al.  Finding obstacle-avoiding shortest paths using implicit connection graphs , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  Jason Cong,et al.  Performance optimization of VLSI interconnect layout , 1996, Integr..

[14]  Jason Cong,et al.  CROSSTALK NOISE CONTROL IN GRIDLESS GENERAL-AREA ROUTING , 1998 .

[15]  Yu-Chin Hsu,et al.  SILK: a simulated evolution router , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  T. Ohtsuki,et al.  Recent advances in VLSI layout , 1990, Proc. IEEE.

[17]  Toshiyuki Shibuya,et al.  Touch and cross router , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[18]  John K. Ousterhout,et al.  Corner Stitching: A Data-Structuring Technique for VLSI Layout Tools , 1984, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[19]  Jason Cong,et al.  An implicit connection graph maze routing algorithm for ECO routing , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[20]  Dana S. Richards,et al.  Optimal two-terminal α-β wire routing , 1986, Integr..

[21]  Carl Ebeling,et al.  PathFinder: A Negotiation-Based Performance-Driven Router for FPGAs , 1995, Third International ACM Symposium on Field-Programmable Gate Arrays.

[22]  Jason Cong,et al.  Pseudo pin assignment with crosstalk noise control , 2000, ISPD '00.

[23]  Jason Cong,et al.  Interconnect estimation and planning for deep submicron designs , 1999, DAC '99.

[24]  Franco P. Preparata,et al.  Plane-sweep algorithms for intersecting geometric figures , 1982, CACM.