Cache Tag Filtering Using Partial Bit Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional cache systems face challenges in managing the trade-off between performance and energy efficiency due to the need for accessing a large number of tag bits, which is energy-intensive and can lead to increased complexity and latency, particularly in mobile and large-scale computing environments.
Innovation Solution
A filtering algorithm is applied to multi-cycle tag accesses using a subset of tag bits, reducing the number of bits read and minimizing energy consumption while maintaining performance by employing a pre-check stage to filter out guaranteed misses before full comparisons are made.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a large number of tag bits are accessed to determine cache hits, then hit/miss determination accuracy is improved, but energy consumption increases
Solution Approach 1:
The patent divides the tag comparison process into two segments: a first comparison of a first subset of tag bits performed in parallel across all ways, and a second comparison of remaining tag bits performed only for selected ways. This segmentation reduces the total number of bit comparisons required, thereby lowering energy consumption while maintaining accurate hit/miss determination.
Solution Approach 2:
The patent applies partial action by performing the complete tag comparison only for a subset of ways that are likely to contain the requested data, rather than comparing all tag bits across all ways. The first comparison of a subset of bits identifies candidate ways, and the second comparison is performed only on these candidates, reducing overall energy consumption.
2Reliability
If more tag bits are read to ensure accurate cache hit detection, then reliability is improved, but use of energy increases
Solution Approach 1:
The patent segments the tag bits into two groups: a first subset of bits used for the initial parallel comparison across all ways, and remaining bits used for subsequent comparison only in selected ways. This segmentation ensures reliable hit detection by maintaining a two-stage verification process while reducing the total number of bit reads required.
Solution Approach 2:
The patent performs a preliminary comparison of the first subset of tag bits across all ways before performing the complete comparison. This preliminary action identifies candidate ways that are likely to contain the requested data, allowing the system to focus subsequent energy-intensive comparisons only on these candidates, thereby maintaining reliability while reducing overall energy consumption.
3Speed
If parallel comparison of all tag bits is performed, then speed is improved, but energy consumption increases
Solution Approach 1:
The patent segments the comparison process into two phases: a first parallel comparison of a subset of tag bits across all ways (maintaining high speed), followed by a second comparison of remaining bits only for selected ways (reducing energy consumption). This segmentation preserves speed for the critical path while reducing overall energy usage.
Solution Approach 2:
The patent applies partial action by performing complete parallel comparisons only for a subset of ways identified as candidates through the first comparison, rather than performing exhaustive parallel comparisons across all ways. This reduces the total computational work required while maintaining fast access for likely hits.
4Productivity
If high associativity and complicated replacement policies are used, then cache performance is improved, but device complexity increases
Solution Approach 1:
The patent segments the tag storage into two parts: a first storage containing a subset of tag bits used for the initial parallel comparison, and a second storage containing the remaining tag bits used for subsequent comparison. This segmentation simplifies the control logic required for high associativity by enabling a two-stage comparison process that is more manageable than exhaustive parallel comparison.
Solution Approach 2:
The patent performs a preliminary comparison of a subset of tag bits to identify candidate ways before performing the complete comparison. This preliminary action simplifies the control logic for complicated replacement policies by reducing the number of ways that require full comparison, thereby managing device complexity while maintaining cache performance.
Data Source
AI summary
A method and device are provided in which a request is received at a cache memory. The request includes a first tag, and the first tag includes bits. A first comparison is performed of a first subset of the bits to entries of a first storage of the cache memory. Each entry of the first storage comprises a subset of bits of a corresponding tag in a second storage of the cache memory. One or more potential matching entries of the second storage for the request are determined based on the first comparison. In response to the determining the one or more potential matching entries, a second comparison is performed of the bits to tags of the one or more potential matching entries to determine whether the second storage comprises a matching entry for the request.


