Sie sind auf Seite 1von 89

Grundlagen der digitalen

Nachrichtenübertragung
für SDR
Baunatal, 12. September 2015
Gerrit Buhe, DL9GFA
SDR = Radio + Digitale Signalverarbeitung

● Radio-Architekturen und deren Funktionsblöcke


● Aufbau DSP-System
● Digitalisierung und Abtasttheorem
● Unterabtastung und Überabtastung
● Schlüsselbauelement AD-Wandler
● Zeit- und Frequenzbereich
● Lineare zeitinvariante (LTI-) Systeme
● Impulsantwort zu Übertragungsfunktion
● Werkzeuge der digitalen Signalverarbeitung → Octave Übung: Signale, Mischer
● FIR-Filter → Octave Übung: Filter
● IIR-Filter → Octave Übung: Oszillator
● Quadratursignalverarbeitung
● GNU Radio I
● Übung: Erzeugung von Signalen, Ein-, Ausgabe
● Übung: Filtern
● Übung: Demodulieren
● Übung: FM-Stereo-Multiplex-Empfänger mit RDS

2 Grundlagen SDR DL9GFAQ


RX-Architekturen
● Doppel-Super mit analoger Demodulation, klassische Amateurfunk-Empfänger
● 1. ZF analog und 2. ZF analog, Basisband analog

Vorselektion LNA ZF-Filter ZF-Verst. ZF-Filter ZF-Verst. TP

2. ZF z.B.
1. ZF z.B.
9MHz, oder
70.02MHz
455kHz
VFO

3 Grundlagen SDR
RX-Architekturen
● Doppel/Mehrfach-Super mit AD-Wandlung in niedriger ZF
● 1. ZF analog, AD-Wandler in der 2. niedrigen ZF, Basisband digital (Low-IF)
● Wird von den meisten heutigen Afu-TRX eingesetzt (Icom, Kenwood, Yaesu),
teilweise mit zweiter/dritter analoger ZF
● Beispiele
● IC7600, IC9100: 64.455MHz → 36kHz
● FT450: 67.899MHz → 24kHz
● IC7400, IC756PRO3: 64.455MHz → 455kHz → 36kHz
● TS590: 73.095MHz → 10.695MHz → 24kHz
● TS2000: 69.085MHz → 10.695MHz → 455kHz → 12kHz

Vorselektion LNA ZF-Filter ZF-Verst. ZF-Filter


A
DSP
D

1. ZF z.B. Digital
Niedrige ZF 20kHz
70.02MHz

VFO

4 Grundlagen SDR
RX-Architekturen
● Einfach-Super mit AD-Wandlung in erster analoger ZF
● Konzepte unterscheiden sich nach Low-IF (1kHz...5MHz) und High-IF (...400MHz)
● Viele professionelle Empfänger mit hohen Performance-Anforderungen nutzen dieses
Konzept mit High-IF (z.B. Mobilfunk-Basisstationen mit 246MHz ZF)

Vorselektion LNA. ZF-Filter


A
DSP
D

Digital

5 Grundlagen SDR
RX-Architekturen
● Einfach-Super mit analoger Quadraturdemodulation
● Digitalisierung im Basisband
● Konzept verdrängt durch AD-Wandler in 1. ZF oder Zero-IF/Low-IF

analoger
Q-Dem. TP I
A
Vorselektion LNA. ZF-Filter
D
DSP
A

D
TP Q Digital

70MHz

6 Grundlagen SDR
RX-Architekturen
● Direktmischer mit analoger Quadraturdemodulation
● Digitalisierung im Basisband → Zero-IF
● Auch als Ausführung nach Tayloe mit schnellen Bus-Schaltern (QSD)
● Einsatzbeispiele:
● SoftRock
● Flexradio 1500
● Funkamatuer-SDR-Kits
● Lima-SDR
● Sogenanntes SDR der 2. Generation
analoger
Q-Dem. TP I
A
Vorselektion LNA
D
DSP
A

D
TP Q Digital

VFO

7 Grundlagen SDR
RX-Architekturen
● Direktabtastung des Antennensignals („Direct Digital Sampling“)
● Hauptsächlich bei relativ niedrigen Eingangsfrequenzen genutzt (Amateurfunk <65MHz)
● Auch bei höheren Eingangsfrequenzen nutzbar durch Unterabtastung
● Sogenanntes „SDR der 3. Generation“
● Einsatzbeispiele
● Perseus
● Flexradio 6000-Serie
● HPSDR
● Zeus

Vorselektion LNA.
A
DSP
D

Digital

8 Grundlagen SDR
Aufbau DSP-System

DSP

9 Grundlagen SDR DL9GFA


Digitalisierung
● Digitalisierung eines Signales bedeutet
● Quantisierung in der Zeit: Messung der Amplitude eines analogen Signals in
regelmäßigen Abständen
● Quantisierung der Amplitude: Umwandlung der kontinuierlichen Spannungswerte
in eine diskrete Folge von numerischen Werten

● Abtasten in diskreten
Zeitabständen
● Quantisieren=Runden auf
verfügbare Stufen
● Zahlenfolge:
0,1,1,2,3,3,4,4,4,4,4,4,3,3,2,1,1,
0,-1,-2,-2,-3,-3,-4,-4,-4,-4,-4,-3,
-3,-2,-2, …
● Quantisierungsfehler:
0,-0.25,0.47,0.14,-0.26,0.23,
-0.38,-0.12,-0.01

10 Grundlagen SDR DL9GFA


Digitalisierung (Spektrum)
● Das Spektrum wiederholt sich um Vielfache der Abtastfrequenz
● Beispiel im Bild fs=10kHz, fc=1kHz
● Auch numerische Übertragungsfunktionen (z.B. digitale Filter) wiederholen sich
um Abtastfrequenzvielfache

● Versuch der digitalen


Filterung (rot)
→ Funktioniert nicht, da sich
auch dessen Übertragungs-
funktion wiederholt
● Auch höherfrequente Signale
können zu den Abtastwerten
passen
→ hier z.B. auch -9kHz und
11kHz

11 Grundlagen SDR DL9GFA


Abtasttheorem (Shannon/Nyquist)
● Das Abtasttheorem besagt, daß die Abtastfrequenz mindestens doppelt so hoch
wie die höchste Nutzsignalfrequenz (bzw. Bandbreite BW) sein muß

