Copyright © 2010 by Wayne Stegall
Updated July 21, 2010. See Document History at end for details.
Spice verfied.
Simple DC Servos
Introduction
The hope of direct coupling some desireable audio circuits may be
challenged by high DC offset, perhaps due to compromises made to gain
some other desireable outcome. Adding or increasing DC feedback
is necessary here. Second order servos are often used because a
second passive pole is desired to decouple the typical opamp
integrator from the signal path. Second order servos, however,
require carefull juggling of gain and phase shift factors to prevent
subsonic oscillation. A simple integrator stage would do, but
most
would find the connection of the opamp output into the signal path
disagreeable. Here I suggest adding to the integrator a zero
matching and cancelling the pole of the second stage to create a two
stage first order
servo. With a constant servo phase shift of 90°, design can
proceed
without worry of oscillation at all.
Figure
1:
Bode
plot
shows
how
response of integrator with zero (red
plot) adds to that of the second stage lowpass pole (green plot) to
create a first order integrator response (connecting black plot).


Figure
2:
Noninverting
and
inverting
two
stage first order servos.


A disadvantage of this design is that the output signal is present in
full with boosted DC error signal at output of the integrator awaiting
suppression by second stage. Biasing of the servo must allow
headroom for AC component.
Calculations
The final highpass pole will be at the frequency where β
_{servo}
=
β
_{global}. β is feedback factor or gain of feedback
loop.
To prove this assertion and give you useful servo equations, include
both feedback factors in the closedloop feedback gain equation:
A_{VCL} =

A_{VOL}
1+A_{VOL}β 
=

A_{VOL}
1+A_{VOL}(β_{global}+β_{servo}) 
If the loop gain A
_{VOL}β >> 1 (usually met, except in
low gain circuits) then the ideal gain equation becomes:
A_{VCL} =

A_{VOL}
1+A_{VOL}(β_{global}+β_{servo}) 
=

A_{VOL}
A_{VOL}(β_{global}+β_{servo})

=

1
(β_{global}+β_{servo})

At the servo highpass pole, β
_{servo}
= β
_{global} but their phases are 0º and 90º
respectively. The gain now becomes:
A_{VCL} = 
1
β_{global } jβ_{servo}

=

1
β_{global}(1  j) 
, (j here is a vector number with
a 90º degree direction)

1/(1  j) in polar terms is 0.7071<45º the 3dB response of a
first order highpass filter.
These equations ideally include the highfrequency effects that require
compensation calculations, but here are used only as they affect servo
operation.
The servo feedback factor is inversely proportional to frequency.
Where
ω = 2πf = 1/T and ω
_{pz} is
the frequency of the integrator zero and of the second stage pole:
β_{servo}
= β_{servo0} 

ω_{pz}
ω 

= β_{servo0} 

f_{pz}
f 

β
_{servo0} represents servo gain at ω
_{pz} and is unity
for the noninverting circuit. For the inverting circuit
β_{servo0} = 
R_{z}
R_{in} 
You will have to multiply into β
_{servo0} any other gain
factors you may add. A likely example is the addition of a
voltage divider before the integrator in a power amp where the direct
output voltage would overdrive the op amp.
Exact calculations depend on the particular setup. Refer to the
example below for details.
Example
As an example I will add a noninverting servo of this type to the
voltage feedback amplifier of
Musical
Feedback Amplifiers. It will function in this circuit to
automatically bias the amplifier as well as reduce offset. Offset
will not be as low as it would be if servo was not acting to bias the
ciruit as well, but it should still be good. As a desirable side
effect, driving the circuit bias will put the opamp in class A
operation, reducing the urge to use separate power supplies.
The following circuit was unstable without compensation according to
SPICE
^{1} modeling. With dominant
pole compensation of pole frequency
>= 20kHz, it showed stable results. I tried poles
approaching 100kHz with good results also. Its asymmetrical
design should ensure even and odd harmonics for those with that
preference.
The design proceeds as follows:
 Make transistor choices. (I chose LSK170A JFETs and 2N3906
PNPs for these analyses, other choices would work well too.)
 Decide power supply voltages.
 Choose R_{L} (and R_{1} and R_{2} if
used) for desired output impedance (in this case 1kΩ).
 Choose R_{BE} to set bias through Q_{1}.
Check Q_{1} datasheet for a proper value here.
 Choose C_{C} for desired compensation pole
frequency. (Ordinarily this involves examining the loop gain (A_{VOL}β_{global})
in
great
detail,
here
SPICE
should
show whether our pole chosen for
musical reasons will result in oscillation.)
 Simulate circuit in SPICE with reasonable R_{S} to
