Cache Controller Mode Switching for Coherence and Stall Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face inefficiencies in cache allocation and transaction processing due to cache coherence states and varying priority levels, leading to stalled transactions and suboptimal performance in multi-level cache hierarchies.

Innovation Solution

Implementing dynamic transaction arbitration and cache allocation strategies, including random selection of cache ways, priority-based transaction processing, and mode-switchable caching, to optimize cache utilization and reduce transaction stalls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cache allocation follows strict coherence state checking, then cache consistency is maintained, but transaction processing speed decreases due to stalls

Engineering Contradiction:
Improvecache consistencyVSAvoidtransaction processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic cache allocation by allowing the cache controller to adaptively select between strict coherence checking and more permissive allocation based on current system state. The controller can dynamically adjust allocation policies for different cache ways, enabling faster processing when consistency risks are low while maintaining reliability when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of cache allocation policy from static to dynamic. By modifying allocation parameters based on coherence states and pending requests, the system can optimize between consistency and speed. The controller adjusts allocation behavior by changing parameters such as whether to check coherence states or allow speculative allocation in different contexts.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If all cache ways are monitored for coherence states, then allocation accuracy is improved, but controller complexity increases

Engineering Contradiction:
Improveallocation accuracyVSAvoidcontroller complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the coherence checking function from every cache way and consolidates it into a centralized arbitration logic. Instead of each way independently monitoring its own state, the controller extracts and processes coherence information centrally, reducing redundant complexity while maintaining allocation accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The cache controller is designed with universal arbitration logic that handles multiple functions: coherence state monitoring, random selection, pending request detection, and allocation decision-making. This multi-functional approach reduces overall system complexity by consolidating control functions into a single versatile controller rather than separate specialized units for each function.

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

3Productivity

If random way selection is used when no invalid ways are available, then cache utilization is improved, but risk of allocating to pending requests increases

Engineering Contradiction:
Improvecache utilizationVSAvoidallocation correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by checking for pending requests before performing random allocation. The controller first identifies which cache ways have pending requests and excludes them from the random selection pool. This preliminary filtering ensures that random allocation only occurs among safe candidates, maintaining reliability while still achieving good utilization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The arbitration logic serves as an intermediary between the random selection mechanism and the cache ways. It mediates the allocation process by filtering out ways with pending requests before allowing random selection to occur. This intermediary layer ensures that random allocation improves utilization without compromising correctness.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20260037298A1Controller with caching and non-caching modes
Publication Date: 2026.02.05 TEXAS INSTRUMENTS INC
  • US20260037298A1 patent drawing
  • US20260037298A1 patent drawing
  • US20260037298A1 patent drawing

AI summary

An apparatus includes a CPU core, a first cache subsystem coupled to the CPU core, and a second memory coupled to the cache subsystem. The first cache subsystem includes a configuration register, a first memory, and a controller. The controller is configured to: receive a request directed to an address in the second memory and, in response to the configuration register having a first value, operate in a non-caching mode. In the non-caching mode, the controller is configured to provide the request to the second memory without caching data returned by the request in the first memory. In response to the configuration register having a second value, the controller is configured to operate in a caching mode. In the caching mode the controller is configured to provide the request to the second memory and cache data returned by the request in the first memory.