The RNDRRS characteristics are:
Reseeded Random Number. Returns a 64-bit random number which is reseeded from the True Random Number source immediately before the read of the random number.
If the hardware returns a genuine random number, PSTATE.NZCV is set to 0b0000.
If the instruction cannot return a genuine random number in a reasonable period of time, PSTATE.NZCV is set to 0b0100 and the data value returned is 0.
RNDRRS is a read-only register.
This register is present only when FEAT_RNG is implemented. Otherwise, direct accesses to RNDRRS are UNDEFINED.
RNDRRS is a 64-bit register.
The RNDRRS bit assignments are:
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 |
RNDRRS | |||||||||||||||||||||||||||||||
RNDRRS | |||||||||||||||||||||||||||||||
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 |
Reseeded Random Number. Returns a 64-bit Random Number which is reseeded from the True Random Number source immediately before this read.
This field resets to an architecturally UNKNOWN value.
Accesses to this register use the following encodings:
op0 | op1 | CRn | CRm | op2 |
---|---|---|---|---|
0b11 | 0b011 | 0b0010 | 0b0100 | 0b001 |
if PSTATE.EL == EL0 then return RNDRRS; elsif PSTATE.EL == EL1 then return RNDRRS; elsif PSTATE.EL == EL2 then return RNDRRS; elsif PSTATE.EL == EL3 then return RNDRRS;
01/07/2020 15:57; 80324f0b9997bede489cc15ad1565345720bcd2a
Copyright © 2010-2020 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.