DSPRelated.com
Forums

frequency scale in IIR design

Started by skyworld September 22, 2008
Hi,
I am reading Professor Ifeachor's book "Digital Signal Processing, A
Practical Approach, second edition" and is confused by example 8.4 for
IIR design.

The example gives a transfer function H(s) = 1/(s^2 + sqrt(2)*s +1), 3
dB cutoff frequency of 150Hz and sampling frequency of 1.28kHz. The
example illustrates IIR design with Impulse Invariant method.

What confused me is frequency scale the normalized transfer function
before applying the impulse invariant. The frequency scale is achieved
by replacing s by s/a, where a = 2*pi*150. Can anybody help me to
understand why frequency scale is needed? how to do frequency scale
before design? And how to convert a transfer function of analog filter
to normalized? Thanks very much.
On 22 Sep, 11:20, skyworld <chenyong20...@gmail.com> wrote:
> Hi, > I am reading Professor Ifeachor's book "Digital Signal Processing, A > Practical Approach, second edition" and is confused by example 8.4 for > IIR design. > > The example gives a transfer function H(s) = 1/(s^2 + sqrt(2)*s +1), 3 > dB cutoff frequency of 150Hz and sampling frequency of 1.28kHz. The > example illustrates IIR design with Impulse Invariant method. > > What confused me is frequency scale the normalized transfer function > before applying the impulse invariant. The frequency scale is achieved > by replacing s by s/a, where a = 2*pi*150. Can anybody help me to > understand why frequency scale is needed?
The frequency scale is needed because you need to account for the sampling frequency. The analog prototype filter is given in trems of the continuous-time impulse response. The resultiing discrete-time filter parameters will depend on the sampling frequency. Rune
On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote:
> On 22 Sep, 11:20, skyworld <chenyong20...@gmail.com> wrote: > > > Hi, > > I am reading Professor Ifeachor's book "Digital Signal Processing, A > > Practical Approach, second edition" and is confused by example 8.4 for > > IIR design. > > > The example gives a transfer function H(s) = 1/(s^2 + sqrt(2)*s +1), 3 > > dB cutoff frequency of 150Hz and sampling frequency of 1.28kHz. The > > example illustrates IIR design with Impulse Invariant method. > > > What confused me is frequency scale the normalized transfer function > > before applying the impulse invariant. The frequency scale is achieved > > by replacing s by s/a, where a = 2*pi*150. Can anybody help me to > > understand why frequency scale is needed? > > The frequency scale is needed because you need to account for > the sampling frequency. The analog prototype filter is given in > trems of the continuous-time impulse response. The resultiing > discrete-time filter parameters will depend on the sampling > frequency. > > Rune
Hi Rune, thanks for your reply. But can you give me more information on it? I know in FIR design I need to do normalized by f' = f/fs, but in this IIR example, it seems different.
On 22 Sep, 11:46, skyworld <chenyong20...@gmail.com> wrote:
> On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > I > know in FIR design I need to do normalized by f' = f/fs, but in this > IIR example, it seems different.
That's because the impulse-invariance design of IIR filters relates directly to the analog signal and physical time, whereas FIR filter design takes place in discrete-time domain has no such direct relation. Rune
On Sep 22, 8:40 am, Rune Allnor <all...@tele.ntnu.no> wrote:
> On 22 Sep, 11:46, skyworld <chenyong20...@gmail.com> wrote: > > > On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > > I know in FIR design I need to do normalized by f' = f/fs, but in > > this IIR example, it seems different. > > That's because the impulse-invariance design of IIR filters relates > directly to the analog signal and physical time, whereas FIR filter > design takes place in discrete-time domain has no such direct > relation.
Rune, that's not true. you can design either FIR or IIR filters in normalized frequency (set T = 1/fs = 1) and in both cases, when you compare to the "real world" where we measure time in seconds instead of samples, you have to convert units from normalized time and frequency (which are dimensionless) to physical time and frequency. the FIR is really a degenerate case of the IIR and the same analysis rules apply. r b-j
On 22 Sep, 18:15, robert bristow-johnson <r...@audioimagination.com>
wrote:
> On Sep 22, 8:40 am, Rune Allnor <all...@tele.ntnu.no> wrote: > > > On 22 Sep, 11:46, skyworld <chenyong20...@gmail.com> wrote: > > > > On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > > > I know in FIR design I need to do normalized by f' = f/fs, but in > > > this IIR example, it seems different. > > > That's because the impulse-invariance design of IIR filters relates > > directly to the analog signal and physical time, whereas FIR filter > > design takes place in discrete-time domain has no such direct > > relation. > > Rune, that's not true. you can design either FIR or IIR filters in > normalized frequency (set T = 1/fs = 1) and in both cases, when you > compare to the "real world" where we measure time in seconds instead > of samples, you have to convert units from normalized time and > frequency (which are dimensionless) to physical time and frequency. > the FIR is really a degenerate case of the IIR and the same analysis > rules apply.
You *can* design both FIRs and IIRs that way, but you don't *have* to. The impulse invariance method is unique in that it is linked directly to the continuous-time domain. As I understand the OP, it is this direct link between CT domain and the DT filter which confuses him. Or her. Rune
On 9&#4294967295;&#4294967295;23&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;4&#689;00&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote:
> On 22 Sep, 18:15, robert bristow-johnson <r...@audioimagination.com> > wrote: > > > > > On Sep 22, 8:40 am, Rune Allnor <all...@tele.ntnu.no> wrote: > > > > On 22 Sep, 11:46, skyworld <chenyong20...@gmail.com> wrote: > > > > > On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > > > > I know in FIR design I need to do normalized by f' = f/fs, but in > > > > this IIR example, it seems different. > > > > That's because the impulse-invariance design of IIR filters relates > > > directly to the analog signal and physical time, whereas FIR filter > > > design takes place in discrete-time domain has no such direct > > > relation. > > > Rune, that's not true. you can design either FIR or IIR filters in > > normalized frequency (set T = 1/fs = 1) and in both cases, when you > > compare to the "real world" where we measure time in seconds instead > > of samples, you have to convert units from normalized time and > > frequency (which are dimensionless) to physical time and frequency. > > the FIR is really a degenerate case of the IIR and the same analysis > > rules apply. > > You *can* design both FIRs and IIRs that way, but you don't *have* > to. > The impulse invariance method is unique in that it is linked directly > to the continuous-time domain. As I understand the OP, it is this > direct link between CT domain and the DT filter which confuses him. > Or her. > > Rune
Hi Run, in fact I know there are differences between CT domain and DT domain, I can find books describing these differences for FIR. But I can't find those information for IIR and I think there are some 'trick' in IIR design. What makes me confused is why the example takes (s/cutoff frequency) as scale factor? Thanks very much.
On 23 Sep, 04:06, skyworld <chenyong20...@gmail.com> wrote:
> On 9&#4294967295;&#4294967295;23&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;4&#689;00&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > > > > > > > On 22 Sep, 18:15, robert bristow-johnson <r...@audioimagination.com> > > wrote: > > > > On Sep 22, 8:40 am, Rune Allnor <all...@tele.ntnu.no> wrote: > > > > > On 22 Sep, 11:46, skyworld <chenyong20...@gmail.com> wrote: > > > > > > On 9&#4294967295;&#4294967295;22&#4294967295;&#4294967295;, &#4294967295;&#4294967295;&#4294967295;&#4294967295;5&#689;39&#4294967295;&#4294967295;, Rune Allnor <all...@tele.ntnu.no> wrote: > > > > > I know in FIR design I need to do normalized by f' = f/fs, but in > > > > > this IIR example, it seems different. > > > > > That's because the impulse-invariance design of IIR filters relates > > > > directly to the analog signal and physical time, whereas FIR filter > > > > design takes place in discrete-time domain has no such direct > > > > relation. > > > > Rune, that's not true. you can design either FIR or IIR filters in > > > normalized frequency (set T = 1/fs = 1) and in both cases, when you > > > compare to the "real world" where we measure time in seconds instead > > > of samples, you have to convert units from normalized time and > > > frequency (which are dimensionless) to physical time and frequency. > > > the FIR is really a degenerate case of the IIR and the same analysis > > > rules apply. > > > You *can* design both FIRs and IIRs that way, but you don't *have* > > to. > > The impulse invariance method is unique in that it is linked directly > > to the continuous-time domain. As I understand the OP, it is this > > direct link between CT domain and the DT filter which confuses him. > > Or her. > > > Rune > > Hi Run, in fact I know there are differences between CT domain and DT > domain, I can find books describing these differences for FIR. But I > can't find those information for IIR and I think there are some > 'trick' in IIR design.
There are many ways to design filters, both in CT and DT domain. The 'standard' methods are based on frequency-domain specifications where one selects stop-band and pass-band corner frequencies, stop-band attenuation and pass-band ripple. These methods work in both CT and DT domains, and in DT domain for both FIR and IIR filters. You can also design DT IIRs from CT analog counterparts, but then you need to do all sorts of frequency transforms, pre-warpind and so on, and in these methods the normalized frequencies f/Fs are important parameters. This is IIR design by Bilinear TRansform (BLT). The method you have tried, (DT) IIR design by (CT) Impulse Invariance works in a different way, as one bypasses everything that has to do with frequency specifications etc. One starts out witha continuous waveform, the CT impulse response, and samples it directly to get a DT filter. You need to take some time to contemplate this, because this means that the purpose of the subsequent analysis has a differnt purpose than with FIR design or BLT IIR design: With impulse invariance the objective is not to obtain a normalized frequency response, but to obtain a set of DT filter coefficients directly from a CT Impulse Response. This is why lots of the analysis take place in CT s-domain, and not in DT z domain. THis is also the reason why some of the familiar tricks are absent in the method of impulse invariance. Rune
skyworld wrote:

