Latch Free Clock Gating
Latch Free Clock Gating
Latch Free Clock Gating
Clock tree consume more than 50 % of dynamic power. The components of this power are:
1) Power consumed by combinatorial logic whose values are changing on each clock edge
2) Power consumed by flip-flops and
3) The power consumed by the clock buffer tree in the design.
It is good design idea to turn off the clock when it is not needed. Automatic clock gating is
supported by modern EDA tools. They identify the circuits where clock gating can be inserted.
RTL clock gating works by identifying groups of flip-flops which share a common enable
control signal. Traditional methodologies use this enable term to control the select on a
multiplexer connected to the D port of the flip-flop or to control the clock enable pin on a flipflop with clock enable capabilities. RTL clock gating uses this enable signal to control a clock
gating circuit which is connected to the clock ports of all of the flip-flops with the common
enable term. Therefore, if a bank of flip-flops which share a common enable term have RTL
clock gating implemented, the flip-flops will consume zero dynamic power as long as this enable
signal is false.
There are two types of clock gating styles available. They are:
1) Latch-based clock gating
2) Latch-free clock gating.
Specific clock gating cells are required in library to be utilized by the synthesis tools. Availability
of clock gating cells and automatic insertion by the EDA tools makes it simpler method of low
power technique. Advantage of this method is that clock gating does not require modifications to
RTL description.
References
[1] Frank Emnett and Mark Biegel, Power Reduction Through RTL Clock Gating, SNUG, San
Jose, 2000
[2] PrimeTime User Guide