Random-Number Generator Auto-Balances Its Bit Output

Oct. 27, 2003
The "white noise" generator supplies one of the simplest methods for producing random data with hardware. To convert this noise to logic levels, many designs use a standard logic gate and fish around for the gate input threshold by injecting the...

The "white noise" generator supplies one of the simplest methods for producing random data with hardware. To convert this noise to logic levels, many designs use a standard logic gate and fish around for the gate input threshold by injecting the noise via a potentiometer or by using complex circuitry. However, neither approach guarantees a balance of ones and zeros at the output. This balance is important to ensure an even distribution of bit "heads and tails" or byte data. The noise train needs to be randomly timed from pulse to pulse, but the long-term duty cycle should be 50%.

The circuit shown in the figure uses a standard white-noise maker using Q1, Q2, and R1. The noise is amplified by C1, R2, R3, and Q3, providing 1 or 2 V of noise at roughly 1 MHz. This circuit portion won't be reliably noisy when operated at less than 12 V. Final amplification is done with inverting gates. Any 74HC inverting gates will do, as would a single noninverting gate. However, the second gate filters out some partial transitions of the first.

R4—C3 has a very long time constant (>1000X) compared to noise frequency. If the cumulative gate-output duty cycle is 50% and swings rail-to-rail, the A1 voltage follower will output VCC/2, because C3 will charge and discharge to this average voltage. This same VCC/2 is created with R6 and R7. Both nodes are inputs to the A2 integrator, which has a long RC timing relative to the noise. The integrator is the voltage source for amplifier Q3; R3's value is chosen for the integrator to output a midrange 6.5 V. Now the feedback loop is complete: The integrator output will "find" the gate threshold, lock in a 50-50 balance of high and low logic timing, and compensate for variables like supply voltage, temperature, and IC variations.

This particular application, in a nightclub light sequencer, required only a byte of data at a slow rate. Further testing was done by displaying six of the 74HC164 outputs as a pair of octal digits and analyzing sets of many readings for bit content as shown in Table 1, available in the online version of this article. The circuit was chilled or heated to cause a 10% compensating shift in the integrator output. All digits 00 to 77 were well represented in each data set. If the application's 50-50 split is crucial, a more precise op amp or a different value of R6 can be used.

Details on the distribution of the octal digital pairs under various operating conditions can be found in Table 2, 3, 4 and 5.

Sponsored Recommendations

Board-Mount DC/DC Converters in Medical Applications

March 27, 2024
AC/DC or board-mount DC/DC converters provide power for medical devices. This article explains why isolation might be needed and which safety standards apply.

Use Rugged Multiband Antennas to Solve the Mobile Connectivity Challenge

March 27, 2024
Selecting and using antennas for mobile applications requires attention to electrical, mechanical, and environmental characteristics: TE modules can help.

Out-of-the-box Cellular and Wi-Fi connectivity with AWS IoT ExpressLink

March 27, 2024
This demo shows how to enroll LTE-M and Wi-Fi evaluation boards with AWS IoT Core, set up a Connected Health Solution as well as AWS AT commands and AWS IoT ExpressLink security...

How to Quickly Leverage Bluetooth AoA and AoD for Indoor Logistics Tracking

March 27, 2024
Real-time asset tracking is an important aspect of Industry 4.0. Various technologies are available for deploying Real-Time Location.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!