Multilevel Cache Coherence with Accurate Completion Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core/multi-processor systems, maintaining cache coherence across all levels of cache is challenging, particularly in ensuring that operations are completed before allowing other cores access to data, which can lead to data corruption and system instability due to the complexity of sequencing and tracking cache transactions.

Innovation Solution

The solution provides user-controlled cache coherence operations that allow for independent or simultaneous control of all cache levels, with built-in mechanisms to track the completion of operations and ensure correct sequencing, using control registers and state machines to manage cache transactions and guarantee coherence without user error.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If user manually monitors and sequences each phase of cache operation, then cache coherence can be maintained, but operation complexity and potential for user error increase

Engineering Contradiction:
Improvecache coherenceVSAvoidoperation sequencing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cache system performs self-service by automatically maintaining coherence across all levels without requiring user intervention. The patent implements automatic coherence protocols where the cache controller independently manages invalidation and synchronization operations, eliminating the need for users to manually sequence operations while ensuring reliability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback mechanisms through completion status bits that automatically indicate when cache operations are finished. This feedback loop allows the system to self-regulate and maintain coherence without user input, reducing operational complexity while preserving reliability through automated status monitoring.

Inventive Principle:
Principle #23Feedback

2Reliability

If manual tracking of cache operation completion is implemented, then multi-core access safety can be ensured, but system complexity increases

Engineering Contradiction:
Improvemulti-core access safetyVSAvoidcompletion tracking complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cache system provides self-service completion tracking through automated status bit management. Each cache operation automatically updates completion status bits that indicate when operations are finished, allowing multi-core systems to safely determine when data is ready without complex manual tracking mechanisms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses completion status bits that act as visual indicators (analogous to color changes) to show the state of cache operations. These status bits provide clear, unambiguous signals about operation completion, enabling safe multi-core access without requiring complex tracking logic.

Inventive Principle:
Principle #32Color changes

3Adaptability or versatility

If all cache levels are operated independently, then user flexibility is improved, but sequencing errors and data corruption risks increase

Engineering Contradiction:
Improvecache operation flexibilityVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The cache controller implements multi-functionality by providing a unified interface that can operate on all cache levels simultaneously or independently through a single control mechanism. This universal control approach maintains user flexibility while preventing sequencing errors through coordinated operation management.

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

Solution Approach 2:

The system uses feedback through completion status bits that provide real-time information about the state of cache operations across all levels. This feedback mechanism allows the system to maintain flexibility in operation sequencing while ensuring data integrity by preventing access until operations are complete.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8904110B2Distributed user controlled multilevel block and global cache coherence with accurate completion status
Publication Date: 2014.12.02 TEXAS INSTRUMENTS INC
  • US8904110B2 patent drawing
  • US8904110B2 patent drawing
  • US8904110B2 patent drawing

AI summary

This invention permits user controlled cache coherence operations with the flexibility to do these operations on all levels of cache together or each level independently. In the case of an all level operation, the user does not have to monitor and sequence each phase of the operation. This invention also provides a way for users to track completion of these operations. This is critical for multi-core/multi-processor devices. Multiple cores may be accessing the end point and the user/application needs to be able to identify when the operation from one core is complete, before permitting other cores access that data or code.