network flow based simultaneous retiming and slack
play

Network Flow-based Simultaneous Retiming and Slack Budgeting for Low - PowerPoint PPT Presentation

Outline Network Flow-based Simultaneous Retiming and Slack Budgeting for Low Power Design Bei Yu 1 Sheqin Dong 1 Yuchun Ma 1 Tao Lin 1 Yu Wang 1 Song Chen 2 Satoshi GOTO 2 1 Department of Computer Science & Technology Tsinghua University,


  1. Outline Network Flow-based Simultaneous Retiming and Slack Budgeting for Low Power Design Bei Yu 1 Sheqin Dong 1 Yuchun Ma 1 Tao Lin 1 Yu Wang 1 Song Chen 2 Satoshi GOTO 2 1 Department of Computer Science & Technology Tsinghua University, Beijing, China 2 Graduate School of IPS Waseda University, Kitakyushu, Japan Simultaneous Retiming and Slack Budgeting

  2. Outline Outline Introduction 1 Previous Works Problem Formulation Methodology 2 MILP Formulation Remove Redundant Constraint Convex Cost Dual Flow Algorithm Experimental Results 3 Simultaneous Retiming and Slack Budgeting

  3. Introduction Previous Works Methodology Problem Formulation Experimental Results Retiming and Slack Budgeting Timing constraint and Low Power become significant requirement. Retiming: relocate flip-flops (FFs) Slack Budgeting: relax the timing constraints of components T=9 T=9 6,0 6,0 6,0 6,0 b c b c 3,0 3,3 d d a e a e 3,0 3,0 v delay, slack 3,0 3,0 v delay, slack Simultaneous Retiming and Slack Budgeting

  4. Introduction Previous Works Methodology Problem Formulation Experimental Results Previous Works – Retiming : [C.E.Leiserson et al. Algorithmica 1991]: first work [N. Maheshwari et al. TCAD 1998]: flow based Min-area retiming [H. Zhou, ASPDAC 2005]: incremental Min-period retiming [J. Wang & H. Zhou DAC 2008]: incremental Min-period retiming – Slack Budgeting : [R. Nair et al. TCAD 1989]: ZSA, suboptimal heuristic [C. Chen et al. TCAD 2002]: Maximum-Independent-Set, NP-complete [S.Ghiasi et al. ICCAD 2004]: Flow based algorithm Simultaneous Retiming and Slack Budgeting

  5. Introduction Previous Works Methodology Problem Formulation Experimental Results Previous Works (Cont.) – Retiming + Slack Budgeting : [Y. Hu et al. DAC 2006]: dual-Vdd, MILP [S. Liu et al. ASPDAC 2010]: heuristic; MIS based – In previous works : A few works consider simultaneous Retiming and Slack Budgeting MILP method or heuristic method – In our works : Network-Based Algorithm Speedup Simultaneous Retiming and Slack Budgeting

  6. Introduction Previous Works Methodology Problem Formulation Experimental Results Problem Formulation Input : Directed graph G = ( V , E , d , w ) as synchronous sequential circuit. i ∈ V : combinational gate e ij ∈ E : signal passing from gate i to j d i : delay of gate i w ij : number of FF on edge e ij period constraint T power-slack tradeoff for each slack level Output : reallocation represented by r , so minimize power consumption under the period constraint Simultaneous Retiming and Slack Budgeting

  7. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm MILP Formulation � P (¯ min s i ) ( II ) Condition for Φ( G ) ≤ T i ∈ V s.t . ¯ R i − ¯ r i ≥ ¯ s i ∀ i ∈ V ( IIa ) ¯ a i ≥ d i + s i ∀ i ∈ V R i − ¯ r i ≤ T ∀ i ∈ V ( IIb ) ¯ r j − ¯ r i ≥ − T · w ij ∀ ( i , j ) ∈ E ( IIc ) a i ≤ T ∀ i ∈ V 0 ≤ ¯ r i ≤ ¯ R i , ¯ N ff ∀ i ∈ V ( IId ) r i − r j ≤ w ij ∀ ( i , j ) ∈ E s 1 s k s i = { ¯ ¯ i , · · · , ¯ i } ∀ i ∈ V ( IIe ) a j ≥ a i + d i + s i if r i − r j = w ij 0 ≤ ¯ s i ≤ T ∀ i ∈ V ( IIf ) R j − ¯ ¯ R i ≥ t ij ∀ ( i , j ) ∈ E ( IIg ) Suppose R i = r i + a i / T t ij ≥ ¯ s j − T · w ij ∀ ( i , j ) ∈ E ( IIh ) ⇒ a i = T · R i − T · r i . Simultaneous Retiming and Slack Budgeting

  8. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm MILP Formulation (cont.) � P (¯ min s i ) ( II ) Solved by ILP Solver, but i ∈ V unacceptable runtime s.t . ¯ R i − ¯ r i ≥ ¯ s i ∀ i ∈ V ( IIa ) Need more effective method ¯ R i − ¯ r i ≤ T ∀ i ∈ V ( IIb ) r j − ¯ ¯ r i ≥ − T · w ij ∀ ( i , j ) ∈ E ( IIc ) Without two constraints, convex 0 ≤ ¯ r i ≤ ¯ R i , ¯ N ff ∀ i ∈ V ( IId ) cost dual network algorithm [R. K. s 1 s k ¯ s i = { ¯ i , · · · , ¯ i } ∀ i ∈ V ( IIe ) Ahuja et al. 2003] 0 ≤ ¯ s i ≤ T ∀ i ∈ V ( IIf ) Removes constraint ( IIh ), add R j − ¯ ¯ R i ≥ t ij ∀ ( i , j ) ∈ E ( IIg ) penalty function P ( tij ) : t ij ≥ ¯ s j − T · w ij ∀ ( i , j ) ∈ E ( IIh ) Generate new problem ( III ) Simultaneous Retiming and Slack Budgeting

  9. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm MILP Formulation (cont.) � P (¯ min s i ) ( II ) Solved by ILP Solver, but i ∈ V unacceptable runtime s.t . ¯ R i − ¯ r i ≥ ¯ s i ∀ i ∈ V ( IIa ) Need more effective method ¯ R i − ¯ r i ≤ T ∀ i ∈ V ( IIb ) r j − ¯ ¯ r i ≥ − T · w ij ∀ ( i , j ) ∈ E ( IIc ) Without two constraints, convex 0 ≤ ¯ r i ≤ ¯ R i , ¯ N ff ∀ i ∈ V ( IId ) cost dual network algorithm [R. K. s 1 s k ¯ s i = { ¯ i , · · · , ¯ i } ∀ i ∈ V ( IIe ) Ahuja et al. 2003] 0 ≤ ¯ s i ≤ T ∀ i ∈ V ( IIf ) Removes constraint ( IIh ), add R j − ¯ ¯ R i ≥ t ij ∀ ( i , j ) ∈ E ( IIg ) penalty function P ( tij ) : t ij ≥ ¯ s j − T · w ij ∀ ( i , j ) ∈ E ( IIh ) Generate new problem ( III ) Simultaneous Retiming and Slack Budgeting

  10. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm MILP Formulation (cont.) � � P (¯ s i ) + P ( t ij ) ( III ) min � P (¯ min s i ) ( II ) i ∈ V i ∈ V ( i , j ) ∈ E s.t . ¯ R i − ¯ r i ≥ ¯ s i ∀ i ∈ V ( IIa ) s.t . ( IIa ) − ( IIg ) ¯ R i − ¯ r i ≤ T ∀ i ∈ V ( IIb ) t ij ≥ − T · w ij , ∀ ( i , j ) ∈ E ¯ r j − ¯ r i ≥ − T · w ij ∀ ( i , j ) ∈ E ( IIc ) 0 ≤ ¯ r i ≤ ¯ R i , ¯ N ff ∀ i ∈ V ( IId ) s 1 s k s i = { ¯ ¯ i , · · · , ¯ i } ∀ i ∈ V ( IIe ) Given solutions of (III), heuristic 0 ≤ ¯ s i ≤ T ∀ i ∈ V ( IIf ) generate solution of (II): R j − ¯ ¯ R i ≥ t ij ∀ ( i , j ) ∈ E ( IIg ) s j = min ( t ij + T · w ij , ¯ ¯ s j ) , ∀ i ∈ FI ( j ) t ij ≥ ¯ s j − T · w ij ∀ ( i , j ) ∈ E ( IIh ) Simultaneous Retiming and Slack Budgeting

  11. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm Remove Redundant Constraint Denote s ∗ i where P (¯ s i ) is minimum Define Q (¯ s i ) : � P (¯ s ∗ s i ≤ s ∗ ¯ i ) if Q (¯ i s i ) = P (¯ ¯ s i > s ∗ s i ) if i Consider new problem (III’), which replaces ( IIa ) and ( IIb ) by ¯ R i − ¯ r i = ¯ s i � � ( III ′ ) Q (¯ s i ) + P ( t ij ) min � � P (¯ min s i ) + P ( t ij ) ( III ) i ∈ V ( i , j ) ∈ E i ∈ V ( i , j ) ∈ E s.t . ( IIc ) − ( IIg ) s.t . ( IIa ) − ( IIg ) ¯ R i − ¯ r i = ¯ s i ∀ i ∈ V t ij ≥ − T · w ij , ∀ ( i , j ) ∈ E t ij ≥ − T · w ij ∀ ( i , j ) ∈ E Theorem 1 For every optimal solution ( ¯ R , ¯ r , ¯ s ) of problem ( III ), there is an optimal solution ( ¯ R , ¯ r , ˆ s ) of problem ( III ′ ), and the converse also holds. Theorem 2 The constraint ( IIb ) in problem ( III ) can be removed. Simultaneous Retiming and Slack Budgeting

  12. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm Remove Redundant Constraint Denote s ∗ i where P (¯ s i ) is minimum Define Q (¯ s i ) : � P (¯ s ∗ s i ≤ s ∗ ¯ i ) if Q (¯ i s i ) = P (¯ ¯ s i > s ∗ s i ) if i Consider new problem (III’), which replaces ( IIa ) and ( IIb ) by ¯ R i − ¯ r i = ¯ s i � � ( III ′ ) Q (¯ s i ) + P ( t ij ) min � � P (¯ min s i ) + P ( t ij ) ( III ) i ∈ V ( i , j ) ∈ E i ∈ V ( i , j ) ∈ E s.t . ( IIc ) − ( IIg ) s.t . ( IIa ) − ( IIg ) ¯ R i − ¯ r i = ¯ s i ∀ i ∈ V t ij ≥ − T · w ij , ∀ ( i , j ) ∈ E t ij ≥ − T · w ij ∀ ( i , j ) ∈ E Theorem 1 For every optimal solution ( ¯ R , ¯ r , ¯ s ) of problem ( III ), there is an optimal solution ( ¯ R , ¯ r , ˆ s ) of problem ( III ′ ), and the converse also holds. Theorem 2 The constraint ( IIb ) in problem ( III ) can be removed. Simultaneous Retiming and Slack Budgeting

  13. Introduction MILP Formulation Methodology Remove Redundant Constraint Experimental Results Convex Cost Dual Flow Algorithm Primal Network Flow Problem Solve problem ( III ) by Convex Cost Dual Flow a : 1 Step 1: Transformation to Primal Network Flow Problem r i and ¯ Split vertex i into two vertex ¯ R i 3 4 r i , ¯ R i ) ∈ ¯ E 1 , (¯ R i , ¯ R j ) ∈ ¯ r j ) ∈ ¯ (¯ E 2 , (¯ r i , ¯ E 3 2 Further simplify problem as follow: � min P ( s ij ) ( IV ) r1 R1 r4 ( i , j ) ∈ ¯ E ∀ ( i , j ) ∈ ¯ s.t . µ j − µ i ≥ s ij E ( IVa ) r3 R3 R4 0 ≤ µ i ≤ ¯ ∀ i ∈ ¯ N ff V ( IVb ) E 1 E 2 r2 R2 E 3 ∀ ( i , j ) ∈ ¯ l ij ≤ s ij ≤ u ij E ( IVc ) a Refer to [R. K. Ahuja et al. 2003] for detail about Convex Cost Dual Flow. Simultaneous Retiming and Slack Budgeting

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend