Filter mit endlicher Impulsantwort

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von FIR-Filter)
Wechseln zu: Navigation, Suche

Ein Filter mit endlicher Impulsantwort (englisch finite impulse response filter, FIR-Filter, oder manchmal auch Transversalfilter genannt) ist ein diskretes, meist digital implementiertes Filter und wird im Bereich der digitalen Signalverarbeitung eingesetzt.

Eigenschaften[Bearbeiten]

Das Charakteristikum von FIR-Filtern ist, dass sie über eine Impulsantwort mit garantiert endlicher Länge verfügen. Das bedeutet: FIR-Filter können, egal wie die Filterparameter gewählt werden, niemals instabil werden oder zu einer selbstständigen Schwingung angeregt werden. FIR-Filter sind meistens nichtrekursive Filter, weisen also keine Rückkopplungen oder Schleifen in ihrer Struktur auf. Es gibt aber auch einige spezielle FIR-Filterstrukturen mit Rückkopplungen, ein Beispiel dafür sind Cascaded-Integrator-Comb-Filter. Gleichwohl können bestimmte Übertragungsfunktionen von FIR-Filtern auch mit diskreten rekursiven Filterstrukturen realisiert werden.

Meistens werden FIR-Filter als digitale Filter realisiert. Die Implementierung analoger FIR-Filter ist schwieriger und weniger verbreitet, vor allem wegen der Genauigkeitsprobleme. Beispiele sind elektrische Eimerkettenschaltungen, wobei Eimerkettenspeicher zur analogen Verzögerung verwendet werden, analoge N-Pfad-Filter, sowie als akustische Realisierungen (Akustische-Oberflächenwellen-Filter).

Theoretische Grundlagen[Bearbeiten]

Als wesentliche Eigenschaft sind FIR-Filter immer stabil. Dies folgt mathematisch aus der Notwendigkeit, dass bei den beiden Direktformen die einzige n-fache Polstelle der Übertragungsfunktion immer im Ursprung und somit innerhalb des Einheitskreises liegt. Bei rekursiven FIR-Filtern fallen die Nullstellen exakt mit den Polstellen zusammen und heben diese auf. Durch diese grundsätzlich garantierte Stabilität werden FIR-Filter beispielsweise bei adaptiven Filtern als Basis für die Filterstruktur eingesetzt. Auch wirken sich Quantisierungsfehler bei den Filterkoeffizienten, durch die notwendige Beschränkung auf endlich viele Stellen, nur in geringem Maße aus.

Weiterhin ist die Gleichspannungsverstärkung eines FIR-Filters der Normalformen gleich der Summe aller Filterkoeffizienten und die Impulsantwort h(k) liefert die Folge der Filterkoeffizienten. Diese Koeffizientenfolge ist bei einem FIR-Filter mit Ordnung m immer m+1 Werte lang, womit eine gerade Filterordnung immer eine ungerade Anzahl von Filterkoeffizienten bzw. bei ungerader Filterordnung immer eine gerade Anzahl von Filterkoeffizienten hat.

Im Gegensatz zu den Filtern mit unendlicher Impulsantwort (IIR-Filter) ist zur Realisierung einer bestimmten Filterübertragungsfunktion mittels FIR-Filter eine deutlich höhere Ordnung m notwendig.

Grundtypen[Bearbeiten]

Neben den allgemeinen, komplexwertigen FIR-Systemen spielen vor allem reellwertige FIR-Systeme in der praktischen Realisierung von Filtern eine bedeutende Rolle. Reellwertige FIR-Filter weisen als Koeffizienten nur reelle Zahlen auf und lassen sich je nachdem ob eine gerade oder ungerade Filterordnung bzw. eine gerade oder ungerade Symmetrie der Impulsantwort vorliegt, in vier verschiedene Grundtypen unterteilen. Diese vier Typen unterscheiden sich unter anderem in der Lage der fest vorgegebenen Nullstellen im Betragsfrequenzgang |H(jΩ)|.

