Random number generation system with ring oscillators
First Claim
1. A random number generation system comprising:
- a ring oscillator configured to switch between a first state in which a signal of the ring oscillator oscillates between logic levels, and a second state in which the signal at least partially settles to one of the logic levels;
a counter configured to measure a count of pulses of the signal; and
a mechanism configured to receive the signal from the ring oscillator, latch a logic level of the signal from the ring oscillator, latch the count of pulses from the counter, and generate a non-deterministic random number based on the logic level and the count of pulses.
2 Assignments
0 Petitions
Accused Products
Abstract
A random number generation system comprising one or more ring oscillators configured to generate entropy due to accumulated phase drift. A random number generator can include a ring oscillator configured to switch between a first state in which a signal of the ring oscillator oscillates between logic levels, and a second state in which the signal at least partially settles to one of the logic levels. The random number generator can also include a counter configured to measure a count of pulses of the signal and a whitener mechanism configured to receive the signal from the ring oscillator, latch a logic level of the signal from the ring oscillator, latch the count of pulses from the counter, and generate a random number based on the logic level and the count of pulses. Corresponding methods may also be performed.
-
Citations
18 Claims
-
1. A random number generation system comprising:
-
a ring oscillator configured to switch between a first state in which a signal of the ring oscillator oscillates between logic levels, and a second state in which the signal at least partially settles to one of the logic levels; a counter configured to measure a count of pulses of the signal; and a mechanism configured to receive the signal from the ring oscillator, latch a logic level of the signal from the ring oscillator, latch the count of pulses from the counter, and generate a non-deterministic random number based on the logic level and the count of pulses. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A random number generation system comprising:
-
a signal generator; a plurality of inverters; a gate comprising a first input operably coupled to the signal generator, a second input operably coupled to a first of the inverters, and an output operably coupled to a second of the inverters, wherein the gate is configured to function as an inverter when a signal from the signal generator is at a first logic level and as a buffer when the signal is at a second logic level; a counter operably coupled to at least one of the plurality of inverters or the output of the gate; and a whitener configured to; receive an output signal from one of the plurality of inverters; latch a logic level of the output signal; latch a count of pulses from the counter; and combine the logic level and the count of pulses to generate a non-deterministic random number. - View Dependent Claims (8, 9)
-
-
10. A method comprising:
-
generating phase drift in an oscillating signal; latching the oscillating signal to at least partially settle to a logic level; latching a count of pulses that corresponds to a time required for the latched signal to settle to the logic level; and combining the logic level and the count of pulses to generate a non-deterministic random number. - View Dependent Claims (11, 12)
-
-
13. A random number generation system comprising:
-
an oscillator comprising; a gate chain comprising; a first plurality of inverters; and a gate having a first input operably coupled to a first of the first plurality of inverters, a second input, and an output, wherein a second of the first plurality of inverters is operably coupled to the output of the gate; a feedback network comprising a second plurality of inverters, wherein the second input of the gate is operably coupled to one of the second plurality of inverters; a counter operably coupled to an oscillator output from the oscillator and configured to measure a count of pulses of the oscillator output; and a circuit configured to; receive the oscillator output; latch a logic level of the oscillator output; latch the count of pulses from the counter; and generate a non-deterministic random number by combining the logic level and the count of pulses. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification