Aliasing Bit Prediction in Virtually Indexed Physically Tagged Caches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtually indexed physically tagged caches, predicting aliasing bits can lead to deadlocks when different virtual addresses map to the same hash value, causing performance issues and cache access problems.

Innovation Solution

The use of two structures for predicting aliasing bits, where the first structure is selected when virtual addresses map to different hash values and the second structure is used when they map to the same hash value, allowing for the determination of predicted aliasing bits and improving cache performance by preventing deadlocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single structure is used for predicting aliasing bits in a virtually indexed physically tagged cache, then the device complexity is reduced, but deadlocks occur when different virtual addresses map to the same hash value

Engineering Contradiction:
Improvecache structure complexityVSAvoidcache operation reliability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The cache prediction structure is segmented into two separate structures: a first structure for handling virtual addresses with different hash values and a second structure for handling virtual addresses with the same hash value. This segmentation prevents deadlocks by ensuring that address conflicts are routed to the appropriate structure, thereby maintaining reliability without excessive complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects between the first and second structures based on the hash value comparison of incoming virtual addresses. When hash values match, the second structure is used; when they differ, the first structure is used. This dynamic adaptation resolves the contradiction by adjusting the operational mode to prevent deadlocks while managing complexity.

Inventive Principle:
Principle #15Dynamics

2Reliability

If two structures are used for predicting aliasing bits, then cache performance and reliability are improved by preventing deadlocks, but the device complexity increases

Engineering Contradiction:
Improvecache operation reliabilityVSAvoidcache structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cache is divided into two specialized structures, each handling specific types of virtual address mappings. The first structure handles addresses with different hash values, while the second structure handles addresses with matching hash values. This segmentation improves reliability by preventing deadlocks through appropriate routing, while the modular design manages complexity through clear separation of functions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the operational parameter (structure selection) based on the hash value comparison result. By monitoring the hash values of virtual addresses and dynamically switching between structures, the system achieves high reliability in preventing deadlocks while keeping the complexity manageable through parameter-based control rather than structural overhaul.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If hash value comparison is performed to select between structures, then the accuracy of aliasing bit prediction is improved, but the access time increases

Engineering Contradiction:
Improvealiasing bit prediction accuracyVSAvoidcache access time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The hash value comparison is performed as a preliminary action before the actual cache access. By pre-comparing hash values and determining which structure to use in advance, the system ensures accurate routing to the appropriate structure, improving prediction accuracy. The preliminary nature of this comparison minimizes its impact on overall access time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The hash value comparison and structure selection process is executed rapidly and skipped through efficiently. By optimizing the comparison operation to complete quickly and bypassing unnecessary steps, the system achieves high prediction accuracy while minimizing the time penalty, thus reducing the impact on cache access time.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS12124375B1Predicting aliasing bits in a virtually indexed physically tagged cache
Publication Date: 2024.10.22 MIPS HLDG INC
  • US12124375B1 patent drawing
  • US12124375B1 patent drawing
  • US12124375B1 patent drawing

AI summary

A second virtual address may be received, where the second virtual address is different from a first virtual address. A second hash value may be computed based on the second virtual address. A first comparison result may be determined by comparing the second hash value with a first hash value, where the first hash value is computed based on the first virtual address. The first comparison result may be used to select a selected structure from either a first structure or a second structure. The selected structure may be used to determine predicted aliasing bits which are used to determine an index corresponding to the second virtual address.