In folgender Tabelle, deren Normierung in der Literatur allerdings nicht einheitlich ist, sind zu den vier Grundtypen die beispielhaften Impulsantworten angegeben. Bei der Übertragungsfunktion H(jΩ) stellt der Parameter Ω die auf π normierte Frequenz dar. Dabei ist Ω gleich π bei der halben Abtastfrequenz, was der Grenzfrequenz von zeitdiskreten Übertragungssystemen entspricht. Ω=2π entspricht der Abtastfrequenz. Da es sich immer um zeitdiskrete Systeme handelt, weist der Betragsfrequenzgang |H(jΩ)| eine Periodizität mit der Abtastfrequenz auf, welche je nach Typ verschieden ist.

Eigenschaften der vier linearphasigen FIR-Grundtypen
Typ Filterordnung m Symmetrie der
Impulsantwort
Beispielhafte
Impulsantwort h(k)
Fixe Nullstellen
im Frequenzgang H(jΩ)
Periodizität
von |H(jΩ)|
1 gerade gerade
Fir filter typ1 impulsantwort.png
keine
2 gerade ungerade
Fir filter typ2 impulsantwort.png
Ω = 0
Ω = π
3 ungerade gerade
Fir filter typ3 impulsantwort.png
Ω = π
4 ungerade ungerade
Fir filter typ4 impulsantwort.png
Ω = 0

Bei dem Filterentwurf sind diese speziellen Eigenschaften von wesentlicher Bedeutung. So ergibt beispielsweise der Entwurf eines Hochpasses mit einer FIR-Struktur mit gerader Filterordnung und ungerader Symmetrie (Typ 2) bzw. ungerader Filterordnung und gerader Symmetrie (Typ 3) keinen Sinn, da in beiden Fällen zwangsweise bei Ω=π eine unerwünschte Nullstelle liegt und dies der Forderung eines nach oben offenen Frequenzganges bei einem Hochpass widerspricht. Ebenso ergibt die Realisierung eines Tiefpasses mit Typ 2 oder Typ 4 Probleme, da die zwangsweise Nullstelle Ω=0; immer den bei einem Tiefpass erwünschten Gleichanteil unterdrückt.

Realisierungsformen[Bearbeiten]

Nicht rekursive FIR-Filter können in verschiedenartigen Grundformen realisiert werden, welche im Folgenden näher dargestellt werden.

Direkte Normalformen[Bearbeiten]

FIR Filter 4. Ordnung in Normalform 1
FIR Filter 4. Ordnung in Normalform 2

Die beiden direkten Normalformen 1 und 2, auch als kanonische Normalform und im Englischen als Direct Form I (DF1) und Direct Form II (DF2) bezeichnet, kennzeichnen FIR-Filter welche mit einer minimalen Anzahl von Speicherelementen bzw. Filterkoeffizienten zur Realisierung einer gegebenen Übertragungsfunktion auskommen. Man unterscheidet zwei Formen, wie in den beiden nebenstehenden Abbildungen es beispielhaft für ein FIR-Filter 4. Ordnung dargestellt ist.

Die beiden Normalformen sind äquivalent und können ineinander übergeführt werden. Je nach konkreter Realisierung des Filters, beispielsweise in einem digitalen Signalprozessor mittels sequentiell abgearbeiteter Software oder in digitalen Schaltungen mittels paralleler Datenverarbeitung wie FPGAs, kann die eine oder die andere Form effizienter zu implementieren sein. Die Normalform 1 bietet beispielsweise die Möglichkeit, die ausgangsseitigen Addierstufen zu einem einzigen Addier mit m+1 Eingängen zusammenzufassen, während die Normalform 2 es gestattet, gleiche Koeffizienten zusammenzufassen und damit Multiplizierstufen zu reduzieren.

Die Differenzengleichung für die Filterantwort ist für beide Formen identisch und lautet für ein System m-ter Ordnung im Zeitbereich:

y[k]=\sum_{i=0}^m h(i) \cdot u_{k-i}

