Integrated true random number generator
First Claim
Patent Images
1. A true random number generator in an integrated circuit, comprising:
- a plurality of independent ring oscillators, each of said ring oscillators having a plurality of gates, a plurality of sampling taps and an Exclusive-Or (XOR) function, wherein each of said sampling taps is operable to tap an output signal from one of said gates, and said XOR function is operable to receive a plurality of outputs signals from said gates to produce enhanced output;
a plurality of delay lines, each of said delay lines comprising a plurality of gates and a plurality of sampling taps, wherein each of said delay lines is operable to receive enhanced output from one of said ring oscillators, each of said sampling taps is operable to tap an output signal from one of said gates, and each of said delay lines is operable to generate a plurality of progressively delayed output signals.a combiner-sampler, said combiner sampler having a plurality of primary XOR gates, a plurality of secondary XOR gates, and a plurality of data latches, each data latch being operable to latch data from an XOR gate, wherein each of said primary XOR gates is operable to combine pairs of said delayed output signals from different delay lines to produce a primary output signal, and said secondary XOR gates are operable together to combine signals latched from a plurality of said primary output signals to produce a random binary output; and
a source of a clock signal to clock said data latches in said combiner-sampler.
1 Assignment
0 Petitions
Accused Products
Abstract
A true random number generator (TRNG) in an integrated circuit comprises a plurality of independent ring oscillators with multiple output taps combined into enhanced outputs, a plurality of delay lines, a combiner-sampler and a source of a clock signal. Some embodiments provide a TRNG that is resettable, allowing one or more independent random numbers to be generated in response to a trigger signal.
65 Citations
12 Claims
-
1. A true random number generator in an integrated circuit, comprising:
-
a plurality of independent ring oscillators, each of said ring oscillators having a plurality of gates, a plurality of sampling taps and an Exclusive-Or (XOR) function, wherein each of said sampling taps is operable to tap an output signal from one of said gates, and said XOR function is operable to receive a plurality of outputs signals from said gates to produce enhanced output; a plurality of delay lines, each of said delay lines comprising a plurality of gates and a plurality of sampling taps, wherein each of said delay lines is operable to receive enhanced output from one of said ring oscillators, each of said sampling taps is operable to tap an output signal from one of said gates, and each of said delay lines is operable to generate a plurality of progressively delayed output signals. a combiner-sampler, said combiner sampler having a plurality of primary XOR gates, a plurality of secondary XOR gates, and a plurality of data latches, each data latch being operable to latch data from an XOR gate, wherein each of said primary XOR gates is operable to combine pairs of said delayed output signals from different delay lines to produce a primary output signal, and said secondary XOR gates are operable together to combine signals latched from a plurality of said primary output signals to produce a random binary output; and a source of a clock signal to clock said data latches in said combiner-sampler. - View Dependent Claims (2, 3)
-
-
4. A method for generating a sequence of true random numbers in an integrated circuit comprising:
-
providing a clock signal; providing at least two output signals from each of at least two independent ring oscillators; combining said at least two output signals into an enhanced oscillator output for each of the said ring oscillators; producing at least two delayed output signals in a signal delay circuit from each of the said enhanced oscillator outputs; using said clock signal and said delayed output signals to produce a multiplicity of sampled signals; and combining said sampled signals in an output combiner circuit to produce a sequence of random numbers. - View Dependent Claims (5)
-
-
6. A resettable true random number generator in an integrated circuit, comprising:
-
a resettable ring oscillator having a plurality of gates, an enable input connected to at least one of said gates, said enable input being operable to reset said ring oscillator; a pulse generator, said pulse generator being operable to produce a precisely controlled, short pulse triggered by an input signal; a counter for counting cycles from said ring oscillator; and a source of an initiator signal, said ring oscillator operating asynchronously from any other clock signal.
-
-
7. A triggerable true random number generator in an integrated circuit comprising:
-
at least one resettable ring oscillator, said at least one resettable ring oscillator having a plurality of gates, a plurality of sampling taps and an XOR function, wherein each of said sampling taps is operable to tap an output signal from one of said gates, and said XOR function is operable to receive a plurality of output signals from said gates to produce enhanced output; at least one delay line comprising a plurality of gates and a plurality of sampling taps, wherein said at said least one delay line is operable to receive said enhanced output from said at least one resettable ring oscillator, each of said sampling taps is operable to tap an output signal from one of said gates, and said at least one delay line is operable to generate a plurality of progressively delayed output signals; a resettable combiner-sampler having a plurality of data latches and a plurality of secondary XOR gates, wherein each of said data latches is operable to latch one of said progressively delayed output signals to produce a latched primary output signal, and said secondary XOR gates are operable together to combine said latched primary output signals into a combiner-sampler output; a controller for accepting a trigger input for initiating a random number generation, wherein said controller is operable to provide an enable output for enabling said at least one resettable ring oscillator and resetting said data latches in said resettable combiner-sampler, and is further operable to provide a latch clock for latching said combiner-sampler output in an output latch to produce a random output; and a source of a clock signal for clocking said controller, said data latches in said resettable combiner-sampler and said output latch. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification