Clock Gating: K.Harshavardhan 19021D6802 M-Tech (Vlsi & Es)
Clock Gating: K.Harshavardhan 19021D6802 M-Tech (Vlsi & Es)
K.Harshavardhan
19021D6802
M-tech(vlsi & es)
CONTENTS
Introduction
Principle of clock gating
Levels of clock gating
Challenges in clock gating
Advantages and Disadvantages of clock gating
INTRODUCTION
Clock-gating is a well-known technique to reduce clock power. Because individual circuit usage varies within
and across applications, not all the circuits are used all the time, giving rise to power reduction opportunity.
By ANDing the clock with a gate-control signal, clock gating essentially disables the clock to a circuit
whenever the circuit is not used, avoiding power dissipation due to unnecessary charging and discharging of
the unused circuits.
Specifically, clock-gating targets the clock power consumed in pipeline latches and dynamic CMOS-logic
circuits
PRINCIPAL OF CLOCK GATING
The clock network in a microprocessor feeds clock to sequential elements like
flip-flops and latches, and to dynamic logic gates, which are used in high-
performance execution units and array address decoders.
At a high level, gating the clock to a latch or a logic gate by ANDing the
clock with a control signal prevents the unnecessary charging/discharging of
the capacitances when the circuit is idle, and saves the circuit’s clock power.
• Fig. 2.1 shows the schematic of a latch element. Cg is the latch’s cumulative gate
capacitance connected to the clock. Because the clock switches every cycle, Cg
charges and discharges every cycle and consumes significant amount of power.
Even if the inputs do not change from one clock to the next, the latch still
consumes clock power.
• In Fig. 2.2, the clock is gated by ANDing it with a control signal, which we refer as
Clk-gate signal. When the latch is not required to switch state, Clk-gate signal is
turned off and the clock is not allowed to charge/discharge Cg, saving clock power.
Because the latches of an operand can be driven by an AND gate, the capacitance of
the AND gate itself is much smaller than the sum of multiple Cg of these latches.
Hence, we can get a net power saving.
LEVELS OF CLOCK GATING
• Based on the granularity, the CG can be categorized into the following
three levels:
• Module-level CG
• Register-level CG
• Cell-level CG
Module-Level CG
• This involves shutting off an entire block or module in the design leading
to large power savings. Typical examples are blocks which are explicitly
used for some specific purpose such as transmitter/receiver, ADC, MP3
player, etc.
• For example, the transmitter can be turned off when the receiver is in use
and vice versa. Normally, this is to be identified by the designer and
incorporated in the register transfer language (RTL) code.
Register-Level Gating
• The clock to a single register or a set of registers is gated in register-level CG.