Snoop Filter Update via Analysis Circuitry

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The snoop filter in interconnects can become outdated due to lack of communication from cache devices, leading to unnecessary snoop transactions, reduced efficiency, and increased energy consumption, as well as potential counter overflow issues.

Innovation Solution

Incorporating analysis circuitry to detect update conditions from snoop response data and update the snoop filter's caching indication data, ensuring accurate tracking of cached data across devices and reducing the need for back invalidate operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If a snoop filter is used to reduce the number of snoop transactions, then energy consumption and transaction overhead are reduced, but the snoop filter contents can become outdated leading to incorrect caching indication data

Engineering Contradiction:
Improveenergy consumptionVSAvoidaccuracy of caching indication data
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where snoop response data is analyzed to detect update conditions. When the snoop filter data becomes outdated, the system receives feedback through snoop responses indicating that updates are needed, and subsequently updates the snoop filter contents to maintain accuracy while continuing to reduce unnecessary transactions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary actions by proactively updating snoop filter contents based on analyzed snoop response data before the data becomes completely outdated. This prevents the accumulation of stale information and maintains the reliability of caching indication data while still benefiting from reduced snoop transactions.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If back invalidate operations are performed to free up snoop filter entries, then new addresses can be allocated, but these operations consume significant time and energy

Engineering Contradiction:
Improvesnoop filter entry availabilityVSAvoidtime for back invalidate operations
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary updates to snoop filter contents by analyzing snoop response data and proactively updating entries before they become completely stale. This prevents the need for frequent back invalidate operations, thereby reducing time loss while maintaining the ability to allocate new addresses efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The snoop filter system serves itself by automatically detecting when updates are needed through analysis of snoop response data and performing self-updates without requiring external back invalidate operations. This reduces the time and energy overhead associated with manual invalidation while maintaining entry availability.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If modern cache coherency protocols allow silent evictions without communication, then protocol flexibility is improved, but snoop filter contents become outdated reducing system efficiency

Engineering Contradiction:
Improvecache coherency protocol flexibilityVSAvoidsystem efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements feedback mechanisms where snoop response data is analyzed to detect when silent evictions have occurred. The system receives feedback from snoop responses that indicate the snoop filter data is outdated, and subsequently updates the filter contents to reflect the current cache state, thereby maintaining system efficiency while preserving protocol flexibility.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary updates by proactively analyzing snoop response data and updating snoop filter contents before silent evictions cause significant outdated information to accumulate. This maintains productivity and system efficiency while allowing the cache coherency protocol to remain flexible with silent eviction capabilities.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9727466B2Interconnect and method of managing a snoop filter for an interconnect
Publication Date: 2017.08.08 ARM LTD
  • US9727466B2 patent drawing
  • US9727466B2 patent drawing
  • US9727466B2 patent drawing

AI summary

An interconnect and method of managing a snoop filter within such an interconnect are provided. The interconnect is used to connect a plurality of devices, including a plurality of master devices where one or more of the master devices has an associated cache storage. The interconnect comprises coherency control circuitry to perform coherency control operations for data access transactions received by the interconnect from the master devices. In performing those operations, the coherency control circuitry has access to snoop filter circuitry that maintains address-dependent caching indication data, and is responsive to a data access transaction specifying a target address to produce snoop control data providing an indication of which master devices have cached data for the target address in their associated cache storage. The coherency control circuitry then responds to the snoop control data by issuing a snoop transaction to each master device indicated by the snoop control data, in order to cause a snoop operation to be performed in their associated cache storage in order to generate snoop response data. Analysis circuitry then determines from the snoop response data an update condition, and upon detection of the update condition triggers performance of an update operation within the snoop filter circuitry to update the address-dependent caching indication data. By subjecting the snoop response data to such an analysis, it is possible to identify situations where the caching indication data has become out of date, and update that caching indication data accordingly, this giving rise to significant performance benefits in the operation of the interconnect.