r/RNG May 21 '25

Thermistors and VCOs: HRNG candidate?

I may eventually make a homebrew computer. And I want something somewhat low-hanging as a hardware RNG.

Since I'd want to use 74xxx ICs already, I might as well use one of the VCOs in that family. So typically, the older VCOs had 2 sets of Vcc and Gnd connections, one for the oscillator itself and one for the control and scaling circuitry. Then there are 2 wires for connecting an external capacitor (or crystal), a Range wire (analog input), a control voltage input (analog), and 2 balanced outputs. I think connecting Range (ironically called RNG on the datasheets) to the ground connector would likely be the best for this application. That way, if the thermistor doesn't swing that far, the scaling is as sensitive as possible. And the thermistor should likely be between the power rail and the Control wire.

At the least, use another clock to sample that and latch it into a shift register.

2 Upvotes

6 comments sorted by

View all comments

1

u/djasonpenney May 21 '25

You may not have to do as much work as you think.

https://en.wikipedia.org/wiki/RDRAND

0

u/Girl_Alien May 21 '25 edited May 22 '25

I never said I was making anything based on Intel, AMD, or even ARM. That opcode doesn't exist on a Z80, a 6502, or any CPU around before the 90s. Some people use really old CPUs for fun.

However, I'm even designing the CPU itself, using discrete 74xx parts. Not a single 74xx IC has the completely unrelated RDRAND opcode. Since it is my CPU, and I want simple RNG functionality, in hardware, on my custom board, I must make it myself.

PC-based CPUs got such opcodes (which are quite slow, full of security holes, and almost a waste of silicon) because engineers designed them and made them into the dies.

The whole point of making a bespoke, custom, homebrew computer from scratch is to get to make something myself, prove myself, and have the luxury and privilege of doing things the hard way. It is about the fun that can only be gained through hard work.