Die dabei auftretenden Faktoren h(i) stellen die Filterkoeffizienten dar. Durch Umformen lässt sich die Übertragungsfunktion ermitteln:

H(z)=\sum_{i=0}^m h(i) \cdot z^{-i}

Bei reellwertigen Filtern lässt sich der komplexe Parameter z durch e, mit Ω als normierte Frequenz ersetzen. Die Elemente z werden auch als Taps bezeichnet, und stellen bei der Realisierung zeitliche Verzögerungen bzw. Speicherelemente dar. Ein FIR-Filter dieser Form weist in der Z-Ebene immer m Nullstellen und einen m-fachen Pol im Ursprung bei 0 auf, womit der Frequenzgang ausschließlich durch die Nullstellen in der z-Ebene bestimmt wird.

Die Ermittlung der bei zeitlich unveränderlichen FIR-Filter konstanten Filterkoeffizienten h(i) erfolgt im Rahmen der Dimensionierung des Filters, nach bestimmten Vorgaben. Diese Vorgaben stellen zum einen grundsätzliche Aussagen über die gewünschte Übertragungsfunktion dar, wie beispielsweise die Realisierung eines Hochpasses, Tiefpasses, Bandpasses oder Bandsperre und dessen Grenzfrequenzwerte. Dazu kommen weitere Parameter wie beispielsweise zulässige Abweichungen des Betragsfrequenzganges von einer Idealform und deren Steilheit im Übergangsbereich. Die Dimensionierung erfolgt dann mit numerischen Softwarepaketen wie MATLAB oder GNU Octave.

Optimierung[Bearbeiten]

Durch Ausnutzen der geraden bzw. ungeraden Symmetrie der Impulsantwort von linearphasigen FIR-Filtern lassen sich in beiden Normalformen aufwendige Multiplizierer auf bis zur Hälfte reduzieren. Dabei werden die Daten aus den jeweiligen Speicherelementen zunächst addiert, welche anschließend mit identischen Filterkoeffizienten multipliziert werden.

Kaskadierte Form[Bearbeiten]

FIR Filter 6. Ordnung in kaskadierter Form

FIR-Filter höherer Ordnungen lassen sich auch in mehrere, kleinere FIR-Filter niedrigerer Ordnung, meist 2. Ordnung, aufspalten und seriell aneinanderschalten (kaskadieren), um als Summe die Übertragungsfunktion des Filters höherer Ordnung zu bilden. In nebenstehender Abbildung ist ein kaskadiertes FIR-Filter 6. Ordnung dargestellt, bestehend aus drei einzelnen FIR Filtern mit jeweils 2. Ordnung. In der meist englischsprachigen Fachliteratur werden diese Filterstrukturen auch als Second Order Structure, oder abgekürzt als SOS-Filter, bezeichnet.

Die einzelnen elementaren FIR-Filter können dabei wieder in der Normalform 1 oder Normalform 2 auftreten. Die Überführung der Filterkoeffizienten von der Normalform in eine kaskadierte Form erfordert eine Transformation der Filterkoeffizienten.

Der Grund für diese Umformung liegt in den Quantisierungsfehlern der Filterkoeffizienten im Rahmen der Implementierung in digitalen Systemen begründet. Durch die nur endliche Genauigkeit mit der jene Koeffizienten gespeichert werden können, können Rundungsfehler zu unzulässigen Fehlern führen. Bei der kaskadierten Filterstruktur ist die Aufteilung der quantisierten Filterkoeffizienten gleichmäßiger verteilt als in den beiden Normalformen.

Die Übertragungsfunktion H(z) für kaskadierte FIR-Filter gerader Ordnung, wie in der Abbildung für die Filterordnung m=6 mit den Filterkoeffizienten h, ergibt sich zu:

H(z) = h(0) \prod^{\frac{m}{2}-1}_{i=0} \left(1 + h(1i)z^{-1} + h(2i)z^{-2}\right)

Polyphase Form[Bearbeiten]

Kanonisches Polyphasen FIR-Filter 8. Ordnung

