Synthesis techniques for low-power hard real-time systems on variable voltage processors

The energy efficiency of systems-on-a-chip can be much improved if one were to vary the supply voltage dynamically at run time. We describe the synthesis of systems-on-a-chip based on core processors, while treating voltage (and correspondingly the clock frequency) as a variable to be scheduled along with the computation tasks during the static scheduling step. In addition to describing the complete synthesis design flow for these variable voltage systems, we focus on the problem of doing the voltage scheduling while taking into account the inherent limitation on the rates at which the voltage and clock frequency can be changed by the power supply controllers and clock generators. Taking these limits on rate of change into account is crucial, since changing the voltage by even a volt may take time equivalent to 100 s to 10000 s of instructions on modern processors. We present both an exact but impractical formulation of this scheduling problem as a set of nonlinear equations, as well as a heuristic approach based on reduction to an optimally solvable restricted ordered scheduling problem. Using various task mixes drawn from a set of nine real life applications, our results show that we are able to reduce power consumption to within 7% of the lower bound obtained by imposing no limit at the rate of change of voltage and clock frequencies.

[1]  Massoud Pedram,et al.  Power minimization in IC design: principles and applications , 1996, TODE.

[2]  A. Chandrakasan,et al.  An efficient controller for variable supply-voltage low power processing , 1996, 1996 Symposium on VLSI Circuits. Digest of Technical Papers.

[3]  Miodrag Potkonjak,et al.  Power optimization of variable-voltage core-based systems , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Miodrag Potkonjak,et al.  Application-driven synthesis of core-based systems , 1997, ICCAD 1997.

[5]  Mani B. Srivastava,et al.  Predictive system shutdown and other architectural techniques for energy efficient programmable computation , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[6]  Robert W. Brodersen,et al.  A low-voltage CMOS DC-DC converter for a portable battery-operated system , 1994, Proceedings of 1994 Power Electronics Specialist Conference - PESC'94.

[7]  Miodrag Potkonjak,et al.  Power optimization using divide-and-conquer techniques for minimization of the number of operations , 1997, ICCAD.

[8]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[9]  Allen C.-H. Wu,et al.  A predictive system shutdown method for energy saving of event-driven computation , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[10]  Tadahiro Kuroda,et al.  Low power CMOS digital design for multimedia processors , 1999, ICVC '99. 6th International Conference on VLSI and CAD (Cat. No.99EX361).

[11]  Alvin M. Despain,et al.  Cache design trade-offs for power and performance optimization: a case study , 1995, ISLPED '95.

[12]  David S. Johnson,et al.  Computers and In stractability: A Guide to the Theory of NP-Completeness. W. H Freeman, San Fran , 1979 .

[13]  Allen C.-H. Wu,et al.  Scheduling techniques for variable voltage low power designs , 1997, TODE.

[14]  S NielsenLars,et al.  Low-power operation using self-timed circuits and adaptive scaling of the supply voltage , 1994 .

[15]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[16]  Majid Sarrafzadeh,et al.  Variable voltage scheduling , 1995, ISLPED '95.

[17]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[18]  Jan M. Rabaey,et al.  Activity-sensitive architectural power analysis , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[19]  Farid N. Najm,et al.  A survey of power estimation techniques in VLSI circuits , 1994, IEEE Trans. Very Large Scale Integr. Syst..

[20]  Paul D. Franzon,et al.  Energy consumption modeling and optimization for SRAM's , 1995, IEEE J. Solid State Circuits.

[21]  Won Namgoong,et al.  A high-efficiency variable-voltage CMOS dynamic dc-dc switching regulator , 1997, 1997 IEEE International Solids-State Circuits Conference. Digest of Technical Papers.

[22]  Stylianos Perissakis,et al.  The Energy Efficiency Of Iram Architectures , 1997, Conference Proceedings. The 24th Annual International Symposium on Computer Architecture.

[23]  Fred Douglis,et al.  Adaptive Disk Spin-Down Policies for Mobile Computers , 1995, Comput. Syst..

[24]  Sharad Malik,et al.  Power analysis of embedded software: a first step towards software power minimization , 1994, IEEE Trans. Very Large Scale Integr. Syst..

[25]  Charles U. Martel,et al.  Scheduling Periodically Occurring Tasks on Multiple Processors , 1981, Inf. Process. Lett..

[26]  Hal Wasserman,et al.  Comparing algorithm for dynamic speed-setting of a low-power CPU , 1995, MobiCom '95.

[27]  Massoud Pedram,et al.  Energy Minimization Using Multiple Supply Voltages , 1997 .

[28]  Mark C. Johnson,et al.  Datapath scheduling with multiple supply voltages and level converters , 1997, TODE.

[29]  Miodrag Potkonjak,et al.  Synthesis of power efficient systems-on-silicon , 1998, Proceedings of 1998 Asia and South Pacific Design Automation Conference.

[30]  Teresa H. Meng,et al.  A high-efficiency variable-voltage CMOS dynamic dc-dc switching regulator , 1997 .

[31]  Norman P. Jouppi,et al.  CACTI: an enhanced cache access and cycle time model , 1996, IEEE J. Solid State Circuits.

[32]  L. S. Nielsen,et al.  Low-power operation using self-timed circuits and adaptive scaling of the supply voltage , 1994, IEEE Trans. Very Large Scale Integr. Syst..