f s > 2⋅BW
● In diesem Fall wird das abgetastete Signal vollständig und eineindeutig durch die
Abtastwerte beschrieben

● Bei Nichteinhaltung erscheinen


„neue“ Signalanteile, die in der
Regel stören
→ Aliasing
● fs = 10 kHz
fc = 9
2
3
4
5
6
7
8
1 kHz wir sehen 1
4 kHz!
3
2

12 Grundlagen SDR DL9GFA


Abtasttheorem (Shannon/Nyquist)
● Um Aliasing zu vermeiden, muß vor einer AD-Wandlung ein analoges
Antialiasing-Filter für die Unterdrückung unerwünschter Frequenzanteile sorgen

● Das gilt ebenso für Abtastratenreduzierung (Dezimierung), hier geschieht


dies durch digitale Filter vor der Dezimierung
● Bei f s =2×BW bedarf es eines idealen nicht realisierbaren Filters, daher werden
wenigstens geringfügig höhere Abtastraten eingesetzt (oder kleinere BW)

Nyquist-Zone 1
Nyquist-Zone 2

Nyquist-Zone 3
Nyquist-Zone 4

Nyquist-Zone 5
● Die Frequenzgrenze bei ½ f s wird
als Nyquist-Frequenz (hier 5kHz)
und die resultierende Bandbreite
als Nyquist-Bandbreite bezeichnet

● Die sich wiederholenden Bänder


nennt man Nyquist-Zonen

13 Grundlagen SDR
Unterabtastung / Undersampling
● Bei zu geringer Abtastrate falten sich alle Signale der Nyquistzonen > 1 in diese erste
● Gezielte Nutzung des Aliasings nennt man Unterabtastung

● Auf diese Weise kann man Zwischenfrequenzen bis zu 400MHz direkt abtasten
● Die analoge Eingangsbandbreite des AD-Wandlers muß dazu hoch genug sein
● Das gewünschte Sampling-Image ist mit einem Bandpaß zu selektieren
● Achtung, sehr kritisch hinsichtlich Abtastjitter!

S(f)

4 48 56 100 108 152 160

Fs/2 Fs=52 2Fs=104 3Fs=156


F / MHz

14 Grundlagen SDR
Abtastjitter
● Begrenzt die Dynamik (SNR) einer AD- oder DA-Wandlung durch zusätzliches
Abtastjitterrauschen

● Einfluß ist abhängig von Steigung des Ein-/Ausgangssignals im Abtastmoment, daher


von Amplitude und Frequenz
● Vor allem bei hoher Unterabtastung nicht vernachlässigbar

Eingangssignal
des ADC bzw.
Ausgangssignal
des DAC
U
Amplitudenfehler

t - Taktjitter
Wird in rms
angegeben

15 Grundlagen SDR
Überabtastung / Oversampling
● Höhere Abtastrate verteilt das Quantisierungsrauschen auf größere Nyquist-
Bandbreite, daher fällt weniger Rauschleistung in die konstante Nutzbandbreite

● Rauschen außerhalb der Nutzsignalbandbreite wird mit digitalen Filtern unterdrückt


● Es ergibt sich ein echter Dynamikgewinn, auch Prozessgewinn (PG) genannt

fs
PG=10∗log  
2BW

16 Grundlagen SDR
Aufbau DSP-System
● Analoge Filter am Übergang Analog → Digital → Analog sind wichtig!

DSP

17 Grundlagen SDR DL9GFA


AD-Wandler
● Werden in erster Linie charakterisiert durch
● Maximale Abtastrate, Signal-Rausch-Verhältnis (SNR)
● Spurious Free Dynamic Range (SFDR)
● Weitere Parameter sind
● Total Harmonic Distortion (THD), SINAD (SNR inkl. THD)
● Effective Number Of Bits (ENOB)
● Differentielle und Integrale Nichtlinearität (DNL, INL)
● Es gibt mehrere auf besondere Anforderungen hin optimierte Architekturen

18 Grundlagen SDR
AD-Wandler
● Werden in erster Linie charakterisiert durch
● Maximale Abtastrate, Signal-Rausch-Verhältnis (SNR)
● Spurious Free Dynamic Range (SFDR)
● Weitere Parameter sind
● Total Harmonic Distortion (THD), SINAD (SNR inkl. THD)
● Effective Number Of Bits (ENOB)
● Differentielle und Integrale Nichtlinearität (DNL, INL)
● Es gibt mehrere auf besondere Anforderungen hin optimierte Architekturen

SAR-Wandler
(Successive
Approximation
Register)

19 Grundlagen SDR
AD-Wandler
● Werden in erster Linie charakterisiert durch
● Maximale Abtastrate, Signal-Rausch-Verhältnis (SNR)
● Spurious Free Dynamic Range (SFDR)
● Weitere Parameter sind
● Total Harmonic Distortion (THD), SINAD (SNR inkl. THD)
● Effective Number Of Bits (ENOB)
● Differentielle und Integrale Nichtlinearität (DNL, INL)
● Es gibt mehrere auf besondere Anforderungen hin optimierte Architekturen

Sigma-Delta-
Wandler

20 Grundlagen SDR
AD-Wandler
● SNR – Signal-Rausch-Verhältnis, SFDR -Spurious Free Dynamic Range
● Vorgegeben durch die Anzahl der Quantisierungsstufen, bzw. Anzahl Bits n
● SNR ist in Nyquistbandbreite angegeben, bei geringerer BW ergibt sich PG

SNRideal =n∗6.02dB1.76dBPG 

SNR wird ohne


SFDR wird teilw. Harmonische &
inkl. oder exkl. DC berechnet
Harmonische
angegeben
SNR=55dB
SFDR=69dB
Nicht durch
Applikation nutzbar

FFT-Gewinn=27dB

21 Grundlagen SDR
AD-Wandler
● THD – Total Harmonic Distortion
● Verhältnis der effektiven Leistungen (rms) von Eingangssignal zu ersten 6
(manchmal 9) Harmonischen, angegeben in dB oder dBc
● SINAD – Signal to Noise And Distortion (S/(N+D))
● Verhältnis der effektiven Leistung des Eingangssignals zu allen anderen
spektralen Komponenten (Rauschen, Harmonische) in der Nyquist-Bandbreite
außer Gleichanteil
● ENOB – Effective Number Of Bits
● Andere Methode, um SINAD zu spezifizieren
● Zurückrechnung von vorliegender Dynamik auf Anzahl der Bits eines idealen
AD-Wandlers

