100nF

Summing amplifier calculator: inverting and non-inverting summer

The output of an op-amp summing amplifier from up to four inputs, each input's gain and share of the output, the noise gain that sets the bandwidth, and the clipping, slew-rate and input-capacitance checks; for the inverting summer or the non-inverting one, or, in design mode, the input resistors for each input's range and the output range. The defaults are TI SBOA272's two-input summer at full scale, −4.88 V out with a noise gain of 11.73 and 102 kHz of bandwidth, and the page's tests hold the calculation to SBOA272's, AN-31's, AN-20's and SBOA092's printed figures.

V1 2.50 VR1 20.5 kΩV2 250 mVR2 2.05 kΩ−+V_O−4.88 VR_F 20.0 kΩnoise gain 11.73raiseslowersswing limit0−4.9V_OH 4.90 V, above the scale−2.44V1−2.44V2−4.88V_O
Fig 1 — Inverting summer, V_O = −R_F (V1/R1 + … ). Inputs 2.50 V, 250 mV give −4.88 V out, inside the −4.90 V to 4.90 V the output can swing. Bars: each input's contribution, gain × voltage, green raising the output and gold lowering it, stacked to V_O.
Output V_O = −R_F (V1/R1 + … + Vn/Rn)
−4.88 V
Input 1: gain −R_F/R1 · contribution · input impedance
−0.976 V/V · −2.44 V · 20.5 kΩ
Input 2: gain −R_F/R2 · contribution · input impedance
−9.76 V/V · −2.44 V · 2.05 kΩ
Noise gain 1 + R_F/(R1 ∥ … ∥ Rn), with R1 ∥ … ∥ Rn = 1.86 kΩ
11.73 V/V · 21.4 dB
Small-signal bandwidth GBW/NG
102 kHz
Slew rate the output needs, 2π·f·|V_O| at 10.0 kHz · available
0.306 V/µs · 0.400 V/µs
Full-power bandwidth at 4.88 V peak, SR/(2π·|V_O|)
13.1 kHz
Input-capacitance zero 1/(2π·C_in·(R1 ∥ … ∥ Rn ∥ R_F)), with R1 ∥ … ∥ Rn ∥ R_F = 1.70 kΩ
15.6 MHz
Output swing, V_OL to V_OH
−4.90 V to 4.90 V
Resistor from + to ground for least bias-current error, R1 ∥ … ∥ Rn ∥ R_F (AN-20)
1.70 kΩ
Input common-mode voltage
0 V: the + input is grounded

How this is calculated

Standard: TI SBOA272C, Analog Engineer's Circuit: Inverting Summer Circuit (pp. 1–4, Eq 8, 9, 11, 13); TI SNLA140D, AN-31 Amplifier Circuit Collection (Figures 1-5 and 1-6, p. 5); TI SNOA621C, AN-20 An Applications Guide for Op Amps (Figures 1, 2 and 4, pp. 3–6); TI SBOA092B, Handbook of Operational Amplifier Applications (Figure 25, p. 24; pp. 63–66)

