# Deriving design equations | FX Book Questions | Forum

guest

— Forum Scope —

— Match —

— Forum Options —

Minimum search word length is 3 characters - maximum search word length is 84 characters

Deriving design equations
Member
Members
November 19, 2015 - 3:57 am
Member Since: November 18, 2015
Forum Posts: 7
Offline

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).

EG

November 19, 2015 - 9:06 pm
Member Since: January 29, 2017
Forum Posts: 690
Offline

Hi EG

For the "Direct Z-Plane" designs, I got my basic education from these books back in the 1990's:

pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=0132525526&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=00TN044AV30EQEQXHNJM

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:

http://www.musicdsp.org/files/.....okbook.txt

Other sources include:

http://www.beis.de/Elektronik/.....gFilt.html

http://www.mikroe.com/chapters.....r-filters/

https://engineering.purdue.edu/~ece438/lecture_notes/legacy_notes/module_1/1.7_dig_filter_design/1.7.3_iir_filter_design.pdf

http://www.robots.ox.ac.uk/~sj...../SP/l6.pdf

http://www.cs.tut.fi/~ts/part4.pdf

Hope that helps you get started!

- Will

Member
Members
November 19, 2015 - 10:17 pm
Member Since: November 18, 2015
Forum Posts: 7
Offline

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?

Thanks again,
EG

November 20, 2015 - 3:44 am
Member Since: January 29, 2017
Forum Posts: 690
Offline

Hi EG

The all pole filters in 6.2 came from this source:

pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=0132525526&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=00TN044AV30EQEQXHNJM

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...

- Will

Member
Members
November 20, 2015 - 4:10 am
Member Since: November 18, 2015
Forum Posts: 7
Offline

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?

November 20, 2015 - 9:03 pm
Member Since: January 29, 2017
Forum Posts: 690
Offline

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...

- Will

Forum Timezone: America/New_York

Most Users Ever Online: 152

Currently Online:
6 Guest(s)

1 Guest(s)

Top Posters:

Chaes: 56

Skyler: 48

StevieD: 46

Derek: 46

Frodson: 45

Peter: 43

TheSmile: 43

Nickolai: 43

clau_ste: 39

jeanlecode: 37

Member Stats:

Guest Posters: 1

Members: 775

Moderators: 1