SINAD−1.76dB
ENOB=
6.02dB

22 Grundlagen SDR
AD-Wandler
● Dithering – Einspeisen von Rauschen
● Durch Korrelation von Eingangssignal und Quantisierungsfehlern
konzentriert sich Rauschleistung bei Harmonischen
● Abhilfe durch Hinzufügen von Rauschen, zum „Verwischen“ dieser
Quantisierungsfehler (rechts)
● Nutzbare Dynamik kann dadurch drastisch erhöht werden, Aussteuer-
reserve für Rauschleistung ist i.d.R. nur sehr gering

Ohne Dithering Mit Dithering


1

Aliasing der
Harmonischen
2
3 4
5 6
7

25 Grundlagen SDR
Zeit- und Frequenzbereich
● Jedes periodische Signal läßt sich eindeutig aus einer diskreten Folge von
harmonischen Signalen durch Addition aufbauen → Harmonische Synthese
● Der Synthesevorgang ist umkehrbar eineindeutig
● Jedes periodische Signal läßt sich in eine diskrete
Folge von harmonischen Signalen zerlegen → Harmonische Analyse
● 1822 beschrieben durch Jean Babtiste Joseph Fourier (1768-1830)
Fourier-Reihe:

a0 ∞
f t = ∑ a n cos  n t b n sin n  t 
2 n=1

Synthese des
Sägezahns mit
1...5 Termen der
Fourierreihe

26 Grundlagen SDR
Zeit- und Frequenzbereich
Zusammensetzung eines Rechteck-ähnlichen Signals im Zeit- und Frequenzbereich

27 Grundlagen SDR
Zeit- und Frequenzbereich
● Die Beschreibung eines Zeitsignals durch Angabe seiner
Frequenzanteile heißt Spektrum des Signals

● Die kontinuierliche Fourier-Transformation ist definiert:


e
 j t
Zeit → Freq.: X ( )   x (t)d t



1

j t
Freq. → Zeit: x (t)  e  X ( ) d 
2 

● Die Fourier-Transformation ist eineindeutig umkehrbar

28 Grundlagen SDR
Lineare zeitinvariante Systeme
● System: erzeugt aus Eingangsgrößen Ausgangsgrößen

x(t) LTI-System y(t)

● Zeitinvarianz: Das Verhalten ändert sich nicht über Zeit.


wenn x1(t)  y1(t)
folgt x1(t-∆t)  y1(t-∆t)

● Linearität: Es gilt das Überlagerungsprinzip (Superpositionsprinzip).


wenn x1(t)  y1(t)
und x2(t)  y2(t)
folgt ax1(t) + bx2(t)  ay1(t) + by2(t)

29 Grundlagen SDR
Beschreibung LTI-Systeme
● LTI-Systeme können im Zeitbereich durch ihre Impulsantwort beschrieben werden
● Die Impulsantwort ist die Reaktion des Systems auf einen Dirac-Impuls ∂(t)

x (t) = (t) y (t) = a (t)

1 

t t
0 0

● Jedes beliebige Eingangssignal läßt sich als Summe zeitlich verschobener und
gewichteter Dirac-Impulse darstellen
● Ausgangssignal y(t) ist Faltungs-

x (t )   x (i )  (t  i ) summe mit Impulsantwort a(t):
i 

x (t) y (t)  
i
x (i )  a (t  i )

● Man schreibt abgekürzt auch:



y (t)  x (t)  a (t)
t
0
30 x (0 )(t) x (2 )(t-2 ) Grundlagen SDR DL9GFA
x ()(t-) x ( 3 ) (t- 3 )
Beschreibung LTI-Systeme
● Die Impulsantwort beschreibt das LTI-System vollständig
● Was heißt das?

31 Grundlagen SDR DL9GFA


Beschreibung LTI-Systeme
● Die Impulsantwort eines LTI-Systems ist über die Fourier-Transformation mit der
Übertragungsfunktion des Systems verbunden!

Fourier-
Transf.

● Im Zeitbereich wird das Ausgangssignal eines Systems durch die Faltung vom
Eingangssignal mit der Impulsantwort ermittelt
● Im Frequenzbereich wird das Ausgangssignal durch Multiplikation mit der
Übertragungsfunktion des Systems ermittelt

32 Grundlagen SDR DL9GFA


Werkzeuge dig. Signalverarbeitung
● DSP-Algorithmen werden i.d.R mit Hilfe numerischer Simulations-SW entwickelt
● Kommerzieller Marktführer ist MathWorks mit Matlab
● Es gibt sehr gute alternative Simulationsprogramme die frei verfügbar sind
● GNU Octave – Matlab-ähnliche Syntax
● Scilab – Komfortabler insb. für Windows-Nutzer

33 Grundlagen SDR DL9GFA


Werkzeuge – Octave.org
● Vor allem für Linux und POSIX-Systeme entwickelt, aber auch unter Windows und
Mac OS lauffähig

34 Grundlagen SDR DL9GFA


Werkzeuge – Scilab.org
● Nicht GNU GPL, aber andere freie Lizenz – Sehr gut unter Windows nutzbar

35 Grundlagen SDR DL9GFA


FIR-Filter
● FIR – Finite Impulse Response (endliche Impulsantwort) → Immer stabil!
● Durch garantierte Stabilität meist Basis adaptiver Filter (Veränderung der
Koeffizienten zur Laufzeit)
● Direkte Implementierung der Faltungssumme (Zeitbereich)
● Koeffizienten h(0)...h(P-1) entsprechen den Stützstellen der Impulsantwort
● Symmetrische FIR-Filter sind phasenlinear und haben eine Gruppenlaufzeit, die
der halben Filterlänge entspricht
● Verstärkung im Durchlaßbereich ist Summe aller Koeffizienten

Eingang für
ADC-Werte

P −1 Ausgang
zum DAC
36
y (k )= ∑ h (i)⋅x (k −i) Grundlagen SDR DL9GFA
i=0
FIR-Filter - Entwurf
● Einfachste Methode: Frequenzgang (Übertragungsfunktion) vorgeben und
Fourier-Transformieren → Impulsantwort
● Wenn es sich um ein TP, BP, HP handelt, kann gleich die SINC-Funktion verwendet
werden (Fourier-Transformierte eines „Rechtecks“)
● Impulsantwort auf Filterlänge (= Anzahl Koeffizienten) begrenzen und
Fensterfunktion anwenden zur Unterdrückung des Leck-Effektes