VO=−RF(V1R1+V2R2+⋯+VnRn)V_O = -R_F\left(\frac{V_1}{R_1} + \frac{V_2}{R_2} + \cdots + \frac{V_n}{R_n}\right)
The inverting summer. SBOA272 p. 2 writes it for two inputs, "Vo = Vi1 × (−R3/R1) + Vi2 × (−R3/R2)", with R3 the feedback resistor; AN-31 Figure 1-5 and AN-20 Figure 4 for three, with R4; SBOA092 Figure 25 with "+ …". Each input's gain is −R_F/R_k and its input impedance is R_k (SBOA092 p. 24).
VO=(1+RFRG)∑kVk/Rk∑k1/Rkn=2:  VO=(1+R2R1)(V1R4R3+R4+V2R3R3+R4)V_O = \left(1 + \frac{R_F}{R_G}\right)\frac{\sum_k V_k/R_k}{\sum_k 1/R_k} \qquad n = 2:\; V_O = \left(1 + \frac{R_2}{R_1}\right)\left(V_1\frac{R_4}{R_3 + R_4} + V_2\frac{R_3}{R_3 + R_4}\right)
The non-inverting summer. The right-hand form is AN-31 Figure 1-6 as printed (p. 5), with R3 carrying V1 and R4 carrying V2, R1 to ground and R2 the feedback; "(V1 + V2) if R3 = R4". The N-input form on the left is the same superposition for N resistors into the + input (derived); it gives SBOA092's direct-addition circuit (p. 65), whose third leg to ground is an input at 0 V.
∣Gk∣=sk (VO,max−VO,min)Vk,max−Vk,min,Rk=RF∣Gk∣|G_k| = \frac{s_k\,(V_{O,max} - V_{O,min})}{V_{k,max} - V_{k,min}}, \qquad R_k = \frac{R_F}{|G_k|}
Design, SBOA272 steps 2 to 5 (p. 2) with s_k the share of the output swing given to input k: "For this design, half of the output swing is devoted to each input", s = 1/2. With R_F = 20 kΩ it gives 0.98 V/V and 20.4 kΩ ≈ 20.5 kΩ, 9.8 V/V and 2.04 kΩ ≈ 2.05 kΩ.
NG=1+RFR1∥R2∥⋯∥Rn,BW=GBWNGNG = 1 + \frac{R_F}{R_1 \parallel R_2 \parallel \cdots \parallel R_n}, \qquad BW = \frac{GBW}{NG}
SBOA272 Eq 8 and 9: "Be sure to use the noise gain (NG), or non-inverting gain, of the circuit. When calculating the noise gain note that R1 and R2 are in parallel." AN-20 p. 6 says the same for three inputs. For the non-inverting summer NG = 1 + R_F/R_G, AN-20 p. 4's bandwidth of a non-inverting stage. SBOA272's design: NG = 11.73 V/V, BW = 102 kHz.
SR>2πfVpSR > 2\pi f V_p
SBOA272 Eq 11 (p. 2): the slew rate a sine of peak Vp at frequency f needs; 2π × 10 kHz × 4.9 V = 0.31 V/µs against the OPA170's 0.4 V/µs. In analysis the calculator uses |V_O| for Vp, taking the inputs as the peaks of in-phase signals.
12π (Ccm+Cdiff) (R1∥⋯∥Rn∥RF)>GBWNG\frac{1}{2\pi\,(C_{cm} + C_{diff})\,(R_1 \parallel \cdots \parallel R_n \parallel R_F)} > \frac{GBW}{NG}
SBOA272 step 8 (Eq 13–14): "ensure that the zero created by the gain setting resistors and input capacitance of the device is greater than the bandwidth of the circuit." With 3 pF + 3 pF and 1.7 kΩ it is 15.6 MHz, printed 15.6 MHz; the numeric line of Eq 13 prints the capacitances as "3 pF × 3 pF", where its symbolic line and its result both have the sum. For the non-inverting summer the resistance is R_F ∥ R_G, the resistors at its inverting input (applied here, not printed).
RB=R1∥R2∥⋯∥Rn∥RFR_B = R_1 \parallel R_2 \parallel \cdots \parallel R_n \parallel R_F
AN-20 Figure 4 (p. 6): "R5 = R1 ‖ R2 ‖ R3 ‖ R4 For minimum offset error due to input bias current", a resistor from the + input to ground. AN-31 Figure 1-5 marks its R5 "Optional for Input Bias Current Cancellation" and draws 250 Ω, where the rule gives 286 Ω.
Zin,k=Rk+(R1∥⋯∥Rk−1∥Rk+1∥⋯∥Rn)Z_{in,k} = R_k + \left(R_1 \parallel \cdots \parallel R_{k-1} \parallel R_{k+1} \parallel \cdots \parallel R_n\right)
The input impedance of a non-inverting summer's input with the other sources ideal, derived: the input resistor in series with the rest of the network. SBOA092 p. 65 prints the three-leg case: "Zin = 3/2 R2 = 15 kΩ for each input"; the calculator gives 15.0 kΩ.

Assumptions

What sets a summing amplifier's output

A summing amplifier adds voltages. In its usual, inverting form it is an inverting amplifier with more than one input resistor: every input drives a current through its own resistor into the op amp's inverting input, and the op amp holds that node at ground by pulling the same total current out through the feedback resistor. TI's Handbook of Operational Amplifier Applications (SBOA092) puts it in one line: "Current in the feedback loop is the algebraic sum of the current due to each input. Each source, E1, E2, etc., contributes to the total current, and no interaction occurs between them" (p. 23). The output is that current times RF, inverted, so each input arrives at the output multiplied by −RF/Rk, its own gain, set by its own resistor. The formula in the reference section above is the whole of it.

