Temperature compensated MOSFET biasing

A class AB MOSFET amplifier circuit is shown below:


The MOSFET, in class-AB operation has a positive DC bias provided by voltage source V1. The purpose of the bias is to bring the transistor into it’s linear operating region, as shown by a datasheet graph of drain current vs. gate voltage:

IRF540 forward transconductance

The graph here begins at about 4 volts. The threshold voltage of the IRF540 (which I’m just using as an example) is somewhere around 4 volts.

Once you get beyond 4 volts, you can see that the drain current increases in a nice sweeping (exponential) arc.

Now imagine you are building a high power class-AB amplifier with V2 = 48v and quiescent current = 60mA. The power dissipated by the transistor is 2.88 Watts.

2.88 Watts will heat the transistor up a bit, depending on how nice your heatsink is. The transistor gate threshold voltage temperature coefficient is between -2 and -4 mV / C (millivolts per degree celsius)

So if the transistor heats up by 10C, the threshold voltage drops by about 30 mV. This could have a significant effect on the quiescent current, causing the transistor to get even hotter!

One way of dealing with this issue is to use a temperature compensated bias circuit:

rf_amp TL431 ckt
MOSFET bias temperature compensation circuit. The output voltage is on the cathode of U4 (pin 1) and for these values results in about 3.7 volts at room temperature.

The device I built this for is an RF power amplifier that uses the MRF6V2010 N channel MOSFET. The threshold voltage is around 2.3v for this device.

The output of the above circuit is fed to a potentiometer that sets the gate bias voltage:

MOSFET AB bias control

The TL431 is a dirt cheap ($0.14 US) shunt voltage regulator that has a built-in voltage reference, error amplifier, and pass transistor. I used an NTC (negative temperature coefficient) resistor, R38, which increases the feedback voltage on the TL431 as the temperature increases. This causes the output voltage to decrease, following a similar temperature coefficient as the MOSFET threshold.

Because the MOSFET gate passes no current the gate bias voltage supply is only capable of around a milliamp of DC current. The bias voltage leaves the potentiometer (R18, above) where it passes through a few RC networks to filter out RF energy that would add noise to the amplifier (or radiate power.)


I’ve made a few calculations to show how this works in a real design. The threshold voltage of a MOSFET varies by -2 to -4 mV/C as I mentioned above. This depends on the doping level of the device.

Let’s say we’re using this circuit for generating MOSFET bias (click for larger view):



[I lost this image. It is basically the same as the above schematic with TL431, however, the part designators have changed]


Specifically I’m looking at the three resistors on the feedback of the TL431 (R1, R2, R3)

The voltage reference of the TL431 is 2.50v. This fixes the cathode voltage of the TL431 to be:

Vout = 2.5 * (R1+R2+R3)/R3

Looking at the datasheet for a common NTC thermistor with B=~3900 we see a chart of the resistance change vs. temperature. Of course another method would be to use the actual mathematical model in our calculation. The chart is fine for me though. I’m going to be making an estimate which will end up being near the ideal value.

NTC thermistor chart

Thermistors are commonly rated by their 25C value. If you buy a 1K NTC thermistor, it should measure about 1K ohms at 25 celsius. This chart shows that for a thermistor with a B value of about 4000, the resistance at 40C for example will be close to 80% of what it is at 25C.

So we can use this knowledge to figure out the temperature coefficient of our bias circuit:

Tempco(PPM) = (V1 – V0) / (T1 – T0) * 10^6

T1 is the higher temperature (pick a value)

T0 is the lower value (use 25C)

V1 = 2.5 * (R1+R2+R3)/R3
Where R2 is the thermistor value at T1

V0 = 2.5 * (R1+R2+R3)/R3
Where R2 is the thermistor value at T0


As an example

T1 = 40c

T0 = 25c

R1 = 3.3k

R2 = 1k NTC thermistor, varies with temperature (40C = ~ 800 ohms, 25C = ~ 1000 ohms)

R3 = 10k

V0 = 2.5 * (3.3k + 1k + 10k)/(10k) = 3.575v

V1 = 2.5 * (3.3k + 800 + 10k)/(10k) = 3.525v

Tempco(PPM) = (3.575 – 3.525)/(40 – 25) *10^6 = -3333

The value -3333 means that for each degree celsius, the voltage will go down by 3.3 mV. This is near the middle of the range defined by the physics of the MOSFET (-2 to -4 mV / K)

How good does it need to be?

One item I’ve neglected so far is the temperature coefficient of the internal TL431 voltage reference. According to the datasheet for the Fairchild TL431, the temperature coefficient is 4.5 mV over 110 degrees C (the temperature range of the device.) This is a tempco of +41 PPM

Using -4mV/K as an upper limit of our MOSFET threshold voltage and using -3.3mV/K from the last example, adding 41 PPM gives us (close enough to) -3.2mV/K. We subtract these together to get the resulting rate of 0.8mV/K.

We can figure out the bias current change between two temperatures given the transconductance of the MOSFET. The IRF510 has a transconductance of about 1.2 Siemens (amps per volt.)

Using the same example temperatures of 25C and 40C, we can see that the gate bias voltage will change by:

Vdelta = 0.8mV/K * (40C-25C) = 12 mV

The bias will change by about:

12mV * 1.2 A/V = 14mA

That’s not necessarily¬†bad but it’s not great. One way to make this adjustable would be to add a potentiometer in parallel with R2. Decreasing the value of the pot will decrease the bias circuit tempco, increasing the pot value will increase the bias circuit tempco. This is exactly what I did in the above tempco schematic. Pot R37 changes the tempco adjustment slope. Experiments show excellent slope control capability.


4 thoughts on “Temperature compensated MOSFET biasing”

    1. The circuit I built has slightly negative net temperature compensation. This reduces the bias voltage as temperature increases. I see this as a feature for my design, to prevent thermal runaway.

      You can design the circuit to have close to zero tempco at the temperatures of interest, for example if you anticipate temperature of 30-40C you could achieve nearly zero coefficient in this range.

      With it only being a single-order compensation, you will see nonlinearity across temperature range. Therefore if I wanted to achieve the best possible compensation I would use a lookup table that would have to be calibrated according to actual tested values.

      Thank you for commenting.

    1. Collin, I’ll try to find the schematic. I had a careless data loss on my web host. If you would like, you can email me at martin nnytech.net and I’ll send the schematic directly to you.

Leave a Reply

Your email address will not be published. Required fields are marked *