GRLIB MEMSCRUB Model
The MEMSCRUB device is part of the GRLIB IP library.
It is available in libTEMUMEMSCRUB.so.
@MEMSCRUB 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 |
MEMSCRUB Reference
Properties
| Name | Type | Description |
|---|---|---|
AHBERC |
uint32_t |
AHB Error configuration register |
AHBERCColdResetValue |
uint32_t |
AHB Error configuration register |
AHBERCForcedBits |
uint32_t |
AHB Error configuration register |
AHBERCForcedFlippedBits |
uint32_t |
AHB Error configuration register |
AHBERCReadMask |
uint32_t |
AHB Error configuration register |
AHBERCResetMask |
uint32_t |
AHB Error configuration register |
AHBERCResetValue |
uint32_t |
AHB Error configuration register |
AHBERCWriteMask |
uint32_t |
AHB Error configuration register |
AHBFAR |
uint32_t |
AHB Failing Address Register |
AHBFARColdResetValue |
uint32_t |
AHB Failing Address Register |
AHBFARForcedBits |
uint32_t |
AHB Failing Address Register |
AHBFARForcedFlippedBits |
uint32_t |
AHB Failing Address Register |
AHBFARReadMask |
uint32_t |
AHB Failing Address Register |
AHBFARResetMask |
uint32_t |
AHB Failing Address Register |
AHBFARResetValue |
uint32_t |
AHB Failing Address Register |
AHBFARWriteMask |
uint32_t |
AHB Failing Address Register |
AHBS |
uint32_t |
AHB Status register |
AHBSColdResetValue |
uint32_t |
AHB Status register |
AHBSForcedBits |
uint32_t |
AHB Status register |
AHBSForcedFlippedBits |
uint32_t |
AHB Status register |
AHBSReadMask |
uint32_t |
AHB Status register |
AHBSResetMask |
uint32_t |
AHB Status register |
AHBSResetValue |
uint32_t |
AHB Status register |
AHBSWriteMask |
uint32_t |
AHB Status register |
CONFIG |
uint32_t |
Configuration register |
CONFIGColdResetValue |
uint32_t |
Configuration register |
CONFIGForcedBits |
uint32_t |
Configuration register |
CONFIGForcedFlippedBits |
uint32_t |
Configuration register |
CONFIGReadMask |
uint32_t |
Configuration register |
CONFIGResetMask |
uint32_t |
Configuration register |
CONFIGResetValue |
uint32_t |
Configuration register |
CONFIGWriteMask |
uint32_t |
Configuration register |
Class |
*void |
Class object |
Component |
*void |
Pointer to component object if part of component |
ETHRES |
uint32_t |
Error threshold register |
ETHRESColdResetValue |
uint32_t |
Error threshold register |
ETHRESForcedBits |
uint32_t |
Error threshold register |
ETHRESForcedFlippedBits |
uint32_t |
Error threshold register |
ETHRESReadMask |
uint32_t |
Error threshold register |
ETHRESResetMask |
uint32_t |
Error threshold register |
ETHRESResetValue |
uint32_t |
Error threshold register |
ETHRESWriteMask |
uint32_t |
Error threshold register |
INIT |
uint32_t |
Initialisation data register |
INITColdResetValue |
uint32_t |
Initialisation data register |
INITForcedBits |
uint32_t |
Initialisation data register |
INITForcedFlippedBits |
uint32_t |
Initialisation data register |
INITReadMask |
uint32_t |
Initialisation data register |
INITResetMask |
uint32_t |
Initialisation data register |
INITResetValue |
uint32_t |
Initialisation data register |
INITWriteMask |
uint32_t |
Initialisation data 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. |
POS |
uint32_t |
Position register |
POSColdResetValue |
uint32_t |
Position register |
POSForcedBits |
uint32_t |
Position register |
POSForcedFlippedBits |
uint32_t |
Position register |
POSReadMask |
uint32_t |
Position register |
POSResetMask |
uint32_t |
Position register |
POSResetValue |
uint32_t |
Position register |
POSWriteMask |
uint32_t |
Position register |
RANGEH |
uint32_t |
Range high address register |
RANGEH2 |
uint32_t |
Second range high address register |
RANGEH2ColdResetValue |
uint32_t |
Second range high address register |
RANGEH2ForcedBits |
uint32_t |
Second range high address register |
RANGEH2ForcedFlippedBits |
uint32_t |
Second range high address register |
RANGEH2ReadMask |
uint32_t |
Second range high address register |
RANGEH2ResetMask |
uint32_t |
Second range high address register |
RANGEH2ResetValue |
uint32_t |
Second range high address register |
RANGEH2WriteMask |
uint32_t |
Second range high address register |
RANGEHColdResetValue |
uint32_t |
Range high address register |
RANGEHForcedBits |
uint32_t |
Range high address register |
RANGEHForcedFlippedBits |
uint32_t |
Range high address register |
RANGEHReadMask |
uint32_t |
Range high address register |
RANGEHResetMask |
uint32_t |
Range high address register |
RANGEHResetValue |
uint32_t |
Range high address register |
RANGEHWriteMask |
uint32_t |
Range high address register |
RANGEL |
uint32_t |
Range low address register |
RANGEL2 |
uint32_t |
Second range low address register |
RANGEL2ColdResetValue |
uint32_t |
Second range low address register |
RANGEL2ForcedBits |
uint32_t |
Second range low address register |
RANGEL2ForcedFlippedBits |
uint32_t |
Second range low address register |
RANGEL2ReadMask |
uint32_t |
Second range low address register |
RANGEL2ResetMask |
uint32_t |
Second range low address register |
RANGEL2ResetValue |
uint32_t |
Second range low address register |
RANGEL2WriteMask |
uint32_t |
Second range low address register |
RANGELColdResetValue |
uint32_t |
Range low address register |
RANGELForcedBits |
uint32_t |
Range low address register |
RANGELForcedFlippedBits |
uint32_t |
Range low address register |
RANGELReadMask |
uint32_t |
Range low address register |
RANGELResetMask |
uint32_t |
Range low address register |
RANGELResetValue |
uint32_t |
Range low address register |
RANGELWriteMask |
uint32_t |
Range low address register |
ReplayLoggingFlags |
uint64_t |
Replay-time category logging flags |
STAT |
uint32_t |
Status register |
STATColdResetValue |
uint32_t |
Status register |
STATForcedBits |
uint32_t |
Status register |
STATForcedFlippedBits |
uint32_t |
Status register |
STATReadMask |
uint32_t |
Status register |
STATResetMask |
uint32_t |
Status register |
STATResetValue |
uint32_t |
Status register |
STATWriteMask |
uint32_t |
Status register |
TimeSource |
*void |
Time source object |
ahb.pnp.bar |
[uint32_t; 4] |
AMBA plug and play base address register |
ahb.pnp.identReg |
uint32_t |
AMBA plug and play config word |
ahb.pnp.userDef |
[uint32_t; 3] |
AMBA plug and play user words |
config.littleEndian |
uint8_t |
Endianess of memory interface. |
Interfaces
| Name | Type | Description |
|---|---|---|
AhbIface |
AhbIface |
|
DeviceIface |
DeviceIface |
|
MemAccessIface |
MemAccessIface |
|
RegisterIface |
temu::RegisterIface |
Auto-generated Register Interface Impl. |
ResetIface |
ResetIface |
Registers
| Register support is currently experimental! |
Register Bank Regs
Register AHBS
- Description
-
AHB Status register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffef00
| Field | Mask | Reset | Description |
|---|---|---|---|
CECNT |
|
|
Global correctable error count |
UECNT |
|
|
Global uncorrectable error count |
DONE |
|
|
Task completed |
SEC |
|
|
Scrubber error counter threshold exceeded |
SBC |
|
|
Scrubber block error counter threshold exceeded |
CE |
|
|
Correctable error |
NE |
|
|
New error |
HWRITE |
|
|
AMBA write signal |
HMASTER |
|
|
AMBA master signal |
HSIZE |
|
|
AMBA size signal |
Register AHBFAR
- Description
-
AHB Failing Address Register
- Reset value
-
0x00000000
- Warm reset mask
-
0x00000000
| Field | Mask | Reset | Description |
|---|---|---|---|
AHB_FAILING_ADDRESS |
|
|
AHB failing address |
Register AHBERC
- Description
-
AHB Error configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffc003
| Field | Mask | Reset | Description |
|---|---|---|---|
CECNTT |
|
|
Interrupt threshold value for global correctable error count |
UECNTT |
|
|
Interrupt threshold value for global uncorrectable error count |
CECTE |
|
|
Correctable error count threshold enable |
UECTE |
|
|
Uncorrectable error count threshold enable |
Register STAT
- Description
-
Status register
- Reset value
-
0x00000002
- Warm reset mask
-
0xffffc01f
| Field | Mask | Reset | Description |
|---|---|---|---|
RUNCOUNT |
|
|
Number of correctable errors in current scrub run |
BLKCOUNT |
|
|
Number of correctable errors in current block |
DONE |
|
|
Task completed |
BURSTLEN |
|
|
2-log of AHB bus cycles |
ACTIVE |
|
|
Current state |
Register CONFIG
- Description
-
Configuration register
- Reset value
-
0x00000000
- Warm reset mask
-
0x0000ffbf
| Field | Mask | Reset | Description |
|---|---|---|---|
DELAY |
|
|
Delay time between processed blocks |
IRQD |
|
|
Interrupt when task has completed |
SERA |
|
|
Second memory range enable |
LOOP |
|
|
Loop mode |
MODE |
|
|
Operation mode |
ES |
|
|
External start enable |
SCEN |
|
|
Scrubber enable |
Register RANGEL
- Description
-
Range low address register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
RLADDR |
|
|
Scrubber range low address |
ALIGN |
|
|
Burst size alignment bits |
Register RANGEH
- Description
-
Range high address register
- Reset value
-
0x0000001f
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
RHADDR |
|
|
Scrubber range high address |
ALIGN |
|
|
Burst size alignment bits |
Register POS
- Description
-
Position register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffffff
| Field | Mask | Reset | Description |
|---|---|---|---|
POSITION |
|
|
Scrubber position |
ALIGN |
|
|
Burst size alignment bits |
Register ETHRES
- Description
-
Error threshold register
- Reset value
-
0x00000000
- Warm reset mask
-
0xffffc003
| Field | Mask | Reset | Description |
|---|---|---|---|
RECT |
|
|
Interrupt threshold value for current scrub run correctable error count |
BECT |
|
|
Interrupt threshold value for current scrub block correctable error count |
RECTE |
|
|
Scrub run correctable error count threshold enable |
BECTE |
|
|
Scrub block correctable error count threshold enable |
Register INIT
- Description
-
Initialisation data register
- Reset value
-
0x00000000
- Warm reset mask
-
0x00000000
| Field | Mask | Reset | Description |
|---|---|---|---|
DATA |
|
|
Initialisation data |