Performance of a cache by detecting cache lines that have been reused
First Claim
1. A method for improving the performance of a cache comprising the steps of:
- receiving a request of an address of data;
determining if said requested data is located in said cache;
setting a bit in a tag associated with a cache line to a second state if said requested data is located within said cache line of said cache, wherein said bit indicates whether said cache line has been reused;
wherein said cache line is grouped with other cache lines in a congruence class, wherein each cache line in said congruence class is associated with a tag containing a bit indicating whether its associated cache line has been reused; and
resetting said bit for one of said cache lines in said congruence class if a number of cache lines in said congruence class identified as being reused exceeds a threshold.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for improving the performance of a cache. The cache may include an array of tag entries where each tag entry includes an additional bit (“reused bit”) used to indicate whether its associated cache line has been reused, i.e., has been requested or referenced by the processor. By tracking whether a cache line has been reused, data (cache line) that may not be reused may be replaced with the new incoming cache line prior to replacing data (cache line) that may be reused. By replacing data in the cache memory that might not be reused prior to replacing data that might be reused, the cache hit may be improved thereby improving performance.
-
Citations
8 Claims
-
1. A method for improving the performance of a cache comprising the steps of:
-
receiving a request of an address of data; determining if said requested data is located in said cache; setting a bit in a tag associated with a cache line to a second state if said requested data is located within said cache line of said cache, wherein said bit indicates whether said cache line has been reused; wherein said cache line is grouped with other cache lines in a congruence class, wherein each cache line in said congruence class is associated with a tag containing a bit indicating whether its associated cache line has been reused; and resetting said bit for one of said cache lines in said congruence class if a number of cache lines in said congruence class identified as being reused exceeds a threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
Specification