SigProc 6-FIR.ppt [Kompatibilitätsmodus]...b = [0 1[0.1 030.3 050.5 030.3 01]0.1] H()zzzzz=+ + +...
Transcript of SigProc 6-FIR.ppt [Kompatibilitätsmodus]...b = [0 1[0.1 030.3 050.5 030.3 01]0.1] H()zzzzz=+ + +...
FIR-Filter
SigProc-6-FIR 1
( )0 1 2 1[ ] [ ] [ 1] [ 2] [ 1 ]-= + - + - + + - - Ly n b x n b x n b x n b x n L( )0 1 2 1
1 1
[ ] [ ] [ ] [ ] [ ]
[ ] bzw. [ ] [ ]- -
= - -åå
L
L
kk k
L
y
b x n k h k x n k0 0
[ ]= =
=k
Tk
nb x L … Filterlänge (Zahl der KoeffizientenL-1 = N … Ordnung
{ }0 1 1[ ] [ ] [ 1] [ 1-= = - - + TLb b b x n x n x n Lb x
g
1 1( ) ( ) ( ) ( ) ( )-
- - + -+ + +L
L kY b X b X b X X b1
å1 10 1 1
0
( ) ( ) ( ) ( ) ( )+-
=
= + + + = L kkL
k
Y z b X z b z X z b z X z X z b z
11 1( ) -
+
å
åL
L kY z 1 10 1 1
0
( )( )( )
- - + --
=
= = + + + =å L kL k
k
Y zH z b b z b z b zX z
SigProc-6-FIR 2L – 1 Nullstellen und Pole (Pole bei z = 0)
FIR-EigenschaftenFIR Eigenschaften
• (Nicht rekursive) FIR Filter sind immer• (Nicht-rekursive) FIR-Filter sind immer stabil
• FIR-Filter können lineare Phase haben• FIR Filter sind einfach zu implementierenFIR Filter sind einfach zu implementieren.
Der Einfluss endlicher Wortlänge ist geringer als bei IIR Filterngeringer als bei IIR-Filtern
• Es gibt auch rekursive Implementierungen g p gvon FIR-Filtern
SigProc-6-FIR 3
FrequenzgangFrequenzgang
ˆ
1ˆ ˆ( )ˆ ˆ( ) ( ) ( )ww j ww w
--= = =åj
Lj k j
kB B z b e B e0
( ) ( ) ( )ww w=
=åj kz ek
B B z b e B e
( ) ( ) geradew w= - B B( ) ( ) ungeradej w j w=- -
ˆˆ ˆ/ww= = = f f T f f w
SigProc-6-FIR 4
/ 2
wp
= = = s sf f T f f w
b = [0 1 0 3 0 5 0 3 0 1]b [0.1 0.3 0.5 0.3 0.1]1 2 3 4( ) 0.1 0.3 0.5 0.3 0.1H z z z z z− − − −= + + + +
0
10
dB)
( )
0.5
1
y Pa
rt
0 0 2 0 4 0 6 0 8 1-30
-20
-10
Mag
nitu
de (
-0.5
0 4
Imag
inar
y
-100
0
gree
s)
0 0.2 0.4 0.6 0.8 1Normalized Frequency (×π rad/sample)
-1.5 -1 -0.5 0 0.5 1 1.5
-1
Real Part 0 0.2 0.4 0.6 0.8 1-400
-300
-200
Phas
e (d
egReal Part
Normalized Frequency (×π rad/sample)
PN-Darstellung Bode-Diagramm
SigProc-6-FIR 5
Direkte Form: leicht zu programmierenDirekte Form: leicht zu programmieren,effiziente Implementierung
Transponierte Form: Empfindlicher für Rundungsfehler, da Teilsummen in nachfolgende Stufen gespeist werden.
SigProc-6-FIR 6
Kaskadierte Sektionen 2. OrdnungKaskadierte Sektionen 2. Ordnung
SigProc-6-FIR 7
Lattice-FilterLattice Filter
k
Anwendung bei adaptiven Filtern und in der digitalen Sprachverarbeitung.
SigProc-6-FIR 8
Lattice-KoeffizientenLattice Koeffizienten
( ) 1 [ ] / [0]N
nH h h−1
( ) 1 , [ ] / [0]
( ) [0] ( )
nN n n
n
N
H z p z p h n h
H z h H z
−
=
= + =
=
Normierte Darstellung durch „Herausheben“ des Multiplizierers h[0]N
Rekursive Berechnung der Koeffizienten des Lattice-Filters
1'
1, ( ) 1 ,N
nN N N nk p H z p z
−−
−= = +1
'2 , 1 1
1
n
n N N nn
p k pp n Nk
=
−−= ≤ ≤ −1 Nk−
SigProc-6-FIR 9
1 2 3 44 4 4( ) 1 1.2 1.12 0.12 0.08 0.08k pH z z z z z− − − −= + + + − = = −
' 3 4 13 2 2
4
0.12 ( 0.08)1.2 0.217391 1 ( 0.08)
1 12 ( 0 08)1 12
p k ppkk
− − −= = =− − −
' 2 4 22 2 2
4
' 1 4 3
1.12 ( 0.08)1.12 1.217391 1 ( 0.08)
1.2 ( 0.08)0.12 1
p k ppk
p k p
− − −= = =− − −
− − − 217391 4 32 24
1( ) 1.
1 1 ( 0.08)p pp
k= = =
− − −'
3 31 2 3
3 0.
21739
( ) 1 1.21739 1.21739 21739 0.21739k pH z z z z− − − = == + + +
''2
1 22 2 1.0( ) 1 k pH z zz − − = + = =+
1 0.5k =
>> tf2latc(H4)0.5000 1.0000 0.2174 -0.0800
SigProc-6-FIR 10
tf2l t (H4)>> tf2latc(H4)0.5000 1.0000 0.2174 -0.0800
Nullstellen dürfen nicht auf Einheitskreis liegen!2/ 1 / 0Nkonst k−
At least one of the reflection coefficients is equal to one.The algorithm fails for this case.
In diesen Fällen umformen Text zur VO
SigProc-6-FIR 11
LINEARE PHASE
SigProc-6-FIR 12
Lineare Phase• Nichtlineares Phasenverhalten erzeugt
h Si lphasenverzerrte Signale• Lineares Phasenverhalten erzeugtLineares Phasenverhalten erzeugt
Phasenverschiebungen die frequenz-proportional sind Erhalt derproportional sind Erhalt der Kurvenform
ì 0,1, ( 1) / 2 ( gerade) [ ] [ 1 ],
0,1, ( / 2) 1 ( ungerade)
( 1) / 2
( )n L L
h n h L nn L L
L
j w a w
a
ìï = -ï = - - íï = -ïî=
= - ´
( 1) / 2
[ ] [ 1 ]( )
L
h n h L np
j w a
a
w
= ----------------------------------------
- = - -= - ´
SigProc-6-FIR 13
[ ] [ 1 ]
( 1)
( )2
/ 2
h n h L n
L
j w a w
a
=
= -
= ´
[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]6
ˆ
[ ] [ 1] [0] [6]; [1] [5]; [2] [4]
ˆ( ) [ ]
7
jk
h n h L n h h h h h h
H h k e
L
ww -
= - - = = =
=
=
å0
ˆ ˆ ˆ ˆ ˆ ˆ2 3 4 5 6[0] [1] [2] [3] [4] [5] [6]k
j j j j j jh h e h e h e h e h e h ew w w w w w=
- - - - - -= + + + + + +
å
ˆ3ˆ ˆ ˆ ˆ3 2[1] [2] [3] [4] [5[ ]0]j j j j jje h h e h e h h e h eew w w ww- - -= + + + + +{ }{ }
ˆ 32
ˆ
ˆ
3 ˆ ˆ ˆ2 [0]cos(3 ) 2 [1]cos(2 ) 2 [2]cos( ) [3]
[6] j
je h h h h
h e ww
w w w w-
-+
= + + +{ }[ ] ( ) [ ] ( ) [ ] ( ) [ ]+ + +
ˆ33
Setzen wir für [0] [3] und [ ] 2 [3 ], 1,2, 3 wird
ˆ ˆ( ) [ ]cos( )j
a h a k h k k
H a k ke ww w-
= = - =
= å0
( ) [ ]cos( )k
H a k kew w=
= å
SigProc-6-FIR 14
Typen von Linearphasen-FilternTypen von Linearphasen Filtern
ˆ( 1)/2( 1)/2
ˆänge
ˆungerade [ ]cos( ) 1geradeL
j Le a k kw
w
w-
- - å
Impulsantwort L H( ) Typ
ˆ( 1)/2
0/2
12
1
g [ ] ( )
ˆgerade [ ]cos[( ) ) 2
g
[ ] [ 1 ]
k
j LL
k
eh n h L b k kn w w
=
- - -= - -
å
å( )
ˆ[ ( 1)/2 /2]
11 /2
1
ungeungera rade [ ]de is n( ) 3j
kL
k
L a k ke w p w-
=
=
--
- å( )
[ ] [ 1h n h L n= - - -( )
ˆ1 /2
12
1
[ ( 1)/2 /2] ˆgerade [ ]cos[( ) )] 4L
k
j L b ke kw p w--
=
- - -å
[0] [( 1) / 2]; [ ] 2 [( 1) / 2 ]
[ ] 2 [ / 2 ]
a h L a k h L k
b k h L k
= - = - -= -
SigProc-6-FIR 15
Lineare PhaseLineare Phase1 k L kb b − −=Gerade Symmetrie
L ist ungeradzahlig[1,2,3,2,1]
Typ 1:b = [ , , , , ]
L ist geradzahlig[1,2,3,3,2,1]
Typ 2:b =
1
[1,2,3,3,2,1]
L ist ungeradzahlig b 0Typ 3:k L k
bb b − −= −
=Ungerade Symmetrie
(L-1)/2 L ist ungeradzahlig b 0
[ 1, 2, ,2,1]
Typ 3:
b
=
= − − 0 L Typ 4: ist geradzahlig
[ 1, 2, 3,3,2,1]b = − − −
SigProc-6-FIR 16
NullstellenNullstellen1
( ) [ ]L
kH z h k z-
-= å0
( ) [ ]
für Filter mit linearer Phase ist [ ] [( 1) ], 0,1, ,( 1)k
h n h L n n L=
= - - = -
å
1 0[( 1) ] ( ( 1)1) 1
Setzen wir ein, erhalten wir
[( 1) ] [ ]( ) ( )L
L k k L Lh L k h kH H-
- - - - - - - - å å[( 1) ] ( ( 1)1)
0 1
1[( 1) ] [ ]( ) (
l
)L k k L
k k
L
L
h L k z h k z zH z z H z= = -
= - - = =å å
[ ] [ ]hBeispiel: 4, L =0 1 2 3
3 3 2 3 1 3 0 3
[ ] [1 2 2 1]
( ) 1 2 2 2
1 2 2 1
h n
H z z z z z- - - -
- - - -
=
= ´ + + +
+ + +3 3 2 3 1 3 0 3
3 3 2 1 0
0 1 2 3
1 2 2 1
(1 2 2 1 )
1 2 2 2
z z z z z z z z
z z z z z
z z z z
-
- - - -
= ´ + + + =
= ´ + + +
´ + + +SigProc-6-FIR 17
0 3 1 2 2 2
z z z z= ´ + + +
Allgemeine NullstellenAllgemeine Nullstellen
( 1) 1 ( 1) 10 0 0
10 0
Aus ( ) ( ) sehen wir dass, ( ) ( ) 0
Wenn eine Nullstelle ist, dann ist auch eine Nullstelle.
L LH z z H z H z z H z
z z
- - - - - -
-
= = =
( ) ist eine gebrochen rationale Funktion mit reellen Koeffizienten.
Die
H z
Nullstellen sind daher entweder reell oder konjugiert komplex.
Im allgemeinen Fall erhalten wir bei Filtern
ungerader Länge (gerader Ordnung)
daher folgende Nullstellen:
( )1 111 , 1j jre z e zj j- -
æ ö÷ç ÷- -ç ÷ç( )
( )1 1
1 , 1
11 , 1j j
re z e zr
re z e zj j- - - -
÷ç ÷çè øæ ö÷ç ÷- -ç ÷ç ÷ç
SigProc-6-FIR 18
( ),rç ÷çè ø
Reelle und Nullstellen auf dem Einheitskreis
01
0
Liegt eine Nullstelle auf dem Einheitskreis
dann ist , die Nullstellen sind daher konjugiert komplex
j
j
z
z
e
e
j
j- -
=
=
( ) ( )1 1
0
1 1j je z e zj j- - -- ´ -
Haben wir eine reelle Nullstelle und liegt sie nicht auf dem Einheitkreis,
dann ist deren Reziproke auch eine Nullstelle und wir erha enltæ ö
( )1 11 11
rz zr
- -æ ö÷ç ÷ ´ ç ÷ç ÷çè ø
SigProc-6-FIR 19
Nullstellen bei ±1,gerade Symmetrie von h[n]gerade Symmetrie von h[n]
1
1 und 1 sind zu sich selbst reziprok und konjugiert und es+ -1können Faktoren der Form auftreten.
Wir betrachten zunächst den Fall für gerade Symmetrie in der Impulsantwort
H( 1z)= z-
( 1) 1
Wir betrachten zunächst den Fall für gerade Symmetrie in der Impulsantwort.
) (( LH z z H z- - -= ) und eine Nullstelle bei 1. -
( 1)
( 1) ( 1) ( 1)LH H- -- = - -
Ist ( 1) gerade, dann ist die obige Gleichung erfüllt
Ist aber ( 1) ungerade, dann muss ( 1) 0 sein.
L
L H
-- - =
-Die Systemfunktion für ( 1) ungerade (Typ L 2) muss alsob i 1 i N ll t ll h b
SigProc-6-FIR 20
-Typ 2 Filter bei = 1
können dahereine Nullst
keine Hochelle haben.
pässe sein.z
Nullstellen bei ±1,d S t i h[ ]ungerade Symmetrie von h[n]
Für den ungeraden (antisymmetrischen) Fall der Impulsantwort( 1) 1( ) ( ) muss 1 und 1 untersucht werden.
Für 1 erhalten wir (1) (1).
LH z z H z z z
z H H
- - -= - = = -= = -
H(z) muss für gerades und ungerades L eine Nullstelle bei 1 haben.Tiefpässe können daher weder mit Typ 3 noch mit Typ 4 Filtern realisiert werden.
( 1)Ist 1 dann erhalten wir ( 1) ( 1) ( 1).
( )
Lz H H- -= - - = - -Wenn ( 1) geradzahlig ist, dann ist dieser Ausdruck erL -
W ( 1) d hli i ( ) d
füllt.
L HSigProc-6-FIR 21
Wenn ( 1) ungeradzahlig ist, muss ( ) an der
Stelle 1 eine Nullstelle haben.
L H z--
Typ 1: h[n] gerade, Länge ungerade Typ 2: h[n] gerade, Länge gerade
0
0.5
1
10ary
Par
t
0
0.5
1
11ary
Par
t
-1
-0.5
0
Imag
ina
-1
-0.5
0
Imag
ina
-1 0 1 2Real Part
-1 0 1 2Real Part
Achtung! Länge ungeradeOrdnung (# Pole) gerade!
1
Typ 3: h[n] ungerade, Länge ungerade1
Typ 4: h[n] ungerade, Länge gerade
Achtung! Länge ungerade Ordnung (# Pole) gerade!
0
0.5
10
gina
ry P
art
0
0.5
7gi
nary
Par
t
-1
-0.5Imag
-1
-0.5Imag
SigProc-6-FIR 22
-1 0 1Real Part
-1.5 -1 -0.5 0 0.5 1Real Part
ZusammenfasungZusammenfasung
• Typ 1 ist die allgemeinste Form alle• Typ 1 ist die allgemeinste Form, alle Filtertypen können realisiert werden.
• Typ 2 kann kein Hochpass sein.• Typ 3 kann weder Hochpass nochTyp 3 kann weder Hochpass noch
Tiefpass sein.• Typ 4 kann kein Tiefpass sein.
SigProc-6-FIR 23
Magnitude Response (dB)
20
[-1 -2 -3 3 2 1]Hochpass
0
10
[-1 -2 0 2 1]Bandpass
-10
Mag
nitu
de (
dB) [1 2 3 2 1]
Tiefpass
-20
M
[1 2 3 3 2 1]Tiefpass
-40
-30
Tiefpass0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Normalized Frequency ( ×π rad/sample)
SigProc-6-FIR 24
Typ 1Typ 1
[1 2 3 2 1] TPMagnitude Response (dB)
[1 2 3 2 1] TP
0.6
0.8
12
10
20
Magnitude Response (dB)
-0.2
0
0.2
0.4
4
mag
inar
y Pa
rt
-10
0
gnitu
de (d
B)
-1
-0.8
-0.6
-0.4
2
Im
-30
-20
Mag
-1 -0.5 0 0.5 1
1
Real Part0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
30
Normalized Frequency (×π rad/sample)
SigProc-6-FIR 25
Typ 2Typ 2
[1 2 3 3 2 1] TP[1 2 3 3 2 1] TP
15
20
Magnitude Response (dB)
0 6
0.8
1
0
5
10
15
nitu
de (d
B)
-0.2
0
0.2
0.4
0.6
5
agin
ary
Part
-15
-10
-5
Mag
n
-1
-0.8
-0.6
-0.4
0.2
Ima
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
-20
Normalized Frequency (×π rad/sample)
-1 -0.5 0 0.5 1Real Part
SigProc-6-FIR 26
Typ 3Typ 3[-1 -2 0 2 1] BP[ ]
-50
0
50
gnitu
de (d
B)
0 6
0.8
1
100
0 0.2 0.4 0.6 0.8 1-150
-100
Normalized Frequency (×π rad/sample)
Mag
-0 2
0
0.2
0.4
0.6
3 4
agin
ary
Part
90°
-200
-100
0
Phas
e (d
egre
es)
-1
-0.8
-0.6
-0.4
0.2
Ima
0 0.2 0.4 0.6 0.8 1-300
Normalized Frequency (×π rad/sample)P-1 -0.5 0 0.5 1
1
Real Part
SigProc-6-FIR 27
Typ 4Typ 4[-1 -2 -3 3 2 1] HP[ ]
1 5
20
)
0
0.5
1
1.5
5ry P
art
-20
0
Mag
nitu
de (d
B
-1
-0.5
0 5
Imag
ina
0
0 0.2 0.4 0.6 0.8 1-40
Normalized Frequency (×π rad/sample)
M
-2 -1 0 1 2
-1.5
Real Part
-400
-200
se (d
egre
es) -90°
0 0.2 0.4 0.6 0.8 1-600
-400
Normalized Frequency (×π rad/sample)
Phas
SigProc-6-FIR 28
Hamming Tiefpass 25 Ordnung (L = 26)Hamming-Tiefpass 25. Ordnung (L = 26)
0
Magnitude (dB) and Phase Responses
-0.1553
1
Pole/Zero Plot
-20
-10
-7.2495
-3.7024
0
0.5
ary
Par
t
25
-40
-30
Mag
nitu
de (
dB)
-14.3437
-10.7966
Pha
se (r
adia
ns)
-0.5
0
Imag
ina 25
-60
-50
-21.4378
-17.8907
-1.5 -1 -0.5 0 0.5 1 1.5 2
-1
Real Part
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9-70
Normalized Frequency ( ×π rad/sample)
-24.9849
SigProc-6-FIR 29
fvtool(b1,a1,b2,a2,…), , , ,
BetragPhasePhaseBetrag + Phase…ImpulsantwortSprungantwortFilter KoeffizientenFilterinformation…
SigProc-6-FIR 30
Symmetrisches Filter Typ 1 L ungeradeSymmetrisches Filter Typ 1, L ungerade
x[n][n 6]
z –1 z –1
b0y[n]
x[n-6]
z
x[n-1]
z 1
b1
x[n-5] [ ] [ ]{ }[ ] [ ]{ }
0
1
[ ] 6
1 5
y n b x n x n
b x n x n
= + −
+ − + −z –1
x[n-2]
z –1
b2
x[n-4]
[ ] [ ]{ }[ ] [ ]{ }
[ ]2
1 1 5
2 4
3
b x n x n
b x n x n
b x n
+ +
+ − + −
+z –1
[ 3]
z –1
2 [ ]3 3
b b b b b b
b x n
b
+ −
x[n-3] b3
Typ 1, L ungerade
0 1 2 3, 02 1, , , ,,b b b b b b b
SigProc-6-FIR 31
yp , u ge ade
Symmetrisches FilterTyp 2, L gerade
[ ] [ ]{ }[ ] 5y n b x n x n+[ ] [ ]{ }[ ] [ ]{ }
{ }
0
1
[ ] 5
1 4
y n b x n x n
b x n x n
= + −
+ − + −
[ ] [ ]{ }2 2 3b x n x n+ − + −
[ ]0 1 2 2 1 0, , , , ,b b b b b b
{ }/ 2 1
0
[ ] [ ] [ 1 ]L
kk
y n b x n k x n L k−
= − + − + +SigProc-6-FIR 32
0k=
FilterentwurfFilterentwurf
1 Spezifikation des Frequenzgangs1. Spezifikation des Frequenzgangs2. Entwurfskriterien3. Realisierung (Matlab fdatool)4 Quantisierung4. Quantisierung5. Implementierung
SigProc-6-FIR 33
SigProc-6-FIR 34
FilterspezifikationFilterspezifikation
Tiefpass(Hochpass)(Hochpass)
Bandpass( )(Bandsperre)
SigProc-6-FIR 35
EntwurfskriterienEntwurfskriterien• Equiripple• Equiripple
– verwendet Parks-McClellan Algorithmus; der Fehler zwischen gewünschtem und tatsächlichemFehler zwischen gewünschtem und tatsächlichem Frequenzgang wird minimiert.
• Methode der Frequenzabtastung
• Window (Fourier Methode)– klassische Methode mit Fenstertechnik
SigProc-6-FIR 36
Equirippleq pp
SigProc-6-FIR 37
METHODE DER FREQUENZABTASTUNG
SigProc-6-FIR 38
FIR-TP mit linearer PhaseFIR TP mit linearer Phase
• Konzeptuell einfach da Impulsantwort• Konzeptuell einfach, da Impulsantwort und Frequenzgang über DFT verknüpft
Hdej Hdej2Hde Hde
2Hdej Hk, k 2N k, k 0,1,2,… ,N − 1
hdn iDFTHkSigProc-6-FIR 39
N−1
hdn 1N ∑
k0
N 1
Hkej 2N kn
Impulsantwort muss reell seinImpulsantwort muss reell sein H(0) muss reell sein, die anderen Werte müssen konj komplex sein die anderen Werte müssen konj. komplex sein.
Hkej 2N kn ∗
H∗ke−j2N kn H∗ke−j
2N N−kn
HN − k H∗k
SigProc-6-FIR 40
SigProc-6-FIR 41
EigenschaftenEigenschaften• Frequenzgang stimmt in den Abtastwerten• Frequenzgang stimmt in den Abtastwerten
exakt überein, Frequenzgang zwischen den Abtastpunkten lässt sich nicht beeinflussenAbtastpunkten lässt sich nicht beeinflussen.
• Steiler Übergang DB-SpB große Abweichung vom gewünschten VerhaltenAbweichung vom gewünschten Verhalten.
• Einfügen von Punkte(n) im Übergang i h DB d S B li f fl hzwischen DB und SpB liefert flacheren
Übergang und geringere Welligkeit.
SigProc-6-FIR 42
fir2fir2
• FIR Filter mit linearer Phase und• FIR-Filter mit linearer Phase und beliebigem Frequenzgang
• fir2 kombiniert Frequenzabtastung mit Fenstermethode. Durch die Fensterung ggeht Frequenzantwort nicht exakt durch die Abtastpunktedie Abtastpunkte.
SigProc-6-FIR 43
FENSTERMETHODE
SigProc-6-FIR 44
FenstermethodeFenstermethode• Die Fenstermethode geht vom Frequenzgang
d id l (R ht k)Filtdes idealen (Rechteck)Filters aus.
Time domain Frequency domain
0.8
1
Time domain
20
30
40
)
Frequency domain
0.4
0.6
Am
plitu
de
0
10
20
Mag
nitu
de (
dB)
10 20 30 40 50 600
0.2
Samples0 0.2 0.4 0.6 0.8
-20
-10
Normalized Frequency ( ×π rad/sample)Samples Normalized Frequency ( ×π rad/sample)
SigProc-6-FIR 45
TP 20. Ordnung (Rechteck)
Das Filter zeigt eine große Welligkeit im Durchlassbereich die auch bei hoher Ordnung nichtDurchlassbereich, die auch bei hoher Ordnung nicht verschwindet.
ωc=0.5N=20
ω =0 5ωc 0.5N=60
SigProc-6-FIR 46
Welligkeit DB und SpBg p• Die Welligkeit im Durchlass- und Sperrbereich ist gleich groß und kann
nicht beeinflusst werden ( δs = δp ).• Der Frequenzgang wird berechnet durch Faltung des idealen Filters mit
dem Fenster. ˆ ˆ ˆ( ) ( ) ( )TP iTP RH H Wω ω ω= ∗
1 + δs
1 - δs
δp
SigProc-6-FIR 47
Rechteck- und Hamming-Fensterg
Time domain40
Frequency domain
0 6
0.8
1
de -20
0
20
(dB
)
0 2
0.4
0.6
Am
plitu
d
-60
-40
20
Mag
nitu
de
10 20 30 40 50 600
0.2
Samples0 0.2 0.4 0.6 0.8
-100
-80
Normalized Frequency ( ×π rad/sample)
Das Hamming Fenster (grün) beschneidet dieDas Hamming-Fenster (grün) beschneidet die Impulsantwort des idealen Filter »sanfter« als das Rechteckfenster. Dämpfung Sperrbereich HF > RF,
SigProc-6-FIR 48
Rechteckfenster. Dämpfung Sperrbereich HF RF, aber Flankensteilheit RF > HF.
Rechteck HammingRechteck Hamming
SigProc-6-FIR 49
Gebräuchliche Fenster
( )( ), 0 1
Rechteck 1
w n n L£ £ -Fenster
Rechteck 1
2Hann 0.5 0.5cos
nLpæ ö÷ç ÷- ç ÷ç ÷çè øæ ö2
Hamming 0.54 0.46cos
2 4Blackmann 0.42 0.5 cos 0.08cos
nL
n n
p
p p
æ ö÷ç ÷- ç ÷ç ÷çè øæ ö æ ö÷ ÷ç ç÷ ÷- +ç ç÷ ÷ç çBlackmann 0.42 0.5 cos 0.08cos
1 1L L+÷ ÷ç ç÷ ÷ç ç- -è ø è ø
Rot HammingSchwarz HannTü ki Bl k
SigProc-6-FIR 50
Türkis Blackmann
Rechteck-, Hann-, Hamming- und Blackmann-Fenster, , g
• Eigenschaften wie Dämpfung im Durchlass- undEigenschaften wie Dämpfung im Durchlass und Sperrbereich dieser Fenster sind nicht beeinflussbar.
• Die Welligkeit im Durchlass- und Sperrbereich ist g pgleich und kann nicht unabhängig voneinander festgelegt werden: Welligkeit im Durchlassbereich unnötig klein, zu große Sperrdämpfung.Di S dä f fü i ählt F t hä t• Die Sperrdämpfung für ein gewähltes Fenster hängt nicht von L ab: eine vorgegebene Sperrdämpfung kann nur durch eine vorgegebene Sperrdämpfung kann nur durch die Wahl eines geeigneten Fensters erreicht werden.
SigProc-6-FIR 51
Vergleich der wichtigsten Fenster
Fenster B AR ht k 4 /L 13 dB
A
Rechteck 4π/L -13 dBHann 8π/L -32 dBHamming 8π/L -43 dBHamming 8π/L 43 dBBlackmann 12π/L -58 dB
B
SigProc-6-FIR 52
Kaiser-FensterKaiser Fenster2 2
0
1 12 2
L LI n
é ùæ ö æ öê ú- -÷ ÷ç ç÷ ÷ê ú- -ç ç÷ ÷ç ç÷ ÷ç çê úè ø è øê úë û
b
0
0
w(n)= , 0 ( 1)1
2modifizierte Besselfunktion 1. Art, 0. Ordnung
n LL
I
I
è ø è øê úë û £ £ -é ùæ ö- ÷çê ú÷ç ÷ê úç ÷çè øê úë û
b
0 modifizierte Besselfunktion 1. Art, 0. OrdnungI
Der Parameter β erlaubt die Einstellung höherer Sperrdämpfung um den Preis geringerer Flankensteilheit.
0.1102( 8.7) 50A Aìï - >ïïNäherungsformel: 0.4
A Sperrdämpf
= 0.5842( 21) 0.07886( 21) 50 21
0 21
ung [dB]
A A A
A
ïï - + - ³ ³íïï <ïïî
b
A Sperrdämpf
7.951 21
14.36( )
ung [dB]
p s
AA
Nw w
ìï -ï + >ïï -ïï» í
SigProc-6-FIR 53
0.92221 21
( )p s
NA
w w
íïï + £ïï -ïïî
Time domain50
Frequency domain
0.8
1
0
B)
0.4
0.6
Am
plitu
de
-100
-50
Mag
nitu
de (
dB
10 20 30 40 50 600
0.2
0 0 2 0 4 0 6 0 8-200
-150
10 20 30 40 50 60Samples
0 0.2 0.4 0.6 0.8Normalized Frequency ( ×π rad/sample)
β0 Rechteck
5 (Hamming)5 (Hamming)
6 (Hann)
8.6 (Blackmann)
SigProc-6-FIR 5420
Kaiser Tiefpass
SigProc-6-FIR 55
Vor- und Nachteile der Fenstermethode
+ Die Fenstermethode ist einfach zu verstehen und anzuwenden. Der Berechnungsaufwand der Filterkoeffizienten ist gering, außer beim Kaiser FilterKaiser-Filter.
− Anpassung an Toleranzfelder nur sehr eingeschränkt möglich (Ausn. Kaiser).eingeschränkt möglich (Ausn. Kaiser).
− Die Grenzfrequenz des Durchlass- und Sperrbereichs können nicht angegeben werden (A K i )(Ausn. Kaiser)
− Die Sperrdämpfung eines gewählten Fensters (Ausn Kaiser) liegt fest und hängt nicht von L(Ausn. Kaiser) liegt fest und hängt nicht von L ab.
SigProc-6-FIR 56
Window (1)Window (1)
SigProc-6-FIR 57
SigProc-6-FIR 58Design Filter
SigProc-6-FIR 59Pole/Zero Editor
Edit/Convert Structure Edit/Convert Structure
SigProc-6-FIR 60
SigProc-6-FIR 61Realize model
SigProc-6-FIR 62
SigProc-6-FIR 63
BeispielBeispiel
• FIR Bandpass equiripple kleinste• FIR-Bandpass equiripple, kleinste Ordnung
• Fstop1 = 800 Hz, Fpass1 = 1000 HzFpass2 = 1300 Hz, Fstop2 = 1500 Hzp , pfs = 8000 HzAs1 = 50 dB As2 = 60 db Ap = 1 dBAs1 = 50 dB, As2 = 60 db, Ap = 1 dB
SigProc-6-FIR 64
rClick
SigProc-6-FIR 65
Analysen …
SigProc-6-FIR 66
File/ExportFile/Export
Fil File Export to C Header File
Export to SPToolExport to SPTool
SigProc-6-FIR 67
Quantisierung (1)Quantisierung (1)
SigProc-6-FIR 68
Quantisierung (2)Quantisierung (2)
SigProc-6-FIR 69
Implementierung …Implementierung …
TargetsGenerate C header …(Xilinx )(Xilinx …)
SigProc-6-FIR 70
Beispiel SPToolBeispiel SPTool
• Sinus 2 kHz + weißes Rauschen• Sinus 2 kHz + weißes Rauschen (Mittelwert = 0 , Varianz = 0.01)
• Bandpass Welligkeit 1.5 dB, Sperrbereich 35 dBp
SigProc-6-FIR 71
SigProc-6-FIR 72
SigProc-6-FIR 73
Rauschen im gefiltertenRauschen im gefilterten Signal nicht mehr zu hören Spektrum
SigProc-6-FIR 74
p
Spektrum Eingang
Spektrum AusgangSigProc-6-FIR 75
Spektrum Ausgang