Kapitel 8
Syntes av digitala filter
8.1 Digitala filter
I kapitel 7 hade vi sambandet (7.18) f¨or ett linj¨art system, enligt vilket utsignalens z-transform ¨ar insignalens transform multiplicerad med systemets ¨overf¨oringsfunktion
Y (z) = H(z) ˆˆ X(z) (8.1)
H¨ar ¨ar z-transformerna n¨ara besl¨aktade med signalernas spektra eller Fouriertrans- former. Enligt (7.6) har vi sambanden
X(ω) = ˆX(z)¯¯¯
z=ejω och Y (ω) = ˆY (z)¯¯¯
z=ejω (8.2)
Vi f˚ar s˚aledes
Y (ω) = H(ejω)X(ω) (8.3)
Om vi uttrycker de komplexa funktionerna ovan med hj¨alp av magnitud och fas,
X(ω) = |X(ω)|ej arg(X(ω)) (8.4)
H(ejω) = |H(ejω)|ej arg(H(ejω)), (8.5) s˚a ges magnituden och fasen hos utsignalens spektrum av
Y (ω) = |Y (ω)|ej arg(Y (ω)) (8.6)
d¨ar
|Y (ω)| = |H(ejω)||X(ω)| (8.7)
arg(Y (ω)) = arg(X(ω)) + arg(H(ejω)) (8.8) Sambandet (8.3) eller (8.6) visar hur ett linj¨art system H p˚averkar de olika frekven- skomponenterna i insignalen. Systemet H fungerar som ett filter, som f¨orst¨arker eller d¨ampar olika frekvenskomponenter hos insignalen x beroende p˚a beloppet av |H(ejω)|.
Funktionen |H(ejω)| visar hur magnituden av olika frekvenskomponenter p˚averkas av
systemet H. F¨orutom att inverka p˚a magnituden hos de olika frekvenskomponenterna, inf¨or systemet ¨aven en fasf¨orskjutning av storleken arg(H(ejω)). Den komplexa funktio- nen H(ejω) kallas filtrets frekvenssvar. Ett filters frekvenssvar H(ejω) kan ˚ask˚adligg¨oras grafiskt i ett s.k. Bode-diagram, som anger magnituden |H(ejω)| och fasf¨orskjutningen arg(H(ejω)) som funktioner av frekvensen ω (j¨amf¨or kurserna i reglerteknik).
Det ¨ar v¨art att notera det enkla sambandet (8.3) mellan in- och utsignalernas spek- tra. Detta enkla samband, som kan karakteriseras med hj¨alp av en komplex multiplika- tion, utg¨or en av orsakerna till den stora betydelse som frekvensalysen har f˚att inom flera till¨ampningar. En f¨oljd av (8.3) ¨ar att utsignalen fr˚an ett linj¨art tidsinvariant system ej kan inneh˚alla frekvenser som ej finns i insignalen. Endast tidsvarianta sys- tem eller olinj¨ara system kan generera s˚adana frekvenskomponenter i utsignalen som ej finns i insignalen.
Det ¨ar sk¨al att notera n˚agra egenskaper hos frekvenssvaret H(ejω). Fr˚an definitionen av H(z) har vi
H(ejω) =
X∞
n=0
h(n)e−jωn (8.9)
Frekvenssvaret ¨ar allts˚a Fouriertransformen av impulssvaret {h(n)} = {h(0), h(1), h(2), . . .}. D˚a koefficienterna h(n) ¨ar reella f¨oljer
H(e−jω) = H∗(ejω) (8.10)
Fr˚an den komplexa exponentialfunktionens periodicitet f¨oljer dessutom att H(e−jω) = H(ej(2π−ω)). Frekvenssvaret satisfierar s˚aledes symmetriegenskapen
H(e−j(2π−ω)) = H∗(ejω) (8.11)
dvs frekvenssvaret i intervallet [π, 2π] ¨ar komplexa konjugatet av frekvessvaret i inter- vallet [0, π]. Det r¨acker d¨arf¨or med att specificera frekvenssvaret i intervallet [0, π] f¨or att entydigt definiera det f¨or alla frekvenser.
F¨oljande exempel visar, hur ett filter som uppdelar en signal i sina frekvenskompo- nenter kan till¨ampas f¨or signalrekonstruktion.
Exempel 8.1.
I exempel 2.1 betraktades problemet att rekonstruera en signal x fr˚an en observerad signal y = F x + e. Om signalerna ¨ar diskreta ges spektret hos y av
Y (ω) = F (ejω)X(ω) + E(ω)
Antag att x har ett spektrum som ¨ar koncentrerat till ett l˚agfrekvensband |ω| ≤ ω1, medan bruset e best˚ar av h¨oga frekvenser |ω| ≥ ω2 > ω1. Signalen x kunde d˚a rekon- strueras genom att konstruera ett l˚agpassfilter H(z) som satisfierar H(ejω) ≈ 1, |ω| ≤ ω1 och H(ejω) ≈ 0, |ω| ≥ ω2. D˚a f˚as
H(ejω)Y (ejω) = H(ejω)F (ejω)X(ejω) + H(ejω)E(ejω)
≈ F (ejω)X(ejω)
och signalen x kan approximativt rekonstrueras genom att v¨alja xr = F−1Hy, vilket ger
Xr(ejω) = F−1(ejω)H(ejω)Y (ejω) ≈ X(ejω) som ¨ar ekvivalent med xr ≈ x.
Anm¨arkning 8.1.
Frekvenssvaret hos ett linj¨art system f¨or en periodisk signal {x(n)} = {ejωn} best˚aende av en enda frekvens ω kan enkelt h¨arledas i tidsplanet direkt utg˚aende fr˚an ekvationen (7.2). Vi f˚ar
y(n) = h(0)x(n) + h(1)x(n − 1) + h(2)x(n − 2) + · · ·
= h(0)ejωn+ h(1)ejω(n−1)+ h(2)ejω(n−2)+ · · ·
= [h(0) + h(1)e−jω+ h(2)e−2jω+ · · ·]ejωn
= H(ejω)ejωn (8.12)
vilket ¨ar ekvivalent med (8.3) begr¨ansad till en frekvenskomponent.
Vi skall ¨annu verifiera att systemet har den f¨orv¨antade effekten p˚a signaler av formen {sin(ωn)} och {cos(ωn)}. Insignalsekvensen i (8.12) kan skrivas i en reell och imagin¨ar komponent enligt
ejωn = cos(ωn) + j sin(ωn), n = 0, ±1, ±2, . . .
Det f¨oljer att den reella komponenten av utsignalen y(n) ¨ar systemets svar p˚a insignalen {cos(ωn)}, och den imagin¨ara komponenten av utsignalen ¨ar systemets svar f¨or insignalen {sin(ωn)}. De reella och imagin¨ara komponenterna hos utsignalen (8.12) kan best¨ammas genom att introducera magnituden och fasen hos ¨overf¨oringsoperatorn, H(ejω) =
|H(ejω)|ej arg(H(ejω)), varvid (8.12) kan skrivas
y(n) = |H(ejω)|ej arg(H(ejω))ejωn= |H(ejω)|ej(ωn+arg(H(ejω))) (8.13) H¨ar har vi
ej(ωn+arg(H(ejω)))= cos[ωn + arg(H(ejω))] + j sin[ωn + arg(H(ejω))]
Det f¨oljer att systemets transformerar sekvensen {cos(ωn)} enligt
y(n) = |H(ejω)| cos[ωn + arg(H(ejω))] (8.14) och p˚a samma s¨att f˚as att systemets svar f¨or insignalsekvensen {sin(ωn)} ¨ar
y(n) = |H(ejω)| sin[ωn + arg(H(ejω))] (8.15) Systemet f¨orst¨arkning och fasf¨orskjutning av frekvensenkomponenten ω ¨ar s˚aledes i enlighet med det tidigare erh˚allna resultatet.
Problem 8.1.
Betrakta ett diskret system av f¨orsta ordningen,
y(n) − ay(n − 1) = x(n) (8.16)
Best¨am systemets frekvenssvar (f¨orst¨arkning och fasf¨orskjutning) f¨or de numeriska v¨ardena a = 0.6 och a = −0.6. ˚Ask˚adligg¨or sambanden i form av ett Bode-diagram.
8.1.1 Klassificering av digitala filter
Filtren klassificeras enligt sitt impulssvar i filter med ¨andligt impulssvar och filter med o¨andligt impulssvar. Ett filter med ett ¨andligt impulssvar ges av
y(n) =
N −1X
k=0
h(k)x(n − k)
= h(0)x(n) + h(1)x(n − 1) + · · · + h(N − 1)x(n − N + 1) (8.17) En standard f¨orkortning f¨or s˚adana filter ¨ar FIR filter (fr˚an ”Finite Impulse Response”).
Ett filter med ett o¨andligt impulssvar har formen y(n) =
X∞
k=0
h(k)x(n − k) (8.18)
Standardf¨orkortningen f¨or s˚adana filter ¨ar IIR filter (fr˚an ”Infinite Impulse Response”).
I praktiken har IIR filter en ¨andlig ordning, och de kan d¨arf¨or skrivas i formen (j¨amf¨or ekvation (7.28))
y(n) + b1y(n − 1) + · · · + bNy(n − N) = a0x(n) + a1x(n − 1) + · · · + aMx(n − M), n = . . . , −1, 0, 1, . . . (8.19)
8.2 Filterspecifikationer
Filtersyntes g˚ar ut p˚a att konstruera ett filter vars frekvenssvar uppfyller givna speci- fikationer. Typiska specifikationer ¨ar att filtret effektivt skall sp¨arra vissa o¨onskade frekvenskomponenter i insignalen, medan de intressanta frekvenskomponenternas stor- lek och (relativa) fasf¨orskjutning skall vara op˚averkad. Vid filtersyntesen b¨or olika begr¨ansningar beaktas som filtret i praktiken skall uppfylla. En viktig begr¨ansning i flera till¨ampningar ¨ar att filtret b¨or vara kausalt. En annan begr¨ansning ¨ar att filtret skall ha ¨andlig ordning (som i praktiken dock kan vara mycket h¨ogt). S˚asom vi skall se begr¨ansar dessa krav de frekvenssvar som i praktiken kan realiseras.
8.2.1 Ideala filter
F¨or att belysa n˚agra av de begr¨ansningar som uppst˚ar vid filtersyntes skall vi unders¨oka impulssvaret hos ideala filter. Ett idealt l˚agpassfilter HD med bandbredden ωc < π har frekvenssvaret
HD(ejω) =
½1, |ω| ≤ ωc
0, |ω| > ωc (8.20)
Frekvensbandet |ω| ≤ ωc kallas filtrets passband och frekvensbandet |ω| > ωc ¨ar fil- trets sp¨arrband (eng. stopband). Ett idealt bandpassfilter och ett idealt h¨ogpassfilter definieras p˚a analogt s¨att. Observera att filtrets frekvenssvar p.g.a. symmetriegen- skapen (8.11) h¨arvid betraktas i intervallet |ω| ≤ π. Passbandet hos ett digitalt h¨ogpassfilter ¨ar d¨arf¨or koncentrerat till frekvenser kring π.
Eftersom ¨overf¨oringsoperatorn ¨ar impulssvarets Fouriertransform, ges impulssvaret {hD(n)} hos det ideala l˚agpassfiltret genom att ber¨akna inversa Fouriertransformen av HD(ejω). Enligt ekvation (4.24) f˚as
hD(n) = 1 2π
Z π
−πHD(ejω)ejωndω = 1 2π
Z ωc
−ωc
ejωndω (8.21)
vilket ger
hD(0) = ωc
π (8.22)
hD(n) = ωc
π
sin(nωc)
nωc , n = ±1, ±2, . . . (8.23) Det ideala filtret kan ej representeras i form av en rationell ¨overf¨oringsfunktion av
¨andlig ordning. En annan viktig observation ¨ar, att impulssvaret hos det ideala filtret ej f¨orsvinner f¨or negativa n. Det ideala filtret ¨ar icke-kausalt.
I de flesta till¨ampningar kr¨avs att filtret skall vara kausalt. Det visar sig att kravet p˚a kausalitet begr¨ansar de filtersvar som kan erh˚allas. Det finns ett kvanti- tativt matematiskt resultat, det s.k. Paley-Wiener villkoret, enligt vilket det finns ett kausalt filter H(z) som har en given filterf¨orst¨arkning |H(ejω)| = g(ω), om och endast om R−π−π| log g(ω)|dω < ∞. Fr˚an detta villkor f¨oljer att f¨orst¨arkningen hos ett kausalt filter ej kan f¨orsvinna i ett intervall. Det ideala filtret ovan uppfyller inte Paley-Wiener villkoret.
Kravet p˚a kausalitet begr¨ansar ¨aven formen hos filtrets fasf¨orskjutning. Fr˚an Fouri- ertransformens egenskaper i kapitel 4 f¨oljer att H(ejω) ¨ar reellt om och endast om impulssvaret ¨ar symmetriskt; h(−n) = h(n), och imagin¨art om och endast om impulss- varet ¨ar antisymmetriskt; h(−n) = −h(n). F¨or kausala system med h(n) = 0, n < 0, ¨ar impulssvarets symmetriska och antisymmetriska komponenter ekvivalenta, vilket intro- ducerar ett samband mellan de reella och imagin¨ara komponenterna hos frekvenssvaret H(ejω). Fr˚an detta samband f¨oljer att fasf¨orskjutningen hos ett kausalt filter ej kan specificeras oberoende av magnituden.
Av reella filter som kan implementeras i praktiken kr¨avs, att de har ¨andlig ordning och (vanligen) att de ¨ar kausala. Vid syntes av filter f¨ors¨oker man s˚a v¨al som m¨ojligt satisfiera specifikationerna med hj¨alp av reella filter.
8.2.2 Krav p˚a linj¨ar fasf¨orskjutning
F¨orutom filterf¨orst¨arkningen p˚averkar ¨aven filtrets fasf¨orskjutning utsignalen. Om fasf¨orskjutningen i ett filters passband varierar s˚a, att olika frekvenskomponenters faser f¨or¨andras i f¨orh˚allande till varandra, kommer signalen att f¨orvr¨angas trots att f¨orst¨ark- ningen i passbandet vore konstant. Detta ¨ar givetvis oacceptabelt i flera till¨ampningar, bl.a. vid behandling av audiosignaler.
F¨or att se hurudana fasf¨orskjutningar som kan tolereras, betrakta inverkan av ett linj¨art diskret system H(z) p˚a sinusformade signaler av formen
x(t) = sin(ωt) (8.24)
Fr˚an avsnitt 8.1 har vi att systemet H(z) transformerar den periodiska signalen x(t) till en annan periodisk signal xf(t) med samma frekvens men med en annan amplitud och fas,
xf(t) = A(ω) sin(ωt + θ(ω)) (8.25)
d¨ar
A(ω) = |H(ejω)| och θ(ω) = arg(H(ejω)) (8.26) Det visar sig att f¨or att ett filter ej skall inf¨ora fasf¨orvr¨angning b¨or fasf¨orskjutningen θ(ω) ges av det linj¨ara sambandet
θ(ω) = −αω (8.27)
eller
θ(ω) = −αω + π (8.28)
d¨ar α ¨ar konstant. Ett filter vars fasf¨orskjutning satisfierar (8.27) eller (8.28) s¨ages vara faslinj¨art. F¨or sambnadet (8.27) ges den filtrerade signalen av
xf(t) = A(ω) sin(ω(t − α)) (8.29)
Detta inneb¨ar att alla frekvenskomponenter tidsf¨ordr¨ojs med tiden α, och fasf¨orskjut- ningen f¨orsorsakar d¨arf¨or ingen f¨orvr¨angning av en signal med flera frekvenskomponen- ter. F¨or sambandet (8.28) blir den filtrerade signalen
xf(t) = A(ω) sin(ω(t − α) + π) = −A(ω) sin(ω(t − α)) (8.30) F¨orutom tidsf¨ordr¨ojningen tillkommer i detta fall ett teckenbyte p.g.a. fasf¨orskjutningen π. Det ¨ar l¨att att inse att ett filter b¨or vara faslinj¨art f¨or att det ej skall inf¨ora fasf¨orvr¨angning p.g.a. att olika frekvenskomponenters faser p˚averkas p˚a olika s¨att
I vissa till¨ampningar anv¨ands s.k. generaliserat faslinj¨ara filter. Fasf¨orskjutningen hos generaliserat faslinj¨ara filter satisfierar
θ(ω) = β − αω (8.31)
d¨ar α och β ¨ar konstanter. Den filtrerade signalen ges d˚a av
xf(t) = A(ω) sin(ω(t − α) + β) (8.32) dvs alla frekvenskomponenter tidsf¨ordr¨ojs med tiden α och fasf¨orskjuts med vinkeln β. Faslinj¨ara filter ¨ar en delm¨angd av generaliserat faslinj¨ara filter. Ett generaliserat faslinj¨art filter f¨ororsakar fasf¨orvr¨angning om β 6= 0 eller π.
Vid studiet av ett filters fasf¨orskjutning brukar man inf¨ora den s.k. fasl¨optiden eller fasf¨ordr¨ojningen Tp (eng. phase delay) och den s.k. gruppl¨optiden eller gruppf¨ordr¨oj- ningen Tg (eng. group delay):
Tp = −θ(ω)/ω (8.33)
Tg = −dθ(ω)/dω (8.34)
Fasl¨optiden Tp ¨ar den tidsf¨ordr¨ojning som frekvenskomponenten ω f˚ar p.g.a. fasf¨or- skjutningen i filtret, ty sin(ωt + θ(ω)) = sin(ω(t − Tp)). Gruppl¨optiden Tg ¨ar en vanligt anv¨and storhet vid karakterisering av linj¨ara filter, som uppst˚ar vid analysen av ett filters inverkan p˚a en amplitudmodulerad signal. Vi ser att ett filter ¨ar faslinj¨art om det har en konstant fasf¨ordr¨ojning och generaliserat faslinj¨art om och endast om det har en konstant gruppl¨optid.
F¨oljande exempel demonstrerar betydelsen av linj¨ar fasf¨orskjutning vid filtrering.
−1
−0.5 0 0.5 1 s1
−1
−0.5 0 0.5 1 s2
−2
−1 0 1 2
s
Figur 8.1: Signalkomponenterna s1 och s2 samt signalen s i exempel 8.2.
Exempel 8.2.
Betrakta en signal s som best˚ar av tv˚a komponenter enligt s(n) = s1(n) + s2(n)
d¨ar s1 och s2 ¨ar l˚agfrekventa sinusformade komponenter, s1(n) = sin(ω1n) s2(n) = sin(ω2n)
Komponenterna s1 och s2 samt signalen s visas i figur 8.1. L˚at signalen s p˚averkas av en st¨orning e s˚a att vi f˚ar signalen
x(n) = s(n) + e(n)
−2
−1 0 1 2
s
−1
−0.5 0 0.5 1
e
−2 0 2 x
Figur 8.2: Den st¨orningsfria signalen s, st¨orningen e, samt signalen x i exempel 8.2.
d¨ar e(n) ¨ar en h¨ogfrekvent sinusformad signal, e(n) = sin(ωen)
med ωe> ω1 och ωe> ω2. Signalerna s, e och x visas i figur 8.2.
Den l˚agfrekventa st¨orningsfria signalen s kan best¨ammas ur x genom l˚agpassfiltrering med ett filter H(z) som har frekvenskomponenterna ω1 och ω2 i passbandet och som sp¨arrar frekvensen ωe, dvs |H(ejω1)| ≈ 1 och |H(ejω2)| ≈ 1, samt |H(ejωe)| ≈ 0. Den filtrerade signalen y ges d˚a av
y(n) ≈ y1(n) + y2(n) d¨ar
y1(n) = sin³ω1n + arg(H(ejω1))´ y2(n) = sin³ω2n + arg(H(ejω2))´
Figur 8.3 visar signalkomponenterna s1, s2 och y1, s2 samt den filtrerade signalen y(n) f¨or tv˚a olika l˚agpassfilter. Till v¨anster i figuren visas resultatet med ett filter som fasf¨orskjuter de l˚agfrekventa komponenterna p˚a olika s¨att, varf¨or den filtrerade signalen y blir f¨orvr¨angd och signalen s rekonstrueras ej korrekt. Till h¨oger visas resultatet med ett faslinj¨art filter. I detta fall ¨ar fasf¨orskjutningen s˚adan att den motsvarar samma
tidsf¨orskjutning f¨or alla frekvenskomponenter i passbandet, och den filtrerade signalen y ¨ar d¨arf¨or endast en tidsf¨orskuten version av signalen s.
−1
−0.5 0 0.5 1
s1,y 1
−1
−0.5 0 0.5 1
s2,y 2
−2
−1 0 1 2
s,y
−1
−0.5 0 0.5 1
s1,y 1
−1
−0.5 0 0.5 1
s2,y 2
−2
−1 0 1 2
s,y
Figur 8.3: Signaler i exempel 8.2. ¨Overst: signalkomponenten s1(heldragen) och motsvarande filtrerade signal y1 (streckad). I mitten: signalkomponenten s2 (heldragen) och motsvarande filtrerade signal y2 (streckad). Nederst: den st¨orningsfria signalen s (heldragen) och den l˚agpassfiltrerade signalen y (streckad). Till v¨anster visas resultatet som f˚as med ett l˚agpassfilter med olinj¨ar fasf¨orskjutning, och till h¨oger resultatet som f˚as med ett faslinj¨art l˚agpassfilter.
8.2.3 Reella l˚agpass, bandpass- och h¨ogpassfilter
Reella filter, som ¨ar kausala och har en ¨andlig ordning, kan endast approximativt uppfylla specifikationerna hos ideala l˚agpass-, bandpass- och h¨ogpassfilter. F¨or reella filter anges specifikationerna d¨arf¨or med hj¨alp av toleranser, j¨amf¨or figur 8.4. F¨or ett l˚agpassfilter ¨ar specifikationerna av formen
1 − δp ≤ |H(ejω)| ≤ 1 + δp, |ω| ≤ ωp (8.35)
|H(ejω)| ≤ δs, |ω| ≥ ωs (8.36)
H¨ar ¨ar
- |ω| ≤ ωp passbandet, - |ω| ≥ ωs sp¨arrbandet, och - |ω| ∈ (ωp, ωs) ¨overg˚angsbandet.
Talet δp anger toleransen i passbandet, dvs den st¨orsta till˚atna avvikelsen fr˚an det konstanta v¨ardet ett hos filtrets f¨orst¨arkning i passbandet. Talet δs ¨ar toleransen i sp¨arrbandet, dvs den maximala till˚atna f¨orst¨arkningen i sp¨arrbandet. Eftersom f¨orst¨arkningen hos reella filter inte kan f¨or¨andras diskontinuerligt som funktion av frekvensen, finns mellan passband och sp¨arrband ett ¨overg˚angsband. Ju sn¨avare toler- anser och smalare ¨overg˚angsbandet ¨ar, desto h¨ogre filterordning fordras f¨or att satisfiera specifikationerna.
I st¨allet f¨or vinkelfrekvenser anges frekvensspecifikationerna ofta i form av frekvenser fp (= ωp/(2π)) respektive fs (= ωs/(2π)) och uppfattas som normerade i f¨orh˚allande till samplingsfrekvensen. Om frekvenserna anges i Hz eller kHz b¨or man observera att beakta samplingsfrekvensen fs vid filtersyntesen, s˚a att frekvensen f motsvarar filtersvaret H(ejω) vid ω = 2πf /fs. Vanligt ¨ar ocks˚a att toleranserna anges i den logaritmiska enheten decibel. Den st¨orsta avvikelsen Ap i passbandet och den minsta d¨ampningen As i sp¨arrbandet angivna i decibel ¨ar s˚aledes
Ap = 20 log(1 + δp) (8.37)
As = −20 log(δs) (8.38)
Observera att f¨or sm˚a δp g¨aller med god noggrannhet approximationen Ap = 20 log(1 + δp) = 20 ln(1 + δp)/ ln 10 ≈ 8.7δp
Bandpassfilter och h¨ogpassfilter definieras p˚a analogt s¨att. F¨or bandpassfilter best˚ar passbandet av ett frekvensband [ω1, ω2]. F¨or h¨ogpassfilter med bandbredden ωp ¨ar passbandet bel¨aget i ett h¨ogfrekvent band [π − ωp, π + ωp].
8.2.4 Frekvenstransformationer
Ett bandpass- och h¨ogpassfilter skiljer sig fr˚an ett l˚agpassfilter endast i avseende ˚a passbandets och sp¨arrbandets l¨agen. Det ¨ar d¨arf¨or m¨ojligt att ur ett l˚agpassfilter konstruera motsvarande bandpass- eller h¨ogpassfilter genom en frekvenstransformation som f¨orskjuter passbandet till det ¨onskade frekvensbandet. Denna metod ¨ar mycket anv¨andbar, eftersom man d˚a kan utnyttja standardmetoder f¨or syntes av l˚agpassfilter
¨aven f¨or ber¨akning av andra filtertyper.
Vid frekvenstransformation av ett filter substitueras variabeln z−1 i ¨overf¨orings- funktionen med en rationell funktion g(z−1), s˚a att det frekvenstransformerade filtret definieras av
Hf(z) = H(z)¯¯¯
z−1=g(z−1) (8.39)
F¨or att filtret Hf(z) skall vara v¨aldefinierat kr¨avs att avbildningen z−1 → g(z−1) bevarar filtrets stabilitet, samt att punkter p˚a enhetscirkeln ejω, som ju definierar
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0
0.2 0.4 0.6 0.8 1 1.2
Figur 8.4: Specifikationer f¨or f¨orst¨arkningen hos ett l˚agpassfilter, samt f¨orst¨arkningen
|H(ejω)| hos ett reellt filter som funktion av normerad frekvens ω/π.
frekvenssvaret, avbildas till andra punkter p˚a enhetscirkel i enlighet med den ¨onskade frekvenstransformationen. Dylika frekvenstransformationer finns utvecklade, se t.ex. tabell 8.13 i Proakis och Manolakis (1996).
En speciellt enkel formel f˚as f¨or tranformationen av ett l˚agpassfilter HLP(z) till ett h¨ogpassfilter HHP(z) med samma bandbredd. Transformationen best˚ar d˚a helt enkelt av en f¨orskjutning av frekvenserna enligt ω → ω + π, s˚a att l˚agpassbandet lokaliserat runt frekvensen noll f¨orskjuts till ett h¨ogpassband lokaliserat runt frekvensen π. H¨ogpassfiltrets frekvenssvar definieras d˚a av
HHP(ejω) = HLP(ej(ω+π)) = HLP(−ejω) (8.40) och dess ¨overf¨oringsfunktion ¨ar s˚aledes
HHP(z) = HLP(−z) (8.41)
Eftersom
HLP(−z) =
X∞
k=0
(−1)khLP(k)z−k (8.42)
f¨oljer att h¨ogpassfiltrets impulssvar hHP(k) ges av
hHP(k) = (−1)khLP(k) (8.43)
Problem 8.2.
Betrakta de tv˚a filtren som studerades i problem 8.1 (a = 0.6 och a = −0.6). Visa att de ¨ar relaterade enligt (8.41) och (8.43), och att deras frekvenssvar ¨ar f¨orskjutna i f¨orh˚allnade till varandra med π.
8.3 Syntes av filter med ¨ andligt impulssvar
I detta avsnitt diskuteras syntes av filter med ¨andligt impulssvar (FIR filter). S˚adana filter beskrivs av
y(n) = h(0)x(n) + h(1)x(n − 1) + · · · + h(N − 1)x(n − N + 1) (8.44) och deras ¨overf¨oringsfunktion har formen
H(z) = h(0) + h(1)z−1+ · · · + h(N − 1)z−N +1 (8.45) Filter av denna typ har en del f¨ordelar som har gjort dem mycket popul¨ara inom signalbehandlingstill¨ampningar. Syntesen av FIR filter ¨ar i flera avseenden enklare ¨an syntesen av IIR filter. Deras stabilitet ¨ar i motsats till IIR filter garanterad, ty kriteriet (7.37) ¨ar automatiskt uppfyllt. Eventuell instabilitet beh¨over d¨arf¨or inte kontrolleras eller beaktas i samband med syntesen. Dessutom har de den trevliga egenskapen att det ¨ar enkelt att konstruera FIR filter med exakt linj¨ar fasf¨orskjutning, vilket ¨ar viktigt i flera till¨ampningar (j¨amf¨or avsnitt 8.2.2). D¨aremot finns det ej IIR filter som beskrivs av en rationell ¨overf¨oringsfunktion som skulle ha en exakt linj¨ar fasf¨orskjutning.
Vid syntesen av FIR filter best¨ams filterparametrarna s˚a att det ¨onskade frekvens- svaret approximeras m¨ojligast v¨al. De viktigaste metoderna f¨or syntes av FIR filter baserar sig dels p˚a de ideala filterformlerna i kombination med s.k. f¨onsterfunktioner eller s.k. frekvenssampling, dels p˚a direkt optimering av filterparametrarna. Vi kommer att behandla dessa metoder nedan.
8.3.1 Faslinj¨ara FIR filter
S˚asom tidigare diskuterats ¨ar det i flera till¨ampningar viktigt att filtrets fasf¨orskjutning
¨ar linj¨ar i passbandet, dvs θ(ω) = arg(H(ejω)) = β − αω. En trevlig egenskap hos filter med ¨andligt impulssvar ¨ar att de enkelt kan konstrueras s˚a att fasf¨orskjutningen ¨ar linj¨ar. F¨or att se hur detta kan ˚astadkommas, betrakta FIR filtret i ekvation (8.45).
Filtrets frekvenssvar ¨ar H(ejω) =
N −1X
k=0
h(k)e−jωk
= h(0) + h(1)e−jω+ h(2)e−j2ω+ · · · + h(N − 1)e−j(N −1)ω (8.46) L˚at N vara udda, och antag att impulssvaret v¨aljs s˚a att
h(k) = h(N − 1 − k), k = 0, 1, . . . , (N − 1)/2 (8.47) Ett s˚adant impulssvar s¨ages vara symmetriskt. Betrakta f¨or enkelhetens skull fallet N = 5. D˚a implicerar symmetrin h(0) = h(4) och h(1) = h(3). Frekvenssvaret ges av
H(ejω) = h(0) + h(1)e−jω+ h(2)e−j2ω+ h(1)e−j3ω+ h(0)e−j4ω
= e−j2ωhh(0)
µ
ej2ω+ e−j2ω
¶
+ h(1)
µ
ejω+ e−jω
¶
+ h(2)i
= e−j2ωh2h(0) cos(2ω) + 2h(1) cos(ω) + h(2)i (8.48)
= e−j2ωHr(ω) (8.49)
H¨ar ¨ar
Hr(ω) = 2h(0) cos(2ω) + 2h(1) cos(ω) + h(2) (8.50) reell. Vi kan skriva sambandet ovan i formen
H(ejω) = |Hr(ω)|e−j2ω, om Hr(ω) > 0 (8.51) och, eftersom ejπ = −1,
H(ejω) = −|Hr(ω)|e−j2ω = |Hr(ω)|e−j(2ω−π), om Hr(ω) < 0 (8.52) Det f¨oljer att filtrets fasf¨orskjutning ¨ar linj¨ar, om Hr(ω) ej byter tecken. Det ¨ar fallet endast om H(z) har nollst¨allen p˚a enhetscirkeln z = ejω.
F¨or j¨amna N f˚as ett analogt resultat. Betrakta t.ex. fallet N = 4. D˚a har vi h(0) = h(3) och h(1) = h(2), och impulssvaret blir
H(ejω) = h(0) + h(1)e−jω+ h(1)e−j2ω + h(0)e−j3ω
= e−j3ω/2hh(0)
µ
ej3ω/2+ e−j3ω/2
¶
+ h(1)
µ
ejω/2+ e−jω/2¶i
= e−j3ω/2h2h(0) cos(3ω/2) + 2h(1) cos(ω/2)] (8.53)
= e−j3ω/2Hr(ω) (8.54)
och fasf¨orskjutningens linj¨aritet f¨oljer p˚a samma s¨att som ovan.
Resultatet kan generaliseras till det allm¨anna fallet, och kan sammanfattas enligt f¨oljande.
Frekvenssvaret hos symmetriska FIR filter.
Betrakta ett symmetriskt FIR filter av l¨angden N, f¨or vilket impulssvaret satisfierar h(k) = h(N − 1 − k). Dess frekvenssvar ¨ar
H(ejω) = e−j(N −1)ω/2Hr(ω) (8.55) d¨ar
Hr(ω) = h(N − 1 2 ) + 2
(N −3)/2X
k=0
h(k) coshω
µN − 1
2 − k¶ i, N udda (8.56) Hr(ω) = 2
(N/2)−1X
k=0
h(k) coshω
µN − 1
2 − k¶ i, N j¨amn (8.57)
Faslinj¨ara FIR filter kan ocks˚a ˚astadkommas genom att v¨alja impulssvaret antisym- metriskt, varvid
h(k) = −h(N − 1 − k), k = 0, 1, . . . , (N − 1)/2 (8.58) F¨or k = (N − 1)/2 implicerar villkoret h(N −12 ) = 0. Frekvenssvaret f¨or detta fall kan best¨ammas i analogi med ovan. P˚a grund av den antisymmetiska egenskapen kombineras de komplexa exponentialfunktionerna i frekvenssvaret i detta fall till sinus- funktioner. Vi kan sammanfatta resultatet enligt f¨oljande.
Frekvenssvaret hos antisymmetriska FIR filter.
Betrakta ett antisymmetriskt FIR filter av l¨angden N, f¨or vilket impulssvaret satisfierar h(k) = −h(N − 1 − k). Dess frekvenssvar ¨ar
H(ejω) = e−j[(N −1)ω/2−π/2]Hr(ω) (8.59) d¨ar
Hr(ω) = 2
(N −3)/2X
k=0
h(k) sinhω
µN − 1
2 − k¶ i, N udda (8.60) Hr(ω) = 2
(N/2)−1X
k=0
h(k) sinhω
µN − 1
2 − k¶ i, N j¨amn (8.61)
Anm¨arkning 8.2.
Vi har ovan specificerat FIR filtrets l¨angd N, som antalet impulssvarskoefficienter h(0), h(1), . . ., h(N − 1). Denna konvention anv¨ands bl.a. i b¨ockerna av Ifeachor och Jervis (1993) och Proakis och Manolakis (1996). En annan vanlig konvention ¨ar att specificera filtrets ordning M, som den h¨ogsta potens z−M i ¨overf¨oringsfunktionen.
Ett filter vars l¨angd ¨ar N har s˚aledes ordningen M = N − 1. Vid diskussion av symmetriska och antisymmetriska FIR filter b¨or man observera att filter med ett j¨amnt antal koefficienter N har en udda ordning M och vice versa.
Anm¨arkning 8.3.
De ovan beskrivna faslinj¨ara FIR filtren ¨ar av fyra typer beroende p˚a om N ¨ar udda eller j¨amnt och om filtret ¨ar symmetriskt eller antisymmetriskt. Enligt en standard- klassificering uppdelas de faslinj¨ara FIR filtren i typerna I–IV enligt f¨oljande schema:
Typ I: Symmetriskt med N udda (M j¨amnt) Typ II: Symmetriskt med N j¨amnt (M udda) Typ III: Antisymmetriskt med N udda (M j¨amnt) Typ IV: Antisymmetriskt med N j¨amnt (M udda)
Vid syntes av FIR filter best¨ams filterkoefficienterna h(k), k = 0, 1, . . . , N − 1, s˚a att frekvenssvaret uppfyller specifikationerna. Villkoren f¨or faslinj¨aritet ¨ar h¨arvid enkla att beakta. Vid val av filtertyp b¨or man observera att de olika filtertyperna har olika egenskaper. Speciellt g¨aller att de symmetriska och antisymmetriska filtren har olikheter som g¨or dem l¨ampade f¨or olika sorters till¨ampningar. Vi har t.ex. att f¨or de antisymmetriska filtren g¨aller Hr(0) = 0, vilket g¨or dem ol¨ampliga vid syntes av l˚agpassfilter. F¨or det antisymmetriska filtret med udda N (filtertyp III) g¨aller dessutom Hr(π) = 0, varur f¨oljer att denna filtertyp ¨ar ett bandpassfilter och ¨ar ej l¨ampad f¨or syntes av l˚agpass- eller h¨ogpassfilter.
Exempel 8.3.
En enkel l˚agpassfiltreringsmetod best˚ar av att bilda det aritmetiska medelv¨ardet av ett antal signalv¨arden,
y(n) = 1 N
N −1X
k=0
x(n − k) (8.62)
Filtret ¨ar tydligen ett faslinj¨art FIR filter av typ I eller II, beroende p˚a om N ¨ar udda eller j¨amn. Filtrets ¨overf¨oringsfunktion ¨ar
H(z) = 1 N
N −1X
k=0
z−k = 1 N
1 − z−N
1 − z−1 (8.63)
Overf¨oringsfunktionen nollst¨allen best˚¨ ar av l¨osningarna till zN = 1 med undantag av z = 1, som f¨orkortas av n¨amnaren, dvs punkterna
zk = ej2πk/N, k = 1, 2, . . . , N − 1 Alla nollst¨allen befinner sig s˚aledes p˚a enhetscirkeln.
Problem 8.3.
Best¨am f¨orst¨arkningen och fasf¨orskjutningen som funktion av frekvensen f¨or filtret (8.62) f¨or fallet N = 3.
8.3.2 Syntes baserad p˚a f¨onsterfunktioner
I detta avsnitt diskuteras en standardmetod f¨or syntes av faslinj¨ara FIR filter, som baserar sig p˚a trunkering av impulssvaret hos ett idealt filter. F¨or att undvika en f¨ors¨amring av filtrets frekvenssvar som en direkt trunkeringen av det optimala im- pulssvaret medf¨or, utnyttjas speciella viktfunktioner.
Impulssvaret hos ett idealt l˚agpassfilter med bandbredden fc = ωc/(2π) ges av (8.22),
hD(0) = ωc
π = 2fc (8.64)
hD(n) = ωc π
sin(nωc) nωc
= 2fc sin(nωc) nωc
, n 6= 0 (8.65)
P˚a samma s¨att kan man best¨amma impulssvaret hos ideala h¨ogpass, bandpass- och bandsp¨arrfilter, se tabell 6.2 i Ifeachor och Jervis (1993) f¨or en sammanfattning. Som vi tidigare s˚ag kan de ideala filtren ej realiseras med system av ¨andlig ordning.
Ett s¨att att approximera det ideala filtret ¨ar att trunkera dess Fourierserieutveck- ling. Enligt tidigare har vi att det ideala filtrets frekvenssvar ¨ar impulssvarets Fouri- ertransform,
HD(ejω) =
X∞
n=−∞
hD(n)e−jωn (8.66)
Genom att trunkera summan f˚as en approximation enligt HM(ejω) =
XM
n=−M
hD(n)e−jωn (8.67)
som motsvaras av ¨overf¨oringsfunktionen
HM(z) = hD(−M)zM + hD(−M + 1)zM −1+ · · · + hD(M)z−M (8.68) Detta filter ¨ar fortfarande icke-kausalt, men genom att introducera en extra tidsf¨or- dr¨ojning p˚a M tidsenheter, f˚as det kausala filtret
HM,kausal(z) = z−MHM(z)
= hD(−M) + hD(−M + 1)z−1+ · · · + hD(M)z−2M (8.69) Det ideala filtrets frekvenssvar ¨ar en pulsfunktion. Trunkeringen enligt (8.67) ¨ar d¨arf¨or j¨amf¨orbar med approximationen i ekvation (3.48) av en pulsfunktion med en trunkerad Fourierserieutveckling. Vi s˚ag i kapitel 3 att en dylik trunkerad sum- mautveckling av en pulsfunktion ger ¨overskjutningar vid diskontinuitetspunkterna, j¨amf¨or anm¨arkning 3.3 och Gibbs fenomen. Detta illustreras i figur 8.5, som visar f¨orst¨arkningen hos filtret (8.68) (eller (8.69)) f¨or olika M. F¨or att f˚a en b¨attre ap- proximation av det ideala filtret b¨or det trunkerade filtret i (8.69) d¨arf¨or i praktiken modifieras.
En praktisk procedur f¨or att f¨orb¨attra den trunkerade utvecklingen ¨ar att inf¨ora en funktion w(n) och ers¨atta approximationen (8.67) med
H(ejω) =
XM
n=−M
w(n)hD(n)e−jωn (8.70)
Funktionen w(n) kallas f¨onsterfunktion (eng. window function). Observera att den trunkerade summan (8.67) ¨ar ett specialfall av (8.70) med den rektangul¨ara f¨onsterfunktionen
w(n) =
½1, |n| ≤ M
0, |n| > M (8.71)
F¨or att se hur f¨onsterfunktionen p˚averkar frekvenssvaret H(ejω) betraktar vi oper- ationen i h¨ogra ledet av (8.70) i frekvensplanet. Vi introducerar Fouriertransformen
−1 0 1 0
1
−1 0 1
0 1
−1 0 1
0 1
Figur 8.5: F¨orst¨arkningen |HM(ejω)| hos trunkerade filter av formen (8.68) (eller (8.69)) f¨or M = 6, 12 och 25. Det ideala l˚agpassfiltrets bandbredd ¨ar 2 × 0.4π. Frekvensen ¨ar angiven som en normerad frekvens ω/π.
av f¨onsterfunktionen w(n),
W (ω) =
XM
n=−M
w(n)e−jωn (8.72)
Enligt (8.70) ¨ar H(ejω) Fouriertransformen av sekvensen w(n)hD(n). Precis som diskret faltning i tidsplanet motsvarades av multiplikation i frekvensplanet, s˚a kan man visa att multiplikationen w(n)hD(n) i tidsplanet motsvaras av en kontinuerlig faltningsintegral i frekvensplanet. Fouriertransformen av produkten w(n)hD(n) kan s˚aledes uttryckas som faltningen av Fouriertransformerna HD(ejω) och W (ω) av sekvenserna {hD(n)}
respektive {w(n)}, och det f¨oljer att H(ejω) ges av H(ejω) =
Z π
−πHD(ejθ)W (ω − θ)dθ (8.73) Hur v¨al (8.73) approximerar det ideala frekvenssvaret HD(ejω) beror av formen hos f¨onsterfunktionen W (ω). Ur (8.73) f¨oljer, att ju b¨attre W (ω) ¨ar koncentrerad till frekvensen ω = 0, desto b¨attre approximerar (8.73) det ideala frekvenssvaret. Exakt likhet kan emellertid endast f˚as om f¨onsterfunktionen v¨aljs o¨andligt bred (M → ∞).
Problemet ¨ar d¨arf¨or att v¨alja en f¨onsterfunktion av given l¨angd M, s˚a att m¨ojligast god approximation f˚as.
F¨or att unders¨oka formen hos f¨onsterfunktioner av ¨andlig l¨angd, betrakta den rek- tangul¨ara f¨onsterfunktionen i ekvation (8.71). Dess Fouriertransform ¨ar
W (ω) =
XM
n=−M
e−jωn = sin(ω(2M + 1)/2)
sin(ω/2) (8.74)
Dess absoluta belopp,
|W (ω)| = | sin(ω(2M + 1)/2)|
| sin(ω/2)| , |ω| ≤ π (8.75)
har en karakteristisk form best˚aende av en s.k. huvudlob (eng. main lobe) vid ω = 0 omgiven av ett antal sidlober (eng. side lobes), se figur 8.6. Det visar sig att andra f¨onsterfunktioner har en liknande form, och genom l¨ampligt val av f¨onsterfunktion kan man p˚averka huvudlobens bredd och sidlobernas amplitud. Dessa p˚averkar filterap- proximationen, och f¨or god approximation skall huvudloben vara m¨ojligast smal och sidlobernas amplitud m¨ojligast liten. F¨or en f¨onsterfunktion av given l¨angd kan dessa storheter ej minimeras oberoende av varandra. Vi har f¨oljande generella egenskaper:
• D˚a f¨onstrets l¨angd N = 2M +1 ¨okas, minskar huvudlobens bredd, vilket resulterar i ett smalare ¨overg˚angsband mellan passband och sp¨arrband. ¨Overg˚angsbandets bredd ∆f ges approximativt av en formel av typen
∆f = c/N (8.76)
d¨ar c ¨ar en konstant som beror av f¨onsterfunktionens form.
• Den dominerande sidlobens amplitud beror fr¨amst av f¨onsterfunktionens form, och ¨ar ej starkt beroende av f¨onsterl¨angden.
• En f¨onsterfunktion som reducerar sidlobens amplitud resulterar i allm¨anhet i en bredare huvudlob.
De vanligaste f¨onsterfunktionerna ¨ar
• Hanningf¨onstret, med f¨onsterfunktionen
w(n) = 0.5 + 0.5 cos(2πn/N), |n| ≤ (N − 1)/2 (8.77)
0 1 0
1
Figur 8.6: F¨orst¨arkningen |W (ω)| hos en rektangul¨ar f¨onsterfunktion (M = 5) som funktion av normerad frekvens ω/π.
• Hammingf¨onstret, med f¨onsterfunktionen
w(n) = 0.54 + 0.46 cos(2πn/N), |n| ≤ (N − 1)/2 (8.78)
• Blackmanf¨onstret, med f¨onsterfunktionen
w(n) = 0.42 + 0.5 cos[2πn/(N − 1)] + 0.08 cos[4πn/(N − 1)],
|n| ≤ (N − 1)/2 (8.79)
och
• Kaiserf¨onstret, med f¨onsterfunktionen
w(n) = I0³β(1 − [2n/(N − 1)]2)1/2´
I0(β) , |n| ≤ (N − 1)/2 (8.80) d¨ar β ¨ar en positiv parameter och funktionen I0(x) ¨ar en modifierad Bessel- funktion av nollte ordning, som ges av serieutvecklingen
I0(x) = 1 +
X∞
k=1
"
(x/2)k k!
#2
(8.81)
De olika f¨onsterfunktionernas viktigaste egenskaper kan sammanfattas i ¨overg˚angs- bandets bredd ∆f , den maximala avvikelsen i passbandet, f¨orh˚allandet mellan huvud- lobens och den dominerande sidlobens amplituder, samt d¨ampningen i sp¨arrbandet. Se tabell 8.1.
F¨onster- Overg˚¨ angsbandets Maximal avvikelse F¨orh˚allande D¨ampning i F¨onster- funktionens bredd (Hz) i passbandet mellan huvudlob sp¨arrbandet funktion
namm (normerad) (dB) och sidlob (dB) (dB) w(n)
Rektangul¨ar 0.9/N 0.7416 13 21 (8.71)
Hanning 3.1/N 0.0546 31 44 (8.77)
Hamming 3.3/N 0.0194 41 53 (8.78)
Blackman 5.5/N 0.0017 57 74 (8.79)
Kaiser 2.93/N (β = 4.54) 0.0274 50 (8.80)
4.32/N (β = 6.76) 0.00275 70
5.71/N (β = 8.96) 0.000275 90
Tabell 8.1: N˚agra viktiga egenskaper hos ett antal vanliga f¨onsterfunktioner. I tabellen ges Kaiserf¨onster som ger d¨ampningen 50, 70 och 90dB i sp¨arrbandet.
Hanning-, Hamming- och Blackmanf¨onstren har fixerade egenskaper som beror en- bart av N och som ej kan p˚averkas. Kaiserf¨onstret har d¨aremot en parameter β, med vilken filtrets egenskaper kan p˚averkas f¨or att uppn˚a ¨onskad kompromiss mellan huvudlobens bredd och sidlobens amplitud. F¨or β = 0 reduceras Kaiserf¨onstret till ett rektangul¨art f¨onster, medan t.ex. v¨ardet β = 5.44 ger ett f¨onster som ¨ar mycket likt Hammingf¨onstret. Kaiserf¨onstret ¨ar ¨aven n¨ara optimal i den meningen att f¨or en given amplitud hos sidloben har ett Kaiserf¨onster den mesta energin koncentrerad i huvudloben.
Filtersyntes med hj¨alp av f¨onsterfunktioner best˚ar av f¨oljande faser:
• Specificering av det ideala frekvanssvaret HD(ejω) och dess impulssvar hD(n).
• Val av en l¨amplig f¨onsterfunktion och f¨onsterl¨angd N s˚a att f¨orst¨arkningen i passband och sp¨arrband, samt ¨overg˚angsbandets bredd ∆f uppfyller givna speci- fikationer.
• Best¨amning av filterapproximationen (8.70),
H(z) =
XM
n=−M
h(n)z−n (8.82)
d¨ar
h(n) = w(n)hD(n), n = −M, −M + 1, . . . , M = (N − 1)/2 (8.83)
• Best¨amning av det s¨okta kausala FIR filtret genom introduktion av en tidsf¨or- dr¨ojning motsvarande faktorn z−M,
Hkausal(z) = z−MH(z) (8.84)
Observera att alla de ovan beskrivna f¨onsterfunktionerna uppfyller symmetriegen- skapen w(−n) = w(n). D˚a det ideala filtrets impulssvar hD(n) normalt har en motsvarande symmetriegenskap, f¨oljer att h(n) i (8.83) satisfierar
h(−n) = h(n), n = 0, 1, . . . , M (8.85) Det f¨oljer att det kausala FIR filtret (8.84) ¨ar symmetriskt, och s˚aledes ett faslinj¨art filter, j¨amf¨or avsnitt 8.3.1.
Syntes av FIR filter som baserar sig p˚a det ideala frekvenssvaret och f¨onsterfunktion- er ¨ar en enkel och i praktiken mycket anv¨andbar metod. En begr¨ansning hos metoden
¨ar att det kr¨aver ber¨akning av det ideala filtrets impulssvar, vilket kan vara besv¨arligt i vissa till¨ampningar d¨ar det ideala frekvenssvaret HD(ejω) ¨ar s˚adant att impulssvaret hD(n) ej kan erh˚allas analytiskt.
Exempel 8.4.
Betrakta problemet att konstruera ett l˚agpass FIR filter som satisfierar f¨oljande specifikationer:
- passbandets bredd: 1.5kHz - ¨overg˚angsbandets bredd: 0.5 kHz - d¨ampning i sp¨arrbandet: > 50 dB, d˚a samplingsfrekvensen ¨ar 8 kHz.
Det ideala l˚agpassfiltret har impulssvaret (8.22), hD(0) = 2fc
hD(n) = 2fc sin(nωc)
nωc , n 6= 0
Enligt tabell 6.3 i Ifeachor och Jervis (1993) uppfyller Hamming-, Blackman- och Kaiserf¨onstren (men inte det rektangul¨ara f¨onstret eller Hanningf¨onstret) kravet p˚a d¨ampning i sp¨arrbandet. Vi v¨aljer i detta exempel ett Hammingf¨onster.
Med samplingsfrekvensen fs = 8 kHz motsvarar den specificerade bredden 0.5 kHz f¨or ¨overg˚angsbandet (normerad till samplingsperioden Ts = 1) ∆f = 0.5/8 = 0.0625.
Overg˚¨ angsbandets bredd som en funktion av filterl¨angden ges av (8.76). Enligt tabellen
¨ar f¨or ett Hammingf¨onster c = 3.3, och det f¨oljer att filtrets l¨angd b¨or vara minst N = 3.3/∆fc= 3.3/0.0625 = 52.8. Vi v¨aljer d¨arf¨or N = 53. D˚a ¨ar M = (N −1)/2 = 26 och filterkoefficienterna ges av (8.83),
h(n) = w(n)hD(n), |n| ≤ 26
d¨ar hD(n) ¨ar givet ovan och w(n) ¨ar Hammingf¨onsterfunktionen w(n) = 0.54 + 0.46 cos(2πn/N), |n| ≤ 26
F¨or att f˚a god approximation i det specificerade passbandet ¨ar det vanlig praxis att v¨alja det ideala l˚agpassfiltrets bandbredd fc mitt i ¨overg˚angsbandet, dvs
fc= (1.5 + 0.5/2)kHz = 1.75kHz
vilket med samplingsfrekvensen fs = 8 kHz motsvarar den normerade bandbredden fc = 1.75/8 = 0.21875.
Filterkoefficienterna kan nu best¨ammas enligt ovan. Tack vare symmetrin beh¨over endast h(0), h(1), . . . , h(26) ber¨aknas, ty h(−n) = h(n). F¨or n = 0 f˚as
hD(0) = 2 × 0.21875 = 0.4375 w(0) = 0.54 + 0.46 cos(0) = 1
h(0) = w(0)hD(0) = 0.4375 P˚a samma s¨att f˚as f¨or n = 1,
hD(1) = 2 × 0.21875 sin(2π × 0.21875)
2π × 0.21875 = 0.31219 w(1) = 0.54 + 0.46 cos(2π/53) = 0.98713
h(1) = h(−1) = w(1)hD(1) = 0.31119
De ¨ovriga koefficienterna f˚as p˚a analogt s¨att. Ett kausalt filter best¨ams till slut enligt ekvation (8.84). Det kausala filtrets koefficienter ges i tabell 6.4 i Ifeachor och Jervis (1993). Filtrets f¨orst¨arkning och fasf¨orskjutning visas i figur 8.7. Man kan verifiera att filtret satisfierar specifikationerna.
0 500 1000 1500 2000 2500 3000 3500 4000
−120
−100
−80
−60
−40
−20 0 20
Frequency (Hz)
Magnitude (dB)
0 500 1000 1500 2000 2500 3000 3500 4000
−2500
−2000
−1500
−1000
−500 0
Frequency (Hz)
Phase (degrees)
Figur 8.7: F¨orst¨arkning och fasf¨orskjutning hos filtret i exempel 8.4.
8.3.3 Frekvenssampling
Ett alternativt s¨att att approximera ett idealt filter med ett kausalt FIR filter ¨ar genom s.k. frekvenssampling. Om det ideala filtret har frekvenssvaret HD(ejω) ges impulssvaret av (j¨amf¨or ekvation (8.21))
hD(n) = 1 2π
Z π
−πHD(ejω)ejωndω = 1 2π
Z 2π
0 HD(ejω)ejωndω (8.86)
Frekvenssampling g˚ar ut p˚a att approximera det ideala frekvenssvaret med en sekvens diskreta v¨arden vid N ekvidistanta frekvenspunkter ωk = 2πk/N, k = 0, 1, . . . , N − 1, s˚a att vi har sekvensen
H(k) = HD(ej(2π/N )k), k = 0, 1, . . . , N − 1 (8.87) best˚aende av sampel av frekvenssvaret. Den diskreta sekvensen {H(k)} utg¨or en diskret Fouriertransform (DFT) av sekvensen {h(n)}, som kan best¨ammas med hj¨alp av invers DFT (j¨amf¨or avsnitt 4.3),
h(n) = 1 N
N −1X
k=0
H(k)ej2πkn/N, n = 0, 1, . . . , N − 1 (8.88) Denna sekvens kan tas som koefficienterna hos ett FIR filter av l¨angden N som ap- proximerar det ideala filtret,
HN(z) = h(0) + h(1)z−1+ · · · + h(N − 1)z−N +1 (8.89) Fr˚an konstruktionen f¨oljer att frekvenssvaret ¨overensst¨ammer exakt vid frekvenserna 2πk/N,
HN(ej(2π/N )k) = HD(ej(2π/N )k), k = 0, 1, . . . , N − 1 (8.90) men tyv¨arr finns det inga garantier f¨or att ¨overensst¨ammelsen ¨ar god ocks˚a mellan de diskreta frekvenspunkterna.
F¨or att f¨orb¨attra approximationens egenskaper brukar man inf¨ora frekvenssampel i ett ¨overg˚angsband mellan det ideala filtrets passband och sp¨arrband. Sampelv¨ardena i ¨overg˚angsbandet kan optimeras s˚a att variationerna i passbandet och f¨orst¨arkningen i passbandet minimeras. Se Ifeachor och Jervis (1993) f¨or detaljer.
8.3.4 Syntes baserad p˚a optimering av filterkoefficienter
De ovan beskrivna syntesmetoderna ¨ar inte optimala i den meningen att de skulle ge den b¨asta approximationen av det ideala frekvenssvaret f¨or en given filterl¨angd. Ett optimalt filter kan ber¨aknas genom att direkt optimera filtrets koefficienter h(n) s˚a att avvikelsen fr˚an det ideala svaret minimeras.
L˚at HD(ejω) vara det ideala frekvenssvaret som skall approximeras av ett FIR filter av l¨angden N, vars frekvenssvar ¨ar
H(ejω) =
N −1X
n=0
h(n)e−jωn (8.91)
Vi introducerar ett frekvensviktat fel mellan frekvenssvaren,
E(ejω) = W (ejω)[HD(ejω) − H(ejω)] (8.92) d¨ar W (ejω) ¨ar en viktfunktion som reflekterar det faktum att att de till˚atna felen i t.ex. passbandet och sp¨arrbandet kan vara olika stora. I den optimeringsbaserade
metoden minimeras det maximala v¨ardet av det absoluta felet |E(ejω)| med avseende
˚a filterkoefficienterna {h(n)}, dvs man best¨ammer filterkoefficienterna genom att l¨osa optimeringsproblemet
h(0),...,h(N −1)min
hmax
|ω|≤π|E(ejω)|i (8.93)
I allm¨anhet kr¨aver man dessutom att filterkoefficienterna satisfierar symmetriegen- skapen
h(n) = h(N − 1 − n) (8.94)
eftersom man d˚a kan garantera att det konstruerade filtret ¨ar faslinj¨art. D˚a ett fas- linj¨art filter ej ger upphov till fasf¨orvr¨angning r¨acker det i detta fall med att den ideala filterf¨orst¨arkningen approximeras, medan fasf¨orskjutningen kan ignoreras vid optimeringen. Felfunktionen (8.92) f¨orenklas d˚a till
E(ejω) = W (ejω)[|HD(ejω)| − |H(ejω)|] (8.95) D˚a filtret ¨ar symmetriskt ges |H(ejω)| som funktion av filterkoefficienterna av (8.56) eller (8.57).
Optimeringsproblemet (8.93) ¨ar ett s.k. minimax optimeringsproblem, och filter som konstrueras genom l¨osning av (8.93) kallas d¨arf¨or ¨aven minimax filter. Minimax optimeringsproblem ¨ar i allm¨anhet numeriskt mycket kr¨avande. Optimeringsproblemet (8.93) har emellertid en speciell struktur som g¨or det m¨ojligt att konstruera effektiva algoritmer f¨or dess l¨osning. Speciellt g¨aller att de optimala koefficienterna h(n) som minimerar (8.93) ¨ar s˚adana att det existerar L frekvenser ωl, l = 1, . . . , L, f¨or vilka
|E(ejω)| antar sitt maximala v¨arde,
|E(ejωl)| = max
|ω|≤π|E(ejω)|, l = 1, . . . , L (8.96) H¨ar beror L av filterl¨angden och de antagna symmetriegenskaperna hos impulssvaret.
Ur egenskapen (8.96) f¨oljer, att felet hos det optimala filtret i passbandet och sp¨arrbandet kommer att variera mellan maxima och minima vars absoluta belopp ¨ar lika stora (s.k. equiripple filter).
F¨or givna frekvenser ωl definierar (8.96) ett linj¨art ekvationssystem fr˚an vilket ko- efficienterna h(0), . . . , h(N − 1) kan ber¨aknas. I praktiken ¨ar frekvenserna ωl emellertid ej k¨anda, utan m˚aste s¨okas fram iterativt. Detta kan g¨oras med hj¨alp av en s.k. ut- bytesalgoritm, i vilken frekvenserna ωl iterativt byts ut mot nya frekvenser enligt en algoritm som ger konvergens till l¨osningen. S˚adana utbytesalgoritmer ¨ar standardme- toder inom funktionsapproximering. En effektiv implementering av utbytesalgoritmen f¨or optimering av filterkoefficienterna ¨ar Parks-McClellan algoritmen, som baserar sig p˚a Remez utbytesalgoritm. Parks-McClellan metoden f¨or syntes av FIR filter med op- timerade koefficienter tillh¨or en av de mest popul¨ara filtersyntesmetoderna. Effektiv programvara som implementerar algoritmen finns tillg¨anglig.
Den filterl¨angd N som fordras f¨or att uppn˚a givna specifikationer kan i princip best¨ammas iterativt genom att l¨osa minimax optimeringsproblemet f¨or att antal fil- terl¨angder tills specifikationerna uppfylls. D˚a N i praktiken kan vara r¨att stort ¨ar denna