43#include "params/QoSTurnaroundPolicyIdeal.hh"
69 for (uint8_t
i = 0;
i < num_priorities;
i++) {
72 uint8_t queue_idx = num_priorities -
i - 1;
79 if ((readq_size == 0) && (writeq_size == 0)) {
84 if (readq_size == 0) {
86 }
else if (writeq_size == 0) {
95 "QoSMemoryTurnaround::QoSTurnaroundPolicyIdeal - "
96 "QoS priority %d queues %d, %d triggering bus %s "
97 "in state %s\n", queue_idx, readq_size, writeq_size,
99 "turnaround" :
"staying",
BusState getBusState() const
Gets the current bus state.
uint64_t getReadQueueSize(const uint8_t prio) const
Gets a READ queue size.
uint8_t numPriorities() const
Gets the total number of priority levels in the QoS memory controller.
uint64_t getWriteQueueSize(const uint8_t prio) const
Gets a WRITE queue size.
virtual MemCtrl::BusState selectBusState() override
Bus Selection function.
virtual ~TurnaroundPolicyIdeal()
TurnaroundPolicyIdeal(const Params &)
Base class for QoS Bus Turnaround policies.
MemCtrl * memCtrl
Pointer to container object.
QoSTurnaroundPolicyParams Params
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.