1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology.

Slides:



Advertisements
Similar presentations
Optimal Bus Sequencing for Escape Routing in Dense PCBs H.Kong, T.Yan, M.D.F.Wong and M.M.Ozdal Department of ECE, University of Illinois at U-C ICCAD.
Advertisements

A Graph-Partitioning-Based Approach for Multi-Layer Constrained Via Minimization Yih-Chih Chou and Youn-Long Lin Department of Computer Science, Tsing.
Native-Conflict-Aware Wire Perturbation for Double Patterning Technology Szu-Yu Chen, Yao-Wen Chang ICCAD 2010.
Hsi-An Chien Ting-Chi Wang Redundant-Via-Aware ECO Routing ASPDAC2014.
Wen-Hao Liu1, Yih-Lang Li, and Cheng-Kok Koh Department of Computer Science, National Chiao-Tung University School of Electrical and Computer Engineering,
Meng-Kai Hsu, Sheng Chou, Tzu-Hen Lin, and Yao-Wen Chang Electronics Engineering, National Taiwan University Routability Driven Analytical Placement for.
Ch.7 Layout Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
Paul Falkenstern and Yuan Xie Yao-Wen Chang Yu Wang Three-Dimensional Integrated Circuits (3D IC) Floorplan and Power/Ground Network Co-synthesis ASPDAC’10.
Coupling-Aware Length-Ratio- Matching Routing for Capacitor Arrays in Analog Integrated Circuits Kuan-Hsien Ho, Hung-Chih Ou, Yao-Wen Chang and Hui-Fang.
An ILP-based Automatic Bus Planner for Dense PCBs P. C. Wu, Q. Ma and M. D. F. Wong Department of Electrical and Computer Engineering, University of Illinois.
Chapter 3 The Greedy Method 3.
MCFRoute: A Detailed Router Based on Multi- Commodity Flow Method Xiaotao Jia, Yici Cai, Qiang Zhou, Gang Chen, Zhuoyuan Li, Zuowei Li.
Interconnect Estimation without Packing via ACG Floorplans Jia Wang and Hai Zhou Electrical & Computer Engineering Northwestern University U.S.A.
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
ER UCLA UCLA ICCAD: November 5, 2000 Predictable Routing Ryan Kastner, Elaheh Borzorgzadeh, and Majid Sarrafzadeh ER Group Dept. of Computer Science UCLA.
Whole Genome Alignment using Multithreaded Parallel Implementation Hyma S Murthy CMSC 838 Presentation.
VLSI Routing. Routing Problem  Given a placement, and a fixed number of metal layers, find a valid pattern of horizontal and vertical wires that connect.
Routing 1 Outline –What is Routing? –Why Routing? –Routing Algorithms Overview –Global Routing –Detail Routing –Shortest Path Algorithms Goal –Understand.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
1 Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network Prof. Yu-Chee Tseng Department of Computer Science National Chiao-Tung University.
A Resource-level Parallel Approach for Global-routing-based Routing Congestion Estimation and a Method to Quantify Estimation Accuracy Wen-Hao Liu, Zhen-Yu.
Metal Layer Planning for Silicon Interposers with Consideration of Routability and Manufacturing Cost W. Liu, T. Chien and T. Wang Department of CS, NTHU,
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD
A Topology-based ECO Routing Methodology for Mask Cost Minimization Po-Hsun Wu, Shang-Ya Bai, and Tsung-Yi Ho Department of Computer Science and Information.
9/4/ VLSI Physical Design Automation Prof. David Pan Office: ACES Detailed Routing (I)
Area-I/O Flip-Chip Routing for Chip-Package Co-Design Progress Report 方家偉、張耀文、何冠賢 The Electronic Design Automation Laboratory Graduate Institute of Electronics.
Authors: Jia-Wei Fang,Chin-Hsiung Hsu,and Yao-Wen Chang DAC 2007 speaker: sheng yi An Integer Linear Programming Based Routing Algorithm for Flip-Chip.
Escape Routing For Dense Pin Clusters In Integrated Circuits Mustafa Ozdal, Design Automation Conference, 2007 Mustafa Ozdal, IEEE Trans. on CAD, 2009.
Global Routing. Global routing:  To route all the nets, should consider capacities  Sequential −One net at a time  Concurrent −Order-independent 2.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
Global Routing.
1 Coupling Aware Timing Optimization and Antenna Avoidance in Layer Assignment Di Wu, Jiang Hu and Rabi Mahapatra Texas A&M University.
Etron Project: Placement and Routing for Chip-Package-Board Co-Design
TSV-Aware Analytical Placement for 3D IC Designs Meng-Kai Hsu, Yao-Wen Chang, and Valerity Balabanov GIEE and EE department of NTU DAC 2011.
Low-Power Gated Bus Synthesis for 3D IC via Rectilinear Shortest-Path Steiner Graph Chung-Kuan Cheng, Peng Du, Andrew B. Kahng, and Shih-Hung Weng UC San.
Archer: A History-Driven Global Routing Algorithm Mustafa Ozdal Intel Corporation Martin D. F. Wong Univ. of Illinois at Urbana-Champaign Mustafa Ozdal.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Wire Planning with consideration of Electromigration and Interference Avoidance in Analog Circuits 演講者 : 黃信雄 龍華科技大學 電子工程系.
Graph Algorithms. Definitions and Representation An undirected graph G is a pair (V,E), where V is a finite set of points called vertices and E is a finite.
Bus-Pin-Aware Bus-Driven Floorplanning B. Wu and T. Ho Department of Computer Science and Information Engineering NCKU GLSVLSI 2010.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
AUTOMATIC BUS PLANNER FOR DENSE PCBS Hui Kong, Tan Yan and Martin D.F. Wong Department of Electrical and Computer Engineering, University of Illinois at.
IO CONNECTION ASSIGNMENT AND RDL ROUTING FOR FLIP-CHIP DESIGNS Jin-Tai Yan, Zhi-Wei Chen 1 ASPDAC.2009.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
Tao Lin Chris Chu TPL-Aware Displacement- driven Detailed Placement Refinement with Coloring Constraints ISPD ‘15.
A SAT-Based Routing Algorithm for Cross-Referencing Biochips Ping-Hung Yuh 1, Cliff Chiung-Yu Lin 2, Tsung- Wei Huang 3, Tsung-Yi Ho 3, Chia-Lin Yang 4,
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 13: February 20, 2002 Routing 1.
PARR:Pin Access Planning and Regular Routing for Self-Aligned Double Patterning XIAOQING XU BEI YU JHIH-RONG GAO CHE-LUN HSU DAVID Z. PAN DAC’15.
Detailed Routing مرتضي صاحب الزماني.
ILP-Based Inter-Die Routing for 3D ICs Chia-Jen Chang, Pao-Jen Huang, Tai-Chen Chen, and Chien-Nan Jimmy Liu Department of Electrical Engineering, National.
Maze Routing Algorithms with Exact Matching Constraints for Analog and Mixed Signal Designs M. M. Ozdal and R. F. Hentschke Intel Corporation ICCAD 2012.
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University,
1 L25 : Crosstalk-Concerned Physical Design (2) Jun Dong Cho Sungkyunkwan Univ. Dept. ECE Homepage :
System in Package and Chip-Package-Board Co-Design
Example Apply hierarchical clustering with d min to below data where c=3. Nearest neighbor clustering d min d max will form elongated clusters!
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network You-Chiun Wang, Chun-Chi Hu, and Yu-Chee Tseng IEEE Transactions on Mobile Computing.
EE4271 VLSI Design VLSI Channel Routing.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 21: November 28, 2005 Routing 1.
Prof. Yu-Chee Tseng Department of Computer Science
VLSI Physical Design Automation
VLSI Physical Design Automation
2 University of California, Los Angeles
Performance Optimization Global Routing with RLC Crosstalk Constraints
EE4271 VLSI Design, Fall 2016 VLSI Channel Routing.
Detailed Routing مرتضي صاحب الزماني.
VLSI Physical Design Automation
Presentation transcript:

