Hardware Implementation of Stack-Based Replacement Algorithms

Block replacement algorithms to increase hit ratio have been extensively used in cache memory management. Among basic replacement schemes, LRU and FIFO have been shown to be effective replacement algorithms in terms of hit rates. In this paper, we introduce a flexible stack-based circuit which can be employed in hardware implementation of both LRU and FIFO policies. We propose a simple and efficient architecture such that stack-based replacement algorithms can be implemented without the drawbacks of the traditional architectures. The stack is modular and hence, a set of stack rows can be cascaded depending on the number of blocks in each cache set. Our circuit can be implemented in conjunction with the cache controller and static/dynamic memories to form a cache system. Experimental results exhibit that our proposed circuit provides an average value of 26% improvement in storage bits and its maximum operating frequency is increased by a factor of two Keywords—Cache Memory, Replacement Algorithms, Least Recently Used Algorithm, First In First Out Algorithm.

[1]  Hassan Ghasemzadeh,et al.  Modified pseudo LRU replacement algorithm , 2006, 13th Annual IEEE International Symposium and Workshop on Engineering of Computer-Based Systems (ECBS'06).

[2]  Kamran Eshraghian,et al.  Principles of CMOS VLSI Design: A Systems Perspective , 1985 .

[3]  Jim Handy,et al.  The cache memory book , 1993 .

[4]  K.A. Hurd A 600 MHz 64 b PA-RISC microprocessor , 2000, 2000 IEEE International Solid-State Circuits Conference. Digest of Technical Papers (Cat. No.00CH37056).

[5]  Sang Lyul Min,et al.  Buffer cache management: predicting the future from the past , 2002, Proceedings International Symposium on Parallel Architectures, Algorithms and Networks. I-SPAN'02.

[6]  Neil Weste,et al.  Principles of CMOS VLSI Design , 1985 .

[7]  Michel Dubois,et al.  Cost-sensitive cache replacement algorithms , 2003, The Ninth International Symposium on High-Performance Computer Architecture, 2003. HPCA-9 2003. Proceedings..

[8]  Geoffrey Brown,et al.  A Systolic LRU Processor and Its Top-Down Development , 1990, Sci. Comput. Program..

[9]  Song Jiang,et al.  Making LRU friendly to weak locality workloads: a novel replacement algorithm to improve buffer cache performance , 2005, IEEE Transactions on Computers.

[10]  Sang Lyul Min,et al.  LRFU: A Spectrum of Policies that Subsumes the Least Recently Used and Least Frequently Used Policies , 2001, IEEE Trans. Computers.

[11]  Jean-Loup Baer,et al.  Modified LRU policies for improving second-level cache behavior , 2000, Proceedings Sixth International Symposium on High-Performance Computer Architecture. HPCA-6 (Cat. No.PR00550).

[12]  S. Panchanathan,et al.  FPGA Implementation of the LRU Algorithm for Video Compression , 1994, IEEE International Conference on Consumer Electronics.

[13]  Ravi Bhagavathula,et al.  Pipeline LRU block replacement algorithm , 2000, Proceedings of the 43rd IEEE Midwest Symposium on Circuits and Systems (Cat.No.CH37144).

[14]  James F. Frenzel,et al.  Defect-tolerant cache memory design , 1993, Digest of Papers Eleventh Annual 1993 IEEE VLSI Test Symposium.

[15]  S.O. Fatemi,et al.  Pseudo-FIFO Architecture of LRU Replacement Algorithm , 2005, 2005 Pakistan Section Multitopic Conference.

[16]  Jan M. Rabaey,et al.  Digital Integrated Circuits , 2003 .