AArch32 Registers | AArch64 Registers | AArch32 Instructions | AArch64 Instructions | Index by Encoding | External Registers | External Registers by Offset | Registers by Functional Group | Proprietary Notice

# ERR<n>PFGCTL, Error Record <n> Pseudo-fault Generation Control Register, n = 0 - 65534

The ERR<n>PFGCTL characteristics are:

## Purpose

Enables controlled fault generation.

## Configuration

This register is present only when error record n is implemented, the node that owns error record n implements the Common Fault Injection Model Extension and error record n is the first error record in the node. Otherwise, direct accesses to ERR<n>PFGCTL are RES0.

ERR<n>PFGF describes the Common Fault Injection features implemented by the node.

ERR<n>FR describes the features implemented by the node.

## Attributes

ERR<n>PFGCTL is a 64-bit register.

## Field descriptions

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
CDNEN | R | RES0 | MV | AV | PN | ER | CI | CE | DE | UEO | UER | UEU | UC | OF

#### Bits [63:32]

Reserved, RES0.

#### CDNEN, bit [31]

Countdown Enable. Controls transfers of the value held in ERR<n>PFGCDN to the Error Generation Counter and enables this counter.

CDNEN | Meaning
--- | ---
0b0 | The Error Generation Counter is disabled.
0b1 | The Error Generation Counter is enabled. On a write of 1 to this field, the Error Generation Counter is set to ERR<n>PFGCDN.CDN.

The reset behavior of this field is:

- On a Cold reset, this field resets to 0.

#### R, bit [30]
When ERR<n>PFGF.R == 1:

Restart. Controls whether the Error Generation Counter restarts or stops counting on reaching zero.

R | Meaning
--- | ---
0b0 | On reaching zero, the Error Generation Counter will stop counting.
0b1 | On reaching zero, the Error Generation Counter is set to ERR<n>PFGCDN.CDN.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### Bits [29:13]

Reserved, RES0.

#### MV, bit [12]
When ERR<n>PFGF.MV == 1:

Miscellaneous syndrome. The value written to ERR<n>STATUS.MV when an injected error is recorded.

MV | Meaning
--- | ---
0b0 | ERR<n>STATUS.MV is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.MV is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On an Error recovery reset, this field resets to an architecturally UNKNOWN value.

When the node always sets ERR<n>STATUS.MV to 1 when an injected error is recorded, access to this field is RAO/WI.

####
When the node always sets ERR<n>STATUS.MV to 1 when an injected error is recorded and this field is RAO/WI:

Reserved, RAO/WI.

####
Otherwise:

Reserved, RES0.

#### AV, bit [11]
When ERR<n>PFGF.AV == 1:

Address syndrome. The value written to ERR<n>STATUS.AV when an injected error is recorded.

AV | Meaning
--- | ---
0b0 | ERR<n>STATUS.AV is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.AV is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On an Error recovery reset, this field resets to an architecturally UNKNOWN value.

When the node always sets ERR<n>STATUS.AV to 1 when an injected error is recorded, access to this field is RAO/WI.

####
When the node always sets ERR<n>STATUS.AV to 1 when an injected error is recorded and this field is RAO/WI:

Reserved, RAO/WI.

####
Otherwise:

Reserved, RES0.

#### PN, bit [10]
When ERR<n>PFGF.PN == 1:

Poison flag. The value written to ERR<n>STATUS.PN when an injected error is recorded.

PN | Meaning
--- | ---
0b0 | ERR<n>STATUS.PN is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.PN is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### ER, bit [9]
When ERR<n>PFGF.ER == 1:

Error Reported flag. The value written to ERR<n>STATUS.ER when an injected error is recorded.

ER | Meaning
--- | ---
0b0 | ERR<n>STATUS.ER is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.ER is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### CI, bit [8]
When ERR<n>PFGF.CI == 1:

Critical Error flag. The value written to ERR<n>STATUS.CI when an injected error is recorded.

CI | Meaning
--- | ---
0b0 | ERR<n>STATUS.CI is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.CI is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### CE, bits [7:6]
When ERR<n>PFGF.CE != 0b00:

