44#include "debug/QOS.hh"
46#include "params/QoSFixedPriorityPolicy.hh"
58 :
Policy(
p), defaultPriority(
p.qos_fixed_prio_default_prio)
96 DPRINTF(QOS,
"Requestor %s (RequestorID %d) not present in "
97 "priorityMap, assigning default priority %d\n",
Abstract superclass for simulation objects.
std::string getRequestorName(RequestorID requestor_id)
Get the name of an object for a given request id.
QoSFixedPriorityPolicyParams Params
void initRequestorObj(const SimObject *requestor, uint8_t priority)
Initialize the fixed requestor's priority by providing the requestor's SimObject pointer and priority...
virtual ~FixedPriorityPolicy()
const uint8_t defaultPriority
Default fixed priority value for non-listed requestors.
void init() override
init() is called after all C++ SimObjects have been created and all ports are connected.
FixedPriorityPolicy(const Params &)
std::map< RequestorID, uint8_t > priorityMap
Priority map, associates configured requestors with a fixed QoS priority value.
virtual uint8_t schedule(const RequestorID, const uint64_t) override
Schedules a packet based on fixed priority configuration.
void initRequestorName(std::string requestor, uint8_t priority)
Initialize the fixed requestor's priority by providing the requestor's name and priority value.
System * system() const
read the system pointer
MemCtrl * memCtrl
Pointer to parent memory controller implementing the policy.
std::pair< RequestorID, T > pair(Requestor requestor, T value)
Builds a RequestorID/value pair given a requestor input.
static SimObject * find(const char *name)
Find the SimObject with the given name and return a pointer to it.
Bitfield< 3, 0 > priority
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Declaration of a request, the overall memory request consisting of the parts of the request that are ...