摘要 |
A method and apparatus are disclosed for generating random numbers using the meta-stable behavior of latches. Each time a latch becomes meta-stable, the outcome of the oscillation is random as to the logic value attained after the oscillation ceases. If the output of a latch differs from the value that would have been attained during correct operation of the latch (i.e., a "mistake"), then a meta-stable event can be detected. When two or more substantially identical latches operate in parallel, a mistake can be detected when at least two of the latches have different outputs. The detection of a mistake can be used to trigger the generation of a random bit. The present invention operates a number of latches in parallel, and applies the same binary value to each input of each latch. When a latch enters a meta-stable state, the output of the latch will shift randomly before stabilizing at a random output value of either logic low or high. When two latches stabilize to different values, a mistake can be identified thereby triggering the generation of a random bit.
|