Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation

Slides:



Advertisements
Similar presentations
Cross-layer Optimized Placement and Routing for FPGA Soft Error Mitigation Keheng Huang 1,2, Yu Hu 1, and Xiaowei Li 1 1 Key Laboratory of Computer System.
Advertisements

1 Optimization of Routing Algorithms Summer Science Research By: Kumar Chheda Research Mentor: Dr. Sean McCulloch.
Reducing the Pressure on Routing Resources of FPGAs with Generic Logic Chains Hadi P. Afshar Joint work with: Grace Zgheib, Philip Brisk and Paolo Ienne.
Clustering of Large Designs for Channel-Width Constrained FPGAs Marvin TomGuy Lemieux University of British Columbia Department of Electrical and Computer.
The New FPGA Architecture by Applying The CS-Box Structure Zhou Lin, Catherine October 13, 2003.
38 th Design Automation Conference, Las Vegas, June 19, 2001 Creating and Exploiting Flexibility in Steiner Trees Elaheh Bozorgzadeh, Ryan Kastner, Majid.
Yan Lin, Fei Li and Lei He EE Department, UCLA
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
Architecture and Synthesis for Power-Efficient FPGAs Jason Cong University of California, Los Angeles Partially supported by NSF Grants.
The Memory/Logic Interface in FPGA’s with Large Embedded Memory Arrays The Memory/Logic Interface in FPGA’s with Large Embedded Memory Arrays Steven J.
Gate Sizing by Mathematical Programming Prof. Shiyan Hu
Leakage Efficient Chip-Level Dual-Vdd Assignment with Time Slack Allocation for FPGA Power Reduction Yan Lin and Lei He EE Department, UCLA Partially supported.
FPGA Technology Mapping. 2 Technology mapping:  Implements the optimized nodes of the Boolean network to the target device library.  For FPGA, library.
Lecture 5: FPGA Routing September 17, 2013 ECE 636 Reconfigurable Computing Lecture 5 FPGA Routing.
HARP: Hard-Wired Routing Pattern FPGAs Cristinel Ababei , Satish Sivaswamy ,Gang Wang , Kia Bazargan , Ryan Kastner , Eli Bozorgzadeh   ECE Dept.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
ECE 506 Reconfigurable Computing Lecture 7 FPGA Placement.
ECE 506 Reconfigurable Computing Lecture 8 FPGA Placement.
Escape Routing For Dense Pin Clusters In Integrated Circuits Mustafa Ozdal, Design Automation Conference, 2007 Mustafa Ozdal, IEEE Trans. on CAD, 2009.
Lecture 2: Field Programmable Gate Arrays September 13, 2004 ECE 697F Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
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.
CALTECH CS137 Winter DeHon 1 CS137: Electronic Design Automation Day 2: January 6, 2006 Spatial Routing.
FPGA Switch Block Design Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
LOPASS: A Low Power Architectural Synthesis for FPGAs with Interconnect Estimation and Optimization Harikrishnan K.C. University of Massachusetts Amherst.
Un/DoPack: Re-Clustering of Large System-on-Chip Designs with Interconnect Variation for Low-Cost FPGAs Marvin Tom* Xilinx Inc.
Channel Width Reduction Techniques for System-on-Chip Circuits in Field-Programmable Gate Arrays Marvin Tom University of British Columbia Department of.
Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering.
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,
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,
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.
Julien Lamoureux and Steven J.E Wilton ICCAD
Implementation of Finite Field Inversion
A Routing Approach to Reduce Glitches in Low Power FPGAs Quang Dinh, Deming Chen, Martin D. F. Wong Department of Electrical and Computer Engineering University.
Design Space Exploration for Application Specific FPGAs in System-on-a-Chip Designs Mark Hammerquist, Roman Lysecky Department of Electrical and Computer.
ARCHER:A HISTORY-DRIVEN GLOBAL ROUTING ALGORITHM Muhammet Mustafa Ozdal, Martin D. F. Wong ICCAD ’ 07.
A Negotiated Congestion based Router for Simultaneous Escape Routing Q.Ma, T.Yan and Martin D.F. Wong Department of Electrical and Computer Engineering.
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.
Parallel Routing for FPGAs based on the operator formulation
1 Synthesizing Datapath Circuits for FPGAs With Emphasis on Area Minimization Andy Ye, David Lewis, Jonathan Rose Department of Electrical and Computer.
QUIZ 1. Question 1) According to the study on “Simultaneous Timing Driven Clustering and Placement for FPGAs”, what is a fragment level move and which.
FPGA CAD 10-MAR-2003.
1 Area-Efficient FPGA Logic Elements: Architecture and Synthesis Jason Anderson and Qiang Wang 1 IEEE/ACM ASP-DAC Yokohama, Japan January 26-28,
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
In-Place Decomposition for Robustness in FPGA Ju-Yueh Lee, Zhe Feng, and Lei He Electrical Engineering Dept., UCLA Presented by Ju-Yueh Lee Address comments.
1 Field-programmable Gate Array Architectures and Algorithms Optimized for Implementing Datapath Circuits Andy Gean Ye University of Toronto.
Routing Wire Optimization through Generic Synthesis on FPGA Carry Hadi P. Afshar Joint work with: Grace Zgheib, Philip Brisk and Paolo Ienne.
Interconnect Driver Design for Long Wires in FPGAs Edmund Lee University of British Columbia Electrical & Computer Engineering MASc Thesis Presentation.
FPGA Routing Pathfinder [Ebeling, et al., 1995] Introduced negotiated congestion During each routing iteration, route nets using shortest.
SEMI-SYNTHETIC CIRCUIT GENERATION FOR TESTING INCREMENTAL PLACE AND ROUTE TOOLS David GrantGuy Lemieux University of British Columbia Vancouver, BC.
A Novel Timing-Driven Global Routing Algorithm Considering Coupling Effects for High Performance Circuit Design Jingyu Xu, Xianlong Hong, Tong Jing, Yici.
Interconnect Driver Design for Long Wires in FPGAs Edmund Lee, Guy Lemieux & Shahriar Mirabbasi University of British Columbia, Canada Electrical & Computer.
A Survey of Fault Tolerant Methodologies for FPGA’s Gökhan Kabukcu
Xiao Patrick Dong Supervisor: Guy Lemieux. Goal: Reduce critical path  shorter period Decrease dynamic power 2.
Chandrasekhar 1 MAPLD 2005/204 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan.
A Study of the Scalability of On-Chip Routing for Just-in-Time FPGA Compilation Roman Lysecky a, Frank Vahid a*, Sheldon X.-D. Tan b a Department of Computer.
1 Architecture of Datapath- oriented Coarse-grain Logic and Routing for FPGAs Andy Ye, Jonathan Rose, David Lewis Department of Electrical and Computer.
Placement study at ESA Filomena Decuzzi David Merodio Codinachs
MAPLD 2005 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan Dr. V. Kamakoti.
A. Mishchenko S. Chatterjee1 R. Brayton UC Berkeley and Intel1
An Active Glitch Elimination Technique for FPGAs
Dynamic FPGA Routing for Just-in-Time Compilation
Routing Algorithms.
ECE 697F Reconfigurable Computing Lecture 5 FPGA Routing
Off-path Leakage Power Aware Routing for SRAM-based FPGAs
Chapter 3b Leakage Efficient Chip-Level Dual-Vdd Assignment with Time Slack Allocation for FPGA Power Reduction Prof. Lei He Electrical Engineering Department.
Reconfigurable Computing (EN2911X, Fall07)
Presentation transcript:

Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation Seokjin Lee*, D. F. Wong+ *Dept. of Electrical and Computer Engineering +Dept. of Computer Sciences The University of Texas at Austin

