Experimental measures reveal problems where previously none were suspected.
This is phase 2 of my investigation of physically-random noise
For this phase, I wrote the statistical routines, re-wrote the FFT's, and wrote the graphing routines. The graphs are saved to .BMP files and converted to .GIF for use with HTML. The statistic results are saved as HTML. To minimize display delay, the HTML "table" construct was not used.
Characterizing the noise waveform is a fairly unusual approach to random generator certification. The usual approach is to quickly digitize the noise into supposedly random bits, and then present those for randomness checking. I expect that bit-level results tend to hide real problems which could be detected far easier if we had access to noise waveform data.
My first noise recording, using my classic all-transistor noise-generator circuit, updated with a pseudo-zener IC.
ZENER1ZY shows a non-flat frequency response which rolls off about 6dB between 2kHz and 10kHz. The normal curve is also somewhat off. But the autocorrelation graph captures our attention with completely unexpected structure.
ZENER157 covers a larger sample and so resolves the autocorrelation structure even more convincingly. Maybe we can fix it up by modifying the data.
ZENER10T shows that simply subtracting the mean has no effect on the autocorrelation structure.
ZENER1P7 "fixes" the data by subtracting the previous data value. This is differential data. And now we see the autocorrelation structure is gone, and the normal curve is fairly nice, especially with respect to finding some counts in the +/-4th sd.
With the data fix-up, this is probably an acceptable generator.
This is the commercial FM receiver source. Actually, it is just a headphone FM radio, in monaural mode, with signal taken across earphone wires, with the earphone still connected. When placed in a metallic conductive tin, we can hear a local station drop into noise as the top is put on. So is FM hiss good noise?
FM11WOWK Here we have a not-great frequency response, starting high and sloping down to the end. And the normal graph is a bit off. But it is the autocorrelation which again captures our attention: we see structure. Is that structure real? To answer this question we can use a somewhat larger sample.
FM1ME904 With more data analyzed, the structure in the autocorrelation graph is even more pronounced. This is not good. Suppose we try to "fix-up" the data.
FM1889TN The data fix-up appears to solve the correlation problem, but does not quite produce a good normal curve.
In the end, this commercial FM receiver is not a great noise generator.
DIG1 is the output from an MM5837 Digital Noise Generator IC. As such, it is not useful as an unknowable randomness generator. But it might provide calibration to our measurements and an example of a good generator.
DIG1PIO8 The raw data shows an extremely flat frequency response curve with a roll-off starting at about 18kHz which may be inherent in the sound card. The autocorrelation shows some bias. The normal curve data seem reasonable, if not extending to the limits. In this case the graph may have been scaled somewhat high because the center data point (which is tested for scaling) is randomly low.
DIG10EKB The frequency response, previously flat, now shows a fixed rising slope. The data fix-up process is thus revealed as a form of digital high-pass filter. The autocorrelation is improved, but the normal curve does not extend much beyond 3 sd's, which seems a little limited.
FM2 was recorded as the noise output from an old communications IF strip. This complex circuit presents the opportunity of seeing 10.7MHz noise, translated down to the 455kHz detector, and may be flatter than we might get otherwise. Of course, a lot depends upon the detector.
FM2QXTMB Here we have a frequency response with a small peak about 1kHz, with a nice flat plateau until it rolls of starting about 17kHz. The autocorrelation is nice, perhaps with some bias. But the normal graph is terrible!
FM2JSVH7 Here we enable the data differential fix-up. The frequency response now rolls to a gentle peak around 16kHz, and the autocorrelation is good. But the normal curve is not only bad, it is peculiar.
In the end, we do not get an acceptable result from this generator.
This is the original ZENER1 circuit, with the second transistor replaced by an audio amplifier IC, which should have better linearity.
ZTN1QOY9 First, the frequency response starts out high and droops down thereafter; this is quite similar to ZENER1. The autocorrelation shows actual structure; although not quite the same as ZENER1, it is similar. And the normal graph is strikingly similar to ZENER1. It thus appears that the second stage has not been much improved.
ZTN1ALIQ A substantially larger sample confirms the autocorrelation structure.
ZTN1YUN6 With data fix-up, we have rolling hill of a response generally peaking from 10kHz to 18kHz or so, which is remarkably similar to the fixed-up ZENER1. The autocorrelation structure is gone, and the normal curve looks fairly good, also like the fixed-up ZENER1.
In general, this generator should be acceptable with data fix-up, although not much of an improvement over the original.
This is the same circuit as ZTN1, with a capacitor used to increase the gain of the IC output amplifier.
ZTC2L8W2 Here we have a frequency response which gently peaks about 5kHz, and then slopes down evenly to the end of the graph. It may be that the feedback cap value provides a welcome low-frequency cut which sets up the 5kHz peak. Most surprisingly, the autocorrelation we saw in the circuit without the cap is now gone; this may well be due to the new low-frequency cut, and is very welcome. The normal graph looks a little raggedy on the ends, however.
ZTC2BHA2 With "diff from prev" filtering, the frequency response is a broad plateau between 5kHz and 18kHz. The autocorrelation is good, and the normal curve is good if not great (this is another case where the random central value influences the scaling, but that would not affect data on the far tails).
All in all, a reasonable generator.
Now we come to the attempt to use the "zener" IC is voltage mode. This eliminates the first transistor, which should be an advantage, because we expect a modern feedback amplifier to be more linear. The system may require more gain, however.
NNN1QMBF This was intended as a base measure of the 2-stage IC amplifier system, which has noise of its own. We see far too much low-frequency noise, which may be due to normal transistor 1/f noise. At about 2kHz it starts a nice flat plateau extending to about 18kHz, which appears to be a system limit. Autocorrelation shows significant structure, which could be mostly related to massive low-frequency signal. And the normal graph is nice.
ZNN1 adds the "zener" IC as a voltage noise source into the NN1 amplifier system.
ZNN1CEXP We see a little more range in the sampled values, but otherwise looks fairly similar to the system without the noise source.
ZNN1BGNX Fixing up the data leads us to a nice rising response, peaking about 17kHz and then dropping off somewhat sharply. The autocorrelation is nice, and the normal curve is great. We could do with a somewhat larger range in sampled values, however.
ZCN1Z98P We see a very flat frequency response, except for the 18kHz rolloff which is system related. The autocorrelation is clearly biased, but the normal curve looks if not great, then at least decent.
ZCN1I0DG Here we turn on the data-filter and subtract the mean from each sample. This appears to fix the autocorrelation problem. Note that both the frequency response and normal graphs are essentially unchanged by this filter. This is probably as close as we will get to the ideal white noise generator.
ZCN161T8 When we switch to "diff from prev" filtering, the frequency response changes markedly from flat to a hill. But the autocorrelation problem is fixed, and the normal graph is essentially unchanged.
ZCC13Y33 The frequency response seems a little more droopy at the high end. But the autocorrelation is literally off the graph (for the whole graph), and the normal curve indicates serious positive clipping or compression of some sort.
ZCC1S5VH With "diff from prev" filtering, we get a nice hill for a response, and the autocorrelation is back to what we want. But the normal graph still says something is wrong.
ZCN3JTFR With "diff from prev" filtering, this seems to be a nice generator.
Last updated: 1999-06-22