Go to the documentation of this file.
44 #ifndef __MEM_DRAMSIM3_WRAPPER_HH__
45 #define __MEM_DRAMSIM3_WRAPPER_HH__
82 const std::string& file_name)
const;
94 const std::string& working_dir,
95 std::function<
void(uint64_t)> read_cb,
96 std::function<
void(uint64_t)> write_cb);
115 void setCallbacks(std::function<
void(uint64_t)> read_complete,
116 std::function<
void(uint64_t)> write_complete);
160 #endif //__MEM_DRAMSIM3_WRAPPER_HH__
unsigned int queueSize() const
Get the transaction queue size used by DRAMsim3.
void printStats()
Print the stats gathered in DRAMsim3.
unsigned int burstSize() const
Get the burst size in bytes used by DRAMsim3.
double clockPeriod() const
Get the internal clock period used by DRAMsim3, specified in ns.
Wrapper class to avoid having DRAMsim3 names like ClockDomain etc clashing with the normal gem5 world...
void resetStats()
Reset stats (useful for fastforwarding switch)
void enqueue(uint64_t addr, bool is_write)
Enqueue a packet.
void setCallbacks(std::function< void(uint64_t)> read_complete, std::function< void(uint64_t)> write_complete)
Set the callbacks to use for read and write completion.
Forward declaration to avoid includes.
dramsim3::MemorySystem * dramsim
DRAMsim3Wrapper(const std::string &config_file, const std::string &working_dir, std::function< void(uint64_t)> read_cb, std::function< void(uint64_t)> write_cb)
Create an instance of the DRAMsim3 multi-channel memory controller using a specific config and system...
void tick()
Progress the memory controller one cycle.
bool canAccept(uint64_t addr, bool is_write) const
Determine if the controller can accept a new packet or not.
T extractConfig(const std::string &field_name, const std::string &file_name) const
Generated on Wed Sep 30 2020 14:02:13 for gem5 by doxygen 1.8.17