Outline Overview Introduction Problem Formulation FPGA Architecture, Routing resources FPGA routing problem Problem Formulation Routing graphs and Timing graphs Algorithm Description Lagrangian Relaxation LR_ROUTE, NET_ROUTE Experimental Results Conclusion

Overview A new timing-driven routing algorithm for FPGAs Find a routing with minimum critical path delay for a given placed circuit. Handling of the timing constraints in a mathematical programming framework. Routing results are compared with those of VPR router.

FPGA Architecture Logic modules Routing resources I/O modules Implements logic functions LUTs, flip-flops Routing resources Wire segments Programmable switches I/O modules <A typical FPGA architecture>

FPGA Routing Resources Prefabricated wire segments Routing constraints : Sharing of a wire segments by different nets is not possible Limited Routability High RC delays and large area of switches

FPGA Routing

Routing Graph Gr (Vr , Er) Vr : I/O pins of logic modules, wire segments Er : feasible connections between the nodes Routing problem: Find vertex disjoint trees T={T1,…Tn}

Timing Constraints Source-to-sink delays of nets Timing constraints Delay of wire-switch chains Calculated from architecture specific RC values based on Elmore delay model Timing constraints Specified by arrival times at primary inputs (outputs of storage elements) or required times at primary outputs (inputs of storage elements)

