
True random number generator (RNG)
RM0453
638/1454
RM0453 Rev 2
22.3.4 RNG
initialization
The RNG simplified state machine is pictured on
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 analog output and filling 128-bit
conditioning shift register.
2. The conditioning hardware initializes, automatically triggering start-up behavior test on
the raw data samples and known-answer tests.
3. When start-up 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