146 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 10, NO. 2, APRIL 2002
Cycle-Accurate Energy Measurement and Characterization
With a Case Study of the ARM7TDMI
Naehyuck Chang, Kwanho Kim, and Hyung Gyu Lee
Abstract—Energy characterization is the basis for high-level energy
reduction. Measurement-based characterization is accurate and indepen-
dent of model availability and is thus suitable for commercial off-the-shelf
(COTS) components, but conventional measurement equipment has
serious limitations in this context. We introduce a new technique for the
energy characterization of a microprocessor, using a cycle-accurate energy
measurement system based on charge transfer which is robust to spiky
noise and is able to collect a range of energy consumption profiles in real
time. It measures the energy variation of the CPU core by changing the
instruction-level energy-sensitive factors such as opcodes (operations),
instruction fetch addresses, register numbers, register values, data fetch
addresses and immediate operand values at each pipeline stage. Using
the ARM7TDMI RISC processor as a case study, we observe that the
energy contributions of most instruction-level energy-sensitive factors
are orthogonal to the operations. We are able to characterize the energy
variation, preserving all the effects of the energy-sensitive factors for
various software methods of energy reduction. We also demonstrate
applications of our measurement and characterization techniques.
Index Terms—Energy characterization, energy measurement, low-power
design, microprocessor.
I. INTRODUCTION
Low energy consumption has emerged as a major performance
metric for digital systems, motivating many low-level contributions
toward cool chips and cool systems. Over the years, designers have
also become interested in high-level and software-level energy reduc-
tion techniques—just as, with motor vehicles, better fuel consumption
is achieved not only by developing efficient designs but also by formu-
lating efficient driving methods. High-level energy-reduction studies
often focus on optimization, assuming that energy characteristics are
fixed. But energy characterization can itself be the basis of high-level
energy-reduction techniques, because optimization policies do not
rely totally on a specific physical design.
Microprocessors consume significantly different amounts of energy
during each clock cycle. In a programming model, the energy variation
is dependent on instruction-level energy-sensitive factors such as
instruction fetch addresses, opcodes (operations), register encoding,
data fetch addresses, immediate operands, and so on. Software
energy reduction optimizes energy consumption by changing the
energy-sensitive factors while preserving the semantics of the original
design. Previous work on energy characterization has focused on
average power analysis, which is useful to estimate total consumption,
but is inadequate for high-level reduction techniques. In fact, it is not
easy to achieve complete energy characterization using conventional
approaches. This paper introduces a new measurement-based energy
characterization for microprocessors to fulfill that requirement.
We present a real-time cycle-accurate energy measurement tech-
nique for digital systems. We characterize the energy variation of
a COTS microprocessor at the instruction level with respect to the
energy-sensitive factors. Unlike previous characterizations, ours does
not average out the energy variation and it is therefore a useful basis
Manuscript received January 12, 2001; revised October 8, 2001. This work
was supported in part by the Brain Korea 21 Project under SNU RIACT research
project contract. An earlier version of this paper was presented at ISLPED 2000.
The authors are with the School of Computer Science and Engineering, Seoul
National University, Korea (e-mail: naehyuck@snu.ac.kr).
Publisher Item Identifier S 1063-8210(02)00469-9.
for high-level energy reduction techniques, including opcode or
register re-encoding, address relocation and instruction rescheduling.
We demonstrate the new method through a case study of the
ARM7TDMI RISC core. This study was made possible by an in-house
measurement tool with a real-time acquisition ability that can perform
a large number of measurements over a short period.
The rest of this paper is organized as follows. A literature survey is
presented and the motivation of this work are described in Section II.
Section III introduces our real-time cycle-accurate energy measure-
ment system, and Section IV presents the results for the ARM7TDMI
core. In Section V we describe energy characterization for high-level
power reduction, and Section VI suggests applications of the charac-
terization. Section VII concludes the paper.
II. RELATED WORK
We may acquire energy consumption profiles by simulation or mea-
surement. Energy simulation is convenient provided that a simulation
model is available, because it does not necessitate a prototype. Simula-
tion is also preferable as energy consumption can vary with bus config-
uration and peripheral devices. Related studies [1]–[4] have described
high-level processor simulators and estimated average power consump-
tion at reasonable complexity. Low-level energy simulation is often
used to back up high-level simulation [5]. Alternatively, a black-box
model may be introduced to when simulation models for peripheral
devices are not available [4]. Recently [6], a power simulator has been
used to give a system-wide view, including a microprocessor and a
memory system; however, for the most part, microprocessor-level sim-
ulators do not reflect real implementation of commercial off-the-shelf
(COTS machines).
We need a working prototype to perform energy measurement. Even
with a prototype, correct measurements are not easily obtainable be-
cause digital systems consume energy in a spiky manner, at frequen-
cies of hundreds of MHz in the power spectrum [7]. Digital multimeters
(DMMs) [8], [9] can only measure average power due to their limited
bandwidth. The use of an oscilloscope overcomes this drawback [10],
but the energy calculation procedure is invariably error-prone.
Measurement-based characterization would be promising if we
could bypass time-consuming conventional techniques, which restrict
the feasible number of experiments and thus make it difficult to
construct a sufficiently detailed sample space for energy characteri-
zation. Admittedly, measurement-based characterization will always
be system-dependent, but we certainly need system-specific behavior
for real reduction practices, and avoiding the need for a model is
attractive.
In spite of the limitations of existing energy estimation methods,
some work has been done on power characterization for high-level
power reduction. Intensive measurement-based characterizations [8],
[9], [5] have been used to determine an instruction base cost and an
inter-instruction cost, and to demonstrate energy reduction in a DSP
application [9]. Conventional equipment requires patient experiment
even to achieve this level of characterization, and the inter-instruction
costs average out the energy consumption variation due to different en-
ergy-sensitive factors. So this scheme does not afford many alternative
plans for reduction, although it is useful for average power estimation.
Another intensive simulation study [5] introduces a limited analysis
of average power variation due to addressing modes and data bus ac-
tivities; and an operand-dependent power analysis has also been intro-
duced [1], which takes into account the power costs of representative
components. This work excludes many significant components and the
results associate different costs with components when processing dif-
ferent instructions, results which are inevitably difficult to confirm.
1063-8210/02$17.00 © 2002 IEEE