Simple random number hardware generator using low voltage 3.3V levels

Hello--

I am wondering if anyone knows of a published reference containing a simple circuit which can be used to generate true random numbers at a lower (3.3V) level. There are a few excellent circuits currently posted on the Internet, but I'd like to find something that gives a more in-depth theoretical treatment.

What about the design of white noise generators? I would wonder if there's a book out there that has a section dealing with the design of a simple white noise generator using a diode or transistor.

Nicholas

Reply to
Nicholas Kinar
Loading thread data ...

Is this of any use....

formatting link

It takes the noise from the input stage of an LM324 op amp (plenty noisy enough), amplifies it then converts it to a digital value for the display.

Nothing pseudo random

Will also work at 3v3

--
Bill
www.electronworks.co.uk
Electronic Kits for Education and Fun
Reply to
Electronworks.co.uk

Noise generators are the key; no all-logic circuit can generate a "true" random sequence (but they can get close - especially if the circuit uses a look-up table). Avalanche diodes are nice in that the noise level is large to start with; otherwise any resistor would be usable... As far as what sources are white,which are pink, etc color me ignorant.

Reply to
Robert Baer

Your explanation is at least 3 orders of magnitude useful (than a dumb picture).

Reply to
Robert Baer

ith the design of a

Real thermal noise is LOW in amplitude, a single transistor doesn't have enough gain to do the job. Usually one starts with a diode in avalanche (the avalanche process has lots of gain), and that requires higher voltages (typically 12V and up). It doesn't take much current, though; make a HV supply from your low voltage source.

Reply to
whit3rd

It looks like a very neat kit, and it would be fun to build.

Reply to
Nicholas Kinar

Thanks, Robert. I think that avalanche diodes are considered to be the one of the most widely-utilized methods of making noise. The trick would be to ensure that the diode produces random numbers over all temperature ranges.

Reply to
Nicholas Kinar

I was wondering why most circuits show a supply of at least 12V. Thank you for clarifying this!

Reply to
Nicholas Kinar

Build a classic pseudo-random shift register and XOR some physically-generated noise into the chain somewhere. The result will have the excellent statistics of the digital sequence but will never repeat and will be truly random. Essentially this takes a pseudo-random state machine and forces random state jumps, destroying the predictability of the machine.

It's hard to generate quality random numbers from an analog noise source. Opamps are especially bad, having 1/f noise, popcorn noise, goofy frequency rolloffs. Digital stirring helps a lot.

John

Reply to
John Larkin

Thanks, John. I believe that there is a good circuit which deals with pseudo-random number generation in Art of Electronics by H & H. I suppose that I would sample the output of a white noise generator (i.e take the LSB from the ADC conversion) and then XOR the sampled bit with the shift register. Easy enough way to generate random numbers.

Reply to
Nicholas Kinar

If you need a random number whan, say, a button is pressed, run a pseudo-random register at a MHz rate and freeze or latch it when the button is pressed. The time of press is essentially random, good enough.

John

Reply to
John Larkin

"good enough"

Actually that is a key question that no one has asked. What is the random number generator to be used for? Do you need true random numbers with 1 bit of entropy per bit, pseudo random numbers with no entropy, or a mixed result?

Reply to
David Eather

The Vebo voltage is normally 5 - 6 volts, with a bit of work you can get satisfactory results from a 9 - 10 volt supply

Reply to
David Eather

Thanks, David.

I'm using the random number as an initial seed for the generation of a Maximum Length Sequence (MLS), which will be used as a source signal in an acoustic response analysis system. Although it would suffice (I think) to load the bits of the register with boolean values of 1, I would like to generate a number of random bits, and use these random bits to load the register.

Reply to
Nicholas Kinar

Any deterministic manipulation with the initial data can't make it more random then it is. Hashing only hides the obvious dependencies.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

RF transistors break down as low as 3V, but is that really avalanche, or is it zener effect?

Tim

-- Deep Friar: a very philosophical monk. Website:

formatting link

Reply to
Tim Williams

The LFSR simply makes your somewhat random event _look_ more random. The LFSR adds nothing to the randomness and will only mask errors in your random source (a *very* difficult thing to do and even harder to prove).

Reply to
krw

IIRC zener

Reply to
David Eather

FWIW

I would have thought a fully deterministic LSFR of sufficient length with a predefined initial seed would, in this case, work best. You would be able to test all the audio properties and know that every unit built, and every run made, performs appropriately.

Reply to
David Eather

Look for Xilinx XAPP 052 (July 7, 1996) which has descriptions and tap tables for linear feedback shift register generators with periods of up to 2^168 - 1 -- clock that as fast as you can, and it's still going to take a while!

--

Reply to
artie

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.