1 Global Routing Method for 2-Layer Ball Grid Array Packages Yukiko Kubo*, Atsushi Takahashi** * The University of Kitakyushu ** Tokyo Institute of Technology

2 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

3 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

4 Old package design  Circuits were small  Number of I/O terminals of packages was small -> Terminals were put on perimeter of package board Radial routing Manual design or simple automatic design Introduction

5 Recent package design  Circuits are large  Number of I/O terminals of packages is large  Ball Grid Array (BGA)  Routing design is difficult Reduction of design term Routing automation Introduction Ball Grid Array

6 Previous Works for BGA Package Design Net generation and global routing (single layer)  Yu and Dai [ICCAD95]  Shibata etc. [JIEP97](in Japanese) Layer Assignment and single layer routing  Tsai, Wang and Chen [TCAD98]  Chen, Chen, Tsai and Chen [ICCD99] Existing algorithms are for single layer routing Global routing method for 2-layer BGA packages is proposed

7 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

8 Our target Route on layer1 Route on layer2 via Ring wire for plating Plating lead Target: 2-layer BGA package with plating leads  Plating lead: a wire connecting outer ring to plate wires  Finger (on layer1): connecting BGA board and chip  Ball (on layer2): connecting BGA board and PCB Net: 2-terminal (a finger and a ball) with plating lead chip ball finger ball finger via

