Recycling Tag for Cache Line Data Reuse
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cache systems face challenges in increasing the hit rate and reducing memory traffic, as conventional designs face limitations in improving the number of ways in a set-associative cache, leading to bottlenecks in data access times for processors.
Innovation Solution
A storage system with multiple tag entries associated with the same data storage line, where a recycling tag is used to associate with a cache line after a main tag is replaced due to a cache miss, allowing the original data to be reused before being updated, thereby increasing the hit rate and reducing memory traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the number of ways in a set-associative cache is increased to improve hit rate, then the hit rate improves, but the device complexity and bottleneck in data access time worsen
Solution Approach 1:
The patent applies preliminary action by introducing a recycling tag that is set in advance when a cache line is replaced. This recycling tag allows the original data to be reused before being completely discarded, effectively preparing a backup reference that can prevent future cache misses without requiring increased cache associativity. The recycling tag is set to associate with the cache line after the main tag is replaced, enabling data recycling before the next cache access occurs.
Solution Approach 2:
The recycling tag acts as an intermediary mechanism between the main tag and the cache line data. Instead of directly increasing cache associativity to improve hit rate, the recycling tag serves as a mediator that preserves data accessibility through a different mechanism - by maintaining a reference to the original data location that can be reused if needed, thus avoiding the need for more complex cache structures.
2Device complexity
If conventional cache designs are used to maintain simplicity, then device complexity is reduced, but memory traffic and power consumption increase due to lower hit rate
Solution Approach 1:
The patent applies discarding and recovering by implementing a recycling tag that recovers the original data reference when a cache line is replaced. Instead of completely discarding the old data reference and relying solely on the new main tag, the recycling tag recovers and preserves the original data location information, allowing it to be reused if the replaced data is accessed again before being fully discarded. This reduces memory traffic and power consumption by preventing unnecessary memory accesses.
3Productivity
If data is immediately overwritten after cache miss, then cache line is updated efficiently, but the original data cannot be reused causing increased memory traffic
Solution Approach 1:
The patent applies preliminary action by setting the recycling tag in advance when the cache line is replaced, before the next cache access occurs. This preliminary setup ensures that when the original data is accessed again, the recycling tag can immediately provide the correct data location without requiring a full memory access, thus reducing data access time while maintaining efficient cache update behavior.
Solution Approach 2:
The recycling tag serves as an intermediary reference that bridges the main tag and the original data location. It allows the cache system to maintain efficient updates through the main tag while simultaneously preserving access to the original data through the recycling tag, thus preventing the loss of time that would occur if the original data could not be reused.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A storage system (100) has a data storage device (102), a tag storage device (104) and a controller (106). The tag storage device (104) has a plurality of first tag entries (114) and a plurality of second tag entries (116), wherein each of the first tag entries (114) is associated with one data storage line (112) allocated in the data storage device (102). The controller (106) is coupled between the data storage device (102) and the tag storage device (104), and arranged to set a specific second tag entry (116) in the tag storage device (104) to associate with a specific data storage line (112) with which a specific first tag entry (114) in the tag storage device (104) is associated.