RM0453 Rev 5 637/1450
RM0453 True random number generator (RNG)
646
22.3.4 RNG initialization
The RNG simplified state machine is pictured on Figure 100.
After enabling the RNG (RNGEN = 1 in RNG_CR), the following chain of events occurs:
1. The analog noise source is enabled, and by default the RNG waits 16 cycles of RNG
clock cycles (before divider) before starting to sample the analog output and filling the
128-bit conditioning shift register.
2. The conditioning hardware initializes, automatically triggering startup behavior test on
the raw data samples and known-answer tests.
3. When startup health tests are completed. During this time, three 128-bit noise source
samples are used.
4. The conditioning stage internal input data buffer is filled again with 128-bit and a
number of conditioning rounds defined by the RNG configuration (NIST or non-NIST) is
performed. The output buffer is then filled with the post processing result.
5. The output buffer is refilled automatically according to the RNG usage.
The associated initialization time can be found in Section 22.5: RNG processing time.
Figure 100. RNG initialization overview
MSv44204V2
Wait for noise
source
Start-up heath tests
Error state
start-up test(s)
not OK
Conditioning keys
init
Generate samples
Software reset
1
2
3
5
4
continuous test(s)
not OK
Software reset