integrated retiming and simultaneous vdd vth scaling for
play

Integrated Retiming and Simultaneous Vdd/Vth Scaling for Total - PowerPoint PPT Presentation

Integrated Retiming and Simultaneous Vdd/Vth Scaling for Total Power Minimization Mongkol Ekpanyapong Advisor: Prof. Sung Kyu Lim School of Electrical and Computer Engineering Georgia Institute of Technology Outline Introduction and


  1. Integrated Retiming and Simultaneous Vdd/Vth Scaling for Total Power Minimization Mongkol Ekpanyapong Advisor: Prof. Sung Kyu Lim School of Electrical and Computer Engineering Georgia Institute of Technology

  2. Outline � Introduction and Motivation � Related Work � Methodology � Experimental Results � Conclusions 2 May, 2006

  3. Introduction � Both static and dynamic power are the important issue in deep submicron design � Performance is important issue � The objective of this work is to minimize total power consumption while maintain the target clock period 3 May, 2006

  4. Retiming Algorithm � Linear Programming � Can easily be modified to handle any linear objective � Bellman-Ford Algorithm � Can handle large circuits 4 May, 2006

  5. Power Minimization � Minimize total number of Flip-flop to reduce flip-flop power � Using dual Vdd and Vth to minimize static and dynamic power 5 May, 2006

  6. Outline � Introduction and Motivation � Related Work � Methodology � Experimental Results � Conclusions 6 May, 2006

  7. Retiming and Voltage Scaling � C . E . Leiserson and J . B . Saxe , “Retiming synchronous circuitry , ” Algorithmica 1991 � K . Usami and M . Horowitz , “Clustered Voltage Scaling Technique for Low - Power Design“ , ISLPED 1995 � N . Chabini and W . Wolf , “Reducing Dynamic Power Consumption in Synchronous Sequential Digital Designs Using Retiming and Supply Voltage Scaling , ” TVLSI 2004 7 May, 2006

  8. Outline � Introduction and Motivation � Related Work � Methodology � Experimental Results � Conclusions 8 May, 2006

  9. Power Minimization with Retiming Circuit Description RETIMING Fixed Target Clock Period Voltage Scaling (LP) 9 May, 2006

  10. Retiming Formulation Objective: Minimize the number of flip-flops (FF.) Constraints: � Num. FF. has to be satisfied r(u) ≤ w(e u,v ) + r(v) � Num. FF. on critical paths has to be greater than zero w r (e) w(e) 0 0 1 0 1 0 0 0 SET 1 2 S Q 3 R Q CLR r(v) 0 0 0 r(v) 0 1 0 V is the set of gates and E is the set of edges. v ∈ V and e ∈ E r(v) is the number of FF. moved from fanout of node v to fanin of node v w(e u,v ) is the FF. count on edge u,v, D(u,v) is the maximum delay on path u,v 10 W(u,v) is minimum number of FF. on path u,v May, 2006

  11. Retiming Formulation Objective: Minimize the number of flip-flops (FF.) Constraints: � Num. FF. has to be satisfied r(u) ≤ w(e u,v ) + r(v) � Num. FF. on critical paths has to be greater than zero 0 4 SET S Q R Q CLR SET 1 2 S Q 3 R Q CLR r(v) 0 0 0 r(v) 0 1 0 V is the set of gates and E is the set of edges. v ∈ V and e ∈ E r(v) is the number of FF. moved from fanout of node v to fanin of node v w(e u,v ) is the FF. count on edge u,v, D(u,v) is the maximum delay on path u,v 11 W(u,v) is minimum number of FF. on path u,v May, 2006

  12. Retiming Formulation Objective: Minimize the number of flip-flops (FF.) Constraints: � Num. FF. has to be satisfied r(u) ≤ w(e u,v ) + r(v) � Num. FF. on critical paths has to be greater than zero Only these 2 FF. can move out of u SET SET u S Q v S Q R Q R Q CLR CLR V is the set of gates and E is the set of edges. v ∈ V and e ∈ E r(v) is the number of FF. moved from fanout of node v to fanin of node v w(e u,v ) is the FF. count on edge u,v, D(u,v) is the maximum delay on path u,v 12 W(u,v) is minimum number of FF. on path u,v May, 2006

  13. Retiming Formulation Objective: Minimize the number of flip-flops (FF.) Constraints: � Num. FF. has to be satisfied r(u) ≤ w(e u,v ) + r(v) � Num. FF. on critical paths has to be greater than zero Cycle Time (L) =2 r(1)-r(3) ≤ 0 r(1) ≤ r(3) SET 1 2 S Q 3 D(1,2) = 2 W(1,2) = 0 R Q CLR D(1,3) = 3 W(1,3) = 1 D(2,3) = 2 W(2,3) = 1 V is the set of gates and E is the set of edges. v ∈ V and e ∈ E r(v) is the number of FF. moved from fanout of node v to fanin of node v w(e u,v ) is the FF. count on edge u,v, D(u,v) is the maximum delay on path u,v 13 W(u,v) is minimum number of FF. on path u,v May, 2006

  14. Retiming Formulation Objective: Minimize the number of flip-flops (FF.) Constraints: � Num. FF. has to be satisfied r(u) ≤ w(e u,v ) + r(v) � Num. FF. on critical paths has to be greater than zero Cycle Time (L) =2 r(1)-r(3) ≤ 0 r(1) ≤ r(3) SET 1 2 S Q 3 D(1,2) = 2 W(1,2) = 0 R Q CLR D(1,3) = 3 W(1,3) = 1 D(2,3) = 2 W(2,3) = 1 V is the set of gates and E is the set of edges. v ∈ V and e ∈ E r(v) is the number of FF. moved from fanout of node v to fanin of node v w(e u,v ) is the FF. count on edge u,v, D(u,v) is the maximum delay on path u,v 14 W(u,v) is minimum number of FF. on path u,v May, 2006

  15. Non-critical Gates for Power Minimization SET SET S S Q Q R R Q Q CLR CLR Non-critical gates: What should we do? We can use the voltage scaling for non-critical gates after retiming to minimize total power consumption 15 May, 2006

  16. May, 2006 16 Low-to-High V dd Conversion � Level Converter (LC) requirement LC

  17. Voltage Scaling Formulation Objective: Minimize gate power + LC power Constraints: Each gate has to be assigned to only one voltage state Arrival time + gate delay of each node ≤ target clock period Level converter inserted if low V dd node drives high V dd node 17 May, 2006

  18. Voltage Scaling Formulation v V dd High V th Low (x v,4 =1) v V dd High V th High (x v,3 =1) v v V dd Low V th Low (x v,2 =1) V dd Low V th High (x v,1 =1) v 18 May, 2006

  19. May, 2006 19 s(v) = 1 v Voltage Scaling Formulation d(u) = 1 s(u) = 0 u

  20. May, 2006 20 s(v) = 2 v Voltage Scaling Formulation d(w) = 1 d(u) = 1 s(w) = 1 s(u) = 0 w u

  21. Voltage Scaling Formulation Cycle time (L) = 2 s(v) = 1 s(u) = 0 d(u) = 1 d(v) = 1 u v s(u) + d(u) ≤ 2 s(v) + d(v) ≤ 2 21 May, 2006

  22. May, 2006 22 V H m(e) = 1 LC Voltage Scaling Formulation V L

  23. Convert from ILP to LP 0.5 0.6 0.3 0.6 0.3 0 0.5 0.3 0.0 0.4 0.8 0.8 1 0 0 0.0 0.0 m(e) x u,1 =1 x u,2 =0 V L 0 = low Vdd x u,2 = x(u) x u,1 =0 x u,2 =1 1 = high Vdd V H Assume only two states for illustration purpose 23 May, 2006

  24. Gradient Search Algorithm for LC Relaxation Solve LP m th = 0.5 Compute new m th 0.5 0.6 1 0 0.3 1 0.6 0 0 0.3 0.5 1 0.3 0.0 0.4 0.8 0.8 Solve LP by setting m(e) = 0 if m(e) < mth 1 0 Otherwise m(e) = 1 0 0.0 0.0 Relax LP solution While |Gain| > Threshold Return 24 May, 2006

  25. Gradient Search Algorithm for LC Relaxation Solve LP m th = 0.5 Compute new m th 0.5 0.3 1 0 1 0 0 1 0.3 0.0 0.3 0.4 0.8 0.7 0.7 0.8 Solve LP by setting m(e) = 0 if m(e) < mth 1 0 Otherwise m(e) = 1 0 0.0 0.0 Relax LP solution Voltage Assignment Relaxation While |Gain| > Threshold Return 25 May, 2006

  26. Voltage Assignment Four possible voltage assignment: � High V dd , low V th node Fastest gate, high dynamic power, high leakage power � High V dd , high V th node High dynamic power, low leakage power � Low V dd , low V th node Low dynamic power, high leakage power � Low V dd , high V th node Slowest gate, low dynamic power, low leakage power 26 May, 2006

  27. Possible Supply Voltage Assignment Feasible Solution Infeasible Solution V H V H V H V H LC V L V H V L V H LC V H V L V H V L LC V L V L V L V L LC 27 May, 2006

  28. May, 2006 28 LP Relaxation for Voltage State Assignment high Vdd low Vdd v V H V L LC u

  29. May, 2006 29 LP Relaxation for Voltage State Assignment high Vdd low Vdd 0.7 v V H V L u

  30. May, 2006 30 LP Relaxation for Voltage State Assignment high Vdd low Vdd v V H V L LC u

  31. LP Relaxation for Voltage State Assignment Assigned V dd High to V Slk = 2.2 v v v Dly = 1 Dly = 2.1 high V dd low V th high V dd high V th 31 May, 2006

  32. LP Relaxation for Voltage State Assignment Assigned V dd High to V Slk = 1.5 v v v Dly = 1 Dly = 2.1 high V dd low V th high V dd high V th 32 May, 2006

  33. LP Relaxation for Voltage State Assignment 0.3 0 1 0 1 0 0 0 1 0.3 0.0 0.3 0.7 0.7 0 1 0 0.0 0.0 Assume only two states V L V H 33 May, 2006

  34. Gradient Search Algorithm for LC Relaxation Compute for next m th Solve LP m th = 0.6 m th = 0.5 Compute new m th 0.5 0.3 0.6 1 0.3 0 0.6 1 0 0 0.3 0.5 1 0.3 0.8 0.7 0.0 0.3 0.4 0.7 0.8 Solve LP by setting m(e) = 0 if m(e) < mth 1 0 Otherwise m(e) = 1 0 0.0 0.0 Relax LP solution While |Gain| > Threshold Return 34 May, 2006

  35. May, 2006 35 Post Refinement

  36. Outline � Introduction and Motivation � Related Work � Methodology � Experimental Results � Conclusions 36 May, 2006

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