0% found this document useful (0 votes)
150 views4 pages

Digital Signal Processing: BLT Simplified (T 2)

This document discusses two approaches to designing digital IIR filters: 1) Prewarp the frequency specifications of the digital filter to obtain specifications for an analog filter, design the analog filter, then transform it back to the digital domain. 2) Directly design the digital filter in the Z-domain by prewarping the digital frequency specifications. It provides an example of using each approach to design a 3rd order lowpass Butterworth filter and compares the resulting analog filter transfer function, digital filter transfer function, and impulse responses between the two approaches. Edge frequency calculations and design equations for both approaches are also outlined.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
150 views4 pages

Digital Signal Processing: BLT Simplified (T 2)

This document discusses two approaches to designing digital IIR filters: 1) Prewarp the frequency specifications of the digital filter to obtain specifications for an analog filter, design the analog filter, then transform it back to the digital domain. 2) Directly design the digital filter in the Z-domain by prewarping the digital frequency specifications. It provides an example of using each approach to design a 3rd order lowpass Butterworth filter and compares the resulting analog filter transfer function, digital filter transfer function, and impulse responses between the two approaches. Edge frequency calculations and design equations for both approaches are also outlined.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

11/19/2019

BLT simplified (T=2)

s
(1  z 1 ) 1 s
z 
Digital Signal Processing (1  z 1 ) 1 s
LECTURE 33-35
SARANG C DHONGDI

Example -  p  0 . 25 
Approaches of designing Digital IIR filter Approach 1  s  0 . 55 
• Prewarp the freq specs of digital filter GD(z) • Prewarp the freq specs of digital filter GD(z)
Low pass filter  p  0 . 5 dB
to obtain freq specs of analog filter HD(s). to obtain freq specs of analog filter HD(s). Butterworth
 s  15 dB
• HD(s)  HLP(s) • HD(s)  HLP(s)
p 1
?
1
? N ??
 p  tan k k1
• Design HLP(s) • Design HLP(s) 2
s
 s  tan
• HLP(s)  HD(s) • HLP(s)  GLP(z) 2 H nor ( s ) ? H ( s ) ?

• HD(s)  GD(z) • GLP(z)  GD(z) G ( z ) ??

 p  0 . 25    0 . 4142
Example - p

Approach 1  s  0 . 55   s  1 . 1708
Low pass filter  p  0 . 5 dB
1 1
Butterworth  2 . 82  15 . 84
 s  15 dB k k1
N  2 . 6586  3
1 0 . 203451
H nor (s)  H (s) 
( s  0 . 588 )( s 2  0 . 588 s  0 . 3459 )
( s  1)( s 2  s  1)
0.2034
𝐻 𝑠 =
𝑠 + 1.1760 𝑠 + 0.6915 𝑠 + 0.2034

  0 . 066 (1  z  1 ) 3
  G (z) 
 2 1 1  (1  0 . 259 z 1 )( 1  0 . 67 z  1  0 . 39 z  2 )
 H ( j p )  2N

1  2 
  c  0 . 588
   
1   p  . . . .
  c   G 𝑧 =
. . .

1
11/19/2019

Edge frequencies
1
H nor ( s ) 
( s  1)( s 2  s  1)

1 1
𝐻(𝑗Ω ) = = ⇒ Ω = 0.6619
Ω 𝐴
1+
Ω

0.2899
𝐻 𝑠 =
𝑠 + 1.3238 𝑠 + 0.8762 𝑠 + 0.2899

. . . .
G 𝑧 =
. . .

f p  700 Hz
Example f s  500 Hz
Approach 1
Sampling freq 2000 Hz
[𝑁, 𝑊𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′) ‘s’ indicates Analog domain design High-pass filter
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑙𝑜𝑤 , ′𝑠′)
Prewarped edge frequency values to be Chebyshev  p  1 dB
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵, 𝐴, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠)
entered as input.
 s  32 dB
Sampling freq = 1/T (Default T=2)
1 1
 p ??  s ??  p  1,  s  ?? ? ? N ??
k k1
[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(0.4142,1.1708,0.5,15, ′𝑠′)

ˆ  tan  p
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑙𝑜𝑤′, ′𝑠′)
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵, 𝐴, 0.5)
 H LP , nor ( s ) ? H LP ( s ) ? H HP ( s ) ?
p
2
ˆ  tan  s
 s
2 G HP ( z ) ??

 p 1  0 . 45  ,  p 2  0 . 65 
Approach 1 -> MATLAB Examples
Approach 1  s 1  0 . 3 ,  s 2  0 . 75 
‘s’ indicates Analog domain design
[𝑁, 𝑤𝑛] = 𝑐ℎ𝑒𝑏1𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′)
Bandpass filter  p  1 dB
[𝐵, 𝐴] = 𝑐ℎ𝑒𝑏𝑦1(𝑁, 𝑅, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2ℎ𝑝(𝐵, 𝐴, Ω )
Prewarped edge frequency values to be
entered as input.
Butterworth  s  40 dB
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠)
Sampling freq = 1/T
1 1
 p  ?,  s  ? ? ? N ??
ˆ
 ˆ k k1
p 1  ?,  p 2  ?
[𝑁, 𝑤𝑛] = 𝑐ℎ𝑒𝑏1𝑜𝑟𝑑(1,1.9626105,1,32, ′𝑠′)
[𝐵, 𝐴] = 𝑐ℎ𝑒𝑏𝑦1(𝑁, 1, 𝑊𝑛, ′𝑠′) ˆ  ?, 
 ˆ ?
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2ℎ𝑝(𝐵, 𝐴, 1.9626105) s1 s2
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 0.5) H LP , nor ( s ) ? H LP ( s ) ? H BP ( s ) ?
ˆ2 ?
BW  ?,  o
G BP ( z ) ??

