Digitales Filter

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Ein digitales Filter ist ein mathematisches Filter zur Manipulation eines Signals wie beispielsweise das Sperren oder Durchlassen eines bestimmten Frequenzbereiches. Der Unterschied zum Analogfilter liegt in der Realisierung: Analoge Filter werden mit passiven elektronischen Bauelementen wie Kondensatoren, Spulen, Widerständen oder aktiv mit Operationsverstärkern aufgebaut. Digitale Filter werden mit Logikbausteinen wie ASICs, FPGAs oder in Form eines sequentiellen Programmes mit einem Signalprozessor realisiert.

Eigenschaften[Bearbeiten]

Blockstruktur eines digitalen IIR-Filters

Als weiteres wesentliches Merkmal verarbeiten digitale Filter keine kontinuierlichen Signale, sondern ausschließlich zeit- und wertdiskrete Signale. Ein zeitdiskretes Signal besteht in der zeitlich periodischen Abfolge nur aus einzelnen Impulsen, welche den Signalverlauf über die Zeit darstellen, den jeweiligen Abtastwerten. Der Abtastwert ist wertdiskret, da die digitale Zahlendarstellung nur eine endliche Auflösung bietet.

Das Filterverhalten von digitalen Filtern ist leichter zu reproduzieren. Auch lassen sich bestimmte Filtertypen, wie die so genannten FIR-Filter nur als digitales Filter und nicht als eine analoge Filterschaltung realisieren. Digitale Filter in Kombination mit Analog-Digital-Umsetzern und Digital-Analog-Umsetzern ersetzen auch zunehmend bisher rein analog realisierte Filterstrukturen. Digitale Filter stellen die Grundlage der digitalen Signalverarbeitung dar und finden beispielsweise Anwendung in der Kommunikationstechnologie.

Kontinuierliche Filterübertragungsfunktionen und daraus gebildete analoge Filter wie Butterworth-Filter, Bessel-Filter, Tschebyscheff-Filter oder elliptische Filter lassen sich nach Anpassung der Filterübertragungsfunktion an das endliche, diskrete Spektrum in Form von digitalen IIR-Filtern mit geeignet gewählten Filterkoeffizienten nachbilden.

Mathematische Definition[Bearbeiten]

Ein abstraktes digitales Filter ist ein Operator, der zeitdiskreten digitalen Signalen wieder ebensolche zuordnet. Oft wird zur Vereinfachung der Beschreibung angenommen, dass das Signal reelle Zahlen als Werte hat, d. h. die Quantisierung der Abtastwerte (d. h. das Runden auf einen der endlich vielen Werte der Bitdarstellung) des digitalen Signals wird nicht berücksichtigt. Ein zeitdiskretes Signal x ist eine Abbildung, die jedem Punkt der diskreten, äquidistanten Menge

\Gamma = \{t_n:=t_0+n \Delta t, n\in \Z \}

eine Zahl zuordnet. Es kann auch durch die Folge seiner Funktionswerte

x[n]=x_n:=x(t_n)

angegeben werden. Die Notation mit eckigen Klammern wird in der Informatik der mit Index in der Mathematik vorgezogen.

Die grundlegende Funktionsweise einer (endlichen, nichtrekursiven) Filteroperation ist die folgende: Zu jedem Zeitpunkt, bzw. Punkt aus dem Gitter, wird eine Umgebung aus naheliegenden Zeitpunkten fixiert, z. B. je zwei Punkte vorher und nachher. Die Form dieser Umgebung ist dabei über die Zeit konstant. Enthält die Umgebung nur zeitlich vorhergehende Punkte, so wird das Filter kausal genannt.

Jetzt liegt zu jedem Zeitpunkt das Tupel der Werte in seiner Umgebung vor. Auf dieses Tupel wird immer eine gleiche Funktion angewendet, z. B. Maximumsbildung, Mittelwertbildung, gewichtete Mittelwerte, … Ist diese Funktion linear, so wird das Filter linear genannt, sonst nichtlinear.