9 Via assignment Vias are on grid array: Radius of vias are large for ball pitch = At most one via is allowed between four adjacent balls

10 Routing strategy: Monotonic routing Monotonic routing Non-monotonic routing Monotonic Routing:  never snakes in horizontal direction  crosses any horizontal line at most once

11 Condition for Monotonic Routing Monotonic routing is possible if and only if via assignment is monotonic Monotonic via assignment:  Net labels of vias on each row are subsequence of net labels of fingers In monotonic via assignment,  Monotonic global routes are determined uniquely Global routing = Monotonic via assignment

12 Routing Strategy: Routes on Each Layer Layer1: Monotonic routes with plating tales  Via assignment is monotonic  Global routes are determined uniquely Layer2: Short routes  Each via is put near corresponding ball , 1, …, Layer1 Layer2

13 Evaluation of Routes Via assignment is monotonic -> Global routes can be determined uniquely Global routes are evaluated by via assignment Evaluation: wire length (layer1), wire length (layer2) and wire congestion , 1, …,

Evaluation: Wire Length Wire length (Layer1): the number of crosses of vertical grid line and global routes Monotonic routes  If wire length is long, = routes snake = routes cross vertical grid line Len:0 Len:2

15 Evaluation: wire length Wire Length (Layer2): Manhattan distance between a ball and a via Len:1 Len:2

16 Evaluation: Wire congestion Routing failure occurs = Congestion is dense = Congestion is not ballanced Congestion evaluation: Sum of difference of adjacent congestion Congestion between adjacent 2 vias : Reciprocal of wire pitch Congestion: 5Congestion: 3 Difference of congestion: |3-5|=2

17 Problem Definition 2-Layer BGA Package Routing Input: 2-terminal nets (pair of a ball and a finger) Output: Global routes including vias Objective: To minimize Cost=a*wire length(layer1) + b*wire length(layer2) + c*wire congestion Constraints:  Monotonic via assignment  Plating leads

18 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

19 Routing Optimization Approach Greedy algorithm 1.Give initial via assignment 2.Select via-assignment modification with maximum gain under monotonic constraint 3.If maximum gain > 0, apply the modification and go to 2

20 Routing Optimization Approach Greedy algorithm 1.Give initial via assignment 2.Select via-assignment modification with maximum gain under monotonic constraint 3.If maximum gain > 0, apply the modification and go to 2

21 Initial via assignment Vias are generated according to ball sequences Each via sequence is divided into monotonic sub- sequences Vias of sub-sequences for same ball sequence are put on different rows of via grid array , 1, …,

22 Initial via assignment Vias are generated according to ball sequence Each via sequences are divided into monotonic sub- sequences Vias of sub-sequences for same ball sequence are put on different rows of via grid array , 1, …, Vias of sub-sequences in different ball sequences can share same row of via grid array

23 Initial via assignment Vias are generated according to ball sequence Each via sequences are divided into monotonic sub- sequences Vias of sub-sequences for same ball sequence are put on different rows of via grid array , 1, …, Vias of sub-sequences in different ball sequence can share same row of via grid array

