From 5d6042a16abd25cb6097b1375cbe6f29bb3d3c05 Mon Sep 17 00:00:00 2001 From: Lukas Steiner Date: Tue, 27 Oct 2020 09:57:48 +0100 Subject: [PATCH] Renaming of payload IDs in arbiter. --- DRAMSys/library/src/simulation/Arbiter.cpp | 15 ++++----------- DRAMSys/library/src/simulation/Arbiter.h | 6 +++--- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/DRAMSys/library/src/simulation/Arbiter.cpp b/DRAMSys/library/src/simulation/Arbiter.cpp index 88fc03c6..c472f0be 100644 --- a/DRAMSys/library/src/simulation/Arbiter.cpp +++ b/DRAMSys/library/src/simulation/Arbiter.cpp @@ -53,7 +53,7 @@ Arbiter::Arbiter(sc_module_name name, std::string pathToAddressMapping) : { channelIsBusy.push_back(false); pendingRequests.push_back(std::queue()); - nextChannelPayloadID.push_back(0); + nextChannelPayloadIDToAppend.push_back(0); } // One or more devices can accesss all the memory units through the arbiter. @@ -101,12 +101,9 @@ tlm_sync_enum Arbiter::nb_transport_fw(int id, tlm_generic_payload &payload, // Initiated by dram side // This function is called when an arbiter's initiator socket receives a transaction from a memory controller -tlm_sync_enum Arbiter::nb_transport_bw(int channelId, tlm_generic_payload &payload, +tlm_sync_enum Arbiter::nb_transport_bw(int, tlm_generic_payload &payload, tlm_phase &phase, sc_time &bwDelay) { - // Check channel ID - assert(static_cast(channelId) == DramExtension::getExtension(payload).getChannel().ID()); - PRINTDEBUGMESSAGE(name(), "[bw] " + getPhaseName(phase) + " notification in " + bwDelay.to_string()); payloadEventQueue.notify(payload, phase, bwDelay); @@ -128,10 +125,6 @@ void Arbiter::peqCallback(tlm_generic_payload &payload, const tlm_phase &phase) unsigned int threadId = DramExtension::getExtension(payload).getThread().ID(); unsigned int channelId = DramExtension::getExtension(payload).getChannel().ID(); - // Check the valid range of thread ID and channel Id - // TODO: thread ID not checked - assert(channelId < Configuration::getInstance().memSpec->numberOfChannels); - // Phases initiated by the intiator side from arbiter's point of view (devices performing memory requests to the arbiter) if (phase == BEGIN_REQ) { @@ -235,6 +228,6 @@ void Arbiter::appendDramExtension(int socketId, tlm_generic_payload &payload, sc Channel(decodedAddress.channel), Rank(decodedAddress.rank), BankGroup(decodedAddress.bankgroup), Bank(decodedAddress.bank), Row(decodedAddress.row), Column(decodedAddress.column), - burstlength, nextThreadPayloadID[static_cast(socketId)]++, - nextChannelPayloadID[decodedAddress.channel]++); + burstlength, nextThreadPayloadIDToAppend[static_cast(socketId)]++, + nextChannelPayloadIDToAppend[decodedAddress.channel]++); } diff --git a/DRAMSys/library/src/simulation/Arbiter.h b/DRAMSys/library/src/simulation/Arbiter.h index 8a7266aa..43201b25 100644 --- a/DRAMSys/library/src/simulation/Arbiter.h +++ b/DRAMSys/library/src/simulation/Arbiter.h @@ -81,7 +81,7 @@ private: // Initiated by dram side // This function is called when an arbiter's initiator socket receives a transaction from a memory controller - tlm::tlm_sync_enum nb_transport_bw(int channelId, tlm::tlm_generic_payload &payload, + tlm::tlm_sync_enum nb_transport_bw(int, tlm::tlm_generic_payload &payload, tlm::tlm_phase &phase, sc_time &bwDelay); unsigned int transport_dbg(int /*id*/, tlm::tlm_generic_payload &trans); @@ -89,8 +89,8 @@ private: void peqCallback(tlm::tlm_generic_payload &payload, const tlm::tlm_phase &phase); void appendDramExtension(int socketId, tlm::tlm_generic_payload &payload, sc_time delay); - std::vector nextChannelPayloadID; - std::unordered_map nextThreadPayloadID; + std::vector nextChannelPayloadIDToAppend; + std::unordered_map nextThreadPayloadIDToAppend; }; #endif // ARBITER_H