Information Technology Reference
In-Depth Information
identical on the bus. FVE proved to be quite effective in reducing the data bus switching activity
even with very small tables (128 entries).
4.12.3 Further Reading on Data Encoding
A combination of the FVE and the Bus Expander was further evaluated by Basu et al [ 22 ].
In this scheme, called Power Protocol, the authors carefully design the update policy of the
dictionaries—called Value Caches in [ 22 ]—leading to greater reduction in switching activ-
ity. Finally, two other techniques are worth mentioning. The first is FVMSBLSB [ 215 ]by
Shuresh et al., which is another variant of the Frequent Value approach. The difference is that
FVMSBLSB stores the MSB portions and the LSB portions of values in separate tables. While
encoding MSB/LSB portions alone, the remaining portion of the data are sent un-encoded.
Recently, Shuresh et al. [ 214 ] proposed a scheme called TUBE which encodes data value
segments of varying widths.
4.13 DYNAMIC WORK STEERING
Dynamic work steering refers to the class of techniques in which work is dynamically steered
to different components which are alternative implementations for the same function. These
components offer a range of power/performance characteristics; for example, one component
can be fast and power hungry, while another is slow but power-efficient. One can dynamically
choose on which component to perform a function in order to achieve run-time performance
or power goals.
Viewed in terms of switching activity ( A ) and capacitance ( C ), work steering increases
the total capacitance by accommodating multiple implementations of the same function; but,
at the same time switching activity is highly focused (dynamically) on one of the alternative
implementations. The end result is a highly dynamic modulation of the effective switched
capacitance .
Work steering can be applied to different levels of granularity: from circuits, to complex
microarchitecture units such as the issue logic, or to whole processor cores in a multi-core
architecture. Work steering may help to reduce both dynamic and static power. It is orthogonal
to the types of excess activity discussed in the previous sections. Orthogonal in the sense that
one can derive alternative implementations of the same component, differently optimized for
performance and power with respect to a specific type of excess activity and select among them
dynamically. In this section, two work steering techniques mentioned previously are reviewed,
and a technique at the processor-core level that applies to multi-core architectures is presented.
Circuit level : At the circuit level, Precomputation can be considered a rudimentary form
of work steering [ 11 ]. In this technique, work is steered depending on a simple condition to
two optimized precomputation circuits, one for the specific condition and one for its negation.
Search WWH ::




Custom Search