IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 10, NO. 2, APRIL 2002 135 Energy Scalable System Design Amit Sinha, Alice Wang, and Anantha Chandrakasan Abstract—We introduce the notion of energy-scalable system- design. The principal idea is to maximize computational quality for a given energy constraint at all levels of the system hierarchy. The desirable energy-quality (E–Q) characteristics of systems are dis- cussed. E–Q behavior of algorithms is considered and transforms that significantly improve scalability are analyzed using three dis- tinct categories of commonly used signal-processing algorithms on the StrongARM SA-1100 processor as examples (viz., filtering, fre- quency domain transforms and classification). Scalability hooks in hardware are analyzed using similar examples on the Pentium III processor and a scalable programming methodology is pro- posed. Design techniques for true energy scalable hardware are also demonstrated using filtering as an example. Index Terms—Algorithmic transforms, energy scalable, low power, variable precision. I. INTRODUCTION I N EMBEDDED systems, energy is a precious resource and must be used efficiently. Therefore, it is highly desirable that we structure our algorithms and systems in such a fashion that computational accuracy can be traded off with energy re- quirement. At the heart of such transformations lies the con- cept of incremental refinement [1]. Consider a scenario where an individual is using his laptop for a video telephone applica- tion. Based on the current battery state and overall power-con- sumption model [2] the system should be able to predict its up- time. If the battery life is insufficient, the user might choose to tradeoff some quality/performance and extend the battery life of his laptop. Consider another scenario where a distributed sensor network [3] is being used to monitor seismic activity from a re- mote basestation. Sensor nodes are energy constrained and have a finite lifetime. It would be highly desirable to have energy scal- able algorithms and protocols running on the sensor network. The remote basestation should have the capability to dynami- cally reduce energy consumption (to prolong mission lifetime if uninteresting events have occurred) by altering the throughput and computation accuracy. This type of behavior necessitates system redesign so that every computational step leads us in- crementally closer to the output. Manuscript received December 9, 2000; revised March 13, 2002. This work was supported in part by the Defense Advanced Research Projects Agency (DARPA) and in part by the Air Force Research Laboratory, Air Force Material Command, USAF, under Agreement F30602-00-2-0551. A. Sinha was with the Electrical Engineering and Computer Science De- partment at the Massachusetts Institute of Technology, Cambridge, MA 02139 USA. He is now with Engim, Incorporated, Acton, MA 01720 USA (e-mail: sinha@engim.com). A. Wang and A. Chandrakasan are with the Electrical Engineering and Computer Science Department at the Massachusetts Institute of Tech- nology (MIT), Cambridge, MA 02139 USA (e-mail: aliwang@mtl.mit.edu; anantha@mtl.mit.edu). Publisher Item Identifier S 1063-8210(02)03189-X. Energy–quality (E–Q) tradeoffs have been explored in the context of encryption processors [4]. A large class of systems, as they stand, do not render themselves to such E–Q scaling. With hardware hooks and simple algorithmic modifications, the E–Q behavior of the system can be modified such that if the available computational energy is reduced, the proportional hit in quality is minimal. However, one must ensure that the energy overhead attributed to the improved scalability is insignificant compared to the total energy consumption. It may be possible to do a significant amount of preprocessing such that the E–Q behavior is close to perfect but we might end up with a situation where the overall energy consumption is higher compared to the unscalable system. This defeats the basic idea behind having a scalable system viz. overall energy efficiency. II. ENERGY QUALITY SCALABILITY We now formalize the notion of a desirable E–Q behavior of a system. The E–Q graph of an algorithm is the function , representing some quality metric (e.g., mean-square error, peak signal-to-noise ratio, etc.) as a function of the computational en- ergy. There may exist situations where the notion of a quality metric is unclear. However, in this paper we are dealing pri- marily with signal processing systems where the notion of a quality metric is usually unambiguous. Consider two systems (I and II) that perform the same function. Ideally, from an en- ergy perspective, II would be a more efficient scalable system compared to I if (1) In most practical cases, (1) will not hold over all energy values. There might be a preprocessing overhead as a result of which the maximum energy consumptions might be different for the two cases (i.e., ). Nevertheless, as long as the (1) holds over a significant range of computational energies, overall efficiency is assured. Let us assume that there exists a quality distribution , i.e., from system statistics we are able to conclude that the probability that we would want a quality is . A typical quality distribution is shown in Fig. 1. The average energy consumption per output sample can then be expressed as (2) where is the inverse of . When the quality distribu- tion is unknown, we would like the E–Q behavior to be maxi- mally concave downwards (with respect to the energy axis) (3) 1063-8210/02$17.00 © 2002 IEEE