Analog Filters: Biquad Circuits
Franco Maloberti
Franco Maloberti Analog Filters: Biquad Circuits 2
Introduction
Active filters which realize the biquadratic transfer function
are important building blocks
(biquad)
p
p
0
€
H(s) =a2s
2 +a1s+a0
(s−sp)(s−sp*)
€
ω02 =σ p
2 +ωp2
€
ω0
Q=−2σ p
Franco Maloberti Analog Filters: Sensitivity 3
Introduction
Biquads can build high-order filters
€
H(s) =P(s)Q(s)
=(s−si )1
n∏(s−sj )1
m∏Poles and zeros areReal or complex conjugate
€
H(s) =(s−sz,1)(s−sz,1
* )(s−sp,1)(s−sp,1
* )⋅(s−sz ,2)(s−sz,2
* )(s−sp,2)(s−sp,2
* )⋅(s−sz ,3)(s−sz,3
* )(s−sp,3)(s−sp,3
* )⋅K
s or 1/s
B1 B2 B3
Problem: how to properly pair poles and zeros
Franco Maloberti Analog Filters: Sensitivity 4
Single Amplifier Configurations
RC A+
-
RC A+
-
RR(k-1)
RC A+
-
RR(k-1)
Enhanced positive or negative feedback
Franco Maloberti Analog Filters: Sensitivity 5
Sallen-Key Biquad
R1 R2
C1 C2
E1 E2
€
E1 =E2(1+sR1C1)(1+sR2C2)
Only real poles (or zeros)
C1 C2
E1 E2
The feedback permits us to achieve complex poles
Franco Maloberti Analog Filters: Sensitivity 6
Sallen-Key Biquad (ii)
C1
C2
E1 E2
R1 R2
RbRa
E3E4
€
E2
E1
=
μR1R2C1C2
s2 +(1R1C1
+1
R2C1
+1−μR2C2
)s+μ
R1R2C1C2
€
ω0 =1
R1R2C1C2
Q=
1
R1R2C1C2
1R1C1
+1
R2C1
+1−μR2C2
G=μ
Franco Maloberti Analog Filters: Sensitivity 7
Sallen-Key Biquad (ii)
Five design elements, two properties (G is not important)
€
ω0 =1
R1R2C1C2
Q=
1
R1R2C1C2
1R1C1
+1
R2C1
+1−μR2C2
G=μ
Case 1: C1=C2; R1=R2=R
R=1/ 0 =3-1/QCase 2: C1=C2; Ra=Rb
R1=Q/ 0 R2=1/Q 0 Case 3: R1=R2; =1
C1=2Q/ 0 C2=1/2Q 0
Case 4: C1=31/2Q C2; =4/3
R1=1/Q0 R2=1/31/20
Franco Maloberti Analog Filters: Sensitivity 8
Sallen-Key Biquad (iii)
Sensitivities
€
ω0 =1
R1R2C1C2
Q=
1
R1R2C1C2
1R1C1
+1
R2C1
+1−μR2C2
G=μ
€
SR1
ω0 =SR2
ω0 =SC1
ω0 =SC2
ω0 =−12
SR1
Q =−12
+QR2C2
R1C1
SR2
Q =−12
+QR1C2
R2C1
+(1−μ)R1C1
R2C2
⎛
⎝ ⎜
⎞
⎠ ⎟
SC1
Q =−12
+QR1C2
R2C1
+R1R2C1
R2C2
⎛
⎝ ⎜
⎞
⎠ ⎟
SC2
Q =−12
(1−μ)QR1C1
R2C2
K
Franco Maloberti Analog Filters: Sensitivity 9
Sallen-Key High- and Band-pass
R1 R2
C1 C2
E1 E2
R1 R2C1
C2
E1 E2
R1
R2C1
C2
E1 E2
C1 C2
LP
HP
BP
Franco Maloberti Analog Filters: Sensitivity 10
Generic Sallen-Key
€
E2
E1
=VoutVin
=Z1
'Z2'
(Z1+Z2 +Z2' )Z1
' +Z1Z2
Franco Maloberti Analog Filters: Sensitivity 11
Sallen-Key: finite op-amp gain
The inverting and non-inverting terminals are not virtually shorted
C1
C2
E1 E2
R1 R2
RbRa
E3E4
€
E4 =E2
Ra +RbRa +
E2
A0
Franco Maloberti Analog Filters: Sensitivity 12
Sallen-Key in IC
C1
C2
E1 E2
R1 R2
RbRa
E3E4
C1
C2
E1 E2
R1 R2
E3E4
Franco Maloberti Analog Filters: Sensitivity 13
LP Sallen-Key with real op-amp
€
H(s) =1+as+bs2
α+βs+γs2 +δs3
€
a=2Cgm
b=RC2
gm
α=1+1A0
β=2RC+R0C0 +2R0C+4RC
A0
γ=2R2C2+4RR0C(C+C0)+R2C2
A0
δ=2R2C2
C0
gm
Franco Maloberti Analog Filters: Sensitivity 14
LP Sallen-Key with real op-amp (ii)
The transfer function has two zeros and three poles.If k = Rgm >> 1 the zeros are practically complex conjugates and are located at
The extra-pole is real and is located around the GBW of the op-amp.
€
H(s) =1+as+bs2
α+βs+γs2 +δs3
€
ω0,p =gm
2RC2 =ωpK
Franco Maloberti Analog Filters: Sensitivity 15
LP Sallen-Key with real op-amp (iii)
Possible responses
Franco Maloberti Analog Filters: Sensitivity 16
Sallen-Key IC Implementations
€
Y(s) =sC/R
sinh sRC
Yp (s)=Y(cosh(sRC−1))
Franco Maloberti Analog Filters: Sensitivity 17
Band-reject Biquad
A band-reject response requires zeros on the immaginary axis
It can be obtained with the generic SK implementation
Another option is to use a twin-T network
R1R1R2C1C2C2 R1R1R2C1C2C2
Franco Maloberti Analog Filters: Sensitivity 18
Band-reject Biquad (ii)
Using complementary valuesRRR/22CCCE1E2
€
E2
E1
=μ s2 +
1
R2C2
⎛
⎝ ⎜
⎞
⎠ ⎟
s2 +4(1−μ)
RCs+
1
R2C2
€
Q =1
4(1−μ)
Franco Maloberti Analog Filters: Sensitivity 19
Use of Feed-forward
P(s)Q(s)+k
€
E2
E1
=P(s) + kQ(s)
Q(s)
Assume
€
P(s) = a1s
Q(s) = s2 + b1s+ b0
k = −b1 /a1
€
E2
E1
= −k(s2 + b0)
s2 + b1s+ b0
High-pass Band-pass
Franco Maloberti Analog Filters: Sensitivity 20
Infinite-Gain Feedback Biquad
Sallen-Key architectures require input common mode range.
Input parasitic capacitance of the op-amp can affect the filter response
Keep the inputs of the op-amp at ground or virtual ground
A-
+
Franco Maloberti Analog Filters: Sensitivity 21
Infinite-Gain Multi-Feedback Biquad
A conventional op-amp amplifier is not able to realize complex-conjugate poles
Two or more feedback connections achieve the result
A-
+
Z1Z2
A-
+
Z2Z3Z1Z4
Franco Maloberti Analog Filters: Sensitivity 22
Low-Pass MFB
A-
+
C2R2R1C1R3E2E1
€
E2
E1
=−
1
R1R3C1C2
s2 +1
R1
+1
R2
+1
R3
⎛
⎝ ⎜
⎞
⎠ ⎟s+
1
R2R3C1C2
€
Q =C1
C2
1
R2R3
R1
+R3
R2
+R2
R3
ω0 =1
R2R3C1C2
G = −R2
R1
Franco Maloberti Analog Filters: Sensitivity 23
Design and Sensitivity
Five elements and three equations
“Arbitrarily choose two of them and determine the remaining three parameters
Assess the “quality of design” Sensitivity on relevant design element Spread of components Cost of the implementation
Linearity of components
Franco Maloberti Analog Filters: Sensitivity 24
High-pass and Band-pass
A-
+
C2R2R1C1C3E1A-
+
C2R2R1C1E1E2E2
€
E2
E1
= −
C1
C2
s2
s2 +C1 +C2 +C3
R1C1C2
s+1
R1R2C2C3
€
E2
E1
= −
1
R1C2
s
s2 +1
R2C1
+1
R2C2
⎛
⎝ ⎜
⎞
⎠ ⎟s+
1
R1R2C2C3
Franco Maloberti Analog Filters: Sensitivity 25
Two-Integrators Biquad
Use of state-variable method Derive the block diagram Translate the block diagram into an active
implementation Addition or subtraction Integration Dumped integration (integration plus addition)
Franco Maloberti Analog Filters: Sensitivity 26
Basic BlocksA-
+
V1V2-K1Σ-K2A-
+
V1A-
+
V1Σ-1/s-1/sK1-1/( +s K1)VoutVoutVout
€
−K1V1 −K2V2 =Vout
€
−sVout =V1
€
−(s+K1)Vout1 =V1
Franco Maloberti Analog Filters: Sensitivity 27
State Variables
The state variable are relevant voltages of the network
€
E2
E1
=Ga0
s2 + b1s+ b0
€
E2
a0
s2 + b1s+ b0( ) =GE1
€
E6 s2 + b1s+ b0( ) = E5
H(s)E1 E2
H’(s)E1 E2
E5
G a0
E6
€
E6 s2 + b1s( ) = E4
€
E4 + E6b0 = E5
ΣH”-b0
E5 E6
E4
Franco Maloberti Analog Filters: Sensitivity 28
State Variables (ii)
€
E6 s2 + b1s( ) = E4
€
E3 −s−b1( ) = E4
€
E3 = −sE6
Σ-1/sb1
-1/s
E4E3
E3 E6
Σ-1/sb1-1/sΣ-b0Ga0E1E5E6E2E3E4
Franco Maloberti Analog Filters: Sensitivity 29
State Variables (iii)
€
E6 s2 + b1s( ) = E4
€
E6 −s−b1( ) = E3
€
E4 = −sE3Σ-1/sb1
-1/s
E3E6
E4 E3
Σ-1/sb1-1/sΣ-b0Ga0E1E5E6E3E4
Franco Maloberti Analog Filters: Sensitivity 30
State Variables (iv)
€
E2
E1
=Ga2s
2 + a1s+ a0
s2 + b1s+ b0
€
E2'
E1
=G1
s2 + b1s+ b0
€
E2' a2s
2 + a1s+ a0( ) = E2
€
E3 = −sE2'
E7 = s2E2'
Σ-1/sb1-1/sΣ-b0GE1E5E’2E3E4
+a2
-a1
a0
E2
Franco Maloberti Analog Filters: Sensitivity 31
Implementations
Kervin-Huelsman-Newcomb Tow-Thomson Fleischer-Tow …. Fleischer-Laker
Franco Maloberti Analog Filters: Sensitivity 32
Implementations (ii)Σ-1/sb1-1/sΣ-b0Ga0E1E5E6E3E4