-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zum Verarbeiten
von Signalen eines globalen Positionsbestimmungssystems (GPS) und
einen korrespondierenden GPS-Empfänger.
-
Ein
Weitbereichs-GPS wird mit 30 oder mehr Satelliten in bestimmten
Umlaufbahnen zur Verfügung gestellt.
Zwölf Satelliten
können
zu einer Signalabdeckung gehören
und gleichzeitig mit einem GPS-Empfänger an einer bestimmten Position
kommunizieren.
-
Der
GPS-Empfänger
bestimmt seine Position durch eine Berechnung von relativen Ankunftszeiten
von Signalen, welche gleichzeitig von einer Anzahl von GPS-Satelliten übertragen
werden, um die Entfernungen des Empfängers von den Satelliten zu
bestimmen. Die GPS-Satelliten übertragen,
als Teil der Satellitennachricht, Satellitenpositionsdaten, welche
Pseudorausch(PN)-Codes umfassen, und Daten bzgl. Taktsteuerung. Um
seine Position zu berechnen, muss der GPS-Empfänger Signale von wenigstens
vier sichtbaren Satelliten innerhalb der gleichen Signalabdeckung
empfangen.
-
Durch
Benutzen der empfangenen PN-Codes bestimmt der GPS-Empfänger Pseudobereiche
von verschiedenen GPS-Satelliten und berechnet seine Position durch
Benutzen der Pseudobereiche und der Satellitenzeitabstimmung und
der Daten bzgl. Zeitsteuerung. Die Satellitendaten bzgl. Zeitsteuerung
und Signaturdaten werden aus den GPS-Satellitendaten extrahiert, wenn ein
Satellit erfasst ist und verfolgt wird.
-
Jeder
der GPS-Satelliten überträgt ein L1-Signal
mit einer Trägerfrequenz
von 1575,42 MHz. Die Frequenz des L1-Trägersignals wird durch 154f0 repräsentiert,
wobei f0 = 10,23 MHz ist.
-
In
den Satelliten werden Signale gemäß einem codegeteilten Mehrfachzugriffsschema
(CDMA-Schema) mit Signalen moduliert, welche eine hohe Wiederholungsrate
aufweisen und auch als Pseudorauschfolgen (PN-Folgen) bezeichnet
werden, und werden in Codemodulationsbreitbandsignale umgewandelt.
-
Eine
der in den entsprechenden Satelliten zur Modulation des L1-Signals
benutzten PN-Folgen ist ein grober Erfassungscode (C/A-Code). Die
C/A-Codefolgen gehören
zu einer Familie, welche als Gold-Codes bekannt ist. Jeder GPS-Satellit
strahlt ein Signal mit einem eindeutigen C/A-Code ab. Die Codes
werden durch Ausführen
einer Modulo-2-Addition
von zwei binären
Sequenzen mit jeweils 1023 Bits erzeugt. Die C/A-Codes sind Binärcodes und
weisen eine Phasenumkehrungsrate oder „Chipping”-Rate von 1,023 MHz und eine
Wiederholfrequenz von 1023 Chips für eine Codeperiode von 1 Millisekunde
auf.
-
Zudem
wird der Träger
des L1-Signals mit einer Navigationsinformation mit einer Bitrate
von 50 Bit/s moduliert. Die Navigationsinformation um fasst verschiedene
Informationen des GPS-Satelliten, wie Betriebsbereitschaft, Umlaufbahn,
Taktdatenparameter, welche den GPS-Satelliten betreffen, usw.
-
Der
GPS-Empfänger
führt einen
Synchronisationsvorgang zum Detektieren von Satellitensignalen durch,
um die GPS-Satelliten zu identifizieren. Zudem sucht der GPS-Empfänger Signale,
welche von entsprechenden GPS-Satelliten übertragen werden, um den Synchronisationsvorgang
mit den von den GPS-Satelliten übertragenen
Signalen auszuführen,
so dass als Signale übertragene
Daten empfangen und demoduliert werden können.
-
Der
GPS-Empfänger
sollte die Synchronisation beispielsweise dann ausführen, wenn
er eingeschaltet wird und keine Satellitendaten über eine vorgebbare Zeitspanne
empfängt.
Solche Situationen können
häufig auftreten,
da ein mobiles Gerät
mit dem Empfänger
bewegt wird und es daher für
eine Antenne des mobilen Gerätes
schwierig ist, immer an einem Platz angeordnet zu sein, welcher
am besten für
einen Empfang der Satellitensignale geeignet ist, so dass die Stärke der
an den Empfänger übertragenen
Signale schwach ist. In Stadtgebieten beeinflussen Gebäude die
vom GPS-Satelliten empfangenen Satellitensignale und die Satellitensignale
erfahren eine Mehrwegsignalausbreitung, in welcher die Satellitensignale
von den GPS-Satelliten über
verschiedene Strecken an den GPS-Empfänger übertragen werden, wie über eine
direkte Übertragungsstrecke
vom GPS-Satelliten und verschiedene andere Strecken, welche durch
Reflektionen der Satellitensignalen an hohen Gebäuden verursacht werden. Durch
die Mehrwegsignalausbreitung weisen die empfangenen Signale Zeitdifferenzen
und Phasendifferenzen auf, welche Fehler in der Positionsbestimmung
des Empfängers
verursachen können.
-
Ein
Abstand zwischen dem GPS-Empfänger
und den GPS-Satelliten wird wegen einem Taktsignalfehler zwischen
dem GPS-Satelliten und dem GPS-Empfänger und einer Signalverzögerung durch
die Atmosphäreschichten
als Pseudoentfernung bezeichnet.
-
Die
Pseudoentfernungen korrespondieren mit Zeitverzögerungswerten, welche zwischen
den empfangenen Satellitensignalen von jedem der Satelliten und
einem lokalen Taktsignal des GPS-Empfängers gemessen werden.
-
Die
Bestimmung der Position und der Zeit wird solange wiederholt, bis
eine ausreichende Genauigkeit erreicht ist.
-
Eine
Pseudoentfernungsberechnung wird durch Messung einer Durchschnittsübertragungszeit
der verschiedenen Satellitensignale ausgeführt. Nach der Synchronisation
des GPS-Empfängers
mit den empfangenen Signalen werden die durch die Signale übertragenen
Informationen demoduliert.
-
Die
meisten GPS-Empfänger
benutzen Korrelationsverfahren, um die Pseudoentfernung zu berechnen.
Die Pseudorauschfolgen der GPS-Satelliten
werden lokal gespeichert oder im GPS-Empfänger erzeugt.
-
Es
wird eine Abwärtswandlung
des empfangenen Satellitensignals ausgeführt und der GPS-Empfänger korreliert
das abwärtsgewandelte
Signal mit den lokal gespeicherten oder erzeugten Pseudorauschfolgen (PN-Folgen).
Das Korrelationsergebnis wird integriert. Der Korrelationsintegralwert
oder Abtastwert zeigt Anwesenheit des Satellitensignals in dem empfangenen
Satellitensignal an. Der im GPS-Empfänger ausgeführte Korrelationsvorgang wird
wiederholt, so dass eine Phase der im Empfänger gespeicherten Pseudorauschfolge verschoben
wird. Die Phasen der PN-Folgen werden verfolgt, bis eine genaue
Phase erhalten wird. Die genaue Phase wird erhalten, wenn ein Korrelationsresultat
am höchsten
ist.
-
Die
Synchronisation und ein Phasen- oder Frequenzeinstellungsvorgang
wird für
entsprechende, vom Empfänger
empfangene Satellitensignale wiederholt. Dadurch ist eine solche
Verarbeitungszeit in einer Situation sehr lang, in welcher die Stärke der
empfangenen Signale schwach ist.
-
In
herkömmlichen
GPS-Empfängern
werden mehrere Korrelatoren benutzt, um die Verarbeitungsgeschwindigkeit
zu beschleunigen, so dass gleichzeitig mehrere Korrelationsspitzenwerte
gesucht werden können.
Die Anzahl der Korrelatoren kann jedoch nicht unbegrenzt erhöht werden
und daher ergibt sich eine Begrenzung für die Beschleunigung der Synchronisation
und des Phasen- oder Frequenzeinstellungsvorgangs durch eine einfache
Erhöhung
der Anzahl der Korrelatoren.
-
Allgemein
umfasst der Empfänger
für eine
schnelle Synchronisation eine Mehrzahl von Kanälen und die entsprechenden
Kanäle
umfassen Mehrfachkorrelatoren. Die Anzahl der in einem Speicher
des GPS-Empfängers gespeicherten
Korrelationsintegralwerte erhöht
sich proportional zur Anzahl der Kanäle und Korrelatoren und daher
ist ein großes
Maß an
Speicherplatz erforderlich. Um zusätzlich einen Algorithmus zur
Bestimmung der Synchronisationserfassung in einem Prozessor basierend
auf im Speicher gespeicherten Daten auszuführen, wird das Maß an Datenzugriff
zwischen dem Prozessor und dem Speicher gemäß der Anzahl der im Speicher
gespeicherten Korrelationsintegralwerte erhöht.
-
Daher
ist, um eine große
Datenmenge mit einer hohen Geschwindigkeit im Speicher zu speichern
und um die Daten mit einer hohen Geschwindigkeit aus dem Speicher
auszulesen, eine erhöhte
Speicherzugriffszeit erforderlich. Die Speicherzugriffszeit ist
ein wichtiger Faktor, welcher die Erfassungsgeschwindigkeit und daher
die Leistungsfähigkeit
des GPS-Empfängers beeinflusst.
-
Es
besteht ein Bedarf an einem Speicher mit großer Kapazität, um eine große Datenmenge
für die
Erfassung im GPS-Empfänger
zu speichern, und daher erhöht
sich die Speichergröße, wodurch
es schwierig ist, die Größe des GPS-Empfängers zu
reduzieren.
-
In
der Offenlegungsschrift
EP
1 262 791 A2 wird zwecks schnellerer Ermittlung der Phase
des Signalträgers
von Satelliten eines GPS-Systems
durch den Empfänger
und somit zur schnelleren Positionsbestimmung eine Schätzung von
Originaldaten für
die Synchronisation des Empfängers
mit einem durch ein Streuspektrum modulierten Signal vorgenommen,
und das empfangene Signal wird mit wenigstens zwei unterschiedlichen
Werten der geschätzten
Daten zur Bildung von Spektrumresultaten multipliziert, auf deren
Basis dann eine Frequenzverschiebung bestimmt wird.
-
Die
Patentschrift
US 6.275.186
B1 befasst sich mit einer Vorrichtung und einem Verfahren
zur Lokalisierung einer mobilen Station in einem Mobilkommunikationssystem
unter Verwendung von Signalen, die von mehreren benachbarten Basisstationen
empfangen werden, wobei empfangene Signale in digitale Daten gewandelt
werden und wenigstens zwei Signale detektiert werden, die aus den
abgetasteten Daten eine Schwellenbedingung basierend auf einer Korrelationslänge und
einem Versatz aufgrund Pseudorauschen erfüllen, und ein Signal/Interferenz-Verhältnis sowie
eine Ankunftszeitdifferenz der detektierten Signale berechnet wird.
-
Der
Erfindung liegt als technisches Problem die Bereitstellung eines
Verfahrens und einer Vorrichtung zum Verarbeiten von GPS-Signalen,
welche in der Lage sind, die erforderliche Speichergröße zum Speichern von
Korrelationsintegralwerten und/oder die Bitanzahl derselben zu reduzieren
und damit die Datenverarbeitungsgeschwindigkeit verglichen mit dem
oben beschriebenen Stand der Technik zu erhöhen, sowie eines entsprechend
verbesserten GPS-Empfängers
zugrunde.
-
Erfindungsgemäß wird dieses
Problem durch die Bereitstellung eines Verfahrens mit den Merkmalen des
Patentanspruchs 1 oder 7, durch eine Vorrichtung mit den Merkmalen
des Patentanspruchs 8 oder 11 und durch einen GPS-Empfänger mit
den Merkmalen des Patentanspruchs 12 gelöst.
-
Entsprechend
stellt die Erfindung ein Bitabwärtsskalierungsverfahren
und eine Bitabwärtsskalierungsvorrichtung
zur Verfügung,
welche eine Speichergröße zum Speichern
von Korrelationsintegralwerten reduzieren können.
-
Zudem
stellt die Erfindung ein Synchronisationserfassungsverfahren und
einen GPS-Empfänger
zur Verfügung,
welche die Anzahl an Bits der Korrelationsintegralwerte reduzieren
und somit die Speichergröße reduzieren.
-
In
den Unteransprüchen
sind vorteilhafte Weiterbildungen der Erfindung angegeben.
-
Vorteilhafte
Ausführungsformen
der Erfindung und herkömmliche
Ausführungsbeispiele
zum besseren Verständnis
der Erfindung sind in den Zeichnungen dargestellt und werden nachfolgend
beschrieben. Es zeigen:
-
1 ein
Blockdiagramm eines herkömmlichen
GPS-Empfängers,
-
2 ein
Blockdiagramm einer Kanalschaltung des GPS-Empfängers
aus 1,
-
3 ein
Blockdiagramm eines erfindungsgemäßen GPS-Empfängers,
-
4 ein
Blockdiagramm eines Korrelators und einer Abwärtsskalierungsschaltung für den GPS-Empfänger aus 3,
-
5 ein
Blockdiagramm eines jeweiligen Kanals und einer Skalierungsentscheidungseinheit
für den GPS-Empfänger aus 4,
-
6 ein
Diagramm zur Darstellung eines FFT-Ergebnisses eines herkömmlichen
Verfahrens und eines FFT-Ergebnisses eines erfindungsgemäßen Abwärtsskalierungsverfahrens,
wenn eine Auflösung
von einem halben Chip benutzt wird, und
-
7 ein
Diagramm zur Darstellung eines FFT-Ergebnisses eines herkömmlichen
Verfahrens und eines FFT-Ergebnisses eines erfindungsgemäßen Abwärtsskalierungsverfahrens,
wenn eine Auflösung
von einem viertel Chip benutzt wird.
-
1 zeigt
ein Blockdiagramm eines herkömmlichen
GPS-Empfängers 100,
welcher über
eine GPS-Antenne 102 Hochfrequenz-GPS-Signale (HF-GPS-Signale)
mit 1.575,42 MHz empfängt,
die von GPS-Satelliten gesendet werden. Die empfangenen HF-GPS-Signale
werden einem HF-Konverter 104 zugeführt. Die empfangenen HF-GPS-Signale
werden mit einem von einem lokalen Oszillator 106 erzeugten
lokalen Oszillatorsignal gemischt und zu einem Zwischenfrequenz-GPS-Signal
(IF-GPS-Signal)
abwärtskonvertiert.
Der HF-Konverter 104 umfasst beispielsweise einen Verstärker mit
niedrigem Rauschen (LNA), einen Filter, einen Mischer, einen IF-Verstärker und
einen Quadraturmischer. Der HF-Konverter 104 erzeugt
ein phasengleiches bzw. Inphasen-IF-Signal I und ein Quadraturphasen-IF-Signal
Q.
-
Die
I- und Q-IF-Signale werden durch einen Analog/Digital-Wandler (ADC) 108 in
digitale IF-Datensignale konvertiert und dann an eine Mehrzahl von
Kanalschaltungen 110 übertragen.
Die entsprechenden Kanalschaltungen 110 führen Korrelationsvorgänge aus,
um einen maximalen Korrelationswert oder ein korreliertes Spitzenwertsignal
für die
Synchronisationserfassung und für
das Verfolgen der von den ausgewählten
Satelliten zur Verfügung
gestellten GPS-Signale zu suchen. Ein Prozessor 112 führt die
Synchronisationserfassung und den Verfolgungsvorgang basierend auf
dem gesuchten maximalen Korrelationswert aus und berechnet eine
Pseudoentfernung, welche einen Abstand zwischen dem GPS-Empfänger und
den entsprechenden Satelliten repräsentiert. Eine Steuereinheit 114 berechnet
basierend auf einer Mehrzahl von Pseudoentfernungen, welche vom
Prozessor 112 zur Verfügung
gestellt werden, einen Positionswert des GPS-Empfängers und zeigt
den berechneten Positionswert auf einer Anzeigeeinheit 116 an.
-
Wie
aus 2 ersichtlich ist, führt die herkömmliche
Kanalschaltung 110 einen zweidimensionalen Suchvorgang
zur Erfassung eines groben Er fassungscodes (C/A-Code) und einer
Trägerfrequenz
der Satellitensignale für
die entsprechenden Kanalschaltungen 110 aus.
-
Die
I- und Q-IF-Signale des ADC 108 enthalten eine Dopplerfrequenz.
Die Dopplerfrequenz wird von einem numerisch gesteuerten Trägeroszillator
(NCO) 140 erzeugt, und dann werden das I-Signal bzw. das Q-Signal von einem
Inphasen-Generator 136 bzw. von einem Quadraturphasengenerator 138 erzeugt.
Das I-Signal und das Q-Signal werden mit dem I-ZF-Signal bzw. dem
Q-ZF-Signal in einem Inphasen-Multiplizierer (I-Multiplizierer) 132 bzw.
einem Quadraturphasen-Multiplizierer (Q-Multiplizierer) 134 multipliziert.
-
Die
multiplizierten Signale werden von einem Mehrfachkorrelator 142 mit
erwarteten Codes korreliert. Die I- und Q-Signale und die erwarteten
Codes mit verschiedenen Verzögerungscharakteristiken
werden jeweils an eine Mehrzahl von Korrelatoren 142 angelegt.
Die erwarteten Codes mit verschiedenen Verzögerungscharakteristiken werden
von einem Codeschieber 150 erzeugt. Der Codeschieber 150 empfängt einen
Pseudorauschcode (PN-Code) von einem PN-Codegenerator 148 und
verzögert
den PN-Code sequentiell, um erwartete Codes zu erzeugen und überträgt die erwarteten
Codes an die entsprechenden Korrelatoren 142. Der PN-Codegenerator 148 erzeugt
einen erwarteten Code, welcher von einem Code repliziert wird, der
mit einer Phase korrespondiert, die vom Prozessor 112 synchronisiert
mit einem von einem Code-NCO 147 erzeugten Taktsignal bestimmt
wird.
-
Die
entsprechenden Korrelatoren 142 führen Korrelationsvorgänge zwischen
den empfangenen I- und Q-IF-Signalen und den erwarteten Codes durch,
um Korrelationswerte zu erzeugen. Die Korrelationswerte werden durch
entsprechende Integratoren 144 während einer Vordetektionsintegrationszeitperiode
integriert, d. h. während
einer Abtastzeitperiode. Die vom Integrator 144 erhaltenen
Korrelationsintegralwerte wer den pro Abtastzeitperiode in einem
Speicher 146 gespeichert. Daher werden n Korrelationsintegralwerte
oder Abtastwerte pro Abtastzeitperiode im Speicher gespeichert,
wenn die Anzahl von Korrelatoren pro Kanal gleich „n” ist.
-
Werden
die Korrelationsintegralwerte als FFT-Punkte im Speicher 146 gespeichert,
beispielsweise als 16 FFT-Punkte, dann bringt der Prozessor 112 16
Korrelationsintegralwerte des entsprechenden Korrelators 220 vom
Speicher 146, um mit den Korrelationsintegralwerten einen
FFT-Vorgang mit 16 Punkten auszuführen, wenn 16 Abtastzeitperioden
abgelaufen sind. Hierbei folgert der Prozessor 112 für den Fall,
dass irgendeiner der FFT-Ergebniswerte einen Schwellwert übersteigt,
dass das empfangene GPS-Signal mit dem erwarteten Code übereinstimmt.
Daher wird ein Verfolgungsvorgang ausgeführt.
-
Ist
der FFT-Ergebniswert jedoch niedriger als der Schwellwert, dann
folgert der Prozessor, dass das empfangene GPS-Signal nicht mit
dem erwarteten Code übereinstimmt
und dass das empfangene GPS-Signal mit Rauschen korrespondiert.
Daher variiert der Prozessor 112 einen Suchbereich, d.
h. er wechselt eine Phase und eine Frequenz, und steuert den Träger-NCO 140 und
den Code-NCO 147, um den erwarteten Code basierend auf
der variierten Phase und Frequenz zu variieren.
-
Wie
oben ausgeführt
ist, wird in einem herkömmlichen
GPS-Empfänger
die Anzahl von im Speicher gespeicherten Korrelationsintegralwerten,
d. h. Abtastwerten, von dem Produkt der Kanalanzahl, der Korrelatoranzahl
pro Kanal und der Anzahl von FFT-Punkten bestimmt, wodurch eine
große
Speicherkapazität
erforderlich ist.
-
Da
ein Schreibvorgang, bei dem eine große Menge von Abtastdaten in
den Speicher 146 geschrieben werden, und ein Lesevorgang,
bei dem die Abtastdaten aus dem Speicher 146 gelesen werden,
mit einer hohen Geschwindigkeit ausgeführt werden sollten, ist eine
Hardwareschnittstelle zwischen dem Prozessor 112 und dem
Speicher 146 erforderlich, welche Schreib- und Lesevorgänge mit
hoher Geschwindigkeit unterstützt.
-
Zusätzlich ist
es schwieriger, die Hardwareschnittstelle zwischen dem Speicher 146 und
dem Prozessor 112 zu entwerfen, wenn die Korrelatoranzahl
zur Reduzierung der für
die Synchronisationserfassung und die Verfolgungsvorgänge benötigten Zeitdauer
erhöht
wird. Um die oben beschriebenen Probleme zu lösen, stellt die Erfindung ein
Korrelationsverfahren zur Verfügung,
welches die Korrelationsintegralwerte zum Speichern im Speicher
abwärtsskaliert,
wodurch die Größe des Speichers
reduziert werden kann.
-
Die 3 bis 5 zeigen
ein Ausführungsbeispiel
eines erfindungsgemäßen GPS-Empfängers 200. Wie
aus 3 ersichtlich ist, umfasst der GPS-Empfänger 200 einen
Hochfrequenzempfänger 210,
einen Korrelator 220, eine Abwärtsskalierungseinheit 230,
eine Speichersteuereinheit 240, einen Speicher 250,
eine Fast-Fourier-Transformationseinheit 260 und einen
Prozessor 270. Der Hochfrequenzempfänger 210 konvertiert
HF-GPS-Signale in IF-GPS-Signale und die IF-GPS-Signale werden in
digitale IF-GPS-Signale konvertiert.
-
Der
Korrelator 220 umfasst eine Mehrzahl p von Kanälen, um
eine Mehrzahl von Satelliten zu suchen, wobei p eine natürliche Zahl
ist. Der Korrelator 220 korreliert die digitalen IF-GPS-Signale,
welche vom Hochfrequenzempfänger 210 ausgegeben
werden, mit erwarteten Codes, um Korrelationswerte zu erzeugen.
Die erwarteten Codes werden lokal erzeugt und können gesteuert vom Prozessor 270 variiert
werden. Der Korrelator 220 akkumuliert oder integriert
die Korrelationswerte während
einer vorgegebenen Zeitperiode, um Korrelationsintegralwerte mit
n Bit oder Abtastdaten mit n Bit zu erzeugen.
-
Die
Abwärtsskalierungsschaltung 230 skaliert
die Korrelationsintegralwerte von n Bit auf Daten mit m Bit abwärts, wobei
m eine natürliche
Zahl kleiner als n ist. Die Fast-Fourier-Transformationseinheit 260 (FFT-Einheit) führt einen
FFT-Vorgang mit den Korrelationsintegralwerten mit n Bit aus.
-
Die
Speichersteuereinheit 240 speichert die Daten mit m Bit
im Speicher 250, stellt die im Speicher 250 gespeicherten
Daten mit m Bit der FFT-Einheit 260 zur
Verfügung,
empfängt
einen FFT-Ergebniswert von der FFT-Einheit 260, um das
FFT-Ergebnis im Speicher 250 zu speichern, und stellt den
im Speicher 250 gespeicherten FFT-Ergebniswert dem Prozessor 270 zur
Verfügung.
-
Der
Prozessor 270 steuert den Betrieb des Systems. Der Prozessor 270 vergleicht
den FFT-Ergebniswert mit einem Schwellwert, um für alle p Kanäle einen
maximalen Korrelationswert zu erhalten. Der Prozessor 270 variiert
die Korrelationswerte des Korrelators des Kanals mit dem maximalen
Korrelationswert, so dass der Korrelationswert ansteigt, und führt die
Synchronisationserfassung für
das empfangene GPS-Signal durch. Zudem erzeugt der Prozessor 270 während des
Synchronisationserfassungsvorgangs über einen Verfolgungsvorgang
und eine Positionsberechnung einen aktuellen Positionswert des GPS-Empfängers und
zeigt das Ergebnis über
eine nicht dargestellte Benutzerschnittstelle an.
-
Wie
aus 4 ersichtlich ist, welche ein vorteilhaftes Ausführungsbeispiel
des Korrelators 220 und der Abwärtsskalierungsschaltung 230 darstellt,
umfasst die Schaltung 230 in diesem Beispiel einen Multiplexer 232,
einen Abwärtsskalierungsprozessor 234,
eine Skalierungsentscheidungseinheit 236 und ein Skalierungsregister 238.
Der Korrelator 220 umfasst eine Mehrzahl von Kanälen 222 und
einen Multiplexer 224. Wie aus 5 ersichtlich
ist, welche ein vorteilhaftes Ausführungsbeispiel eines entsprechenden
Kanals 222 und der Skalierungsentscheidungseinheit 236 darstellt,
umfasst jeder Kanal 222 eine Mehrzahl von Korrelatoren 223, Korrelator
1, Korrelator 2, ..., Korrelator q, und eine Mehrzahl von Akkumulatoren 225,
ACC1, ACC2, ..., ACCq.
-
Wie
aus 4 weiter ersichtlich ist, koppelt der Korrelator 220 in
Reaktion auf ein Kanalauswahlsignal CHS einen der Kanäle 222,
welcher vom Multiplexer 224 aus den p Kanälen ausgesucht
wird, mit der Abwärtsskalierungsschaltung 230.
Einer der Kanäle 222 kann
sequentiell in Reaktion auf das Kanalauswahlsignal CHS ausgewählt werden.
-
Wie
aus 5 weiter ersichtlich ist, umfasst jeder der p
Kanäle
eine Trägerentfernungsschaltung 221, die
Mehrzahl von Korrelatoren 223, Korrelator 1, ..., Korrelator
q und die Mehrzahl von Akkumulatoren ACC1, ..., ACCq, wobei p eine
natürliche
Zahl ist. Die Trägerentfernungsschaltung 221 entfernt
Träger-
und Dopplerfrequenzanteile aus den IF-GPS-Signalen. Die Korrelatoren 223 korrelieren
jeweils korrespondierende GPS-Signale mit erwarteten Codes, um Korrelationswerte
mit n Bit zu erzeugen. Die Akkumulatoren 225 akkumulieren
die Korrelationswerte mit n Bit, um Korrelationsintegralwerte mit
n Bit zu erzeugen.
-
Der
Multiplexer 232 wählt
in Reaktion auf ein Akkumulatorauswahlsignal ASS einen von q Korrelationsintegralwerten
mit n Bit aus, welche in einem Kanal 222 von q Integratoren
oder Akkumulatoren 225 zur Verfügung gestellt werden, wobei
q eine natürliche
Zahl ist. Der Multiplexer 232 kann in Reaktion auf das
Akkumulatorauswahlsignal ASS sequentiell einen der q Korrelationsintegralwerte
mit n Bit auswählen.
Der ausgewählte
Korrelationsintegralwert mit n Bit wird dem Abwärtsskalierungsprozessor 234 zum
Abwärtsskalieren auf
Daten mit m Bit basierend auf einem Skalierungsfaktor zur Verfügung gestellt.
-
Die
Skalierungsentscheidungseinheit 236 bestimmt den Skalierungsfaktor
oder einen Skalierungspegel von q Korrelationsintegralwerten mit
n Bit, welche von den q Akkumulatoren 225 zur Verfügung gestellt
werden. Der bestimmte Skalierungsfaktor oder Skalierungspegel wird
im Skalierungsregister 238 gespeichert und dem Abwärtsskalierungsprozessor 234 zur
Verfügung
gestellt. Die Korrelationsintegralwerte mit n Bit können basierend
auf dem gespeicherten Skalierungsfaktor wiederhergestellt werden.
Es wird jeweils ein Skalierungsfaktor für q Daten mit m Bit zur Verfügung gestellt.
Die abwärtsskalierten
Daten mit m Bit werden über
die Speichersteuereinheit 240 im Speicher 250 gespeichert.
-
Wie
aus 5 ersichtlich ist, umfasst die Skalierungsentscheidungseinheit 236 q
Absolutwerterzeugungseinheiten 231, einen Maximalwertdetektor 233 und
eine Skalierungsbestimmungseinheit 235. Die Absolutwerterzeugungseinheiten 231 liefern
n – m
+ 1 Bit eines geschätzten
Absolutwertes durch Auswahl von n – m + 1 oberen Bit aus q Korrelationsintegralwerten
mit n Bit, welche von den q in entsprechenden Kanälen 222 angeordneten
Akkumulatoren 225 zur Verfügung gestellt werden. Weisen
die Korrelationsintegralwerte mit n Bit ein Vorzeichenbit mit dem
Wert „1” auf, dann
führt die
Absolutwerterzeugungseinheit 231 einen bitweisen Negierungsvorgang
mit den oberen n – m
+ 1 Bit aus. Weist im Gegensatz das Vorzeichenbit der Korrelationsintegralwerte
mit n Bit den Wert „0” auf, dann überbrückt die
Absolutwerterzeugungseinheit 231 die oberen n – m + 1
Bit, um einen geschätzten
Absolutwert zu erzeugen. Hierbei bezeichnet ein Symbol „~” einen
Operator für
eine bitweise Negierung. Wenn a ein binärer Wert a = 1111 0011 1001
0001 ist, dann ergibt ein bitweiser Negierungsvorgang ~a = 0000
1100 0110 1110. Das bedeutet, dass „~a” ein Einerkomplement des Wertes „a” repräsentiert.
-
Der
Maximalwertdetektor 233 führt eine bitweise Inklusiv-ODER-Funktion mit den
oberen n – m
+ 1 Bit aus, um eine Position eines signifikanten Bit zu detektieren,
welches einer Position des Bitwertes „1” ent spricht, der zuerst von
der höchstwertigen
Bitstelle des Maximalwerts unter q geschätzten Absolutwerten auftritt.
Die bitweise Inklusiv-ODER-Funktion
wird durch einen Operator „1” repräsentiert.
Ist a beispielsweise ein binärer Wert
a = 0001 0011 1001 0001 und b ein binärer Wert b = 0000 0001 1111
1000, dann ergibt eine bitweise Inklusiv-ODER-Funktion von „a” und „b” den Wert
a|b = 0001 0011 1111 1001. Daher korrespondiert das Ergebnis TAP_SUM
der bitweisen Inklusiv-ODER-Funktion mit dem signifikanten Bit des
Maximalwertes unter den geschätzten
Absolutwerten.
-
Die
Skalierungsbestimmungseinheit
235 bestimmt einen Skalierungspegel
basierend auf der Position des signifikanten Bit des maximalen geschätzten Absolutwertes,
um einen Skalierungsfaktor gemäß Tabelle
1 zu erzeugen, welcher mit dem Skalierungspegel korrespondiert.
Der Skalierungsfaktor wird im Skalierungsregister
238 gespeichert
und zur Abwärtsskalierungsverarbeitungseinheit
234 übertragen. Tabelle 1
detektierter
Maximalwert mit 9 Bit | Skalierungs-Pegel | ausgewählte 8 Bit
des Korrelationsintegralwerts mit 16 Bit | wiederhergestellter
Wert |
01xx
xxxx x | 8 | [15:8] | sxxx
xxxx 0000 0000 |
001x
xxxx x | 7 | [14:7] | ssxx
xxxx x000 0000 |
0001
xxxx x | 6 | [13:6] | sssx
xxxx xx00 0000 |
0000
1xxx x | 5 | [12:5] | ssss
xxxx xxx0 0000 |
0000
01xx x | 4 | [11:4] | ssss
sxxx xxxx 0000 |
0000
001x x | 3 | [10:3] | ssss
ssxx xxxx x000 |
0000
0001 x | 2 | [9:2] | ssss
sssx xxxx xx00 |
0000
0000 1 | 1 | [8:1] | ssss
ssss xxxx xxx0 |
0000
0000 0 | 0 | [7:0] | ssss
ssss sxxx xxxx |
-
Die
Abwärtsskalierungsprozessor 234 skaliert
in Abhängigkeit
von einem korrespondierenden Skalierungsfaktor, wie aus Tabelle
1 ersichtlich, die Korrelationsintegralwerte mit n Bit, welche vom
Multiplexer 232 zur Verfügung gestellt werden, abwärts in Daten
mit m Bit. Die n-zu-m-Abwärtsskalierung
für das
Ausführungsbeispiel
mit n = 16 und m = 8 ist in der Tabelle 1 zusammengefasst. In „wiederhergestellter
Wert” bezeichnet „s” ein Vorzeichenbit.
-
Der
Bitabwärtsskalierungsvorgang
wird beispielsweise ausgeführt,
wie es in den Tabellen 2 und 3 dargestellt ist. Nachfolgend wird
zur Darstellung des Ausführungsbeispiels
angenommen, dass n = 16 und m = 8 ist.
-
In
Tabelle 2 ist der Skalierungspegel „8” und daher wird der obere
8-Bit-Wert [15:8]
vom höchstwertigen
Bit MSB, einem Vorzeichenbit, des Korrelationsintegralwerts mit
n Bit als abwärtsskalierte
Bitdaten mit m Bit erhalten. Tabelle
2
-
In
Tabelle 3 ist der Skalierungspegel „6” und daher wird der obere
8-Bit-Wert [13:6]
vom (MSB-2)-ten Bit als abwärts
skalierte Bitdaten mit m Bit erhalten. Tabelle
3
-
<Simulation
1>
-
Eine
Simulation 1 wird unter den Bedingungen von 12 Kanälen (p =
12), 16 Anschlüssen
pro Kanal (q = 16), einem Akkumulator mit 16 Bit, einer Abwärtsskalierung
von 8 Bit (m = 8), einer Pufferzeit von 3,747 ms, Abtastzeit 2,34
ms (Pufferzeit/Anzahl von FFT-Punkten), 27-tes SV (Space Vehicle
Nr.), einer +3k Hz Dopplerfrequenz, einer Auflösung von ½ Chip und einer FFT mit 16
Punkten ausgeführt.
Gemäß der Simulation
1 tritt am Anschluss 15 ein Spitzenwert, d. h. Peak, auf. Fehler
der FFT-Ergebniswerte
für einen
Korrelationsintegralwert von Anschluss 15 sind in Tabelle 4 dargestellt. Tabelle 4
Tap
Nr. | FFT-Punkt Nr. | herkömmlicher FFT-Ergebniswert | erfindungsgemäßer FFT-Ergebniswert | Fehler | Fehlerrate
(%) |
15 | 0 | 24880 | 25071 | 191 | 0,77 |
1 | 7182 | 7210 | 28 | 0,39 |
2 | 7422 | 7384 | –38 | –0,51 |
3 | 5261 | 5264 | 3 | 0,06 |
4 | 4617 | 4696 | 79 | 1,71 |
5 | 3764 | 3723 | –41 | –1,09 |
6 | 4753 | 4759 | 6 | 0,13 |
7 | 1742 | 1702 | –40 | –2,30 |
8 | 4252 | 4247 | –5 | –0,12 |
9 | 5450 | 5447 | –3 | 0,06 |
10 | 5532 | 5510 | –22 | 0,40 |
11 | 3451 | 3423 | –28 | 0,81 |
12 | 5231 | 5205 | –26 | 0,50 |
13 | 5321 | 5337 | 16 | 0,30 |
14 | 8044 | 8002 | –42 | 0,52 |
15 | 21982 | 21975 | –7 | 0,03 |
-
Wie
aus 6 ersichtlich ist, tritt gemäß Simulation 1 an einem FFT-Punkt 0 des Kanals
5 am Anschluss 15 sowohl beim herkömmlichen Verfahren als auch
beim erfindungsgemäßen Abwärtsskalierungsverfahren
ein Spitzenwert auf. Das bedeutet, dass die Position des Spitzenwerts
genau detektiert werden kann, auch wenn das Abwärtsskalierungsverfahren im
GPS-Empfänger
ausgeführt
wird. Zusätzlich
wird, da die Fehler der FFT-Ergebniswerte innerhalb von ungefähr 2% liegen,
wenn das Abwärtsskalierungsverfahren
ausgeführt
wird, der Vorgang der Erfassung, d. h. Aquisition, der Synchronisation
durch das Abwärtsskalierungsverfahren
nicht beeinflusst.
-
<Simulation
2>
-
Eine
Simulation 2 wird unter den Bedingungen von 12 Kanälen, 16
Anschlüssen
pro Kanal, einem Akkumulator mit 16 Bit, einer Abwärtsskalierung
von 8 Bit, einer Pufferzeit von 3,747 ms, einer Abtastzeit von 2,34
ms (Pufferzeit/Anzahl von FFT-Punkten), 27-tes SV (Space Vehicle
Nr.), einer +3k Hz Dopplerfrequenz, einer Auflösung von ¼ Chip und einer FFT mit 16
Punkten ausgeführt.
Gemäß der Simulation
2 tritt am Anschluss 14 ein Spitzenwert auf. Fehler der FFT-Ergebniswerte
für einen
Korrelationsintegralwert von Anschluss 14 sind in Tabelle 5 dargestellt. Tabelle 5
Tap
Nr. | FFT-Punkt Nr. | herkömmlicher FFT-Ergebniswert | erfindungsgemäßer FFT-Ergebniswert | Fehler | Fehlerrate
(%) |
14 | 0 | 24880 | 25084 | 204 | 0,82 |
1 | 7182 | 7229 | 47 | 0,65 |
2 | 7422 | 7406 | –16 | –0,22 |
3 | 5261 | 5286 | 25 | 0,48 |
4 | 4617 | 4716 | 99 | 2,14 |
5 | 3764 | 3725 | –39 | –1,04 |
6 | 4753 | 4737 | –16 | 0,34 |
7 | 1742 | 1680 | –62 | –3,56 |
8 | 4252 | 4226 | –26 | –0,61 |
9 | 5450 | 5435 | –15 | 0,28 |
10 | 5532 | 5503 | –29 | 0,52 |
11 | 3451 | 3487 | 36 | 1,04 |
12 | 5231 | 5218 | –13 | –0,25 |
13 | 5321 | 5360 | 39 | 0,73 |
14 | 8044 | 8024 | –20 | –0,25 |
15 | 21982 | 219725 | –107 | –0,05 |
-
Wie
aus 7 ersichtlich ist, tritt gemäß Simulation 2 an einem FFT-Punkt 0 des Kanals
7 am Anschluss 14 sowohl beim herkömmlichen Verfahren als auch
beim erfindungsgemäßen Abwärtsskalierungsverfahren
ein Spitzenwert auf. Das bedeutet, dass die Position des Spitzenwerts
genau detektiert werden kann, auch wenn das Abwärtsskalierungsverfahren ausgeführt wird.
Zusätzlich
wird, da die Fehler der FFT-Ergebniswerte
innerhalb von ungefähr
2% liegen, wenn das Abwärtsskalierungsverfahren
mit einer Auflösung
von ¼ Chip
ausgeführt
wird, der Synchronisationserfassungsvorgang durch das Abwärtsskalierungsverfahren
nicht beeinflusst.
-
Deshalb
kann, auch wenn die Korrelationsintegralwerte mit 16 Bit durch das
erfindungsgemäße Abwärtsskalierungsverfahren
auf Daten mit 8 Bit abwärtsskaliert
werden, eine genaue Synchronisationserfassung durchgeführt werden,
wodurch die Speichergröße wesentlich
reduziert werden kann.
-
Wie
oben ausgeführt
ist, werden erfindungsgemäß nicht
alle n Bit der Korrelationsintegralwerte, welche von einer Mehrzahl
von Akkumulatoren zur Verfügung
gestellt werden, im Speicher gespeichert, sondern es werden die
n Bit der Korrelationsintegralwerte auf m Bit geschätzter Daten
basierend auf dem im Speicher gespeicherten Skalierungsfaktor abwärtsskaliert,
während
das Skalierungsverhältnis
der Absolutwerte der Korrelationsintegralwerte der Mehrzahl von
Akkumulatoren erhalten bleibt, wodurch eine wesentliche Reduzierung
der Speicherkapazität
ohne Beeinflussung des Synchronisationserfassungsvorgangs möglich ist.
Daraus resultiert, dass die Hardwarekosten des GPS-Empfängers reduziert
werden können
und ein leichter und kleiner GPS-Empfänger ausführbar ist.