It has lately been discussed different ways to construct pure
random number generators by means of radiactive decay. I must admit
that this is a very good way to produce such numbers, but for a
number of reasons it is impractical to use such a device. (High
radiation levels are needed too produce a significant amount of data.)
The way to make good random numbers is to take about 20 stages of flops
and feedback 2 or three terms. Clock the thing as fast as you can, Say
50 mhz, and asychronously to your main processor clock. The shift register
needs its own crystal. The selection of feedback points is based on
Linear Congruential Method of Pseudo random numbers generated by most
machines.
The numbers generated are very, very uniform.
The way to test random number generators for randomness is to generate
the numbers in pairs and plot them on a scatter plot. This simple
cross check will show up many poor generators. Checking for uniform
density in higher dimensions will uncover even more subtle variations
from uniformity. There is an enormous literature on this topic. Obviously
you can screw it up, but it isnt that hard to get right either. There
is an excellent book just out on simulations that covers this. If
anyone wants the reference, I can dig it up.
Bottom line is that you don't need anything exotic. But the 8 or simple 16
bit methods on the small processors are no good.
Don Bellenger
donb@netcom.com