negative
power supply (R_{S} = V_{SS}/2I_{D} will do)
and
adjust compensation if needed.
 Choose servo break frequency of 159.155mHz for even 1sec time
constant.
 Choose opamp. Any will do that will operate on the chosen
power
supply. High DC gain and low output offset are desired, other
parameters are less critical, bandwidth can be low. The LF411 is often chosen for this sort
of application.
 Calculate R_{S} to meet anticipated servo bias (i.e.
terminated
to 7.5V)
 Calculate R_{2S} and R_{3S} to drive desired
servo bias
from opamp biased at output at 0V at reasonable current value within
specs.
 Calculate feedback factors then calculate actual integrator pole
and
zero frequencies.
 From these calculate and choose remaining servo component values.
 Simulate and verify final circuit in SPICE.
Notes:
Output impedance in calculations is openloop. Closed loop output
impedance will be reduced by the feedback factor (A
_{OL}/A
_{CL}).
Adding
a
small
resistance
(100Ω1kΩ)
on the output can give short
circuit protection where an external cable is driven.
Figure 3: Simplest
voltagefeedback opamp with noninverting
feedback network and DC servo.


Figure
3: LSK170A SPICE
model for
reference 
.MODEL LSK170A NJF
+ BETA =
0.0378643
VTO = 0.4025156 LAMBDA
= 4.783719E3
+
IS =
3.55773E14
+
RD =
10.6565
RS =
6.8790487
+ CGD
=
3.99E11
CGS =
4.06518E11
+
PB =
0.981382
FC =
0.5
+
KF =
0
AF
=
1

Amplifier Design and Compensation Procedure
Choose
LSK170A JFETs and
2N3906
PNPs for these analyses
Choose power supplies as
+15V.
Z
_{OUT} = R
_{L}  (R
_{1} + R
_{2})
= 1kΩ.
Choose R
_{L} =
2kΩ,
therefore R
_{1} + R
_{2} =
2kΩ.
For gain of 10, R
_{1} =
200Ω,
R
_{2} =
1.8kΩ. (Ideal
gain formula here is A
_{CL} = 1 + R
_{2}/R
_{1})
i
_{BQ3} = V
_{SS}/(h
_{fe} x Z
_{OUT})
= 15/(100 x 2kΩ) = 75µA.
LSK170A has min I
_{DSS} of 2.6mA, choose i
_{D} = 2mA
and calculate
R
_{BE}.
R
_{BE} = v
_{be}/(i
_{D}  i
_{BQ3})
= 700mV/(2mA  75µA) = 363.6363636Ω.
Round up to nearest standard 5% value: R
_{BE} =
360Ω.
r
_{bQ3} = V
_{T}/i
_{BQ3} = 25mV/75µA =
333.3333333Ω. (V
_{T} is the temperature dependent
characteristic voltage of a PN junction, usually 2526mV)
R
_{POLE} = R
_{BE}  r
_{bQ3} = 360Ω 
333.3333333Ω = 173.0769231Ω
Calculate compensation capacitor for 20kHz dominant pole.
C_{POLE} =

1
2πf_{POLE}R_{POLE} 
=

1
2π x 20kHz x 173.0769231Ω 
= 45.97809467nF

C
_{b} = C
_{ibo} + C
_{obo}(A+1) = 10pF +
4.5pF(1kΩ/333.3333333Ω + 1) = 28pF (These from 2N3906 datasheet,
multiplying C
_{obo} by A+1 is the Miller effect)
C
_{C} = C
_{POLE}  C
_{b}, because C
_{POLE}
>> C
_{b, }C
_{C} (approx.)= C
_{POLE} =
45.97809467nF.
Choose standard value C
_{C} =
47nF.
I
_{D} = 700mV/360Ω + 75µA = 2.01944mA
Calculate source output impedance r
_{s}
r_{s} =

1
g_{fs}

=

1
2 x sqrt(k_{n}I_{D})

=

