Abstract :
While set-associative caches typically incur fewer misses than direct-mapped caches, set-associative caches have slower hit tithes. We propose the reactive-associative cache (r-a cache), which provides flexible associativity by placing most blocks in direct-mapped positions and reactively displacing only conflicting blocks to set-associative positions. The r-a cache uses way-prediction (like the predictive associative cache, PSA) to access displaced blocks on the initial probe. Unlike PSA, however, the r-a cache employs a novel feedback mechanism to prevent unpredictable blocks from being displaced. Reactive displacement and feedback allow the r-a cache to use a novel PC-based way-prediction and achieve high accuracy; without impractical block swapping as in column associative and group associative, and without relying on timing-constrained XOR way prediction. A one-port, 4-way r-a cache achieves up to 9% speedup over a direct-mapped cache and performs within 2% of an idealized 2-way set-associative, 1-cycle cache. A 4-way r-a cache achieves up to 13% speedup over a PSA cache, with both r-a and PSA rising the PC scheme. CACTI estimates that for sizes larger than 8KB, a 4-way r-a cache is within 1% of direct-mapped hit times, and 24% faster than a 2-way set-associative cache
Keywords :
cache storage; content-addressable storage; instruction sets; pipeline processing; storage allocation; 2-way set-associative 1-cycle cache; CACTI; PC scheme; PSA; PSA cache; block swapping; conflicting blocks; direct-mapped caches; direct-mapped positions; displaced blocks; feedback mechanism; flexible associativity; hit tithes; one-port 4-way r-a cache; predictive associative cache; reactive-associative caches; set-associative caches; set-associative positions; timing-constrained XOR way prediction; way-prediction; Bandwidth; Data engineering; Degradation; Delay; Feedback; Probes;