|
gem5
|
A fully associative cache block. More...
#include <fa_lru.hh>
Public Attributes | |
| FALRUBlk * | prev |
| The previous block in LRU order. More... | |
| FALRUBlk * | next |
| The next block in LRU order. More... | |
| bool | isTouched |
| Has this block been touched? More... | |
| int | inCache |
| A bit mask of the sizes of cache that this block is resident in. More... | |
Public Attributes inherited from CacheBlk | |
| uint32_t | task_id |
| Task Id associated with this block. More... | |
| Addr | tag |
| Data block tag value. More... | |
| uint8_t * | data |
| Contains a copy of the data in this block for easy access. More... | |
| State | status |
| The current status of this block. More... | |
| Tick | whenReady |
| Which curTick() will this block be accessable. More... | |
| int | set |
| The set and way this block belongs to. More... | |
| int | way |
| bool | isTouched |
| whether this block has been touched More... | |
| unsigned | refCount |
| Number of references to this block since it was brought in. More... | |
| int | srcMasterId |
| holds the source requestor ID for this block. More... | |
| Tick | tickInserted |
Additional Inherited Members | |
Public Types inherited from CacheBlk | |
| typedef unsigned | State |
| block state: OR of CacheBlkStatusBit More... | |
Public Member Functions inherited from CacheBlk | |
| CacheBlk () | |
| CacheBlk (const CacheBlk &)=delete | |
| CacheBlk & | operator= (const CacheBlk &)=delete |
| bool | isWritable () const |
| Checks the write permissions of this block. More... | |
| bool | isReadable () const |
| Checks the read permissions of this block. More... | |
| bool | isValid () const |
| Checks that a block is valid. More... | |
| void | invalidate () |
| Invalidate the block and clear all state. More... | |
| bool | isDirty () const |
| Check to see if a block has been written. More... | |
| bool | wasPrefetched () const |
| Check if this block was the result of a hardware prefetch, yet to be touched. More... | |
| bool | isSecure () const |
| Check if this block holds data from the secure memory space. More... | |
| void | trackLoadLocked (PacketPtr pkt) |
| Track the fact that a local locked was issued to the block. More... | |
| void | clearLoadLocks (RequestPtr req) |
| Clear the any load lock that intersect the request, and is from a different context. More... | |
| std::string | print () const |
| Pretty-print a tag, and interpret state bits to readable form including mapping to a MOESI state. More... | |
| bool | checkWrite (PacketPtr pkt) |
| Handle interaction of load-locked operations and stores. More... | |
Protected Attributes inherited from CacheBlk | |
| std::list< Lock > | lockList |
| List of thread contexts that have performed a load-locked (LL) on the block since the last store. More... | |
| int FALRUBlk::inCache |
A bit mask of the sizes of cache that this block is resident in.
Each bit represents a power of 2 in MB size cache. If bit 0 is set, this block is in a 1MB cache If bit 2 is set, this block is in a 4MB cache, etc. There is one bit for each cache smaller than the full size (default 16MB).
Definition at line 81 of file fa_lru.hh.
Referenced by FALRU::accessBlock(), FALRU::check(), FALRU::FALRU(), FALRU::findVictim(), and FALRU::moveToHead().
| bool FALRUBlk::isTouched |
Has this block been touched?
Definition at line 71 of file fa_lru.hh.
Referenced by FALRU::FALRU(), and FALRU::findVictim().
| FALRUBlk* FALRUBlk::next |
The next block in LRU order.
Definition at line 69 of file fa_lru.hh.
Referenced by FALRU::check(), FALRU::FALRU(), and FALRU::moveToHead().
| FALRUBlk* FALRUBlk::prev |
The previous block in LRU order.
Definition at line 67 of file fa_lru.hh.
Referenced by FALRU::FALRU(), and FALRU::moveToHead().