Cache Memory Tag Comparator for Efficient Data Replacement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cache memory systems face inefficiencies in data retrieval and updating due to the need for complex logic and additional information to determine cache data replacement, especially in set-associative cache memories, which can lead to increased memory size and computational complexity.

Innovation Solution

A cache memory apparatus and method that employs a tag comparator to compare upper K bits of tag data with upper K bits of a tag address, determining cache hits or misses, and an update controller to select cache data for updating based on comparison results, simplifying the replacement process and reducing memory size and logic complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex logic is used to determine cache data replacement in set-associative cache memories, then cache hit/miss determination accuracy is improved, but device complexity and memory size increase

Engineering Contradiction:
Improvecache hit/miss determination accuracyVSAvoidreplacement logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The tag data is divided into upper K bits and lower (N-K) bits, with different comparison strategies applied to each segment. The upper K bits are compared across all ways simultaneously to identify update candidates, while the lower bits are used for final match verification. This segmentation simplifies the replacement logic by breaking down the complex N-bit comparison into manageable stages.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary comparison of upper K bits before final cache hit/miss determination. By pre-identifying potential update candidates based on upper bit mismatches, the system prepares replacement information in advance, reducing the complexity of the final replacement decision and improving overall determination efficiency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If additional information is stored to track cache data replacement status, then replacement accuracy is improved, but memory size increases

Engineering Contradiction:
Improvereplacement accuracyVSAvoidmemory size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The tag data serves multiple functions: it is used for both cache hit/miss determination and for identifying update candidates for replacement. By reusing the existing tag data structure for dual purposes, the system eliminates the need for separate replacement tracking information, maintaining high replacement accuracy without increasing memory size.

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

Solution Approach 2:

The tag data itself provides the information needed for replacement decisions. When upper K bits of tag data do not match the corresponding tag address bits, the tag data automatically identifies itself as a potential update candidate, eliminating the need for external tracking mechanisms or additional metadata structures.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If full N-bit tag comparison is performed for each cache access, then cache hit/miss determination precision is improved, but processing speed decreases

Engineering Contradiction:
Improvecache hit/miss determination precisionVSAvoiddata retrieval speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The tag comparison is segmented into two phases: first comparing upper K bits to quickly identify potential matches or update candidates, then comparing lower (N-K) bits only for final verification. This segmentation enables early termination of the comparison process in many cases, improving speed while maintaining full N-bit comparison precision for accurate hit/miss determination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The upper K bit comparison is performed as a preliminary filtering step before the complete N-bit comparison. This preliminary action quickly eliminates non-matching entries, reducing the average comparison time while ensuring that the final decision is based on the complete N-bit tag match for precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9852070B2Cache memory system using a tag comparator to determine update candidates and operating method thereof
Publication Date: 2017.12.26 SAMSUNG ELECTRONICS CO LTD
  • US9852070B2 patent drawing
  • US9852070B2 patent drawing
  • US9852070B2 patent drawing

AI summary

A cache memory apparatus includes a tag comparator configured to compare upper bits of each of pieces of tag data included in a set indicated by a set address that is received with upper bits of a tag address that is received, compare other bits of each of the pieces of the tag data with other bits of the tag address, and determine whether there is a cache hit or a cache miss based on results of the comparisons, and an update controller configured to, in response to the cache miss, determine, as an update candidate, a piece of cache data included in the set and corresponding to the pieces of the tag data, based on the result of the comparison of the upper bits of each of the pieces of the tag data and the upper bits of the tag address, and update the update candidate with new data.