This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Clock gating" – news ·newspapers ·books ·scholar ·JSTOR(May 2025) (Learn how and when to remove this message) |
Incomputer architecture,clock gating is a popularpower management technique used in manysynchronous circuits for reducing dynamicpower dissipation (a significant source of power dissipation in digital designs), by removing theclock signal when the circuit, or a subpart of it, is idle. Clock gatingsaves power by pruning part of theclock tree distribution, at the cost of adding more logic to a circuit.
Pruning the clock turns off portions of the circuitry so that theflip-flops in them do not switch state, as switching the state consumes power. When not switched, theswitching power consumption is reduced. This technique is particularly effective in systems with significant idle time or predictable periods of inactivity within specific modules.[1]
Digital circuits consume power through multiple mechanisms, typically categorised into dynamic and static components. The equation can describe the average power dissipation in a CMOS circuit:
These components collectively define the total power profile of a digital system, and their optimisation is crucial for low-power design.[1]
These components become increasingly critical in modern integrated circuits, especially with technology scaling, where leakage and short-circuit power can constitute a significant portion of the total power budget.[1]
Clock gating is one of several techniques used to reduce the power consumption of digital circuits. It specifically targets the dynamic power component, Pdynamic, by lowering unnecessary switching activity in clock signals. The following equation can approximate the dynamic power:
Where:
By turning off the clock signal to portions of the circuit when not in use, clock gating reducesα, thus decreasing overall dynamic power consumption. This differs from thepower-gating technique, which cuts the power supply entirely and simultaneously reduces multiple sources of power dissipation.
Clock-gating techniques typically operate by targeting specific clock regions. To apply these techniques, it is often necessary to modify the registers/(flip-flops) in the circuit so that they can be controlled and disconnected from the clock distribution network, effectively isolating blocks ofcombinational logic.

External circuits can control clock and activation signals through a technique known as Enabled Flip-Flops, or they can be generated internally using traditional clock-gating methods.

When the control signal (CNTRL) is set to 1, the clock-gating circuit turns off the clock by holding it at a fixed logic level, either 0 or 1. One typical implementation uses a CMOS pass-transistor controlled by the inverted control signal.
Clock-gating logic can be added to a design in a variety of ways:
A common implementation of clock gating uses a level-sensitive latch (or flip-flop) to prevent glitches on the gated clock. The enable signal is captured only when the clock is in its inactive phase, ensuring that the gating control remains stable during the active clock transition. This avoids short unwanted pulses (glitches) that can cause incorrect switching in sequential elements. Many integrated clock-gating (ICG) cells include this latch internally to provide a glitch-free gated clock.[citation needed]
In general, clock gating applied at a coarser granularity leads to reduced resource overhead and greater power savings.[2]
Any RTL modifications to improve clock gating will result in functional changes to the design (since the registers will now hold different values), which need to be verified.
Sequential clock gating is the process of propagating enable conditions through upstream and downstream sequential elements, allowing additional registers to be clock-gated.[3] This technique extends clock gating beyond individual flip-flops to optimise power savings across larger circuit portions.
Chips designed for battery-powered or ultra-low-power applications—such as mobile phones, wearable devices, andembedded systems—typically simultaneously implement multiple clock gating strategies. Manual clock gating involves software drivers that enable or disable clocks to various idle controllers. In contrast, automatic clock gating uses hardware mechanisms to detect when a clock is unnecessary and dynamically turns it off. These approaches often operate together within the same enable tree. For example, an internal bus or bridge may employ automatic gating, keeping the clock disabled until accessed by theCPU or aDMA engine. In contrast, peripherals on that bus might be permanently gated off if unused in a particular board design.
Clock gating may also be used to reduce area. If many registers have the same enable, clock gating them at a higher point in the clock tree may cost only one integrated clock gate worth of area, but would save a 2:1 multiplexer (the "feedback mux" normally used to implement the enable) worth of area per register that has that enable.