Impulsantwort mit Fensterfunktionen Übertragungsfunktion mit


37 Grundlagen SDR
versch. Fensterfunktionen DL9GFA
FIR-Filter - TP-BP-Transformation
● TP → BP-Transformation durch Multiplikation der Impulsantwort mit Kosinus
entsprechender Frequenz (Mittenfrequenz des BP, 3kHz im Bild)
● Bei Verwendung des Sinus' wird eine Phasenverschiebung +/- 90° erzielt
● TP → HP-Transformation durch Vorzeichenwechsel jedes zweiten Koeffizienten

38 Grundlagen SDR DL9GFA


Digitale Filter – Adaptive Filter
● Adaptive Filter optimieren nach einer Rechenvorschrift selbständig ihre Koeffizienten
● Meist wird ein Fehler ermittelt, dessen Quadrate durch Tunen der Koeffizienten minimiert werden
sollen - LMS–Algorithmus (Least Mean Square)
● Um Stabilität sicher zu stellen, werden fast ausschließlich FIR-Filter eingesetzt
● Anwendung: Automatische Multi-Lochfilter (Notches), Rauschunterdrückungs-filter,
Kanalentzerrer (Equalizer), Echounterdrückung

Hier ist Fehler


das Nutzsignal

Automatisches „Multi-Notch“

39 Grundlagen SDR
Digitale Filter – Adaptive Filter
● Adaptive Filter optimieren nach einer Rechenvorschrift selbständig ihre Koeffizienten
● Meist wird ein Fehler ermittelt, dessen Quadrate durch Tunen der Koeffizienten minimiert werden
sollen - LMS–Algorithmus (Least Mean Square)
● Um Stabilität sicher zu stellen, werden fast ausschließlich FIR-Filter eingesetzt
● Anwendung: Automatische Multi-Lochfilter (Notches), Rauschunterdrückungs-filter,
Kanalentzerrer (Equalizer), Echounterdrückung

Hier ist das


gefilterte das
Nutzsignal

Rauschunterdrückung

40 Grundlagen SDR
IIR-Filter
● IIR – Infinite Impulse Response (unendliche Impulsantwort (möglich))
● Besitzen Rückkopplungen → können instabil sein
● Sehr recheneffiziente Filter mit wenigen Multiplikationen realisierbar
● Filterentwurf schwieriger als bei FIR-Filtern, i.d.R. mit spezieller Design-Software
● Sehr empfindlich auf Quantisierungseffekte (Rundungen)
● Werden meist als kaskadierte Filter 2-ter Ordnung (biquads) eingesetzt

Direktform I Direktform II, auch kanonische


41 Grundlagen SDR DL9GFA
IIR - Schweizer Taschenmesser
● Mit der IIR-Topologie kann nur anhand unterschiedlicher Koeffizienten enorm
viel realisiert werden:
TP-,BP-,HP-Filter, Differenzierer, Integrierer, Oszillator, Kamm-Filter, …
● Beispiel digitaler Oszillator (Grenzfall der Stabilität)

Digitaler IIR-Oszillator

42 Grundlagen SDR DL9GFA


Bsp. digitaler Oszillator
● Effiziente Implementierung als IIR-Struktur an Stabilitätsgrenze
● Nur zwei Speicherstellen und eine Multiplikationen nötig
● Sehr präziser Sinus / Cosinus
● Raster der möglichen stabilen Frequenzen abhängig von
arithmetischer Wortbreite (selbst bei Fixpoint recht unkritisch)
● Bei Modulation der frequenzbestimmenden Koeffizienten u.U.
instabil  zur Vermeidung sind letzte Zustände erneut zu berechnen

Quadraturoszillator als System 1. Ordnung (stabil!)

43 Grundlagen SDR
Adaptiver Entzerrer
● Durch Mehrwegeausbreitung wird das Signal mit verzögerten Abbildern überlagert
● Übertragungsfunktion des Filters wird so eingestellt, daß Augenöffnung am Entscheider
maximal wird
● Dazu werden (einfach dargestellt) im Filter wieder zeitlich verzögerte Abbilder subtrahiert

44 Grundlagen SDR
Beispiel digitale AGC
● Besteht aus wenigen Funktionsblöcken und ist mit wenigen Code-Zeilen effizient implementiert
● Die Zeitkonstanten können auch aus einer Look-up Table anhand von env(n-1) ermittelt werden
● Das Stellglied kann auch extern über einen DA-Wandler angesteuert werden

45 Grundlagen SDR
Grundlagen der Quadratur-
Signalverarbeitung
Inhalt Quadratursignalverarbeitung

● Beschreibung eines Nachrichtensignals


● Quadraturdemodulator
● Quadraturmodulator
● Darstellung einfacher Signale
● SSB-Demodulation
● FM-Demodulation
● Digitale Modulation
● Augendiagramm
● Fehlergrößen
● Gütekriterien
● Zusammenfassung

47 Grundlagen SDR DL9GFA


Beschreibung Nachrichtensignal

j 2  f c t c t 
● Zeiger (Phasor) s t = Ac t ⋅e
● Länge entspricht Amplitude
● Winkel zur Abzisse („I-Achse“)
ist Phase Q j

s
● j-Operator zeigt orthogonale (90°) ude
p lit
Dimension an m
A
Phase
● Unterschiedliche
Darstellungsformen: I
j 2  f c t c t 
s t = Ac t ⋅e
s t = Ac t ⋅ I t  j⋅Q  t  „IQ-
Ebene“
s t = Ac t ⋅ cos 2  f c t t  j⋅sin  2  f c t t 

48 Grundlagen SDR DL9GFA


Beschreibung Nachrichtensignal

Realteil = cos( 2 pi f t ) 
Realteil= Ac t ⋅cos 2  f c t t  ● Zur eindeutigen Beschreibung
eines Signals sind immer zwei
Parameter nötig:
● Amplitude und Phase, oder
Doppeldeutigkeit, wenn
● Real- und Imaginärteil
Imaginärteil fehlt
● Die unterschiedlichen
Darstellungen sind in einander
umrechenbar
Imag  Imaginärteil = j sin( 2 pi f t ) 
0.8 j 