Timing Graph Gt (Vt , Et) Constructed from input netlist Captures timing constraints Vt : inputs, outputs, logic module pins Et : source-sink pairs of nets, input-output pairs of logic modules Fictitious nodes s : connects primary inputs, t : connects primary outputs

Timing-Driven FPGA Routing Minimization of critical path delay under timing and routing constraints Find vertex disjoint routing trees T = {T1, …, Tn} for all the nets such that Minimize subject to

Lagrangian Relaxation General technique for solving optimization problems with difficult constraints Lagrangian subproblems New objective function: adding constraints to the original objective function after multiplied by constants (Lagrangian multipliers) Iteratively update Lagrangian multipliers and solve Lagrangian subproblems

Lagrangian Relaxation Original problem Lagrangian subproblem

LR for Our Problem Original problem Lagrangian subproblem

Optimality Conditions Optimality conditions on  By rearranging terms,

Simplified Lagrangian Subproblem Optimality conditions on  Lagrangian subproblem becomes

Updating Lagrangian Multipliers Subgradient Method : stepsize

LR_ROUTE Initialize  Call NET_ROUTE to solve LS() Compute for each Update for each Repeat Steps 2-4 until no shared resource exists.

Solving Lagrangian Subproblem NET_ROUTE Find routing trees T for a set of given multipliers  such that Minimize subject to where

Solving Lagrangian Subproblem

Routing Nets For net k, Cost for each node:

NET_ROUTE For each net k Rip up routing for net k for each sink v of net k Maze route from source to sink with cost Update for all nodes in

Experimental Results FPGA model used Symmetrical-array-based FPGA Each logic block contains four 4-input LUTs and flip-flops Switch connections: Fs = 3, Fc = W Fs: number of connections per wire entering the switch box Fc : number of tracks to which each logic block pin can connect W : number of tracks in a channel

Experimental Results Tested on large circuits from MCNC benchmark Routing with fixed channel width Minimum channel width obtained by running VPR in timing-driven mode Better results for 13 circuits (out of 17) Critical path delay improved up to 33% with comparable runtime

Experimental Results Critical path delay and runtime comparison Circuits LUTs / FFs Number of Tracks Delay (ns) Runtime (s) VPR LR_ROUTE Alu4 1522 33 46.6 46.2 58 57 Apex2 1878 43 61.5 49.3 61 46 Apex4 1262 41 45.4 48.9 29 Bigkey 1707 24 41.7 27.8 53 62 Clma 8383 51 125.0 96.4 531 464 Des 1591 43.5 48.1 44 42 Diffeq 1497 48.8 48.6 32 31 Dsip 1370 25 29.6 27.6 78 Elliptic 3604 40 77.1 71.3 151 256

Experimental Results Circuits LUTs / FFs Number of Tracks Delay (ns) Runtime (s) VPR LR_ROUTE Ex1010 4598 44 83.5 75.2 248 351 Ex5p 1064 43 44.8 43.7 22 34 frisc 3556 81.5 84.3 121 171 misex3 1397 37 42.5 49.4 50 49 pdc 4575 61 96.5 95.0 304 465 s298 1931 28 98.7 91.5 71 85 seq 1750 35 55.9 47.0 55 67 spla 3690 56 94.7 74.0 203 234

Conclusion A new timing-driven routing algorithm for FPGAs Find a routing with minimum critical path delay for a given placed circuit. Handling of the timing constraints by Lagrangian relaxation. Routing results are better than those of VPR router.