eCircuit  Center 
Error Budget Analysis

About SPICE | SPICE Basics | Running SPICE | CIRCUIT COLLECTION
SPICE Commands | SPICE Downloads | About | Contact | Home

Basic DAC and Amplifer

12-Bit DAC, +5V Ref, Op Amp


pic

 

A basic DAC and Amplfier shows insight into a multi-stage Error Budget Analysis with errors Referred to Output (RTO). We'll do a teardown of this error analysis. You'll get

 

 For Tutorials and more examples, see EBA Series 

OFFSET AND GAIN ERRORS

What are the basic definitions of an amplifier's Offset and Gain Errors?

pic

 

MAX ERROR BUDGET

The max budget (target spec) for the DAC+Amplifier (0V to 10V) has been chosen as:

DAC AND AMPLIFIER

Schematic with Errors

pic

Three devices make up this signal-chain.

Device Errors

The errors below reflect a medium precision of accuracy grade for the devices.

Description Initial Temp Drift
OFFSET ERRORS    
U1, voff, DAC Offset Error
U1, vres, DAC Resolution Error
U1, vinl, DAC Integral-Non Linearity Error

U3, voff, Input Offset Voltage
U3, ib, Input Bias Current
U3, iboff, Input Offset Current
2 LSB
1/2 LSB
1 LSB

1 mV
10 nA
5 nA
0.04 LSB/C



10 uV / C
2 nA / C
1 nA / C
GAIN ERRORS    
U1, DAC Gain Tol, Tempco
U2, Vref Tol, Tempco

R2 Tolerance, Tempco
R1 Tolerance, Tempco
2 LSB
0.5%

0.1 %
0.1 %
0.08 LSB/C
50 ppm/C

100 ppm / C
100 ppm / C

 

Conditions and Assumptions

Temperature

ADC

Amplifier

Errors

 

OFFSET ERRORS

While the steps below may seem more detailed than needed for simpler errors, the value of creating a systematic approach can pay off when analyzing more complex, multi-stage designs.

 

DAC OFFSET ERROR

The DAC's offset errors are typically characterized in units of digital output LSB's (Least Significant Bits). It's easy to convert output LSBs to Output Volts using the DAC's resolution Vlsb.

pic
 

Description Initial Errors Drift Errors
Error Source: e offset
 = 2 LSBs

Convert to V:
voff = 2 LSB x
    x 0.00122 (V/LSB)
      = 2.44 mV
offset_TC
 = 0.04 LSB/C

Convert to V:
voff_TC = 0.04 LSB /C
    x 0.00122 (V/LSB)
      = 49 uV / C
Pick Analysis Node: Va vo1 vo1
Calc Sensitivity: S
How does e impact Va?
S = vo1 / voff
  = 1
S = 1
Calc Offset Error at Analysis Node
  Initial:  Voffset = e * S
  Drift:   Voffset = e * T * S
Voffset
 = 2.4 mV * 1
 = 2.4 mV
Voffset
 = 49uV/C * 30C * 1
 = 1.5 mV
Calc Gain from
Analysis Node to Output:
  Ka = vo2 / Va
Ka = vo2 / va
 = R2/R1+1
 = 2
Ka = 2
Calc Error RTO
(Referred-to-Output):
  voffset_RTO = voffset * Ka
voffset_RTO
 = 2.4 mV * 2
 = 4.8 mV
vvoffset_RTO
 = 1.5 mV * 2
 = 3.0 mV

 

DAC RES & INL ERRORS

The Resolution Errors and Integral Non-Linearity (INL) Errors are considered part of the offset errors. Why? Mainly because they don't scale directly with the signal level (which would imply a gain term).

The error analysis for both of these DAC errors follow the same steps as the Initial Offset Error shown above. (See Excel file link below.)

 

INPUT OFFSET VOLTAGE

Because voff is modelled as voltage in series with the pos input, it gets amplified just like the signal gain for Vin.

Description Initial Errors Drift Errors
Error Source: e voff = 1mV voff_TC = 10uV/C
Pick Analysis Node: Va vo2 vo2
Calc Sensitivity: S
How does e impact Va?
S = vo / voff
  = R2/R1+1
  = 2
S = 2
Calc Offset Error at Analysis Node
  Initial:  Voffset = e * S
  Drift:   Voffset = e * T * S
Voffset
 = 1mV * 2
 = 2mV
Voffset
 = 10uV/C * 30C * 2
 = 0.6 mV
