gem5/src/mem/cache/tags
Anthony Gutierrez a628afedad mem: refactor LRU cache tags and add random replacement tags
this patch implements a new tags class that uses a random replacement policy.
these tags prefer to evict invalid blocks first, if none are available a
replacement candidate is chosen at random.

this patch factors out the common code in the LRU class and creates a new
abstract class: the BaseSetAssoc class. any set associative tag class must
implement the functionality related to the actual replacement policy in the
following methods:

accessBlock()
findVictim()
insertBlock()
invalidate()
2014-07-28 12:23:23 -04:00
..
base.cc Cache: Collect very basic stats on tag and data accesses 2014-01-24 15:29:30 -06:00
base.hh Cache: Collect very basic stats on tag and data accesses 2014-01-24 15:29:30 -06:00
base_set_assoc.cc mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
base_set_assoc.hh mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
cacheset.hh mem: Add support for a security bit in the memory system 2014-01-24 15:29:30 -06:00
fa_lru.cc mem: Remove redundant findVictim() input argument 2014-01-28 18:00:50 -06:00
fa_lru.hh mem: Remove redundant findVictim() input argument 2014-01-28 18:00:50 -06:00
lru.cc mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
lru.hh mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
random_repl.cc mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
random_repl.hh mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
SConscript mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00
Tags.py mem: refactor LRU cache tags and add random replacement tags 2014-07-28 12:23:23 -04:00