24 Routing Optimization Approach Greedy algorithm 1.Give initial via assignment 2.Select via-assignment modification with maximum gain under monotonic constraint 3.If maximum gain > 0, apply the modification and go to 2

25 Via assignment modification Modification patterns  2-via exchange  3-via rotation  Sequential via movement

26 2-via exchange, 3-via rotation u k d j i l 2-via exchange u k d j i l 3-via rotation 2-via exchange:  Adjacent 2 vias are exchanged 3-via rotation:  3 vias on a unit grid are rotated

27 Sequential via movement Vias are moved to their adjacent grid one by one without overlaps , 1, …,

28 Complexity Modification with maximum gain  enumerating all modifications  calculating the gain of them Complexity to obtain modification with maximum gain (n: number of nets)  2-via exchange: O(n)  3-via rotation: O(n)  Sequential via movement: O(n 2 )  Total: O(n 2 )

29 Routing Optimization Approach Greedy algorithm 1.Give initial via assignment 2.Select via-assignment modification with maximum gain under monotonic constraint 3.If maximum gain > 0, apply the modification and go to 2

30 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

31 Experiments Proposing method is implemented by C++ CPU 3GHz, 1GB memory Cost function:  length(layer1) + length(layer2) + congestion ( a = b = c = 1 ) Comparison:  ALL (Proposing method): 2-via exchange, 3-via rotation, and sequential via movement  SEQ: Sequential via movement only

32 Experimental results dataALLSEQ ALL generates better routes than SEQ ALL takes much more time than SEQ  Tradeoff between quality of solution and calculation time Calculation Time (s)

33 Experimental result (data3) Length(layer1):252→ 53 Length(layer2):160→193 Congestion:414.3→129.8 Time(s):1.90 (sec)

34 Contents Introduction Problem Definition and Strategy Global Routing Method Experiments Conclusion

35 Conclusion Global routing method for 2-layer BGA packages was proposed  Monotonic routing was introduced  Global routing method by monotonic via assignment was proposed  The method gives initial via assignment and improve it by via assignment modification Experimental results  Our method generates good global routes  Tradeoff between quality of solution and calculation time

36 Future work Reduction of calculation time without degrading solution Accurate design rule consideration for both layer1 and layer2 Plating leads planning  Whether is the plating lead of each net routed on Layer1 or Layer2?

37 BGA Package Design Consideration  Multi-layer routing  Obstacles  Plating lead  Chip scale package  Multi-chip on board  Electrical effects board Au bonding wire die solder ball bonding finger

38 Evaluation: Wire length on layer len: 1 len: 3

39 Many obstacles on layer2  For short routes Little obstacles on layer1  For long routes  Plating leads is on layer1 Routes distribution Layer1 Layer2

40 Sequential via movement , 1, …, , 1, …, Layer1: Layer2: Congestion:

41 Local change of the cost Local change of cost is possible to calculate if  Adjacent vias of the target via are known  Two previous vias and a next via in the movement are known Sum of local change of cost = gain u k d j i l k j d i * l The direction of movement is restricted to {right, left} or {above, below}

42 Cost graph Nodes : target via and two previous vias Edges : the direction of next via u k d j i l j, k, u j, k, l j, k, d i, j, k

43 Cost graph j, k, u j, k, l j, k, d k, u, a k, u, b k, l, b … u k d j i l a b c i, j, k Nodes : target via and two previous vias Edges : the direction of next via Weight of edges are local change of cost

44 Cost graph Directed acyclic graph  Calculate longest path  Longest path = sequential movement with maximum gain Sequential via movement with maximum via is selected  For all starting nodes, Generate cost graph Search longest path  Select path with maximum gain among all

45 Experimental results initialoutput data#netlen1len2congCostlen1len2congCostimp. (%) #modtime (s)

46 Experimental results Comparison  ALL: Proposing method  SEQ sequential via movement only Via movement starts with via of large cost ALLSEQ dataimp.timeimp.time

47 Our Strategy Strategy:  Layer1: Monotonic routes with plating leads  Layer2: Short routes Layer1 Layer2