Betrachtet man eine Familie von Signalen, die sich durch Zeitverschiebung auseinander ergeben, und erzeugt die Familie der durch das Filter transformierten Signale, so unterscheiden sich die gefilterten Signale durch exakt dieselbe Zeitverschiebung untereinander. Das Filter ist zeitinvariant. Signaltransformationen mit diesen Eigenschaften werden auch als LTI-Systeme bezeichnet, englisch für Linear Time Invariant. Betrachtet man das diskrete Signal als Koeffizientenfolge einer Fourier-Reihenentwicklung, d. h. die Signalwerte als Fourier-Integrale \textstyle x_n=\int_{-1/2}^{1/2}\;f(s)\cdot e^{i2\pi sn}\,ds, so vermag ein LTI-System die Amplituden |f(s)| der einzelnen Frequenzen zu verändern und gegenüber dem Eingangssignal in der Phase arg(f(s)) zu drehen.

Faltungsoperatoren als LTI-Systeme[Bearbeiten]

Ein Faltungsoperator ist über eine Folge f von Koeffizienten gegeben, welche per Faltung auf das diskrete Signal x wirkt:

x\mapsto y:=f*x \; , \; y_n = \sum_{k=-\infty}^\infty f_k\cdot x_{n-k}

Diese Summe ist in folgenden Fällen wohldefiniert:

  1. x ist beliebig und f ist als Folge endlich, so dass die Summe endlich ist,
  2. x ist beschränkt, und f ist absolut summierbar ⇒ y ist beschränkt,
  3. x ist „quadratsummierbar“ und f hat eine beschränkte Frequenzantworty ist „quadratsummierbar“,
  4. x ist absolut summierbar und f ist absolut summierbar ⇒ y ist absolut summierbar.

Dabei heißt

  • x beschränkt, falls −K < xn < K für ein K und alle n ∈ ℤ,
  • x „quadratsummierbar“, wenn die Reihe der Betragsquadrate konvergiert
    E(x):=\|x\|_2^2:=\sum_{n=-\infty}^\infty |x_n|^2<\infty,
  • f endlich, wenn es eine endliche Teilmenge I aus ℤ gibt, so dass fn ≠ 0 nur für n ∈ I gilt,
  • f absolut summierbar, falls die Reihe der Beträge konvergiert
    \|f\|_1:=\sum_{n=-\infty}^\infty |f_n|<\infty,
  • f von beschränkter Frequenzantwort, wenn die Fourier-Reihe zu f
    \hat f(\xi):=\sum_{k=-\infty}^\infty f_ke^{-ik\xi}
    fast überall konvergiert und (essentiell) beschränkt ist.

Wie man sich überlegt, ist die Impulsantwort des Faltungsoperators in allen diesen Fällen die Folge f.

Für ein endliches Filter nennt man die Menge I auch Träger, die Differenz zwischen Anfangs- und Endpunkt des Trägers wird Länge des Filters genannt. Die Elemente des Trägers werden häufig als Taps bezeichnet, ihre Anzahl ist um Eins höher als die Länge des Signals. Nur dieser erste, endliche Fall entspricht dem in der Einleitung geschilderten. Die Menge I definiert die Umgebung, welche zur Bestimmung der gefilterten Werte herangezogen wird, die Glieder von f definieren eine lineare Funktion der Werte dieser Umgebung.

Die absolut summierbaren Filterfolgen f des zweiten Falls haben nicht nur eine beschränkte, sondern sogar eine stetige Frequenzantwort. Diese gibt die Amplitudenänderung für die Elementarschwingungen e(\omega)=(e_n(\omega): n \in \Z) mit e_n(\omega):=\exp(in\omega)=\cos(n\omega)+i \sin(n\omega) an. Diese sind beschränkt, deshalb ist f * e(\omega) definiert und

[f*e(\omega)]_n=\sum f_k e_{n-k}(\omega)=e_n(\omega)\sum f_ke^{-ik\omega}=\hat f(\omega) e_n(\omega).

