SWCU185G January 2018 – June 2024 CC1312PSIP , CC1312R , CC1352P , CC1352R , CC2642R , CC2642R-Q1 , CC2652P , CC2652PSIP , CC2652R , CC2652RB , CC2652RSIP , CC2662R-Q1
This procedure initializes the TRNG after a power-on reset (POR). Table 19-3 lists the TRNG main initialization sequence.
Step | Register or Bit Field |
---|---|
Execute a SW reset | TRNG:SWRESET.RESET |
Wait for SW completion by polling | TRNG:SWRESET.RESET |
Select the number of FRO clock input cycles between two samples | TRNG:CFG0.SMPL_DIV |
Select the number of samples taken to gather enough entropy in the FROs of the module and to generate the first random value | TRNG:CTL.STARTUP_CYCLES |
Select the minimum number of samples taken regenerate entropy in the FROs of the module and to generate subsequent random values | TRNG:CFG0.MIN_REFILL_CYCLES |
Select the maximum number of samples taken regenerate entropy in the FROs of the module and to generate subsequent random values Also defines timeout period for shutting down the FROs after inactivity | TRNG:CFG0.MAX_REFILL_CYCLES |
Configure the desired FROs to run 5% faster | TRNG:FRODETUNE.FRO_MASK |
Enable all FROs | TRNG:FROEN.FRO_MASK |
Select the maximum number of samples after which a detected repeated pattern an alarm event is generated | TRNG:ALARMCNT.ALARM_THR |
Set the shutdown threshold to the number of FROs allowed to be shut down(1) | TRNG:ALARMCNT.SHUTDOWN_THR |
Enable and start | TRNG:CTL.TRNG_EN |