0.6 Real

Imaginärteil = Ac t ⋅sin 2  f c t t 


49 Grundlagen SDR DL9GFA
Quadraturdemodulation
● Quadraturdemodulator
● Wie konventioneller Produktdetektor nur mit zwei Pfaden, die um
90° phasenverschoben angesteuert werden (LO)
● Tiefpaß unterdrückt jeweils das Mischprodukt der Summenfrequenz

Q
● Amplitude: A=   I² Q²  Phase: =arctan  
I
I

50 Grundlagen SDR DL9GFA


Quadraturdemodulation-Spezial
● Quadraturdemodulator – Spezialfall F s =4 F zf
● Durch geschickte Wahl von Abtastrate zu ZF ist drastische Vereinfachung des
NCO möglich:
4
F s = F zf k =1,3 ,5 ,...
k
● Es muß für jeden Pfad nur jede zweite Abtastung ausgewählt und ggf. das
Vorzeichen(-bit) invertiert werden

I

cos  ⋅n=1,0 ,−1,0 ,... für n=0,1 ,2 ,3 , ...
2

sin  ⋅n=0,1 ,0 ,−1, ... für n=0,1 ,2 ,3 , ...
2
Q

51 Grundlagen SDR DL9GFA


Quadraturdemodulation
● Quadraturdemodulator in Hardware – Bsp. CLC5903
● Vollständig digitale Implementierung – digitale Eingangsdaten, digitale Mischer
(Multiplizierer), NCO
● Zusätzliche Abtastratendezimierung, Skalierung und Filterung

AGC exponent Gain


d. 8...2048 d. 2 d. 2 od. 4
I-Daten
S S
Vom ADC c h
Zum DSP
a CIC i
14 Bit l f Q-Daten
52 MHz e t FIR 1 FIR 2

SIN COS
Taktrate 25,4 kHz ... 12,7 kHz ... 3,2 kHz ...
NCO 52 MHz 6,5 MHz 3,25 MHz 1,63 MHz

52 Grundlagen SDR DL9GFA


Quadraturmodulation
● Quadraturmodulator
● Wie konventioneller Modulator, nur mit zwei Pfaden, die um
90° phasenverschoben angesteuert (LO) und schließlich summiert werden

● Spezialtrick des Demodulators funktioniert hier ebenfalls durch Einfügen von


Nullen und Vorzeichenwechsel

53 Grundlagen SDR DL9GFA


Quadraturmodulation
● Quadraturmodulator in Hardware – Bsp. AD9857
● Vollständig digitale Ausführung
● Zusätzlich Upsampling und Interpolationsfilter im Chip integriert
● 14-Bit-DA-Wandler mit bis zu 200MHz Taktrate

Up 2 Up 2 Up 2 Up 2...63
I-Daten
I 14 Bit

CIC DAC
Halbband Halbband Halbband-
Q
Q-Daten -Filter 1 -Filter 2 Filter 3

SIN COS

NCO

54 Grundlagen SDR DL9GFA


Darstellung einfacher Signale
● Die Interpretation von I- und Q-Signal als ein einziges, macht ein komplexes oder
auch analytisches Signal daraus
● Analytische Signale können unsymmetrische Spektren haben (reale nie!)
● Die komplexe e-Funktion entspricht im Frequenzspektrum einer Dirac-Funktion
● Das Vorzeichen des Exponenten gibt Drehrichtung an, also ob es sich um eine
negative oder positive Frequenz handelt

Imag  j S( f )

e j 2 pi fo t 
1

Real 

­ fo  fo  f 

55 Grundlagen SDR DL9GFA


Darstellung einfacher Signale
● Darstellung realer Kosinus- und Sinusfunktionen
● Durch Darstellung der Phasenlage werden später Auslöschungen sichtbar

Imag  j  S( f ) 
 j 2 pi fo t
cos( 2 pi fo t ) = 1/2 e 1/2 
 ­ j 2 pi fo t
Real  + 1/2 e

­ fo  fo  f 

j  Imag S( f )
Imag  1/2 j 
sin( 2 pi fo t ) =  j 1/2 e ­ j 2 pi fo t ­ fo  1/2
 j 2 pi fo t Real
Real  ­ j 1/2 e fo
cos( 2 pi fo t )
­ 1/2 j 

56 Grundlagen SDR DL9GFA


Anwendung SSB-Demodulation
-fo
j

real
j
Spektrum des
Kosinus real

fo j
f
f
real
TP
-fo Bei Addition
j cos (2  fo t) OSB (600Hz)
90°
real
 LO /- f

Eingangssignal sin (2  fo t)
mit 600Hz in fo HT real
TP
OSB und 300Hz- Bei Subtraktion
Ton in USB USB (300Hz)
f
j j f
-fo
j real real

real
Spektrum des
f
Sinus f

fo
f
57 Grundlagen SDR DL9GFA
Anwendung FM-Demodulation
● Beispiel für neue Art und Weise FM zu demodulieren – nicht nur Nachbildung
analoger Verfahren (z.B. Flankendiskriminator mit anschließendem
Hüllkurvendetektor)

Normierung (AM-
Quadraturdemodulation Unterdrückung) FM-Demodulation

⁻1
TP Z
Cos( 2fot )
Y k 
1
~   I² Q²  + arcsin
90°

Sin( 2fot)
-  k −  k −1
⁻1
TP Z

Y  k =Q  k ⋅I  k −1− I  k ⋅Q  k −1


Y  k =sin  k − k −1

58 Grundlagen SDR DL9GFA


Anwendung Digitale Modulation

● Phasentastung zum Transport


digitaler Daten - QPSK
j 2  f c tc t 
s t = Ac⋅e

Q

11 11 10
(t)

10 
t I
 00

01 01 00


59 Grundlagen SDR DL9GFA


Anwendung Digitale Modulation
j 2  f c t c t 
● Phasen- und Amplitudentastung s t = Ac⋅e
Beispiel – 16-QAM
Q Scatter plot
● Mit 16 Zuständen können ld(16)=
4 Bit/Symbol übertragen werden 4

0010 0110 1110 1010


3
● Zwischen Zuständen wird nicht hart
umgeschaltet für schmales Spektrum 2

(TP → Pulsformung) 0011 0111 1111 1011


1

