First- and second-order active filters built with op-amps: cut-off frequency and pass-band gain of single-pole low- and high-pass sections, the design of an equal-component Sallen-Key Butterworth low-pass and the gain that its damping demands, the roll-off rate that fixes the order needed for a stop-band specification, and band-pass and twin-T notch sections described by their centre frequency, Q and bandwidth.
Each problem below is solved in full — the given data is listed first, the governing relation is stated, and the arithmetic is carried through to a boxed answer. Work through the statement yourself before opening the solution. The underlying theory is covered in the Electronic Devices lecture series.
First-Order Active Low-Pass: Cut-off and Gain
A first-order active low-pass filter is built round a single op-amp. The signal reaches the non-inverting input through a 10 k\(\Omega\) series resistor, and a 0.01 \(\mu\)F capacitor runs from that input to ground. Negative feedback is set by \(R_f = 22~\text{k}\Omega\) from the output to the inverting input and \(R_1 = 10~\text{k}\Omega\) from the inverting input to ground. Assume an ideal op-amp.
Find the cut-off frequency \(f_c\) and the pass-band gain, in both ratio and dB.
Find the gain magnitude and phase at \(f = 3~\text{kHz}\).
Find the gain at \(f_c\) itself, and the frequency at which the output falls to the input level (unity gain).
\(R = 10~\text{k}\Omega\), \(C = 0.01~\mu\text{F}\) (the RC that sets \(f_c\))
\(R_f = 22~\text{k}\Omega\), \(R_1 = 10~\text{k}\Omega\) (the non-inverting gain block)
Ideal op-amp: no input current, so the RC network is not loaded.
Part (a) — cut-off frequency and pass-band gain
The RC section is a plain low-pass divider feeding a high-impedance node, so the corner is set by \(RC\) alone. The op-amp then multiplies by the non-inverting gain.
\(f_c = 1592~\text{Hz}\), \(A_0 = 3.20\) (10.10 dB)
Part (b) — response at 3 kHz
For a single pole the magnitude and phase are
\(|A| = 1.500\) (3.52 dB), lagging by \(62.1^\circ\); that is -6.58 dB below the pass band.
Part (c) — the corner itself, and the unity-gain frequency
Unity gain means \(|A| = 1\):
\(|A(f_c)| = 2.263\) (7.09 dB); output equals input at \(f = 4.84~\text{kHz}\).
Note that \(f_c\) is where the response is 3 dB below the pass band, not where the gain reaches unity — with a pass-band gain of 3.20 the two differ by a factor of 3.04 in frequency. Changing \(R_f\) moves the unity-gain point but leaves \(f_c\) alone.
First-Order High-Pass Filter and the 3 dB Point
A first-order active high-pass filter uses a 0.047 \(\mu\)F capacitor in series from the source to the non-inverting input, with a 3.3 k\(\Omega\) resistor from that input to ground. The feedback network is \(R_f = 47~\text{k}\Omega\) and \(R_1 = 10~\text{k}\Omega\). The op-amp is ideal.
Find the pass-band gain and the cut-off frequency.
Show from the transfer function that the response is exactly 3 dB down at \(f = f_c\), and find the gain at 200 Hz.
At what frequency is the response 20 dB below the pass band? Comment on the roll-off this implies.
\(R = 3.3~\text{k}\Omega\), \(C = 0.047~\mu\text{F}\)
\(R_f = 47~\text{k}\Omega\), \(R_1 = 10~\text{k}\Omega\)
Ideal op-amp; the CR network sees no loading.
Part (a) — pass-band gain and corner
\(A_0 = 5.7\) (15.12 dB), \(f_c = 1026~\text{Hz}\)
Part (b) — the \(-3\) dB point and the gain at 200 Hz
For the CR section the divider ratio rises with frequency:
Put \(f = f_c\), so \(f/f_c = 1\):
So the corner frequency is the \(-3\) dB frequency, as it must be. At 200 Hz:
At \(f_c = 1026~\text{Hz}\) the response is 3.01 dB down; at 200 Hz \(|A| = 1.090\), i.e. -14.37 dB relative to the pass band.
Part (c) — the \(-20\) dB frequency
Set the normalised magnitude to \(10^{-20/20} = 0.1\):
The response is 20 dB down at \(f = 103.1~\text{Hz}\), which is \(f_c/9.95\).
Twenty decibels lost over almost exactly one decade of frequency is the signature of a single pole: 20 dB/decade, or 6 dB/octave. The small excess (the exact factor is 9.950, not 10) is the curvature near the corner, and it vanishes further into the stop band.
Design of a Sallen-Key Butterworth Low-Pass
Design. Design a second-order Sallen-Key (VCVS) low-pass filter with a Butterworth (maximally flat) response and a \(-3\) dB frequency of 2 kHz. Use the equal-component form: both series resistors equal to \(R\), both capacitors equal to \(C\), with \(R\) from the source to node A, \(R\) from node A to the non-inverting input, \(C\) from the non-inverting input to ground, and \(C\) from node A back to the op-amp output. Gain is set by \(R_f\) and \(R_1\) in the usual non-inverting connection.
Choose \(C\) and \(R\) for \(f_c = 2~\text{kHz}\), rounding \(R\) to an E24 value.
Derive the gain that the Butterworth condition forces, and choose \(R_f\) and \(R_1\) to realise it.
With the rounded resistors in place, find the actual \(Q\), damping ratio and the gain error at \(f_c\).
Specification: 2nd-order Butterworth low-pass, \(f_c = 2~\text{kHz}\)
Equal-component Sallen-Key: \(R_1 = R_2 = R\), \(C_1 = C_2 = C\)
Ideal op-amp; E24 resistors, standard 0.01 \(\mu\)F capacitor.
Step 1 — the two design equations
For the equal-component Sallen-Key low-pass the pole frequency and \(Q\) separate completely: \(R\) and \(C\) set the frequency, the amplifier gain \(A = 1 + R_f/R_1\) sets \(Q\).
Step 2 — choose \(C\), then \(R\)
Capacitors come in far fewer values than resistors, so fix \(C\) first. Take \(C = 0.01~\mu\text{F}\):
Step 3 — the Butterworth gain condition
Maximally flat means \(Q = 1/\sqrt{2} = 0.707\), i.e. \(\zeta = 0.707\). Invert \(Q = 1/(3-A)\):
\(R = 8.2~\text{k}\Omega\), \(C = 0.01~\mu\text{F}\), \(R_1 = 10~\text{k}\Omega\), \(R_f = 5.6~\text{k}\Omega\)
Step 4 — verification with the rounded values
The normalised second-order magnitude is
The Butterworth choice is exactly the one that kills the middle term (\(1/Q^2 = 2\)). Here \(1/Q^2 - 2 = 0.0736\), so at \(f = f_c'\):
| Quantity | Butterworth target | As built (E24) |
|---|---|---|
| \(Q\) | 0.7071 | 0.6944 |
| \(\zeta\) | 0.7071 | 0.7200 |
| Gain \(A\) | 1.586 | 1.560 |
| \(f_c\) (Hz) | 2000 | 1941 |
| Response at \(f_c\) (dB) | -3.01 | -3.17 |
As built: \(Q = 0.694\), \(\zeta = 0.720\), \(f_c = 1941~\text{Hz}\), response at \(f_c\) = -3.17 dB — within 0.16 dB of ideal.
Two lessons. First, the equal-component Sallen-Key cannot have an arbitrary pass-band gain: Butterworth demands \(A = 1.586\), so any extra gain must come from a following stage. Second, if 2 kHz matters more than the E24 catalogue, a 1% E96 pair (\(R = 7.87~\text{k}\Omega\) giving 2022 Hz, \(R_f = 5.90~\text{k}\Omega\) giving \(Q = 0.7092\)) lands far closer.
Roll-Off Rate and Filter Order Selection
An anti-aliasing low-pass filter for a data-acquisition card has a pass-band edge of \(f_c = 1~\text{kHz}\). The sampling scheme requires that any signal at 4 kHz be attenuated by at least 45 dB relative to the pass band. All stages are Butterworth and are built as equal-component Sallen-Key sections.
State the ultimate roll-off rate, in dB/decade and dB/octave, of a first-, second- and fourth-order filter.
Find the minimum order that meets the 45 dB specification, first with the asymptotic estimate and then by checking the exact Butterworth magnitude.
Show how that order is realised as a cascade, and give the required gain of each Sallen-Key section and the resulting overall pass-band gain.
\(f_c = 1~\text{kHz}\); required attenuation \(\ge 45~\text{dB}\) at 4 kHz
Butterworth (maximally flat) response, equal-component Sallen-Key sections
Ideal op-amps.
Part (a) — roll-off rates
Each pole contributes one factor of \(f\) in the denominator far above \(f_c\), hence 20 dB per decade per order. One octave is \(\log_{10}2 = 0.301\) of a decade, so 20 dB/decade is 6.02 dB/octave.
| Order | Poles | dB/decade | dB/octave |
|---|---|---|---|
| 1st | 1 | 20 | 6.02 |
| 2nd | 2 | 40 | 12.04 |
| 4th | 4 | 80 | 24.08 |
20, 40 and 80 dB/decade — equivalently 6.02, 12.0 and 24.1 dB/octave.
Part (b) — the order the specification demands
4 kHz is \(\log_{10}(4/1) = 0.6021\) decades above the corner. With an asymptotic slope of \(20n\) dB/decade:
The asymptote overestimates the attenuation near the corner, so check the exact Butterworth magnitude:
A fourth-order Butterworth is required; it gives 48.2 dB at 4 kHz against the 36.1 dB of a third-order filter.
Part (c) — realising the fourth order
Four poles means two cascaded second-order sections. The Butterworth pole \(Q\) values for \(n = 4\) come from the pole angles \(22.5^\circ\) and \(67.5^\circ\) on the unit semicircle:
Both sections use the same \(R\) and \(C\) (both have the same pole frequency \(f_c\)); only the gains differ, through \(A = 3 - 1/Q\):
Two Sallen-Key sections at \(f_c = 1~\text{kHz}\) with \(Q_1 = 0.541\) (\(A_1 = 1.152\)) and \(Q_2 = 1.307\) (\(A_2 = 2.235\)); overall pass-band gain 2.575.
The asymptotic estimate said \(n = 4\) and the exact calculation agreed, but only just — the asymptote predicts 48.2 dB where the true figure is 48.2 dB. Note also that the high-\(Q\) section (\(Q_2 = 1.31\)) peaks by itself; the flat overall response only appears once both sections are in cascade, so never judge a stage by its own frequency response.
Band-Pass Filters: Cascade versus Multiple-Feedback
Two ways of making a band-pass filter are compared.
A wide-band filter is made by cascading a first-order high-pass of \(f_{c1} = 300~\text{Hz}\) with a first-order low-pass of \(f_{c2} = 3.4~\text{kHz}\). Find the bandwidth, the centre frequency and the \(Q\).
Design a narrow-band multiple-feedback (MFB) band-pass section with \(f_0 = 1~\text{kHz}\), \(Q = 10\) and a mid-band gain of 5. Use \(C = 22~\text{nF}\) for both capacitors and round the resistors to E24.
Verify the built filter and say why the cascade cannot do the same job.
In the MFB section, \(R_1\) carries the input to the summing node, \(R_2\) runs from that node to ground, the two equal capacitors \(C\) run from that node to the inverting input and from the node to the output, and \(R_3\) is the feedback resistor from output to inverting input. The non-inverting input is grounded.
Cascade: \(f_{c1} = 300~\text{Hz}\) (HP), \(f_{c2} = 3.4~\text{kHz}\) (LP)
MFB target: \(f_0 = 1~\text{kHz}\), \(Q = 10\), \(|A_0| = 5\), \(C = 22~\text{nF}\)
Ideal op-amps; the two cascaded corners are far apart, so each acts alone.
Part (a) — the cascaded wide-band filter
With \(f_{c2} \gg f_{c1}\) the high-pass sets the lower edge and the low-pass the upper edge, so the \(-3\) dB bandwidth is simply the gap between them. The centre frequency of a band-pass is the geometric mean of the edges, because the response is symmetric on a logarithmic frequency axis.
\(BW = 3100~\text{Hz}\), \(f_0 = 1010~\text{Hz}\), \(Q = 0.326\) — a wide-band filter (\(Q < 1\)), the classic telephone-speech band.
Part (b) — designing the MFB section
For the single-op-amp MFB band-pass the three resistors follow directly from \(f_0\), \(Q\) and \(A_0\):
First check the section is realisable at all: an MFB stage requires \(A_0 < 2Q^2\), i.e. \(Q > \sqrt{A_0/2} = 1.581\), which \(Q = 10\) satisfies comfortably. With \(2\pi f_0 C = 0.0001382~\text{S}\):
\(R_1 = 15~\text{k}\Omega\), \(R_2 = 360~\Omega\), \(R_3 = 150~\text{k}\Omega\), \(C = 22~\text{nF}\) (both)
Part (c) — verification and comparison
Work forwards from the E24 values:
| Quantity | Cascade (a) | MFB target | MFB as built |
|---|---|---|---|
| \(f_0\) (Hz) | 1010 | 1000 | 996.2 |
| \(BW\) (Hz) | 3100 | 100 | 96.5 |
| \(Q\) | 0.326 | 10.00 | 10.328 |
| Gain | 1 (unity sections) | 5.00 | 5.00 (inverting) |
As built: \(f_0 = 996.2~\text{Hz}\), \(Q = 10.328\), \(BW = 96.5~\text{Hz}\), \(|A_0| = 5.00\).
The cascade cannot reach \(Q = 10\): its bandwidth is the difference of two corner frequencies, so squeezing \(BW\) below \(f_0\) would need the two corners to overlap, at which point the two first-order sections simply cancel each other's pass band and the mid-band gain collapses. Above about \(Q = 1\) you need a resonant structure — MFB or a state-variable filter — which is what the single feedback loop in (b) provides.
Twin-T Notch Filter for Mains Rejection
Design and analyse. A biopotential amplifier is contaminated by 50 Hz mains pick-up. Reject it with an active twin-T notch filter. The twin-T consists of a resistive T of \(R\), \(R\) and a shunt \(R/2\) to the bootstrap node, in parallel with a capacitive T of \(C\), \(C\) and a shunt \(2C\) to the same node. The network drives a voltage follower, and a fraction \(k\) of the output is fed back to the bootstrap node through a second follower, which sets the \(Q\).
Take \(C = 0.1~\mu\text{F}\) and find \(R\); use the nearest 1% (E96) value and quote the resulting notch frequency.
The \(Q\) of the bootstrapped twin-T is \(Q = 1/[4(1-k)]\). Choose a divider for \(Q = 10\) and find the \(-3\) dB bandwidth and the band edges.
Find the actual rejection at 50 Hz, and the attenuation suffered by wanted signal components at 60 Hz and 100 Hz.
Notch target 50 Hz, \(Q = 10\); \(C = 0.1~\mu\text{F}\)
Twin-T notch frequency \(f_0 = 1/(2\pi RC)\); \(Q = 1/[4(1-k)]\)
Ideal op-amps; component tolerances neglected except the E96 rounding.
Part (a) — choosing \(R\)
The remaining arms follow from the twin-T ratios: \(R/2 = 15.8~\text{k}\Omega\) (also an E96 value) and \(2C = 0.2~\mu\text{F}\), best made as two 0.1 \(\mu\)F capacitors in parallel so that all six components come from the same batch and track each other.
\(R = 31.6~\text{k}\Omega\), \(R/2 = 15.8~\text{k}\Omega\), \(C = 0.1~\mu\text{F}\), \(2C = 0.2~\mu\text{F}\); \(f_0 = 50.37~\text{Hz}\)
Part (b) — setting \(Q\) and the bandwidth
The \(-3\) dB edges of a second-order notch sit at
\(R_a = 1~\text{k}\Omega\), \(R_b = 39~\text{k}\Omega\) gives \(k = 0.975\), \(Q = 10.0\), \(BW = 5.04~\text{Hz}\) between 47.9 Hz and 52.9 Hz.
Part (c) — how much is actually rejected
The second-order band-reject magnitude is
Mains is cut by only 16.8 dB; 60 Hz is down 0.34 dB and 100 Hz down 0.02 dB.
The theoretical notch is infinitely deep, but it sits at 50.37 Hz, not 50.00 Hz — and in a \(Q = 10\) notch a frequency error of only 0.73% is enough to leave 16.8 dB of rejection where infinite depth was on offer. Deep mains notches are therefore always trimmed: replace part of \(R\) with a multi-turn pot and adjust for a null on the bench. The wanted signal is barely touched — the 100 Hz component loses only 0.02 dB.