gem5  v22.1.0.0
Protected Member Functions | Friends | List of all members
gem5::FunctionalRequestProtocol Class Referenceabstract

#include <functional.hh>

Inheritance diagram for gem5::FunctionalRequestProtocol:
gem5::PortProxy gem5::RequestPort gem5::TranslatingPortProxy gem5::AddrMapper::MapperRequestPort gem5::AtomicSimpleCPU::AtomicCPUPort gem5::BaseKvmCPU::KVMCpuPort gem5::BaseTrafficGen::TrafficGenPort gem5::Bridge::BridgeRequestPort gem5::CoherentXBar::CoherentXBarRequestPort gem5::CoherentXBar::SnoopRespPort gem5::CommMonitor::MonitorRequestPort gem5::ComputeUnit::DTLBPort gem5::ComputeUnit::DataPort gem5::ComputeUnit::ITLBPort gem5::ComputeUnit::LDSPort gem5::ComputeUnit::SQCPort gem5::ComputeUnit::ScalarDTLBPort gem5::ComputeUnit::ScalarDataPort gem5::DmaPort gem5::ExternalMaster::ExternalPort gem5::GUPSGen::GenPort gem5::GarnetSyntheticTraffic::CpuPort gem5::Gicv3Its::DataPort gem5::MasterPort gem5::MemCheckerMonitor::MonitorRequestPort gem5::MemTest::CpuPort gem5::MinorCPU::MinorCPUPort gem5::NoncoherentXBar::NoncoherentXBarRequestPort gem5::PortTerminator::ReqPort gem5::ProtocolTester::SeqPort gem5::QueuedRequestPort gem5::RiscvISA::Walker::WalkerPort gem5::RubyDirectedTester::CpuPort gem5::RubyTester::CpuPort gem5::SMMURequestPort gem5::SMMUTableWalkPort gem5::SerialLink::SerialLinkRequestPort gem5::SimpleCache::MemSidePort gem5::SimpleMemobj::MemSidePort gem5::SysBridge::SysBridgeTargetPort gem5::System::SystemPort gem5::TLBCoalescer::MemSidePort gem5::ThreadBridge::OutgoingPort gem5::TimingSimpleCPU::TimingCPUPort gem5::TokenRequestPort gem5::TraceCPU::DcachePort gem5::TraceCPU::IcachePort gem5::VegaISA::GpuTLB::MemSidePort gem5::VegaISA::Walker::WalkerPort gem5::VegaTLBCoalescer::MemSidePort gem5::X86ISA::GpuTLB::MemSidePort gem5::X86ISA::Walker::WalkerPort gem5::o3::Fetch::IcachePort gem5::o3::LSQ::DcachePort gem5::ruby::AbstractController::MemoryPort sc_gem5::TlmToGem5Bridge< BITWIDTH >::BridgeRequestPort

Protected Member Functions

void send (FunctionalResponseProtocol *peer, PacketPtr pkt) const
 Send a functional request packet, where the data is instantly updated everywhere in the memory system, without affecting the current state of any block or moving the block. More...
 
virtual void recvFunctionalSnoop (PacketPtr pkt)=0
 Receive a functional snoop request packet from the peer. More...
 

Friends

class FunctionalResponseProtocol
 

Detailed Description

Definition at line 51 of file functional.hh.

Member Function Documentation

◆ recvFunctionalSnoop()

virtual void gem5::FunctionalRequestProtocol::recvFunctionalSnoop ( PacketPtr  pkt)
protectedpure virtual

◆ send()

void gem5::FunctionalRequestProtocol::send ( FunctionalResponseProtocol peer,
PacketPtr  pkt 
) const
protected

Send a functional request packet, where the data is instantly updated everywhere in the memory system, without affecting the current state of any block or moving the block.

Parameters
pktPacket to send.

Definition at line 49 of file functional.cc.

References gem5::Packet::isRequest(), and gem5::FunctionalResponseProtocol::recvFunctional().

Referenced by gem5::RequestPort::sendFunctional().

Friends And Related Function Documentation

◆ FunctionalResponseProtocol

friend class FunctionalResponseProtocol
friend

Definition at line 53 of file functional.hh.


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

Generated on Wed Dec 21 2022 10:23:28 for gem5 by doxygen 1.9.1