FM-Diskriminatoren im Vergleich

Zwei Algorithmen, mit denen ein SDR aus I/Q-Samples die Frequenzabweichung eines FM-Signals zurückgewinnt — und wie sie sich im direkten Vergleich schlagen.

Ein Diskriminator wandelt Frequenz- oder Phasenänderungen eines Signals in eine dazu proportionale Amplitude um (siehe Glossar) — die klassische Demodulationsstufe für FM- und PM-Signale. Anders als bei AM (siehe Produktdetektor) trägt die Amplitude des FM-Signals keine Information, ein einfacher Hüllkurvendetektor versagt hier grundsätzlich.

Klassische Analogempfänger lösten diese Aufgabe mit reinen LC-/Transformatorschaltungen — u. a. dem Foster-Seeley-Diskriminator (1936, benötigt eine vorgeschaltete Begrenzerstufe) und dem daraus weiterentwickelten Ratio-Detektor (1940er, mit Eigenbegrenzung gegen AM-Störungen, siehe Glossareintrag Ratiometrischer Diskriminator). Beide sind heute nur noch von historischem Interesse und werden hier nicht weiter vertieft — der Rest dieses Artikels behandelt ausschließlich die beiden Verfahren, die ein SDR tatsächlich einsetzt: rein rechnerisch auf den I/Q-Samples, ganz ohne analoge LC-Bauteile.

1. Digitaler Quadraturdemodulator

Der SDR-Ansatz braucht kein Phasenschiebernetzwerk und keinen Transformator — die Phasenbeziehung steckt bereits vollständig in den komplexen I/Q-Samples selbst. Für zwei aufeinanderfolgende Samples $s[n]$ und $s[n-1]$ liefert

$$\Delta\varphi[n] = \arg\big(s[n]\cdot s[n-1]^{*}\big)$$

direkt die Phasendifferenz zwischen ihnen — und die ist per Definition proportional zur momentanen Frequenzabweichung vom Mittenwert: $\Delta\varphi[n] \approx 2\pi \cdot \Delta f[n] / f_s$. Diese eine Zeile Rechnung (Multiplikation mit dem konjugiert Komplexen plus arg()/atan2) ersetzt komplett, wofür ein analoger Quadraturdemodulator ein außenliegendes LC- oder Keramikresonator-Bauteil brauchte. Genau dieses Prinzip implementiert der Quadratur-Demodulation-Block in GNU Radio.

Eigenschaft: praktisch verzögerungsfrei (jedes Sample liefert sofort einen neuen Schätzwert), aber empfindlich gegenüber Rauschen — jede Störung auf einem einzelnen Sample schlägt direkt und ungefiltert auf den Ausgang durch.

2. PLL-Diskriminator

Der zweite SDR-taugliche Ansatz nutzt einen Phase Locked Loop: Ein numerisch gesteuerter Oszillator (NCO) wird über eine Rückkopplungsschleife kontinuierlich der Eingangsfrequenz nachgeführt. Die entscheidende Erkenntnis: Die Regelgröße, die den NCO auf die aktuelle Eingangsfrequenz nachführt, ist bereits das demodulierte Signal — sie muss ja exakt der momentanen Frequenzabweichung folgen, um die PLL im Lock zu halten. Ausführlich beschrieben im PLL-Artikel, Abschnitt „FM-Demodulation"; der Simulator unten verwendet exakt dieselbe PI-Regler-Formel (nach Gardner) wie die dort gezeigte PLL-Klasse.

Eigenschaft: Die Schleifenbandbreite (Loop Bandwidth) legt fest, wie schnell bzw. über welchen Frequenzbereich die PLL auf Änderungen reagiert — man kann sie sich als Grenzfrequenz eines Tiefpassfilters vorstellen, das über der Nachführung liegt. Eine schmale Schleifenbandbreite mittelt schnelle Schwankungen heraus (rauscharm, aber träge/verzögert), eine breite folgt auch schnellen Änderungen nahezu verzögerungsfrei (treu, aber rauschanfälliger). Sie wirkt damit als einstellbarer Tiefpass auf das demodulierte Signal — mehr Rauschunterdrückung, aber mit Verzögerung/Dämpfung bei schnellen Modulationsänderungen erkauft (siehe Simulator).

