Clock Enable Throttling for Memory Power Savings

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer memory systems face increased power consumption due to higher memory densities and clock speeds, necessitating a mechanism to reduce power dissipation without significantly reducing access speed or increasing latency.

Innovation Solution

A memory subsystem with a memory controller that throttles the clock signal to memory modules by using a clock enable (CKE) command to disable or enable the clock signal within specific memory ranks, optimizing power usage during refresh intervals and synchronization processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If memory modules operate at higher clock speeds to meet increasing performance demands, then memory access speed is improved, but power dissipation increases proportionally

Engineering Contradiction:
Improvememory access speedVSAvoidpower dissipation
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic clock gating that adjusts the clock signal state based on memory module activity. When memory modules are idle or in self-refresh mode, the clock signal is gated off to reduce power consumption. When activity is detected, the clock is re-enabled. This dynamic adjustment allows the system to maintain high speeds when needed while reducing power dissipation during idle periods, directly resolving the contradiction between speed and power consumption.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs periodic clock gating synchronized with memory refresh intervals. The clock signal is periodically disabled during self-refresh operations and re-enabled for normal access operations. This periodic action pattern allows the memory system to maintain high performance during active periods while achieving significant power savings during refresh intervals, effectively managing the speed-power tradeoff.

Inventive Principle:
Principle #19Periodic action

2Quantity of substance

If the number of memory modules is increased to achieve higher memory density, then memory capacity is improved, but power consumption increases due to more modules operating

Engineering Contradiction:
Improvememory densityVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent segments the clock distribution system into individually controllable groups or banks of memory modules. Each segment can have its clock signal independently gated based on its activity state. This segmentation allows the system to support high memory density by adding more modules while consuming power only for the segments that are actively being accessed, rather than powering all modules at full speed continuously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different operational states to different segments of the memory system. Active segments receive full-speed clock signals for high-performance operations, while idle segments have their clocks gated off for minimal power consumption. This local quality approach allows the system to achieve high overall memory density while maintaining low average power consumption by optimizing the operational state of each local segment based on its immediate needs.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7523282B1Clock enable throttling for power savings in a memory subsystem
Publication Date: 2009.04.21 ORACLE AMERICAN INC
  • US7523282B1 patent drawing
  • US7523282B1 patent drawing
  • US7523282B1 patent drawing

AI summary

A memory subsystem is disclosed. The memory subsystem includes a memory controller coupled to one or more memory modules. Each memory module comprises a buffer coupled to one or more memory ranks. A clock source is coupled to provide a clock signal to each of the memory modules. The memory controller is configured to convey a clock enable (CKE) command to one of the memory modules, the CKE command corresponding to a given memory rank. In response to the CKE command, a memory module buffer associated with the given memory rank is configured to convey a CKE disable signal to the given memory rank. The given memory rank is configured to disable operation of the clock signal within the given memory rank, responsive to the CKE disable signal.