Dynamic Mapping Circuitry for Branch Target Buffer Aliasing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing branch prediction mechanisms face inefficiencies due to data access conflicts in branch target buffers (BTBs) caused by aliasing, where multiple branch addresses with different attributes are mapped to the same memory locations, leading to frequent evictions and wasteful storage usage.

Innovation Solution

The implementation of location selection circuitry that varies the mapping relationship for data items in response to detected data access conflicts, allowing for dynamic allocation and replacement of data items in memory locations, thereby alleviating aliasing issues and optimizing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a fixed mapping relationship is used in the branch target buffer, then the mapping is simple and fast, but data access conflicts occur when multiple branch addresses are mapped to the same memory locations

Engineering Contradiction:
Improvemapping speedVSAvoiddata access conflict rate
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies dynamics by making the mapping relationship variable rather than fixed. The location selection circuitry dynamically selects between a first mapping relationship and a second mapping relationship based on detected data access conflicts. When conflicts are detected, the system switches to an alternative mapping relationship, thereby adapting to changing conditions and reducing conflicts while maintaining fast access.

Inventive Principle:
Principle #15Dynamics

2Productivity

If multiple data items are stored in the branch target buffer, then the buffer utilization increases, but data access conflicts increase when different branch addresses map to the same locations

Engineering Contradiction:
Improvebuffer utilizationVSAvoiddata access conflict rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent changes the mapping parameters dynamically. When data access conflicts are detected, the system alters the mapping relationship by switching between different mapping functions or hash algorithms. This parameter change allows the same buffer to accommodate multiple data items with reduced conflicts, effectively increasing productive utilization while maintaining reliability.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If a single mapping relationship is used for all data items, then the circuitry is simple, but data access conflicts occur when different attributes map to the same memory locations

Engineering Contradiction:
Improvecircuitry complexityVSAvoiddata access conflict rate
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent implements multi-functionality in the location selection circuitry, which is capable of performing multiple mapping functions. The circuitry can select from a first mapping relationship and a second mapping relationship based on the detected data access conflicts. This universal circuitry maintains relative simplicity while providing multiple mapping capabilities to reduce conflicts.

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

4Adaptability or versatility

If data items are frequently evicted due to mapping conflicts, then new data items can be stored, but performance degrades due to repeated evictions and refetches

Engineering Contradiction:
Improvedata item replacement flexibilityVSAvoidprediction delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent takes preliminary action by detecting data access conflicts and switching mapping relationships before performance degradation occurs. The location selection circuitry monitors for conflicts and proactively changes the mapping relationship to prevent excessive evictions, thereby maintaining prediction performance and avoiding the time loss associated with repeated evictions and refetches.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11080184B2Circuitry and method
Publication Date: 2021.08.03 ARM LTD
  • US11080184B2 patent drawing
  • US11080184B2 patent drawing
  • US11080184B2 patent drawing

AI summary

Circuitry comprises memory circuitry providing a plurality of memory locations;location selection circuitry to select a set of one or more of the memory locations by which to access a data item according to a mapping relationship between an attribute of the data item and the set of one or more memory locations; the location selection circuitry being configured to initiate an allocation operation for a data item when that data item is to be newly stored by the memory circuitry and the selected set of one or more of the memory locations are already occupied by one or more other data items, the allocation operation comprising an operation to replace at least a subset of the one or more other data items from the set of one or more memory locations by the newly stored data item; and detector circuitry to detect a data access conflict in which a group of two or more data items having different respective attributes are mapped by the mapping relationship to the same set of one or more memory locations; the location selection circuitry being configured to vary the mapping relationship applicable to the attribute of at least one data item of the group of two or more data items in response to a detection by the detector circuitry of a data access conflict.