[sdiy] Sallen-Key Bessel Low Pass - behaviour and RC values
rburnett at richieburnett.co.uk
rburnett at richieburnett.co.uk
Thu Feb 6 17:35:45 CET 2014
> I've been asked to help set up an anti-alias (input) and
> reconstruction (output) filter for a micro-based project a friend is
> working on. I'll be using a Bessel type Sallen-Key Low Pass config for
> both - but I had some initial questions.
What is the application?
Normally you want a filter type with a steep transition band for
anti-aliasing and anti-imaging (reconstruction) filters in sampled
systems. So, filter types from worst to best are: Bessel, Butterworth,
Chebyshev, Eliptic (Cauer). The Bessel having the most leisurely curved
of knees between the pass-band and the stop-band followed by a gradual
roll-off. This is contrasted to the elliptic's cliffe-edge drop and
deep notches in the stop-band. (Anti-alias & reconstruction filters are
also typically higher order than 2nd so as to get enough attenuation in
the stop-band.)
A Bessel filter wouldn't be my first choice for this application, with
one possible exception. Bessel has the most gentle phase response, so
it tends to preserve the waveshape of whatever you are sampling the
best. So it is often used for things like the anti-alias filters at the
inputs of a digital oscilloscope, or the anti-imaging filter at the
output of a digital signal generator. For instrumentation applications
like this preserving the waveshape is of utmost importance!
> In a general sense, my understanding is that the real world
> differences in behaviour/performance between Bessel and Butterworth in
> a SallenKey config are mainly down to Q and cutoff?
Yes, for a second order filter. It gets slightly more complicated for
higher-order filters,
> ...and the differences in component selection is that for a
> Butterworth topology there is a 2:1 ratio between the values of C1 and
> C2 (or C2 and C ATCMB...) and for a Bessel C1 = C2.
I don't have the S&K filter calculations at hand, but it sounds about
right.
> Secondly, there seems to be two schools of thought on whether to set
> the filter cutoff frequency at Nyquist (which I believe is currently
> 96KHz) or around the highest frequency the DAC will output (in our
> case I believe this is about 16KHz).
Usually the anti-aliasing filter (or anti-imaging filter) is designed so
that it's cutoff frequency is just above the highest frequency of
interest in the signal you're processing. So for audio it might have a
flat response out to 20kHz and then it will cut hard above that
frequency. The Nyquist frequency is half of the sample rate. So for a
CD with Fs=44.1kHz the Nyquist limit is 22050Hz. By the time you reach
the Nyquist frequency the filter needs to be deep into the stop-band
with whatever attenuation you deem acceptable. You can see from my
example that an anti-alias filter for CD recording ideally needs to be
flat out to 20kHz, and then plummet down to -80dB or so by the time it
gets to 22.05kHz! It's no easy task for an analogue filter to achieve
this attenuation swing over just 2050 Hz frequency span!
You can make the filter design easier by increasing the sampling rate
(oversampling.) For instance if you increase the sample-rate just
slightly from 44.1kHz to 48kHz, that moves the Nyquist limit up to
24kHz. The filter now has the range from 20kHz to 24kHz in which to
transition from 0dB to -80dB or whatever. The resulting 4kHz transition
band is almost twice as much room as before for the anti-aliasing filter
to work it's magic. It means you can use simpler and cheaper
anti-aliasing / -imaging filters that are less sensitive to component
tolerances, and have a less brutal phase response.
> Any thoughts on this from those who've been round this block before?
Yes, get your mate to try to specify the design requirements with as
much detail as possible, eg. bandwidth, pass-band flatness, sample-rate,
required sample accuracy, suppression of aliasing, importance of
preserving waveshape, etc. Then you can play about with different
filter designs in a circuit simulator or MATLAB and see which one offers
the best trade-off. It may be that his requirements can be met with a
simple 1st-order RC filter, or it might end up needing something more
elabourate with a few design tradeoffs to be considered.
> Lastly - I hope you guys don't me asking this on list but I'd be
> curious to hear from Tom W. and Olivier G. about their RC selections
> of 12K/10nF (plus some gain?) and 39K/100pF - and anyone else on there
> fave or suggested RC values.
My guess is that it resulted in the cheapest filter that met the
criteria for their particular application :-)
-Richie,
More information about the Synth-diy
mailing list