Cache Inclusivity Schemes Using Low Priority Evict Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache architectures face challenges in supporting multiple cache inclusivity schemes concurrently due to conflicts between eviction and probe operations, leading to potential concurrency issues and data hazards.

Innovation Solution

The implementation of an agent with circuitry that enables two types of eviction messages at different priorities, allowing for concurrent support of multiple cache inclusivity schemes by converting high-priority eviction messages to low-priority messages and maintaining a data storage that is inclusive of cache blocks being evicted.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If high-priority eviction messages are used to maintain cache inclusivity, then cache coherence is maintained, but probe operations are blocked causing performance degradation

Engineering Contradiction:
Improvecache coherenceVSAvoidprobe operation performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic priority adjustment for eviction messages based on the target cache's inclusivity scheme. The shared cache determines whether to forward high-priority or low-priority eviction messages to outer caches, dynamically adapting the eviction message priority to match the target cache's capabilities and requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the priority parameter of eviction messages during transmission through the cache hierarchy. High-priority eviction messages from inner caches are converted to low-priority messages when forwarded to outer caches that do not require high-priority eviction, thereby resolving the contradiction between maintaining coherence and allowing probe operations to proceed.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If multiple cache inclusivity schemes are supported concurrently, then system versatility is improved, but circuit complexity increases

Engineering Contradiction:
Improvecache inclusivity scheme supportVSAvoidcircuit complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The shared cache is designed with universal functionality to handle multiple cache inclusivity schemes (inclusive, exclusive, and non-inclusive) simultaneously. It can selectively forward high-priority or low-priority eviction messages based on the target cache's type, making a single cache design adaptable to various inclusivity requirements without requiring separate dedicated circuits for each scheme.

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

Solution Approach 2:

The shared cache acts as an intermediary between inner caches and outer caches with different inclusivity schemes. It receives high-priority eviction messages from inner caches and intelligently converts them to appropriate priority levels for outer caches, mediating the interaction between different inclusivity schemes and simplifying the overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If high-priority eviction messages are transmitted throughout the cache hierarchy, then eviction speed is improved, but power consumption increases

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

Solution Approach 1:

The patent applies local quality by transmitting high-priority eviction messages only to caches that require them (inner caches with inclusive schemes) and converting to low-priority messages when forwarding to caches that do not require high-priority eviction (outer caches with exclusive or non-inclusive schemes). This localized approach to message priority reduces unnecessary power consumption while maintaining eviction speed where needed.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250181519A1Concurrent support for multiple cache inclusivity schemes using low priority evict operations
Publication Date: 2025.06.05 SIFIVE INC
  • US20250181519A1 patent drawing
  • US20250181519A1 patent drawing
  • US20250181519A1 patent drawing

AI summary

Systems and methods are disclosed for concurrent support for multiple cache inclusivity schemes using low priority evict operations. For example, some methods may include, receiving a first eviction message having a lower priority than probe messages from a first inner cache; receiving a second eviction message having a higher priority than probe messages from a second inner cache; transmitting a third eviction message, determined based on the first eviction message, having the lower priority than probe messages to a circuitry that is closer to memory in a cache hierarchy; and, transmitting a fourth eviction message, determined based on the second eviction message, having the lower priority than probe messages to the circuitry that is closer to memory in the cache hierarchy.