Corrected Error generation enable. Controls the type of injected Corrected error generated by the fault injection feature of the node.

CE | Meaning | Applies when
--- | --- | ---
0b00 | An injected Corrected error will not be generated by the fault injection feature of the node.
0b01 | An injected non-specific Corrected error is generated in the fault injection state. ERR<n>STATUS.CE is set to 0b10 when the injected error is recorded. | When ERR<n>PFGF.CE == 0b01
0b10 | An injected transient Corrected error is generated in the fault injection state. ERR<n>STATUS.CE is set to 0b01 when the injected error is recorded. | When ERR<n>PFGF.CE == 0b11
0b11 | An injected persistent Corrected error is generated in the fault injection state. ERR<n>STATUS.CE is set to 0b11 when the injected error is recorded. | When ERR<n>PFGF.CE == 0b11

The set of permitted values for this field is defined by ERR<n>PFGF.CE.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### DE, bit [5]
When ERR<n>PFGF.DE == 1:

Deferred Error generation enable. Controls whether an injected Deferred error is generated by the fault injection feature of the node.

DE | Meaning
--- | ---
0b0 | An injected Deferred error will not be generated by the fault generation feature of the node.
0b1 | An injected Deferred error is generated in the fault injection state.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### UEO, bit [4]
When ERR<n>PFGF.UEO == 1:

Latent or Restartable Error generation enable. Controls whether an injected Latent or Restartable error is generated by the fault injection feature of the node.

UEO | Meaning
--- | ---
0b0 | An injected Latent or Restartable error will not be generated by the fault generation feature of the node.
0b1 | An injected Latent or Restartable error is generated in the fault injection state.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### UER, bit [3]
When ERR<n>PFGF.UER == 1:

Signaled or Recoverable Error generation enable. Controls whether an injected Signaled or Recoverable error is generated by the fault injection feature of the node.

UER | Meaning
--- | ---
0b0 | An injected Signaled or Recoverable error will not be generated by the fault generation feature of the node.
0b1 | An injected Signaled or Recoverable error is generated in the fault injection state.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### UEU, bit [2]
When ERR<n>PFGF.UEU == 1:

Unrecoverable Error generation enable. Controls whether an injected Unrecoverable error is generated by the fault injection feature of the node.

UEU | Meaning
--- | ---
0b0 | An injected Unrecoverable error will not be generated by the fault generation feature of the node.
0b1 | An injected Unrecoverable error is generated in the fault injection state.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### UC, bit [1]
When ERR<n>PFGF.UC == 1:

Uncontainable Error generation enable. Controls whether an injected Uncontainable error is generated by the fault injection feature of the node.

UC | Meaning
--- | ---
0b0 | An injected Uncontainable error will not be generated by the fault generation feature of the node.
0b1 | An injected Uncontainable error is generated in the fault injection state.

The node enters the fault injection state when the Error Generation Counter decrements to zero. It is IMPLEMENTATION DEFINED whether the injected error is generated when the error is generated on an access to the component in the fault injection state and the data is not consumed.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

#### OF, bit [0]
When ERR<n>PFGF.OF == 1:

Overflow flag. The value written to ERR<n>STATUS.OF when an injected error is recorded.

OF | Meaning
--- | ---
0b0 | ERR<n>STATUS.OF is set to 0 when an injected error is recorded.
0b1 | ERR<n>STATUS.OF is set to 1 when an injected error is recorded.

The reset behavior of this field is:

- On a Cold reset, this field resets to an architecturally UNKNOWN value.

####
Otherwise:

Reserved, RES0.

## Accessing ERR<n>PFGCTL

#### ERR<n>PFGCTL can be accessed through the memory-mapped interfaces:

Component | Offset | Instance
--- | --- | ---
RAS | 0x808 + (64 * n) | ERR<n>PFGCTL

Accesses on this interface are RW.

AArch32 Registers | AArch64 Registers | AArch32 Instructions | AArch64 Instructions | Index by Encoding | External Registers | External Registers by Offset | Registers by Functional Group | Proprietary Notice

26/03/2024 09:49; 67c0ae5282a7629ba0ea0ba7267b43cd4f7939f6

Copyright © 2010-2024 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.