Represents both memory requests and responses. More...
#include <simpleMem.h>
Public Types | |
enum | Command { Read, Write, ReadResp, WriteResp } |
Commands and responses possible with a Request object. More... | |
enum | Flags { F_NONCACHEABLE = 1<<1, F_LOCKED = 1<<2, F_LLSC = 1<<3, F_LLSC_RESP = 1<<4 } |
Flags to specify conditions on a Request. More... | |
typedef uint64_t | id_t |
typedef uint32_t | flags_t |
typedef std::vector< uint8_t > | dataVec |
Type of the payload or data. | |
Public Member Functions | |
Request (Command cmd, Addr addr, size_t size, dataVec &data, flags_t flags=0) | |
Constructor. | |
Request (Command cmd, Addr addr, size_t size, flags_t flags=0) | |
Constructor. | |
void | setGroupId (uint32_t _groupId) |
Set Stats Group Id. | |
void | setPayload (const std::vector< uint8_t > &data_in) |
Set the contents of the payload / data field. | |
void | setPayload (uint8_t *data_in, size_t len) |
Set the contents of the payload / data field. | |
void | setVirtualAddress (const Addr newVA) |
Set the virtual address associated with the operation. | |
uint64_t | getVirtualAddress () |
Get the virtual address associated with the operation. | |
void | setInstructionPointer (const Addr newIP) |
Addr | getInstructionPointer () |
Sets the instruction pointer associated with the operation. | |
Data Fields | |
Command | cmd |
Addr | addr |
size_t | size |
dataVec | data |
flags_t | flags |
id_t | id |
uint32_t | groupId |
Addr | instrPtr |
Addr | virtualAddr |
Represents both memory requests and responses.
typedef uint32_t SST::Interfaces::SimpleMem::Request::flags_t |
Flag type
typedef uint64_t SST::Interfaces::SimpleMem::Request::id_t |
Request ID type
Commands and responses possible with a Request object.
Flags to specify conditions on a Request.
Target address
Command to issue
Payload data (for Write, or ReadResp)
Referenced by setPayload().
Flags associated with this request or response
Unique ID to identify responses with requests
Instruction pointer associated with the operation
Referenced by getInstructionPointer().
Size of this request or response
Virtual address associated with the operation
Referenced by getVirtualAddress(), and setVirtualAddress().