gem5
v22.1.0.0
|
Stage cycle-by-cycle state. More...
#include <fetch1.hh>
Public Member Functions | |
Fetch1ThreadInfo () | |
Fetch1ThreadInfo (const Fetch1ThreadInfo &other) | |
Public Attributes | |
FetchState | state = FetchWaitingForPC |
std::unique_ptr< PCStateBase > | pc |
Fetch PC value. More... | |
Addr | fetchAddr = 0 |
The address we're currently fetching lines from. More... | |
InstSeqNum | streamSeqNum = InstId::firstStreamSeqNum |
Stream sequence number. More... | |
InstSeqNum | predictionSeqNum = InstId::firstPredictionSeqNum |
Prediction sequence number. More... | |
bool | blocked = false |
Blocked indication for report. More... | |
bool | wakeupGuard = false |
Signal to guard against sleeping first cycle of wakeup. More... | |
|
inline |
|
inline |
bool gem5::minor::Fetch1::Fetch1ThreadInfo::blocked = false |
Blocked indication for report.
Definition at line 279 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::minorTrace().
Addr gem5::minor::Fetch1::Fetch1ThreadInfo::fetchAddr = 0 |
The address we're currently fetching lines from.
Definition at line 265 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::changeStream(), gem5::minor::Fetch1::fetchLine(), and gem5::minor::Fetch1::wakeupFetch().
std::unique_ptr<PCStateBase> gem5::minor::Fetch1::Fetch1ThreadInfo::pc |
Fetch PC value.
This is updated by branches from Execute, branch prediction targets from Fetch2. This is only valid immediately following a redirect from one of those two sources.
Definition at line 262 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::changeStream(), gem5::minor::Fetch1::processResponse(), and gem5::minor::Fetch1::wakeupFetch().
InstSeqNum gem5::minor::Fetch1::Fetch1ThreadInfo::predictionSeqNum = InstId::firstPredictionSeqNum |
Prediction sequence number.
This changes when requests from Execute or Fetch2 ask for a change of fetch address and is used to tag lines by the prediction to which they belong. Fetch2 originates prediction sequence numbers.
Definition at line 276 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::fetchLine(), gem5::minor::Fetch1::FetchRequest::isDiscardable(), and gem5::minor::Fetch1::updateExpectedSeqNums().
FetchState gem5::minor::Fetch1::Fetch1ThreadInfo::state = FetchWaitingForPC |
Definition at line 257 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::changeStream(), gem5::minor::Fetch1::evaluate(), gem5::minor::Fetch1::isDrained(), gem5::minor::Fetch1::minorTrace(), gem5::minor::Fetch1::processResponse(), and gem5::minor::Fetch1::wakeupFetch().
InstSeqNum gem5::minor::Fetch1::Fetch1ThreadInfo::streamSeqNum = InstId::firstStreamSeqNum |
Stream sequence number.
This changes on request from Execute and is used to tag instructions by the fetch stream to which they belong. Execute originates new prediction sequence numbers.
Definition at line 270 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::evaluate(), gem5::minor::Fetch1::fetchLine(), gem5::minor::Fetch1::FetchRequest::isDiscardable(), gem5::minor::Fetch1::minorTrace(), and gem5::minor::Fetch1::updateExpectedSeqNums().
bool gem5::minor::Fetch1::Fetch1ThreadInfo::wakeupGuard = false |
Signal to guard against sleeping first cycle of wakeup.
Definition at line 282 of file fetch1.hh.
Referenced by gem5::minor::Fetch1::changeStream(), and gem5::minor::Fetch1::wakeupFetch().