-
Die Erfindung betrifft ein Verfahren zur Korrelation von einem abgetasteten Signal mit Replikasignal. Das Verfahren ermöglicht eine Speicherplatzminimierung bei der Signalkorrelation mittels Look-Up-Tabellen durch Mittelung der Korrelationsfunktion über ein Abtastintervall.
-
Ein GNSS(Global Navigation Satellite; Globales Navigationssystem)-Empfänger muss Signalabtastwerte mit internen Replikasignalen korrelieren. Diese Operation wird über so-genannte Korrelationsintervalle von z. B. 1 ms durchgeführt. Vernachlässigt man der Einfachheit halber die Trägerabstreifung, wird die Code-Korrelation geschrieben als:
- C
- Korrelationswert
- s(tμ)
- Empfangener Signalabtastwert zur Zeit tμ
- μ
- Index des Abtastwertes
- fs
- Abtastrate [Hz]
- fc
- Coderate [Hz]
- rτ
- Replikasignal als eine Funktion der Codephase Codephase [chip]
- τ0
- Codephasenoffset [chip]
- η
- Codedoppler
- L
- Anzahl der Abtastwerte im Korrelationsintervall
-
Da der Korrelationsprozess von einer DLL (delay locked loop) oder einer ähnlichen Schaltung gesteuert wird, können wir annehmen, dass
-
Die Aufgabe, die in einem Softwareempfänger die meiste Zeit verbraucht, ist die Erzeugung von Replika-Abtastwerten r
μ:
-
Pseudozufallscode-Replikasignale können entweder direkt über Schieberegister oder über Look-Up-(Nachschlage-)Tabellen erzeugt werden.
-
Look-Up-Tabellen werden vorab berechnet und erlauben eine schnellere Erzeugung der Replikasignale. Durch den Dopplereffekt und die Bewegung von Sender und Empfänger im Allgemeinen müssen Replikasignale für verschiedene Codedopplerwerte und Codephasenoffsets erzeugt werden. Der Standardzugang für Look-Up-Tabellen ist es, diese Tabellen für die nominelle Coderate zu erzeugen. Durch Resampling kann daraus das gewünschte Signal für beliebige Offsets und Raten erzeugt werden. Resampling ist schneller als die Nutzung von Schieberegistern, aber dennoch sehr langsam. Eine schnellere Möglichkeit ergibt sich, wenn man das Replikasignal gleich mit der schlussendlich verwendeten Abtastrate abspeichert. Zusätzlich werden mehrere Kopien abgespeichert, wobei die Kopien sich durch einen Codephasenoffset unterscheiden (sog. „multiple Look-Up-Tabellen”, mehrfache Nachschlagetabellen). Der Offset ist in der Höhe der Codemessgenauigkeit zu wählen (z. B. 1 m). Die Offsets müssen das Abtastintervall (z. B. 14,99 mm bei einer Abtastrate von 20 MHz) gleichmäßig abdecken. Aus dieser erweiterten Tabelle kann das gewünschte Signal durch eine Kopieroperation extrahiert werden, wobei ein kleiner Fehler entsteht, da sich das kopierte Signal vom eigentlich gewünschten Signal durch einen Offset- und Ratenfehler unterscheidet.
-
Bisherige Methode: Wiederabtastung
-
Bei der Wiederabtastung wird das Replikasignal mit einer willkürlichen Rate (z. B. die nominelle Coderate) in einer Tabelle gespeichert und zwischen den Tabellenwerten interpoliert. Für jeden Wert von μ wird der Codephasenwert ausgewertet, der nächste Abtastwert in der Tabelle ermittelt, und dieser Abtastwert wird verwendet um rμ darzustellen (sogenannte Nachbar-Wiederabtastung). Da diese Methode auf einer Abtastwert-für-Abtastwert-Basis arbeitet, ist sie langsam.
-
Bisherige Methode: Mehrfache Look-Up-Tabellen
-
Look-up-Tabellen nutzen die Tatsache aus, dass η typischerweise nahe 1 ist. Dieser Ansatz erzeugt mehrfache Look-up-Tabellen gemäß der Formel:
- k
- Codephasenindex
- Δτ
- Codephasenauflösung [chip]
-
Für einen gegebenen Wert von r
0 wird der Index k bestimmt als k = gerundet
und die entsprechende k-Tabelle wird benutzt, um das Replikasignal in der Korrelation darzustellen. Der Codephasenfehler, der während dieses Prozesses eingeführt wird, ist kleiner als
Δτ / 2 . Man könnte argumentieren, dass dieser Fehler zum Ausmitteln tendiert. Dies ist zwar im Allgemeinen wahr, trifft jedoch nicht für den Fall des Nulldopplers, d. h. η = 1, zu. Dann ist der Codephasenfehler nämlich konstant und erscheint in den Pseudoentfernungsmessungen. Dieser Effekt konnte bei Messungen für Satelliten nachgewiesen werden, die gerade die Nulldopplerlinie überschritten haben. Pseudoentfemungsfehler von mehreren Metern bauten sich über einige Dutzend Sekunden auf, was nicht akzeptabel ist. Natürlich könnte man diesen Fehler durch eine höhere Auflösung reduzieren, aber dies benötigt mehr Hauptspeicherplatz. Besonders für längere Codes werden Speicherangelegenheiten wichtig, sogar wenn auf einem PC gearbeitet wird.
-
Der Codedoppler führt nur einen kleinen Fehler ein. Zum Beispiel, wenn man einen hohen Doppler von 10 kHz annimmt, wird dies in einen Codedopplerfaktor für GPS C/A Code von η = (1 + 10e3/1,57542e9) = 1,00000634751368 übersetzt. Betrachtet man ein Korrelationsintervall von 1 ms, wird dies in eine durchschnittliche Codephasenverschiebung von 0,00000634751368/2·0,001·1,023e6 = 0,00324675324732 chip oder 0.95 m übersetzt. Man könnte diesen Wert kompensieren, indem man den Index k so berechnet, dass der durchschnittlichen, durch den Doppler verursachten Codephasenverschiebung Rechnung getragen wird.
-
Aufgabe der Erfindung ist es, ein effizientes und Speicherplatz sparendes Verfahren für die Erzeugung von Pseudozufallscode-Replikasignalen in einem Autokorrelationsempfänger bereit zu stellen.
-
Die Aufgabe wird durch ein Verfahren gemäß Patentanspruch 1 gelöst. Die Aufgabe wird weiterhin durch einen Empfänger gemäß Patentanspruch 4 gelöst.
-
Gemäß einer Ausführungsform der Erfindung wird ein Verfahren zur Korrelation von einem abgetasteten Signal mit einem Replikasignal bereitgestellt, wobei
- – das abgetastete Signal vor der Abtastung als mit einem digitalen Code moduliertes, hochfrequentes Trägersignal empfangen wurde
- – das Replikasignal den gleichen Code wie das abgetastete Signal aufweist
- – die Werte des Replikasignals einer Look-Up-Tabelle entnommen werden, indem jeweils ein Tabellenindex ermittelt wird, der den Speicherplatz des Replikawertes anzeigt und der Wert entsprechend dem Tabellenindex aus der Tabelle ausgelesen wird, und wobei
- – sich jeweils eine Korrelation über ein Korrelationsintervall erstreckt
- – zur Erzeugung des Replikasignals genau eine Look-Up-Tabelle mit genau einem Codephasenoffset verwendet wird,
- – das Nachschlagen in der Tabelle und Korrelieren in mehreren Teilintervallen des Korrelationsintervalls erfolgt (μ-Korrelationen),
- – das Nachschlagen in der Tabelle mit einer Tabellenrate ft erfolgt, die sich von der Abtastrate fs multipliziert mit einem Dopplerratenfaktor unterscheidet, wobei fcarr das hochfrequente Trägersignal und fdoppler eine Dopplerverschiebung des Trägersignals darstellen
- – für jedes Teilintervall ein Tabellenindex-Offset (μ-Korrelationsindex) neu berechnet wird.
-
Das Verfahren wird nachfolgend erläutert.
-
Gemäß einer Ausführungsform der Erfindung wird das Korrelationsintervall in kürzere Teilintervalle, so-genannte μ-Intervalle geteilt. Ein μ-Intervall hat beispielsweise eine Länge von 0,05 ms in einem Korrelationsintervall von 1 ms. Es wird nur eine einzige Look-Up-Tabelle mit der nominellen Abtastrate plus einem gewissen Offset berechnet (siehe unten). Die Abtastrate der Tabelle wird ft genannt. Die Look-Up-Tabelle wird als r'' bezeichnet.
-
Eine μ-Korrelation wird allgemein geschrieben als
- lm
- μ-Korrelationsgrenzen, l0 = 0, lM = L,
- M
- Anzahl an μ-Korrelationen pro Intervall.
-
Für jede μ-Korrelation wird der Tabellenindex in r'' berechnet. Der Tabellenindex ist gegeben als:
- νk
- μ-Korrelationstabellenindex
und die Replikaabtastwerte können für die m-te Korrelation mittels einer Speicherkopieroperation mathematisch dargestellt werden als:
-
In anderen Worten ausgedrückt, führt die Unterteilung dazu, dass einerseits eine Tabellrate ft eingeführt werden kann, die einen „künstlichen Doppler” erzeugt, der sich dann mittelnd auf den Codephasenfehler auswirkt, andererseits aber die Korrelation durch die Kürze der (Teil-)Integration quasi neu aufgesetzt werden kann. Hierdurch wird ein Aufsummieren der durch ft verursachten Codephasenverschiebung über das gesamte Korrelationsintervall vermieden.
-
Gemäß einer Ausführungsform der Erfindung wird die Länge der μ-Korrelationen derart gewählt, dass die durchschnittliche Codephasendrift, die durch die Differenz des wahren Dopplers zu der Rate ft der Look-Up-Tabelle viel kleiner ist als die inverse Abtastrate.
-
Während jeder μ-Korrelation wird ein Phasenfehler eingeführt, der sich in dem Intervall [–0,5/fs, 0,5/fs] befindet. Die Rate ft der Look-Up-Tabelle wird derart gewählt, dass während eines Korrelationsintervalls (d. h. nicht μ-Korrelationsintervall), die unterschiedlichen Codephasenfehler der individuellen μ-Korrelationen dieses Intervall [–0,5/fs, 0,5/fs] homogen abdecken. Der sich ergebende Korrelationswert kann dann als ein Durchschnittskorrelationswert über eine Abtastperiode betrachtet werden. Vorausgesetzt, dass die Abtastrate das Nyquistkriterium erfüllt, wird diese Durchschnittsbildung keinen bedeutsamen Verlust einführen. Um diese Bedingung zu erfüllen kann die Tabellenrate gewählt werden als Lft ≈ (L + α)fs
- α
- vorzeichenbehafteter Integer-Wert (z. B. 1)
-
Gemäß einer Ausführungsform der Erfindung decken die Codephasenfehler während eines Korrelationsintervalles das Intervall [–0,5/fs, 0,5/fs] ab, und zwar ungefähr |a| mal.
-
Ein möglicher wahrer Doppler hat nur einen kleinen Effekt auf die Gleichmäßigkeit der Abdeckung, da die Tabellenrate sich stark von ηfs unterscheidet. Im Beispiel mit 10 kHz Doppler, 1 s Korrelationsintervall, 20 MHz Abtastrate und α = 1, wird die Tabellenrate zu ft = 20001000 Hz und ηfs = 20000126,95 Hz.
-
Gemäß einer Ausführungsform der Erfindung wird ein Empfänger bereitgestellt, der eine Signalverarbeitungseinheit zur Durchführung des oben beschriebenen Verfahrens aufweist.
-
Gemäß einer Ausführungsform der Erfindung wird eine Signalverarbeitungseinheit zur Durchführung des oben beschiebenen Verfahrens bereitgestellt. Die Signalverarbeitungseinheit kann z. B. ein FPGA (Field Processing Gate Array) oder ein Teil eines FPGAs sein, oder ein Mikroprozessor oder eine sonstige Schaltung aus digitalen und/oder analogen Bausteinen. Das Verfahren kann hierbei z. B. teilweise oder ganz in Hardware oder in Software implementiert sein.
-
Die Signalverarbeitungseinheit kann z. B. in einem Empfänger, wie z. B. einem Satellitennavigationsempfänger, wie z. B. einem GPS-(Global Positioning System), GNSS-(Global Navigation Satellite System), GLONASS (Globalnaja Nawigazionnaja Sputnikowaja Sistema, Globales Satellitennavigationssystem) und/oder GALILEO-Empfänger oder z. B. in einem PDA (Personal Digital Assistent), einem Handy, einem Smartphone, einem Tablet-PC oder ähnlichen mobilen oder stationären Geräten verwendet werden.
-
Die Erfindung kann nicht nur im Bereich der Satellitennavigation eingesetzt werden, sondern auch z. B. im Mobilfunkbereich oder sonstigen Systemen, in denen eine Korrelation durchgeführt wird, insbesondere zum Beispiel bei CDMA (Code Division Multiple Access) Systemen und/oder Systemen in denen ein hochfrequenter Träger mit Codes wie z. B. Pseudo-Zufallscodes verwendet wird.