eCircuit Center 

About SPICE 
SPICE Basics  Running SPICE
 CIRCUIT COLLECTION 
SPICE Commands  SPICE Demos and Downloads 
Op Amp

Ideal Gain  Gain with R1 Error  
K = R2
/ R1 + 1 = 1000/1000 + 1 = 2.00 
K' =
R2
/ (R1+ΔR1) + 1 = 1000/(1000+10) + 1 = 1.99 
Finally, what is % gain error due to R1?
R1 gain error (%) 

Kerr_R1_TOL = (K'
 K) / K · 100% = (1.99  2.00) / 2.00 · 100% = 0.5 % 
Similarly, how does R2 affect the gain?
Ideal Gain  Gain with R2 Error  
K = R2
/ R1 + 1 = 1000/1000 + 1 = 2.00 
K' =
(R2+ΔR2)
/ R1 + 1 = (1000+10)/1000 + 1 = 2.01 
What is the % gain error due to R2?
R2 gain error (%) 

Kerr_R1_TOL = (K'
 K) / K · 100% = (2.01  2.00) / 2.00 · 100% = +0.5 % 
What is the total error? You can calculate the worst case error the adding the absolute values of the individual errors.
Kerr_tot = Kerr_R1_TOL + Kerr_R2_TOL
=  0.5%  +  +0.5% 
= 1%
Why add absolute values? Because the actual resistor TOL of 1% is actually ±1%; the error can be either positive and negative direction! You can see that adding the errors directly would result in Kerr_tot = 0.5% + +0.5% = 0%. This happy result happens only if the resistor errors are in the same direction  not a solid design assumption.
RESISTOR TEMPERATURE COEFFICIENT (TC)
What is gain error for TC = 200 ppm/C over a temperature change of ΔT = 20 C ?
What are the the resistance errors due to the tempco?
ΔR1 = R1 ∙ TC ∙ ΔT
= 1000 Ω ∙ 200/10^{6} /C ∙ 20 °C
= 4 Ω
ΔR2 = R2 ∙ TC ∙ ΔT
= 1000 Ω ∙ 200/10^{6} /C ∙ 20 °C
= 4 Ω
Now calculate the gain error, just like we did for the tolerance error above.
Kerr_R1_TC = 0.2%
Kerr_R2_TC = +0.2%
Finally, add all of the errors
Kerr_tot =  Kerr_R1_TOL  +  Kerr_R2_TOL  +  Kerr_R1_TC  +  Kerr_R2_TC 
=  0.5% +  +0.5%  +  0.2%  +  +0.2% 
= 1.4%
Did we meet out initial goal of 2% over a temperature swing of ΔT = +/20 C? Awesome news! But what if Kerr_tot > 2%, what then? We must go back to the manufacturer's catalog and search for a resistor with a smaller TOL and/or TC.
INVERTING GAIN ERROR
Now, how can you apply the same error analysis to the inverting amplifier? Just calculate the errors due to ΔR1 and ΔR2 using the ideal gain equation K =  R2 / R1.
In fact, using this method you can calculate the error of any amplifier configuration via its gain equation. How about a differential amplifier with four resistors  R1, R2, R3 and R4? You guessed it  find the errors due to ΔR1, ΔR2, ΔR3 and ΔR4. Yes, it's a lot of number crunching, but that's what spreadsheets are for.
SIMULATION
Let's simulate the noninverting amp with
ideal resistor values R1 = 1000 and R2 = 1000 for a gain of +2.. With the
input signal at VS=1V, we expect to see the output voltage represent the
gain
V(4) = VS * (R2/R1+1) = 2.
CIRCUIT INSIGHT Run a Transient Simulation and plot the output V(4). Place a cursor on the trace to get a precise reading of the output voltage. Is should be very close to 2.00. Now, add ΔR1 to R1 that represents an error due to 1% tolerance, 1000 + 10 = 1010. Set R1 to this new value and rerun the simulation. Did the gain reduce to 1.99 as calculated above?
Now also set R2=1010 to mimic the same 1% error. What happens to the gain? Are you surprised that the gain is back to 2.00? That's because the gain depends on the ratio of resistors. If R1 and R2 both rise by the same amount, then the ratio stays the same, and so does the gain.
What happens if ΔR1 and ΔR2 are in opposite
directions. Set R2=1000+10=1010 and
R1=100010=990. Now run a simulation and check the gain. Did the gain rise
to 2.02 (1% total error) as calculated above due to TOL only.
Finally let's simulate the worst case error
due to both TOL and TC. Set R2=1000+10+4=1014
and R1=1000104=986. What is the total error expected? An error of 1.4%
should result in a gain
of 2.00 * 1.014 = 2.028. What if the resistor errors were in the opposite
direction?
Set R2=1000104=986 and R1=1000+10+4=1014. What happens to the gain?
HANDSON DESIGN Suppose your original design goal was a maximum error of 0.25% over a temperature change of ΔT = +/20 C. You have the budget to buy resistors with TOL=0.1%. But which TC to you choose: 200, 100, 50 or 25 ppm/C?
ALTERNATE METHODS
When is comes to calculating gain errors, there's more than one way to fillet this fish. You can calculate component sensitivities do some calculus on the equations to find the sensitivities. Or you can let SPICE calculate the component sensitivities for you. For more, see the topics Component Tolerances Part 1 and Part 2.
SPICE FILE
Download the file or copy this netlist into a text file with the *.cir extension.
OP_GAIN_RES.CIR  OP AMP WITH GAIN RESISTOR ERRORS * * INPUT VOLTAGE VS 3 0 DC 1.0V * * GAIN RESISTORS WITH ERRORS * R1 0 2 1000 R2 2 4 1000 XOP1 3 2 4 OPAMP1 * * * OPAMP MACRO MODEL, SINGLEPOLE * connections: noninverting input *  inverting input *   output *    .SUBCKT OPAMP1 1 2 6 * INPUT IMPEDANCE RIN 1 2 10MEG * GAIN BW PRODUCT = 10MHZ * DC GAIN (100K) AND POLE 1 (100HZ) EGAIN 3 0 1 2 100K RP1 3 4 1K CP1 4 0 1.5915UF * OUTPUT BUFFER AND RESISTANCE EBUFFER 5 0 4 0 1 ROUT 5 6 10 .ENDS * * ANALYSIS .TRAN 0.1MS 10MS .PROBE .END
© 2010 eCircuit Center