Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering.

Slides:



Advertisements
Similar presentations
Cpt S 223 – Advanced Data Structures Graph Algorithms: Introduction
Advertisements

CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 22: December 2, 2005 Routing 2 (Pathfinder)
Optimization of Placement Solutions for Routability Wen-Hao Liu, Cheng-Kok Koh, and Yih-Lang Li DAC’13.
Introduction to Algorithms
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.
A Size Scaling Approach for Mixed-size Placement Kalliopi Tsota, Cheng-Kok Koh, Venkataramanan Balakrishnan School of Electrical and Computer Engineering.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (UCLA) S. Muddu (Sanera Systems) A. Zelikovsky (Georgia State) Provably Good Global Buffering by.
Ripple: An Effective Routability-Driven Placer by Iterative Cell Movement Xu He, Tao Huang, Linfu Xiao, Haitong Tian, Guxin Cui and Evangeline F.Y. Young.
Clock Skewing EECS 290A Sequential Logic Synthesis and Verification.
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.
MCFRoute: A Detailed Router Based on Multi- Commodity Flow Method Xiaotao Jia, Yici Cai, Qiang Zhou, Gang Chen, Zhuoyuan Li, Zuowei Li.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (Georgia Tech/UCLA) S. Muddu (Silicon Graphics) A. Zelikovsky (Georgia State) Provably Good Global.
EDA (CS286.5b) Day 14 Routing (Pathfind, netflow).
ELEN 468 Lecture 271 ELEN 468 Advanced Logic Design Lecture 27 Interconnect Timing Optimization II.
Metal Layer Planning for Silicon Interposers with Consideration of Routability and Manufacturing Cost W. Liu, T. Chien and T. Wang Department of CS, NTHU,
POLAR 2.0: An Effective Routability-Driven Placer Chris Chu Tao Lin.
Lecture 5: FPGA Routing September 17, 2013 ECE 636 Reconfigurable Computing Lecture 5 FPGA Routing.
Chih-Hung Lin, Kai-Cheng Wei VLSI CAD 2008
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
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.
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.
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
Escape Routing For Dense Pin Clusters In Integrated Circuits Mustafa Ozdal, Design Automation Conference, 2007 Mustafa Ozdal, IEEE Trans. on CAD, 2009.
Vilalta&Eick: Informed Search Informed Search and Exploration Search Strategies Heuristic Functions Local Search Algorithms Vilalta&Eick: Informed Search.
An efficient distributed protocol for collective decision- making in combinatorial domains CMSS Feb , 2012 Minyi Li Intelligent Agent Technology.
CRISP: Congestion Reduction by Iterated Spreading during Placement Jarrod A. Roy†‡, Natarajan Viswanathan‡, Gi-Joon Nam‡, Charles J. Alpert‡ and Igor L.
Global Routing.
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.
Wen-Hao Liu 1, Yih-Lang Li 1, and Kai-Yuan Chao 2 1 Department of Computer Science, National Chiao-Tung University, Hsin-Chu, Taiwan 2 Intel Architecture.
Enforcing Long-Path Timing Closure for FPGA Routing with Path Searches on Clamped Lexicographic Spirals Keith So University of New South Wales, Sydney,
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 EECS 527 Paper Presentation High-Performance.
Archer: A History-Driven Global Routing Algorithm Mustafa Ozdal Intel Corporation Martin D. F. Wong Univ. of Illinois at Urbana-Champaign Mustafa Ozdal.
An Efficient Clustering Algorithm For Low Power Clock Tree Synthesis Rupesh S. Shelar Enterprise Microprocessor Group Intel Corporation, Hillsboro, OR.
BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
A NEW ECO TECHNOLOGY FOR FUNCTIONAL CHANGES AND REMOVING TIMING VIOLATIONS Jui-Hung Hung, Yao-Kai Yeh,Yung-Sheng Tseng and Tsai-Ming Hsieh Dept. of Information.
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.
Jason Cong‡†, Guojie Luo*†, Kalliopi Tsota‡, and Bingjun Xiao‡ ‡Computer Science Department, University of California, Los Angeles, USA *School of Electrical.
Ping-Hung Yuh, Chia-Lin Yang, and Yao-Wen Chang
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing © KLMH Lienig 1 What Makes a Design Difficult to Route Charles.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary Routing L. Luo, T. Yan, Q. Ma, M. D.F. Wong and T. Shibuya Department of Electrical.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
Linear Programming Erasmus Mobility Program (24Apr2012) Pollack Mihály Engineering Faculty (PMMK) University of Pécs João Miranda
1 ER UCLA ISPD: Sonoma County, CA, April, 2001 An Exact Algorithm for Coupling-Free Routing Ryan Kastner, Elaheh Bozorgzadeh,Majid Sarrafzadeh.
A Negotiated Congestion based Router for Simultaneous Escape Routing Q.Ma, T.Yan and Martin D.F. Wong Department of Electrical and Computer Engineering.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Po-Wei Lee, Chung-Wei Lin, Yao-Wen Chang, Chin-Fang Shen, Wei-Chih Tseng NTU &Synopsys An Efficient Pre-assignment Routing Algorithm for Flip-Chip Designs.
A Stable Fixed-outline Floorplanning Method Song Chen and Takeshi Yoshimura Graduate School of IPS, Waseda University March, 2007.
1 A Min-Cost Flow Based Detailed Router for FPGAs Seokjin Lee *, Yongseok Cheon *, D. F. Wong + * The University of Texas at Austin + University of Illinois.
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.
Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation
Simultaneous Analog Placement and Routing with Current Flow and Current Density Considerations H.C. Ou, H.C.C. Chien and Y.W. Chang Electronics Engineering,
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.
Routability-driven Floorplanning With Buffer Planning Chiu Wing Sham Evangeline F. Y. Young Department of Computer Science & Engineering The Chinese University.
BOB-Router: A New Buffering-Aware Global Router with Over-the-Block Routing Resources Yilin Zhang1, Salim Chowdhury2 and David Z. Pan1 1 Department of.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
Congestion-Driven Re-Clustering for Low-cost FPGAs MASc Examination Darius Chiu Supervisor: Dr. Guy Lemieux University of British Columbia Department of.
Placement and Routing Algorithms. 2 FPGA Placement & Routing.
VLSI Physical Design Automation
CS223 Advanced Data Structures and Algorithms
Study Guide for ES205 Yu-Chi Ho Jonathan T. Lee Nov. 7, 2000
Routing Algorithms.
Major Design Strategies
Major Design Strategies
Under a Concurrent and Hierarchical Scheme
Presentation transcript:

Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering University of New South Wales, Australia ISPD2007