Ideale frequenzselektive Filter nehmen in ihrer Frequenzantwort nur die Werte 0 und 1 an. Die auftretenden Sprünge lassen sich nur schwer mit den stetigen Frequenzantworten absolut summierbarer und noch schlechter mit den polynomialen Frequenzantworten endlicher Filter approximieren.

Für die Fourier-Reihen, welche nur im dritten Fall alle existieren (als L²-Funktionen), gilt die Beziehung:

\hat y(\xi)=\hat f(\xi)\cdot \hat x(\xi).

Die Quadratsumme E(x) wird auch als „Energie“ des Signals bezeichnet. Aufgrund der Parseval-Identität

\|x\|_2^2=\frac1{2\pi}\|\hat x\|_2^2:=\frac1{2\pi}\int_{-\pi}^\pi|\hat x(\xi)|^2\,d\xi

kann mittels frequenzselektiver Filter eine orthogonale Zerlegung des Signals erreicht werden.

Endliche Spezialfälle[Bearbeiten]

Hat der Träger des Filters f endliche Länge, so wird das Filter als FIR-System bezeichnet, FIR für endliche Impulsantwort (engl. Finite Impulse Response). Diese Filter werden auch als nichtrekursiv bzw. rückkopplungsfrei implementierbar bezeichnet

Hat der Träger des Filters f keine endliche Länge, so wird das Filter als IIR-System bezeichnet, IIR für unendliche Impulsantwort (engl. Infinite Impulse Response). Unter diesen gibt es eine Klasse von Filtern f, die als rekursiv bzw. mit Rückkopplung implementierbar bezeichnet werden, die sich als Quotient endlicher Filter darstellen lassen, d. h. es gibt zwei endliche Folgen a und b, so dass im Faltungsprodukt a * f = b gilt. Nur solche unendlichen Filter lassen sich überhaupt implementieren.

Implementierungen[Bearbeiten]

Software-Implementierung
Es können digitale Filter mit vielen Taps berechnet werden, an die keine Echtzeitanforderungen gestellt werden (z. B. in Sound-Editoren für Computer). Realisierungsmöglichkeiten sind: spezialisierte Signalprozessoren, Mikrocontroller, Mikroprozessoren.
Hardware-Implementierung
Es können digitale Filter mit Echtzeitanforderungen (z. B. in der Mobilfunktechnik, als Kanalfilter, Interpolationsfilter für digitales Fernsehen, …) aber mit weniger Taps als in Software-Implementierungen erstellt werden. Realisierungsmöglichkeiten: FPGAs, CPLDs oder Spezialbausteine.

Vor- und Nachteile von Digitalfiltern[Bearbeiten]

Digitale Filter spielen eine große Rolle in der Kommunikationstechnik. Sie haben gegenüber analogen Filtern den wichtigen Vorzug, ihre technischen Daten jederzeit exakt einzuhalten.

Vorteile[Bearbeiten]

  • keine Schwankungen durch Toleranz der Bauteile
  • keine Alterung der Bauteile
  • kein manueller Abgleich in der Fertigung notwendig, daher raschere Endprüfung von Geräten
  • mögliche Filterfunktionen, die mit Analogfiltern nur schwer oder gar nicht realisierbar sind, beispielsweise Filter mit linearer Phase.

Nachteile digitaler Filter[Bearbeiten]

  • begrenzter Frequenzbereich (durch periodische Fortsetzung des Spektrums)
  • begrenzter Wertebereich (durch Wertequantisierung)
  • durch interne Rundungs-, Abschneide- und Begrenzungsoperationen zur Wortlängenbegrenzung weisen digitale Filter in der Praxis Quantisierungsrauschen und andere nichtlineare Effekte auf, die sich vor allem in rekursiven Filtern höherer Ordnung bemerkbar machen und eine feinere Quantisierung, Nutzung von Gleitkommazahlen, angepassten Filterstrukturen wie den Einsatz von Wellendigitalfiltern erfordern können.
  • Bei nichtelektrischen Ein- und Ausgangsgrößen zusätzlicher Aufwand für die Wandlung.

Klassifikation von digitalen Filtern[Bearbeiten]

Frequenzlineare Filter[Bearbeiten]

