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