I'm trying to design an op-amp circuit to sum up four voltages by using a non-inverting summing configuration. You can see it in the circuit below, though for illustration's sake, the resistor values are just 100 Ω. I'm having some issues with deciding what values to use.


simulate this circuit – Schematic created using CircuitLab

To start, I analyzed the circuit below to determine how the gain is affected. Assuming an ideal op-amp, the voltage at the inverting and non-inverting terminals match each other. Starting there, all current from the four inputs go through \$R_7\$ to go to ground, so the voltage at the non-inverting terminal (call that \$V_P\$) can be written as follows:

$$ \frac{V_A-V_P}{R_1}+\frac{V_B-V_P}{R_2}+\frac{V_C-V_P}{R_3}+\frac{V_D-V_P}{R_4} = \frac{V_P}{R_7} $$

Assuming all resistors are equal, the resistors cancel each other out, and that simplifies to

$$ V_P=\frac{V_A+V_B+V_C+V_D}{5} $$

The inverting terminal \$V_N\$ follows the basic formula for a non-inverting sum, with the gain being determined by \$R_6\$, the feedback resistor, and \$R_5\$:

$$ V_{\text{OUT}} = \left(1+\frac{R_6}{R_5}\right) \cdot V_N $$

Altogether, the output voltage can be written as a sum of the input voltages. Depending on your pick for \$R_5\$ and \$R_6\$, unity gain seems to be achievable.

$$ V_{\text{OUT}} = \left(1+\frac{R_6}{R_5}\right) \cdot \frac{V_A+V_B+V_C+V_D}{5} $$

With all this, you can determine the net gain from the resistor values, but how should I begin in determining what values are appropriate to use for the op-amp? In this topology, how do multiple inputs affect the bandwidth, and how do you pick resistor values that maximize bandwidth? Would bandwidth still be affected by the net gain as shown in the last equation, or is it only dependent on the gain term from \$R_5\$ and \$R_6\$? I've tried following this guide that helps design summing circuits, but the methodology used seems to indicate that \$R_7\$ should not be included, so I'm unsure.


3 Answers 3


Remove R7, it's not required.

Make (R6/R5)+1 equal to 4.

Keep all resistor values in the range 1k to 100k.

Keep R1, R2, R3 & R4 all the same value as each other.

The voltage at the op amp's non-inverting input will be the average of the 4 inputs.

The circuit will now produce the instantaneous sum of the four inputs.

Output (without R7) = average of the 4 inputs * gain

= ((VA+VB+VC+VD)/4)*4 = VA+VB+VC+VD

If you were to leave R7 in circuit as shown then there are effectively 5 inputs to be summed with the fifth input (the R7 input) always set to 0 V. So the instantaneous voltage at the op amp's non-inverting input is now the average of the 5 inputs with the fifth input always set to 0 V. In this situation the non-inverting gain would need to be set to a value of 5 in order for the circuit's output to be the sum of the 5 inputs (or the 4 active inputs).

Output (with R7) = average of the 5 inputs * gain

= ((VA+VB+VC+VD+0V)/5)*5 = VA+VB+VC+VD

You can prove for yourself using Millman's theorum that the voltage at the op amp's non-inverting input is always the average of the 4 inputs or the 5 inputs if R7 is in place.

If R7 is left in place it should have a value equal to the values of the other 4 input resistors.


The disadvantage of the non-inverting summer is the possibility of crosstalk between inputs : for example if signal A was fed from 10 ohms source impedance, (R1 / 10) and signal A was used elsewhere, the voltage at the summing point would be added to A, attenuated by only about 20dB, and clearly audible to anything listening to (or recording) channel A alone.

If this matters to you, then you can keep R7 low (e.g. R1/10, attenuating the summed voltage by another 20dB) and live with a low amplitude at the summing point, making up for it with increased gain (R6/R5 + 1). This has the disadvantage of poorer noise performance, as a tradeoff for somewhat improved crosstalk between inputs.

However, the major advantage of the inverting summer is the virtual earth, which avoids the crosstalk issue altogether (though careful layout is still necessary to keep crosstalk below -80dB)