Presentation Outline 1. Introduction to FPGA Routing 2. Brief Review of Prior Work 3. Observed Problems with Standard Negotiated Congestion Formulations 4. New Lexicographical Path Search Space and Associated Properties 5. Application to Wirelength-Driven Routing 6. Future Work 7. Conclusions

Research Goals Develop a range of FPGA routers for different designer constraints Identify potential for improvements through the study of known best state-of- the-art routers More robust FPGA routers can save unit costs and allow area improvement in future FPGA architectures

FPGA Routing Problem FPGA Components ◦ Logic blocks ◦ Wire segments ◦ Wire switches Problem: To find an assignment of resources to nets that ◦ Satisfies required connectivity ◦ Satisfies electrical design rules ◦ (Plus optional designer constraints)

Routing Resource Graph Converts the FPGA architecture into a digraph ◦ Pins, Logic Blocks, Wire Segments  Vertices ◦ Switches  Edges Problem translates to finding mutually vertex-disjoint trees that implement the connectivity of nets

A Simple Example Example Netlist ◦ Net 1: s 1 ->t 1 ◦ Net 2: s 2 ->t 2 ◦ Net 3: s 3 ->t 2 and t 3 In practice, 1000s+ of nets and more complex graph

Some Prior Approaches to FPGA Routing Rip and reroute [Frankle92] Global routing then detailed routing [Brown96,Lemieux97] Transforms to SAT [Wood97,Nam99,Xu03] Min-cost flow based [Lee03] Negotiated Congestion based [Mcmurchie95,Betz97,Betz00,Fung03]

