Tagged Geometric Length Branch Predictor Storage Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems face inefficiencies due to the complexity and resource-intensive nature of branch prediction mechanisms, which require generating multiple branch predictions in parallel, leading to increased size, cost, power consumption, and complexity.

Innovation Solution

A branch prediction apparatus utilizing tag generation circuitry to create common query tag values for blocks of instructions read in parallel, coupled with prediction storage circuitry that includes multiple prediction storage lines with shared tag values, branch predictions, and validity indicators, allowing for efficient storage and prediction of branch outcomes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple branch predictions are generated in parallel for blocks of instructions, then prediction accuracy and processing efficiency are improved, but the size, cost, power consumption, and complexity of the branch prediction mechanism increase

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidbranch prediction mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the tag storage functionality into a unified structure where a single tag generation unit serves multiple prediction storage lines. Multiple branch predictions share common tag values and validity indicators, consolidating what would otherwise be separate prediction mechanisms into an integrated system that reduces overall complexity while maintaining parallel prediction capabilities

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The prediction storage lines are designed with multi-functionality, where each storage line can handle multiple branch predictions with different offset positions using the same tag value. The validity indicators serve multiple purposes by indicating both the validity of the tag match and the validity of specific offset positions, allowing a single mechanism to perform what would traditionally require multiple dedicated units

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If multiple branch predictions are generated in parallel for blocks of instructions, then prediction accuracy is improved, but the size and resource requirements of the system increase

Engineering Contradiction:
Improveprediction accuracyVSAvoidsystem size
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent combines multiple prediction storage lines into a compact array structure where shared tag values and validity indicators are stored once and referenced by multiple offset positions. This merging approach maintains the ability to store multiple branch predictions while significantly reducing the total storage area required compared to having separate storage for each prediction

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an offset position dimension to organize multiple branch predictions. Instead of storing predictions in a flat structure that requires separate entries for each prediction, the offset position creates a hierarchical organization where a single tag entry can serve multiple offset positions, effectively using dimensional organization to reduce space requirements while maintaining prediction accuracy

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Speed

If multiple branch predictions are generated in parallel for blocks of instructions, then processing speed is improved, but power consumption increases

Engineering Contradiction:
Improveprocessing speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent merges the tag generation and validity indication functionality into a shared resource that serves multiple prediction storage lines. By having a single tag generation unit and shared validity indicators rather than dedicated units for each prediction line, the system maintains parallel processing speed while reducing the number of active circuit components, thereby lowering power consumption

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9823932B2Branch prediction
Publication Date: 2017.11.21 ARM LTD
  • US9823932B2 patent drawing
  • US9823932B2 patent drawing
  • US9823932B2 patent drawing

AI summary

A tagged geometric length (TAGE) branch predictor incorporates multiple prediction tables. Each of these prediction tables has prediction storage lines which store a common stored TAG value and a plurality of branch predictions in respect of different offset positions within a block of program instructions read in parallel. Each of the branch prediction has an associated validity indicator. Update of predictions stored may be made by a partial allocation mechanism in which a TAG match occurs and a branch storage line is partially overwritten or by full allocation in which no already matching TAG victim storage line can be identified and instead a whole prediction storage line is cleared and the new prediction stored therein.