Analog Electronics
Transimpedance Amplifier
Op-amp converting photodiode current to voltage — front-end of every optical receiver
A transimpedance amplifier (TIA) converts a tiny photodiode current into a usable voltage using an op-amp with a feedback resistor. V_out = -I_in·R_f, so 1 microamp through a 1 megohm resistor becomes 1 volt out. The TIA is the front-end of nearly every optical receiver: fiber-optic links, LIDAR rangefinders, pulse oximeters, optical mice, barcode scanners. Stability is the tricky part — the photodiode's junction capacitance combines with the feedback resistor to push the loop into oscillation unless a small feedback capacitor C_f is added to flatten the response and set the bandwidth.
- Core equationV_out = -I_in · R_f
- Gain unitVolts per amp (ohms)
- Typical R_f10 kΩ to 100 MΩ
- CompensationC_f a few pF across R_f
- Bandwidth1 / (2π·R_f·C_f)
- ApplicationsLIDAR, fiber, oximeter, scintillator
Interactive visualization
Press play, or step through manually. The visualization is yours to drive — try it before reading on.
Watch the 60-second explainer
A condensed visual walkthrough — narrated, captioned, under a minute.
Why a photodiode is a current source
A photodiode is fundamentally a current-output device. Each absorbed photon with energy above the bandgap creates one electron-hole pair, and the pair gets swept out of the depletion region by the built-in electric field. At 850 nm in silicon, with a typical 50 percent quantum efficiency, one milliwatt of incident optical power produces about 340 microamps of photocurrent. The current is linear with light over six to seven decades, from picoamps in starlight to tens of milliamps in direct sunlight, as long as the diode is held at zero or fixed reverse bias.
The natural temptation is to "convert" that current to voltage by simply putting a resistor across the diode. It works — but badly. As current flows through the resistor, voltage develops across both the resistor and the photodiode. The diode is now forward-biased by that voltage, which changes its junction capacitance, its dark current, and its response linearity. A 1 microamp signal across a 1 megohm load gives 1 volt across the diode, deep into the I-V curve's nonlinear elbow. The response is no longer proportional to light; the bandwidth collapses; the noise is set by the resistor's thermal floor with no way to improve it. For any application that wants linearity over more than 30 dB of dynamic range, the passive resistor solution is dead in the water.
A transimpedance amplifier solves all three problems at once. The op-amp's inverting input is a virtual ground — the op-amp drives its output until the inverting and non-inverting inputs match in voltage, and since the non-inverting input is grounded, the inverting input sits at zero. The photodiode's anode is tied to that virtual ground; its cathode is grounded (photovoltaic mode) or reverse-biased (photoconductive mode). The diode's voltage is fixed regardless of current. All the photocurrent has nowhere to go but through R_f, where it produces V_out = -I_in·R_f. The output voltage is exactly proportional to the photocurrent, the diode sees zero or fixed bias, and the gain can be made huge by simply picking a big R_f.
Worked example: a pulse oximetry front-end
Concrete numbers make the design choices stick. A pulse oximeter uses two LEDs (red 660 nm and infrared 940 nm) shining alternately through a fingertip onto a single silicon photodiode. The signal of interest is the small modulation of transmitted light by the arterial pulse — roughly 1 percent of the DC light level, at 0.5 to 5 Hz heart-rate frequencies.
Photodiode (BPW34-class):
Active area 7 mm²
Junction cap C_d 70 pF at 0 V bias
Responsivity 0.55 A/W at 850 nm
Dark current 2 nA
Light through fingertip:
Incident optical power on diode 50 μW (typical)
Steady photocurrent 50e-6 W × 0.55 A/W = 27.5 μA
Pulse modulation ≈ 1% → 275 nA peak-peak
TIA design:
R_f = 100 kΩ → DC output = 27.5 μA × 100 kΩ = 2.75 V (in op-amp range)
Pulse signal at output = 275 nA × 100 kΩ = 27.5 mV peak-peak
Op-amp: low-bias-current FET input (input bias < 10 pA so doesn't add to signal)
C_f for stability with C_d = 70 pF, GBW = 10 MHz:
f_zero = 1 / (2π·R_f·C_d) = 1 / (2π·100k·70p) = 22.7 kHz
f_opt = √(f_zero · GBW) = √(22.7k · 10M) ≈ 477 kHz
C_f = 1 / (2π·R_f·f_opt) = 1 / (2π·100k·477k) ≈ 3.3 pF
Signal bandwidth: 1 / (2π·R_f·C_f) = 1 / (2π·100k·3.3p) ≈ 482 kHz
The 482 kHz signal bandwidth is hugely overkill for the 5 Hz heart rate, so we cascade the TIA into a 10 Hz active low-pass filter that throws away noise outside the pulse band. The TIA's job is just to do the current-to-voltage conversion with no instability, no nonlinearity, and dark-current contribution below the signal — and the rest of the chain does the filtering and amplification. That cascade — TIA → DC blocking and gain → bandpass filter → ADC → SpO2 algorithm — is essentially the entire signal path of a pulse oximeter.
The stability problem and the compensation capacitor
The textbook ideal of "V_out = -I_in·R_f" works fine in DC. At high frequencies the photodiode's junction capacitance C_d (the inverse-bias depletion-region capacitance, anywhere from 1 pF on a small high-speed diode to several nanofarads on a large area-cooled APD) sits from inverting input to ground. From the op-amp's point of view, R_f and C_d form a feedback network whose noise gain (1 / β, where β is the feedback factor) rises with frequency. There's a corner frequency f_z = 1 / (2π·R_f·C_d) above which the noise gain transitions from 1 to a rising +20 dB/decade.
If the op-amp's open-loop gain has rolled off to unity (the gain-bandwidth product, GBW) inside that noise-gain rise, the closed-loop circuit has too little phase margin and oscillates. Big photodiode + big R_f + fast op-amp is the classic recipe for an ugly multi-megahertz ringing on every output edge. The cure is the compensation capacitor C_f, a small picofarad cap in parallel with R_f. C_f puts a pole in the noise gain at f_p = 1 / (2π·R_f·C_f). If C_f is sized so f_p sits at the geometric mean of f_z and GBW, the noise gain levels off before crossing the open-loop curve, and the loop has roughly 45 to 65 degrees of phase margin — well damped, no ringing.
Photoreceiver front-end comparison
| Front-end | Topology | Linearity | Bandwidth | Dynamic range | Typical use |
|---|---|---|---|---|---|
| Passive resistor | R across diode | Poor (1 decade) | R·C limited | 20 dB | Crude on-off detect |
| Standard TIA | Op-amp + R_f + C_f | Linear 6 decades | kHz to 100 MHz | 120 dB | Fiber, LIDAR, oximeter |
| Switched-gain TIA | TIA + relay-switched R_f | Linear in each range | kHz | Effective 200 dB | Light meters, photometry |
| Logarithmic TIA | Op-amp + diode feedback | Logarithmic by design | Hz-kHz | 140 dB single range | Densitometers, lux meters |
| Bootstrapped TIA | TIA with cathode driven | Linear 6 decades | 10× faster | 120 dB | High-speed APD readout |
| Integrating TIA | Reset-and-integrate | Linear by integration | Pixel-rate | 140 dB with cooling | CMOS imagers, X-ray |
The standard TIA is the workhorse. The variants exist because real applications run into one of the standard topology's three weak spots — limited dynamic range without changing R_f, bandwidth limit set by R_f·C_d, or noise. Switched-gain TIAs ladder R_f values under microcontroller control to cover seven decades of light from photographic daylight to a single photon per millisecond. Logarithmic TIAs put a diode (or a transistor wired as a diode) in the feedback path so V_out is proportional to log(I_in), giving 140 dB of compressed range in one stage — exactly what an analog densitometer or a starlight imager wants. Bootstrapped TIAs drive the photodiode's cathode with a buffered copy of the inverting-node voltage, cancelling the C_d displacement current and gaining roughly an order of magnitude in bandwidth. Each variant trades complexity for a particular performance corner.
Why TIAs matter
- Optical communications. Every fiber receiver, from gigabit Ethernet to 400G coherent links, starts with a TIA bonded to the photodiode.
- LIDAR. Avalanche-photodiode TIAs detect the picojoule reflected pulse from a 200-meter object in under 10 ns.
- Medical instrumentation. Pulse oximetry, blood-gas analysis, spectrophotometers, scintillation gamma counters.
- Industrial sensing. Particle counters, smoke detectors, gas analyzers, encoder reading heads.
- Consumer optics. Optical computer mice, barcode scanners, autofocus IR sensors.
- Scientific imaging. Photomultiplier tube anodes, single-photon avalanche diodes, CCD/CMOS pixel readout.
- Quantum experiments. Trapped-ion fluorescence detection, single-photon homodyne detectors.
Common misconceptions
- Bigger R_f is always better. Gain grows linearly with R_f but bandwidth falls linearly and stability gets harder; pick R_f for the smallest signal, not the headroom.
- C_f is optional. Without C_f a TIA with non-negligible C_d will ring or oscillate; it's a stability requirement, not a tuning luxury.
- FET op-amps always win. Low input current matters at huge R_f, but FET op-amps have higher voltage noise — for low R_f, a bipolar op-amp is better.
- Photovoltaic mode is always best. It's lower noise but slower; LIDAR and fiber need photoconductive mode to hit gigahertz bandwidths.
- Layout doesn't matter at low frequency. The high-impedance node is the most sensitive in analog electronics; guard rings and short traces matter even at DC.
- Dark current is negligible. At room temperature, dark current adds shot noise that can dominate at low light; cooling or chopping is needed for sub-femtoamp signals.
Frequently asked questions
What is a transimpedance amplifier?
An op-amp circuit that converts an input current into an output voltage. The input is a high-impedance current source (typically a photodiode). The current flows through a feedback resistor R_f, producing V_out = -I_in·R_f. The op-amp holds its inverting input at virtual ground, so the photodiode sees zero volts across itself (photovoltaic mode) or a fixed reverse bias (photoconductive mode). The transimpedance gain has units of ohms — output volts per input amp.
Why not just put a resistor across the photodiode?
Because the resistor's voltage drop biases the photodiode and changes its response. A 1 microamp through 1 megohm gives 1 volt across the diode, putting it deep into nonlinear territory and adding capacitance that kills bandwidth. The op-amp's virtual ground keeps the diode at exactly zero (or a clean fixed reverse bias) regardless of current, so the response is linear over six or more decades of light intensity.
Why does a TIA tend to oscillate?
The photodiode's junction capacitance C_d sits from inverting input to ground. Combined with R_f, it adds a pole inside the feedback loop. The loop-gain phase reaches 180 degrees at the frequency where R_f and C_d form the noise-gain zero, and the circuit oscillates. Big photodiodes (large C_d, say 50 picofarads) combined with high R_f (say 1 megohm) are the worst case. Without compensation the output rings or breaks into outright oscillation at a few hundred kilohertz.
How does the compensation capacitor C_f work?
C_f is a small capacitor (a few picofarads) wired in parallel with R_f. It introduces a pole in the noise gain that cancels the zero from the diode capacitance, flattening loop phase before the unity-gain crossover. The optimal value sets the noise-gain pole at the geometric mean of the zero frequency and the op-amp's gain-bandwidth product. For 50 pF C_d, 1 megohm R_f, 100 MHz GBW, the optimum is about 1 pF, giving roughly 70-degree phase margin and a few-hundred-kilohertz signal bandwidth.
What sets the bandwidth and the noise?
Signal bandwidth is 1 / (2π·R_f·C_f) — the C_f compensation pole. Bigger R_f gives more gain but less bandwidth at the same C_f. Input-referred current noise has contributions from R_f thermal noise (sqrt(4kT/R_f), about 4 fA/√Hz at 1 megohm), op-amp current noise, and op-amp voltage noise multiplied by the noise gain (which rises with frequency). Picking the right op-amp — low input current noise for high R_f, low input voltage noise and low input capacitance for big C_d — is the optimization.
Where are TIAs used?
Fiber-optic receivers (gigahertz bandwidth, integrated on chip with the photodetector). LIDAR avalanche-photodiode front-ends. Pulse oximetry (red and infrared LEDs and photodiode in a finger clip). Optical encoders. Scintillation detectors in nuclear instrumentation. Photomultiplier tube anode readouts. Barcode scanners, laser tachometers, particle counters, smoke detectors. Anywhere a tiny photocurrent must become a clean voltage — there's a TIA at the front.
What's the difference between photovoltaic and photoconductive mode?
Photovoltaic: photodiode anode and cathode both at the same potential (the virtual ground). Lower dark current, lower noise, slower (the diode's full junction capacitance is in play). Best for precision DC or low-light work like pulse oximetry. Photoconductive: photodiode is reverse-biased through the op-amp arrangement. The depletion region widens, junction capacitance drops, and bandwidth grows by an order of magnitude — but dark current and noise rise. Used in LIDAR and high-speed optical receivers.