Memory Space
The Memory Space manages the physical memory map of the processors. In addition, it manages code caches for both the interpreter and the translator.
@MemorySpace Reference
MemorySpace Reference
Properties
Name | Type | Description |
---|---|---|
Class |
*void |
Class object |
Component |
*void |
Pointer to component object if part of component |
LoggingFlags |
uint64_t |
Flags for logging info |
Name |
*char |
Object name |
TimeSource |
*void |
Time source object |
absentHandlers |
temu_IfaceRef/ <unknown> |
Absent handlers invoked on accesses to unmapped memory. |
breakWatchHandlers |
temu_IfaceRef/ <unknown> |
Break- and watchpoint handlers invoked on break-/watchpoint hits. |
config.noRemapping |
uint8_t |
|
config.processorCount |
uint32_t |
Max number of processors. |
config.processorHasSync |
uint8_t |
|
cpus |
temu_IfaceRefArray |
|
faultyHandlers |
temu_IfaceRef/ <unknown> |
Faulty handlers invoked on faulty (uncorrectable error) memory access. |
invalidaccess |
temu_IfaceRef/ <unknown> |
Invalid memory access interface. |
postTransaction |
temu_IfaceRef/ <unknown> |
Post transaction interface invoked after transaction has effect. |
preTransaction |
temu_IfaceRef/ <unknown> |
Pre transaction interface invoked before transaction has effect. |
target |
temu_IfaceRef/ <unknown> |
Target execution interface. |
upsetHandlers |
temu_IfaceRef/ <unknown> |
Upset handlers invoked on upset (correctable error) memory access. |
user1Handlers |
temu_IfaceRef/ <unknown> |
User handlers invoked on User1 flagged memory access. |
user2Handlers |
temu_IfaceRef/ <unknown> |
User handlers invoked on User2 flagged memory access. |
user3Handlers |
temu_IfaceRef/ <unknown> |
User handlers invoked on User3 flagged memory access. |
Interfaces
Name | Type | Description |
---|---|---|
DebuggerAttachIface |
temu::DebuggerAttachIface |
|
MemAccessIface |
MemAccessIface |
|
MemMapEntryIface |
MemMapEntryIface |
|
MemoryIface |
MemoryIface |
|
MemorySpaceIface |
temu::MemorySpaceIface |
|
ObjectIface |
ObjectIface |
|
PDCIface |
PDCIface |
Commands
Name | Description |
---|---|
clear-attr |
Clear attribute |
delete |
Dispose instance of MemorySpace |
disable-io-perf |
Enable performance collection for I/Os. |
disable-remapping-support |
Disable support for remapped pages |
disable-spinlocks |
Disable spinlocks for I/O locks instead of normal mutexes. |
dump |
Dump memory |
enable-experimental-io-perf |
Enable performance collection for I/Os. |
enable-experimental-spinlocks |
Enable spinlocks for I/O locks instead of normal mutexes. |
enable-io-perf |
Enable performance collection for I/Os. |
enable-remapping-support |
Enable support for remapped pages (default) |
enable-spinlocks |
Enable spinlocks for I/O locks instead of normal mutexes. |
inject-read |
Inject read transaction |
inject-write |
Inject transaction |
io-break |
Break on I/O model device accesses |
map |
Map in device |
pstat |
Print memory space statistics |
set-attr |
Set attribute |
trace-accesses |
Trace I/O model device accesses |
unmap |
Unmap devices |
write |
Write memory |
Command clear-attr Arguments
Name | Type | Required | Description |
---|---|---|---|
addr |
int |
yes |
Address to write device. |
attr |
string |
yes |
Attribute to set |
length |
int |
yes |
Length of item to write in bytes (default = 4). |
Command dump Arguments
Name | Type | Required | Description |
---|---|---|---|
addr |
int |
yes |
Address to map device. |
length |
int |
no |
Length of address mapping in bytes (default = 16). |
swap |
int |
no |
Swap bytes value is log size of swap unit (0-3), default = 0 |
Command inject-read Arguments
Name | Type | Required | Description |
---|---|---|---|
pa |
int |
no |
Physical address of transaction. |
size |
int |
no |
Transaction unit size (default = 2 (4 bytes)). |
va |
int |
yes |
Virtual address of transaction. |
Command inject-write Arguments
Name | Type | Required | Description |
---|---|---|---|
pa |
int |
no |
Physical address of transaction. |
size |
int |
no |
Transaction unit size (default = 2 (4 bytes)). |
va |
int |
yes |
Virtual address of transaction. |
value |
int |
no |
Value to write (default = 0) |
Command io-break Arguments
Name | Type | Required | Description |
---|---|---|---|
device |
object |
yes |
Device to break on accesses to. |
Command map Arguments
Name | Type | Required | Description |
---|---|---|---|
addr |
int |
yes |
Address to map device. |
iface |
interface |
yes |
Memory access interface. |
length |
int |
yes |
Length of address mapping in bytes. |
Command set-attr Arguments
Name | Type | Required | Description |
---|---|---|---|
addr |
int |
yes |
Address to write device. |
attr |
string |
yes |
Attribute to set |
length |
int |
yes |
Length of item to write in bytes (default = 4). |
Command trace-accesses Arguments
Name | Type | Required | Description |
---|---|---|---|
device |
object |
yes |
Device to trace accesses to. |