Definition at line 63 of file copy_engine.hh.
Enumerator |
---|
Idle |
|
AddressFetch |
|
DescriptorFetch |
|
DMARead |
|
DMAWrite |
|
CompletionWrite |
|
Definition at line 84 of file copy_engine.hh.
CopyEngine::CopyEngineChannel::CopyEngineChannel |
( |
CopyEngine * |
_ce, |
|
|
int |
cid |
|
) |
| |
CopyEngine::CopyEngineChannel::~CopyEngineChannel |
( |
| ) |
|
|
virtual |
void CopyEngine::CopyEngineChannel::anBegin |
( |
const char * |
s | ) |
|
|
inlineprivate |
void CopyEngine::CopyEngineChannel::anDq |
( |
| ) |
|
|
inlineprivate |
void CopyEngine::CopyEngineChannel::anPq |
( |
| ) |
|
|
inlineprivate |
void CopyEngine::CopyEngineChannel::anQ |
( |
const char * |
s, |
|
|
uint64_t |
id, |
|
|
int |
size = 1 |
|
) |
| |
|
inlineprivate |
void CopyEngine::CopyEngineChannel::anWait |
( |
| ) |
|
|
inlineprivate |
void CopyEngine::CopyEngineChannel::channelRead |
( |
PacketPtr |
pkt, |
|
|
Addr |
daddr, |
|
|
int |
size |
|
) |
| |
Definition at line 240 of file copy_engine.cc.
References bits(), CopyEngineReg::CHAN_CHAINADDR, CopyEngineReg::CHAN_CHAINADDR_HIGH, CopyEngineReg::CHAN_CMPLNADDR, CopyEngineReg::CHAN_CMPLNADDR_HIGH, CopyEngineReg::CHAN_COMMAND, CopyEngineReg::CHAN_CONTROL, CopyEngineReg::CHAN_ERROR, CopyEngineReg::CHAN_STATUS, panic, and Packet::set().
void CopyEngine::CopyEngineChannel::channelWrite |
( |
PacketPtr |
pkt, |
|
|
Addr |
daddr, |
|
|
int |
size |
|
) |
| |
Definition at line 364 of file copy_engine.cc.
References CopyEngineReg::CHAN_CHAINADDR, CopyEngineReg::CHAN_CHAINADDR_HIGH, CopyEngineReg::CHAN_CMPLNADDR, CopyEngineReg::CHAN_CMPLNADDR_HIGH, CopyEngineReg::CHAN_COMMAND, CopyEngineReg::CHAN_CONTROL, CopyEngineReg::CHAN_ERROR, CopyEngineReg::CHAN_STATUS, DPRINTF, Packet::get(), ArmISA::mask, and panic.
void CopyEngine::CopyEngineChannel::continueProcessing |
( |
| ) |
|
|
private |
DrainState CopyEngine::CopyEngineChannel::drain |
( |
| ) |
|
|
overridevirtual |
Notify an object that it needs to drain its state.
If the object does not need further simulation to drain internal buffers, it returns DrainState::Drained and automatically switches to the Drained state. If the object needs more simulation, it returns DrainState::Draining and automatically enters the Draining state. Other return values are invalid.
- Note
- An object that has entered the Drained state can be disturbed by other objects in the system and consequently stop being drained. These perturbations are not visible in the drain state. The simulator therefore repeats the draining process until all objects return DrainState::Drained on the first call to drain().
- Returns
- DrainState::Drained if the object is drained at this point in time, DrainState::Draining if it needs further simulation.
Implements Drainable.
Definition at line 650 of file copy_engine.cc.
References MipsISA::ce, DPRINTF, Drained, Draining, and Running.
void CopyEngine::CopyEngineChannel::drainResume |
( |
| ) |
|
|
overridevirtual |
void CopyEngine::CopyEngineChannel::fetchAddrComplete |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::fetchDescComplete |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::fetchDescriptor |
( |
Addr |
address | ) |
|
|
private |
void CopyEngine::CopyEngineChannel::fetchNextAddr |
( |
Addr |
address | ) |
|
|
private |
bool CopyEngine::CopyEngineChannel::inDrain |
( |
| ) |
|
|
private |
std::string CopyEngine::CopyEngineChannel::name |
( |
| ) |
|
|
inline |
virtual Tick CopyEngine::CopyEngineChannel::read |
( |
PacketPtr |
pkt | ) |
|
|
inlinevirtual |
void CopyEngine::CopyEngineChannel::readCopyBytes |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::readCopyBytesComplete |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::recvCommand |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::restartStateMachine |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::serialize |
( |
CheckpointOut & |
cp | ) |
const |
|
overridevirtual |
void CopyEngine::CopyEngineChannel::unserialize |
( |
CheckpointIn & |
cp | ) |
|
|
overridevirtual |
virtual Tick CopyEngine::CopyEngineChannel::write |
( |
PacketPtr |
pkt | ) |
|
|
inlinevirtual |
void CopyEngine::CopyEngineChannel::writeCompletionStatus |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::writeCopyBytes |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::writeCopyBytesComplete |
( |
| ) |
|
|
private |
void CopyEngine::CopyEngineChannel::writeStatusComplete |
( |
| ) |
|
|
private |
bool CopyEngine::CopyEngineChannel::busy |
|
private |
DmaPort CopyEngine::CopyEngineChannel::cePort |
|
private |
int CopyEngine::CopyEngineChannel::channelId |
|
private |
uint64_t CopyEngine::CopyEngineChannel::completionDataReg |
|
private |
uint8_t* CopyEngine::CopyEngineChannel::copyBuffer |
|
private |
Addr CopyEngine::CopyEngineChannel::fetchAddress |
|
private |
Addr CopyEngine::CopyEngineChannel::lastDescriptorAddr |
|
private |
Tick CopyEngine::CopyEngineChannel::latAfterCompletion |
|
private |
Tick CopyEngine::CopyEngineChannel::latBeforeBegin |
|
private |
bool CopyEngine::CopyEngineChannel::refreshNext |
|
private |
bool CopyEngine::CopyEngineChannel::underReset |
|
private |
The documentation for this class was generated from the following files: