Reducing Energy in FPGA Multipliers Through Glitch
Reduction
Nathaniel Rollins and Michael J. Wirthlin,
****@**.***.***, and ********@**.***.***
Department of Electrical and Computer Engineering
Brigham Young University, Provo, UT. 84602
Abstract larger loading than custom circuits. The signal
bu ers, pass transistors and other programmable
switching structures signi cantly increase the capac-
While FPGAs provide exibility for performing high-
itive load of signal nets over dedicated metal wires.
performance DSP functions, they consume a signif-
This loading burden increases both the delay of in-
icant amount of power. For arithmetic circuits, a
terconnect as well as the power. Several studies sug-
large portion of the dynamic power is wasted on un-
gest that the primary contribution in global system
productive signal glitches. Pipelining can be used to
timing is the global interconnect [2]. It has also been
signi cantly reduce the unproductive power wasted
shown that most of the power dissipated by an FPGA
in signal glitches. This paper presents a methodol-
design occurs in the interconnect[3].
ogy for estimating the amount of power consumed
by glitches and applies this methodology to non-
Because of the relatively large capacitive loading
pipelined, pipelined, and digit-serial multipliers. This
of programmable interconnect, the switching activity
glitch estimation is used to evaluate these multipliers
of individual signal wires will have a signi cant con-
using four energy metrics: energy per operation, en-
tribution to the dynamic power of the circuit. Much
ergy delay, energy throughput, and energy density.
of the dynamic switching power can be wasted in un-
Understanding the energy cost of arithmetic opera-
productive circuit glitches . Signal glitching refers
tors can be used to aid the designer or synthesis tool
to the transitory switching activity within a circuit
in the creation of energy e cient datapath circuits.
as logic values propagate through multiple levels of
combinational logic. While glitching is not unique to
FPGAs, the relatively high capacitive loading of pro-
1 Introduction grammable interconnect places a much higher power
cost to signal glitching for FPGAs. Previous studies
have shown that power dissipation caused by glitch-
The exibility, reprogrammability, and high per-
ing can makeup a signi cant amount of total dissi-
formance of eld programmable gate arrays (FP-
pated power[4, 5].
GAs) make them an attractive architecture choice
for many digital signal processing (DSP) applica-
An important technique for reducing FPGA power
tions. FPGA designs however, consume more power
consumption is to reduce the amount of signal glitch-
than application-speci c integrated circuits (ASICs)
ing within the circuit. Pipelining is one technique
[1] which makes them less attractive for wireless and
for reducing signal glitches. Previous studies have
handheld DSP applications. Consequently, energy
shown that pipelining can be used to reduce power
consumption is becoming a critical design parameter
by 90% [6]. A pipelined design has less logic be-
for high-performance signal processing applications.
tween registers and therefore is less prone to glitch-
Designers must increasingly consider the impact of
ing. Pipelining an FPGA design can come at lit-
power on FPGA signal processing systems.
tle or no cost since ip- ops are included in every
The programmable nature of FPGA interconnect FPGA logic block and often go unused. Digit serial
results in an interconnect structure with signi cantly techniques, a form of pipelining, can also be used to
reduce signal glitching in arithmetic circuits [7]. signal transitions on interconnect lines caused by
unequal logic or interconnect delays. For example
This paper will describe a methodology for es-
consider the signal activity of an N-bit ripple carry
timating the power associated with glitches within
adder. When new inputs arrive at the adder, all N-
FPGA datapath circuits. This paper will quantify
bit sums are computed simultaneously but the carry
the dynamic glitch power, energy per operation, en-
bits must ripple from the least signi cant bit up to
ergy delay, energy throughput, and energy density of
the most signi cant bit. The most signi cant bit of
each multiplier used in the study. This methodology
the adder could switch N times due to this rippling.
will be applied to a wide variety of multiplier circuits
Only the nal transition can be called a productive
including non-pipelined multipliers, pipelined multi-
transition and so any other transitions are called
pliers (with various pipelining levels), and digit-serial
glitches. The carry-out of the 32nd bit of a 32-bit
multipliers. The methodology presented and results
carry chain will have on average 2x more useless tran-
from the study can be used by designers and high-
sitions (glitches) than useful transitions per cycle and
level synthesis tools to properly select arithmetic op-
the sum output will have on average 1.5x more use-
erators based on energy consumption.
less transitions per cycle[9]. Fast carry chains in FP-
GAs may signi cantly reduce the glitching caused by
This paper will begin by describing the impor-
such an example, however FPGA designs are laden
tance of dynamic transient power in FPGA circuits.
with glitches caused unequal line lengths leading to
A methodology will be described for carefully es-
combinational logic block (CLB) logic.
timating the static, dynamic, and glitch dynamic
power of datapath circuits. This methodology will Estimating the glitches that occur in FPGA de-
be applied to a combinational multiplier to identify signs is important in order to understand how much
the unproductive glitching power component. Next, power is consumed by glitching. A static simulator
the energy measures used to evaluate power will be cannot estimate dynamic signal activity and thus is
introduced. These will include energy per operation, not su cient for accurate glitching power analysis of
energy delay, and energy density. The paper will ap- an FPGA design. A previous study demonstrated
ply this methodology to a number of non-pipelined how static simulations of FPGA circuits can under
multiplier circuits and highlight the signi cant con- estimate the circuit signal activity. In that study,
tribution of glitches in circuit power. The paper will the dynamic power estimation was 24% less than the
continue by applying this methodology on pipelined actual power consumption [4]. In designs with larger
circuits and digit-serial circuits. These circuit types amounts of glitching (such as a multiplier) the accu-
will be compared by evaluating the operation en- racy of such a static power model will be even worse.
ergy of each implementation style.
An accurate power estimation should take sig-
nal glitching into account. To produce an e ective
power estimation, a back-annotated timing model is
2 Dynamic Transient Power required in order to quantify net delays. A timing
simulation which uses this back annotated timing
Dynamic power makes up a large portion of the to- model will then be able to simulate glitches so that
tal amount of power consumed by an FPGA de- the amount of glitching can be determined. A power
sign. FPGA interconnect is largely responsible for analysis based on this timing simulation will produce
dynamic power consumption. It has been shown that a more accurate power consumption estimation.
the interconnect of an FPGA accounts for the major-
ModelSim together with Xilinx s ISE tools can be
ity of the area on an FPGA chip and also accounts
used e ectively to model dynamic transient signal ac-
for the majority of the power dissipated by FPGA
tivity and produce an accurate power consumption
designs[8]. The amount of power consumed by the
estimation. The Xilinx tools can be used to gener-
interconnect and clock tree can account for up to
ate a back-annotated timing le which can be used
86% of total dissipated power[8]. Unnecessary and
by ModelSim to e ectively model glitching through a
unproductive use of FPGA interconnect will there-
timing simulation. The amount of glitching reported
fore be very costly in terms of power.
by ModelSim depends on the granularity chosen for
Unproductive interconnect activity is usually the simulations. This study nds that a resolution of
caused by glitching. Glitching refers to spurious 100ps is su cient. ModelSim simulations can be cap-
2
tured and recorded in a le which reports the switch- delays and varied net lengths which lead to a large
ing activity of every net in a design. The switching number of glitches[8, 11]. The multiplier in Figure
activity of each net can be analyzed and tabulated 1 shows that pipelining can be easily implemented
into two categories: unproductive glitching transi- by adding registers between multiplier stages. Addi-
tions and productive signal transitions. Power esti- tionally, a digit-serial multiplier based on the repre-
mation tools such as XPower[10] can then use this sentation in Figure 1 can be easily created[7, 12]. A
report to estimate the power consumption of the de- pipelined multiplier and a digit-serial multiplier are
sign. used in later sections to show how glitches can be
reduced in order to lower the operation energy.
The overall power consumption of a single circuit
component can be broken into three categories: nor- 4x4 Multiplier X
malized static power, dynamic glitching power and 4
Y0
the remaining dynamic power. Mult Stage
5
Y1
Mult Stage
Static Power The static power of an individual cir-
cuit module is obtained by dividing the total 5
Y2
static power of the device by the relative size of Mult Stage
the circuit (i.e. # Circuit LUTs / Total LUTs). 5
Y3
For circuits such as multipliers with large signal Mult Stage
activity, this component is relatively small.
Dynamic Glitching Power The glitching power
P7 P6 P5 P4 P3 P2 P1 P0
is obtained by counting the temporary signal
glitches in the timing simulation. The percent-
Figure 1: 4x4 multiplier.
age of signal glitches to total glitches is used
to divide the dynamic power between glitching
power and useful dynamic power. For a non-pipelined multiplier the amount of
Useful Dynamic Power The useful dynamic glitching increases super-linearly as the size of the
power is obtained by tabulating the useful multiplier grows. To show this behaviour power esti-
transitions within the module. If the nal value mates are performed on 4x4, 8x8, 16x16, and 32x32
of a signal is di erent from the beginning of a multipliers. Random inputs are presented at the in-
clock cycle to the end, then a useful transition puts for all simulations. The pie charts in Figure 2
is the last transition that occurs, and all others show the breakdown of the total power into its con-
are glitches. Otherwise, all transitions during stituent parts of static power, dynamic glitch power
the clock cycle were glitches. and remaining dynamic power. For all four multiplier
sizes the amount of static power used by the design
This study will show that the dynamic glitching makes up less than 1% of the total power. Note how
power and the remaining dynamic power make up the percentage of dynamic glitch power increases as
the majority of the total power for arithmetic cir- the bitwidth of the multiplier grows. In the case of
cuits such as multipliers. Reducing one or both of the 4x4 multiplier glitching accounts for about 12%
these parts is the key to reducing overall power con- of the total power. As the multiplier grows to a 32x32
sumption. multiplier, the total power is dominated by glitching
which accounts for 76% of the total power.
3 Multiplier Dynamic Glitch
4 Reducing Glitch Power
Power
Through Pipelining
This study uses multiplier designs to demonstrate the
e ects of glitching on total power consumption and Pipelining a design is an intuitive way to reduce
on operation energy. A multiplier is a good design glitching. A pipelined circuit has less glitching due to
to demonstrate this due to it s large amount of net the reduced amount of logic between registers. With
3
4-bit 8-bit 16-bit 32-bit
12.5% 0.2% 0.2% 0.1% 0.0%
24.1%
31.7% STATIC POWER
46.6% DYNAMIC POWER
53.2%
DYNAMIC GLITCH
68.2% POWER
75.9%
87.3%
Figure 2: Breakdown of power constituents for a multiplier of various bitwidths.
less logic between registers, the amount of intercon- Glitching as a Percentage of Total Transitions
nect between registers is also reduced. Pipelining
100
also causes long routing interconnect to be broken 90
up by registers resulting in a smaller range of logic 80
70
and interconnect delays. Consequently less glitch- 4-bit
60
ing occurs. In many cases pipelining can be imple- 8-bit
50
16-bit
mented with little additional cost since often many 40
32-bit
30
of the ip ops within the design s CLBs go unused. 20
When pipelining can be used to reduce glitching, the 10
0
amount of power consumed by a design is also re-
0 1 2 4 8 16 32
duced. Number of Pipeline Stages
Implementing pipelining on the multiplier design
previously presented shows how fewer glitches re- Figure 3: The amount of glitching as a percentage
duces overall power consumption and operation en- of total design transitions for multipliers of various
ergy. Pipeline stages are strategically inserted in the widths and varying amounts of pipelining.
multipliers of di erent bitwidths (4x4, 8x8, 16x16,
and 32x32). For each multiplier, pipelining is grad-
ually introduced until the multiplier is completely
dicates that as pipelining begins to be applied to the
pipelined.
multiplier there is a large initial pay-o in reduc-
Figure 3 shows how glitching is reduced as pipeline tion of power due to glitching. After a certain point
stages are inserted. The graph reports the number there is less power savings to be had by increasing
of glitches as a percentage of the total signal tran- the amount of pipelining.
sitions for each multiplier. The glitching percentage
drops with the amount of pipelining introduced. The
5 Reducing Glitch Power
almost linear quality of the graph indicates that the
advantages gained from pipelining pay o right up
Through Digit-Serial Com-
until the multiplier is fully pipelined.
putation
As the amount of glitching goes down the amount
of power consumed due to glitching is also reduced.
Figure 4 shows how the dynamic glitching power low- Pipelining the stages of a multiplier has proven to
ers as the amount of pipelining increases. This log- be an e ective way of reducing glitching (see Fig-
arithmic graph agrees with the intuition that as the ure 3). The amount of pipelining available in the
amount of glitching goes down (see Figure 3) the multiplier shown in Figure 1 is limited by number
amount of power consumption due to glitching also of multiplier stages. In other words an NxN multi-
goes down. The logarithmic quality of the graph in- plier can have a maximum of N pipeline stages. The
4
Total Energy
Dynamic Glitching Power as a Percentage of Total Power
1000
80
70
60 4-bit
100
4-bit
50 8-bit
8-bit
(nJ)
16-bit
40
16-bit 32-bit
30 10
32-bit bit-serial
20
10
0 1
0 1 2 4 *-**-**-*-*-*-*-*-** 32
Number of Pipeline Stages
Number of Pipeline Stages
Figure 5: Total energy consumption (in nJ/cycle) of
Figure 4: The amount of dynamic glitching power as
a multiplier of di erent widths and various amounts
a percentage of total power for multipliers of various
of pipelining compared to the total power consump-
widths and a varying amount of pipelining.
tion of a bit-serial multiplier with operands of di er-
ent widths.
graph in Figure 3 suggests that glitching could be fur-
ther reduced if additional pipelining was available.
Additional pipelining is available in a digit-serial tiplier based on the design of Figure 1 is one product
multiplier where pipelining is applied at a smaller per cycle, the throughput of a bit-serial multiplier
granularity[12]. A bit-serial multiplier is pipelined at is one product per N*2 cycles. New operands are
the bit level. It can reduce the amount of glitching to introduced to a bit-serial multiplier every N*2 cy-
less than 1% of total signal transitions (for operands cles. Since the throughput of a design directly a ects
of any width). When compared to the percentages operation energy, even though a bit-serial multiplier
shown in Figure 4 for the pipelined multiplier, the consumes less overall power it may have a larger op-
less than 1% glitching achieved by the bit-serial mul- eration energy than a pipelined multiplier.
tiplier is very impressive. With almost zero glitches,
the amount of power consumed by glitching in a bit-
serial multiplier approaches zero. This means that
at least 98% of the consumed power is due to useful
6 Operation Energy
dynamic power.
Figure 5 compares the overall energy consumption
Most studies quantifying the power consumption of
of the pipelined multipliers with that of the bit-serial
FPGA circuits report on the average power of the
multiplier. The total amount of energy consumed by
overall circuit. For high-throughput arithmetic cir-
the bit-serial multiplier is almost independent of the
cuits, however, the primary concern is the amount of
bitwidth of its operands. For this reason, the total
energy required to perform a speci c arithmetic op-
energy consumption of the bit-serial multiplier for
eration. Understanding the energy consumption of
any width is shown as a single line. The graph shows
individual datapath operators will allow the designer
that a bit-serial multiplier with 32-bit operands con-
or synthesis tool to choose operators that meet a spe-
sumes the same amount of total power as a fully
ci c throughput constraint while minimizing energy
pipelined 4x4 multiplier or 6x less overall power than
consumption.
a fully pipelined 32x32 multiplier.
With such an extreme amount of pipelining the This study will use the glitch estimation technique
minimum clock period of the bit-serial multiplier is presented in the previous section to estimate the
reduced allowing for a faster clock rate. Unfortu- amount of energy consumed by a number of multi-
nately however, the pipelining in a bit-serial unit not plier operators. Four energy parameters will be used:
only increases the latency but also the throughput of energy per operation, energy delay, energy through-
the design. Whereas the throughput of an NxN mul- put, and energy density.
5
6.1 Energy per Operation operation is Eop = P tclk n where n is the number
of clock cycles required to perform the operation.
Energy per operation quanti es the amount of energy
Pipelined operators overlap the computation of
required to complete a single operation of a speci c
several discrete operations in a single clock cycle.
circuit operator. This measure, reported as nJ, is
The energy consumed by a pipelined operator is
more useful than an average power measure when
shared among the various instances of the operator
comparing arithmetic circuits with di erent imple-
in the pipeline. Thus for pipelined operators, rather
mentation approaches. Speci cally, this measure al-
than considering the number of cycles required to
lows us to compare the energy e ciency of multi-
perform the operation (n), the interval between suc-
cycle operators with single-cycle operators.
cessive initiations of the pipeline operation is con-
sidered . The energy for a single computation is
Circuit energy can be computed by integrating the
computed as Eop = P tclk . For = 1 (which is
circuit power consumption over time (E = P dt).
the case for the pipelined multipliers), the operator
Assuming constant power consumption, the energy
is fully pipelined (i.e. a new operation can be initi-
can be estimated by multiplying the average power
ated every clock cycle) and the energy per operation
of the circuit operator by the amount of time to
is Eop = P tclk .
complete a single operation. For single-cycle oper-
ators, the energy per operation is simply the aver-
The bit-serial multiplier is an example of a circuit
age power of the circuit times the clock period, or
with multi-cycle operation. The bit-serial multiplier
Ecycle = P tclk .
does not have a = 1 like the pipelined multipliers,
but has = N 2; where N is the bitwidth of the
The pipelined multiplier is an example of a circuit
bit-serial multiplier operands. Thus, despite its much
with a single-cycle operation. The energy per opera-
lower overall power consumption (Figure 5) in gen-
tion for the pipelined multipliers is shown in Figure 6.
eral the bit-serial multiplier has a large energy per
Energy per operation is a ected by glitching power.
operation.
Just as the graph of power consumption in Figure 4
drops logarithmically, Figure 6 shows that energy per
operation also drops logarithmically. The graph also Energy per Operation
shows that as the width of the multiplier increases, 16-bit 32-bit
16-bit (bit-serial) 32-bit (bit-serial)
energy per operation grows exponentially. 1000
Energy per Operation
100
(nJ)
1000
10
100
4-bit
(nJ)
1
8-bit
10 0 1 2 4 8 16 32
16-bit
Number of Pipeline Stages
32-bit
1
0 1 2 4 8 16 32
Figure 7: Energy per operation (in nJ) of a multiplier
Number of Pipeline Stages
of di erent widths and various amounts of pipelining
compared to the energy delay of a bit-serial multiplier
with operands of di erent widths.
Figure 6: The energy per operation (in nJ) for a
multiplier of di erent widths and various amounts of
The energy per operation of the bit-serial multi-
pipelining.
plier is compared to the pipelined multipliers in Fig-
ure 7 (16-bit and 32-bit operands only). The x-axis of
The energy per operation of multi-cycle circuit op- the graph is irrelevant to the bit-serial plots since the
erators must take into consideration the number of bit-serial multiplier cannot be pipelined any further.
clock cycles required to perform the operation. For For this reason the bit-serial energy per operation
a non-pipelined multi-cycle operator, the energy per plots show up as horizontal lines. The graph shows
6
that the energy per operation of the bit-serial multi- Energy Delay
plier is always greater than the pipelined multiplier 100000
except for one case of the 32x32 pipelined multiplier.
This one case occurs when the 32x32 multiplier is 10000
non-pipelined. Having to take into consideration 4-bit
1000
(nJ ns)
8-bit
causes the large energy per operation for the bit- 16-bit
serial multiplier. For 32-bit operands, the bit-serial 100
32-bit
multiplier requires = 64. Notice the similarity of 10
the graphs in Figure 5 and Figure 7. The value of
1
the bit-serial line in Figure 5 (in nJ) is multiplied 0 1 2 4 8 16 32
by 32 in Figure 5 for the 16-bit operand bit-serial Number of Pipeline Stages
multiplier and by 64 for the 32-bit operand bit-serial
multiplier. In general the energy per operation of
a bit-serial multiplier is lower than the energy per Figure 8: Energy delay (in nJ ns) for a multiplier of
operation of a pipelined multiplier. di erent widths and various amounts of pipelining.
6.2 Energy Delay
serial multiplier consumes almost no energy due to
Energy delay is a related measure that combines the
glitching, but relative to the pipelined multipliers re-
energy e ciency and speed of an operator into a sin-
quires a large number of cycles to complete an op-
gle parameter [13]. This measure is frequently used
eration. The graphs in Figure 9 compares the en-
to balance the trade-o between reducing energy and
ergy density of the bit-serial multiplier with 16-bit
increasing circuit speed. The energy delay of a circuit
and 32-bit operands (where n = 32 and n = 64 re-
operator is computed as Edelay = Ecycle, where
spectively) with the pipelined multipliers (where n =
is the latency of a single computation of the operator.
pipeline depth). Due to the large amount of glitching
The latency of the operation is = tmin n where n
in the 32-bit pipelined multiplier, the bit-serial mul-
is the number of clock cycles required to complete a
tiplier has a lower energy delay. As the size of the
single operation and tmin is the minimum clock time
pipelined multiplier goes down, the energy delay of
period of the circuit.
the pipelined multipliers goes lower than the energy
delay of the bit-serial multiplier.
The minimum clock time period of a circuit de-
creases as the amount of pipelining increases. This
smaller clock period provides greater throughput
for designs with single-cycle operations such as the Energy Delay
pipelined multipliers. However, as we increase the 16-bit 32-bit 16-bit (bit-serial) 32-bit (bit-serial)
amount of pipelining the latency increases (n in-
100000
creases), potentially increasing the energy delay.
Thus, as pipelining is increased the energy delay 10000
could increase due to an increased latency, but the 1000
(nJ ns)
energy delay could also be reduced due the the re- 100
duced amount of glitching.
10
Figure 8 shows how an increased amount of 1
pipelining could either decrease or increase energy 0 1 2 4 8 16 32
delay. In designs which have a large percentage of Number of Pipeline Stages
glitching (see Figure 2) such as the 32-bit multiplier,
increasing the amount of pipelining decreases the en-
Figure 9: Energy delay (in nJ ns) of a multiplier of
ergy delay. In designs with less glitching, energy de-
di erent widths and various amounts of pipelining
lay rises as pipelining is increased.
compared to the energy delay of a bit-serial multiplier
The trade-o of larger latency for less glitching
with operands of di erent widths.
is accented with the bit-serial multiplier. The bit-
7
6.3 Energy Throughput Energy Throughput
100000
The energy throughput parameter is similar to en-
ergy delay in that it combines energy e ciency 10000
and circuit speed into a single parameter. Energy 4-bit
1000
(nJ ns)
8-bit
throughput di ers from energy delay in that it does 16-bit
100
not take into account the number of clock cycles 32-bit
needed to complete a single operation (n), but rather 10
it considers the number of clock cycles between suc- 1
cessive operation initiations . In most cases only 0 1 2 4 8 16 32
one or the other is used. Energy throughput is cal- Number of Pipeline Stages
culated as Ethput = Ecycle tmin, where tmin is the
minimum clock time period of the circuit and is the
interval between successive initiations of the pipeline Figure 10: Energy throughput (in nJ ns) for a mul-
operation. tiplier of di erent widths and various amounts of
pipelining.
Sometimes it is more useful to consider through-
put energy rather than energy delay. In some designs
a pipelined operation is used successively in such a delay of the bit-serial multiplier with the pipelined
way that a new operation can be initiated on each multipliers (16x16 and 32x32 only). It shows that
clock cycle ( = 1). In these cases, energy through- in most cases the energy throughput of the bit-serial
put might be a more desirable parameter than energy multiplier is larger than the energy throughput of the
delay. Energy delay is more useful for designs which pipelined multipliers.
require an operation to complete before a new one
can be initiated ( = pipedepth). Energy Throughput
Where increasing pipeline depth raises energy de- 16-bit 32-bit
16-bit (bit-serial) 32-bit (bit-serial)
lay (due to an increased latency), it lowers energy 100000
throughput. Pipelining bene ts energy throughput 10000
in two ways: it reduces glitches which lowers over-
all energy consumption, and it reduces the minimum 1000
(nJ ns)
clock period - providing a greater throughput. Fig- 100
ure 10 shows how pipelining greatly bene ts energy 10
throughput. Energy throughput (in nJ ns) is dis-
1
played on a logarithmic scale therefore over a range 0 1 2 4 8 16 32
of di erent pipeline depths it appears linear. The Number of Pipeline Stages
graph shows how critical the rst stages of pipelin-
ing are. Implementing only a single pipeline stage in
the 32x32 multiplier reduces the energy throughput Figure 11: Energy throughput (in nJ ns) of a mul-
by an order of magnitude. tiplier of di erent widths and various amounts of
pipelining compared to the energy delay of a bit-
Energy throughput for the bit-serial multiplier is
serial multiplier with operands of di erent widths.
the same as energy density since n = = N 2 where
N is the size of the bit-serial multiplier operands.
Despite its low power consumption (see Figure 5)
6.4 Energy Density
the bit-serial multiplier tends to have a large energy
throughput and energy delay. The bit-serial multi-
plier bene ts from having almost no glitching and The nal energy parameter used in this study is en-
a smaller clock period than the pipelined multipli- ergy density, Edensity . This parameter normalizes
ers. However, it su ers from having a large value. the amount of energy required to perform a single
In almost every case, this large value outweighs operation to the number of logic resources used by
the advantages of a low minimum clock period and the circuit. This parameter can be calculated as
minimized glitching. Figure 11 compares the energy Edensity = Ecycle /A, where A is the area of the
8
circuit. It is important to note that the amount of ergy delay is often lower than the energy delay of
dynamic energy consumed by a circuit module is not the pipelined multipliers. Whereas the area of the
necessarily linearly related to the size of the circuit. pipelined multipliers has no direct correlation with
As described earlier, the primary contributer to dy- its energy density, the energy density of the bit-
namic power is signal glitches. Since circuit size af- serial multiplier is inversely proportional to its area.
fects energy density, large circuits that reduce glitch- The bit-serial multiplier with 4-bit operands has the
ing through pipelining may have a lower energy den- smallest area and the highest energy density. Con-
sity than smaller pipelined circuits. versely, the bit-serial multiplier with 32-bit operands
has the largest area and the smallest energy density.
Figure 12 shows the energy density for the
pipelined multipliers. From the graphs in this g- Energy Density
ure it may appear that energy density is not di- 16-bit 32-bit
rectly related to circuit size, but multiplier size does 16-bit (bit-serial) 32-bit (bit-serial)
1000
impact energy density through average net activity
rate. The 4x4 multiplier has the smallest area but
the largest energy density. The 32-bit multiplier has 100
(pJ/LUT)
very high energy density when it is non-pipelined,
however as pipelining is introduced the energy den- 10
sity drops until it reports the lowest energy density.
1
The energy trends shown in Figure 12 are the re- 0 1 2 4 8 16 32
sult of glitching and average net activity rate. As Number of Pipeline Cycles
expected, glitching is reduced as pipelining is intro-
duced, lowering the overall energy consumption. The
32-bit multiplier demonstrates this trend. However, Figure 13: Energy density (in pJ/LUT) of a mul-
the size of the multiplier also a ects the energy den- tiplier of di erent widths and various amounts of
sity. The nets of a smaller multiplier have a higher pipelining compared to the energy delay of a bit-
average activity rate than a larger multiplier, result- serial multiplier with operands of di erent widths.
ing in larger energy densities for smaller multipliers.
Energy Density
7 Conclusion
1000
This paper presents a methodology for estimating
the glitches of FPGA circuits and uses this method-
100 4-bit
(pJ/LUT)
ology to determine the amount of power wasted in
8-bit
16-bit
glitching. This paper shows that the majority of
32-bit
10
dynamic power in non-pipelined multipliers is con-
sumed by glitches. The glitch power can be reduced
by pipelining the circuit. Results in the paper show
1
0 1 2 4 8 16 32
an exponential decrease in glitch power by increasing
Number of Pipeline Stages
the pipelining depth.
Several energy related measures were introduced
and used to provide better tools for comparing
Figure 12: Energy density (in pJ/LUT) for a mul-
the energy requirements of di erent implementa-
tiplier of di erent widths and various amounts of
tion approaches. Single cycle and multi-cycle cir-
pipelining.
cuit implementations can be compared by estimat-
The graph in Figure 13 compares the energy den- ing the energy per operation rather than the aver-
sity of the bit-serial multiplier with that of the age power consumption. This paper demonstrates
pipelined multiplier (16x16 and 32x32 only). The that while multi-cycle bit-serial operators have signif-
graphs in this gure show that despite being a cir- icantly lower average power, the energy per operation
cuit with a multi-cycle operation, the bit-serial en- is higher than deeply pipelined parallel approaches.
9
Energy delay, energy throughput and energy den- Design of Intergerated Circuits and Systems,
sity were also used to compare the multiplier im- 18(8):1114 1131, August 1999.
plementation approaches. Energy delay is used to
[6] Steven J.E. Wilton, Su-Shin Ang, and Wayne
balance the trade-o between energy reduction and
Luk. The impact of pipelining on energy per
operator latency. Increasing the pipelining depth ex-
operation in eld-programmable gate arrays.
ponentially reduces glitch power, but also increases
In Field-Programmable Logic and Applications.
latency. The amount of pipelining which produces
Proceedings of the 13th International Workshop,
the best trade-o depends on the bitwidth of the
FPL 2004, Lecture Notes in Computer Science,
multiplier. In general, as the bitwidth increases, the
LNCS 3203, pages 719 728. Springer-Verlag,
amount of pipelining producing the lowest energy de-
August 2004.
lay also increases.
[7] Yun-Nan Chang, Janardhan H. Satyanarayana,
The metrics and estimates generated in this paper
and Keshab K. Parhi. Systematic design of
will be used as part of a high-level datapath synthesis
high-speed and low-power digit-serial multipli-
tool. This tool will use energy estimates of the var-
ers. 45(12):1585 1596, December 1998.
ious multiplier implementation approaches to select
the proper multiplication approach. High-power low- [8] Eric Kusse and Jan Rabaey. Low-energy embed-
pipelined circuits will be selected for datapath cir- ded FPGA structures. In International Sym-
cuits with tight latency constraints while low-power, posium on Low Power Electronics and Design
highly pipelined circuits will be selected for latency 1998, pages 155 160, August 1998.
tolerant datapath circuits.
[9] Jeroen Leijten, Jef van Meerbergen, and Jochen
Jess. Analysis and reduction of glitches in
synchronous networks. In European Design
References