What? and Why!
Why the hell would you want an analog multiplier? Well… Quite a lot of practical things involve the multiplication of two voltages. It’s quite easy to add or subtract voltages from each other using an op amp and a few resistors, and you can also set an op amp to provide a fixed gain and thus “multiply” one signal with a fixed value.
But what if this value isn’t fixed? You could add a potentiometer to the op amp’s feedback loop, but what if the signal changes too quickly and too precisely for your fingers to follow? You might throw in a
That’s where the analog multiplier enters the picture. With it, you can do a slew of things:
- Voltage-controlled amplifiers Imagine you wanted to control the volume of 2 – or 6 audio channels, like in 5.1 surround. A single pot couldn’t do this, so a VCA can apply a single volume control signal to multiple audio signals
- Amplitude modulators Whether it be for small, micropower AM transmitters, or data transmission
Analogcomputation Since analogmultipliers are directly coupled, we can multiply two DC voltages together
- Audio effects Ring modulation—the sound effect behind the Daleks of Doctor Who—can easily be performed with an
- Voltage controlled oscillators and filters The
analogmultiplier is very useful for synthesizer building
As you can see, the analog multiplier is a quite versatile beast. There’s just one absolutely HUGE drawback: they are bloody expensive!
A bottom-end model (the otherwise excellent AD633 by Analog Devices) will easily stand you $8 a piece. That’s quite a price. The improved AD734 is a whopping $20 per part, which leaves it an absolute niché item.
There is, of course, a reason for this: Precision. The AD parts are individually laser-trimmed for very high precision (and low error). They use a circuit topology called the Gilbert cell which requires exceptional matching between transistors, as well as the voltage-to-current converting resistors that are integrated on the die. Even small mis-matches absolutely ruin the performance; so even at the price of $8, the AD633 is specified at 2% full-scale error.
The degree of matching required is, in fact, so extreme that it would be largely futile to attempt anything approaching a practical and reasonably precise analog multiplier using the Gilbert cell. Instead, let’s think outside the box, and start with what we really require of our multiplier part…
Quadrants Two or More?
With exceptions, most marketed analog multipliers are so-called four-quadrant multipliers. This comes from the fact that they have two multiplying inputs—X and Y (plus an optional set of auxiliary, non-multiplying inputs typically termed Z, W etc.)—and these inputs can both be either negative or positive, independent of each other.
To understand this, let’s look at the analog multiplier. The circuit schematic symbol for an analog multiplier is not fully standardized, but this one is fairly common and is the one we’ll use:
For the two inputs, X and Y, our four quadrants are defined as the following combination of voltages:
|Y < 0V||Y > 0V|
|X > 0V||Quadrant III||Quadrant I|
|X < 0V||Quadrant IV||Quadrant II|
You determine the quadrant, the multiplier is operating in by finding the row and column that matches the voltage polarity of the inputs. For instance, a situation where X = 1.5V and Y = 2.3V means we’re in quadrant I; and a situation where X = -2V and Y = 3.3V, we’re in quadrant II.
Thus, a four-quadrant multiplier can handle bipolar (±) X and bipolar Y inputs. But for a lot of applications, do we really need that? For instance, if we’re constructing a voltage-controlled audio amplifier, do we ever need the volume to go negative? Not really. If we want phase inversion, we can do it by other means (an inverting op amp configuration is a popular way to achieve this).
In fact, for a lot of applications, we can sacrifice the two quadrants, where the Y input is negative, that is, quadrants III and IV, leaving us with a two-quadrant analog multiplier, operating solely in quadrants I and II, and thus with the following constraints on the inputs:
- X can be either positive or negative
- Y can only be positive
Narrowing our requirement to two-quadrant operation means we can easily ditch the sensitive Gilbert cell layout, and go with something entirely more realizable on a breadboard or PCB. So with no further ado, let’s jump to the schematic!
Pro tip: The BB#2 Analog Multiplier requires both a positive and negative supply rail, as well as 0V ground. If you’ve only got a single +6V supply, you can use the BB#1 Negative Rail Converter to get a negative rail to work with. Remember to follow the instructions in the ADVANCED NOTE of the schematic, since the BB#1 will present a slightly less negative voltage than a full -6V.
- 1 × Dual op amp, rail-to-rail input-output (RRIO) with low offset voltage; LMC6482 suggested (see parts discussion)
- 2 x high-frequency n-channel Junction FETs (JFETs) matched for VGS; BF256B suggested (see parts discussion)
- 1/4W 1% tolerance (or better) carbon or metal film resistors in the values 100R, 10K, 12K, 82K, 100K, 120K and 330K
We’ll be making the 6K and 60K resistors from two 12K/120K resistors in parallel, since 6K and 60K is an unusual value
- 2x 100 nF capacitors (ceramic, film or tantalum) for bypassing the op amp
The parts list is quite short. The only thing you may find somewhat unusual is the presence of JFETs in the circuit. Unfortunately, since the circuit uses a particular property of the JFET, other transistor types, including the MOSFET, cannot be used instead. The BF256B is a relatively common and easily sourcable part, but you may use others as described in the parts discussion if you can’t get BF256Bs nearby, or have other JFETs in your armamentarium.
How it works
Editorial note: This circuit is, despite looking
The core of this circuit is the fact, that a JFET can operate as a voltage-controlled resistor. At certain gate-source (VGS) and drain-source voltage (VDS) combinations, the JFET acts as a quite linear, controllable resistor, controllable by VGS through setting the voltage at the gate—something called the ohmic mode of operation of the JFET. Beyond this region, the drain current no longer increases with the drain-source voltage, and the JFET is in its saturation mode – which we want to avoid.
Unfortunately, as you can see, the range of this operation is quite narrow, and continuously variable with the voltage at the source. Therefore, it’s quite impossible to realistically control the gate voltage directly.
Remember how I mentioned earlier that it’s possible to multiply a number with a fixed ratio with an op amp, by setting the gain? Well, that’s exactly what goes on here—except our ratio is set by Q1 acting as a voltage-controlled resistor. In this way, we’ve transformed the fixed ratio into a continuously variable multiplication ratio; and since our op amp configuration is the inverting configuration with our input at the – terminal of A1a, our gain goes all the way down to 0. If we had used a non-inverting op amp configuration, with the input at the + terminal of A1a, our gain (= multiplier) could not have less than 1, limiting the operation severely!
Thus, the trick now is to control the gate voltage of Q1, so as to acheive linear multiplication. And that’s where the bottom half of the circuit—the bit involving the A1b op amp— comes in. A1b controls the gate voltages of both Q1 and Q2 partly (the other half contributed by the voltage of the JFET), and since Q1 and Q2 are matched parts (more on that in the Parts Discussion), A1b “servos” its output so there is an infinitesimally small difference between the voltage at its + and – terminal. This means, that as the Y input changes, so must the gate voltage of Q2. As Y increases, the resistance across Q2 must decrease, which means the gate voltage must increase, and this increase carries over exactly to Q1 as well.
Again, due to the matching, and the fact that the proportion of drain voltage and A1b output voltage at each gate is identical, the resistance of Q1 decreases in lock-step with that of Q2. And since the R7, the input resistor of the Y input, is identical in size to R6, the feedback resistor of A1a, this resistance proportionality results in a precise multiplication of the X input voltage, with the Y input voltage, divided by a constant, which in this case is 10!
Since A1a is an inverting op amp, X is inverted too, so the output is actually -X × Y/10V). The division constant of 10V acts to increase the effective input range—otherwise we’d quickly run out of voltage range—and the division can easily be recovered with a fixed-gain op amp with a gain of 10! Similarly, it is possible to “de-invert” X by simply putting the multiplier output through an inverting op-amp; when the whole result is multiplied with -1, the output becomes X × Y/10V.
Phew…. That was a mouthful. Again, I’d really recommend you check out the online simulation above. At least for me, poking around and changing things is one of the primary ways to learn. And it’s okay not to grasp everything in one bite. However, the key concepts that come together to make this circuit work are:
- JFETs can act as voltage-controlled resistors in a range of gate-to-source voltage
- Because of the very high gain of op amps, they “force” the voltages of their inputs to be as close to each other as possible. This is the “servo” action of an op amp circuit like this.
The critical parts in this circuit are the JFETs and the op amp chosen.
JFET choice and matching
There are much fewer JFET types around at a reasonable cost than just a decade ago. Therefore, the choice is rather limited to a few good options. The important thing is you get JFETs suited for amplification and not just switching or “chopper amplifier applications”. These JFETs sacrifice linear performance for really fast switching of analog signals.
Some good JFETs that are usable in this circuit are:
- BF256 as suggested; available from ON Semiconductor (a.k.a. Fairchild) as well as others
- BF246, which, although slower than the ‘256, is still plenty fast and linear.
- BF244, similar to the ‘246
- 2N3891, which is similar to the BF256, albeit a good bit more expensive
These parts share a number of characteristics, including 1) a forward conductance (gfs) of between 1 and 10 mmho (mS, or milli-Siemens); 2) relatively low input and output capacitances (in the picofarads rather than tens or hundreds) and 3) bandwidths ≥ 300 MHz. If you’re checking other JFETs out, look for these parameters.
Unfortunately, this analog multiplier depends on matching the JFETs. This is relatively straightforward if you’ve got one of the many super-low cost component testers available. Just pop them in, one after the other, and find two that match in drain current and VGS as shown on the display. If you haven’t got a component matcher, you can use a multimeter in diode mode. Measure the diode drop between the gate (red lead) and the drain (black lead). Since this voltage depends greatly on the JFET temperature, you shouldn’t be holding the device with your fingers. Rather, leave it on the table, and use some gripping multimeter probes to measure it without heating up.
The more precise you want your multiplier to be, the better the matching should be. However, if you’re mostly going to be using it for audio applications, the matching needn’t be extreme. Still, it’s a good idea to have a bunch of JFETs around—20 or more—so you can find some that match well. It’s an investment, but I do promise that I’ll be using the JFET plenty in future Building Blocks projects. JFET circuits are a bit of a passion of mine (…I’m such a dork!), and I hope you’ll follow me down this rabbit hole.
Op amp choice
The following parameters matter greatly to the analog multiplier:
- Gain-bandwidth product. The faster the
op amp, the faster themultiplier will be, too, since it is bandwidth-limited by the op . The LMC6482 has a modest GBWP of around 1.5 MHz, but you ampused could easilyuse amplifiers with bandwidths more than ten times this.
- Input offset voltages. Typically written as VOS in data sheets, offset voltage adds offset errors. For some amplifier types (rail-to-rail input types), the offset voltage can vary quite a bit across the input voltage range. The LMC6482 shines in this area, as it has a low offset voltage (<1 mV).
- Output common-mode range. The input common mode range
is lessof a concern,since the voltage presented at the + and – terminals issignificantly less than the X and Y input voltages. However, you are naturallynot going to be able to exceed the output voltage range. This means that if you use op ampsthat are not rail to rail output, you should be aware that you’re going to have an output range which is less than your supply voltage rails.
I’ve decided to list op amps that work well with the BB#2 analog multiplier (apart from the LMC6482) —but as with anything in electronics, there’s a tradeoff. So there’s two lists – a high speed and a precision list.
High speed op amps
- TLV971 (single)/972 (dual)/974 (quad) Very low distortion part with a high bandwidth (~16MHz) and a rail-to-rail output.
- LM6142 (dual)/6144 (quad). Very high bandwidth (≥ 17MHz) rail-to-rail input and output, with a very wide voltage range supported (1.8V to 24V between V- and V+).
- NE5532 Classic audio op amp, with very low noise and a bandwidth of 10MHz. Unfortunately, the output voltage range is significantly reduced
- OPA350 (single)/2350 (dual). Burr-Brown designed precision op amp with a bandwidth of 38MHz(!) and very low distortion and an input voltage of <1mV
Precision op amps
- OP27. Expensive part from Analog Devices, but with an offset voltage in the microvolts. Simultaneously a high bandwidth of 8 MHz.
- OPA350 (single)/2350 (dual). Burr-Brown designed precision op amp with a bandwidth of 38MHz(!) and very low distortion and an input voltage of <1mV
- TLC2272 (dual)/2274 (quad). Low offset voltage and a decent bandwidth of 2.2MHz, as well as a relatively low cost, makes this a compelling option for moderate-high precision
- MC33201/33202/33204. A rail to rail input and output amplifier implemented with bipolar transistors, resulting in high speed and low noise compared to similarly priced CMOS offerings.
- TLV2372 (dual)/2374 (quad). A rail to rail input and output amplifier, implemented in CMOS. Very low cost, and with a decent bandwidth of 3 MHz. The offset voltage and noise aren’t superb, though…
This prototype is constructed on a simple, through-hole protoboard
This prototype is configured for a ±6.8V supply; hence, the supply-dependent resistors are 6K8 and 68K
Additionally, resistors are individually measured for optimal precision
Traces captured with a Rigol DS1102E directly to a USB flash drive. Test signals, both AC and DC, were generated with a FeelTech FY3200S low-cost 24MHz dual arbitrary waveform generator. Its sine waveform output is surprisingly low noise and distortion, and so were more than sufficient to test the performance of the BB#2.
Analog multiplier applications
A stereo volume control is easily implemented with two multipliers, and an extra dual op-amp configured with a gain very close to 10, so we get rid of the division factor imposed by the multiplier. A way to reduce the footprint of the two multipliers is to use a single quad
The basic concept of this volume control can also be extended and put to great use in audio effects. For instance, the control voltage signal at the Y input might as well be a slow triangle wave—and you’ve got a tremolo effect. Or you might increase the frequency of this control waveform and get ring modulation. Or just phase offset the triangle wave, and use it for a lush, stereo tremolo effect. With the BB#2, these effects which are usually implemented with expensive ICs (multipliers or dedicated VCA chips) are easy to achieve.
In this simple AM radio transmitter, a 74HC-series Schmitt-trigger inverter is used to generate the carrier wave. The carrier wave is multiplied with the audio input (termed the modulator), and the output is presented to a transistor emitter follower (also called a buffer, or a common collector amplifier), which drives an antenna through an AC coupling capacitor. The harmonics of the square wave carrier are supressed by the limited bandwidth of the multiplier op amp (if an LMC6482 is used).
With a simple antenna wound on a piece of cardboard and glued in place, a range of 10 meters was easily
Help me! PCBs and reference layouts?
I’m considering making reference PCB module designs for each building block available. Each block would be a tiny board with pin headers, one in THT and another surface mount, ready to plug into your circuit example. However, I also don’t want to take the joy (and sometimes, pain) of creating something yourself away.
So, I am open to suggestions! Would you like such a
Drop me a line at me [at] davidh.info. I would truly love to hear from you!