Three properties follow, and all three are what make the circuit useful. The gains are independent: changing R1 changes input 1's weight and nothing else. AN-20, TI's applications guide for op amps, calls this the circuit's advantage: "there is no interaction between inputs and operations such as summing and weighted averaging are implemented very easily" (p. 6). The input impedance of each input is its own resistor; SBOA092 p. 24: "Each input “sees” its respective input resistor as the input resistance." And the op amp's inputs never move: SBOA272, TI's inverting-summer cookbook circuit, notes that "The common-mode voltage of an inverting amplifier is equal to the voltage connected to the non-inverting node, which is ground in this design" (p. 1), so the common-mode range of the op amp is never in question.

The price is the inversion, and one thing that is easy to miss: the input resistors are all, in effect, in parallel at the summing node, and that parallel combination is what the op amp's loop sees. It sets the noise gain, and with it the bandwidth, for every input at once. The next sections come back to it.

The non-inverting summer turns the arrangement round. The inputs meet at the non-inverting input through their resistors, which average them, weighted by the conductances 1/Rk; the op amp then amplifies that average by the non-inverting gain 1 + RF/RG. AN-31, TI's amplifier circuit collection, prints the two-input case in Figure 1-6 (p. 5), with every resistor 10 kΩ, so the average (V1 + V2)/2 is doubled and the output is the plain sum. It keeps the sign, at the cost of every property of the inverting circuit listed above: each input's weight depends on every other input resistor, the input impedance of one input depends on the others, and the op amp's inputs follow the weighted average, so its common-mode range matters.

Noise gain and bandwidth: why adding an input slows all of them

An op amp with a constant gain-bandwidth product closes its loop at GBW divided by the noise gain, and for the inverting summer the noise gain is 1 + RF/(R1 ∥ … ∥ Rn). SBOA272 is explicit about which gain to use: "Be sure to use the noise gain (NG), or non-inverting gain, of the circuit. When calculating the noise gain note that R1 and R2 are in parallel." AN-20 says it for three inputs, bandwidth "may be calculated as in the inverting amplifier shown in Figure 1 by assuming the input resistor to be the parallel combination of R1, R2, and R3" (p. 6), where the inverting amplifier's bandwidth "is equal to the unity-gain frequency divided by one plus the closed-loop gain" (p. 3).

Because the noise gain does not depend on which input is driven, every input has the same bandwidth, whatever its own gain. SBOA272's simulation shows it: its inputs have gains of 0.98 V/V and 9.76 V/V, and "the bandwidth is the same for either input. This is because the bandwidth depends on the noise gain of the circuit, not the signal gain of each input" (p. 4). The table runs the formula for SBOA092's adder, every resistor 10 kΩ, and its averager, RF = R/n, on the 1.2 MHz op amp SBOA272 uses.

Inputs nAdder: NGAdder: bandwidthAverager: RFAverager: NGAverager: bandwidth
12600 kHz10.0 kΩ2600 kHz
23400 kHz5.00 kΩ2600 kHz
34300 kHz3.33 kΩ2600 kHz
45240 kHz2.50 kΩ2600 kHz

A unity-gain adder of n inputs has a noise gain of n + 1: four inputs at unity gain cost as much bandwidth as a single inverting stage with a gain of −4. The averager, whose feedback resistor shrinks with the number of inputs, stays at a noise gain of 2. An input that is wired but unused, its resistor grounded, still counts: add a third, unity-gain input to SBOA272's circuit and its noise gain goes from 11.73 to 12.73, its bandwidth from 102 kHz to 94.3 kHz. For the non-inverting summer, the input network sits outside the loop and the noise gain is the stage gain 1 + RF/RG, AN-20's non-inverting bandwidth, "the amplifier unity-gain frequency divided by the closed-loop gain" (p. 4).

Worked example: TI SBOA272's two-input summer

