Texas Instruments CC2650DK Benutzerhandbuch

Seite von 1570
FRO
FRO
FRO
FRO control and
Error checking
Main LSFR
TRNG core control
Random Number Upper Word
[TRNG:OUT1]
PRCM
Interrupts
Clock and Reset
Random Number Lower Word
[TRNG:OUT0]
Overview
16.1 Overview
The TRNG has the following features:
The TRNG is based on 24 ring oscillators (shot noise) to create entropy. To generate this entropy the
system needs a minimum of 2
8
system clock cycles (for reference) to produce the first random output.
Then ithe TRNG takes a minimum of 2
6
system clock cycles to produce each subsequent 64 bits
random number.
Startup time and entropy regeneration time can be controlled between 2
8
and 2
24
sampling clock
cycles, and entropy regeneration time can be controlled between 2
6
and 2
24
sampling clock cycles to
adapt entropy accumulation time to basic entropy generation rate. Entropy regeneration time can be
tailored in a trade-off between speed of random number generation and amount of entropy in each of
those random numbers.
The TRNG architecture is based on linear-feedback shift register (LFSR) in association with a
nonlinear entropic hasher.
The random numbers are accessible to the applications in a 64-bit read-only register. Once the register
is read, the TRNG immediately generates a new value, which is then shifted into the output register
when ready.
If ready value is not read within a maximum timeout window, the TRNG will be set into idle mode
The TRNG provides a built-in self-test that checks the number of consecutive bits sampled to provide
the statistical robustness required by FIPS 140. System alarms are generated based on feedback from
this test.
The internal power-saving mode is built to carefully manage the entropy previously generated.
Interrupt channel allow the transfer of 32-bits data blocks.
16.2 Block Diagram
The TRNG core uses dual-shot noise generators that create unpredictable jittering output when
asynchronously sampled by the system clock provided to the TRNG. The outputs from the shot noise
generators feed a complex nonlinear combinatorial circuit (mixer) that produces the final TRNG output
(see
Figure 16-1. Random Number Generator Block Diagram
The TRNG core consists of two parts:
The first part contains the FROs, whose output signals are sampled at regular intervals. The FROs are
asynchronous to one another and asynchronous to the sampling clock to make their behavior truly
1156
Random Number Generator
SWCU117A – February 2015 – Revised March 2015
Copyright © 2015, Texas Instruments Incorporated