Anhand des Aufbaus lassen sich zwei Klassen von digitalen Filtern unterscheiden:

Nichtrekursive Filter
Filter ohne Rückkopplung
Rekursive Filter
Filter mit Rückkopplung

Eine zweite Unterscheidung lässt sich anhand der Impulsantwort treffen:

FIR-Filter (Finite Impulse Response)
Filter mit endlich langer Impulsantwort. FIR-Filter beinhalten meistens keine Rückkopplung. Es gibt aber auch spezielle FIR-Filterstrukturen mit Rückkopplungen, ein Beispiel dafür sind CIC-Filter.
IIR-Filter (Infinite Impulse Response)
Filter mit unendlich langer Impulsantwort, diese weisen immer Rückkopplungszweige auf.

FIR-Filter sind grundsätzlich stabil, auch jene mit rekursiven Elementen. Dies liegt darin begründet, dass die nichtrekursiven Formen nur Nullstellen und triviale Polstellen im Ursprung in der Übertragungsfunktion aufweisen und die nichttrivialen Polstellen bei rekursiven Formen der FIR-Filter immer am Einheitskreis liegen. Nullstellen unterliegen bezüglich des Stabilitätskriteriums keiner Beschränkung in ihrer Lage im Pol-Nullstellen-Diagramm. Liegen sie alle innerhalb des Einheitskreises, so spricht man von einem minimalphasigen System, liegt mindestens eine außerhalb, so handelt es sich um ein nichtminimalphasiges System. Beim Entwurf eines FIR-Filters wird in den meisten Fällen eine Fensterung vorgenommen, um den Leck-Effekt zu verringern.

IIR-Filter sind nur dann stabil, wenn alle Polstellen innerhalb des Einheitskreises liegen. Liegen einfache Polstellen auf dem Einheitskreis, so ist das System bedingt stabil, d. h. in Abhängigkeit vom Eingangssignal. Sobald zwei oder mehr Polstellen auf demselben Punkt des Einheitskreises oder auch nur eine Polstelle außerhalb des Einheitskreises liegt, liegt ein instabiles Filter vor.

Der Vorteil von IIR Filtern liegt darin, dass sie in der Übertragungsfunktion neben den Nullstellen auch Polstellen aufweisen und damit höhere Filtergüten ermöglichen. Die Berechnung eines IIR-Filters ist gegenüber der eines FIR-Filters aufwändiger und sollte auch eine Stabilitätsuntersuchung der quantisierten Koeffizienten umfassen. Eine zuverlässige Methode zur Koeffizientenbestimmung eines IIR-Filters bietet die Methode nach Prony.

Praktisch durchgeführt wird die Koeffizientenbestimmung mit Programmen wie MATLAB.

Frequenzverzerrte Filter[Bearbeiten]

(basieren auf der Tiefpass-Tiefpass-Transformation)

Eine Unterscheidung dieser Filter ist anhand der Impulsantwort nicht mehr möglich.

  • WFIR-Filter warped FIR – sind stabil. Diese Filter basieren auf einem FIR-Filter, welches aber frequenzverzerrt ist. Sie besitzen immer eine unendliche Impulsantwort.
  • WIIR-Filter warped IIR – sind ebenfalls nur dann stabil, wenn alle Polstellen innerhalb des Einheitskreises liegen. Auch sie gehören zu den frequenzverzerrten Filtern. Sie lassen sich nicht direkt realisieren, da ein Koeffizientenmapping erforderlich ist, um verzögerungsfreie Schleifen zu entfernen.

Multiratenfilter[Bearbeiten]

Sie dienen der Konvertierung zwischen verschiedenen Abtastraten und vermeiden das Auftreten von Spiegelspektren bzw. Aliasing. Beispiele von Multiratenfilter sind CIC-Filter.

Literatur[Bearbeiten]

  •  Karl-Dirk Kammeyer, Kristian Kroschel: Digitale Signalverarbeitung. 6. Auflage. Teubner, Stuttgart 2006. ISBN 3-8351-0072-6

Weblinks[Bearbeiten]