|
ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
|
Memory word faulter class template word_t.
More...
#include <MemoryManipulationSystem.h>


Public Member Functions | |
| virtual etiss::int32 | pop (size_t address) |
pop the last added element from the memory stack and write it to memory address | |
| virtual etiss::int32 | push (size_t address) |
read memory from address and push it to memory stack | |
| virtual etiss::int32 | rmw (size_t address, MemOp op, etiss::uint64 mod_val) |
read-modify-write memory word at address with mod_val by bit-wise operation op mod_val is type casted to word_t | |
| virtual etiss::int32 | rrmw (size_t dstsrc1_address, MemOp op, size_t src2_address) |
read-readmodify-write memory word at dstsrc1_address with memory word at src2_address by bit-wise operation op | |
| MemoryWordManipulator (std::function< word_t(size_t address, etiss::int32 &return_code)> const &mem_read_word, std::function< void(size_t address, word_t val, etiss::int32 &return_code)> const &mem_write_word) | |
Constructor taking mem_read_word and mem_write_word functions for memory fault action. | |
Private Attributes | |
| std::function< word_t(size_t address, etiss::int32 &return_code)> | mem_read_word_ |
| function to read a single word from memory | |
| std::function< void(size_t address, word_t val, etiss::int32 &return_code)> | mem_write_word_ |
| function to write a single word to memory | |
| std::stack< word_t > | memstack_ {} |
| memory stack to allow read modify write manipulations to memory | |
Additional Inherited Members | |
Public Types inherited from etiss::MemoryWordManipulatorBase | |
| typedef MM_MemOpType | mem_op_t |
| typedef MM_MemManipCmd | mem_manip_cmd_t |
| Memory operation type code. | |
Memory word faulter class template word_t.
Definition at line 72 of file MemoryManipulationSystem.h.
| etiss::MemoryWordManipulator< word_t >::MemoryWordManipulator | ( | std::function< word_t(size_t address, etiss::int32 &return_code)> const & | mem_read_word, |
| std::function< void(size_t address, word_t val, etiss::int32 &return_code)> const & | mem_write_word | ||
| ) |
Constructor taking mem_read_word and mem_write_word functions for memory fault action.
Definition at line 204 of file MemoryManipulationSystem.h.
|
virtual |
pop the last added element from the memory stack and write it to memory address
Implements etiss::MemoryWordManipulatorBase.
Definition at line 159 of file MemoryManipulationSystem.h.
|
virtual |
read memory from address and push it to memory stack
Implements etiss::MemoryWordManipulatorBase.
Definition at line 168 of file MemoryManipulationSystem.h.
|
virtual |
read-modify-write memory word at address with mod_val by bit-wise operation op mod_val is type casted to word_t
Implements etiss::MemoryWordManipulatorBase.
Definition at line 176 of file MemoryManipulationSystem.h.
|
virtual |
read-readmodify-write memory word at dstsrc1_address with memory word at src2_address by bit-wise operation op
Implements etiss::MemoryWordManipulatorBase.
Definition at line 188 of file MemoryManipulationSystem.h.
|
private |
function to read a single word from memory
Definition at line 75 of file MemoryManipulationSystem.h.
|
private |
function to write a single word to memory
Definition at line 77 of file MemoryManipulationSystem.h.
|
private |
memory stack to allow read modify write manipulations to memory
Definition at line 79 of file MemoryManipulationSystem.h.