Quadrature
● Korrekte Auswertung nur zum 0

0001 0101 1101 1001


exakten Symboltakt möglich → ­1
Symboltaktrückgewinnung im RX!
­2

0000 0100 1100 1000


● Bei Fehlentscheidung zum Nachbar- ­3

symbol nur 1 Bit falsch Dank


Gray-Kodierung ­4

­4 ­3 ­2 ­1 0 1 2 3 4
In­Phase

60 Grundlagen SDR DL9GFA


Augendiagramm
● I und Q werden jeweils
abschnittsweise (Symboldauer)
übereinander gelegt

● Augenöffnung ist ein Maß für die


erforderliche Abtastgenauigkeit

● Augenöffnung ist um so kleiner, je


schmalbandiger gefiltert wird
(Pulsformung)
QScatter plot
Scatter plot

4
4

3
3

2
2

1
1
I
Quadrature
Quadrature

0
0

­1
­1

­2
­2

­3
­3

­4
­4

­4 ­3 ­2 ­1 0 1 2 3 4
­4 ­3 ­2 ­1 In­Phase
0 1 2 3 4
In­Phase

61 Grundlagen SDR DL9GFA


Fehlergrößen
● Worauf kommt es bei der Quadratursignalverarbeitung an?
● Amplituden-, Phasen- und/oder Offset-Fehler in I- und Q-Pfad sind unbedingt
zu vermeiden
● Kleinste Amplituden- und Phasenfehler verringern die
Seitenbandunterdrückung
● Kleinste Gleichanteile (Offset-Fehler) verringern die Trägerunterdrückung

IQ-Imbalance IQ-Offset Orthogonalitätsfehler


(Verstärkungsfehler) (Gleichanteil) (Phasenfehler)

Q Q Q

I I I

62 Grundlagen SDR DL9GFA


Gütekriterien
● Träger- und Seitenbandunterdrückung sind wesentliche Performance-Werte

63 Grundlagen SDR DL9GFA


Gütekriterien
● Maß für Modulationsgenauigkeit bei digitalen Modulationen
● Fehlervektor, engl. Error Vector Magnitude (EVM)

64 Grundlagen SDR DL9GFA


Zusammenfassung Quadraturverarbeitung

● Quadratursignalverarbeitung ist das wichtigste Funktionselement in der


modernen Kommunikationstechnik
● Sie ermöglicht gleichzeitig und unabhängig voneinander Phase und
Amplitude von Signalen zu (de)modulieren
● Dadurch kann mehr Information in unterschiedlichen Phasen- und
Amplitudenzuständen übertragen werden
● Sie ermöglicht kohärente (phasengenaue) Signalverarbeitung
● Anwendungen: WLAN, Mobilfunk, Radar, Beamforming, insbesondere alle
digitalen Übertragungsverfahren, aber auch die klassischen analogen

65 Grundlagen SDR DL9GFA


GNU Radio
Inhalt GNU Radio
● Einleitung 'Software Radio' und 'Cognitive Radio'
● GNU Radio
º Überblick
º Python Framework
º GNU Radio Companion – GRC
º Die möglichen Programmierebenen
º Erstes Praxisbeispiel unter GRC (Quellen, Senken, Funktionsblöcke, GUI)
º GRC – Wichtige Hinweise (Synchronisation, Flußkontrolle)
● Hardware für GNU Radio und ihre Anwendung
º Konzept der Aufgabenteilung
º WBX von Ettus Research
º USRP2 von Ettus Research
º USRP2+WBX Praxisbeispiel unter GRC
º FUNcube Dongle
º FUNcube Dongle Praxisbeispiel unter GRC
º HF-Frontends der SoftRock-Klasse
º SoftRocks in der Praxis unter GRC
● GNU Radio Projekte im Internet
● Wie kann ich starten?
º Installation und erste Hardware
● Zusammenfassung und Referenzen
GNU Radio Grundlagen SDR DL9GFA
Software Radio & Cognitive Radio

● Es gibt verschiedene SWR-Konzepte in Abhängigkeit vom Ort des AD-Wandlers


º Heterodynstrukturen mit AD/DA-Wandlung im Basisband oder auf hoher Zwischenfrequenz
º Direktmischer mit AD/DA-Wandlung im Basisband oder direkte HF-Signalabtastung
º Systemdesign entscheidet über Kompromisse zwischen Performance und Flexibilität
● Ideales SWR nutzt statt spezifischer Hardware nur einen „General Purpose
Prozessor“ (GPP) und AD/DA-Wandler
º Alle Signalverarbeitung in Form von Algorithmen auf GPP
º Standardisierung der Schnittstellen erlaubt Wiederverwendung von Software-Modulen (SCA –
Software Communications Architecture)
º SCA ermöglicht auch Laden neuer Verfahren/Standards wenn nötig (autom. SW update)
● 'Cognitive Radio' ist der nächste Evolutionsschritt
º CR sind intelligente und lernende Software Radios
º Sie beobachten ihre spektrale Umgebung und passen sich den Gegebenheiten an (reaktiv, proaktiv,
bis hin zu kooperativem Ressourcenmanagement)
º Vision der Regulierungsbehörden ohne dedizierte Frequenzzuweisungen, die oft ineffizient sind
● GNU Radio ist eine Plattform für SWR und läßt sich als Basisebene unter kognitiven
Verarbeitungsschichten verwenden

GNU Radio Grundlagen SDR DL9GFA


GNU Radio - Überblick

● Freie Software-Arbeits- und Entwicklungsumgebung zur Implementierung von


Software-definierten Sendern und Empfängern
● Es bietet eine Menge fertiger Signalverarbeitungsroutinen und Funktionsblöcke
● Die Anwendungen sind hauptsächlich in Python geschrieben, während die
Signalverarbeitungsblöcke in C++ implementiert sind
● Python ist eine einfach zu erlernende objektorientierte Skriptprogrammiersprache
● GNU Radio wird vor allem im akademischen und industriellen Umfeld zum schnellen
„Prototyping“ eingesetzt
● Es gibt fertig verfügbare HF-Frontends zum Einsatz mit GNU Radio, aber auch
Eigenbaulösungen sind einfach über die PC-Audiokarte nutzbar
● GNU Radio eignet sich hervorragend für den Hobbyeinsatz
º Freie Verfügbarkeit (GNU General Public License)
º Fertige Signalverarbeitungsblöcke verringern Einstiegshürde
º Eigene HF-Hardware ist einfach adaptierbar
º Viele Amateurfunkbeispiele im Internet verfügbar
º GNU Radio-Foren für Diskussion und Hilfe

