The ERR<n>PFGF characteristics are:
Defines which common architecturally-defined fault generation features are implemented.
This register is present only when error record <n> is implemented, the node implements the RAS Common Fault Injection Model Extension (ERR<n>FR.INJ != 0b00) and error record <n> is the first error record owned by a node. Otherwise, direct accesses to ERR<n>PFGF are RES0.
ERR<n>FR describes the features implemented by the node.
ERR<n>PFGF is a 64-bit register.
63 | 62 | 61 | 60 | 59 | 58 | 57 | 56 | 55 | 54 | 53 | 52 | 51 | 50 | 49 | 48 | 47 | 46 | 45 | 44 | 43 | 42 | 41 | 40 | 39 | 38 | 37 | 36 | 35 | 34 | 33 | 32 |
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RES0 | |||||||||||||||||||||||||||||||
RES0 | R | SYN | NA | RES0 | MV | AV | PN | ER | CI | CE | DE | UEO | UER | UEU | UC | OF |
Reserved, RES0.
Restartable. Support for Error Generation Counter restart mode.
R | Meaning |
---|---|
0b0 |
The node does not support this feature. |
0b1 |
Feature controllable. |
Syndrome. Fault syndrome injection.
SYN | Meaning |
---|---|
0b0 |
When an injected error is recorded, the node sets ERR<n>STATUS.{IERR, SERR} to IMPLEMENTATION DEFINED values. ERR<n>STATUS.{IERR, SERR} are UNKNOWN when ERR<n>STATUS.V == 0. |
0b1 |
When an injected error is recorded, the node does not update the ERR<n>STATUS.{IERR, SERR} fields. ERR<n>STATUS.{IERR, SERR} are writable when ERR<n>STATUS.V == 0. |
If ERR<n>PFGF.SYN == 1, software can write specific values into the ERR<n>STATUS.{IERR, SERR} fields when setting up a fault injection event. The sets of values that can be written to these fields is IMPLEMENTATION DEFINED.
No access required. Defines whether this component fakes detection of the error on an access to the component or spontaneously in the fault injection state.
NA | Meaning |
---|---|
0b0 |
The component fakes detection of the error on an access to the component. |
0b1 |
The component fakes detection of the error spontaneously in the fault injection state. |
Reserved, RES0.
Miscellaneous syndrome.
Additional syndrome injection. Defines whether software can control all or part of the syndrome recorded in the ERR<n>MISC<m> registers when an injected error is recorded.
It is IMPLEMENTATION DEFINED which syndrome fields in ERR<n>MISC<m> this refers to, as some fields might always be recorded by an error. For example, a Corrected Error counter.
MV | Meaning |
---|---|
0b0 |
When an injected error is recorded, the node might record IMPLEMENTATION DEFINED additional syndrome in ERR<n>MISC<m>. If any syndrome is recorded in ERR<n>MISC<m>, then ERR<n>STATUS.MV is set to 1. |
0b1 | When an injected error is recorded, the node does not update all the syndrome fields in the ERR<n>MISC<m> and does one of:
The syndrome fields that the node does not update are unchanged and are writable when ERR<n>STATUS.MV == 0. |
If ERR<n>PFGF.MV == 1, software can write specific values into the ERR<n>MISC<m> registers when setting up a fault injection event. The values that can be written to these registers are IMPLEMENTATION DEFINED.
Address syndrome. Address syndrome injection.
AV | Meaning |
---|---|
0b0 |
When an injected error is recorded, the node either sets ERR<n>ADDR and ERR<n>STATUS.AV for the access, or leaves these unchanged. |
0b1 | When an injected error is recorded, the node does not update ERR<n>ADDR and does one of:
ERR<n>ADDR is writable when ERR<n>STATUS.AV == 0. |
If ERR<n>PFGF.AV == 1, software can write a specific value into ERR<n>ADDR when setting up a fault injection event.
Poison flag. Describes how the fault generation feature of the node sets the ERR<n>STATUS.PN status flag.
PN | Meaning |
---|---|
0b0 |
When an injected error is recorded, it is IMPLEMENTATION DEFINED whether the node sets ERR<n>STATUS.PN to 1. |
0b1 |
When an injected error is recorded, ERR<n>STATUS.PN is set to ERR<n>PFGCTL.PN. |
This behavior replaces the architecture-defined rules for setting the PN bit.
Reserved, RAZ.
Error Reported flag. Describes how the fault generation feature of the node sets the ERR<n>STATUS.ER status flag.
ER | Meaning |
---|---|
0b0 |
When an injected error is recorded, the node sets ERR<n>STATUS.ER according to the architecture-defined rules for setting the ER field. |
0b1 |
When an injected error is recorded, ERR<n>STATUS.ER is set to ERR<n>PFGCTL.ER. This behavior replaces the architecture-defined rules for setting the ER bit. |
Reserved, RAZ.
Critical Error flag. Describes how the fault generation feature of the node sets the ERR<n>STATUS.CI status flag.
CI | Meaning |
---|---|
0b0 |
When an injected error is recorded, it is IMPLEMENTATION DEFINED whether the node sets ERR<n>STATUS.CI to 1. |
0b1 |
When an injected error is recorded, ERR<n>STATUS.CI is set to ERR<n>PFGCTL.CI. |
This behavior replaces the architecture-defined rules for setting the CI bit.
Reserved, RAZ.
Corrected Error generation. Describes the types of Corrected Error that the fault generation feature of the node can generate.
CE | Meaning |
---|---|
0b00 |
The fault generation feature of the node cannot generate this type of error. |
0b01 |
The fault generation feature of the node allows generation of a non-specific Corrected Error, that is, a Corrected Error that is recorded as ERR<n>STATUS.CE == 0b10. |
0b11 |
The fault generation feature of the node allows generation of transient or persistent Corrected Errors, that is, Corrected Errors that are recorded as ERR<n>STATUS.CE == 0b01 and 0b11. |
All other values are reserved.
If ERR<n>FR.FRX is 1, then ERR<n>FR.CE indicates whether the node supports this type of error.
Reserved, RAZ.
Deferred Error generation. Describes whether the fault generation feature of the node can generate this type of error.
DE | Meaning |
---|---|
0b0 |
The fault generation feature of the node cannot generate this type of error. |
0b1 |
The fault generation feature of the node allows generation of this type of error. |
If ERR<n>FR.FRX is 1, then ERR<n>FR.DE indicates whether the node supports this type of error.
Reserved, RAZ.
Latent or Restartable Error generation. Describes whether the fault generation feature of the node can generate this type of error.
UEO | Meaning |
---|---|
0b0 |
The fault generation feature of the node cannot generate this type of error. |
0b1 |
The fault generation feature of the node allows generation of this type of error. |
If ERR<n>FR.FRX is 1, then ERR<n>FR.UEO indicates whether the node supports this type of error.
Reserved, RAZ.
Signaled or Recoverable Error generation. Describes whether the fault generation feature of the node can generate this type of error.
UER | Meaning |
---|---|
0b0 |
The fault generation feature of the node cannot generate this type of error. |
0b1 |
The fault generation feature of the node allows generation of this type of error. |
If ERR<n>FR.FRX is 1, then ERR<n>FR.UER indicates whether the node supports this type of error.
Reserved, RAZ.
Unrecoverable Error generation. Describes whether the fault generation feature of the node can generate this type of error.
UEU | Meaning |
---|---|
0b0 |
The fault generation feature of the node cannot generate this type of error. |
0b1 |
The fault generation feature of the node allows generation of this type of error. |
If ERR<n>FR.FRX is 1, then ERR<n>FR.UEU indicates whether the node supports this type of error.
Reserved, RAZ.
Uncontainable Error generation. Describes whether the fault generation feature of the node can generate this type of error.
UC | Meaning |
---|---|
0b0 |
The fault generation feature of the node cannot generate this type of error. |
0b1 |
The fault generation feature of the node allows generation of this type of error. |
If ERR<n>FR.FRX is 1, then ERR<n>FR.UC indicates whether the node supports this type of error.
Reserved, RAZ.
Overflow flag. Describes how the fault generation feature of the node sets the ERR<n>STATUS.OF status flag.
OF | Meaning |
---|---|
0b0 |
When an injected error is recorded, the node sets ERR<n>STATUS.OF according to the architecture-defined rules for setting the OF field. |
0b1 |
When an injected error is recorded, ERR<n>STATUS.OF is set to ERR<n>PFGCTL.OF. This behavior replaces the architecture-defined rules for setting the OF bit. |
Reserved, RAZ.
Component | Offset | Instance |
---|---|---|
RAS | 0x800 + (64 * n) | ERR<n>PFGF |
Accesses on this interface are RO.
30/06/2021 09:39; 4f5dd962f4e34e1ac282f76da4d6e7fc4cab087e
Copyright © 2010-2021 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.