GRLIB GRIOMMU Model
The GRIOMMU model is available in the GrIoMmu plugin.
Configuration
The model should be attached in two directions:
Firstly, IO-devices need to have their memory access interface references routed through the IOMMU.
To do this, connect the memory access iface ref in the device to IOMMUAccessIface in the IOMMU.
Secondly, the IOMMU needs to get access to the device’s AMBA PNP info.
The info is used to populate the MasterConfig registers.
To set the PNP info, attach it to the devicePnp array.
The IOMMUAccessIface and devicePnp array assumes that the same device indexes are used.
Not connecting devices the correct way is undefined behaviour.
// Connect command
connect a=iommu.devicePnp[0] b=device:ApbIface (1)
connect a=device.mem b=iommu:IOMMUAccessIface[0] (2)
// Or with assigmment syntax
iommu.devicePnp[0] = device:ApbIface (1)
device.mem = iommu:IOMMUAccessIface[0] (2)
| 1 | Index should match index on next line. |
| 2 | Index should match index on previous line. |
@GRIOMMU Reference
Properties
| Name | Type | Description |
|---|---|---|
Class |
*void |
Class object |
Component |
*void |
Pointer to component object if part of component |
LocalName |
*char |
Local name (in component, if applicable) |
LogMessageFlags |
uint64_t |
Per-object log message suppression flags |
LoggingFlags |
uint64_t |
Flags for logging info |
Name |
*char |
Object name |
ObjectID |
uint64_t |
Unique ObjectID. |
ReplayLoggingFlags |
uint64_t |
Replay-time category logging flags |
TimeSource |
*void |
Time source object |
GRIOMMU Reference
Properties
| Name | Type | Description |
|---|---|---|
AHBFASColdResetValue |
uint32_t |
AHB failing access register |
AHBFASForcedBits |
uint32_t |
AHB failing access register |
AHBFASForcedFlippedBits |
uint32_t |
AHB failing access register |
AHBFASReadMask |
uint32_t |
AHB failing access register |
AHBFASResetMask |
uint32_t |
AHB failing access register |
AHBFASResetValue |
uint32_t |
AHB failing access register |
AHBFASWriteMask |
uint32_t |
AHB failing access register |
CTRLColdResetValue |
uint32_t |
Control register |
CTRLForcedBits |
uint32_t |
Control register |
CTRLForcedFlippedBits |
uint32_t |
Control register |
CTRLReadMask |
uint32_t |
Control register |
CTRLResetMask |
uint32_t |
Control register |
CTRLResetValue |
uint32_t |
Control register |
CTRLWriteMask |
uint32_t |
Control register |
Class |
*void |
Class object |
Component |
*void |
Pointer to component object if part of component |
DERRIColdResetValue |
uint32_t |
Data RAM error injection register |
DERRIForcedBits |
uint32_t |
Data RAM error injection register |
DERRIForcedFlippedBits |
uint32_t |
Data RAM error injection register |
DERRIReadMask |
uint32_t |
Data RAM error injection register |
DERRIResetMask |
uint32_t |
Data RAM error injection register |
DERRIResetValue |
uint32_t |
Data RAM error injection register |
DERRIWriteMask |
uint32_t |
Data RAM error injection register |
DIAGCTRLColdResetValue |
uint32_t |
Diagnostic cache access register |
DIAGCTRLForcedBits |
uint32_t |
Diagnostic cache access register |
DIAGCTRLForcedFlippedBits |
uint32_t |
Diagnostic cache access register |
DIAGCTRLReadMask |
uint32_t |
Diagnostic cache access register |
DIAGCTRLResetMask |
uint32_t |
Diagnostic cache access register |
DIAGCTRLResetValue |
uint32_t |
Diagnostic cache access register |
DIAGCTRLWriteMask |
uint32_t |
Diagnostic cache access register |
DIAGTColdResetValue |
uint32_t |
Diagnostic cache access tag register |
DIAGTForcedBits |
uint32_t |
Diagnostic cache access tag register |
DIAGTForcedFlippedBits |
uint32_t |
Diagnostic cache access tag register |
DIAGTReadMask |
uint32_t |
Diagnostic cache access tag register |
DIAGTResetMask |
uint32_t |
Diagnostic cache access tag register |
DIAGTResetValue |
uint32_t |
Diagnostic cache access tag register |
DIAGTWriteMask |
uint32_t |
Diagnostic cache access tag register |
FLUSHColdResetValue |
uint32_t |
TLB/cache flush register |
FLUSHForcedBits |
uint32_t |
TLB/cache flush register |
FLUSHForcedFlippedBits |
uint32_t |
TLB/cache flush register |
FLUSHReadMask |
uint32_t |
TLB/cache flush register |
FLUSHResetMask |
uint32_t |
TLB/cache flush register |
FLUSHResetValue |
uint32_t |
TLB/cache flush register |
FLUSHWriteMask |
uint32_t |
TLB/cache flush register |
IMASKColdResetValue |
uint32_t |
Interrupt mask register |
IMASKForcedBits |
uint32_t |
Interrupt mask register |
IMASKForcedFlippedBits |
uint32_t |
Interrupt mask register |
IMASKReadMask |
uint32_t |
Interrupt mask register |
IMASKResetMask |
uint32_t |
Interrupt mask register |
IMASKResetValue |
uint32_t |
Interrupt mask register |
IMASKWriteMask |
uint32_t |
Interrupt mask register |
LocalName |
*char |
Local name (in component, if applicable) |
LogMessageFlags |
uint64_t |
Per-object log message suppression flags |
LoggingFlags |
uint64_t |
Flags for logging info |
Name |
*char |
Object name |
ObjectID |
uint64_t |
Unique ObjectID. |
ReplayLoggingFlags |
uint64_t |
Replay-time category logging flags |
STATUSColdResetValue |
uint32_t |
Status register |
STATUSForcedBits |
uint32_t |
Status register |
STATUSForcedFlippedBits |
uint32_t |
Status register |
STATUSReadMask |
uint32_t |
Status register |
STATUSResetMask |
uint32_t |
Status register |
STATUSResetValue |
uint32_t |
Status register |
STATUSWriteMask |
uint32_t |
Status register |
TERRIColdResetValue |
uint32_t |
Tag RAM error injection register |
TERRIForcedBits |
uint32_t |
Tag RAM error injection register |
TERRIForcedFlippedBits |
uint32_t |
Tag RAM error injection register |
TERRIReadMask |
uint32_t |
Tag RAM error injection register |
TERRIResetMask |
uint32_t |
Tag RAM error injection register |
TERRIResetValue |
uint32_t |
Tag RAM error injection register |
TERRIWriteMask |
uint32_t |
Tag RAM error injection register |
TimeSource |
*void |
Time source object |
abhFailingAccess |
uint32_t |
AHB failing access register |
asmpAccessControl |
[uint32_t; 4] |
ASMP access control register |
capbility |
[uint32_t; 3] |
Capability register |
config.interrupt |
uint8_t |
Interrupt number |
config.littleEndian |
uint8_t |
Endianess of memory interface. |
control |
uint32_t |
Control register |
dataRamErrorInjection |
uint32_t |
Data RAM error injection register |
devicePnp |
[temu_IfaceRef; 16]/ <unknown> |
Devices under IOMMU control |
diagnosticCacheAccess |
uint32_t |
Diagnostic cache access register |
diagnosticCacheAccessData |
[uint32_t; 8] |
Diagnostic cache access data register |
diagnosticCacheAccessTag |
uint32_t |
Diagnostic cache access tag register |
groupConfig |
[uint32_t; 16] |
Group control register |
irq |
temu_IfaceRef/ <unknown> |
ASMP access control register |
irqMask |
uint32_t |
Interrupt mask register |
masterConfig |
[uint32_t; 16] |
Master configuration register |
masterPnp.bar |
[uint32_t; 4] |
AMBA plug and play base address register |
masterPnp.ident |
uint32_t |
AMBA plug and play config word |
masterPnp.user |
[uint32_t; 3] |
AMBA plug and play user words |
mem |
temu_IfaceRef/ <unknown> |
Main memory bus |
secondaryMasterPnp.bar |
[uint32_t; 4] |
AMBA plug and play base address register |
secondaryMasterPnp.ident |
uint32_t |
AMBA plug and play config word |
secondaryMasterPnp.user |
[uint32_t; 3] |
AMBA plug and play user words |
slavePnp.bar |
[uint32_t; 4] |
AMBA plug and play base address register |
slavePnp.ident |
uint32_t |
AMBA plug and play config word |
slavePnp.user |
[uint32_t; 3] |
AMBA plug and play user words |
status |
uint32_t |
Status register |
tagRamErrorInjection |
uint32_t |
Tag RAM error injection register |
tlbCacheFlush |
uint32_t |
TLB/cache flush register |
Interfaces
| Name | Type | Description |
|---|---|---|
DeviceIface |
DeviceIface |
|
IOMMUAccessIface |
MemAccessIface |
IOMMU memory access interfaces |
MasterAhbIface |
AhbIface |
Master AHB interfaces |
MemAccessIface |
MemAccessIface |
|
RegisterIface |
temu::RegisterIface |
Auto-generated Register Interface Impl. |
ResetIface |
ResetIface |
|
SlaveAhbIface |
AhbIface |
Registers
| Register support is currently experimental! |
Register Bank Regs
Register CTRL
- Description
-
Control register
- Reset value
-
0x00000000
- Warm reset mask
-
0x001fffff
| Field | Mask | Reset | Description |
|---|---|---|---|
PGSZ |
|
|
Page size |
LB |
|
|
Lookup bus |
SP |
|
|
SPLIT support |
ITR |
|
|
IOMMU translation range |
DP |
|
|
Disable prefetch |
SIV |
|
|
Save invalid IOPTE |
HPROT |
|
|
HPROT encoding |
AU |
|
|
Always update |
WP |
|
|
Write protection only |
DM |
|
|
Diagnostic mode |
GS |
|
|
Group-set-addressing |
CE |
|
|
Cache/TLB enable |
PM |
|
|
Protection mode |
EN |
|
|
Enable |
Register FLUSH
- Description
-
TLB/cache flush register
- Reset value
-
0x00000000
- Warm reset mask
-
0x000000f3
| Field | Mask | Reset | Description |
|---|---|---|---|
FGRP |
|
|
Flush group |
GF |
|
|
Group flush |
F |
|
|
Flush |
Register STATUS
- Description
-
Status register
- Reset value
-
0x00000000
- Warm reset mask
-
0x00000000
| Field | Mask | Reset | Description |
|---|---|---|---|
PE |
|
|
Parity error |
DE |
|
|
Diagnostic mode enabled |
FC |
|
|
Flush completed |
FL |
|
|
Flush started |
AD |
|
|
Access denied |
TE |
|
|
Translation error |
Register IMASK
- Description
-
Interrupt mask register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0000002f
| Field | Mask | Reset | Description |
|---|---|---|---|
PEI |
|
|
Parity error interrupt |
FCI |
|
|
Flush completed interrupt |
FLI |
|
|
Flush started interrupt |
ADI |
|
|
Access denied interrupt |
TEI |
|
|
Translation error interrupt |
Register AHBFAS
- Description
-
AHB failing access register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
FADDR |
|
|
Failing address |
FW |
|
|
Failing write |
FMASTER |
|
|
Failing master |
Register DIAGCTRL
- Description
-
Diagnostic cache access register
- Reset value
-
0x00000000
- Warm reset mask
-
0xc037ffff
| Field | Mask | Reset | Description |
|---|---|---|---|
DA |
|
|
Diagnostic access |
RW |
|
|
Read/write |
DP |
|
|
Data parity error |
TP |
|
|
Tag parity error |
SETADDR |
|
|
Cache set address |
Register DIAGT
- Description
-
Diagnostic cache access tag register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
TAG |
|
|
Cache tag |
V |
|
|
Valid |
Register DERRI
- Description
-
Data RAM error injection register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
DPERRINJ |
|
|
Data RAM parity error injection |
Register TERRI
- Description
-
Tag RAM error injection register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
TPERRINJ |
|
|
Tag RAM parity error injection |
Register CAP
- Description
-
Capability register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
VALUE |
|
|
Capability register value |
Register CAP
- Description
-
Capability register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
VALUE |
|
|
Capability register value |
Register CAP
- Description
-
Capability register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
VALUE |
|
|
Capability register value |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register MSTCFG
- Description
-
Master configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffff01f
| Field | Mask | Reset | Description |
|---|---|---|---|
VENDOR |
|
|
GRLIB plug and play vendor ID |
DEVICE |
|
|
GRLIB plug and play device ID |
BS |
|
|
Bus select for master |
GROUP |
|
|
Group assignment for master |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register GRPCTRL
- Description
-
Group control register
- Reset value
-
0x00000000
- Warm reset mask
-
0xfffffff3
| Field | Mask | Reset | Description |
|---|---|---|---|
BASE |
|
|
Base address |
P |
|
|
Pass-through |
AG |
|
|
Active group |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register DIAGD
- Description
-
Diagnostic cache access data register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
CDATA |
|
|
Cache data word |
Register ASMPCTRL
- Description
-
ASMP access control register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0007ffff
| Field | Mask | Reset | Description |
|---|---|---|---|
FC |
|
|
Flush register access control |
SC |
|
|
Status register access control |
MC |
|
|
Mask register access control |
GRPACCSZCTRL |
|
|
Group control register access control |
Register ASMPCTRL
- Description
-
ASMP access control register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0007ffff
| Field | Mask | Reset | Description |
|---|---|---|---|
FC |
|
|
Flush register access control |
SC |
|
|
Status register access control |
MC |
|
|
Mask register access control |
GRPACCSZCTRL |
|
|
Group control register access control |
Register ASMPCTRL
- Description
-
ASMP access control register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0007ffff
| Field | Mask | Reset | Description |
|---|---|---|---|
FC |
|
|
Flush register access control |
SC |
|
|
Status register access control |
MC |
|
|
Mask register access control |
GRPACCSZCTRL |
|
|
Group control register access control |
Register ASMPCTRL
- Description
-
ASMP access control register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0007ffff
| Field | Mask | Reset | Description |
|---|---|---|---|
FC |
|
|
Flush register access control |
SC |
|
|
Status register access control |
MC |
|
|
Mask register access control |
GRPACCSZCTRL |
|
|
Group control register access control |
Limitations
-
Read and write combining is not simulated
-
Bus select is ignored, only one memory space is used for memory and processor.
-
APV and TLB caches are not implemented at the moment.
-
Flushes are instantaneous. This means that the FLI and FCI will only result in one actual interrupt being raised.