OpenASIP
2.0
|
#include <ExecutingOperation.hh>
Public Member Functions | |
PendingResult (SimValue &result, PortState &targetPort, int latency) | |
void | advanceCycle () |
void | reset () |
Public Attributes | |
SimValue * | result_ |
The value that will be written to the target after the latency has passed. More... | |
PortState * | target_ |
The target port to which the result will be written after the latency. More... | |
int | cyclesToGo_ |
How many cycles to wait until the result will be written to the target. More... | |
int | resultLatency_ |
Models the latency of an operation result.
This is used to make results visible in the output ports of the FU at the correct time.
Definition at line 90 of file ExecutingOperation.hh.
|
inline |
Definition at line 91 of file ExecutingOperation.hh.
void ExecutingOperation::PendingResult::advanceCycle | ( | ) |
Signals a cycle advance.
Makes the result visible to the output port in time.
Definition at line 89 of file ExecutingOperation.cc.
References cyclesToGo_, result_, RegisterState::setValue(), and target_.
void ExecutingOperation::PendingResult::reset | ( | ) |
Definition at line 97 of file ExecutingOperation.cc.
int ExecutingOperation::PendingResult::cyclesToGo_ |
How many cycles to wait until the result will be written to the target.
Definition at line 112 of file ExecutingOperation.hh.
Referenced by advanceCycle().
SimValue* ExecutingOperation::PendingResult::result_ |
The value that will be written to the target after the latency has passed.
Definition at line 106 of file ExecutingOperation.hh.
Referenced by advanceCycle().
int ExecutingOperation::PendingResult::resultLatency_ |
Definition at line 113 of file ExecutingOperation.hh.
PortState* ExecutingOperation::PendingResult::target_ |
The target port to which the result will be written after the latency.
Definition at line 109 of file ExecutingOperation.hh.
Referenced by advanceCycle().