Calc Gain from
Analysis Node to Output:
  Ka = vo2 / Va
Ka =1 Ka = 1
Calc Error RTO
(Referred-to-Input):
  voffset_RT0 = voffset * Ka
voffset_RTO
 = 2mV * 1
 = 2mV
vvoffset_RTO
 = 0.6mV * 1 
 = 0.6mV

 

INPUT BIAS CURRENT (ib)

The quick theory refresh (see Advanced Amplifier) shows the Gain (Sensitivity) of vo to ib

   S = vo/ib = Rs*(R2/R1+1) - R2

Let's walk through the error analysis.

Description Initial Errors Drift Errors
Error Source: e ib = 10nA ib_TC = 2nA/C
Pick Analysis Node: Va vo2 vo2
Calc Sensitivity: S
How does e impact Va?
S = vo / ib
= ½[Rs*(R2/R1+1)+R2]
= -98k
S = -98k
Calc Offset Error at Analysis Node
  Initial:  Voffset = e * S
  Drift:   Voffset = e * T * S
Voffset
 = 10nA * -98k
 = -0.98mV
Voffset
 = 1nA/C*30C*-98k
 = -5.88mV
Calc Gain from
Analysis Node to Output:
  Ka = Vo2 / Va
Ka = 1 Ka = 1
Calc Error RTO
(Referred-to-Output):
  voffset_RTI = voffset * Ka
voffset_RTI
 = -0.98mV * 1
 = -0.98mV
voffset_RTI
 = -5.88mV * 1
 = -5.88mV

 

INPUT OFFSET CURRENT (iboff)

A quick theory refresh (see Advanced Amplifier) shows the Gain (Sensitivity) of vo to iboff

 S = vo/iboff = ½ [ Rs*(R2/R1+1) + R2 ]

Let's walk through the error analysis.

Description Initial Errors Drift Errors
Error Source: e iboff = 5nA iboff_TC = 1nA/C
Pick Analysis Node: Va vo2 vo2
Calc Sensitivity: S
How does e impact Va?
S = vo / ib
= ½ [Rs*(R2/R1+1) + R2]
= 51k
S = 51k
Calc Offset Error at Analysis Node
  Initial:  Voffset = e * S
  Drift:   Voffset = e * T * S
Voffset
 = 5nA * 51k
 = 0.255mV
Voffset
 = 1nA/C*30C*51k
 = 1.53mV
Calc Gain from
Analysis Node to Output:
  Ka = Vo2 / Va
Ka = 1 Ka = 1
Calc Error RTO
(Referred-to-Output):
  voffset_RTI = voffset * Ka
voffset_RTI
 = 0.255mV * 1
 = 0.255mV
voffset_RTI
 = 1.53mV * 1
 = 1.53mV

 

GAIN ERRORS

Similar to Offset Errors, the Gain Errors can be converted from LSBs to % or ppm.

pic
 

DAC GAIN ERROR

You can write the ADC gain as

pic

Because Kadc directly defines gain of this block, you can assume the Sensitivity is unity, or S = 1.0.

Description Initial Errors Drift Errors
Error Source: e Kadc_Tol
 = 2 LSB

Convert to %:
Kdac_Tol
 = 2LSB/4095*100%
 = 0.05%
Kadc_TC
 = 0.08LSB/C

Convert to ppm/C:
Kdac_TC
 = 0.08LSB/4095*1e6
 = 20ppm/C
Pick Analysis Node: Va vdac vdac
Calc Sensitivity: S
How does e impact Gain K?
S = 1.0
(see discussion above)
S = 1.0
Calc Gain Error
at Analysis Node
  Initial:  ∆K/K = e * S
  Drift:   ∆K/K = e * ∆T * S
∆K/K
 = 0.05% * 1.0
 = 0.05%
∆K/K
 = 20ppm/C*30C*1.0
 = 600ppm
 = 0.06%
Normailzed gain errors can be referred to output as-is, no RTO calc needed.    

 

VREF ERROR

The Vref term appears in the numerator of the DAC gain.

pic

Intuition tells us the Sensitivity S should be positive (as Vref goes up, Kdac goes up.) We can also guess that the magnitude of S should be 1 because Vref is a direct multiplier (numerator or denominator) of the gain. We'll calculate S anyway below just to confirm.

Description Initial Errors Drift Errors
Error Source: e Vref_Tol
 = 0.5%
