Erweiterung einer USRP-OFDM-Übertragungsstrecke in LabVIEW

Transcription

Erweiterung einer USRP-OFDM-Übertragungsstrecke in LabVIEW
Erweiterung einer USRP-OFDM-Übertragungsstrecke in
LabVIEW
Biyun Lian
Tobias Mohaupt
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.1
Chair of
Communication Systems
Übersicht
1.
Motivation
2.
Ist-Zustand der LabVIEW-Übertragungsstrecke
3.
Optimierung der Software-Struktur
4.
Implementierung zusätzlicher Funktionen
5.
Verifizierung der Änderungen
6.
Fazit
7.
Demonstration
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.2
Chair of
Communication Systems
Motivation
„Geschichte“ der Übertragungsstrecke
MATLAB-OFDM-Übertragungsstrecke
•
Beschränkter Funktionsumfang
•
Feste Bitsequenz, 64-QAM
Portierung nach LabVIEW (Projektarbeit)
•
Verschiedene Datenquellen und Modulationsverfahren
•
Ganzzahlige CFO-Korrektur
•
Pilotkorrektur
Erweiterungen im Rahmen von Abschlussarbeiten
•
Bidirektionale Übertragungsstrecke
•
Adaptive Modulationsverfahren
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.3
Chair of
Communication Systems
Motivation
Ziel der Arbeit
Optimierung der bestehenden Software-Struktur in LabVIEW
•
Gliederung und Zusammenfassung von Prozessen
•
Symboldetektion unter Zuhilfename mehrerer OFDM-Blöcke
Erweiterung des Funktionsumfangs der Übertragungsstrecke
•
Kanalcodierung (Faltungscodierer/Viterbi-Decoder)
•
Prozesssynchronisation mit Warteschleifen (Queues)
•
Echtzeit-Bitfehlerraten-Messung
Erhöhung der Übertragungsqualität und -geschwindigkeit
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.4
Chair of
Communication Systems
Ist-Zustand der LabVIEW-Übertragungsstrecke
Aufbau Hardware allgemein
USRP-N200-Boards der Firma
Ettus Research
USRP N200
Sender
USRP N200
Empfänger
Ausstattung
•
XCVR2450-Transceiverboard (kein
Full-Duplex)
•
Gigabit-Netzwerkanschluss
•
GPS-Modul zur genaueren Taktung
Windows 7 und LabVIEW
der internen Oszillatoren
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.5
Chair of
Communication Systems
Ist-Zustand der LabVIEW-Übertragungsstrecke
Software Sender
Generierung der OFDM-Blöcke auf Software-Ebene unter LabVIEW
Erzeugung, Signalverarbeitung und Übertragung innerhalb des gleichen
Prozesses auf der Hauptebene
•
Eingeschränkte Parallelisierung
Häufig wiederkehrende Funktionen
Bitfehlerratenmessung ist eigener Übertragungsmodus, welcher den Transfer
und die Auswertung einer bekannten Datei erfordert
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.6
Chair of
Communication Systems
Ist-Zustand der LabVIEW-Übertragungsstrecke
Software Sender
Schwachstellen
Fehlende Prozesssynchronisation führt zu Erzeuger-Verbraucher-Problem
Keine Kanalcodierung
Häufig wiederkehrende Funktionen machen Programm unübersichtlich
Datei-Bitfehlerratenmessung lässt keine Rückschlüsse auf kurzzeitige
Änderungen des Kanals zu
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.7
Chair of
Communication Systems
Ist-Zustand der LabVIEW-Übertragungsstrecke
Software Empfänger
Empfang, Signalverarbeitung und Symboldetektion innerhalb des gleichen
Prozesses auf der Hauptebene
•
Eingeschränkte Parallelisierung
Abtastung mit fester Anzahl Abtastwerte ohne Zeitsynchronisation
Nur Betrachtung des aktuell empfangenen OFDM-Blocks möglich
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.8
Chair of
Communication Systems
Ist-Zustand der LabVIEW-Übertragungsstrecke
Software Empfänger
Schwachstellen
Fehlende Prozesssynchronisation führt
erneut zu Erzeuger-Verbraucher-Problem
Keine Kanalcodierung (Decodierung)
Zustand des Senders zu Beginn der
Abtastung im Empfänger nicht bekannt
OFDM-Block wird bei kürzeren Abständen aufeinanderfolgender Blöcke mit
zunehmender Wahrscheinlichkeit nicht vollständig erfasst
•
Kanalschätzung, Synchronisation und Symboldetektion nicht möglich
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.9
Chair of
Communication Systems
Optimierung der Software-Struktur
Sender
Prozesssynchronisation mit Warteschleifen (Queues)
Verwendung von Warteschleifen (Queues) zur Synchronisation der Prozesse
zur Symbolerzeugung und Übertragung
Jeder Übertragungsmodus erhält eigene Funktion zur periodischen
Eingliederung neu erzeugter Symbole in eine Queue
Sende-Schleife überträgt die Elemente in der Queue kontinuierlich an das
USRP-Board
Zusätzliche Anzeigen für den Zustand der Warteschleife
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.10
Chair of
Communication Systems
Optimierung der Software-Struktur
Sender
Queue
(FIFO)
Erzeuger
Element 1
Verbraucher
Element 2
Element 3
.
.
.
.
.
Element N
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.11
Chair of
Communication Systems
Optimierung der Software-Struktur
Sender
Resultat
Betrachtung des Zustandes der Warteschleife lässt Rückschlüsse auf die
Geschwindigkeit der Symbolerzeugung und des Datentransfers zu
Optimierung der maximalen Übertragungsgeschwindigkeit möglich
Zugriff auf mehrere Elemente in der Warteschleife erleichtert Symboldetektion
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.12
Chair of
Communication Systems
Optimierung der Software-Struktur
Empfänger
Symboldetektion und Zeitsynchronisation mit Warteschleifen
Fallunterscheidung Block getroffen/Block nicht getroffen
Mögliche Betrachtung zweier aufeinanderfolgender OFDM-Blöcke in der
Empfänger-Warteschleife
Abgeschnittene OFDM-Blöcke bei kurzen Abständen können rekonstruiert
werden
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.13
Chair of
Communication Systems
Optimierung der Software-Struktur
Empfänger
Betrachtung 1 OFDM-Block
Betrachtung 2 OFDM-Blöcke
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.14
Chair of
Communication Systems
Optimierung der Software-Struktur
Empfänger
Resultat
Signifikant kürzere Abstände zwischen aufeinanderfolgenden OFDM-Blöcken
realisierbar
Durch Warteschleifen zusätzlich Prozesssynchronisation
Rückschlüsse auf Geschwindigkeit der Signalverarbeitung und der Abtastung
möglich
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.15
Chair of
Communication Systems
Implementierung zusätzlicher Funktionen
Kontinuierliche Messung der Bitfehlerrate
Baut auf dem Text-Übertragungsmodus auf
Kontinuierliche Übertragung und Vergleich
einer bekannten, festen Zeichensequenz (8 bit
pro Zeichen)
Erlaubt Rückschlüsse auf
Änderungen/Hindernisse im Kanal in Echtzeit
Zusätzlich: Numerische Anzeigen und
grafische Darstellung des zeitlichen Verlaufs
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.16
Chair of
Communication Systems
Implementierung zusätzlicher Funktionen
Kanalcodierung
Faltungscodierer im Sender
Interleaving
OFDM-TX
OFDM-RX
Kanal
Viterbi-Decoder im
Empfänger
Kanalcodierung
Additives Rauschen
Deinterleaving
Kanaldecodierung
Variable Coderate und
Binäre
Datensenke
Binäre
Datenquelle
Einflusslänge
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.17
Chair of
Communication Systems
Verifizierung der Änderungen
Kanalcodierung und Bitfehlerrate
uncodiert
1/4
1/3
2/3
Relativer Anstieg des BER
bei höherwertigen QAMs
10−1
nicht ausreichender
Rechenleistung im Sender
BER
Hohe Fehlerraten wegen
10−2
=> Warteschleife läuft leer!
=> RX tastet Rauschen ab!
10−3
Algorithmen zur Erzeugung
der Symbole ineffizient auf
Universalrechnern
4
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
16
64
QAM
256
Lian, Mohaupt
p.18
Chair of
Communication Systems
1024
Verifizierung der Änderungen
Symboldetektion und Zeitsynchronisation
korrekte Ermittlung des
Startzeitpunkts eines
OFDM-Blocks für
verschiedene Abstände
Betrachtung für einen
OFDM-Block und zwei
Wahrscheinlichkeit in %
Wahrscheinlichkeit für
100
80
60
40
20
aufeinanderfolgende
OFDM-Blöcke
0
1 OFDM-Block betrachtet
2 OFDM-Blöcke betrachtet
50
40 30 20 10 5
3
2
Blockabstand / (Abtastwerte*100)
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.19
Chair of
Communication Systems
1
Verifizierung der Änderungen
Übertragungsrate
90
80
verschiedene QAMs und
70
Coderaten
60
Bei Verwendung von
Kanalcodierung sinkt die
kByte/s
Übertragungsrate für
50
40
Datenrate unter sonst
30
gleichen Bedingungen mit
20
Modulationen höherer
10
Ordnung wieder ab
uncodiert
1/4
1/3
1/2
2/3
3/4
0
4
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
16
64
QAM
256
Lian, Mohaupt
p.20
Chair of
Communication Systems
1024
Fazit
Minimaler Abstand zwischen OFDM-Blöcken konnte deutlich gesenkt werden
Prozesssynchronisation zeigt Grenzen des Übertragungssystems auf
•
Warteschleife im Sender läuft leer -> Symbolerzeugung zu langsam
•
Warteschleife im Empfänger nicht gefüllt -> Signalverarbeitung ausreichend schnell!
Keine nennenswerte Steigerung der maximalen Übertragungsrate trotz
Verringerung des Abstandes zwischen OFDM-Blöcken
Kanalcodierung steigert die CPU-Last merklich und vermehrt bei hohen
Übertragungsraten sogar die Bitfehlerrate gegenüber uncodierter Übertragung
Besser: Auslagerung der Algorithmen zur Symbolerzeugung auf FPGA
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.21
Chair of
Communication Systems
Live-Demonstration
Erweiterung einer
USRP-OFDM-Übertragungsstrecke
in LabVIEW
Lian, Mohaupt
p.22
Chair of
Communication Systems