6.5.5
RNG Buffer Control/Status Register
The RNG Buffer Control/Status register provides buffer control and status information. This
register may be read at any time. However, writing to this register is only allowed when
Buffer_Go/Busy is zero, otherwise the access will be treated as an access to reserved
memory space.
The Sample Interval should generally be set such that at the currently specified bit rate
(see RNG configuration register Bit Rate field in Section 6.5.7) at least 32 bits have been
sampled between sample intervals. Setting the Sample Interval larger helps with increasing
entropy of the random numbers, at the cost of generating random numbers at a smaller
rate. For example,
Sample Interval >= 32 * (bit rate + 1)
should always be true for normal operation. While
Sample Interval ~= 128 * (bit rate + 1)
is recommended for a reasonable entropy versus performance compromise.
Type:
Offset
Read/Write
x‘0810’
Buffer_Words field is Read only
BUF_WORDS[4:0]
SMPL_INVL[25:0]
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
Field Name
Description
Bits
Reset
BUF_GO_BSY
Buffer Go/Busy
Writing a one to this bit causes the RNG buffer to be
filled with 16 new random seeds, regardless of the
number of unread seeds still in the Buffer (if any).
This bit will remain set until the operation is
complete, at which time it will return to zero.
31
0
0
1
RNG Buffer ready to be filled
Initiates filling RNG Buffer with new random
seed
BUF_WORDS[4:0]
SMPL_INVL[25:0]
Buffer Words
The number of random seeds available in the buffer.
This field will be decremented on each valid access
of the Buffer Data Register (Section 6.5.6).
30:26
25:0
0
0
Sample Interval
Number of clocks to skip between capturing the 32
bit output of the Seed Generator into the RNG
buffer.
820x – Data Sheet, DS-0157-D
Page176
Hifn Confidential