Analog circuits based on op amps can be used to implement mathematical functions and are still useful in many applications due to their unique attributes.
Say the word “computer” or “computation” and the instinctively associated concept is “digital.” That makes sense since most computers and computation functions are implemented with general digital logic, specialized arithmetic logic units (ALUs), or dedicated computing engines
But “most” does not mean “all.” Not only were analog circuits and functions used for executing math functions before digital processing and computers became commonplace, but they are still used as a cost- and power-effective solution for well-defined functions such as summing, subtraction, multiplication, division, absolute value, maximum/minimum, rms, peak, square roots, squaring, derivatives, exponentials, and integrals.
This FAQ will explore the applications and use of analog components for computing, and show some of the basic operations
Q: I’m a little confused—what do you mean by “analog” computing? Isn’t computing a numerical operation?
A: Computing is not an exclusively digital operation, and analog computing is just what the term indicates. The analog output voltage of the computing block is related to its analog input voltage or voltages by a specific mathematical function. For example, output Vout = (Vin)2 is an analog “squarer” function.
Q: Do I need electronics for analog computing?
A: Absolutely not! Analog computing predates electronic circuits and functions. The venerable slide rule is an analog computer which can be used for multiplication, division, logarithms, roots, and more, Figure 1. Although non-electronic analog computing is accurate to only two, three, perhaps four significant figures, it was used with great effectiveness by engineers, scientists, and others until it was made obsolete by the mechanical calculator machine in the 1940s and 1950s, and electronic calculator in the 1960s and 1970s.
Q: Why do it “analog”? Why not just use a processor, microcontroller with software, or a hardwired arithmetic unit? I don’t see a need for an analog computer. I have access to all the computational power I need.
A: It’s true that you don’t need an analog computer, but you may well need analog computing functions for many reasons:
- many applications need just a little bit of computational capability, such as an AC-line power meter which needs to determine the power being used by an AC load. To do so with digital circuitry would require an A/D converter to digitize the signal to 0.1% (typical), digitally determine the rms value of current and voltage, multiply the two rms values (again, digitally) and deliver the numerical output. While this is not conceptually difficult, it still consumes significant processor resources, and will probably provide more final resolution than is needed, so ironically it is resource intensive yet precision “overkill.” If this computation is done via analog circuits, all it takes is a few ICs while the processor load is considerably reduced, and a small microcontroller suffices for the rest of the project.
- For higher-speed signals, doing the calculations can quickly consume an extreme amount of processor resources, or require a higher-speed computing engine which may not be otherwise needed.
- many of the issues associated with A/D conversion and digital calculations, such as choice of fixed-point versus floating point, roundoff/truncation errors, and digitization uncertainty, can quickly add up to a headache. In contrast, with analog computation, the accuracy is about 0.1 to 1% (depending components), and that’s all there is to worry about to a large extent. Further, the analog computation is inherently done in real time.
- For very high-speed signals such as RF carriers, analog computation may be the only way to provide critical functions such as the logarithmic amplifier (log amp) needed to dynamically adjust gain and so maximize SNR over a wide dynamic range of received inputs on carriers at hundreds of MHz or even tens of GHz frequencies.
Q: Where are analog computing and functions a “best fit?”
A: In some ways, analog computing is best at very low and very high frequencies. At very low speeds up to between roughly 10 kHz and 100 kHz the performance of the digital computing function may be far more than needed, and so be costly and power hungry; at the highest speeds in the hundreds of MHz and multiple GHz, doing it digitally may require high-speed A/D converters and a high-performance processor core which is expensive and power-hungry, or simply not available.
Q: Is analog computation using electronics a new thing?
A: Absolutely not — it’s a very old thing. Back in the first part of the 20th century before digital computing and computers became available and widespread, analog computers were used to work out calculations, and even solve complex differential equations. Firing tables, planetary, and satellite orbits, nuclear weapons, and energy work, tide tables (surprisingly complex) and more were set up and solved using all-analog computers. Analog computers were also used as simulators to train pilots with humans providing the input stimulus and the computer reacting as the aircraft would function.
Q: How were analog computers set up?
A: Typically, banks of single-function analog blocks were set in a single chassis, and they were then wired with patch cords to represent the flow of the signal, Figure 2. For example, if the equation was X = Y2 + ΔZ/dt, a voltage (such as 0 to +10 V) was used as the input Y. This was input to a squaring block to create Y2, and the output of that block was then fed to a summing block which had the time derivative ΔZ/dt (providing by another block) as its other input.
Each block usually had adjustments knobs for gain, offset, integration time, and some other settings, often using precision 10-turn potentiometers. The output could be a simple voltage level, displayed an analog meter readout, or even a line on a CRT display, all done in real time.
Q: What speeds could these analog computers handle? What was the size
A: The earliest ones used vacuum tubes, Figure 3, so they were large (a single functional module might be the 4 inches long, 3 inches deep, and 2 inches thick) and ran hot, with bandwidth on the order of 10 to 100 kHz. Keep in mind, though, that an analog signal conveys quite a lot of information in a given bandwidth (Shannon’s law and information theory).
The analog bandwidth is not directly comparable to the clock rate of a digital system, and in the earliest digital computers, it took many internal clock pulses to perform a calculation (shifts, adds, and so on). As soon as solid-state op amps using discrete transistors became available, they were used in op amps which replaced the tube models, and they were replaced by IC-based op amps. Some vendors packaged the op amp and support passives as a single enclosed module to provide an analog function as a single “canned” block, Figure 4.
Q: Were there real-time embedded applications for these all-analog computing functions?
A: Yes, early navigation and guidance systems both for ships, aircraft, and missiles used them to translate the signals from the gyros and accelerometers to needed position information. Remember that speed is the integral of acceleration, and distance is the integral of speed, so the x, y, and z-axis acceleration signals from the trio of accelerometers were double-integrated by analog functions to provide distance and thus position information. Some of these high-end systems had extremely accurate performance – at a cost, of course.
Q: What are some of the issues associated with analog computation?
A: They are similar to the ones that are of concern whenever analog functions (op amps and more) are used for signal processing or signal conditioning. These include linearity, offset, temperature-related drift, aging, and bandwidth. Some of these deficiencies (such as offsets) can be corrected by trimming, but others (such as linearity) are much more difficult to correct. Thus, it often makes sense to use higher-performance components if they are available and the cost is acceptable.
Q: What kind of accuracy can an analog computing system offer?
A: It varies, of course, but 1% is typical, and 0.1% or somewhat better can be achieved with careful design, choice of components, execution, and operating conditions.
Q: Is any academic work being done these days on using analog computers?
A: Yes, there is some work using hybrid computers which use analog functions where it makes sense with respect terms of cost, power, size, and other attributes and combined with digital computation where that approach is best; for example, see “Not Your Father’s Analog Computer” from IEEE Spectrum.
Part 2 of this FAQ will look at some specific analog-computing blocks which show examples of what can be accomplished using op amps in various configurations. Although these analog functions can be built using dedicated devices or ICs, they are also often embedded within analog circuits, and signal conditioning front ends, and so have considerable relevance.
References
- EE World, “Why Use a Nonlinear Amplifier?”
- International Slide Rule Museum
- The Analog Computer Museum
- The George A. Philbrick Researches Archive
- K2-W Operational Amplifier Data Sheet and Applications
- Robert Paz, “Analog Computing Technique”
- Quora, “What are the advantages analog computers have over digital ones?”
- The Computer Museum, “Analog Computers”
- Analog Devices, “Op Amp Applications”
- Analog Devices, “Multiplier Application Guide”
- Analog Devices, “Analog Multipliers MT-079 Tutorial”
- University of Rhode Island, “Operational Amplifier as A Black Box”
- Analog Devices, “Nonlinear Circuits Handbook”
- Analog Devices, “Amplifier Applications Guide”, Section 9, Section 10