7.6.6.2 PUF Operation Result Register
| Name: | PUF_ORR |
| Offset: | 0x004 |
| Reset: | 0x00000000 |
| Property: | Read-only |
| Bit | 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | |
| LOPNUM[7:0] | |||||||||
| Access | R | R | R | R | R | R | R | R | |
| Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Bit | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | |
| Access | |||||||||
| Reset |
| Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |
| RESEEDR | RESEEDW | ||||||||
| Access | R | R | |||||||
| Reset | 0 | 0 |
| Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
| RCODE[7:0] | |||||||||
| Access | R | R | R | R | R | R | R | R | |
| Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
Bits 31:24 – LOPNUM[7:0] Last Operation Number
| Value | Name | Description |
|---|---|---|
| 0x00 | IID_PUF_LO_PROGRESS | An operation is in progress. |
| 0x01 | IID_PUF_LO_ENROLL | The last operation was ENROLL. |
| 0x02 | IID_PUF_LO_START | The last operation was START. |
| 0x03 | IID_PUF_LO_RECONSTRUCT | The last operation was RECONSTRUCT. |
| 0x4 | Reserved | Reserved |
| 0x05 | IID_PUF_LO_STOP | The last operation was STOP. |
| 0x06 | IID_PUF_LO_GET_KEY | The last operation was GET KEY. |
| 0x07 | IID_PUF_LO_UNWRAP | The last operation was UNWRAP. |
| 0x08 | IID_PUF_LO_WRAP_GEN_RND | The last operation was WRAP GENERATED RANDOM. |
| 0x09 | IID_PUF_LO_WRAP | The last operation was WRAP. |
| 0x0A–0x0E | Reserved | Reserved |
| 0x0F | IID_PUF_LO_GEN_RND | The last operation was GENERATED RANDOM. |
| 0x10 | IID_PUF_LO_RESEED | The last operation was RESEED. |
| 0x11–0x1D | Reserved | Reserved |
| 0x1E | IID_PUF_LO_TEST_MEMORY | The last operation was TESTMEMORY. |
| 0x1F | IID_PUF_LO_TEST_PUF | The last operation was TESTPUF. |
| 0x20 | IID_PUF_LO_INITIALIZATION | The last operation was INITIALIZATION. |
| 0x21–0x2E | Reserved | Reserved |
| 0x2F | IID_PUF_LO_ZEROIZE | The last operation was ZEROIZE. |
Bit 15 – RESEEDR Reseed Required
| Value | Name | Description |
|---|---|---|
| 0 | NO_ACTION | No action required. |
| 1 | REQUIRED_ACTION | The maximum number of DRBG2 requests has been done. A reseed must be performed before other operations can be done. This bit is the same as in PUF_SR. |
Bit 14 – RESEEDW Reseed Warning
| Value | Name | Description |
|---|---|---|
| 0 | NO_ACTION | No action required. |
| 1 | RECOMMENDED_ACTION | The DRBG reseed counter is close to its limit, it is recommended to reseed at the first suitable moment. This bit is the same as in PUF_SR. |
Bits 7:0 – RCODE[7:0] Last Operation Result Code
| Value | Name | Description |
|---|---|---|
| 0x00 | IID_PUF_OK | The last operation was successful or an operation is in progress. |
| 0xF0 | IID_PUF_ERR_PRODUCT | The provided activation code is not correct. |
| 0xF1 | IID_PUF_ERR_PRODUCT_PH2 | The activation code in the second phase is not correct. |
| 0xF2 | IID_PUF_ERR_TRANSFER | The provided activation code is corrupted. |
| 0xF3 | IID_PUF_ERR_TRANSFER_PH2 | The activation code in the second phase is corrupted. |
| 0xF4 | IID_PUF_ERR_AUTH | Authentication of the provided activation code failed. |
| 0xF5 | IID_PUF_ERR_AUTH_PH2 | Authentication of the provided activation code failed in the second phase. |
| 0xF6 | IID_PUF_ERR_PUF_QUALITY | Dedicated Embedded Static RAM PUF quality verification fails. |
| 0xF7 | IID_PUF_ERR_CONTEXT | An incorrect or unsupported context is provided. |
| 0xF8 | IID_PUF_ERR_DESTINATION | A data destination that was set is not allowed according to other settings and the current PUF state. |
| 0xF9–0xFA | Reserved | Reserved |
| 0xFB | IID_PUF_FAILURE_DRBG2_ENTROPY | DRBG2 Reseed or Instantiation failed (DRBG1 cannot provide entropy). |
| 0xFC | IID_PUF_FAILURE_DRBG1_ENTROPY | The entropy test for DRBG1 failed. |
| 0xFD | IID_PUF_FAILURE_DRBG_HEALTH | One or more of the DRBG health tests failed. |
| 0xFE | IID_PUF_FAILURE_SETTINGS | Initialization cannot finish due to illegal values in PUF_HW_SETTINGS. |
| 0xFF | IID_PUF_FAILURE_SRAM | PUF SRAM access has failed. |