Die Struktur von polyphasen FIR-Filtern stellt eine parallele Verschaltung einzelner FIR-Filter dar, wovon sich auch das Adjektiv polyphas (mehrphasig) ableitet. Dabei werden einzelne, elementare FIR-Filter niedriger Ordnung zeitlich nacheinander verschaltet und deren jeweilige Ausgabe aufsummiert. Die zu filternde Datenfolge durchläuft dabei parallel aber zeitliche versetzt die einzelnen elementaren Filter.

Polyphase Formen bieten verschiedene Vorteile bei der Optimierung, vor allem bei der Implementierung direkt in digitalen Hardwareschaltungen. So können einzelne Teilfilter des Polyphasen-Filters mit niedrigerer Taktrate als das Gesamtfilter betrieben werden. Oder es kann zwecks Minimierung der Hardware nur ein Teilfilter implementiert werden, dessen Filterkoeffizienten zyklisch vertauscht werden.

Weitere Formen[Bearbeiten]

Daneben existieren noch weitere FIR-Formen wie beispielsweise Latticefilter welche sowohl als FIR-Filter als auch als IIR-Filter auftreten. Diese Filterformen finden wegen ihrer Struktur vor allem als Prädiktionsfehlerfilter im Bereich der Spektralschätzung für digitale Funkübertragungen, wie beispielsweise in digitalen Mobilfunknetzen, Anwendung.

Schnelle Faltung[Bearbeiten]

Die übliche Realisierung in einer der beiden Normalformen stellt die direkte Ausführung der diskreten, aperiodischen Faltung dar. Eine alternative und funktionell identische Realisierungsmöglichkeit ist die schnelle Faltung. Dabei wird eine schnelle Fouriertransformation (FFT) und deren inverse Transformation mit der Multiplikation der Impulsantwort im Spektralbereich kombiniert, woraus eine zyklische Faltung resultiert. Diese Operation ist allerdings nicht identisch mit der aperiodischen Faltung, was durch die blockorientierte Verarbeitung der FFT bedingt ist. Durch Anwendung von Verfahren wie dem Overlap-Save-Verfahren oder dem Overlap-Add-Verfahren kann eine der diskreten, aperiodischen Faltung identische Filterrealisierung erreicht werden. Je nach Zahlenformat und Art der Implementierung kann ab FIR-Filterordnungen von ca. 40 aufwärts mit der schnellen Faltung eine effizientere Implementierungen erreicht werden, als durch direkte Ausführung der aperiodischen Faltungsoperation.

Beispiele[Bearbeiten]

Mittelwertfilter[Bearbeiten]

Der einfachste FIR-Filter ist die klassische Mittelwertbildung durch Summation einzelner aufeinander folgende Werte und Division durch deren Anzahl. Führt man dies nicht blockweise (Zahl 1 bis Zahl 10, Zahl 10 bis Zahl 20, etc.), sondern überlappend (Zahl 1 bis Zahl 10, Zahl 2 bis Zahl 11, Zahl 3 bis Zahl 12, etc) durch, so gelangt man zu dem gleitenden Mittelwert. Das Resultat ist ein sich über die Zeit langsam verändernder Wert, der schnellen Änderungen nicht mehr folgen kann.

Dieses Tiefpassfilter hat den inhärenten Nachteil, dass der erste Nebengipfel im Amplitudengang nicht mit mehr als -21 dB gedämpft ist (egal, wie breit das Mittelwertfilter gewählt wird). Dies zeigt sich durch Ringing. Den Nachteil überkommt man beispielsweise mit Binomialfiltern.

Literatur[Bearbeiten]

  •  Karl Dirk Kammeyer: Digitale Signalverarbeitung. 6. Auflage. Teubner, 2006, ISBN 3-8351-0072-6.
  •  B. A. Shenoi: Introduction to Digital Signal Processing and Filter Design. 1. Auflage. Wiley, 2006, ISBN 0-471-46482-1.

Weblinks[Bearbeiten]