L1 to L2 Cache Eviction Backlog Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern microprocessors experience a backlog of first-level (L1) data cache evictions due to competing access to the L2 tag and data array pipelines, leading to delayed evictions and impaired performance in handling simultaneous loads and evictions.

Innovation Solution

The L2 data cache recognizes clean cache lines and immediately indicates to the L1 data cache that the eviction is complete, allowing subsequent evictions to proceed without delay, even if the eviction has not fully completed, thereby preventing the backlog of L1 data cache evictions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the L2 cache processes evictions sequentially through tag and data array pipelines, then data integrity is maintained, but eviction processing speed decreases causing backlogs

Engineering Contradiction:
Improvedata integrityVSAvoideviction processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The L2 cache predicts whether an eviction will be clean or dirty before actual processing completes. Based on this prediction, the L1 cache is preemptively notified to proceed with reallocation, allowing subsequent evictions to be queued and processed without waiting for pipeline completion. This preliminary action resolves the contradiction by enabling faster throughput while maintaining data integrity through validation mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The eviction processing is segmented into prediction, notification, and validation phases. The tag array pipeline and data array pipeline operate semi-independently, with the L1 cache able to proceed with reallocation based on predicted clean evictions while the L2 cache validates results asynchronously. This segmentation allows parallel processing paths that improve throughput without sacrificing reliability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the L1 cache waits for eviction completion before reallocation, then data consistency is ensured, but cache utilization efficiency decreases

Engineering Contradiction:
Improvedata consistencyVSAvoidcache utilization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The L1 cache receives preliminary notification from the L2 cache predicting clean eviction status before the eviction pipeline completes. This allows the L1 cache to reallocate entries immediately without waiting for full eviction completion, improving cache utilization. Data consistency is maintained through subsequent validation that ensures the prediction was accurate.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A feedback mechanism validates whether predicted clean evictions were actually clean after pipeline processing. If validation succeeds, the early reallocation is confirmed; if validation fails (prediction was wrong), the system rolls back or handles the inconsistency. This feedback loop enables aggressive optimization while maintaining data consistency.

Inventive Principle:
Principle #23Feedback

3Productivity

If multiple evictions are processed simultaneously through L2 cache pipelines, then throughput increases, but pipeline contention increases causing delays

Engineering Contradiction:
Improveeviction throughputVSAvoidpipeline contention
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The L2 cache performs preliminary classification of evictions as clean or dirty based on available metadata before full pipeline processing. This preliminary action allows clean evictions to be fast-tracked with simplified processing, reducing pipeline contention. Dirty evictions undergo full processing, but the classification enables better resource allocation and reduces overall contention, improving throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11467972B2L1D to L2 eviction
Publication Date: 2022.10.11 CENTAUR TECHNOLOGY INC
  • US11467972B2 patent drawing
  • US11467972B2 patent drawing
  • US11467972B2 patent drawing

AI summary

In one embodiment, a microprocessor, comprising: a first data cache; and a second data cache configured to process both a miss in the first data cache resulting from a first load or store operation and an eviction from the first data cache to accommodate the first load or store operation, the second data cache configured to indicate to the first data cache that the eviction is complete before the eviction is actually complete based on a first state corresponding to the eviction.