SDR = Kohärenter Empfänger?

Gast #3391614
Hallo zusammen,

ich hätte da eine kleine Frage was Software Defined Radios betrifft. Bei 
vielen SDRs wird ja direkt ins Basisband gemischt und IQ-Signale werden 
bereitgestellt (z.B. für Soundkarten). Aber geht dabei nicht die 
Phasenlage verloren, wenn man nicht phasentreu runtermischt? Wie kann 
das dann noch mit IQ funktionieren? Bräuchte man nicht so etwas wie eine 
CostasLoop?

Viele Grüße
Das Empfangssignal geht mit der gleichen Phasenlage in beide Mischer. 
Das LO-Signal hat eine Phasendifferenz von 90°. Deshalb unterscheiden 
sich die Phasenlagen nach dem Mischvorgang um 90°. Würde man das Signal 
zurückmischen, wäre es möglich, den Originalzustand wiederherzustellen.

In der Praxis sollte der Phasenfehler zwischen den LO-Signalen, den 
Mischern und Tiefpässen deutlich kleiner als 1° sein.
Gast
Wenn mein IQ-Mischer aber mit einem LO gespeist wird, der mal Phase 0° 
hat und beim nächsten mal einschalten Phase 90° hat, dann ist das eine 
mal I und Q vertauscht oder?
Also die Differenzphase zwischen I und Q sollte schon passen. Aber der 
Signalraum ist doch nicht fest?
tronix schrieb:
> Wenn mein IQ-Mischer aber mit einem LO gespeist wird, der mal Phase 0°
> hat und beim nächsten mal einschalten Phase 90° hat, dann ist das eine
> mal I und Q vertauscht oder?

Die absolute Phase spielt zu keinem Zeitpunkt eine Rolle, wichtig ist 
die Differenz von 90° zwischen beiden LO-Zweigen. Dein Empfangssignal 
wird quasi einmal mit einem Sinus und einmal mit einem Cosinus ins 
Basisband gemischt.


> Aber der Signalraum ist doch nicht fest?
???
Da ist nix kohärent. Deswegen gibt es danach (in SW) immer eine 
Carrier-Recovery-Einheit (zB. die Costas-Loop), die mit einem NCO eine 
Gegenrotation mit dem Frequenzversatz durchführt. Damit ist dann das 
Gesamtsystem HW+SW kohärent.
Gast
Erst einmal Danke für eure ganzen Antworten.
"A Software-Defined Radio for the Masses" wird also meine neue 
Gute-Nacht-Lektüre.

Thomas K. schrieb:
> Die absolute Phase spielt zu keinem Zeitpunkt eine Rolle, wichtig ist
> die Differenz von 90° zwischen beiden LO-Zweigen. Dein Empfangssignal
> wird quasi einmal mit einem Sinus und einmal mit einem Cosinus ins
> Basisband gemischt.

Angenommen beim Senden wird eine "Eins" auf das Cosinus-Signal moduliert 
und eine "Null" auf das Sinus-Signal (also kein Sinus-Signal vorhanden). 
Ich bezeichne das einfach mal als "0+1j". Nun stimmt beim Empfänger aber 
die absolute Phase z.B. um 90° nicht. Dann fällt mein "0+1j" ja auf 
"-1+0j" oder "1+0j"?

Thomas K. schrieb:
>> Aber der Signalraum ist doch nicht fest?
> ???

Damit meine ich, dass sich die Signale in der IQ-Ebene um den Ursprung 
drehen, aber ihre Phasendifferenz untereinander gleich bleibt.

Georg A. schrieb:
> Da ist nix kohärent. Deswegen gibt es danach (in SW) immer eine
> Carrier-Recovery-Einheit (zB. die Costas-Loop), die mit einem NCO eine
> Gegenrotation mit dem Frequenzversatz durchführt. Damit ist dann das
> Gesamtsystem HW+SW kohärent.

Würde für mich Sinn machen. Meinst du damit eine PLL?
> Meinst du damit eine PLL?

Ja in etwa, aber in SW. Der NCO ist einfach eine Tabelle mit 
sin/cos-Werten einmal im Kreis rum (Betrag 1). Die Tabelleneinträge 
werden mit einer bestimmten Geschwindigkeit durchlaufen, der Ausgang 
(auch IQ) wird komplex mit dem IQ-Basisbandsignal multipliziert. 
Effektiv gibt das eine Rotation.

Der Versatz Sendeträger-Empfangsträger (also die Inkohärenz) ist ja auch 
nur eine Rotation. Wenn der Versatz 1Hz ist, rotiert ein konstanter 
IQ-Wert beim Empfänger einmal in der Sekunde um 360 Grad herum. Mit 
einer Gegenrotation mit 1Hz ist dann wieder alles kohärent.

Es gibt da nur zwei Probleme beim Finden der Gegenrotation: Das eine ist 
die Bestimmung des Frequenzversatzes ("Stehenbleiben" der Punkte). Das 
macht zB. bei *PSK die zB. Costas-Loop, wenn sie weiss, wo die 
Konstellationspunkte liegen. Die Abweichungen nach links oder rechts 
fliessen in einen PI-Regler ein, der die NCO-Geschwindigkeit 
(=Tabellensteps/Sample) so nachjustiert, dass die mittleren Abweichungen 
0 sind. Je verrauschter das Signal ist, um so schwieriger wird das 
natürlich...

Dummerweise klatscht das aber alle Konstellationspunkte auf einen, damit 
rastet die Loop auf irgendeinen der Punkte als Null-Referenz-Phase ein. 
Das muss man dann noch irgendwie auflösen. Entweder ganz langweilig 
ignorieren via differentielle Kodierung (D-*PSK) oder mit 
Referenzsymbolen.

Achja, ein dritten Problem gibts mit diskreten Samples auch noch: Die 
Samplegeschwindigkeit des ADCs beim Empfänger muss eigentlich einem 
exakten Vielfachen der Symbolrate entsprechen und noch dazu in die Mitte 
des Symbols "treffen". Sonst bekommt man ja nie die Maxima der Signale. 
Ein Versatz hier führt zu einem Pulsieren in der Amplitude. Dagegen 
gibts dann die Timing-Recovery-Stufe, die ein Resampling vornimmt. Dazu 
gibts es auch diverse Algorithmen (Müller&Mueller, early-late, etc.). 
Dummerweise beeinflussen sich Carrier und Timing-Recovery gegenseitig ;) 
Wenn man bei Sender und Empfänger Symbol/Sampletakt und Sendefrequenz 
vom selben Oszillator ableitet (zB. wie bei OFDM-WLAN vorgeschrieben) 
wirds etwas einfacher... Geht aber nicht immer.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.