Hacker News new | ask | show | jobs
by jjoonathan 4480 days ago
Yep, it's embarrassing that this got published. Did the author just forget about mechanical tolerance? The random motion of molecules? Ambient sound waves? Electromagnetic noise?

I suppose it's forgivable that the author didn't think of these things but they should have run their technical article past a subject expert before publishing it. This isn't a nitpick, they screwed up the core concept of their article!

> there wasn't a similarly in-depth account of the precision of each system

That's because digital circuits won the "precision wars" so spectacularly that there was no need for comparison. On a digital computer, you can just keep adding bits to your datatype, doubling your precision with each bit, until you are happy. Bits cost almost nothing today (and very little 30 years ago) so you use as many as you need. If you underestimate how many you need, that's a planning problem, not a limitation of the digital technique. Meanwhile, the price of increasing the precision of an analog computer (mechanical, electrical, or fluidic) shoots up dramatically after a few decimal places and goes to infinity after a few more. That is a limitation of the analog technique.

Here's a fun demo of how the digital nature of a circuit grants it complete noise immunity (within tolerances), unlike any analog circuit that could ever be built:

https://www.youtube.com/watch?v=4TCnYYpZxEc#t=2806

2 comments

Make a circuit "digital" does not automagically make it more accurate, and you cannot "add bits" to a datatype to make your measurement more accurate.

Before a digital circuit can process a signal, it must first be quantized, an inherently analog process. Your digital data is only as good as your analog signal, plus inherent quantization noise[1]. In addition, any mixed-signal IC represents a design compromise between digital and analog constraints.

Any signal processing system is inherently limited by the SNR of its source signal. There is no point in building a more accurate converter than the noisiest component of your input data. In fact, when metrologists are trying achieve the maximum accuracy in their measurements, it is not uncommon to leave a test circuit on for days at a time, in order to reach a thermal equilibrium to minimize the seebeck effect[2].

And when engineers to need to make the most accurate of measurements, what do they turn to? Analog circuits. The world's most accurate voltage reference, the Kelvin-Varley Divider, dates back to the late 19th century[3]. For a modern example of a precision reference, see Jim William's excellent white paper, "Quantifying Silence"[4].

[1] http://en.wikipedia.org/wiki/Quantization_(signal_processing...

[2] http://www.keithley.com/knowledgecenter/knowledgecenter_pdf/...

[3] http://en.wikipedia.org/wiki/Kelvin%E2%80%93Varley_divider

[4] http://cds.linear.com/docs/en/application-note/an124f.pdf

Very inexpensive digital circuits can perform calculations on their inputs with much higher precision than any analog calculator ever built. Weight, volume, power, or dollars, pick your cost.

Yes, you are limited by your measurement, but you are so limited when operating entirely within the analog domain as well. Therefore it makes sense to make your measurements as accurate as possible, quantize once, and be done with it. Keeping it in the analog domain merely allows more points for noise to enter the picture.

Yes, in many circumstances it is advisable or necessary to perform calculations in front of the analog front end. Even the simplest "digital" transceiver amplifies and mixes before the AFE. However, I don't believe any of that is relevant to our criticism of the article, which focuses explicitly and extensively on performing calculations with cams, gears, and shafts at an "infinite level of resolution" and why the author thinks this is supposed to be better than digital computation:

> There are no least significant digits dropped, and answers are continuous rather than dependent on “for-next” clock-driven computing cycles.

Even if the article had talked about improving accuracy by skipping the digitizing step for gyroscopes, wind vanes, etc, his claim would not have been credible. It's not terribly difficult to digitize mechanical motion to the subatomic level (AFM is from the '80s) and many modern data sources (ring-laser gyroscopes, information acquired from remote ships and satellites) could not be coupled to the mechanical computer in a way that could be expected to beat digitization error.

A GPS chip likely has something to gain from correlating in front of the analog front end but a firing computer does not. You pay a fixed cost to go in and out of a digital representation, but with analog you keep paying for each calculation and, given that one of these firing computers weighed 3000lbs, I expect that this application saw digitization errors that were tiny next to calculation errors.

Thanks for being thorough, but I see your post as a tangental point rather than as a counterargument.

Without improving tolerances, the only way out is to go bigger.
I think you'd use all the mass in the observable universe long before the GNU Multi-Precision library started sweating :)
If you were naive. You can probably cheat (ie be more clever in your construction).
I suspect that once you had found a way to get the asymptotic cost growth under control you would find you had build a digital mechanical calculator.
My money would be on that as well, though not at crazy odds.