SBOA272 designs an inverting summer for two signals of very different size: input 1 spans −2.5 V to 2.5 V, input 2 spans −250 mV to 250 mV, and the output is to use −4.9 V to 4.9 V on ±5 V rails, at up to 10 kHz, with an OPA170 (1.2 MHz, 0.4 V/µs, rail-to-rail output). Step 1 is to "Select a reasonable resistance value for R3", 20 kΩ. The rest follows from one decision in step 2: "For this design, half of the output swing is devoted to each input." Each gain is then half the output span over the input's span, each input resistor is RF over its gain, and the calculator's design mode, whose defaults are these goals, reproduces every step.

step 2   |G1| = ((4.9 − (−4.9))/2) / (2.5 − (−2.5))   = 0.980 V/V, −0.175 dB
step 3   R1 = 20 kΩ / 0.98                            = 20.4 kΩ → 20.5 kΩ (E96)
step 4   |G2| = ((4.9 − (−4.9))/2) / (0.25 − (−0.25)) = 9.80 V/V, 19.82 dB
step 5   R2 = 20 kΩ / 9.8                             = 2.04 kΩ → 2.05 kΩ (E96)
gains    −20 kΩ/20.5 kΩ  ·  −20 kΩ/2.05 kΩ            = −0.9756  ·  −9.756 V/V
step 6   NG = 1 + 20 kΩ / (20.5 kΩ ∥ 2.05 kΩ = 1.86 kΩ) = 11.732 V/V, 21.39 dB
         BW = 1.2 MHz / 11.732                        = 102 kHz
step 7   SR > 2π × 10 kHz × 4.9 V                     = 0.308 V/µs
step 8   1 / (2π × 6 pF × 1.70 kΩ)                    = 15.6 MHz
output   full scale: −2.44 V + −2.44 V                = −4.88 V

SBOA272 prints 0.98 V/V and −0.175 dB, 20.4 kΩ ≈ 20.5 kΩ (Standard Value), 9.8 V/V and 19.82 dB, and 2.04 kΩ ≈ 2.05 kΩ. Its step 6 gives "NG = 1 + 20 kΩ / 1.86 kΩ = 11.75 V/V = 21.4 dB" and "BW = 1.2 MHz / 11.75 V/V = 102 kHz". The small difference in the noise gain is rounding: SBOA272 rounds R1 ∥ R2 to 1.86 kΩ before dividing, and 1 + 20/1.86 is 11.753, where the unrounded1.86 kΩ gives 11.732. Both are 21.4 dB and both round to 102 kHz and 102 kHz, SBOA272's 102 kHz. "This requirement is met because the closed-loop bandwidth is 102kHz and the design goal is 10kHz."

Step 7 prints "SR > 2 × π × 10 kHz × 4.9 V = 307.87 kV/s = 0.31 V/µs"; unrounded it is 307.876 kV/s, so the printed figure is truncated rather than rounded, and the OPA170's 0.4 V/µs meets it. Step 8 checks that the zero the input resistors make with the op amp's input capacitance lies above the bandwidth, with Ccm and Cdiff of 3 pF each and R1 ∥ R2 ∥ R3 = 1.7 kΩ, giving "15.6 MHz > 102 kHz"; the calculator has 15.6 MHz. The numeric line of that equation prints the capacitance as "3 pF × 3 pF"; its symbolic line has Ccm + Cdiff, and only the sum, 6 pF, gives 15.6 MHz.

SBOA272's simulations check the rounded design. Sweeping either input over its range with the other at 0 V, "The output is inverted and ranges from –2.44V to 2.44V" (p. 3): 2.44 V to −2.44 V for input 1 through 20.5 kΩ and 2.44 V to −2.44 V for input 2, each a little inside the 2.45 V the unrounded resistors would give, because rounding both resistors up lowered both gains. The AC simulation reports 0.98 V/V (−0.21 dB) and 9.76 V/V (19.79 dB), which are 0.976 (−0.21 dB) and 9.756 (19.79 dB) from the standard values, and a bandwidth of 114.86 kHz against 102 kHz calculated, which SBOA272 says "correlate well". With both inputs at full scale the output reaches −4.88 V, inside the ±4.9 V goal: −4.88 V to 4.88 V over every combination of the two ranges. That is the default the calculator opens with in its analysis mode.

Adders, averagers and the non-inverting summer: the classic circuits

