Simple discrete CCS

You’ve already read the CCS and loadlines page that discusses how a constant current source affects a tube’s behavior. You have also seen CCS’s made from depletion mode MOSFETs and LM317’s in projects like the Papa Rusa and El Estudiante (respectively). These don’t go into the actual operation of a CCS, so here’s a post illustrating a simple discrete CCS.

A NPN bipolar junction transistor (BJT for short) is a three terminal device, like a tube triode:

The BJT collector, base, and emitter are roughly analogous to a tube’s anode, grid, and cathode. With a vacuum tube, we set a bias between the grid and cathode and generally the grid is held at some negative voltage potential relative to the cathode. With a NPN BJT we set a bias between the base and emitter and generally the base is at a positive voltage potential relative to the emitter for current to flow.

With a tube, current flow is limited by a cathode resistor (also serving to set bias). We can make a simple CCS out of a triode using a cathode bias resistor and referencing the grid to ground. The impedance at the anode (where we’d connect the load) is the anode impedance plus the impedance of the cathode resistor multiplied by Mu + 1. In other words:

Z = Rp + Rk * (Mu +1)

The tube CCS requires a fair amount of voltage across it to function. This limits the practical applications and is probably why you really don’t see it very often (and it’s usually pentodes used as a CCS when you do). The impedance seen by the load and the current handling are also pretty low compared to what can be achieved with evil, no good, dirty, rotten solid state.

Like the triode above, we can use a resistor in the emitter of a BJT to set the current at the collector. The difference here is that the base needs to be positive relative to the emitter for it to be ‘open’ (letting current flow). This means we cannot use ground as the base’s DC reference like we did with the triode:

The humble LED has a stable voltage drop that varies little with the amount of current through it. They also tend to exhibit very low noise. These qualities make LEDs nice voltage references for transistors (as well as cathode loads for tubes).

We feed the LED through a resistor (R2) from a voltage source (B+ or other auxiliary supply) to limit the current. The amount of current through the LED is not critical, typically in the neighborhood of 5-15mA. The voltage drop of the LED varies with type and color, but red LEDs typically average about 1.6V. This voltage drop is the voltage reference for the base of the BJT.

For the transistor to pass current, we need to turn it on by biasing the base positive relative to the emitter. The voltage required to “turn it on” is often referred to as the base-emitter drop and is in the neighborhood of 0.6-0.7V. With a red LED reference of 1.6V and a base-emitter drop of 0.6V, we would have about 1V across the emitter resistor (R1).

The value of the emitter resistor determines how much current passes through the BJT. We find the resistor value needed for our target current with regular old Ohm’s Law. If we want to set 2mA through the CCS, we need an emitter resistor of:

R = V / I

500 ohms = 1 volt / 0.002 amps

In practice, the emitter resistor may be replaced with a trim pot to allow for an adjustable current. The load impedance created by the transistor CCS is approximately the dc current gain (hfe) multiplied by the emitter resistor. For small TO92 transistors (e.g. PN2222), current gain can be a factor of a couple hundred. That means with a voltage drop of only a few volts, we can create an impedance of 100k+!

The above simple discrete CCS would work in the cathode of a tube stage, but we can also use PNP transistors in the same way as anode loads:

The above generic circuits require suitably rated parts to work in real life. The resistor feeding the LED often needs a high voltage and power rating if it is connected to B+. The transistor may also need a high voltage rating and/or a heatsink. In practical terms though, these are as simple as they look and make a good introduction to the inner workings of constant current sources/sinks. A common and quick improvement to the above examples is to cascode two transistors, multiplying the current gain, and easily pushing the impedance well over 1M.