RM0461
20.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
Software reset
Figure 86. RNG initialization overview
1
Wait for noise
source
2
Start-up heath tests
3
Conditioning keys
init
4
Generate samples
RM0461 Rev 5
True random number generator (RNG)
Figure
86.
Section 20.5: RNG processing
Software reset
start-up test(s)
not OK
continuous test(s)
not OK
5
time.
Error state
MSv44204V2
533/1306
543
Need help?
Do you have a question about the STM32WLEx and is the answer not in the manual?