OP AMP
GAIN AND BANDWIDTH
OP AMP GAIN
Although the VBA code
for this topic is simple, I found the insight into gain and bandwidth useful.
Assuming you've been around the electronics neighborhood, you've seen the two
main op amp players: the noninverting amplifier
and the inverting
amplifier
The gain (K = vo/vs) for each of these
amplifiers is given by
NONINVERTING: K_non = R1 / R2
+1
INVERTING:
K_inv = R2 / R1
Let's create some VBA functions to perform
these calculations
Op_Amp_Gain_BW.xlsm. (Also
see
VBA Basics). To see the VBA code, hit ALTF11
and double click on the Modules > Module1 in the VBA Project window. This
opens the code window for this module.

Function
K_op_non(R1, R2)
' Op amp closed loop gain  noninverting amplifier
K_op_non = (R2 + R1) / R1
End Function
Function K_op_inv(R1, R2)
' Op amp closed loop gain  inverting amplifier
K_op_inv = R2 / R1
End Functionn 
GAIN
For the noninverting and inverting
amplifier, what is the gains given R1 and R2? First, we calculate the gain for both configurations.
For example, the noninverting gain is calculated in the Knon column by
function =K_op_non(B18,C18).
Here are the first several gain calculations for each configuration.
NonInverting Amplifier 


R1 
R2 
K non 

fbw 
1.00E+09 
1,000 
1.0 

999,999 
1,000 
1,000 
2.0 

500,000 
1,000 
9,000 
10.0 

100,000 
Inverting Amplifier 




R1 
R2 
K inv 

K non 
fbw 
1,000 
1,000 
1.0 

2.0 
500,000 
1,000 
2,000 
2.0 

3.0 
333,333 
1,000 
10,000 
10.0 

11.0 
90,909 
For comparison, I chose R1 and R2 to give the
gains 1,2,10,100,1000 for the noninverting and 1,2,10,100,1000 for the
inverting. Note, for a noninverting gain of 1, you need R1 open or R1 =
infinity ohms. Because Excel has no such value, I entered 1 G ohm as a
practical alternative.
Also note, the resistor ratios are different
for same magnitude of gain. As an example:
for K_non=2, you need R1=R2=1k. However, for K_inv = 2, you need R1 = 1k and R2 = 2k.
BANDWIDTH
Another big question is this  what is
the bandwidth of our amplifiers? For the noninverting amplifier, the
bandwidth is approximated by
f_bw = fu / Knon
NonInverting Bandwidth
where fu is the Unity Gain Bandwidth or more
commonly called the Gain Bandwidth Product (GBP) in data sheets. The
above equation says that your device's bandwidth (fu or GBP) is essentially
knocked down by your gain! Oh, the pain! The more gain you need,
the less bandwidth you get!
What do you expect happens to the bandwidth
of the inverting amplifier? It can be approximated by
f_bw = fu / Knon
Inverting Bandwidth
But, wait! You say there must be some typo 
shouldn't it read fbw = fu / Kinv ? No, unfortunately. For the inverting amp, fu
is divided by the equivalent noninverting gain of the amplifier!
There's an extra column in the inverting amp section to calculate the
equivalent Knon.
Overall, this is bad news for the inverting
amp. Why? For a gain of Kinv = 1 (given R1=R2=1k), it's noninverting gain is Knon=R2/R1+1 = 2. Even though it
has gain magnitude of 1, its bandwidth gets
knocked down by a factor of 2.
In general, if you need more bandwidth,
choose an op amp with a higher fu (GBP). Try this by increasing fu by a
factor of 2 to 10 or so, then see the effect on all of the bandwidth
calculations.
The remainder of the Excel file shows that
for the same magnitude of gain, the noninverting amp has a higher
bandwidth. So for all other things being equal, choose the noninverting
amp. However, you'll notice for higher gains, the advantage becomes less and
less as R2/R1 ~ R2/R1+1 for R2/R1 >> 1.
TRY IT!
The best part of Excel / VBA is that it lets you play
and experiment. Jump right in and start messing with
it or write a new function altogether. Just copy the existing code to a
space just below the original. Or, open a new sheet and play with the
existing functions. Here are a few ideas you can try:
 Use the functions to
calculate the effect of resistor tolerances on gain. For example, enter "K_op_non(B18*1.01,
C18)" to see the impact of 1% resistor error.
 Use the functions to
calculate an output voltage based on the input and gain. Add a column
for vs and vo, then use the Knon column to calc vo based on vs.
Back to Topics

