gem5
|
A DRAM packet stores packets along with the timestamp of when the packet entered the queue, and also the decoded address. More...
Public Member Functions | |
DRAMPacket (PacketPtr _pkt, bool is_read, uint8_t _rank, uint8_t _bank, uint32_t _row, uint16_t bank_id, Addr _addr, unsigned int _size, Bank &bank_ref, Rank &rank_ref) | |
Public Attributes | |
const Tick | entryTime |
When did request enter the controller. More... | |
Tick | readyTime |
When will request leave the controller. More... | |
const PacketPtr | pkt |
This comes from the outside world. More... | |
const bool | isRead |
const uint8_t | rank |
Will be populated by address decoder. More... | |
const uint8_t | bank |
const uint32_t | row |
const uint16_t | bankId |
Bank id is calculated considering banks in all the ranks eg: 2 ranks each with 8 banks, then bankId = 0 –> rank0, bank0 and bankId = 8 –> rank1, bank0. More... | |
Addr | addr |
The starting address of the DRAM packet. More... | |
unsigned int | size |
The size of this dram packet in bytes It is always equal or smaller than DRAM burst size. More... | |
BurstHelper * | burstHelper |
A pointer to the BurstHelper if this DRAMPacket is a split packet If not a split packet (common case), this is set to NULL. More... | |
Bank & | bankRef |
Rank & | rankRef |
A DRAM packet stores packets along with the timestamp of when the packet entered the queue, and also the decoded address.
Definition at line 621 of file dram_ctrl.hh.
|
inline |
Definition at line 670 of file dram_ctrl.hh.
Addr DRAMCtrl::DRAMPacket::addr |
The starting address of the DRAM packet.
This address could be unaligned to burst size boundaries. The reason is to keep the address offset so we can accurately check incoming read packets with packets in the write queue.
Definition at line 654 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess(), and DRAMCtrl::processNextReqEvent().
const uint8_t DRAMCtrl::DRAMPacket::bank |
Definition at line 638 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess().
const uint16_t DRAMCtrl::DRAMPacket::bankId |
Bank id is calculated considering banks in all the ranks eg: 2 ranks each with 8 banks, then bankId = 0 –> rank0, bank0 and bankId = 8 –> rank1, bank0.
Definition at line 646 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess(), and DRAMCtrl::reorderQueue().
Bank& DRAMCtrl::DRAMPacket::bankRef |
Definition at line 667 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess(), and DRAMCtrl::reorderQueue().
BurstHelper* DRAMCtrl::DRAMPacket::burstHelper |
A pointer to the BurstHelper if this DRAMPacket is a split packet If not a split packet (common case), this is set to NULL.
Definition at line 666 of file dram_ctrl.hh.
Referenced by DRAMCtrl::addToReadQueue(), and DRAMCtrl::processRespondEvent().
const Tick DRAMCtrl::DRAMPacket::entryTime |
When did request enter the controller.
Definition at line 626 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess().
const bool DRAMCtrl::DRAMPacket::isRead |
Definition at line 634 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess().
const PacketPtr DRAMCtrl::DRAMPacket::pkt |
This comes from the outside world.
Definition at line 632 of file dram_ctrl.hh.
Referenced by DRAMCtrl::processRespondEvent().
const uint8_t DRAMCtrl::DRAMPacket::rank |
Will be populated by address decoder.
Definition at line 637 of file dram_ctrl.hh.
Referenced by DRAMCtrl::chooseNext(), DRAMCtrl::doDRAMAccess(), DRAMCtrl::processNextReqEvent(), and DRAMCtrl::processRespondEvent().
Rank& DRAMCtrl::DRAMPacket::rankRef |
Definition at line 668 of file dram_ctrl.hh.
Referenced by DRAMCtrl::addToReadQueue(), DRAMCtrl::addToWriteQueue(), DRAMCtrl::doDRAMAccess(), DRAMCtrl::processNextReqEvent(), DRAMCtrl::processRespondEvent(), and DRAMCtrl::reorderQueue().
Tick DRAMCtrl::DRAMPacket::readyTime |
When will request leave the controller.
Definition at line 629 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess(), and DRAMCtrl::processNextReqEvent().
const uint32_t DRAMCtrl::DRAMPacket::row |
Definition at line 639 of file dram_ctrl.hh.
Referenced by DRAMCtrl::doDRAMAccess(), and DRAMCtrl::reorderQueue().
unsigned int DRAMCtrl::DRAMPacket::size |
The size of this dram packet in bytes It is always equal or smaller than DRAM burst size.
Definition at line 660 of file dram_ctrl.hh.
Referenced by DRAMCtrl::processNextReqEvent().