Current mirroring is an active circuit technique that copies a reference current to one or more output branches, maintaining a constant flow regardless of varying load impedances. In real-world installations and bench prototypes, this changes everything: it replaces inefficient, heat-dissipating resistive biasing networks with high-output-impedance active sources, stabilizing operating points in integrated circuits and precision analog front-ends. Beginners commonly confuse current mirroring with simple series resistive current limiting or voltage regulation. A resistor limits current but drops voltage proportionally to the load; a current mirror actively adjusts its internal voltage drop to force the exact target current through the load, acting as a true constant-current source.

The Core Mechanism: How a Basic BJT Current Mirror Works

The most fundamental current mirror uses two matched bipolar junction transistors (BJTs). The first transistor (Q1) is 'diode-connected'—its base and collector are tied together. A reference resistor sets the current flowing through Q1, which establishes a specific base-emitter voltage (Vbe). Because the bases and emitters of Q1 and Q2 are tied together, Q2 is forced to have the exact same Vbe. If the transistors are perfectly matched and at the same thermal equilibrium, Q2 will sink or source the exact same collector current as Q1.

The Plumbing Analogy: Think of it like a dual-plumbing system where the water pressure in the first pipe (the reference branch) mechanically forces an identical valve opening in the second pipe (the output branch). No matter what nozzle you attach to the second pipe, the valve opening remains fixed by the first pipe's pressure, dictating the flow rate.

While conceptually simple, the physical reality on the bench introduces non-ideal behaviors. Transistor mismatch, thermal gradients across the silicon die, and the Early effect (base-width modulation) all cause the output current to deviate from the reference. According to foundational texts from All About Circuits, ignoring the Early effect in a basic two-transistor mirror can lead to output errors of 10% or more when the output transistor experiences a high collector-emitter voltage.

Worked Numeric Example: Sizing a 1mA Discrete Mirror

Let’s design a basic 1mA current source using discrete 2N3904 NPN transistors to bias a sensor load. We have a Vcc = 15V supply.

  1. Calculate the Reference Resistor (R_ref): At 1mA, a typical silicon BJT has a Vbe of roughly 0.65V. The voltage across R_ref is Vcc - Vbe = 15V - 0.65V = 14.35V. Using Ohm's Law: R_ref = 14.35V / 0.001A = 14,350Ω. We will select a standard 14.3kΩ 1% precision resistor.
  2. Establish the Reference Current: With 14.3kΩ installed, I_ref is exactly 1.003mA.
  3. Predict the Output Current (I_out): Assuming perfect matching, I_out = 1.003mA.

The Early Effect Trap: Q1 is clamped at Vce = 0.65V. But what if your sensor load pulls the collector of Q2 up to 10V? The Early voltage (Va) for a 2N3904 is typically around 100V. The output current increases proportionally to the Vce difference. The error factor is roughly (Vce2 - Vce1) / Va. Here, (10V - 0.65V) / 100V = 0.0935. Your '1mA' mirror will actually output 1.097mA—nearly a 10% error. This is why basic mirrors are rarely used for precision discrete work without cascode staging or emitter degeneration.

Where You Meet Current Mirroring in Practice

You might not build discrete current mirrors every day, but you use them constantly inside the black epoxy of your favorite ICs.

  • Op-Amp Internal Biasing: Open the datasheet for an LM358 or LM741. The internal schematic is dominated by current mirrors. They distribute a single master bias current to the differential input stage, the gain stage, and the output stage, ensuring the op-amp operates correctly even as the battery voltage sags.
  • Active Loads in Differential Pairs: Replacing the passive collector resistors in a differential amplifier with a PNP current mirror boosts the stage's voltage gain from a meager ~100 to well over 10,000, because the small-signal output impedance of a current mirror is massive compared to a physical resistor.
  • 4-20mA Industrial Loops: In process control, sensors transmit data via a 4-20mA current loop. The transmitter's output stage relies on precision current mirrors (often laser-trimmed on silicon) to force the exact loop current regardless of the miles of copper wire and varying loop resistance.

Topology Comparison: Basic vs. Advanced Mirrors

When a basic two-transistor mirror fails to meet your output impedance or compliance voltage requirements, you step up to advanced topologies. Electronics Tutorials provides excellent schematics for these variations.

Topology Output Impedance Min. Compliance Voltage Complexity Best Use Case
Basic 2-BJT Low (r_o) ~0.2V (Vce_sat) 2 Transistors Simple biasing, non-critical loads
Wilson Mirror Very High (β·r_o / 2) ~1.2V (2x Vbe) 3 Transistors High-precision discrete biasing
Widlar Mirror High (with degeneration) ~0.2V + I_out·R_e 2 Transistors + 1 Resistor Generating micro-amp currents from milli-amp references
Cascode Mirror Extremely High (β·r_o) ~1.0V (Vce_sat + Vbe) 4 Transistors IC active loads, high-gain amplifier stages

Current Mirroring FAQ

Why does my discrete BJT current mirror output drift with temperature?

Discrete transistors on a breadboard are not thermally coupled. Q1 (the reference) dissipates power and heats up, dropping its Vbe by roughly -2mV/°C. Because Q2 is physically separated, it remains cooler and retains a higher Vbe. This mismatch causes the output current to drift significantly. In IC design, transistors are placed in interdigitated layouts to ensure perfect thermal tracking; on the bench, you must either use a monolithic dual-transistor package (like the MAT01) or add emitter degeneration resistors to swamp out the Vbe mismatch.

Can I use MOSFETs instead of BJTs for current mirroring?

Yes, and MOSFET current mirrors are the backbone of modern CMOS IC design because they draw zero gate current (eliminating the base-current error inherent in BJTs). However, for discrete bench work, MOSFETs are notoriously difficult to match. The threshold voltage (Vth) of discrete MOSFETs can vary by hundreds of millivolts from part to part, whereas the Vbe of BJTs is tightly constrained by silicon physics. If you build a discrete MOSFET mirror, expect massive current mismatches unless you use source-degeneration resistors or digitally trimmed potentiometers.

What is the compliance voltage in a current mirror?

Compliance voltage is the minimum voltage required across the output transistor's collector-emitter (or drain-source) terminals to keep it in the active (or saturation) region. If the load pulls the voltage below this threshold, the transistor enters the triode/ohmic region and the mirror 'breaks'—it can no longer regulate the current. For a basic BJT mirror, the compliance voltage is Vce_sat, typically around 0.2V. For a cascode mirror, it is much higher, often exceeding 1.0V, which limits its use in low-voltage (e.g., 3.3V or 1.8V) battery-powered circuits.

How do I scale a current mirror to output 5mA from a 1mA reference?

In an integrated circuit, you scale the current by changing the physical emitter area of the transistors—making Q2 exactly five times the physical size of Q1 yields a 5:1 ratio. On the bench with discrete components, you cannot change the silicon geometry. Instead, you use a Widlar-style approach or a multi-transistor array. The most practical discrete method is to wire five identical output transistors in parallel, all sharing the same base drive from the single diode-connected reference transistor, effectively summing their individual 1mA outputs into a 5mA source.