3. Vergleich

Diskriminator Verzögerung Rauschverhalten Einstellbar?
Digitaler Quadraturdemodulator praktisch keine volles Rauschen schlägt direkt durch nein — feste Rechenvorschrift
PLL-Diskriminator abhängig von Schleifenbandbreite Rauschen wird durch Loop-Filter gedämpft ja — Schleifenbandbreite als Kompromiss-Parameter

4. Simulator: Quadraturdemodulator vs. PLL-Diskriminator

Beide oben beschriebenen Algorithmen verarbeiten hier live dasselbe synthetische FM-Testsignal (als komplexe I/Q-Samples erzeugt) — der Quadraturdemodulator nach der Formel aus Abschnitt 1, der PLL-Diskriminator mit der PI-Regler-Formel aus Abschnitt 2.

Demoduliertes Signal: Quadraturdemodulator vs. PLL

Beide Methoden demodulieren live dasselbe FM-Testsignal (Sinuston als Modulationssignal). Die PLL-Schleifenbandbreite bestimmt einen echten Zielkonflikt: zu schmal, und schnelle Modulationsänderungen werden gedämpft/verzögert; zu breit, und Rauschen dringt ungefiltert durch — während der Quadraturdemodulator praktisch verzögerungsfrei, aber deutlich rauschempfindlicher arbeitet.

Modulationsfrequenz $f_m$: 150 Hz
Frequenzhub $\Delta f$: 300 Hz
Rauschen: 0.10
PLL-Schleifenbandbreite: 0.05
— Original ● Quadraturdemodulator ● PLL-Diskriminator
RMS-Abweichung Quadratur:
RMS-Abweichung PLL:

5. Praktischer Einsatz

Digitaler Quadraturdemodulator in GNU Radio: Der Quadratur-Demodulation-Block ist die Standardlösung für schmal- und breitbandiges FM sowie FSK (u. a. RTTY, LoRa) in praktisch jedem SDR-Flowgraph — einfach zu konfigurieren (siehe Gain-Formel im Block-Artikel), aber wie in Abschnitt 1 beschrieben rauschempfindlich, weshalb ihm meist eine Filterstufe vorausgeht.

PLL-Diskriminator für rauscharme Anwendungen: Wo Rauschunterdrückung wichtiger ist als minimale Verzögerung — etwa bei schwachen Signalen nahe der Empfangsschwelle —, ist ein PLL-basierter Diskriminator die bessere Wahl, weil die Schleifenbandbreite gezielt auf die benötigte Audiobandbreite abgestimmt werden kann (siehe Simulator oben).

6. Grenzen

  • PLL-Diskriminator: Bandbreite gegen Rauschen: Wie der Simulator oben zeigt, dämpft eine zu schmale Schleifenbandbreite schnelle Modulationsänderungen (Audio klingt gedämpft/verzögert), während eine zu breite Bandbreite mehr Rauschen durchlässt — ein Zielkonflikt, den es beim Quadraturdemodulator in dieser Form nicht gibt, dafür ist dieser bei Rauschen empfindlicher.
  • PLL braucht einen Lock-Bereich: Verlässt die Eingangsfrequenz den Fangbereich der Schleife, bricht die Demodulation komplett zusammen, bis die PLL wieder einrastet — ein Fehlermodus, den der kontinuierlich, ohne Rückkopplungsschleife arbeitende Quadraturdemodulator nicht kennt.
  • Quadraturdemodulator: kein Kompromiss-Parameter: Die Formel aus Abschnitt 1 hat keinen einstellbaren Parameter wie die PLL-Schleifenbandbreite — Rauschunterdrückung muss, falls nötig, über eine vor- oder nachgeschaltete Filterstufe erfolgen, nicht über den Diskriminator selbst.