Hi all - I'm struggling with understanding how to derive design equations such as what are introduced in Chapter 6. My college math is a little rusty (BSEE 25 years ago), but I've done pretty well with the content up to Chapter 6. But, for example, in 6.2, where the design eq's are introduced for a single pole filter, or even better, 6.6 and the Biquad, it's not clear to me how to take the existing transfer function and solve for the coefficients.
Would anybody be willing to briefly walk thru the steps to derive the design eq's - or at the very least, point me in a direction (or reference in the book) that will help me break through this wall?
Thanks a bunch (and particularly for the awesome resource this book is).
For the "Direct Z-Plane" designs, I got my basic education from these books back in the 1990's:
The IIR filters in the FX book are all bilinear-to-z-transform filters. There are several approaches for designing these digital filters from analog prototypes. Unfortunately, they are generally not simple/straightforward. One very concise and classic version is found here:
Other sources include:
Hope that helps you get started!
Thanks Will for the reply and the references to read through.
So, for the single pole in 6.2, are the design equations just well known equations that have been solved and publicized previously for this class of filter? Ie - should we just assume those are a reference rather than trying to derive them for each filter type?
The all pole filters in 6.2 came from this source:
though they do not foot-note the original source (it is one of the several DSP sources in the bibliography for that chapter).
And, yes these are all well established designs.
The majority of the other IIR filters are also well established (except Massberg, which is quite new) and most came from the original Motorola App Notes for the MOT 56000 DSP chip family, circa 1988 or so. I referenced those at the end of the chapter. The DSP Filter cookbook by Lane et, al essentially uses the same basis - Lane, Datta and the other authors of that book all worked in the Motorola DSP group. As an aside, Datta and Karley were classmates of mine in grad school...
Gotcha Will - thanks. I was thinking that the derivation of these equations came before Ch 6 and i just couldn't grok it. But your explanation makes sense now.
Final question - what is a good challenge to try at the end of Ch 6 before I move on to the chapter on delay? Something to ensure the info in Ch 6 is understood, but not too similar to the filter you already walk through in Ch 6?
For theory you could try the bilinear transform challenge in 6.4.1.
For coding, you could make a multi-filter that implements several of the filters and let the user choose (you need to read up on the enumerated UINT variable mechanism in section 7.8, p 245 to allow the choice of filters). Maybe make both of the parametric EQs? The non-constant Q EQ calculations require monitoring the tan( ) function and limiting it (see the text). There is also a thread about that filter on the forum. Also note that, quite unfortunately, there are several typos in the book regarding the IIR equations. These are covered in the Errata document - see link at bottom of sidebar - so make sure you have that as well.
I am also working on and off on a "all the filters in the book" plugin but no guarantees when that will be done...
Most Users Ever Online: 152
Currently Browsing this Page:
Guest Posters: 1
Newest Members:Jas, Rowan, sojourn, fabhenr, rg1, Niklas, Wutru, Tim Campbell, Danny Jonel, Valentin
Moderators: W Pirkle: 573
Administrators: Tom: 74, JD Young: 80, Will Pirkle: 0, W Pirkle: 573, VariableCook: 3