2
11/19/2019

Approach 1 -> MATLAB


[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′) ‘s’ indicates Analog domain design
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2𝑏𝑝(𝐵, 𝐴, Ω , 𝐵𝑊) Prewarped edge frequency values to be
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠) entered as input.

Sampling freq = 1/T

Complete example
IIR BANDPASS FILTER
[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(1,2.3617,1,40, ′𝑠′)
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2𝑏𝑝(𝐵, 𝐴, 1.18056,0.7777)
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 0.5)

Bandpass specifications Step 1 = Digital freq and prewarped freq

𝑓 = 200𝐻𝑧, 𝑓 = 300𝐻𝑧  p1  0 .4 ,  p 2  0 .6


 s 1  0 . 1 ,  s 2  0 .9
𝑓 = 50𝐻𝑧, 𝑓 = 450𝐻𝑧

𝑆𝑎𝑚𝑝𝑙𝑖𝑛𝑔 𝑓𝑟𝑒𝑞 1000𝐻𝑧


ˆ
 ˆ
p 1  0 . 7265 ,  p 2  1 . 37638
𝛼 = 3𝑑𝐵 ˆ  0 . 15838 , 
ˆ  6 . 3138
 s1 s2
𝛼 = 15𝑑𝐵

Step 2 Verifying all parameters for BP filter Step 3 = LP prototype

ˆ2
sˆ2  
s  P
 
0
ˆ 
BW   ˆ BW  0 . 64988 , ˆ 
sˆ  ˆ  p 1
P2 P1 P2 P1
ˆ 
 ˆ ˆ ˆ  s  9 . 4718233
ˆ  center frequency
 p1 p 2   s1  s 2  1
0
ˆ 2 1
 ˆ 2 
 ˆ 2
ˆ  ˆ ˆ ˆ ˆ2
o
For   0 s    P 0 s1
 p  3 dB
 P1 P 2   s1 s 2  0 ˆ
s1 ( BW )
 s  15 dB

3
11/19/2019

Step 4 = Find order (Butterworth approx) Step 5 = Denorm (substitute cut-off freq)
   
1    
= 9.4721 
 H ( j p )
2

1

1 
 c 1

 H ( j p )
2

1

1 
  c  1 . 7117
𝑘  
2N
1  2   
2N
A2 
 1   p    1   s  
  c     c  
1 [N,wn] = buttord(1, 9.4721,3,15,’s’)
= 5.5468
𝑘
1
1 H LP ( s ) 
𝑁 = 0.7626 ≅ 1 H LP ( s )  s 1 s
s
s 1 s
s 1 . 7117
1
1
𝐻 , (𝑠) = 1 . 7117
𝑠+1 1 H LP ( s ) 
H LP ( s )  s  1 . 7117
s 1

Step 6 = LP to BP conversion Step 7 = Substitution


sˆ  ˆ2 2
s  P
 
0
ˆ ˆ
sˆ P 2   1 . 7117
P1 1 H BP ( s ) 
H BP ( s )  s  1 . 7117 s 2 1
s 1 s 2 1 0 . 64988 s
sˆ2  1 0 . 64988 s
s
ˆs0.64988
0 . 64988 s 1 . 1124 s
H BP ( s )  H BP ( s ) 
s 2  0 . 64988 s  1 s 2  1 . 1124 s  1
H BP ( s )  H LP ( s ) s
s 2 1
0 . 64988 s

Step 8 = BLT
0 . 64988 s 1 . 1124 s 0 . 2452 ( z 2  1) 0 . 3574 ( z 2  1)
G BP ( z )  G BP ( z )  G BP ( z )  G BP ( z ) 
s  0 . 64988 s  1
2
s
z 1 s  1 . 1124 s  1
2
s
z 1 z 2  0 . 5095 z 2  0 . 2852
z 1 z 1

0 . 2452 ( z 2  1) 0 . 3574 ( z 2  1) num =[0.2452 0 -0.2452]; num =[0.3574 0 -0.3574];


G BP ( z )  G BP ( z )  den =[1 0 0.5095]; den =[1 0 0.2852];
z 2  0 . 5095 z 2  0 . 2852 freqz(num,den) freqz(num,den)

Wp = [200 300]/500; Ws = [50 450]/500; Wp = [200 300]/500; Ws = [50 450]/500;


Rp = 3; Rs = 15; Rp = 3; Rs = 15;
[N,Wn] = buttord(1,9.4721,3,15,'s') [N,Wn] = buttord(1,9.4721,3,15,'s') [n,Wn] = buttord(Wp,Ws,Rp,Rs); [n,Wn] = buttord(Wp,Ws,Rp,Rs);
[b,a] = butter(N,Wn,'s') % Put Wn =1 [b,a] = butter(N,Wn,'s') [b,a] = butter(n,Wp); [b,a] = butter(n,Wn);
[bt,at]=lp2bp(b,a,1,0.64988) [bt,at]=lp2bp(b,a,1,0.64988) freqz(b,a,128,1000) freqz(b,a,128,1000)
[num,den] = bilinear(bt,at,0.5) [num,den] = bilinear(bt,at,0.5)

You might also like