GNU Radio Grundlagen SDR DL9GFA


GNU Radio – Python

Blockschaltbild
und automatisch
generiertes
Python-Skript mit
eingebundenen
C++ Routinen
GNU Radio Grundlagen SDR DL9GFA
GNU Radio Companion - GRC
● Grafische Benutzeroberfläche zur Entwicklung von Signalverarbeitungsanwendungen
● Einfacher Einstieg für 'Nichtprogrammierer'
● Funktionsblöcke werden mit der Maus auf die Arbeitsfläche gezogen und verbunden
● Auf Knopfdruck wird ein Python-Skript erstellt und gestartet

DSP-Bibliothek Ausführungsumgebung
Filter Modulation

Schnittstellen GUI

GNU Radio Grundlagen SDR DL9GFA


GNU Radio - Programmierung
● Die Programmierung ist auf verschieden Ebenen
möglich
● Wer mit den bereits vorhandenen Funktionsblöcken
auskommt, kann ausschließlich grafisch arbeiten

GRC Grafisches
GRC
Entwicklungswerkzeug

Python
Python Zusammenfügen der Blöcke
und Parameterübergabe

C++
C++ Echtzeit-Signalverarbeitung

GNU Radio Grundlagen SDR DL9GFA


GRC – Erstes Beispiel

GNU Radio Grundlagen SDR DL9GFA


GRC – Hinweise
● Es gibt verschiedene Quellen und Senken für Datenströme
º PC-Audiokarte
º USB mit dedizierter Hardware (Bsp. USRP)
º Ethernet-Schnittstelle (TCP, UDP)
º Dateien aus denen gelesen und in die geschrieben werden kann
º 'pipes' durch die von/zu anderen Programmen Daten gestreamt werden können (ähnlich VAC –
Virtual Audio Cable)
º Grafisch als Oszilloskop, Spektrumanalysator, Wasserfallspektrum, Textaus- und eingabe
● Das Datenformat zu verbindender Schnittstellen muß identisch sein und ggf. konvertiert
werden (complex/float)
● Die Datenraten an den Schnittstellen müssen überein stimmen (ganzzahlige! Dezimierung,
Interpolation)
● Abweichende Takte an HW-Schnittstellen führen zu automatisch generierten Puffern die
Latenz einbringen und überlaufen können (Fehlermeldungen aUaO usw. beachten)
● Falls der Takt für die Daten nicht von Hardware bestimmt ist (z.B. numerisch generiert, oder
aus Datei), muß eine Flußkontrolle mit Takt eingebaut werden ('Throttle'-Block unter [Misc])
● Bei Performance-Problemen die Datenraten auf nötiges Minimum begrenzen und
Wiederholrate grafischer Ausgaben verringern
GNU Radio Grundlagen SDR DL9GFA
Hardware für GNU Radio

HF Frontend Analog-Digital-Wandlung Software-(De-)Modulation

●Mischt HF ins ●AD- und DA- ●Bekommt bzw.


analoge Basisband Wandlung (jeweils I generiert digitales
und umgekehrt und Q) Basisband (I/Q)

● Direkt-Quadratur- ● Abtastraten- ●(De-)Moduliert


(de)modulator dezimierung und und macht hör-
-Interpolation bzw. lesbar

GNU Radio Grundlagen SDR DL9GFA


Hardware für GNU Radio

ADC
ADC
Attn
Attn
ADC
ADC
FPGA
FPGA

~ (DDC,
(DDC,
DUC,
DUC,
NCOs,
NCOs,
Mikro-
Ether-
Ether-
net
net
Mikro-
controller,
controller,
uvm.)
uvm.)
DAC
DAC

DAC
DAC

GNU Radio
~ WBX Transceiver
Grundlagen SDR
USRP2 Mainboard
DL9GFA
WBX von Ettus Research

● Die US-Firma Ettus Research (www.ettus.com) bietet


º Leistungsfähige Digital-Hardware mit USB oder Ethernet-Schnittstelle
º Diverse HF-Frontends in verschiedenen HF-Bereichen

HF-Frontend WBX

● Transceiver 50 MHz...2.2 GHz


● Voll-Duplex

● Direkt-Quadratur(de)modulator

● 5 dB...6 dB Rauschmaß

● IIP3: +5 dBm... +10 dBm


● IIP2: +40 dBm... +55 dBm

● 50 mW...100 mW Sendeleistung

● Schaltung frei verfügbar

GNU Radio Grundlagen SDR DL9GFA


USRP2 von Ettus Research

● Die US-Firma Ettus Research (www.ettus.com) bietet


º Leistungsfähige Digital-Hardware mit USB oder Ethernet-Schnittstelle
º Diverse HF-Frontends in verschiedenen HF-Bereichen

Universal Software Radio Peripheral (USRP2)


● Zwei 100 MS/s 14-Bit-AD-Wandler
● Zwei 400 MS/s 16-Bit-DA-Wandler

● FPGA mit programmierbarer

Dezimierung (DDC) und Interpolation (DUC)


● 25 MHz HF-Bandbreite vom/zum PC

● Gigabit Ethernet-Schnittstelle zum PC

● Analoge (AD/DA) und digitale Schnittstellen für

Hilfsfunktionen (AGC, RSSI, etc.)


● Schaltpläne frei verfügbar

● VHDL-Quelltext frei verfügbar

● Autarker Betrieb möglich ('stand alone')

GNU Radio Grundlagen SDR DL9GFA


USRP2 / WBX - Praxisbeispiel

GNU Radio Grundlagen SDR DL9GFA


FUNcube Dongle (FCD)
● Empfänger 64 MHz... 1.7 GHz („SMA zu USB“)
● I/Q-Ausgabe mit 96 kHz Abtastrate
● Projekt der AMSAT UK
● Direkte GRC-Unterstüzung

GNU Radio Grundlagen SDR DL9GFA


DVB-T- Dongle (RTL SDR)
● Empfänger von 24 MHz... 1.766 GHz („SMA zu USB“)
● R820T-Tuner und RTL2832U Basisband
● BB-Abtastrate max. 3.2MSps (manchmal unstabil),
2.4MSps stabil
● 8Bit IQ-BB-Werte (ENOBs 7 bit, aber je nach Einsatz Dezimierungs-
gewinn)
● Direkte GRC-Unterstüzung

