ECE 5745 Complex Digital ASIC Design Topic 13: Physical Design Automation Algorithms
|
|
- Lora Harris
- 5 years ago
- Views:
Transcription
1 ECE 7 Complex Digital ASIC Design Topic : Physical Design Automation Algorithms Christopher atten School of Electrical and Computer Engineering Cornell University
2 Placement Global Routing Detailed Routing Part : CAD Algorithms Placement x = a'bc + a'bc' y = b'c' + ab' + ac x = a'b y = b'c' + ac RTL to Logic Synthesis Technology Independent Synthesis Technology Dependent Synthesis Global Routing Detailed Routing ECE 7 T: Physical Design Automation Algorithms /
3 Placement Global Routing Detailed Routing Placement KLMH a b d e c f g h Linear Placement a c b g h d f e VDD h e d a h e d a g f c b g f c b GND D Placement Placement and Routing with Standard Cells Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global and Detailed Placement ECE 7 T: Physical Design Automation Algorithms / Lienig
4 Placement Global Routing Detailed Routing Global vs. Detailed Placement Global Placement Detailed Placement Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms /
5 Placement Global Routing Detailed Routing Placement Objective Functions Total Wirelength Number of Cut Nets Wire Congestion Signal Delay. Optimization Objectives Total Wirelength KLMH e h a k j f h c f l i VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global and Detailed Placement 6 b j g d k i d c e l b a g 0 Springer Verlag Lienig Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms / pringer Verlag
6 Placement Global Routing Detailed Routing Results of Placement Good vs. ad Placement ad placement causes routing congestion resulting in: Increases in circuit area (cost) and wiring Longer wires more capacitance Longer delay Higher dynamic power dissipation Good placement Circuit area (cost) and wiring decreases Shorter wires less capacitance Shorter delay Less dynamic power dissipation Kurt Keutzer Adapted from [Devadas 06] ECE 7 T: Physical Design Automation Algorithms 6 /
7 Placement Global Routing Detailed Routing. Introduction Partitioning KLMH Circuit: 6 Cut c b 7 8 Cut c a lock A lock lock A lock Cut c a : four external connections Cut c b : two external connections Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 7 / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning Lienig
8 . Terminology Placement Global Routing Detailed Routing Partitioning Terminology lock (Partition) Graph G : Nodes,,. 6 6 Cells Graph G : Nodes,, 6. Collection of cut edges Cut set: (,), (,), (,6), Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 8 / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning
9 .. Kernighan-Lin (KL) Algorithm Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Given: A graph with n nodes where each node has the same weight. Goal: A partition (division) of the graph into two disjoint subsets A and with minimum cut cost and A = = n. Example: n = lock A 6 lock 7 8 Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 9 /
10 .. Kernighan-Lin (KL) Algorithm Terminology Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Concepts KLMH Cost D(v) of moving a node v D(v) = E c (v) E nc (v), 6 where E c (v) is the set of v s incident edges that are cut by the cut line, and E nc (v) is the set of v s incident edges that are not cut by the cut line. Node : D() = -= 7 8 High costs (D > 0) indicate that the node should move, while low costs (D < 0) indicate that the node should stay within the same partition. Node 7: D(7) = -= Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 0 / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning 0
11 .. Kernighan-Lin (KL) Algorithm Terminology Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Concepts KLMH Gain of swapping a pair of nodes a und b g = D(a) + D(b) -* c(a,b), 6 where D(a), D(b) are the respective costs of nodes a, b c(a,b) is the connection weight between a and b: If an edge exists between a and b, then c(a,b) = edge weight (here ), otherwise, c(a,b) = The gain g indicates how useful the swap between two nodes will be The larger g, the more the total cut cost will be reduced Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning
12 Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Concepts.. Kernighan-Lin (KL) Algorithm Terminology KLMH Gain of swapping a pair of nodes a und b Node 7: D(7) = -= g = D(a) + D(b) -* c(a,b), 6 where D(a), D(b) are the respective costs of nodes a, b c(a,b) is the connection weight between a and b: If an edge exists between a and b, then c(a,b) = edge weight (here ), otherwise, c(a,b) = 0. Node : D() = -= 7 8 g (,7) = D() + D(7) - * c(a,b) = + = 6 => Swapping nodes and 7 would reduce the cut size by 7 8 Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning ECE 7 T: Physical Design Automation Algorithms / Lienig
13 Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Concepts.. Kernighan-Lin (KL) Algorithm Terminology KLMH Gain of swapping a pair of nodes a und b Node : D() = -= g = D(a) + D(b) -* c(a,b), 6 where D(a), D(b) are the respective costs of nodes a, b c(a,b) is the connection weight between a and b: If an edge exists between a and b, then c(a,b) = edge weight (here ), otherwise, c(a,b) = 0. Node : D() = -= 7 8 g (,) = D() + D() - * c(a,b) = + 0 = 6 => Swapping nodes and would reduce the cut size by 7 8 Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning ECE 7 T: Physical Design Automation Algorithms / Lienig
14 Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Example.. Kernighan-Lin (KL) Algorithm Example KLMH Cut cost: 9 Not fixed:,,,,,6,7,8 Cut cost: 6 Not fixed:,,,6,7,8 Cut cost: Not fixed:,,7,8 Cut cost: 7 Not fixed:,8 Cut cost: 9 Not fixed: D() = D() = D() = D(6) = D() = D(7) = D() = D(8) = D() = - D(6) = D() = - D(7)=- D() = D(8)=- D() = - D() = - D(7)=- D(8)=- D() = - D(8)=- g = +-0 = Swap (,) G = g = g = +-0 = Swap (,6) G = G + g =8 g = ---0 = -6 Swap (,7) G = G + g = g = ---0 = - Swap (,8) G = G + g = 0 Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning ECE 7 T: Physical Design Automation Algorithms / Lienig
15 Placement Global Routing Detailed Routing Kernighan-Lin (KL) Algorithm Example.. Kernighan-Lin (KL) Algorithm Example KLMH D() = D() = D() = D(6) = D() = D(7) = D() = D(8) = D() = - D(6) = D() = - D(7)=- D() = D(8)=- D() = - D() = - D(7)=- D(8)=- D() = - D(8)=- g = +-0 = Swap (,) G = g = g = +-0 = Swap (,6) G = G + g =8 g = ---0 = -6 Swap (,7) G = G + g = g = ---0 = - Swap (,8) G = G + g = 0 Maximum positive gain G m = 8 with m =. Since G m > 0, the first m = swaps (,) and (,6) are executed. 6 Since G m > 0, more passes are needed until G m VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Netlist and System Partitioning 7 Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms / Lienig
16 Placement Global Routing Detailed Routing Min-Cut Placement Use partitioning algorithm (such as KL) to divide netlist into two regions Use partitioning algorithm to recursively divide the two partitions into two smaller regions (four regions total) Each cut heuristically minimizes the number of cut nets Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms /
17 .. Min-Cut Placement Example Placement Global Routing Detailed Routing Min-Cut Example Given: 6 Task: x placement with minimum wirelength using alternative cutline directions and the KL algorithm Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 6 / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global and Detailed Placem
18 Placement Global Routing Detailed Routing Min-Cut Example..cut Min-Cut-Platzierung: eispiel 6 KLMH Vertical cut cut : L={,,}, R={,,6} KL Algorithms cut cut Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 7 /
19 Placement Global Routing Detailed Routing Min-Cut Example 6 KLMH 0 0 Horizontal cut cut L : T={,}, ={,0} cut Horizontal cut cut R : T={,}, ={6,0} 0 cut L 0 6 cut R cut TL cut TR cut L cut R 6 VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global and Detailed Placement 6 Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 8 / Lienig
20 Placement Global Routing Detailed Routing Analytical Placement with Quadratic Placement Algorithm.. Analytic Placement Quadratic Placement KLMH Objective function is quadratic; sum of (weighted) squared Euclidean distance represents placement objective function L( P) = n i, j= c ij ( ) ( ) ) x x + y y i j i where n is the total number of cells, and c(i,j) is the connection cost between cells i and j. j Only two-point-connections Minimize objective function by equating its derivative to zero which reduces to solving a system of linear equations Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 9 /
21 Placement Global Routing Detailed Routing Minimizing Objective Function Clumps Cells Together yout after Min-cut Adapted from [Devadas 06] Now global placement problem will be solved again ECE 7 T: Physical Design Automation Algorithms 0 /
22 First Iteration Placement Global Routing Detailed Routing Using Partitioning to Pull Cells Apart Second Iteration Third Iteration Kurt Keutzer A. Kahng 0 Kurt Keutzer Fourth Iteration A. Kahng Kurt Keutzer A. Kahng Kurt Keutzer A. Kahng Adapted from [Devadas 06,Kahng ] ECE 7 T: Physical Design Automation Algorithms /
23 Placement Global Routing Detailed Routing Part : CAD Algorithms Placement x = a'bc + a'bc' y = b'c' + ab' + ac x = a'b y = b'c' + ac RTL to Logic Synthesis Technology Independent Synthesis Technology Dependent Synthesis Global Routing Detailed Routing ECE 7 T: Physical Design Automation Algorithms /
24 .Placement Introduction: GlobalGeneral Routing Routing Detailed Problem Routing General Routing Problem Netlist: N = {C, D 6, } N = {D,, C, A } N = {C, D } N = {, A, C } A N N N N C Technology Information (Design Rules) D 6 Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms /
25 Placement Global Routing Detailed Routing. Introduction Routing Algorithm Taxonomy KLMH Routing Multi-Stage Routing of Signal Nets Global Routing Detailed Routing Timing-Driven Routing Large Single- Net Routing Geometric Techniques Coarse-grain assignment of routes to routing regions Fine-grain assignment of routes to routing tracks Net topology optimization and resource allocation to critical nets Power (VDD) and Ground (GND) routing Non-Manhattan and clock routing VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing 9 Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms / Lienig
26 Placement Global Routing Detailed Routing. Introduction Global vs. Detailed Routing KLMH Global Routing Detailed Routing N N N N N N N N N N N N N N N N Horizontal Segment Vertical Segment Via 0 Springer Verlag VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms / Lienig
27 . Terminology and Definitions Placement Global Routing Detailed Routing Terminology: Channel Channel Rectangular routing region with pins on two opposite sides Standard cell layout (Two-layer routing) Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms 6 /
28 . Terminology and Definitions Placement Global Routing Detailed Routing Terminology: Channel Channel Rectangular routing region with pins on two opposite sides Routing channel Routing channel Standard cell layout (Two-layer routing) Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms 7 /
29 . Terminology and Definitions Placement Global Routing Detailed Routing Terminology: Capacity Capacity Number of available routing tracks or columns Horizontal Routing Channel C D C d pitch A C A C D Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms 8 /
30 . Terminology and Definitions Placement Global Routing Detailed Routing Terminology: Switchbox KLMH Switchbox (Two-layer macro cell layout) Intersection of horizontal and vertical channels Vertical Channel C Horizontal Channel A Horizontal Channel C A Horizontal channel is routed after vertical channel is routed Vertical Channel Adapted from [Kahng ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing 8 ECE 7 T: Physical Design Automation Algorithms 9 / Lienig
31 . Optimization Goals Placement Global Routing Detailed Routing Terminology: Feed-Through Cells KLMH Standard-cell design If number of metal layers is limited, feedthrough cells must be used to route across multiple cell rows A Feedthrough cells A Variable-die, standard cell design: A A A Total height = Cell row heights + All channel heights 0 Springer Verlag VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing Adapted from [Kahng ] 6 Lienig ECE 7 T: Physical Design Automation Algorithms 0 /
32 . Optimization Goals Placement Global Routing Detailed Routing Optimizing Wirelength vs. Number of Feedthroughs KLMH Standard-cell design Steiner tree solution with minimal wirelength Steiner tree solution with fewest feedthrough cells 0 Springer Verlag Adapted from [Kahng ] ECE 7VLSI Physical Design: From Graph Partitioning T: to Physical Timing Closure Design Automation Algorithms Chapter : Global Routing / 7 Lienig
33 Placement Global Routing Detailed Routing KLMH Rectilinear Routing Definining routing regions Pin connections Pins assigned to grid cells 0 Springer Verlag VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms /
34 Placement Global Routing Detailed Routing Rectilinear Routing A A A A A A A A A A A Pins assigned to grid cells Rectilinear Steiner minimum tree (RSMT) Assigned routing regions and feedthrough cells Sequential Steiner Tree Heuristic VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms /
35 .6. Rectilinear Routing Placement Global Routing Detailed Routing Heuristic Sequential Steiner Tree Algorithm A Sequential Steiner Tree Heuristic. Find the closest (in terms of rectilinear distance) pin pair, construct their minimum bounding box (M). Find the closest point pair (p M,p C ) between any point p M on the M and p C from the set of pins to consider. Construct the M of p M and p C. Add the L-shape that p M lies on to T (deleting the other L-shape). If p M is a pin, then add any L-shape of the M to T.. Goto step until the set of pins to consider is empty VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing Adapted from [Kahng ] ECE 7 T: Physical Design Automation Algorithms /
36 .6. Rectilinear Routing: Example Sequential Steiner Tree Heuristic Placement Global Routing Detailed Routing Heuristic Sequential Steiner Tree Example VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Adapted Routing from [Kahng ] ECE 7 T: Physical Design Automation Algorithms /
37 .6. Placement Rectilinear Routing: Global Routing Example Sequential Detailed Steiner Routing Tree Heuristic Heuristic Sequential Steiner Tree Example Adapted from [Kahng ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter : Global Routing ECE 7 T: Physical Design Automation Algorithms /
38 Placement Global Routing Detailed Routing Part : CAD Algorithms Placement x = a'bc + a'bc' y = b'c' + ab' + ac x = a'b y = b'c' + ac RTL to Logic Synthesis Technology Independent Synthesis Technology Dependent Synthesis Global Routing Detailed Routing ECE 7 T: Physical Design Automation Algorithms 6 /
39 Placement Global Routing Detailed Routing 6. Terminology Detailed Routing Channel and Switchbox Routing E E KLMH C D C D E D A C A C Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing 8 ECE 7 T: Physical Design Automation Algorithms 7 / Lienig
40 Placement Global Routing Detailed Routing 6.. Horizontal Constraint Graphs Horizontal Constraint Graphs KLMH Column a b c d e f g h i j k 0 D E F G 0 D 0 0 A C E C E A F H 0 H G S(b) = {A,, C} Let S(col) denote the set of nets that pass through column col S(col) contains all nets that either () are connected to a pin in column col or () have pin connections to both the left and right of col Since horizontal segments cannot overlap, each net in S(col) must be assigned to a different track in column col S(col) represents the lower bound on the number of tracks in colum col; lower bound of the channel height is given by maximum cardinality of any S(col) VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing Adapted from [Khang ] 6 ECE 7 T: Physical Design Automation Algorithms 8 / Lienig
41 Placement Global Routing Detailed Routing 6.. Horizontal Constraint Graphs Horizontal Constraint Graph Example KLMH Column a b c d e f g h i j k 0 D E F G 0 D 0 0 A C E C E A F H 0 H G Focus on columns which are not subsets of any other column S(a) S(b) S(c) S(d)S(e) S(f)S(g) S(h) S(i) S(j) S(k) A 0 D E F G 0 D 0 0 C E D A C E C E A F H 0 H G F G VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing 9 Adapted from [Khang ] H S(a) = {A} S(b) = {A,,C} S(c) = {A,,C,D,E} S(d) = {A,,C,D,E} S(e) = {A,,D,E} S(f) = {A,D,F} S(g) = {D,F},G} S(h) = {D,G,H} S(i) = {D,G,H} S(j) = {G,H} S(k) = {G} ECE 7 T: Physical Design Automation Algorithms 9 / Lienig
42 Placement Global Routing Detailed Routing 6.. Horizontal Constraint Graphs Horizontal Constraint Graph Example KLMH Column a b c d e f g h i j k 0 D E F G 0 D 0 0 A C E C E A F H 0 H G A S(c) S(f)S(g) S(i) 0 D E F G 0 D 0 0 C E D F G H S(c) S(f) S(g) S(i) A G F H C D E A C E C E A F H 0 H G Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing 0 ECE 7 T: Physical Design Automation Algorithms 0 / Lienig
43 6.. Vertical Constraint Graphs Placement Global Routing Detailed Routing Vertical Constraint Graphs 0 D E F G 0 D 0 0 A C E C E A F H 0 H G D G E F C A H Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms / VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing
44 Placement Global Routing Detailed Routing 6.. Left-Edge Algorithm Example Left-Edge Algorithm Example 0 A D E A F G 0 D I J J C E C E F H I H G I. Generate VCG and zone representation A D J A G E I G C H I C H F D J E F Adapted from [Khang ] ECE 7 VLSI Physical Design: From Graph Partitioning to Timing Closure T: Physical Design Automation Algorithms Chapter 6: Detailed Routing /
45 Placement Global Routing Detailed Routing Left-Edge Algorithm Example 6.. Left-Edge Algorithm Example KLMH A D J A G E I G C H I C H F D J E F. Consider next track. Find left-to-right ordering of all unassigned nets If curr_net has no parents and does not cause conflicts on curr_track assign curr_net curr_track = : Net A Net J. Delete placed nets (A, J ) in VCG and zone represenation Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing 9 ECE 7 T: Physical Design Automation Algorithms / Lienig
46 Placement Global Routing Detailed Routing Left-Edge Algorithm Example curr_track = 0 A D E A F G 0 D I J J C E C E F H I H G I Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms /
47 Placement Global Routing Detailed Routing Left-Edge Algorithm Example 6.. Left-Edge Algorithm Example KLMH D G E I G C H I C H F D E F. Consider next track. Find left-to-right ordering of all unassigned nets If curr_net has no parents and does not cause conflicts on curr_track assign curr_net curr_track = : Net D. Delete placed nets (D ) in VCG and zone representation Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing ECE 7 T: Physical Design Automation Algorithms / Lienig
48 Placement Global Routing Detailed Routing Left-Edge Algorithm Example curr_track = 0 A D E A F G 0 D I J J C E C E F H I H G I Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 6 /
49 Placement Global Routing Detailed Routing Left-Edge Algorithm Example 6.. Left-Edge Algorithm Example KLMH G E I G C H I C H F E F. Consider next track. Find left-to-right ordering of all unassigned nets If curr_net has no parents and does not cause conflicts on curr_track assign curr_net curr_track = : Net E Net G. Delete placed nets (E, G ) in VCG and zone representation Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing ECE 7 T: Physical Design Automation Algorithms 7 / Lienig
50 Placement Global Routing Detailed Routing Left-Edge Algorithm Example curr_track = 0 A D E A F G 0 D I J J C E C E F H I H G I Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 8 /
51 Placement Global Routing Detailed Routing Left-Edge Algorithm Example 6.. Left-Edge Algorithm Example KLMH I C H I C H F F. Consider next track. Find left-to-right ordering of all unassigned nets If curr_net has no parents and does not cause conflicts on curr_track assign curr_net curr_track = : Net C Net F Net I. Delete placed nets (C, F, I ) in VCG and zone representation Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing ECE 7 T: Physical Design Automation Algorithms 9 / Lienig
52 Placement Global Routing Detailed Routing Left-Edge Algorithm Example curr_track = 0 A D E A F G 0 D I J J C E C E F H I H G I Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms 0 /
53 Placement Global Routing Detailed Routing Left-Edge Algorithm Example 6.. Left-Edge Algorithm Example KLMH H H. Consider next track. Find left-to-right ordering of all unassigned nets If curr_net has no parents and does not cause conflicts on curr_track assign curr_net curr_track = : Net Net H. Delete placed nets (, H ) in VCG and zone representation Adapted from [Khang ] VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 6: Detailed Routing 7 ECE 7 T: Physical Design Automation Algorithms / Lienig
54 Placement Global Routing Detailed Routing Left-Edge Algorithm Example curr_track = 0 A D E A F G 0 D I J J C E C E F H I H G I Routing result Adapted from [Khang ] ECE 7 T: Physical Design Automation Algorithms /
55 Placement Global Routing Detailed Routing Acknowledgments [Devadas 06] S. Devadas, VLSI CAD Flow: Logic Synthesis, Placement, and Routing, MIT 6.7 Complex Digital Systems Guest Lecture Slides, 006. [Kahng ] A.. Kahng, J. Liening, I.L. Markov, and J. Hu. Companion Slides for VLSI Physical Design: From Graph Partitioning to Timing Closure, Springer 0. ECE 7 T: Physical Design Automation Algorithms /
Chapter 6 Detailed Routing
hapter 6 Detailed Routing 6.1 Terminology 6.2 Horizontal and Vertical onstraint Graphs 6.2.1 Horizontal onstraint Graphs 6.2.2 Vertical onstraint Graphs 6.3 hannel Routing lgorithms 6.3.1 Left-Edge lgorithm
More informationChapter 5 Global Routing
Chapter 5 Global Routing 5. Introduction 5.2 Terminology and Definitions 5.3 Optimization Goals 5. Representations of Routing Regions 5.5 The Global Routing Flow 5.6 Single-Net Routing 5.6. Rectilinear
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5 Global Routing Original uthors: ndrew. Kahng, Jens, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning to Timing
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 5 Global Routing Original uthors: ndrew. Kahng, Jens, Igor L. Markov, Jin Hu Chapter 5 Global Routing 5. Introduction 5.2 Terminology and Definitions 5.3 Optimization Goals 5. Representations of
More informationCS612 Algorithms for Electronic Design Automation. Global Routing
CS612 Algorithms for Electronic Design Automation Global Routing Mustafa Ozdal CS 612 Lecture 7 Mustafa Ozdal Computer Engineering Department, Bilkent University 1 MOST SLIDES ARE FROM THE BOOK: MODIFICATIONS
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter Netlist and System Partitioning Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu Chapter Netlist and System Partitioning. Introduction. Terminology. Optimization Goals. Partitioning
More informationL14 - Placement and Routing
L14 - Placement and Routing Ajay Joshi Massachusetts Institute of Technology RTL design flow HDL RTL Synthesis manual design Library/ module generators netlist Logic optimization a b 0 1 s d clk q netlist
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Lecture 16 Eli Bozorgzadeh Computer Science Department-UCI References and Copyright Textbooks referred (none required) [Mic94] G. De Micheli Synthesis and Optimization
More informationCAD Algorithms. Placement and Floorplanning
CAD Algorithms Placement Mohammad Tehranipoor ECE Department 4 November 2008 1 Placement and Floorplanning Layout maps the structural representation of circuit into a physical representation Physical representation:
More informationVLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5. Guest Lecture by Srini Devadas
VLSI CAD Flow: Logic Synthesis, Placement and Routing 6.375 Lecture 5 Guest Lecture by Srini Devadas 1 RTL Design Flow HDL RTL Synthesis manual design Library/ module generators netlist logic optimization
More informationIntroduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.
Placement Introduction A very important step in physical design cycle. A poor placement requires larger area. Also results in performance degradation. It is the process of arranging a set of modules on
More informationBasic Idea. The routing problem is typically solved using a twostep
Global Routing Basic Idea The routing problem is typically solved using a twostep approach: Global Routing Define the routing regions. Generate a tentative route for each net. Each net is assigned to a
More informationEstimation of Wirelength
Placement The process of arranging the circuit components on a layout surface. Inputs: A set of fixed modules, a netlist. Goal: Find the best position for each module on the chip according to appropriate
More informationTextbook : [WH book] CMOS VLSI Design by Neil H. E. Weste, David F. Harris, Pearson
NPTEL-Phase-II : Course : Advanced VLSI Design Question Set for Module 5 and Module 6 : prepared by Dr. Sachin B. Patkar ( Professor, Dept. EE, IIT Bombay ) Module 5: FSM Controller/Datapath and Processor
More informationECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms
ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece5745 RTL to
More informationECE260B CSE241A Winter Routing
ECE260B CSE241A Winter 2005 Routing Website: / courses/ ece260bw05 ECE 260B CSE 241A Routing 1 Slides courtesy of Prof. Andrew B. Kahng Physical Design Flow Input Floorplanning Read Netlist Floorplanning
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 7 Specialized Routing Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu Chapter 7 Specialized Routing 7. Introduction to Area Routing 7. Net Ordering in Area Routing 7.3 Non-Manhattan
More informationProblem Formulation. Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets.
Clock Routing Problem Formulation Specialized algorithms are required for clock (and power nets) due to strict specifications for routing such nets. Better to develop specialized routers for these nets.
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 4 Global and Detailed Placement Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu 1 Chapter 4 Global and Detailed Placement 4.1 Introduction 4. Optimization Objectives 4.3 Global
More informationIntroduction VLSI PHYSICAL DESIGN AUTOMATION
VLSI PHYSICAL DESIGN AUTOMATION PROF. INDRANIL SENGUPTA DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Introduction Main steps in VLSI physical design 1. Partitioning and Floorplanning l 2. Placement 3.
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 3 Chip Planning VLSI Physical Design: From Graph Partitioning to Timing Closure Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning to
More informationPartitioning. Course contents: Readings. Kernighang-Lin partitioning heuristic Fiduccia-Mattheyses heuristic. Chapter 7.5.
Course contents: Partitioning Kernighang-Lin partitioning heuristic Fiduccia-Mattheyses heuristic Readings Chapter 7.5 Partitioning 1 Basic Definitions Cell: a logic block used to build larger circuits.
More informationCAD Flow for FPGAs Introduction
CAD Flow for FPGAs Introduction What is EDA? o EDA Electronic Design Automation or (CAD) o Methodologies, algorithms and tools, which assist and automatethe design, verification, and testing of electronic
More informationGraph Models for Global Routing: Grid Graph
Graph Models for Global Routing: Grid Graph Each cell is represented by a vertex. Two vertices are joined by an edge if the corresponding cells are adjacent to each other. The occupied cells are represented
More informationReference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering
FPGA Fabrics Reference Wayne Wolf, FPGA-Based System Design Pearson Education, 2004 Logic Design Process Combinational logic networks Functionality. Other requirements: Size. Power. Primary inputs Performance.
More informationUnit 7: Maze (Area) and Global Routing
Unit 7: Maze (Area) and Global Routing Course contents Routing basics Maze (area) routing Global routing Readings Chapters 9.1, 9.2, 9.5 Filling Unit 7 1 Routing Unit 7 2 Routing Constraints 100% routing
More informationRouting. Robust Channel Router. Figures taken from S. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998
Routing Robust Channel Router Figures taken from S. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998 Channel Routing Algorithms Previous algorithms we considered only work when one of the types
More informationPlace and Route for FPGAs
Place and Route for FPGAs 1 FPGA CAD Flow Circuit description (VHDL, schematic,...) Synthesize to logic blocks Place logic blocks in FPGA Physical design Route connections between logic blocks FPGA programming
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Placement Fall 2007 Eli Bozorgzadeh Computer Science Department-UCI References and Copyright Textbooks referred (none required) [Mic94] G. De Micheli Synthesis and
More informationUnit 5A: Circuit Partitioning
Course contents: Unit 5A: Circuit Partitioning Kernighang-Lin partitioning heuristic Fiduccia-Mattheyses heuristic Simulated annealing based partitioning algorithm Readings Chapter 7.5 Unit 5A 1 Course
More informationPlacement Algorithm for FPGA Circuits
Placement Algorithm for FPGA Circuits ZOLTAN BARUCH, OCTAVIAN CREŢ, KALMAN PUSZTAI Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,
More informationCAD Algorithms. Circuit Partitioning
CAD Algorithms Partitioning Mohammad Tehranipoor ECE Department 13 October 2008 1 Circuit Partitioning Partitioning: The process of decomposing a circuit/system into smaller subcircuits/subsystems, which
More informationPhysical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006
Physical Design of Digital Integrated Circuits (EN029 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 Lecture 09: Routing Introduction to Routing Global Routing Detailed Routing 2
More informationVery Large Scale Integration (VLSI)
Very Large Scale Integration (VLSI) Lecture 6 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Contents FPGA Technology Programmable logic Cell (PLC) Mux-based cells Look up table PLA
More informationOn Improving Recursive Bipartitioning-Based Placement
Purdue University Purdue e-pubs ECE Technical Reports Electrical and Computer Engineering 12-1-2003 On Improving Recursive Bipartitioning-Based Placement Chen Li Cheng-Kok Koh Follow this and additional
More informationECE260B CSE241A Winter Routing. Website:
ECE260B CSE241A Winter 2007 Routing Website: http://vlsicad.ucsd.edu/courses/ece260b-w07 ECE 260B CSE 241A Routing 1 Homework Questions, January 24, 2007 Placement Lecture (Lecture #5) Question 1. Slide
More informationECE260B CSE241A Winter Placement
ECE260B CSE241A Winter 2005 Placement Website: / courses/ ece260b- w05 ECE260B CSE241A Placement.1 Slides courtesy of Prof. Andrew B. Slides courtesy of Prof. Andrew B. Kahng VLSI Design Flow and Physical
More informationK. Keutzer. A. Kahng
Routing in Integrated Circuits A. Kahng K. Keutzer A. R. Newton ECE 260B CSE 241A /UCB EECS 244 1 Class News Wednesday: Presentation of research topics in placement, routing, and timing Each group will
More informationEfficient Rectilinear Steiner Tree Construction with Rectangular Obstacles
Proceedings of the th WSES Int. onf. on IRUITS, SYSTEMS, ELETRONIS, ONTROL & SIGNL PROESSING, allas, US, November 1-3, 2006 204 Efficient Rectilinear Steiner Tree onstruction with Rectangular Obstacles
More informationDigital VLSI Design. Lecture 7: Placement
Digital VLSI Design Lecture 7: Placement Semester A, 2016-17 Lecturer: Dr. Adam Teman 29 December 2016 Disclaimer: This course was prepared, in its entirety, by Adam Teman. Many materials were copied from
More informationIterative-Constructive Standard Cell Placer for High Speed and Low Power
Iterative-Constructive Standard Cell Placer for High Speed and Low Power Sungjae Kim and Eugene Shragowitz Department of Computer Science and Engineering University of Minnesota, Minneapolis, MN 55455
More information(Lec 14) Placement & Partitioning: Part III
Page (Lec ) Placement & Partitioning: Part III What you know That there are big placement styles: iterative, recursive, direct Placement via iterative improvement using simulated annealing Recursive-style
More informationCSE241 VLSI Digital Circuits UC San Diego
CSE241 VLSI Digital Circuits UC San Diego Winter 2003 Lecture 05: Logic Synthesis Cho Moon Cadence Design Systems January 21, 2003 CSE241 L5 Synthesis.1 Kahng & Cichy, UCSD 2003 Outline Introduction Two-level
More informationECE 5745 Complex Digital ASIC Design Topic 7: Packaging, Power Distribution, Clocking, and I/O
ECE 5745 Complex Digital ASIC Design Topic 7: Packaging, Power Distribution, Clocking, and I/O Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece5745
More informationICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design Logic Optimization Eli Bozorgzadeh Computer Science Department-UCI Hardware compilation flow HDL RTL Synthesis netlist Logic synthesis library netlist Physical design
More informationAnimation of VLSI CAD Algorithms A Case Study
Session 2220 Animation of VLSI CAD Algorithms A Case Study John A. Nestor Department of Electrical and Computer Engineering Lafayette College Abstract The design of modern VLSI chips requires the extensive
More informationLaboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013
CME 342 (VLSI Circuit Design) Laboratory 6 - Using Encounter for Automatic Place and Route By Mulong Li, 2013 Reference: Digital VLSI Chip Design with Cadence and Synopsys CAD Tools, Erik Brunvand Background
More informationCOMPARATIVE STUDY OF CIRCUIT PARTITIONING ALGORITHMS
COMPARATIVE STUDY OF CIRCUIT PARTITIONING ALGORITHMS Zoltan Baruch 1, Octavian Creţ 2, Kalman Pusztai 3 1 PhD, Lecturer, Technical University of Cluj-Napoca, Romania 2 Assistant, Technical University of
More informationMultilayer Routing on Multichip Modules
Multilayer Routing on Multichip Modules ECE 1387F CAD for Digital Circuit Synthesis and Layout Professor Rose Friday, December 24, 1999. David Tam (2332 words, not counting title page and reference section)
More informationPhysical Design Automation. Speaker: Debdeep Mukhopadhyay Dept of Comp. Sc and Engg IIT Madras, Chennai
Physical Design Automation Speaker: Debdeep Mukhopadhyay Dept of Comp. Sc and Engg IIT Madras, Chennai February 17, 2007 National Workshop on VLSI Design 2006 1 Synthesis Flow High-Level Synthesis Logic
More informationCircuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk
Circuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk Andrew A. Kennings, Univ. of Waterloo, Canada, http://gibbon.uwaterloo.ca/ akenning/ Igor L. Markov, Univ. of
More informationEE 466/586 VLSI Design. Partha Pande School of EECS Washington State University
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University pande@eecs.wsu.edu Lecture 18 Implementation Methods The Design Productivity Challenge Logic Transistors per Chip (K) 10,000,000.10m
More informationUnification of Partitioning, Placement and Floorplanning. Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L.
Unification of Partitioning, Placement and Floorplanning Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L. Markov Outline Introduction Comparisons of classical techniques
More informationEE582 Physical Design Automation of VLSI Circuits and Systems
EE582 Prof. Dae Hyun Kim School of Electrical Engineering and Computer Science Washington State University Preliminaries Table of Contents Semiconductor manufacturing Problems to solve Algorithm complexity
More informationCan Recursive Bisection Alone Produce Routable Placements?
Supported by Cadence Can Recursive Bisection Alone Produce Routable Placements? Andrew E. Caldwell Andrew B. Kahng Igor L. Markov http://vlsicad.cs.ucla.edu Outline l Routability and the placement context
More informationIntroduction to CMOS VLSI Design. Programmable Logic. Peter Kogge Fall 2015
Introduction to MOS VLSI Design Programmable Logic Peter Kogge Fall 2015 Includes lecture slides by David Harris, Harvey Mudd ollege http://www.cmosvlsi.com/coursematerials.html Programmable Logic Slide
More informationLayout DA (Physical Design)
Layout DA (Physical Design) n Floor Planning n Placement and Partitioning n Global Routing n Routing n Layout Compaction 1 Routing n Types of Local Routing Problems n Area Routing u Lee s Algorithm n Channel
More informationPlacement ABOUT THIS CHAPTER 11.1 INTRODUCTION CHAPTER. Chris Chu Iowa State University, Ames, Iowa
CHAPTER Placement 11 Chris Chu Iowa State University, Ames, Iowa ABOUT THIS CHAPTER Placement is the process of determining the locations of circuit devices on a die surface. It is an important stage in
More informationGenetic Placement: Genie Algorithm Way Sern Shong ECE556 Final Project Fall 2004
Genetic Placement: Genie Algorithm Way Sern Shong ECE556 Final Project Fall 2004 Introduction Overview One of the principle problems in VLSI chip design is the layout problem. The layout problem is complex
More informationOn GPU Bus Power Reduction with 3D IC Technologies
On GPU Bus Power Reduction with 3D Technologies Young-Joon Lee and Sung Kyu Lim School of ECE, Georgia Institute of Technology, Atlanta, Georgia, USA yjlee@gatech.edu, limsk@ece.gatech.edu Abstract The
More informationConstruction of All Rectilinear Steiner Minimum Trees on the Hanan Grid
Construction of All Rectilinear Steiner Minimum Trees on the Hanan Grid Sheng-En David Lin and Dae Hyun Kim Presenter: Dae Hyun Kim (Assistant Professor) daehyun@eecs.wsu.edu School of Electrical Engineering
More informationLab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation
Course Goals Lab Understand key components in VLSI designs Become familiar with design tools (Cadence) Understand design flows Understand behavioral, structural, and physical specifications Be able to
More informationElectronic Design Automation Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Electronic Design Automation Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #1 Introduction So electronic design automation,
More informationVLSI Physical Design: From Graph Partitioning to Timing Closure
Chapter 8 Timing Closure VLSI Physical Design: From Graph Partitioning to Timing Closure Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu VLSI Physical Design: From Graph Partitioning to
More informationPre-Layout Estimation of Individual Wire Lengths
Pre-Layout Estimation of Individual Wire Lengths Srinivas Bodapati and Farid N. Najm ECE Dept. and Coordinated Science Lab. University of Illinois at Urbana-Champaign ECE Department University of Toronto
More informationPhysical Design Implementation for 3D IC Methodology and Tools. Dave Noice Vassilios Gerousis
I NVENTIVE Physical Design Implementation for 3D IC Methodology and Tools Dave Noice Vassilios Gerousis Outline 3D IC Physical components Modeling 3D IC Stack Configuration Physical Design With TSV Summary
More informationFull Custom Layout Optimization Using Minimum distance rule, Jogs and Depletion sharing
Full Custom Layout Optimization Using Minimum distance rule, Jogs and Depletion sharing Umadevi.S #1, Vigneswaran.T #2 # Assistant Professor [Sr], School of Electronics Engineering, VIT University, Vandalur-
More informationUNIVERSITY OF CALGARY. Force-Directed Partitioning Technique for 3D IC. Aysa Fakheri Tabrizi A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES
UNIVERSITY OF CALGARY Force-Directed Partitioning Technique for 3D IC by Aysa Fakheri Tabrizi A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE
More informationChannel & Switchbox Routing
Channel & Switchbox Routing channel routing Detailed routing switchbox routing Routing Models Grid-based model: A grid is super-imposed on the routing region. Wires follow paths along the grid lines. Gridless
More informationAn Introduction to FPGA Placement. Yonghong Xu Supervisor: Dr. Khalid
RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR An Introduction to FPGA Placement Yonghong Xu Supervisor: Dr. Khalid RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR
More information3-D INTEGRATED CIRCUITS (3-D ICs) are emerging
862 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 21, NO. 5, MAY 2013 Study of Through-Silicon-Via Impact on the 3-D Stacked IC Layout Dae Hyun Kim, Student Member, IEEE, Krit
More informationCHAPTER 1 INTRODUCTION. equipment. Almost every digital appliance, like computer, camera, music player or
1 CHAPTER 1 INTRODUCTION 1.1. Overview In the modern time, integrated circuit (chip) is widely applied in the electronic equipment. Almost every digital appliance, like computer, camera, music player or
More informationTechnology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas
Technology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas 1 RTL Design Flow HDL RTL Synthesis Manual Design Module Generators Library netlist
More informationVector: A series of scalars contained in a column or row. Dimensions: How many rows and columns a vector or matrix has.
ASSIGNMENT 0 Introduction to Linear Algebra (Basics of vectors and matrices) Due 3:30 PM, Tuesday, October 10 th. Assignments should be submitted via e-mail to: matlabfun.ucsd@gmail.com You can also submit
More informationPlanning for Local Net Congestion in Global Routing
Planning for Local Net Congestion in Global Routing Hamid Shojaei, Azadeh Davoodi, and Jeffrey Linderoth* Department of Electrical and Computer Engineering *Department of Industrial and Systems Engineering
More informationSungmin Bae, Hyung-Ock Kim, Jungyun Choi, and Jaehong Park. Design Technology Infrastructure Design Center System-LSI Business Division
Sungmin Bae, Hyung-Ock Kim, Jungyun Choi, and Jaehong Park Design Technology Infrastructure Design Center System-LSI Business Division 1. Motivation 2. Design flow 3. Parallel multiplier 4. Coarse-grained
More informationA SURVEY: ON VARIOUS PLACERS USED IN VLSI STANDARD CELL PLACEMENT AND MIXED CELL PLACEMENT
Int. J. Chem. Sci.: 14(1), 2016, 503-511 ISSN 0972-768X www.sadgurupublications.com A SURVEY: ON VARIOUS PLACERS USED IN VLSI STANDARD CELL PLACEMENT AND MIXED CELL PLACEMENT M. SHUNMUGATHAMMAL a,b, C.
More informationAN 567: Quartus II Design Separation Flow
AN 567: Quartus II Design Separation Flow June 2009 AN-567-1.0 Introduction This application note assumes familiarity with the Quartus II incremental compilation flow and floorplanning with the LogicLock
More informationPushPull: Short Path Padding for Timing Error Resilient Circuits YU-MING YANG IRIS HUI-RU JIANG SUNG-TING HO. IRIS Lab National Chiao Tung University
PushPull: Short Path Padding for Timing Error Resilient Circuits YU-MING YANG IRIS HUI-RU JIANG SUNG-TING HO IRIS Lab National Chiao Tung University Outline Introduction Problem Formulation Algorithm -
More informationFloorplan Management: Incremental Placement for Gate Sizing and Buffer Insertion
Floorplan Management: Incremental Placement for Gate Sizing and Buffer Insertion Chen Li, Cheng-Kok Koh School of ECE, Purdue University West Lafayette, IN 47907, USA {li35, chengkok}@ecn.purdue.edu Patrick
More informationEN2911X: Reconfigurable Computing Lecture 13: Design Flow: Physical Synthesis (5)
EN2911X: Lecture 13: Design Flow: Physical Synthesis (5) Prof. Sherief Reda Division of Engineering, rown University http://scale.engin.brown.edu Fall 09 Summary of the last few lectures System Specification
More informationBACKEND DESIGN. Circuit Partitioning
BACKEND DESIGN Circuit Partitioning Partitioning System Design Decomposition of a complex system into smaller subsystems. Each subsystem can be designed independently. Decomposition scheme has to minimize
More informationASIC Physical Design Top-Level Chip Layout
ASIC Physical Design Top-Level Chip Layout References: M. Smith, Application Specific Integrated Circuits, Chap. 16 Cadence Virtuoso User Manual Top-level IC design process Typically done before individual
More informationLarge Scale Circuit Partitioning
Large Scale Circuit Partitioning With Loose/Stable Net Removal And Signal Flow Based Clustering Jason Cong Honching Li Sung-Kyu Lim Dongmin Xu UCLA VLSI CAD Lab Toshiyuki Shibuya Fujitsu Lab, LTD Support
More informationProgrammable Logic Devices HDL-Based Design Flows CMPE 415
HDL-Based Design Flows: ASIC Toward the end of the 80s, it became difficult to use schematic-based ASIC flows to deal with the size and complexity of >5K or more gates. HDLs were introduced to deal with
More informationVLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007
VLSI System Design Part II : Logic Synthesis (1) Oct.2006 - Feb.2007 Lecturer : Tsuyoshi Isshiki Dept. Communications and Integrated Systems, Tokyo Institute of Technology isshiki@vlsi.ss.titech.ac.jp
More informationTutorial for Cadence SOC Encounter Place & Route
Tutorial for Cadence SOC Encounter Place & Route For Encounter RTL-to-GDSII System 13.15 T. Manikas, Southern Methodist University, 3/9/15 Contents 1 Preliminary Setup... 1 1.1 Helpful Hints... 1 2 Starting
More informationUNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation
UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation NTU IC541CA 1 Assumed Knowledge This lab assumes use of the Electric
More informationParallel Global Routing Algorithms for Standard Cells
Parallel Global Routing Algorithms for Standard Cells Zhaoyun Xing Computer and Systems Research Laboratory University of Illinois Urbana, IL 61801 xing@crhc.uiuc.edu Prithviraj Banerjee Center for Parallel
More informationParallel Algorithm for Multilevel Graph Partitioning and Sparse Matrix Ordering
Parallel Algorithm for Multilevel Graph Partitioning and Sparse Matrix Ordering George Karypis and Vipin Kumar Brian Shi CSci 8314 03/09/2017 Outline Introduction Graph Partitioning Problem Multilevel
More informationDigital VLSI Design. Lecture 9: Routing
Digital VLSI Design Lecture 9: Routing Semester A, 018-19 Lecturer: Dr. Adam Teman January 5, 019 Disclaimer: This course was prepared, in its entirety, by Adam Teman. Many materials were copied from sources
More informationAn integrated placement and routing approach
Retrospective Theses and Dissertations 2006 An integrated placement and routing approach Min Pan Iowa State University Follow this and additional works at: http://lib.dr.iastate.edu/rtd Part of the Electrical
More informationSequential/Parallel Global Routing Algorithms for VLSI Standard. Cells
Sequential/Parallel Global Routing Algorithms for VLSI Standard Cells A Thesis Presented to The Faculty of Graduate Studies of The University of Guelph by HAO SUN In partial fulfilment of requirements
More informationTutorial 2 Automatic Placement & Routing
Tutorial 2 Automatic Placement & Routing Please follow the instructions found under Setup on the CADTA main page before starting this tutorial. 1.1. Start Encounter Log on to a VLSI server using your EE
More informationECO-system: Embracing the Change in Placement
Motivation ECO-system: Embracing the Change in Placement Jarrod A. Roy and Igor L. Markov University of Michigan at Ann Arbor Cong and Sarrafzadeh: state-of-the-art incremental placement techniques unfocused
More informationEfficient Rectilinear Steiner Tree Construction with Rectilinear Blockages
Efficient ectilinear Steiner Tree Construction with ectilinear Blockages Zion Shen Chris CN Chu Ying-Meng Li Cadence Design Systems 555 iver Oaks Parkway San Jose, CA, 5134 zion@cadencecom Department of
More informationMincut Placement with FM Partitioning featuring Terminal Propagation. Brett Wilson Lowe Dantzler
Mincut Placement with FM Partitioning featuring Terminal Propagation Brett Wilson Lowe Dantzler Project Overview Perform Mincut Placement using the FM Algorithm to perform partitioning. Goals: Minimize
More informationWojciech P. Maly Department of Electrical and Computer Engineering Carnegie Mellon University 5000 Forbes Ave. Pittsburgh, PA
Interconnect Characteristics of 2.5-D System Integration Scheme Yangdong Deng Department of Electrical and Computer Engineering Carnegie Mellon University 5000 Forbes Ave. Pittsburgh, PA 15213 412-268-5234
More information6 Mathematics Curriculum
New York State Common Core 6 Mathematics Curriculum GRADE GRADE 6 MODULE 5 Table of Contents 1 Area, Surface Area, and Volume Problems... 3 Topic A: Area of Triangles, Quadrilaterals, and Polygons (6.G.A.1)...
More informationResearch Article Accounting for Recent Changes of Gain in Dealing with Ties in Iterative Methods for Circuit Partitioning
Discrete Dynamics in Nature and Society Volume 25, Article ID 625, 8 pages http://dxdoiorg/55/25/625 Research Article Accounting for Recent Changes of Gain in Dealing with Ties in Iterative Methods for
More information