  | 
  
    TEMU
    4.4
    
   The Terma Emulator 
   | 
 
 
 
 
Go to the documentation of this file.
   19 #include "temu-c/Support/Objsys.h" 
   20 #include "temu-c/Memory/Memory.h" 
   31 #define TEMU_CACHE_NONE 0
 
   32 #define TEMU_CACHE_LRU 1
 
   33 #define TEMU_CACHE_LRR 2
 
   34 #define TEMU_CACHE_RND 3
 
   65   uint32_t (*getReplacementPolicy)(
void *Obj);
 
   67   uint32_t (*getSets)(
void *Obj);
 
   69   uint32_t (*getWays)(
void *Obj);
 
   71   uint32_t (*getLineSize)(
void *Obj);
 
   82   uint64_t (*readFlags)(
void *Obj, uint64_t Addr);
 
   85   void (*
writeFlags)(
void *Obj, uint64_t Addr, uint64_t Flags);
 
   98   uint64_t (*readData)(
void *Obj, uint64_t Addr);
 
  101   int (*
writeData)(
void *Obj, uint64_t Addr, uint64_t Data);
 
  103 #define TEMU_CACHE_IFACE_TYPE "temu::CacheIface" 
  104 TEMU_IFACE_REFERENCE_TYPE(temu_Cache);
 
  118 } temu_CacheCtrlIface;
 
  119 #define TEMU_CACHE_CTRL_IFACE_TYPE "temu::CacheCtrlIface" 
  120 TEMU_IFACE_REFERENCE_TYPE(temu_CacheCtrl);
 
  
 
int(* writeData)(void *Obj, uint64_t Addr, uint64_t Data)
Write data in cache.
Definition: Cache.h:101
 
void(* invalidateLine)(void *Obj, uint64_t Addr)
Invalidate single line.
Definition: Cache.h:56
 
void(* evictionInProgress)(void *Obj)
Global evict operation ongoing.
Definition: Cache.h:114
 
void(* invalidateAll)(void *Obj)
Invalidate entire cache.
Definition: Cache.h:55
 
void(* evictionCompleted)(void *Obj)
Global evict operation completed.
Definition: Cache.h:117
 
void(* freeze)(void *Obj)
Freeze cache.
Definition: Cache.h:49
 
void(* evictAll)(void *Obj)
Evict all (i.e. spill to memory)
Definition: Cache.h:58
 
void(* enable)(void *Obj)
Enable cache.
Definition: Cache.h:47
 
void(* evictLine)(void *Obj, uint64_t Addr)
Evict line.
Definition: Cache.h:59
 
void(* unlockLine)(void *Obj, uint64_t Addr)
Unlock line.
Definition: Cache.h:52
 
void(* lockLine)(void *Obj, uint64_t Addr)
Lock line for addr.
Definition: Cache.h:51
 
int(* isValid)(void *Obj, uint64_t Addr)
Check if an address belong to a cached line.
Definition: Cache.h:74
 
void(* writeFlags)(void *Obj, uint64_t Addr, uint64_t Flags)
Write flags data.
Definition: Cache.h:85
 
void(* disable)(void *Obj)
Disable cache.
Definition: Cache.h:48