GNU Radio Grundlagen SDR DL9GFA


DVB-T- Dongle R820T (Tuner)

GNU Radio Grundlagen SDR DL9GFA


DVB-T- Dongle RTL2832U (BB)

GNU Radio Grundlagen SDR DL9GFA


FM-Stereo-Multiplex

Audio Stereo
L– R
Audio
Mono
L+ R
Pilotton
19 kHz
RDS

0
30 15 23 38 53 57
Hz kHz kHz kHz kHz kHz

GNU Radio Grundlagen SDR DL9GFA


FCD - Praxisbeispiel

GNU Radio Grundlagen SDR DL9GFA


SoftRock-artige RX/TX
● Direktmischstrukturen mit Quadratur-Abtastung (QSD) eines Subbandes
● I/Q-Basisband wird analog an PC-Audiokarte ausgegeben bzw. von dort erhalten
● Schmaler Empfangskanal muß mit komplexem Oszillator demoduliert werden
● Einfache Einbindung in GRC durch PC-Audiokarte möglich

GNU Radio Grundlagen SDR DL9GFA


SoftRock - Praxisbeispiel

GNU Radio Grundlagen SDR DL9GFA


GNU Radio Projekte
● Im Internet sind viele frei verfügbare GNU Radio Projekte zu finden, die zum Experimentieren einladen
º Diverse Voll-Duplex SDR-Transceiver für Amateurfunk (AM, FM, SSB, CW, digital Modes)
º Satelliten-Telemetrieempfänger, u.a. mit FUNcube Dongle
º NOAA APT Empfänger für Wetterbilder
º DVB - Digitale Videoübertragung der Webcam auf 23cm
º OpenBTS – GSM-Basisstation
º DECT-Empfänger (PHY, MAC, teilw. höhere Ebenen)
º HDTV-Sender und -Empfänger
º TETRA Transceiver
º ADS-B & Mode-S Transponder-Empfang zur Bestimmung von Flugzeugposition, Höhe, Richtung etc.
º AIS – Automatisches Identifikations-System für Schiffe (Geschwindigkeit, Richtung, Tonnage, Name, Ziel etc.)
º WLAN-Sender und -Empfänger in voller Bandbreite inkl. MIMO
º ZigBee PHY IEEE 802.15.4 (interoperabel mit Mica2, MicaZ, Telos B)
º RDS-UKW-Radio
º Fading Simulator mit Echtzeit-Rayleigh-Fading (via Matlab)
º GMSK-Bodenstations-Transceiver für Satelliten (z.B. Aprizesat 3&4, 128kbit/s downlink, 9.6kb/s uplink)
º RFID Generation 2
º GPS-Empfänger
º DCF77-Empfänger
º Empfänger für Motorola Smartnet trunked radio system
º Transceiver für Logitechs drahtlose Tastaturen

GNU Radio Grundlagen SDR DL9GFA


Wie kann ich starten?

● Installation von GNU Radio inklusive GRCompanion


º GNU Radio ist frei und kann im Quelltext oder binär (Linux) heruntergeladen werden
º Erstellung aus den Quellen ist unter Linux-Distributionen, xBSD und Mac OS X einfach
möglich (Anleitung unter gnuradio.org)
º Viele Linux-Distributionen bieten fertige Pakete zur komfortablen Installation an (Empfehlung
Ubuntu, Kubuntu)
º Windows-Compilierung und Installation ist nur sehr Erfahrenen zu empfehlen
º Windows-Nutzer können Linux-Live-Distribution von USB-Stick/DVD einsetzen oder Linux in
einer Virtuellen Maschine installieren (z.B. VirtualBox.org)
º Anleitungen und Diskussionsforen im Internet bieten Hilfe!
● Hardware
º Die PC-eigene Audiokarte ist für einfache Versuche
gut geeignet (z.B. Audiosignalverarbeitung)
º Einfache Direktmisch-Empfänger und -Sender sind
schnell selbst gebaut (Quarzoszillator, Mischer, Filter,
Verstärker)
º Fast jede Software Radio Hardware kann mit GNU
Radio betrieben werden (Basisband-I/Q, 12kHz-ZF etc.)
GNU Radio Grundlagen SDR DL9GFA
Zusammenfassung

● Software Radio ist ein spannendes Thema, insbesondere für den


Amateurfunk
● GNU Radio ist ein hervorragendes und noch dazu frei verfügbares
Werkzeug zur Umsetzung
● Es kann für nahezu alle Spielarten des Amateurfunks eingesetzt
und einfach erweitert werden
● Erfolgreiche Beschäftigung mit Software Radio erfordert
Fachwissen auf verschiedenen Gebieten
● GNU Radio mit GRC verringert die Einstiegshürde deutlich

GNU Radio Grundlagen SDR DL9GFA


Internet-Referenzen

● Projektseiten
º http://gnuradio.org
º https://cgran.org/ - 3rd Party GNU Radio applications
º http://ossie.wireless.vt.edu/ - Open Source SCA Implementation - Embedded
● Interessante Seiten mit direktem Amateurfunkbezug
º http://www.oz9aec.net/index.php/gnu-radio
º http://www.dl8rds.de/index.php/GNURadio_and_USRP2
º http://f4dan.free.fr/sdr_eng.html - gute Übersicht über Hard- und Software zum Thema
● Mailing-Listen und Diskussions-Foren
● http://gnuradio.org/redmine/wiki/gnuradio/MailingLists
º http://lists.darc.de/mailman/listinfo/sdr - DARC-Reflektor zu SDR
● Podcasts
º http://chaosradio.ccc.de/cre087.html - Chaosradio Express zu SDR mit GNU Radio
● Erwerb von geeigneter Hardware
º http://www.ettus.com - USRPx-Hardware mit diversen HF-Frontends
º http://www.funcubedongle.com - FUNcubeDongle der AMSAT UK
º http://www.funkamateur.de - OnlineShop →Bausätze → SDR-Kits, FA-SDR-Transceiver
º http://www.kb9yig.com/ - SoftRock-Kits

GNU Radio Grundlagen SDR DL9GFA

Das könnte Ihnen auch gefallen