Random Number Generator (Rng); Rng Introduction; Rng Main Features; Rng Functional Description - ST STM32F40 Series Reference Manual

Hide thumbs Also See for STM32F40 Series:
Table of Contents

Advertisement

RM0090
21

Random number generator (RNG)

This section applies to the whole STM32F4xx family devices, unless otherwise specified.
21.1

RNG introduction

The RNG processor is a random number generator, based on a continuous analog noise,
that provides a random 32-bit value to the host when read.
The RNG passed the FIPS PUB 140-2 (2001 October 10) tests with a success ratio of 99%.
21.2

RNG main features

It delivers 32-bit random numbers, produced by an analog generator
40 periods of the PLL48CLK clock signal between two consecutive random numbers
Monitoring of the RNG entropy to flag abnormal behavior (generation of stable values,
or of a stable sequence of values)
It can be disabled to reduce power-consumption
21.3

RNG functional description

Figure 217

Figure 217. Block diagram

The random number generator implements an analog circuit. This circuit generates seeds
that feed a linear feedback shift register (RNG_LFSR) in order to produce 32-bit random
numbers.
The analog circuit is made of several ring oscillators whose outputs are XORed to generate
the seeds. The RNG_LFSR is clocked by a dedicated clock (PLL48CLK) at a constant
frequency, so that the quality of the random number is independent of the HCLK frequency.
shows the RNG block diagram.
Control register
RNG _CR
RNG_CLK
Status register
RNG _SR
Doc ID 018909 Rev 4
Random number generator (RNG)
32-bit AHB bus
Clock checker &
fault detector
Analog seed
data register
RNG_DR
LFSR
feed a Linear Feedback
Shift Register
ai16080
594/1422

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the STM32F40 Series and is the answer not in the manual?

Questions and answers

This manual is also suitable for:

Stm32f41 seriesStm32f42 seriesStm32f43 seriesRm0090

Table of Contents

Save PDF