Branch Prediction Memory Segmentation for Power Mode Data Retention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

When processors enter reduced power modes, data in branch prediction tables is lost, leading to inefficiencies as these tables do not provide significant benefits until they are refilled with valid data, which can take hundreds or thousands of instructions to achieve.

Innovation Solution

A system and method where a control circuit manages branch prediction memories by selecting which memories to power down based on branch prediction data and status values, ensuring that at least one memory with significant data remains powered to retain branch prediction information, and prefetched instructions utilize stored branch prediction entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If all branch prediction memories are powered down during reduced power mode, then power consumption is reduced, but branch prediction data is lost and the processor must execute many instructions to refill the tables

Engineering Contradiction:
Improvepower consumptionVSAvoidprocessor efficiency
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The system divides the branch prediction memory system into multiple separate memories (first branch prediction memory, second branch prediction memory, etc.), each capable of being independently powered down. This segmentation allows selective power management where only some memories are powered down during reduced power mode while others remain active to preserve critical branch prediction data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different memories are assigned different power states based on their content and importance. The control circuit determines which memories to power down and which to keep active, creating local quality differences in power supply. This ensures that while some memories consume less power, critical branch prediction information is retained in memories that remain powered.

Inventive Principle:
Principle #3Local quality

2Loss of information

If branch prediction memories remain powered during reduced power mode, then branch prediction data is preserved, but power consumption increases

Engineering Contradiction:
Improvebranch prediction data retentionVSAvoidpower consumption
Core Design Contradiction:
Loss of informationVSUse of energy by moving object

Solution Approach 1:

The branch prediction memory system is segmented into multiple independent memories that can be selectively powered. This allows the system to preserve branch prediction data in specific memories while powering down others, balancing data retention needs with power consumption constraints during reduced power mode.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically changes the power state parameter of individual memories based on operational needs. During reduced power mode, the control circuit modifies the power supply parameter for specific memories, transitioning them between powered and powered-down states to optimize the balance between data retention and power consumption.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If multiple branch prediction memories are used, then data retention during power mode transitions is improved, but device complexity increases

Engineering Contradiction:
Improvedata retention reliabilityVSAvoidmemory management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses multiple segmented branch prediction memories that can be independently managed. This segmentation improves reliability by distributing data retention across multiple memories, allowing the system to maintain critical data even if some memories are powered down. The control circuit manages this complexity by implementing selection logic based on status values.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each branch prediction memory entry includes a status value that provides feedback about the usefulness of stored data. The control circuit uses this feedback to make intelligent decisions about which memories to power down and which to keep active, managing the complexity of multiple memories through automated feedback-driven control rather than manual management.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11093249B2Methods for partially preserving a branch predictor state
Publication Date: 2021.08.17 APPLE INC
  • US11093249B2 patent drawing
  • US11093249B2 patent drawing
  • US11093249B2 patent drawing

AI summary

In an embodiment, an apparatus includes a plurality of memories configured to store respective data in a plurality of branch prediction entries. Each branch prediction entry corresponds to at least one of a plurality of branch instructions. The apparatus also includes a control circuit configured to store first data associated with a first branch instruction into a corresponding branch prediction entry in at least one memory of the plurality of memories. The control circuit is further configured to select a first memory of the plurality of memories, to disconnect the first memory from a power supply in response to a detection of a first power mode signal, and to cease storing data in the plurality of memories in response to the detection of the first power mode signal.