gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::MSHR::Target Class Reference

#include <mshr.hh>

Inheritance diagram for gem5::MSHR::Target:
gem5::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 gem5::QueueEntry::Target
 Target (PacketPtr _pkt, Tick ready_time, Counter _order)
 Default constructor.
 

Public Attributes

const Source source
 Request from cpu, memory, or prefetcher?
 
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.
 
const bool allocOnFill
 Should the response servicing this target list allocate in the cache?
 
- Public Attributes inherited from gem5::QueueEntry::Target
const Tick recvTime
 Time when request was received (for stats)
 
const Tick readyTime
 Time when request is ready to be serviced.
 
const Counter order
 Global order (for memory consistency mgmt)
 
PacketPtr pkt
 Pending request packet.
 

Detailed Description

Definition at line 129 of file mshr.hh.

Member Enumeration Documentation

◆ Source

Enumerator
FromCPU 
FromSnoop 
FromPrefetcher 

Definition at line 133 of file mshr.hh.

Constructor & Destructor Documentation

◆ Target()

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

Definition at line 162 of file mshr.hh.

Member Data Documentation

◆ allocOnFill

const bool gem5::MSHR::Target::allocOnFill

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

Definition at line 159 of file mshr.hh.

◆ markedPending

bool gem5::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 157 of file mshr.hh.

◆ source

const Source gem5::MSHR::Target::source

Request from cpu, memory, or prefetcher?

Definition at line 140 of file mshr.hh.


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

Generated on Tue Jun 18 2024 16:24:12 for gem5 by doxygen 1.11.0