I was playing with some analog circuits and while reading this article made a test circuit to get better understanding on how an operational amplifier maintains linearity using negative feedback. While experimenting with it I produced enough content to make a short article so I did just that in hopes it will be interesting to somebody. I also made a video, which is available at the end of the article.
1. The problem
While driven by a sine wave, push-pull stage constructed out of PNP/NPN transistor pair exhibits so-called “crossover distortion” (see Wikipedia article linked above). The reason for this is a dead band – a region on a waveform between negative Vbe and positive Vbe where both transistors are closed, don’t conduct and consequently do nothing. The green oscilloscope trace on a title picture shows the distorted waveform. The modified circuit from Wikipedia article has been breadboarded to produce the waveforms. I also made an LT Spice model – it could be useful if you don’t have parts to build the circuit or want to study circuit details which are difficult to measure in real life. LT Spice is available for free from Linear Technology.
Couple notes about the circuit. For frequencies that I’m using none of the parts are critical. I used TL081 op amp an 2N3904 and 2N3906 transistors. Other will work and for LT Spice model I randomly grabbed Linear’s opamp and simulation results are surprisingly close to the real circuit. I will be using simulation for the rest of the article; real circuit can be seen in the video.
When we load a model into LT Spice, run the simulation and then probe voltages on the opamp output and push-pull output, we will see waveforms as on the following screenshot. The green waveform is the opamp output and the blue one is power stage. If kept within specified levels opamp is quite linear so there is no surprise its output faithfully reproduces the input sinewave. The opamp output drives the power stage and power stage tries to reproduce the sinewave but it can do nothing when input signal is within the deadband.
We know that the original negative feedback idea came to Harold Black when he tried to solve very similar problem – how to keep a circuit linear while using non-linear components. In our case, transistors on the real circuit are not matched and we can see that in addition to the crossover the negative half of the waveform has larger amplitude as well. Note that a simulated waveform is perfectly symmetrical and this is why any simulation result should be used with caution.
Let’s modify our circuit and move the right side of the feedback resistor to the output of the power stage. This will allow the opamp to sample the output and make an attempt to correct it. The result can be seen on the following screenshot. The opamp output is now sprints through a deadband as fast as its slew rate allows and as a result the output of the circuit is now much closer to a sinewave.
To understand what is happening let’s make another measurement (and yet another screenshot). Here, the red trace shows the inverting input of the opamp. It is a sum of generator signal and output signal which is in antiphase to the input so the red waveform really represents a difference between them. For the most part the difefrence is very small and we see a straight line. However, in the beginning of a deadband the difference between the input and the output becomes larger and the vertical spike representing this difference starts driving the opamp output correcting the non-linearity of the transistor.
Note the peak-to-peak amplitude of the signal. This measurement is quite difficult to make on a real circuit as 300uV is well below the sensitivity of most oscilloscopes. That’s where simulators shine – any signal can be easily visualized, no matter how small or fast. If you are curious, you can probe the circuit in other places observing other signals like voltages across resistors or currents in and out of transistor terminals.
By changing the model once again, the shortcoming of opamp can be seen. Here, I increased the frequency of the input signal to 100KHz and due to the finite slew rate the opamp is having difficulty following the signal. The distortion is back.
This is all. Play with the model, watch the video (link), have fun!