Pseudo 3-way set-associative cache: a way of reducing miss ratio with fast access time
Yong-Joon Lee, Byung-Kwon Chung · 2003
The multiple-access cache is a direct-mapped cache that may be accessed more than once, each time with a different hash function, to satisfy a memory request. A fast access time can be achieved when the requested data is found at the direct-mapped location, while a high overall hit ratio can be accomplished with the additional cache access. To prevent long delays in accessing the alternative location, the multiple-access cache generally accesses the cache at most twice. Thus, the hit ratio of the multiple-access cache has a limitation of that of 2-way set-associative cache. In this paper, a pseudo 3-way set-associative cache is proposed. The pseudo 3-way set-associative cache searches the direct-mapped location and one alternative location, if necessary, to find a match. The pseudo 3-way set-associative cache can overcome the limitation of the hit ratio of 2-way set-associative cache with at most two searches from a fast direct-mapped cache. To achieve this goal, the pseudo 3-way set-associative cache uses small tables indicating different hash functions to search the alternative location. With additional 1.5 bits per cache line, we can achieve a hit ratio approaching that of a 4-way set-associative cache.