Goodnight Wiki / Analog Computing

Analog Computing

An analog computer is a physical system configured so that it's governed by equations identical to the ones you want to solve. You impose initial conditions and let the variables evolve with time. The solution falls out of the physics. In the ludicrously simple case: a hose and a bucket are an analog computer that performs integration. Adjust the flow rate to match your input function, and the amount of water in the bucket is the integral.1

This sounds like a museum curiosity — and for about forty years, it was. Electronic analog computers peaked in the 1960s and 70s, powering NASA's Mercury, Gemini, and Apollo simulations. They were fast and parallel but nightmarish to operate: racks of vacuum tubes (later transistors), manually wired through patch panels, requiring specially trained personnel. When digital computers caught the MOS scaling wave, analog couldn't follow. The last large hybrid computers were produced in the 1970s, and the field went silent.

It shouldn't have stayed silent this long.

Why the Revival

The fundamental advantage of analog computing hasn't changed: continuous-time computation doesn't discretize time, so it doesn't need the extremely fine time steps that make certain differential equations brutally expensive on digital machines. A digital computer solving a stiff ODE might need millions of timesteps. An analog computer configured for the same equation just lets current flow — the solution emerges in milliseconds.

What changed is fabrication technology. Yannis Tsividis at Columbia pointed out the obvious: analog MOS technology is now extraordinarily advanced — it's in every smartphone receiver, every biomedical sensor, every IoT device. The old analog computers failed because 1970s technology couldn't integrate them at scale. Modern CMOS can.1

Tsividis and his students built single-chip analog computers. The first generation contained integrators, multipliers, and function generators laid out in a field-programmable gate array style, with digital programming to configure connections between analog blocks. No clock — voltages and currents evolve continuously. The second generation added a novel continuous-time digital architecture: clockless binary signals that can change value at any instant, rather than at predefined clock edges, used to build programmable function generators from analog-to-digital converters, lookup tables, and digital-to-analog converters all operating in continuous time.

The Accuracy Tradeoff

The catch is precision. Tsividis's computers solve differential equations to within a few percent of the correct answer. For digital standards, that's terrible. But "few percent accuracy" isn't always a liability — it depends what you're doing with it.

Approximate computing is already a strategy in the digital world for machine learning, computer vision, bioinformatics, and big-data mining. When your inputs are approximate (noisy sensor data, stochastic models), demanding fourteen digits of precision from the solver is wasteful. The analog computer gives you a fast, energy-efficient first approximation, and a digital computer can refine it from there. Because the digital side starts with a good initial guess rather than from scratch, speedups of 10x and energy savings of similar magnitude are achievable.1

The numbers on the analog side are striking: typical processing takes about a millisecond, first-order differential equations require less than 0.1 microjoule and half a square millimeter of chip area in 65nm CMOS. Second-order equations take twice the area and energy but the same solution time. Tsividis floated the idea of wafer-scale analog integration — an entire 300mm wafer used as one massive chip could hold over 100,000 integrators, simulating 100,000 coupled first-order nonlinear dynamical equations in milliseconds at tens of watts. If it works, that's performance far beyond what digital computers can match for this class of problem.

The big "if" is error accumulation. Whether analog errors conspire against you at that scale is still an open experimental question.

The Hybrid Future

The most interesting design space isn't pure analog or pure digital — it's hybrid architectures where analog handles the parts it's good at (fast approximate solutions of differential equations, direct sensor interfaces, massively parallel local computation) and digital handles the parts it's good at (precise arithmetic, storage, programmability, communication).

The hard problems are engineering problems, not fundamental ones. Complicated problems require many analog blocks, making chips expensive. Arbitrary connections between distant blocks require prohibitive wiring. Multivalued functions and partial differential equations need techniques that were under development in the 1970s when the field was abandoned — there's a body of half-finished work waiting to be picked up.

The local-connectivity constraint is interesting because it maps naturally onto certain problem structures. Simulating arrays of molecules that interact with nearby molecules but not distant ones, for instance, fits the analog computer's topology perfectly. So does a lot of fluid simulation and computational biology. The constraint isn't a bug — it's a hint about which problems analog computing is for.

Vannevar Bush's differential analyzer in 1931. Lord Kelvin's tide-predicting machines in the 19th century. The Apollo flight computers. Claude Shannon — father of digital design theory — publishing a seminal theoretical treatment of analog computing in 1941. The history of analog computing isn't a dead branch on the computing family tree. It's a dormant one, and the conditions that killed it have changed.

Footnotes

  1. Not Your Father's Analog Computer by Yannis Tsividis — source 2 3

Open in stacked reader →