Negative Feedback: Topologies, Benefits & Loop Gain

The principle that makes precise analog circuits possible. Learn the feedback loop (forward gain A, feedback factor β, loop gain T = Aβ), closed-loop gain A/(1 + Aβ), desensitivity, bandwidth extension, distortion and noise-in-loop reduction, the four topologies (series-shunt voltage amplifier, shunt-series current amplifier, series-series transconductance, shunt-shunt transresistance) and how each changes input and output impedance, loop-gain measurement, and positive feedback — with Python quantifying desensitivity, bandwidth, distortion and impedance changes.

Negative feedback compares the output with the input and corrects the difference. Harold Black's 1927 invention traded away excess gain for accuracy, linearity and bandwidth — and it underlies every op-amp circuit, regulator and control system.

The key quantity is the loop gain T = Aβ: every benefit of feedback is proportional to (1 + T), and every stability risk comes from T's phase.

An analogy

Feedback is like steering a car: you continuously compare where the car is going with where the road goes and correct the difference. A car with a sloppy engine (variable A) still follows the road accurately because the driver (feedback) keeps correcting.

Why trade gain for feedback

Transistor gain varies with temperature, current and part-to-part spread, and is nonlinear. Resistors are stable, linear and cheap. Feedback makes the circuit's gain depend on resistors (1/β) instead of transistors, as long as there is plenty of excess gain (T ≫ 1).

Four topologies

Named by how the output is sampled and how the feedback is mixed at the input:

Benefits and costs

Benefits: stable, predictable gain; extended bandwidth; reduced distortion, output impedance (for voltage sensing) and effect of disturbances inside the loop (supply ripple, crossover distortion). Costs: reduced gain (need more stages), noise at the input is not reduced (noise gain applies), and — the big one — risk of instability when the loop's phase shift reaches 180° while |T| ≥ 1.

Loop gain analysis and measurement

Find T by breaking the loop (with correct loading), injecting a test signal and measuring the returned signal. In simulation, Middlebrook's or Tian's method inserts a probe without disturbing DC bias; on the bench, a small injection transformer/resistor in series with the feedback path and a network analyser measures T for power supplies. Blackman's impedance formula gives closed-loop impedances directly from short- and open-circuit loop gains.

Formulas

Worked example: Closed-loop gain

Given: A = 2 × 10⁵, β = 0.1

Find: A_f.

Answer: 9.9995 (0.005% below 10)

Worked example: Output resistance

Given: R_out 100 Ω, T = 1000, voltage sampling

Find: R_out,f.

Answer: ≈ 0.1 Ω

Worked example: Bandwidth extension

Given: Open-loop f_H 10 Hz, A₀ 10⁵, β 0.01

Find: Closed-loop f_H.

Answer: ≈ 10 kHz

Feedback loop

  x_in ──►(Σ)── x_err ──► [  A  ] ──┬──► x_out
           ▲ −                       │
           └──────── [  β  ] ◄──────┘
  x_out/x_in = A/(1 + Aβ);   loop gain T = Aβ

The error signal is the input minus a fraction β of the output. When A is huge, the loop drives the error toward zero, so x_out ≈ x_in/β — set by the (precise, passive) feedback network rather than the (imprecise) amplifier.

What feedback buys

# Negative feedback: gain desensitivity, bandwidth extension, distortion and impedance changes
A, beta = 1e4, 0.01
T = A * beta                                    # loop gain
Af = A / (1 + T)
print(f"loop gain {T:.0f}: closed-loop gain {Af:.3f}")
A2 = A * 0.5                                    # open-loop gain halves (temperature, part change)
Af2 = A2 / (1 + A2 * beta)
print(f"open-loop gain drops 50% -> closed-loop changes {(Af2-Af)/Af*100:.2f}% (desensitivity 1+T = {1+T:.0f})")
fH = 1e3                                        # open-loop bandwidth
print(f"bandwidth {fH:.0f} Hz -> {fH*(1+T)/1e3:.0f} kHz with feedback (GBW constant {A*fH/1e6:.0f} MHz)")
HD_open = 0.10                                   # 10 % distortion open loop
print(f"distortion {HD_open*100:.0f}% -> {HD_open/(1+T)*100:.2f}% with feedback")
Rin, Rout = 10e3, 1e3
print(f"series-shunt (voltage amp): Rin {Rin/1e3:.0f}k -> {Rin*(1+T)/1e6:.2f} Mohm, Rout {Rout:.0f} -> {Rout/(1+T):.1f} ohm")
# loop gain 100: closed-loop gain 99.010
# open-loop gain drops 50% -> closed-loop changes -0.98% (desensitivity 1+T = 101)
# bandwidth 1000 Hz -> 101 kHz with feedback (GBW constant 10 MHz)
# distortion 10% -> 0.10% with feedback
# series-shunt (voltage amp): Rin 10k -> 1.01 Mohm, Rout 1000 -> 9.9 ohm

With a loop gain of 100, halving the amplifier's gain changes the closed-loop gain by only 1%; bandwidth grows 101× (from 1 kHz to 101 kHz) and distortion falls 101× — all paid for with a 101× reduction in gain. Series-shunt feedback raises input resistance and lowers output resistance by the same factor, making an almost ideal voltage amplifier.

Common mistakes

Applications

Key takeaways

Going further