Negotiated Congestion Iterative route nets and gradually increase sharing penalty of overused resources A* routing used to connect each net, with a cost function with congestion and secondary cost components Sharing penalty cost is based on current congestion and congestion in previous iteration rounds and is monotonically increasing Iterations continue until no electrical design rules are violated or until a maximum number of iterations reached (declares unroutability)

NC on the Simple Example

Typical Form for Negotiated Congestion Cost Functions For vertex v: occ(v): guard for congested vertex p(v): present congestion cost, exponentially increasing h(v): historical congestion cost s(v): designer issued secondary cost Path cost = sum of vertex costs

Problems with Scalar Path Evaluation In all previous implementations a weighted scalar projection is used for path evaluation Optimality to the weighted functions has limited meaning to conditions in the terrain ◦ Sometimes lead to suboptimal choices for congestion avoidance Magnitude of congestion cost is exponentially increasing ◦ Needed to ensure convergence ◦ Will lead to numerical instability with floating point representations

Suboptimal Choice with Respect to Congestion Cost Suppose x is chosen by the A* router Any path y on the Pareto line might have been chosen Path z 2 which is congestion free is not chosen ◦ because it is not on the lower bound of candidate paths in the scalar function

Phases in the Negotiated Congestion Cycle Phase 1 Phase 2

Phases in the Negotiated Congestion Cycle Phase 3 Phase 4 Precision Lost!

Solution: Lexicographical Ordered Pairs Use a ordered pair to store congestion and secondary cost components Pairwise addition: (c 1,s 1 ) + (c 2,s 2 ) = (c 1 +c 2, s 1 +s 2 ) Define a dictionary order on elements: (c 1,s 1 ) < (c 2,s 2 ) if c 1 <s 1 or [c 1 =s 1 and c 2 <s 2 ]

Proof: Preservation of Admissibility The OP transformation preserves admissiblity of scalar secondary heuristics Proof: ◦ Define f’(x)=(0,f(x)) for admissible f in scalar form ◦ In OP space, the actual cost will be of the form (d,f(x)+e) ◦ (0,f(x)) < (d,f(x)+e) for any nonnegative d and e so f’(x) is admissible in OP space Shows that A* search will be optimal when using the OP comparator

Properties of Searches in the Ordered Pair Space Property 1: Path chosen will have minimum congestion cost ◦ (w,x) < (y,z) if w < y Property 2: If multiple paths of congestion cost x are available, path chosen will be the one with minimum secondary cost ◦ (x,y) < (x,z) if y < z Both properties handy for ensuring an “optimum choice” is made for each pin, assuming congestion cost measure “problem size’’

Application: CornNC Wirelength Driven Router Secondary cost is total wirelength CornNC cost is an OP of congestion cost and expected wirelength to target: f(v)=(occ(v)c(v),WL(v)) Congestion cost increased linearly per iteration, allows many iterations to be run (representation limit ~millions!)

Experimental Evaluation CornNC and VPR4.30 on the FPGA Challenge architecture and placements [Betz97] Number of tracks parameterised to determine robustness Runtimes and utilisation measured between mutually routable instances Max iterations for CornNC = 1600

Further Aspects for Investigation Runtime Improvements ◦ Congestion cost schedule refinement Inclusion of multiple objectives ◦ e.g. simultaneous power and timing/mintime- maxtime Application to other domains ◦ where negotiated congestion has been successfully applied

Conclusions Lexicographical ordered pair evaluation of candidate paths has useful properties and is numerically stable Effective for solving difficult cases of wirelength FPGA routing with a significant (10%) improvement Analytically promising for many other objectives because of provably desirable path choices