Upload
ahlf-hengen
View
109
Download
3
Embed Size (px)
Citation preview
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 1
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
Vor- und Nachteile FIR- und IIR-FilterDSV 1 200501 Rur Filterentwurf 2
FIR-Filter sind nichtrekursive LTD-Systeme
werden meistens in Transversalstruktur (Direktform 1) realisiert
+ linearer Phasengang realisierbar
+ immer stabil (alle Pole im Ursprung)
+ toleranter gegenuumlber Quantisierungseffekten als IIR-Filter
- houmlhere Filterordnung als vergleichbare IIR-Filter (mehr Realisierungsaufwand dafuumlr effiziente Struktur fuumlr DSP)
- Zeitverzoumlgerung bzw Gruppenlaufzeit relativ gross
IIR-Filter sind rekursive LTD-Systeme
werden meistens als Biquad-Kaskade realisiert
+ kleine Filterordnung (Aufwand) dank Pol-Selektivitaumlt
+ kleine Zeitverzoumlgerung
- linearer Phasengang fuumlr kausale Filter nicht realisierbar
- mehr Probleme mit Quantisierungseffekten als bei FIR-Filter
FilterspezifikationDSV 1 200501 Rur Filterentwurf 3
Amin Rippel Rs
Amax
Rp
Durch-lass-
bereich
fDB fSB fs2
Stempel-Matrizen-Schema
Sperrbereich
1 dB
Filterordnung (Aufwand) abhaumlngig von Steilheit im Uumlbergangsbereich
FIR-Filter mit linearer PhaseDSV 1 200501 Rur Filterentwurf 4
Linearphasige FIR-Filtern der Ordnung NFilterkoeffizienten symmetrisch sind dh bn = bN-n
Filterkoeffizienten antisymmetrisch sind dh bn = - bN-n
4 Typen linearphasiger FIR-Filter und H(f)-Restrikitionen
Beispiel H(z) = b0middot(1+z-1)
FIR-Filter der Ordnung N=1 vom Typ 2
Frequenzgang H(f) = 2b0middotcos(πfTs)middote-jπfTs
Nullstelle H(fs2) = 0
linearer Phasengang φ(f) = -πmiddotfmiddotTs bzw Zeitverzoumlgerung Δ = Ts2
Typ Symmetrie Ordnung N H(0) H(fs2)
1 sym gerade - -2 sym ungerade - Nullstelle3 anti-sym gerade Nullstelle Nullstelle4 anti-sym ungerade Nullstelle -
FIR-Filterentwurf mit FenstermethodeDSV 1 200501 Rur Filterentwurf 5
Ziel bn = h[n] so bestimmen dass H(f) die Spezifikationen erfuumlllt
Fenstermethode
1 Analoge Referenzstossantwort abtasten hd[n] = Tsh(t=nTs)
idealer TP -infin lt n lt infin
2 relevanten Anteil ausschneiden hc[n] = w[n]hd[n] fuumlr -N2 le n le N2
Fenster w[n]
3 FIR-Filter mit Zeitverschiebung kausal machen h[n] = hc[n-N2]
DB sd
sin(nπf (f 2))h [n] =
nπ
Rechteck-Fenster
Blackman-Fenster
Hamming-Fenster
Hanning-Fenster -N2 0 N2
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Vor- und Nachteile FIR- und IIR-FilterDSV 1 200501 Rur Filterentwurf 2
FIR-Filter sind nichtrekursive LTD-Systeme
werden meistens in Transversalstruktur (Direktform 1) realisiert
+ linearer Phasengang realisierbar
+ immer stabil (alle Pole im Ursprung)
+ toleranter gegenuumlber Quantisierungseffekten als IIR-Filter
- houmlhere Filterordnung als vergleichbare IIR-Filter (mehr Realisierungsaufwand dafuumlr effiziente Struktur fuumlr DSP)
- Zeitverzoumlgerung bzw Gruppenlaufzeit relativ gross
IIR-Filter sind rekursive LTD-Systeme
werden meistens als Biquad-Kaskade realisiert
+ kleine Filterordnung (Aufwand) dank Pol-Selektivitaumlt
+ kleine Zeitverzoumlgerung
- linearer Phasengang fuumlr kausale Filter nicht realisierbar
- mehr Probleme mit Quantisierungseffekten als bei FIR-Filter
FilterspezifikationDSV 1 200501 Rur Filterentwurf 3
Amin Rippel Rs
Amax
Rp
Durch-lass-
bereich
fDB fSB fs2
Stempel-Matrizen-Schema
Sperrbereich
1 dB
Filterordnung (Aufwand) abhaumlngig von Steilheit im Uumlbergangsbereich
FIR-Filter mit linearer PhaseDSV 1 200501 Rur Filterentwurf 4
Linearphasige FIR-Filtern der Ordnung NFilterkoeffizienten symmetrisch sind dh bn = bN-n
Filterkoeffizienten antisymmetrisch sind dh bn = - bN-n
4 Typen linearphasiger FIR-Filter und H(f)-Restrikitionen
Beispiel H(z) = b0middot(1+z-1)
FIR-Filter der Ordnung N=1 vom Typ 2
Frequenzgang H(f) = 2b0middotcos(πfTs)middote-jπfTs
Nullstelle H(fs2) = 0
linearer Phasengang φ(f) = -πmiddotfmiddotTs bzw Zeitverzoumlgerung Δ = Ts2
Typ Symmetrie Ordnung N H(0) H(fs2)
1 sym gerade - -2 sym ungerade - Nullstelle3 anti-sym gerade Nullstelle Nullstelle4 anti-sym ungerade Nullstelle -
FIR-Filterentwurf mit FenstermethodeDSV 1 200501 Rur Filterentwurf 5
Ziel bn = h[n] so bestimmen dass H(f) die Spezifikationen erfuumlllt
Fenstermethode
1 Analoge Referenzstossantwort abtasten hd[n] = Tsh(t=nTs)
idealer TP -infin lt n lt infin
2 relevanten Anteil ausschneiden hc[n] = w[n]hd[n] fuumlr -N2 le n le N2
Fenster w[n]
3 FIR-Filter mit Zeitverschiebung kausal machen h[n] = hc[n-N2]
DB sd
sin(nπf (f 2))h [n] =
nπ
Rechteck-Fenster
Blackman-Fenster
Hamming-Fenster
Hanning-Fenster -N2 0 N2
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
FilterspezifikationDSV 1 200501 Rur Filterentwurf 3
Amin Rippel Rs
Amax
Rp
Durch-lass-
bereich
fDB fSB fs2
Stempel-Matrizen-Schema
Sperrbereich
1 dB
Filterordnung (Aufwand) abhaumlngig von Steilheit im Uumlbergangsbereich
FIR-Filter mit linearer PhaseDSV 1 200501 Rur Filterentwurf 4
Linearphasige FIR-Filtern der Ordnung NFilterkoeffizienten symmetrisch sind dh bn = bN-n
Filterkoeffizienten antisymmetrisch sind dh bn = - bN-n
4 Typen linearphasiger FIR-Filter und H(f)-Restrikitionen
Beispiel H(z) = b0middot(1+z-1)
FIR-Filter der Ordnung N=1 vom Typ 2
Frequenzgang H(f) = 2b0middotcos(πfTs)middote-jπfTs
Nullstelle H(fs2) = 0
linearer Phasengang φ(f) = -πmiddotfmiddotTs bzw Zeitverzoumlgerung Δ = Ts2
Typ Symmetrie Ordnung N H(0) H(fs2)
1 sym gerade - -2 sym ungerade - Nullstelle3 anti-sym gerade Nullstelle Nullstelle4 anti-sym ungerade Nullstelle -
FIR-Filterentwurf mit FenstermethodeDSV 1 200501 Rur Filterentwurf 5
Ziel bn = h[n] so bestimmen dass H(f) die Spezifikationen erfuumlllt
Fenstermethode
1 Analoge Referenzstossantwort abtasten hd[n] = Tsh(t=nTs)
idealer TP -infin lt n lt infin
2 relevanten Anteil ausschneiden hc[n] = w[n]hd[n] fuumlr -N2 le n le N2
Fenster w[n]
3 FIR-Filter mit Zeitverschiebung kausal machen h[n] = hc[n-N2]
DB sd
sin(nπf (f 2))h [n] =
nπ
Rechteck-Fenster
Blackman-Fenster
Hamming-Fenster
Hanning-Fenster -N2 0 N2
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
FIR-Filter mit linearer PhaseDSV 1 200501 Rur Filterentwurf 4
Linearphasige FIR-Filtern der Ordnung NFilterkoeffizienten symmetrisch sind dh bn = bN-n
Filterkoeffizienten antisymmetrisch sind dh bn = - bN-n
4 Typen linearphasiger FIR-Filter und H(f)-Restrikitionen
Beispiel H(z) = b0middot(1+z-1)
FIR-Filter der Ordnung N=1 vom Typ 2
Frequenzgang H(f) = 2b0middotcos(πfTs)middote-jπfTs
Nullstelle H(fs2) = 0
linearer Phasengang φ(f) = -πmiddotfmiddotTs bzw Zeitverzoumlgerung Δ = Ts2
Typ Symmetrie Ordnung N H(0) H(fs2)
1 sym gerade - -2 sym ungerade - Nullstelle3 anti-sym gerade Nullstelle Nullstelle4 anti-sym ungerade Nullstelle -
FIR-Filterentwurf mit FenstermethodeDSV 1 200501 Rur Filterentwurf 5
Ziel bn = h[n] so bestimmen dass H(f) die Spezifikationen erfuumlllt
Fenstermethode
1 Analoge Referenzstossantwort abtasten hd[n] = Tsh(t=nTs)
idealer TP -infin lt n lt infin
2 relevanten Anteil ausschneiden hc[n] = w[n]hd[n] fuumlr -N2 le n le N2
Fenster w[n]
3 FIR-Filter mit Zeitverschiebung kausal machen h[n] = hc[n-N2]
DB sd
sin(nπf (f 2))h [n] =
nπ
Rechteck-Fenster
Blackman-Fenster
Hamming-Fenster
Hanning-Fenster -N2 0 N2
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
FIR-Filterentwurf mit FenstermethodeDSV 1 200501 Rur Filterentwurf 5
Ziel bn = h[n] so bestimmen dass H(f) die Spezifikationen erfuumlllt
Fenstermethode
1 Analoge Referenzstossantwort abtasten hd[n] = Tsh(t=nTs)
idealer TP -infin lt n lt infin
2 relevanten Anteil ausschneiden hc[n] = w[n]hd[n] fuumlr -N2 le n le N2
Fenster w[n]
3 FIR-Filter mit Zeitverschiebung kausal machen h[n] = hc[n-N2]
DB sd
sin(nπf (f 2))h [n] =
nπ
Rechteck-Fenster
Blackman-Fenster
Hamming-Fenster
Hanning-Fenster -N2 0 N2
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Beispiel zum WindowingDSV 1 200501 Rur Filterentwurf 6
GibbslsquoschesPhaumlnomen
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Einfluss des FenstersDSV 1 200501 Rur Filterentwurf 7
hFIR[n] = w[n] middot hd[n] HFIR(f) = W(f) Hd(f)
Hd(f)
IW(f0-f)I
Gibbslsquosches Phaumlnomen Uumlberschwingen von HFIR(f0 asymp fDB)
Nebenkeule von W(f) klein =gt Uumlberschwingen von HFIR(f) klein
Hauptkeule von W(f) schmal =gt Uumlbergangsbereich von HFIR(f) steil
fDB
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Spektren verschiedener FensterDSV 1 200501 Rur Filterentwurf 8
L=N+1=51
A = - 13 dB
A = - 41 dB
A = - 57 dB
A = - 31 dB
Δf asymp (1L)middotfs Δf asymp (2L)middotfs
Δf asymp (2L)middotfs Δf asymp (3L)middotfs
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 9
TP ndash BPBSHP-Transformationen
Ziel Erhalt der linearen Phase
TP-BP-Frequenztranslation
Typ 12 bBP[n] = 2middotcos(ω0middotnTs)middotbTP[n]
Typ 34 bBP[n] = 2middotsin(ω0middotnTs)middotbTP[n]
BP-BS-Transformation
BS und BP sind komplementaumlr HBP(z) + HBS(z) = z-N2
bBS[n] = δ[n-N2] - bBP[n]
TP-HP-Frequenztranslation
TP-BP-Trafo mit f0=fs2 bHP[n] = (-1)nmiddotbTP[n]
Beispiel
linearphasiges Typ 2 FIR-Filter 1 Ordnung mit fDB=fs4
TP HTP(z) = 05middot(1+z-1) =gt HP HHP(z) = 05middot(1-z-1)
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 10
FIR-Differentiator-Filter
Referenzfilter Ha(f) = j2πf =gt hd[n] = cos(nπ)n - sin(nπ)(n2π)
Beispiel FIR-Differentiator 10 Ordnung (Hamming-Fenster)
FIR-Differentiatoren die houmlhere Frequenzen (Rauschen) unterdruumlcken
HDiff(z) HTP(z)
zwei FIR-Filter
siehe auch Matlab fdatool
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 11
FIR-Hilbert-Filter
Referenzfilter Ha(f) = -jmiddotsgn(f) =gt hd[n] = [1 - cos(nπ)] (nπ)
Anwendung breitbandige 900-Phasenschieber (zB Einseitenband-Signale in Telekommunikation)
Beispiel FIR-Hilbert-Filter 10 Ordnung (Rechteck-Fenster)
bdquoAllpassldquo
Phasensprungvon -900
Linearer Abfall(Zeitverschiebung beim Windowing)
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 12
Raised-cosine-FIR-Filter
Anwendung Pulsformung bei der Signaluumlbertragung
Beispiel Raised-Cosine-FIR-Filter N=20 Rechteck-FensterDatenrate R = 2 kbs fs = 8 kHz Rolloff r=05
Uumlbergangsbereich (r=05)
T=1R
Pulsform
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 13
FIR-Filterentwurf Frequenzabtastung
1 Vorgabe N+1 aumlquidistante Abtastwerte von H(f) im Bereich [0fs]
fs=
N+1=80
2 IFFT
h[n
]b
FIR
[n]
HF
IR(f
)
Vorgabe wird eingehalten dazwischen aber Uumlberschwingen
3 Zeitverschiebung(oder Vorgabe Phase)
VerbesserungenVorgabe weniger
steil (siehe )oder Windowing
periodisch
H[m
]
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 14
FIR-Filterentwurf im z-Bereich
Iterative Optimierungsverfahren (CAD)
am bekanntesten ist der Remez-Algorithmus (Parks-McClellan)
Vorgabe Stempel-Matrize (auch Multiband) =gt Minimax-Optimierung
Equiripple im Durchlass- und Sperrbereich =gt kleinste Ordnung fuumlr Amin
Least-Square Optimierungsverfahren
Amin
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
FIR- und IIR-Filter-StrukturDSV 1 200501 Rur Filterentwurf 15
FIR
-Filt
er
T
+
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
N
ii inxbny
0
N
i
ii zb
zX
zYzH
0
T
+
-a1
b0
T
b1 b2
+ + y[n]
x[n] x[n-2]
-a2
T T y[n-2]
M
ii
N
ii inyainxbny
10
M
i
ii
N
i
ii
za
zb
zX
zYzH
1
0
1
IIR-F
ilte
r
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 16
IIR-Filterentwurf Analoge Prototypen
Approximation von lsquoBrickwalllsquo-Filtern ist im Analogen geloumlst
Beispiel Butterworth-TP N Ordnung
IIR-Filterentwurf
2NDBff1
1H(f)
N=1
N=2
N=3
HTP(s) [ =gt HBP(s) ] =gt H(z) =gt b-a-Filterkoeffizienten
sz-Trafo(bilinear)
TP-HPBPBS-Trafo(Achtung BP und BS
haben doppelte Ordnung)
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 17
IIR-Filterentwurf Analoge Prototypen
Vergleich mit Filter 4 Ordnung=gt Amax=1dB fDB=1 kHz Amin=30 dB fSB=2 kHz
Butterworth-Filterbull Steilheit kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt klein
Chebyscheff-Filterbull Steilheit mittelbull IH(f)I Rippel im DB oder SBbull φ(f) Nichtlinearitaumlt mittel
Elliptisches Filter (Cauer)bull Steilheit grossbull IH(f)I Rippel im DB und SBbull φ(f) Nichtlinearitaumlt gross
Besselfilterbull Steilheit sehr kleinbull IH(f)I monotonbull φ(f) Nichtlinearitaumlt sehr klein
Amin=3 dB
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 18
Bilineare Transformation
zT
sez sT ln1
1
1
5
1
1
1
3
1
1
12ln
153
z
z
z
z
z
z
Tz
Ts
1
1
1
12
1
12
z
z
Tz
z
Ts
Potenzreihen-Approximation fuumlr ln
Nach dem ersten Glied abgebrochen
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 19
Bilineare Transformation
fs2fdigital
fanalog
-fs2
fanalog
IHa(f)I
fDB
fdigital
IH(f)I
fs2
s
2 z 1s
T z 1
sz-Trafo
f-Trafo
fDB
kein Aliasing aber Frequenzstauchung mit Tangensfunktion
j2πfanalog = j(2Ts)middottan(πfdigitalTs)
prewarping
sdigitalanalog
Tfjezfjs
2und2mit
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 20
Bilineare Transformation
AA js 1
12
z
z
Ts Tj DDez
0s 1z
s
Ajs Tj Dez A NyquistD
s-Ebene z-Ebene
0z
Dreht nur einmal rund um dem Einheitskreis kein Aliasing-Effekt
Im
Re
s-EbeneIm
Re
z-Ebene
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200501 Rur Filterentwurf 21
IIR-Filterentwurf im z-Bereich
Ziel
H(f) soll moumlglichst gut mit Vorgabe uumlbereinstimmen (least-square)
Filterkoeffizienten von H(z) variieren bzw optimieren (CAD)
Beispiel
Yule-Walker-Filter 10 Ordnung mit 2 Durchlassbereichen
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
x[n]b0
b1
bN
z-1 z-1
y[n]
-a1
-aM
x[n-1]
x[n-N]
y[n-1]
y[n-M]
Direktstruktur 1
x[n]b0 b1
bN-1
z-1
y[n]
x[n-1] z-1
bN
x[n-N]
R=R+XmiddotY
hellip
Direkte Umsetzung der Differenzengleichung
Realisierung FIR-Filter mit Direktstruktur 1
DSV 1 200501 Rur LTD-Systeme 22
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Direktstruktur 2
x[n]
z-1
y[n]
-a1
-aM
b1
bN
bo
w[n-N]
w[n]
Schritt 0 (zirkulaumlrer) w-Buffer w[n-1] w[n-N] mit Nullen initialisieren
Schritt 1 w[n] = x[n] - a1middotw[n-1] -hellip- aMmiddotw[n-M]
Schritt 2 y[n] = b0middotw[n] +hellip+ bNmiddotw[n-N] ausgeben
Schritt 3 w-Buffer schieben w[n] speichern (besser im Ringbuffer aumlltesten Wert w[n-N] mit w[n] uumlberschreiben)
Schritt 4 neuen Eingangswert x[n+1] lesen und mit Schritt 1 weiterfahren
DSV 1 200501 Rur LTD-Systeme 23
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Transponierte Direktstruktur 2
bo
x[n]
z-1
y[n]
-a1
-aM
b1z-1
w1[n]
wN[n]
y[n] = b0middotx[n] + w1[n-1]
w1[n] = b1middotx[n] - a1middoty[n] + w2[n-1]
wN-1[n] = bN-1middotx[n] - aM-1middoty[n] + wN[n-1]
wN[n] = bNmiddotx[n] - aMmiddoty[n]
bN
DSV 1 200501 Rur LTD-Systeme 24
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
1 1 L L
1 L 1 1 L L
(z z ) (z z ) (z z ) (z z )H(z) K K H (z) H (z)
(z p ) (z p ) (z p ) (z p )
Kaskadierung von Biquads
b10 z-1
y[n]
-a11
-a12
b11
b12
z-1
bL0 z-1
-aL1
-aL2
bL1 z-1
bL2
K1
x[n]
Pol-Nullstellenpaarung (Normalfall)
a) letzter Biquad enthaumllt komplexes Polpaar am naumlchsten beim Einheitskreis und dazu naumlchstgelegenes konjugiert komplexes Nullstellenpaar
b) uumlbrig gebliebenen Pole und Nullstellen werden nach Regel a) kombiniert
DSV 1 200501 Rur LTD-Systeme 25
KL
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Zahlendarstellung
sign-bit
-2W-1 2W-2 2W-3 20signed integer
b0bW-1
2W-1 2W-2 2W-3 20unsigned integer
sign-bit
-20 2-1 2-2 2-(W-1)signed fractional
2-1 2-2 2-3 2-Wunsigned fractional
DSV 1 200501 Rur LTD-Systeme 26
s
b0b31
Exponent 1 le E le 254
b30 b23 b22
Mantisse 1 le M lt 2
hidden 1
s E 127F ( 1) M 2
Festkomma
Gleitkomma (IEEE 754854)
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
H2(z)
H2(z)
H1(z)
H1(z)
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 27
Filterart (elliptisches) TP
Filterordnung N=4
Abtastfrequenz fs=8000 Hz
Eckfrequenz DB fDB=1000 Hz
Eckfrequenz SB fSB=1300 Hz
max Rippel im DB Rp=3 dB
min Rippel im SB Rs=40 dB
Wortbreite W=8 Bit
Filterspezifikation PN-Darstellung UTF
H(z) = k1middotH1(z) middot k2middotH2(z)
k1middotmax(IH1(f)I) lt 1
k1middotk2middot max(IH1(f)middotH2(f)I) lt 1
H1(z) H2(z)
k1 k2
Biquad-Kaskade Skalierung
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
Festkomma-Filter (Beispiel)DSV 1 200501 Rur LTD-Systeme 28
Biquad 1
Biquad 2
Kaskade
DirektformSpec nicht erfuumlllt
Spec erfuumlllt
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 29
FIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Tiefpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=03 Uumlbergangsbereich=003
fir1fir2firlsfirrcos
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 30
FIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
FIR-Hochpass-Filter im Vergleich Filterordnung=32 Grenzfrequenz=07 Uumlbergangsbereich=003
fir1fir2firls
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 31
IIR-Tiefpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Tiefpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=03 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip
DSV 1 200601 Hrt Filterentwurf 32
IIR-Hochpass-Filter im Vergleich
0 01 02 03 04 05 06 07 08 09 1-60
-50
-40
-30
-20
-10
0
10
20
normierte Frequenz
Ampl
itude
ngan
g d
B
IIR-Hochpass-Filter im Vergleich Filterordnung=8 Grenzfrequenz=07 Rippel=3dB Stoppband=40dB
buttercheby1cheby2ellip