So the best choice depends on situational information that only you have.

  • \$\begingroup\$ Thanks for replying. Keeping R7 low would result in poor performance. The voltage attenuation at the summing node can be seen as \$\frac{R_7}{(4R_7)+R_i}\$ where Ri is the input resistances (all same). As an alternative, would having 50-ohm termination resistors at A,B,C, and D to ground work as well? I didn't show it, but my signals are coming in from coaxial cables, so I plan to have 50-ohm termination resistors at the input, but they don't affect the equations here. \$\endgroup\$ Oct 21, 2021 at 14:13
  • \$\begingroup\$ Termination resistors at the inputs won't eliminate the crosstalk (they may reduce it a little, as they are in parallel with the source impedance). I still don't know if the crosstalk matters to you; merely pointed it out in case it was something you hadn't considered that might become important later. Personally I'd use a virtual earth summer and invert again afterwards. \$\endgroup\$
    – user16324
    Oct 21, 2021 at 15:19
  • \$\begingroup\$ Ok, thanks. It's quite the conundrum. The signals that I'm summing are small-voltage signals (100 mV). I can't say whether or not crosstalk is important; I'm not too sure myself. Following your example, you got 20dB from 20*log(R1/10). This attenuation would get worse as R1~R4 increase, but for crosstalk, you are just using R1 only? My source is 50-ohms, so if R1 is 10k, attenuation would be 46 dB? I'm a bit lost on how to work this out. \$\endgroup\$ Oct 21, 2021 at 18:33
  • \$\begingroup\$ Are the sources used for anything else, or is their only purpose to be fed into the summer? If that's their only purpose, the crosstalk doesn't matter. (I only meant R1 as representative : 50/R1 represents -46dB crosstalk onto channel 1; 50/R2 for channel 2, etc) \$\endgroup\$
    – user16324
    Oct 21, 2021 at 19:05
  • \$\begingroup\$ Yes. The voltages are signal voltages that are being fed into the summer; they are also being fed into other summers as well (to achieve sums like A+B, etc.). That's all. What if I just summed 2 inputs instead of 4? I can keep R7 low compared to the input Rs, and the closed loop gain won't have to be as high to compensate. I can also reduce the chance of crosstalk spreading along other inputs. \$\endgroup\$ Oct 21, 2021 at 19:21

Assuming the voltages are all to have equal weights, you have R1 = R2 = R3 = R4. There's no need for R7 unless you need to reduce the voltage at the non-inverting input, so leave it out for now.

When all the voltages are equal to (say) 1V, the voltage at the non-inverting input will be 1V. To make it a summing amplifier you need a voltage of 4V, so the ratio of R6/R5 must be 3. If you include R7 you'd just have to increase the gain, which would reduce the bandwidth and increase the noise and DC errors, so leave it right out.

Now you have two sets of ratios but there are still two degrees of freedom. You can pick some reasonable and easily available in precision resistor value like 10K for R1..R4. Now the impedance seen by the non-inverting input is 2.5K. You can pick R5||R6 = 2.5K (and R6/R5 = 3) to equalize the impedances seen, or for some op-amps that's not particularly important because bias current is so low and you might pick R1..R4 much higher to minimize loading, for example.

For a given op-amp bandwidth (and maybe phase margin) will be improved by reducing resistor values. Too low and power is wasted or the op-amp may not be able to drive the low resistance or the input loading is too much on whatever is driving it. So, it's a trade-off. If you're dealing with MHz the resistor values will typically be much lower than if you're dealing with DC-audio.

P.S. You have two variables and two equations for R6 & R5 and in the above example R6 = 10K and R5 = 3.333K. You could use three 10K resistors in parallel to make R5 for a precision circuit.

  • \$\begingroup\$ Thanks for replying. My signals are small (0.1 V sine wave), but I'm attempting to achieve a bandwidth of close to 100 MHz. Without R7, isn't there a risk of crosstalk between signals? They are used elsewhere, so I want to reduce the risk of crosstalk as best as possible. The problem seems to occur with the tradeoff of having 4 inputs which causes the closed-loop gain to be high. If I just summed 2 inputs, would that allow for more flexibility and help prevent crosstalk? \$\endgroup\$ Oct 21, 2021 at 19:07
  • \$\begingroup\$ Or, what if a current feedback amp is used? That way, bandwidth remains constant regardless of gain even if the input resistors and maybe R7 are high. \$\endgroup\$ Oct 21, 2021 at 23:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.