FIR-filter
Eit FIR-filter innanføre signalhandsaming (frå engelsk; Finite Impulse Response filter) er eit digitalt filter med ein endeleg impulsrespons[1]. Desse filtera står i kontrast til IIR-filter, som har uendeleg lang impulsrespons.
Tidsplanet
endreEit FIR-filter kan uttrykkast med differanselikninga
der er koeffisientvektoren, er inngangssekvensen, er utgangsekvensen, er talet på koeffisientar og er ein sampelindeks. Eit FIR-filter er med andre ord foldninga mellom koeffisientvektoren og inngangssekvensen . Koeffisientvektoren er av lengd , medan inn- og utgangssekvensane kan ha vilkårleg lengd; i eit sanntidssystem er ikkje lengda avgrensa. FIR filter vil alltid vere stabile ettersom dei ikkje nyttar tilbakekopling.
Filteret genererer ein ny utgangsverdi ein gong per sampelinterval. Den artimetiske kompleksiteten er difor multiplikasjonar og addisjonar per sampel. Ein multiplikasjon pluss addison blir ofte kalla ein MAC-operasjon, som står for multiplikasjon-akkumulasjon.
Eit FIR-filter kan òg uttrykkjast som foldninga mellom koeffisientvektoren og inngangssekvensen:
der er foldningsoperatoren.
Impulsresponsen til filteret er av lengd , der er sampelintervalet og er sampelfrekvensen. Mange FIR-filter har lineær faseresponse, men treng ikkje ha det. Om filteret har symmetrisk coeffisientvektor er faseresponsen lineær.
Transferfunksjon
endreNår differenselikninga er kjent kan ein finna transferfunksjonen ved å z-transformera differenselikninga ledd for ledd; ein forsinkelse med sampelinterval i tidsplanet tilsvarar multiplikasjon med i -planet:
Vi faktiriserer ut :
og finn transferfunksjonen ved å dividera med på begge sider av likheitsteiknet:
Transferfunksjon har røter, som vert kalla nullpunk, av di når samsvarar med ei rot,
Strukturar for symmetrisk filtervektorar
endreNår eit FIR-filter blir implementert som i fig. 1 er talet på multiplikasjonar og talet på addisjonar/subtraksjonar er . FIR-filtere med lineær fase har enten symmetriske (Type I og Type II) eller asymmetriske (Type III og Type IV) koeffisientvektor. For filter med symmetrisk koeffisientvektor har vi at
og for usymmetrisk koeffisentvektor har vi at
Når er eit oddetall kan vi dirfor skriva differanselikninga som
og når er eit paretall som
Som vist i fig. 2 og 3 kan vi bretta skiftregisteret i Fig. 1, utføra addisjonane , , etc., før vi utfører multiplikasjonane. Dette er illustrert i fig. 2 og fig. 3 for eit partal respektivt eit oddetall. Talet på multiplikasjonar kan dermed reduserast til , eller , medan talet på addisjonar blir som før. Typiske døme på FIR-filtere med symmetrisk impulsrespons er LP-, HP-, BP- og BS-filter. Filtere med asymmetrisk impulsrespons (Type III og Type IV) kan òg implementerast med strukturane vist i fig. 2 og 3; addisjonane må da byttast ut med subtraksjonar. Filtere som ikkje har nokon symmetri derimot, må implementerast med strukturen vist i fig. 1 og krev multiplikasjonar.
Når eit FIR-filter med lineær fase skal implementerast med ein digital signalprosessor (DSP) vil vi ikkje kunne dra fordel av å bruka strukturane i fig. 2 og 3, ettersom ein DSP kan utføra både ein multiplikasjon og ein addisjon/subtraksjon per instruksjonsperiode. Det same er tilfellet med mikroprosessorar i moderne PCar. Men om filteret blir implementert i form av ein ASIC, FPGA eller ein mikrokontroller kan vi dra fordel av dei folda strukturane i fig. 2 og 3. I et sanntids-system må alle multiplikasjonane og addisjonane/subtraksjonane utførast ein gong per sampelinterval, så dei folda strukturane i fig. 2 og 3 kan utnyttast for å redusera klokkefrekvensen eller for å spara areal.
Design av FIR-filter
endreVanlege metodar for design av FIR-filter er
Vindaugemetoden
endreMed denne metoden tek ein utgangspunkt i eit ideelt LP-filter, som har ein frekvensrespons som er heilt flat opp til knekkfrekvensen, og null for høgare frekvensar. Eit tek så den inverse Foruier-transformen, som resulterer i impulsresponsen, som for eit ideelt LP-filter er ein sinc-funksjon. Koeffisientvektoren er ein sampla versjon av impulsresponsen. Etter som sinc-funksjonen har uendeleg stor utstrekning vil koeffisientvektoren ha uendeleg mange koeffisientar. For at det skal vera muleg å realisera filteret i maskinvare, eller programvare, lyt ein avgrensa talet på koeffisientar .
Koeffiseintvektoren til eit ideelt FIR LP-filter er symmetrisk om midten, så halvparten av koeffisientane skal multipliserast med framtidige inngangsverdiar.Om ein har samla inn inngangsverdiane på førehand skapar ikkje dette problem, men for sanntidsrealiseringar har ein ikkje framtidig data. Ein løyser då dette problemet ved å samla opp verdiar i ein buffer, ofte ein ringbuffer. Dette fører til at utgangssekvensen blir forsinka med sampelinterval i høve til inngangssekvensen. Men alle frekvensane i passbandet blir forsinka med , som er det sama som at faseresponsen er lineær:
der er frekvensen i rad/s og er frekvensen i Hz.
Om ein kuttar koeffisientvektoren abrupt seien ein at ein nyttar ein rektangulært vindu. Dette fører til ripple i frekvensresponsen (Gibbs fenomen). Ein kan redusera dette problemet ved å multiplisera koeffisientventoren med ein glattefunksjon, òg kalla glattevindu, som vektar ned endane på koeffisientvektoren. Det finst mange slike glattevindu[2], men ein av dei vanlegaste i samband med FIR-filter er eit sokalla Hanning-vindu.
Parks-McClellan-metoden
endreDenne algoritmen vert nytta til design av equirippel FIR-filter og lineær fase FIR-filter generelt. Algoritmen er ein iterativ prosedyre som er basert på eit vekta feilkriterie[3]. Han finn dei optimale FIR filter koeffisientane i samhøve til minimiseringa av dette feilkriteriet. Parks-McClellan metoden er meir fleksibel enn til dømes vindusmetoden, og er ein mykje nytta metode for design av FIR-filter.
Referansar
endre- ↑ S.K. Mitra, Digital signal processing - A computer-based approach, 2. utg., McGraw-Hill, 2011.
- ↑ F.J. Harris, On the use of windows for harmonic analysis with the discrete Fourier transform, Proc. IEEE, bind 66, nr 1, jan. 1978, ss. 51-83.
- ↑ J.H. McClellan og T.W. Parks, A unified approach to the design of optimum FIR linear-phase digital filters, IEEE Trans. on Circuit Theory, bind. CT-20, nr 6, nov. 1973, ss. 697-701.
Sjå òg
endre- Digitalt filter (generelt om diskrete filter)
- IIR-filter (rekursivt diskret filter)