> The example gives a transfer function > H(s) = 1/(s^2 + sqrt(2)*s + 1), 3 dB cutoff frequency of 150Hz > and sampling frequency of 1.28kHz. The example illustrates IIR > design with Impulse Invariant method. > > What confused me is frequency scale the normalized transfer > function before applying the impulse invariant. The frequency > scale is achieved by replacing s by s/a, where a = 2*pi*150. Can > anybody help me to understand why frequency scale is needed?
Actually the discussion so far about sampling frequency does not pertain to your question. Frequency scaling is needed because the H(s) you mention above has its 3-dB point at s = j*1, instead of j*omega_c. That is what "normalized" means in this context. The transfer function G(s) := H(s/omega_c) therefore cuts off where you want it to. Martin -- Quidquid latine scriptum est, altum videtur.
i still don't completely know what this thread is about, but i'll pipe
in again,

On Sep 23, 5:51&#4294967295;am, Rune Allnor <all...@tele.ntnu.no> wrote:
> ... > With impulse invariance the objective is not to obtain a normalized > frequency response, but to obtain a set of DT filter coefficients > directly from a CT Impulse Response. >
i think it would be this, explicitly, h[n] = T*h(n*T) corresponding to the main "drawback" of the bilinear transform, the frequency warping of the CT frequency response, the impulse invariant method has the effect of infinitely repeating and aliasing the CT frequency response. they both have their different ways of messing up the CT behavior. r b-j