Close

Work-in-progress design uploaded to Github

A project log for True-Random Number Generator

Modern security and cryptography call for a source of true-random numbers. This design creates them from thermal noise in a resistor.

Tom AndersonTom Anderson 04/20/2017 at 07:170 Comments

The design spreadsheet, schematic, and layout are now at https://github.com/tomacorp/true-rng . The README has been updated with the license, which is MIT.

If anyone is interested in the analog design technique that I am using, please let me know. I think there is a lot written about how to analyze circuits, but not so much about how to design them. It would be good to hear what people want to read about. I could take many different directions with the writing.

The schematic is not too bad but the layout is really rough. I have the first cut at a placement done, and a little bit of routing. I can see that I should rip up all the routing, refine the placement, and route again.

One of the things that engineers often wonder is, "When is the design done?"

When I build a board, my intention is to make it as good as I know how. I have ordered production quantity boards on a new PC board layout first cut, and shipped them with no modifications needed. The reason for this is that when ordering boards, it is not that much more expensive to get more, as long as you don't mind waiting a few weeks for the boards. It is just too tempting to have more.

For this project, I don't intend to sell anything, although I might if there is sufficient interested. However, I have discovered that I enjoy improving designs until I can find any ways to make them better. That is when I know the design is finished: I can't find anything to improve.

This is my first EAGLE board. In my experience, the first board in a new CAD tool is disappointing. How will EAGLE work out? Checking will help. I should look at every part footprint and pinout. I intend to simulate the design. To do this, I will hook up a Spice simulator and bring in my simulation models. This design is about random noise, and Spice can calculate noise spectral density versus frequency. I can integrate the noise data across frequency to find the RMS value of the noise. There is also more to simulate such as a switched-capacitor power supply, voltage regulators, and filtering.

The design spreadsheet is an xlsx file. I wish there was a great spreadsheet application for electronic engineering! I used to use an open source spreadsheet called sc written by James Gosling. I contributed to sc back in the day. While writing this, I checked and found sc on github. If you are into code archeology, try it out!

Discussions