42 lines
856 B
C++
42 lines
856 B
C++
/*
|
|
* Authors: Ranjeet Kumar
|
|
*/
|
|
|
|
/**
|
|
* @file
|
|
* Declaration of a FIFO tag store.
|
|
* The FIFO tags guarantee that the true least-recently-used way in
|
|
* a set will always be evicted.
|
|
*/
|
|
|
|
#ifndef __MEM_CACHE_TAGS_FIFO_HH__
|
|
#define __MEM_CACHE_TAGS_FIFO_HH__
|
|
|
|
#include "mem/cache/tags/base_set_assoc.hh"
|
|
#include "params/FIFO.hh"
|
|
|
|
class FIFO : public BaseSetAssoc
|
|
{
|
|
public:
|
|
/** Convenience typedef. */
|
|
typedef FIFOParams Params;
|
|
|
|
/**
|
|
* Construct and initialize this tag store.
|
|
*/
|
|
FIFO(const Params *p);
|
|
|
|
/**
|
|
* Destructor
|
|
*/
|
|
~FIFO() {}
|
|
|
|
CacheBlk* accessBlock(Addr addr, bool is_secure, Cycles &lat,
|
|
int context_src);
|
|
CacheBlk* findVictim(Addr addr);
|
|
void insertBlock(PacketPtr pkt, BlkType *blk);
|
|
void invalidate(CacheBlk *blk);
|
|
};
|
|
|
|
#endif // __MEM_CACHE_TAGS_FIFO_HH__
|