Vref_TC
 = 50 ppm/C
Pick Analysis Node: Va vdac vdac
Calc Sensitivity: S
How does e impact Gain K?

Apply Difference Method:
 S = (∆K/K)/(∆V/V)
where
 ∆K = (K'-K)
Kdac
 = vdac/DACword
 = Vref/(2N-1)

Vref = 5.0
2N-1 = 4095

Kdac = 5/4095
 = 819
Kdac' = (5*1.01)/4095
 = 811

∆Vref/Vref = 0.01

S = (∆Kdac/Kdac) /
      (∆Vref/Vref)
   = 1.0
S = 1.0
Calc Gain Error
at Analysis Node
  Initial:  ∆K/K = e * S
  Drift:   ∆K/K = e * ∆T * S
∆K/K
 = 0.5% * 1.0
 = 0.5%
∆K/K
 = 50ppm/C*30C*1.0
 = 1500ppm
 = 0.15%
Normailzed gain errors can be referred to output as-is, no RTO calc needed.    

 

RESISTOR R2
 

Description Initial Errors Drift Errors
Error Source: e R2_Tol
 = 0.1%
R1_TC
  = 100ppm/C
  = 0.0001%/C
Pick Analysis Node: Va vo2 vo2
Calc Sensitivity: S
How does e impact Gain K?

Apply Difference Method:
 S = (∆K/K) / (∆R/R)
where
 ∆K/K = (K'-K)/K
K = R2/R1+1
R2 = 100k
R1 =100k

K = 100k/100k+1
   = 2.0
K'=100k*1.01/100k+1
   = 2.01

∆R/R = 0.01

S = (∆K/K) / (∆R/R)
   = +0.5
S = 0.5
Calc Gain Error
at Analysis Node
  Initial:  ∆K/K = e * S
  Drift:   ∆K/K = e * ∆T * S
∆K/K
 = 0.1% * 0.5
 = 0.05%
∆K/K
 = 100ppm/C*30C*0.5
 = 1500ppm
 = 0.15%
Normailzed gain errors can be referred to output as-is, no RTO calc needed.    

 

RESISTOR R1
 

Description Initial Errors Drift Errors
Error Source: e R1_Tol
 = 0.1%
R1_TC
  = 100ppm/C
  = 0.0001%/C
Pick Analysis Node: Va vo2 vo2
Calc Sensitivity: S
How does e impact Gain K?

Apply Difference Method:
 S = (∆K/K) / (∆R/R)
where
 ∆K/K = (K'-K)/K
K = R2/R1+1
R2 = 100k
R1 =100k

K = 100k/100k+1
   = 2.0
K'=100k/(100k*1.01)+1
   = 1.99

∆R/R = 0.01

S = (∆K/K) / (∆R/R)
   = -0.5
S = -0.5
Calc Gain Error
at Analysis Node
  Initial:  ∆K/K = e * S
  Drift:   ∆K/K = e * ∆T * S
∆K/K
 = 0.1%*-0.5
 = -0.05%
∆K/K
 = 100ppm/C*30C*-0.5
 = -1500ppm
 = -0.15%
Normalized gain errors can be referred to input as-is, no RTO calc needed.    

 

TOTALS & EXCEL FILE

See Excel file:  DAC-ref-amp-a.xlsx
Right Click on the filename, select "Save link as...".

Check out the easy entry (BLU col) and calculations (RED col) on the Gain Error sheet.

pic

 

OFFSET ERRORS

Calculate the total using Worst Case Analysis. WCA assumes the most unfavorable conditions: all errors at their maximum limit AND in the same polarity.

Does the Total Error fly under the Max Error Budget (Requirements)?

 

GAIN ERRORS

Calculate the total using Worst Case Analysis.

Does the Total Error fly under the Max Error Budget (Requirements)?

 Yikes! Can we improve the design? See "Try It" below. 

EBA WITH EXCEL

An Excel file was created to implement the error budget analysis.

3 Worksheets

Worksheet Enter Calculate
CIRCUIT CALC Circuit values Signal gains / levels and Sensitivities (S)
OFFSET Offset error sources Offset errors and totals
GAIN Gain error sources Gain errors and totals

While 3 worksheets may seem over-the-top for smaller circuits, you'll find a big advantage when analyzing more complex circuits or multi-stage systems!

 

Try the hands-on spreadsheet!

 

TRY IT!

 

For in-depth tutorials and more circuits, go to EBA Series