Themen · Filter
Matched Filter
Der optimale lineare Filter zur Erkennung eines bekannten Signals in Rauschen — Herleitung, Autokorrelationseigenschaften und Verarbeitungsgewinn.
Ein Matched Filter ist kein heuristischer Trick, sondern der informationstheoretisch optimale lineare Filter, um ein bekanntes Signal $s[n]$ in additivem weißem Rauschen zu detektieren — er maximiert das Signal-Rausch-Verhältnis (SNR) am Filterausgang zum Zeitpunkt der Signal-Endezeit.
Definition und Herleitung
Der Matched Filter zu einem bekannten Referenzsignal $s[n]$ der Länge $N$ hat die Impulsantwort
$$h[n] = s^*[N-1-n]$$
— also das Referenzsignal rückwärts abgespielt und komplex konjugiert. Das wirkt zunächst willkürlich, hat aber einen einfachen Grund: Eine Faltung dreht das Filter beim Rechnen ohnehin automatisch in der Zeit um (das steckt schon in der Definition der Faltung). Nimmt man als Filter-Taps eine bereits zeitgespiegelte Kopie von $s[n]$, hebt sich diese Umdrehung genau auf — am Ende schiebt der Filter das Referenzsignal einfach unverändert über das Empfangssignal und multipliziert und summiert an jeder Position. Genau das ist die Definition der Kreuzkorrelation. Ein Matched Filter ist also nichts anderes als ein Trick, um eine Korrelation mit den Bordmitteln eines gewöhnlichen FIR-Filters (Faltung) zu berechnen:
$$y[n] = (x * h)[n] = \sum_k x[k] \cdot s^*[k - (n - N + 1)] = R_{xs}[n - N + 1]$$
Bildlich vorgestellt: Man kann sich das Referenzsignal $s[n]$ als eine kleine, durchsichtige Schablone vorstellen, die man Sample für Sample über das Empfangssignal schiebt. An jeder Position wird die Schablone mit dem darunterliegenden Signalausschnitt multipliziert und alles aufsummiert — passt die Schablone gerade genau auf ein Stück des Signals, das genauso aussieht wie sie selbst, addieren sich die Produkte zu einem großen, positiven Wert (Peak). Passt sie nicht, heben sich positive und negative Beiträge weitgehend gegenseitig auf, und der Ausgang bleibt klein. Der Filterausgang $y[n]$ ist also nichts anderes als eine fortlaufende „Wie gut passt die Schablone hier gerade?"-Kurve — und ihr höchster Punkt markiert exakt die Position, an der das gesuchte Signal im Rauschen steckt.
Ein winziges Zahlenbeispiel macht das greifbar. Referenzsignal $s = [,1,\ -1,\ 1,]$, eingebettet in ein längeres, verrauschtes Empfangssignal:
Position genau richtig (τ passt):
x-Ausschnitt: 1.0 -0.9 1.1
s: 1 -1 1
Produkte: 1.0 0.9 1.1
Summe: 3.0 ← deutlicher Peak
Position eins daneben (τ passt nicht):
x-Ausschnitt: 0.1 1.0 -0.9
s: 1 -1 1
Produkte: 0.1 -1.0 -0.9
Summe: -1.8 ← kein Peak, deutlich kleiner
Genau diese Rechnung — Schablone anlegen, multiplizieren, aufsummieren, eine Position weiterschieben, wiederholen — ist es, was der Matched Filter als Faltung ausführt. Bei einer langen Pseudozufallsfolge (wie der PZF-Folge von DCF77) passiert exakt dasselbe, nur mit hunderten statt drei Werten: Die Schablone passt nur an einer Stelle wirklich, überall sonst mitteln sich die zufällig verteilten Vorzeichen heraus — daher der scharfe, eindeutige Korrelationspeak.
Die Position des Maximums von $y[n]$ ist der Maximum-Likelihood-Schätzer für die Ankunftszeit (Verzögerung $\tau$) des Signals — das ist die Grundlage jeder Matched-Filter-basierten Zeit- oder Symbolsynchronisation.
Zwei Implementierungswege
| Verfahren | Prinzip | Eigenschaft |
|---|---|---|
| Zeitkontinuierlicher FIR-Filter | Taps = zeitgespiegelte, konjugierte Referenz | läuft sample-für-sample mit, liefert fortlaufendes Korrelationssignal |
| Blockweise FFT-Korrelation | $\text{IFFT}(\text{FFT}(x) \cdot \overline{\text{FFT}(s)})$ | rechnerisch günstiger bei langen Folgen, aber grundsätzlich blockbasiert |
Der Unterschied ist mehr als Implementierungsdetail: Eine blockbasierte FFT-Korrelation kann ihr Ergebnis erst ausgeben, wenn ein vollständiger Block eingetroffen ist — bei langen Referenzsignalen (z. B. eine ganze Sekunde einer PN-Folge) entsteht dadurch eine Beobachtungslatenz, die nichts mit Rechengeschwindigkeit zu tun hat. Ein durchgerechnetes Beispiel dazu (inklusive einer Technik, diese Latenz aus dem Ausgabepfad zu entfernen) steht im Artikel Korrelative Phasenauswertung.
Autokorrelation und Verarbeitungsgewinn
Für ein einzelnes, isoliertes Referenzsignal wie einen Rechteckpuls ist der Matched Filter einfach ein Boxcar-Filter über die Pulsdauer — genau dieses Prinzip nutzt der Matched Filter in der DDK9-Dimensionierung, um aus verrauschten NRZ-Bits ein dreieckförmiges Auge mit Maximum in der Bitmitte zu formen.
Deutlich leistungsfähiger wird das Prinzip mit Pseudozufallsfolgen (PN-Folgen, Maximalfolgen) als Referenzsignal — wie sie z. B. bei GPS-Codes oder der PZF-Phasenmodulation von DCF77 zum Einsatz kommen. Eine Maximalfolge der Länge $N$ Chips hat eine nahezu deltaförmige Autokorrelationsfunktion: einen scharfen Hauptpeak bei $\tau = 0$ und Nebenkeulen der Größenordnung $1/N$ bezogen auf den Hauptpeak. Das ergibt einen Verarbeitungsgewinn von
$$G_p \approx 10 \cdot \log_{10}(N) ;\text{dB}$$
Bereits bei einer Folgenlänge von einigen hundert Chips ergibt das 20–30 dB SNR-Gewinn gegenüber der Einzel-Chip-Detektion. Die erreichbare Zeitauflösung ist dann nicht mehr durch eine Filterflanke begrenzt, sondern durch die Schärfe des Korrelationspeaks — bei Bandbreite $B$ des Chip-Signals typischerweise
$$\sigma_\tau \sim \frac{1}{B \sqrt{2 \cdot \text{SNR} \cdot N}}$$
Sub-Sample-Genauigkeit durch Peak-Interpolation
Die Abtastrate ist oft gröber als die gewünschte Zeitauflösung. Statt die Peak-Lage dem nächstgelegenen Sample zu entnehmen, lässt sich die tatsächliche Position durch parabolische Interpolation der drei Abtastwerte um das Maximum herum schätzen — eine Standardtechnik aus GPS-Codekorrelatoren, die den Quantisierungsfehler um etwa eine Größenordnung reduziert.
Korrelative Phasenauswertung
Matched Filter auf die PZF-Phasenmodulation von DCF77 angewendet — inklusive Latenzbilanz.
DDK9-Dimensionierung
Matched Filter als Boxcar über eine Bitdauer — Grundlage für Symbol-Sync und Augendiagramm.
FIR-Filter
Tap-Zahl, Fensterwahl und Rechenlast eines FIR-Filters — der Matched Filter ist ein Spezialfall davon.
Faltung
Die mathematische Grundoperation, aus der sich der Matched Filter als Kreuzkorrelation ableitet.