# © KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth.

## Presentation on theme: "© KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth."— Presentation transcript:

© KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth Choudhuri, Majid Sarrafzadeh 1

© KLMH Lienig EECS 527 Paper Presentation  Outlines  Introduction  Problem formulation  Solution and algorithm Equivalent formulations Optimal algorithm  Extension to other budget policies Weighted budget distribution Bounded budget distribution Min-Max budget distribution  Experimental results  Q & A 2

© KLMH Lienig  Timing budgeting versus Path-based placement  Delay and placement dilemma  Efficiency and performance  Previous solutions  Zero slack algorithm 3 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 4  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget] 2 4 3 6 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [0] [0] [0] [0] [0] [0] [0] [0] O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 5  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [0] [0] [0] [0] [0] [0] [0] [0] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 6  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1][1] [0] <4,0,4><4,0,4> [1][1] <9,0,9><9,0,9> [1][1] [0] [0] [0] [1][1] [0] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 7  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2][2] [1] [1] [0] [0] [0] [1] [0] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 8  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [2][2] [0] [2][2] [1] [0] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 9  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3][3] [0] <7,0,7><7,0,7> [3][3] [1] [0] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 10  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3] [1][1] [3] [1] [4][4] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Zero-Slack Algorithm Example 11  Example: Use the zero-slack algorithm to distribute slack  Format:, [timing budget]  Find the path with the minimum slack  Distribute the slacks and update the timing budgets 3 0 I1I1 I2I2 I3I3 I4I4 O1O1 O2O2 [1] [2] [1] [1] [3] [1] [3] [1] [4][4] 2 4 6 O 1 : O 2 : Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  DAG G(V,E) model the delay for nodes  Goal:  Maximize where b denotes the budget on edge e ij. 12 Problem Formulation  Formulation by linear programming model  (1)  (2)  (3)  d ij is the delay and b ij is the budget  T is the timing constraint, largest delay Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Linear Programming Example 13 Problem Formulation Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig 14 Problem Formulation  Formulation by linear programming model  (1)  (2)  (3)  d ij is the delay and b ij is the budget  T is the timing constraint, largest delay  r ij is defined to be the required timing constraint   Define flow supply: Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Basic idea: Maximize the budgets, transform the problem 15 Solution and Algorithm Dual Problem Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Duality 16 Solution and Algorithm Dual Problem Primal (Maximize)Dual (Minimize) i th constraint ≤i th variable ≥ 0 i th constraint ≥i th variable ≤ 0 i th constraint =i th variable unrestricted j th variable ≥ 0j th constraint ≥ j th variable ≤ 0 j th constraint ≤ j th variable unrestrictedj th constraint = Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Duality example  Constaint  Variable  Variable  Constraint 17 Solution and Algorithm Primal: Max z = 2x 1 +x 2, x 1 +x 2 ≤ 4, x 1 -x 2 ≤ 2, x 1 ≥ 0, x 2 ≥ 0. Dual: Min v = 4y 1 +2y 2, y 1 +y 2 ≥ 2, y 1 -y 2 ≥ 1, x 1 ≥ 0, x 2 ≥ 0. Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results Primal (Maximize)Dual (Minimize) i th constraint ≤i th variable ≥ 0 i th constraint ≥i th variable ≤ 0 i th constraint =i th variable unrestricted j th variable ≥ 0j th constraint ≥ j th variable ≤ 0 j th constraint ≤ j th variable unrestrictedj th constraint =

© KLMH Lienig  Min-cost flow problem 18 Solution and Algorithm Source:http://www.math.kth.se/~sasane/SF1811/L6/L6ENG.pdfhttp://www.math.kth.se/~sasane/SF1811/L6/L6ENG.pdf Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig 19 Solution and Algorithm Source:http://www.math.kth.se/~sasane/SF1811/L6/L6ENG.pdfhttp://www.math.kth.se/~sasane/SF1811/L6/L6ENG.pdf Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results  Min-cost flow problem

© KLMH Lienig  Example 20 Solution and Algorithm Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Algorithm summary 21 Solution and Algorithm Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Weighted budget distribution  Introduce the weight for different net  22 Extension to other budget policies  Solution: define new to transform again Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Bounded budget distribution  Upper bound is applied to the delay of edge  23 Extension to other budget policies  Solution: define backward flow Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Bounded budget distribution  Example:  nodes a and e --- upper bound =3  Rest of nodes –- upper bound = 4 24 Extension to other budget policies Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Min-Max budget distribution  Goal: minimizing the maximum budget minimize the budget skew  Solution: binary search on the budget upper bounds 25 Extension to other budget policies Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Environment  Xilinx synthesis Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Result 27 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig Experimental Results  Result  Area and runtime  Improve Slice 25.8% on average  Improve LUT counts 28.7% on average 28 Introduction Problem Formulation Solution and Algorithm Extension to other budget policies Experimental Results

© KLMH Lienig  Q&A 29

Download ppt "© KLMH Lienig Paper: A Unified Theory of Timing Budget Management Presented by: Hangcheng Lou Original Authors: Soheil Ghiasi, Elaheh Bozorgzadeh, Siddharth."

Similar presentations