1
2 x sqrt(37.8643mA/V^{2}
x 2.01944mA) 
= 57.1794Ω 
Servo Design Procedure
Choose break frequency of 159.155mHz for even 1sec time constant.
Choose
LF411 operational
amplifier.
Want first stage of servo at 0V DC bias to drive C
_{2S} of
second stage to 7.5V
V
_{GS} = V
_{T} + sqrt(I
_{D}/k
_{n}) =
402.516mV + sqrt(2.01944mA/37.8643mA/V
^{2}) = 171.575mV
I
_{RS} = 2 x I
_{D} = 4.03889mA
Calculate R terminated to 7.5V:
R
_{S} = (7.5V + V
_{GS})/(i
_{D}
x 2) = (7.5V + 171.575mV)/4.03889mA = 1.89943kΩ.
Round down to nearest 5%. Choose R
_{S} =
1.8kΩ.
Calculate
R
_{2S} for 10mA opamp output:
R
_{2S} = 7.5V/10mA =
750Ω.
R
_{3S} = 7.5V/(10mA + 4.03889mA) = 534.23Ω.
Round up to nearest 5%. Choose R
_{3S} =
560Ω.
Now calculate to set servo break frequency. Begin by calculating
the feedback factors.
β_{global} = 
200Ω
1.8kΩ + 200Ω 
= 0.1

Calculate additional drop in β
_{servo} from that at integrator
zero frequency (now presuming resistive voltage divider drop in second
stage)
β_{servostage2} =

1.8kΩ  560Ω
1.8kΩ  560Ω + 750Ω 
=

427.119Ω
427.119Ω + 750Ω 
=

427.119Ω
427.119Ω + 750Ω 
= 362.851m(V/V)

Preliminary SPICE evaluation indicates I underestimated additional drop
(pole frequency was much lower than expected). Proceed now on the
basis of inserting the servo feedback at the Q
_{1} source
rather than at the end of R
_{S}. Calculate
additional drop due to voltage divider between R
_{S} and r
_{s}
presuming voltage dividers are close to independent due to scale of
impedances:
β_{atQ1Q2source} =

r_{s}
R_{S}  r_{s} 
=

57.1794Ω
1.8kΩ + 57.1794Ω 
= 30.7883m(V/V)

β
_{servo0} = β
_{servostage2} x β
_{atQ1Q2source}
= 362.851m(V/V) x 30.7883m(V/V) = 11.1716m(V/V)
Where
ω = 2πf = 1/T:
β_{global} = 0.1 = β_{servo}
=
β_{servo0} 

ω_{pz}
ω 

=

β_{servo0}
2πf_{hp}T_{pz}

Calculate servo pole/zero time constant from desired highpass break
frequency:
T_{pz}
=

β_{servo0}
2πf_{hp}β_{global} 
=

11.1716m(V/V)
2π x 159.155mHz x 0.1 
= 111.716msec

R
_{servopole2ndst} = R
_{S}  R
_{2S}  R
_{3S}
= 1.8kΩ  750Ω  560Ω = 272.138Ω
C
_{2S} = T
_{pz}/R
_{servopole2ndst} =
111.716msec/272.138Ω = 410.512µF
Round to nearest standard 5% value: Choose
C_{2S} = 430µF.
Choose
R_{1S} =
330kΩ and calculate C
_{1S}:
C
_{1S} = T
_{pz}/R
_{1S}
= 111.716msec/330kΩ = 338.533nF
Round to nearest standard 5% value: Choose
C_{1S} = 330nF.
SPICE Results
Output offset = 13.3143µV
Frequency response: 0.17378Hz  660.7kHz +0,3dB (Deviation
of servo pole from chosen 0.159155Hz is negligible)
SNR = 109.875dB
Integrator output bias: 1.33143V (You would want to trim R
_{2S}
or R
_{3S} (and perhaps C
_{2S}) if this value was too
far from 0V)
Fourier analysis for vout @ 1kHz:
No. Harmonics: 10, THD: 0.0296942 %, Gridsize: 200,
Interpolation Degree: 1
Harmonic 
Frequency 
Magnitude 
Phase 
Norm. Mag 
Norm. Phase 
 
 
 
 
 
 
0 
0 
0 
0 
0 
0 
1 
1000 
1.01354 
90.074 
1 
0 
2 
2000 
0.000300274 
164.01 
0.000296263 
73.939 
3 
3000 
2.02959e005 
73.348 
2.00248e005 
16.7261 
4 
4000 
9.88967e007 
11.5644 
9.75756e007 
101.639 
5 
5000 
3.507e007 
179.5 
3.46015e007 
89.429 
6 
6000 
1.89024e007 
74.622 
1.86499e007 
164.696 
7 
7000 
5.40419e007 
6.6935 
5.332e007 
83.3809 
8 
8000 
1.70615e007 
125.83 
1.68336e007 
35.755 
9 
9000 
6.05319e007 
160.262 
5.97233e007 
250.337 
SPICE Model
for
circuit of
figure 3^{1}.
^{1}Links to supporting SPICE
models on this
website: LSK170.txt,
models1.txt
Document History
July 20, 2010 Created
July 21, 2010 Elaborated servo equations to better
clarify integrator response.