gem5  v20.1.0.0
Public Types | Public Member Functions | Public Attributes | List of all members
MSHR::Target Class Reference

#include <mshr.hh>

Inheritance diagram for MSHR::Target:
QueueEntry::Target

Public Types

enum  Source { FromCPU, FromSnoop, FromPrefetcher }
 

Public Member Functions

 Target (PacketPtr _pkt, Tick _readyTime, Counter _order, Source _source, bool _markedPending, bool alloc_on_fill)
 
- Public Member Functions inherited from QueueEntry::Target
 Target (PacketPtr _pkt, Tick ready_time, Counter _order)
 Default constructor. More...
 

Public Attributes

const Source source
 Request from cpu, memory, or prefetcher? More...
 
bool markedPending
 We use this flag to track whether we have cleared the downstreamPending flag for the MSHR of the cache above where this packet originates from and guard noninitial attempts to clear it. More...
 
const bool allocOnFill
 Should the response servicing this target list allocate in the cache? More...
 
- Public Attributes inherited from QueueEntry::Target
const Tick recvTime
 Time when request was received (for stats) More...
 
const Tick readyTime
 Time when request is ready to be serviced. More...
 
const Counter order
 Global order (for memory consistency mgmt) More...
 
const PacketPtr pkt
 Pending request packet. More...
 

Detailed Description

Definition at line 124 of file mshr.hh.

Member Enumeration Documentation

◆ Source

Enumerator
FromCPU 
FromSnoop 
FromPrefetcher 

Definition at line 127 of file mshr.hh.

Constructor & Destructor Documentation

◆ Target()

MSHR::Target::Target ( PacketPtr  _pkt,
Tick  _readyTime,
Counter  _order,
Source  _source,
bool  _markedPending,
bool  alloc_on_fill 
)
inline

Definition at line 155 of file mshr.hh.

Member Data Documentation

◆ allocOnFill

const bool MSHR::Target::allocOnFill

Should the response servicing this target list allocate in the cache?

Definition at line 152 of file mshr.hh.

◆ markedPending

bool MSHR::Target::markedPending

We use this flag to track whether we have cleared the downstreamPending flag for the MSHR of the cache above where this packet originates from and guard noninitial attempts to clear it.

The flag markedPending needs to be updated when the TargetList is in service which can be: 1) during the Target instantiation if the MSHR is in service and the target is not deferred, 2) when the MSHR becomes in service if the target is not deferred, 3) or when the TargetList is promoted (deferredTargets -> targets).

Definition at line 150 of file mshr.hh.

◆ source

const Source MSHR::Target::source

Request from cpu, memory, or prefetcher?

Definition at line 133 of file mshr.hh.


The documentation for this class was generated from the following file:

Generated on Wed Sep 30 2020 14:02:28 for gem5 by doxygen 1.8.17