SBOA092's section on "Summing and averaging amplifiers" (pp. 64–66) opens: "Voltages are summed by applying the signals to the same input of the amplifier. Amplifying, averaging, etc., may be accomplished by input resistor scaling. Inputs are effectively isolated from each other. Any number of inputs may be used in each of these circuits." Its circuits, with AN-31's two, run through the calculator as follows. The output column puts 1 V on every input and ignores the rails, to show the scale.

CircuitResistorsGains, V/VVO, 1 V on every inputAs printed
Adder, SBOA092 p. 64all 10 kΩ−1.000, −1.000, −1.000−3.00 VEO = −(E1 + E2 + E3)
Scaling adder, SBOA092 p. 641, 10, 100 kΩ; RF 100 kΩ−100, −10, −1.000−111 V−100(100E1 + 10E2 + E3)
Averager, SBOA092 p. 653 × 30 kΩ; RF 10 kΩ−0.333, −0.333, −0.333−1.00 V−(E1 + E2 + E3)/3
Weighted average, SBOA092 p. 6610, 20, 30 kΩ; RF 5.45 kΩ−0.545, −0.273, −0.182−1.00 V−(16.4E1 + 8.2E2 + 5.4E3)/30
Inverting summer, AN-31 Fig 1-53 × 1 kΩ; RF 2 kΩ−2.000, −2.000, −2.000−6.00 V−R4(V1/R1 + V2/R2 + V3/R3)
Non-inverting, AN-31 Fig 1-6all 10 kΩ1.000, 1.0002.00 V(1 + R2/R1)(R4/(R3 + R4))(V1 + V2) if R3 = R4
Direct addition, SBOA092 p. 653 × 10 kΩ, one grounded; 20 kΩ over 10 kΩ1.000, 1.000, 1.0002.00 VEO = E1 + E2

Two of the printed lines need a word. SBOA092's scaling adder writes its result as "−100(100E1 + 10E2 + E3)", but its own first form, R0/R1·E1 + …, with 100 kΩ over 1, 10 and 100 kΩ, is −(100E1 + 10E2 + E3), which is what the calculator gives; the leading 100 does not follow from the circuit. Its weighted average sets the feedback resistance to R1 ∥ R2 ∥ R3 (5.45 kΩ, a 5.1 kΩ resistor with a 1 kΩ trimmer) so that the weights add to one, and prints them rounded: 16.4/30, 8.2/30 and 5.4/30 against 0.545, 0.273, 0.182 exactly.

AN-20 describes the gain of an input to its three-input summer as "the ratio of the appropriate input resistor to the feedback resistor, R4" (p. 6). Its Figure 4 on the same page has it the other way up, VOUT = −R4(V1/R1 + V2/R2 + V3/R3), and the equation is the one that agrees with SBOA272, AN-31 and SBOA092.

The direct-addition circuit is the non-inverting summer with a third input resistor taken to ground. Grounding it is not incidental: it sets the average to (E1 + E2)/3, which the gain of 3 turns back into the sum. The same page gives the input impedance, "Zin = 3/2 R2 = 15 kΩ for each input": 10 kΩ in series with the other two 10 kΩ legs in parallel, which the calculator reports as 15.0 kΩ. Add the same grounded 10 kΩ leg to AN-31's Figure 1-6 without changing its gain and its output for 1 V on each input drops from 2.00 V to 1.33 V: in the non-inverting summer, every resistor on the + input is part of every input's weight.

Source impedance: where the two summers differ most

SBOA272's design description says the inputs "typically come from low-impedance sources because the input impedance of this circuit is determined by the input resistors", and its note 2 asks for input resistors "large when compared to the output impedance of the source". The reason is that a source's output impedance adds to its input resistor. What it does next depends on the circuit.

Take two 1 V inputs through 10 kΩ each and put 1 kΩ of source impedance in series with input 1 (a derived example). In the inverting adder with RF = 10 kΩ, input 1's gain falls from −1.000 to −0.909, −9.1 %, and input 2's does not move:−1.000. In AN-31's non-inverting summer the same 1 kΩ moves both: input 1's gain goes to 0.952 and input 2's to 1.048, because the weights are shares of one total and must still add to one. An error in one source's impedance shows up as a gain error on a different input. AN-20's "no interaction between inputs" is a property of the inverting summer only.

Where the model stops being valid

Common mistakes

Further reading