DE69714581T2 - Spreizspektrumempfänger mit multibitkorrelation - Google Patents
Spreizspektrumempfänger mit multibitkorrelationInfo
- Publication number
- DE69714581T2 DE69714581T2 DE69714581T DE69714581T DE69714581T2 DE 69714581 T2 DE69714581 T2 DE 69714581T2 DE 69714581 T DE69714581 T DE 69714581T DE 69714581 T DE69714581 T DE 69714581T DE 69714581 T2 DE69714581 T2 DE 69714581T2
- Authority
- DE
- Germany
- Prior art keywords
- code
- satellite
- time
- receiver
- correlation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
- H04B1/7073—Synchronisation aspects
- H04B1/7085—Synchronisation aspects using a code tracking loop, e.g. a delay-locked loop
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/14—Determining absolute distances from a plurality of spaced points of known location
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C22/00—Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/22—Multipath-related issues
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/29—Acquisition or tracking or demodulation of signals transmitted by the system carrier including Doppler, related
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/30—Acquisition or tracking or demodulation of signals transmitted by the system code related
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/37—Hardware or software details of the signal processing chain
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/45—Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement
- G01S19/47—Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement the supplementary measurement being an inertial measurement, e.g. tightly coupled inertial
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
- H04B1/709—Correlator structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/204—Multiple access
- H04B7/216—Code division or spread-spectrum multiple access [CDMA, SSMA]
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/03—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
- G01S19/10—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing dedicated supplementary positioning signals
- G01S19/11—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing dedicated supplementary positioning signals wherein the cooperating elements are pseudolites or satellite radio beacon positioning system signal repeaters
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/23—Testing, monitoring, correcting or calibrating of receiver elements
- G01S19/235—Calibration of receiver components
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/34—Power consumption
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Circuits Of Receivers In General (AREA)
- Mobile Radio Communication Systems (AREA)
- Radio Relay Systems (AREA)
- Noise Elimination (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
- Navigation (AREA)
Description
- Diese Erfindung bezieht sich im allgemeinen auf Spreizspektrumempfänger und insbesondere auf: GPS-Navigationssysteme, wie beispielsweise diejenigen, die bei der terrestrischen Navigation für Autos, Lastwagen oder andere Landfahrzeuge verwendet werden.
- Car- bzw. Auto-Navigation wird herkömmlicherweise unter Verwendung von Highway- und Straßenkarten durchgeführt, die bis zu einem gewissen Grad durch Entfernungsmessungen externer Sensoren, wie beispielsweise Odomeaern, unterstützt werden. Bei Satellitennavigations-Empfängern des globalen Positionierungssystems oder GPS (= Global Positioning System) haben Verbesserungen in den letzten zehn Jahren verschiedene GPS-Car-Navigationssysteme hervorgebracht.
- Herkömmliche GPS-Car-Navigationssysteme verwenden die letzte bekannte Position des Fahrzeugs und die Zieldaten, um eine Routendatenbank einschließlich Routen- und Abbiegedaten zu berechnen, die aus einer schon vorhandenen Kartendatenbank hergeleitet wird. GPS-Empfänger werden herkömmlicherweise mit einem Minimum von drei oder vier Satelliten betrieben, die über den sichtbaren Himmel verteilt sind, um die vier notwendigen Unbekannten, einschließlich xuser, yuser und zuser, die drei orthogonale Koordinaten zur Lokalisierung des Benutzers bereitstellen, sowie tuser, welche die erforderliche Satellitenzeit liefert, zu bestimmen oder zumindest zu schätzen. Techniken, wie beispielsweise Zeit- oder Takt- Halten (time oder clock hold) und Höhe-Halten (altitude hold), bei denen angenommen wird, daß die unbekannte Zeit oder Höhe aus einem vorher bestimmten Wert, z. B. zest und/oder test vorhersagbar bleibt, haben den Betrieb von GPS- Empfängern mit weniger als vier sichtbaren Satelliten ermöglicht. Insbesondere wurden terrestrische GPS-Empfänger mit nur zwei Satelliten entwickelt, um eine zweidimensionale Positionslösung unter Verwendung von sowohl Takt- als auch Höhe-Halten bereitzustellen.
- Da es häufig schwierig ist, den kontinuierlichen Empfang von vier GPS-Satelliten in einer Car-Navigations-Umgebung aufrechtzuerhalten, und bekannte Takt- und Höhe-Halte-Techniken nur einen Betrieb mit mindestens zwei Satelliten erlauben können, haben herkömmliche Car-Navigationssysteme die GPS-Positionsinformationen üblicherweise durch Informationen von externen Sensoren vermehrt, um Koppelinformationen bereitzustellen. Die Koppelinformationen werden häufig von einem Trägheitsnavigationssystem, wie beispielsweise einem Gyroskop, geliefert.
- Das Vermehren von GPS-Daten durch Trägheitsnavigationsdaten hat die Verwendung der GPS-Car-Navigation sogar ermöglicht, wenn weniger als vier Satelliten sichtbar sind, wie beispielsweise in Tunneln und an Positionen in der Stadt zwischen hohen Gebäuden. Die resultierende erhöhte Komplexität und die Kosten für derartige kombinierte Systeme haben jedoch ihre Akzeptanz begrenzt.
- Herkömmliche GPS-Empfänger verwenden getrennte Verfolgungskanäle für jeden verfolgten Satelliten. Jeder Verfolgungskanal kann aus getrennten Hardware-Komponenten oder durch Zeitmultiplexen der Hardware eines einzigen Verfolgungskanals zur Verwendung mit einer Mehrzahl von Satelliten konfiguriert sein. In jedem Verfolgungskanal werden die empfangenen Signale getrennt Doppler-verschoben, um die relative Bewegung jedes Satelliten auszugleichen, und dann mit einem lokal erzeugten satellitenspezifischen Code korreliert.
- Während eines Modus, der herkömmlicherweise Satellitensignal-Akquisition genannt wird, werden verzögerte Versionen des lokal erzeugten Codes für den erfaßten Satelliten mit den Doppler-rotierten empfangenen Signalen korreliert, um den lokal erzeugten Code mit dem Code zu synchronisieren, der für den Satelliten empfangen wurde, indem bestimmt wird, welche Verzögerung am genauesten mit dem empfangenen Code korreliert. Sobald die Synchronisation für einen bestimmten Satelliten erreicht wurde, geht dieser Satellitenkanal in einen Verfolgungsmodus über, indem das Doppler-rotierte empfangene Signal kontinuierlich mit dem lokal erzeugten Code für diesen Satelliten korreliert wird, um Positionsinformationen einschließlich Pseudoentfernungs- bzw. Pseudorange- Informationen zu bestimmen. Während der Verfolgung korrelieren herkömmliche Empfänger ebenfalls das Doppler-verschobene empfangene Signal mit einer oder mehreren Versionen des lokal erzeugten Codes bei unterschiedlichen relativen Verzögerungen, wie beispielsweise eine halbe C/A-Code-Chip-Breite früh und spät bzw. vorzeitig und verspätet, bezogen auf die synchronisierte oder augenblickliche Version des Codes. Diese frühen und späten Korrelationen werden verwendet, um die Synchronisation der augenblicklichen Korrelation genau aufrechtzuerhalten.
- Wenn das Satellitensignal verloren wurde, nachdem die Verfolgung für einen bestimmten Satelliten begonnen hat, so daß die erforderliche zeitliche Zuordnung des lokal erzeugten Codes für die Synchronisation nicht länger genau bekannt ist, treten herkömmliche Empfänger erneut in den Akquisitions-Modus oder eine begrenzte Version dieses Modus ein, um die Satellitensignale durch mehrere Korrelationen erneut zu erfassen, um den lokal erzeugten Code mit dem Code, wie er empfangen wurde, erneut zu synchronisieren. Wenn der lokal erzeugte Code mit den Signalen, wie sie empfangen wurden, erneut synchronisiert wurde, werden die Positionsinformationsdaten erneut aus den Signalen von diesem Satelliten hergeleitet.
- GPS-Systeme, sowie auch viele weitere Radiofrequenz(RF)- Kommunikationssysteme, die Frequenzen verwenden, die hoch genug sind, um als Sichtliniensysteme betrachtet zu werden, in denen es eine im wesentlichen direkte Sichtlinie zwischen dem/den Sender (n) und Empfänger (n) für einen optimalen Betrieb geben muß, leiden häufig an Mehrweg-Effekten, bei denen der/die Empfänger Signale verarbeiten muß/müssen, die über eine Vielzahl von unterschiedlichen Wegen empfangen wurden. Ein einfaches Beispiel ist ein einfaches terrestrisches Fernsehsystem, bei dem ein Fernsehempfänger mit einer Antenne viele Kopien des gesendeten Signals empfängt.
- Die Vielzahl der empfangenen Signale resultiert aus zusätzlichen, üblicherweise unerwünschten Signalwegen, die eine oder mehrere Reflexionen enthalten. Wenn der Signalweg von dem Sender zu dem Empfänger eine Reflexion aufweist, muß dieser Signalweg definitionsgemäß länger als der direkte Weg bzw. Direktweg sein. Mehrwegsignale stellen ein Problem bei Systemen, wie beispielsweise GPS-Systemen, dar, bei denen die Ankunftszeit des Signals zu messen oder zu verwenden ist, da die Ankunftszeit der Mehrwegsignale von der Länge des genommenen Wegs (der genommenen Wege) abhängt.
- Die direkte Verarbeitung aller Signale, einschließlich Mehrweg- oder reflektierter Signale, verschlechtert häufig die von dem Empfänger durchgeführte Verarbeitung. Bei dem oben beschriebenen einfachen terrestrischen Fernsehübertragungssystem führt die Verarbeitung von nicht modifizierten Mehrwegsignalen durch den Empfänger zu der häufig auftretenden Verschlechterung, die "Ghosting (Geisterbild)" genannt wird, wobei mehrere Signale in dem Fernsehbild versetzt angezeigt werden. Die Vielzahl der angezeigten versetzten Videosignale resultiert aus der Differenz in den Weglängen der verschiedenen empfangenen Mehrwegsignale.
- Der direkte Weg ist der kürzeste Weg und erfordert daher die geringste Laufzeit von dem Sender zu dem Empfänger, während die verschiedenen unerwünschten Mehrwegsignale verschiedene größere Längen und daher verschiedene längere Laufzeiten als Direktwegsignale aufweisen. Signale werden teilweise in einem Fernsehempfänger in Übereinstimmung mit ihrer Ankunftszeit verarbeitet, und daher kann die resultierende Videoanzeige eine Mehrzahl von Bildern enthalten, die auf dem Fernsehbildschirm ihren unterschiedlichen Weglängen entsprechend geringfügig im Raum verschoben sind.
- Viele herkömmliche Teillösungen der Probleme des Mehrwegempfangs existieren. Bei dem terrestrischen Fernsehbeispiel wird häufig eine Antenne mit starker Richtwirkung für den Empfänger verwendet, um die Anzahl von von dem Empfänger verarbeiteten Mehrwegsignalen zu verringern. Außerdem wurden verschiedene Unterscheidungstechniken entwickelt, die das Wissen verwenden, daß die Amplitude des Direktwegsignals üblicherweise wesentlichen größer als diejenige der unerwünschten Mehrwegsignale ist, da die Signalamplitude mit dem Quadrat der Weglänge abnimmt.
- Bei anderen Arten von Systemen, wie beispielsweise den GPS-Systemen, die PRN-codierte Spreizspektrumsignale verwenden, ist es schwierig oder unmöglich, bestimmte herkömmliche Techniken anzuwenden. Beispielsweise werden GPS-Sender auf Satelliten mit komplexen Umlaufbahnen positioniert, so daß sich die Position der mehreren Sender fortwährend ändert. Dies macht ein Antennensystem mit starker Richtwirkung fast vollständig unbrauchbar. Auf ähnliche Weise stützen sich digitale Empfänger, zu denen die bei einem GPS-Empfänger verwendeten Empfänger gehören, häufig nicht ausschließlich auf die Amplituden der empfangenen Signale, sondern stützen sich ebenfalls auf andere Signalcharakteristika, wie beispielsweise die Ankunftszeit.
- Mehrwegverarbeitungstechniken, die gegenwärtig für komplexe Empfänger, wie beispielsweise GPS-Empfänger, verwendet werden, sind häufig ziemlich komplex und Ungenauigkeiten unterworfen. Ein Beispiel einer derartigen herkömmlichen Technik wird beschrieben in dem US-Patent Nr. 5 414 729, erteilt am 9. Mai 1995 an Patrick Fenton und übertragen, wie erteilt, an NovAtel Communications Ltd., Kanada. Bei dieser Technik wird eine Autokorrelationsfunktion eines teilweise verarbeiteten empfangenen Signals, das Mehrwegkomponenten enthält, mit einer geschätzten Autokorrelationsfunktion eines geschätzten Direktwegsignals verglichen, um zu versuchen, Direktwegsignale von Mehrwegsignalen für die weitere Verarbeitung zu unterscheiden. Diese Technik des Vergleichens verarbeiteter und geschätzter Korrelationsleistung ist komplex und kann dadurch fehlerhaft sein, daß die teilweise verarbeiteten Signale, auf die man sich stützt, selbst einer Verschlechterung aufgrund vieler Effekte zusätzlich zu den Mehrwegeffekten, einschließlich Empfängerbegrenzungen, unterworfen sind, die die Genauigkeit oder Wirksamkeit der Mehrwegverarbeitungstechniken verringern können.
- Beispielsweise ist es beim Verfolgen eines GPS-C/A- Signals, um Positionsinformationen von GPS-Satellitensendern zu bestimmen, üblicherweise bedeutsam, einen genauen Schätzwert der Ankunftszeit, die als Codephase bekannt ist, der PRN-Modulation der Direktwegkomponente der von jedem der verschiedenen GPS-Satelliten empfangenen C/A-Signäle herzuleiten. Es ist ebenfalls bedeutsam, einen genauen Schätzwert der Phase der von den Satelliten übertragenen, darunterliegenden Trägersignale herzuleiten, auf die die Modulation angewendet wird, die als die Trägerphase bekannt ist. Wie es jedoch z. B. in den Fig. 6, 7 und 8 des oben angegebenen Fenton-Patents offensichtlich gezeigt ist, verschlechtern die verzögerten Mehrwegkomponenten die Verfolgung der Code- und Trägerphasenschätzwerte durch Verzerren der bei einer derartigen Verfolgung verwendeten Korrelationsfunktionen.
- Was benötigt wird, ist ein verbesserter Spreizspektrumempfänger, wie beispielsweise ein Spreizspektrumempfänger zur Verwendung mit GPS-Navigationssystemen, der die Beschränkung herkömmlicher Ausgestaltungen vermeidet und bessere Ergebnisse für einen breiten Bereich von Empfangsbedingungen einschließlich Mehrweginterferenz liefert.
- Beispiele bekannter Anordnungen werden in EP-A-0501829; US-5495499; FR-2718095; US-5329549 und US-5347536 erläutert.
- Die vorliegende Erfindung liefert einen Spreizspektrumempfänger zur Verarbeitung von von einer Mehrzahl von GPS- Satelliten empfangenen Verbundsignalen, wie es in den beigefügten Ansprüchen dargelegt ist.
- Fig. 1 zeigt eine Übersichtsdarstellung der Funktionsweise eines Car-Navigationssystems gemäß der vorliegenden Erfindung.
- Fig. 2 zeigt ein Blockschaltbild des in Fig. 1 dargestellten GPS-Car-Navigationssystems, das zur verbesserten Navigation bei verringerter Satellitensichtbarkeit verwendet wird.
- Fig. 3 zeigt eine schematische Darstellung eines einzigen Satellitenkanals eines GPS-Empfängers, der zur schnellen Satelliten-Reakquisition verwendet wird.
- Fig. 4 zeigt eine schematische Darstellung eines Teils des in Fig. 3 gezeigten einzigen Satellitenkanals, bei dem eine zusätzliche Mehrzahl von Sätzen von verzögerten Codeproben korreliert werden, um eine feinere Abstufung der Korrelationsintervalle bereitzustellen.
- Fig. 5 zeigt ein Funktionsdiagramm einer bevorzugten Ausführungsform (auf einem ASIC) der Satellitenverfolgungskanäle und zugeordneter Verarbeitungskomponenten des in Fig. 1 gezeigten GPS-Car-Navigationssystems.
- Fig. 6 zeigt ein Funktionsdiagramm der Doppler-Blocks des in Fig. 1 gezeigten GPS-Car-Navigationssystems.
- Fig. 7 zeigt ein Funktionsdiagramm des Codiererblocks des in Fig. 1 gezeigten GPS-Car-Navigationssystems.
- Fig. 8 zeigt ein Funktionsdiagramm des Korrelatorblocks des in Fig. 1 gezeigten GPS-Car-Navigationssystems.
- Fig. 9 zeigt als Funktionsdiagramm eine Übersicht, die die Verbindungen zwischen den Doppler-, Code-, Korrelator- und anderen Blöcken des in Fig. 5 beschriebenen Systems zeigt.
- Fig. 10 zeigt ein Blockdiagramm der Arbeitsweise des in den Fig. 5 und 9 gezeigten Systems und veranschaulicht den Datenweg der vorliegenden Erfindung.
- Fig. 11 zeigt eine Serie von explodierten Zeitsegmenten, die den Betrieb des Datenwegs der vorliegenden Erfindung darstellen.
- Fig. 12 zeigt als Blockdiagram eine Übersicht eines GPS-Empfängersystems und veranschaulicht ein vollständiges Empfängersystem gemäß der vorliegenden Erfindung, wobei eine ausführlichere Ansicht des in Fig. 2 gezeigten Satellitenempfängerabschnitts enthalten ist.
- Fig. 13 zeigt eine Blockdiagramm-Beschreibung des GRF1 204.
- Fig. 14 zeigt eine Pinbelegung des GRF1 204.
- Fig. 15 zeigt ein Zeitablaufdiagramm der AGC-Schnittstelle.
- Fig. 16 zeigt ein Verbindungsdiagramm, das eine bevorzugte Zusammenschaltung von ASIC GSP1 202, GRF1 204 und den verwandten Komponenten zeigt.
- Fig. 17 zeigt eine graphische Darstellung des Korrelationsprodukts eines ohne Mehrweginterferenz empfangenen Direktwegsignals zusammen mit durch vorhandene Mehrwegsignale verzerrten Korrelationsprodukten, deren Trägerphase sich von der Trägerphase des Direktwegsignals um etwa 0º und um etwa 180º unterscheidet.
- Fig. 18 zeigt ein schematisches Blockdiagramm von Abschnitten eines GPS-Empfängers, das die Verzögerungsverriegelte Verfolgungsschleife mit Mehrwegrestcodephasenfehlererfassung, -berechnung und/oder -korrektur gemäß der vorliegenden Erfindung darstellt.
- Fig. 19 zeigt ein schematisches Blockdiagramm eines Teils eines GPS-Empfängers, das eine weitere Ausführungsform der vorliegenden Erfindung zeigt, bei der Mehrwegsignalduplikate in einer Fehlerverfolgungsschleife zur späteren Auslöschung in einer Trägerverfolgungsschleife erzeugt werden.
- Fig. 20 zeigt ein schematisches Blockdiagramm eines Abschnitts eines GPS-Empfängers, das noch eine weitere Ausführungsform der vorliegenden Erfindung zeigt, bei der parallele Verarbeitungswege verwendet werden, um vorhergesagte Werte eines unbekannten Navigationsdatenmodulationsbits zu verfolgen, bis das Bit zum Vergleich und zur Auswahl demoduliert wird.
- Fig. 21 zeigt ein schematisches Blockdiagramm eines Systems, das dem in Fig. 20 gezeigten System ähnelt, bei dem die vorhergesagte Navigationsdatenbitmodulation von den zu verarbeitenden rohen Signalen abgetrennt wird, und nicht zu der an die Fehlerverfolgungsschleifen angelegten Codephase hinzugefügt wird.
- Fig. 22 zeigt eine schematische Darstellung der Matrix von akkumulierten Korrelationsprodukten für verschiedene SVs zu verschiedenen Zeiten, die die Plazierung der frühen, augenblicklichen und späten Korrelationsprodukte für die Direkt- und Mehrwegsignale an verschiedenen Positionen innerhalb der 22-Abgriff(tap)-Verzögerungsleitung zeigt und die Codephasen-Verifizierung und die Direkt- und Mehrwegsignalmodellierung darstellt.
- Fig. 23 zeigt eine schematische Darstellung der Funktionsweise einer Ausführungsform des Systems gemäß der vorliegenden Erfindung, bei der ein getrennter Kanal in einem schnellen Akquisitions-Modus zur sequentiellen Codephasen- Verifizierung für alle SVs verwendet wird.
- Fig. 24 zeigt ein Blockdiagramm einer alternativen Ausführungsform des in Fig. 2 dargestellten GPS-Car-Navigationssystems, das zur verbesserten Navigation bei verringerter Satellitensichtbarkeit verwendet wird.
- Fig. 25A und 25B zeigen Diagramme, die Quer- bzw. Kursabweichungen darstellen, die aus der Verwendung einer geradlinigen vorhergesagten Spur resultieren.
- Fig. 26 zeigt ein Ablaufdiagramm eines energiesparenden Ruhe- bzw. Schlaf-Modus in Übereinstimmung mit der vorliegenden Erfindung.
- Fig. 1 zeigt eine Übersichtdarstellung der Arbeitsweise eines GPS-Car-Navigationssystems gemäß der vorliegenden Erfindung. Das nachstehend ausführlicher mit Bezug auf Fig. 2 beschriebene GPS-Car-Navigationssystem ist in einem Auto 10 angebracht, das sich entlang der Mitte der Fahrbahn 12 bewegt. Ein NAVSTAR-Satellit 14 in dem unteren linkeren Quadranten der Figur befindet sich in Sicht des Autos 10. Eine simulierte kreisförmige GPS-Überkopf-Anzeige, die ungefähr über der Kreuzung 22 der Fahrbahn 12 und der Fahrbahn 16 positioniert ist, gibt an, daß sich der Satellit 14 zwischen 0º und 45º Elevationsgrade über dem Horizont befindet, wenn es von dem Auto 10 aus betrachtet wird.
- Für die Zwecke der Darstellung ist der Satellit 18 über Kopf zwischen den Elevationswinkeln von 0º und 45º positioniert. Die Sichtlinie zwischen dem Satelliten 18 und dem Auto 10 wird jedoch von Gebäuden 20 verdeckt, so daß sich der Satellit 18 nicht in Sicht des an der Position entlang der Fahrbahn 12 befindlichen Autos 10 befindet, wie es gezeigt ist. In ähnlicher Weise ist die Sichtlinie zwischen dem Satelliten 19 und dem Auto 10 durch Gebäude 21 verdeckt. Wie es jedoch nachstehend erläutert wird, kann die Sichtlinie zwischen dem Satelliten 19 und dem Auto 10 vorübergehend frei sein, wenn sich das Auto 10 beim Überqueren der Kreuzung 22 in der Position 11 innerhalb der Kreuzung 22 befindet.
- Es wird nun auf Fig. 2 Bezug genommen. Das GPS-Car- Navigationssystem 24 stellt eine erste Ausführungsform eines Car-Navigationssystems gemäß der vorliegenden Erfindung dar, das in dem Auto 10 gemäß Fig. 1 eingebaut werden kann. Das GPS-Car-Navigationssystem 24 umfaßt ein GPS-Car-Systemmodul 26, das mit von Satelliten über eine GPS-Antenne 28 empfangenen Signalen, Daten bezüglich der dann aktuellen - und erwarteten zukünftigen - physikalischen Umgebung des Autos 10, beispielsweise über eine Kartendatenbank 30, und einer Dateneingabe von dem Bediener des Autos über beispielsweise eine Eingabevorrichtung 32 versorgt wird. Das GPS-Car- Systemmodul 26 liefert eine Ausgabe an den Bediener, beispielsweise in der Form einer GPS-Kartenanzeige, über die Anzeigeeinheit 34, die sowohl eine Sichtanzeige als auch eine Sprachschnittstelle umfassen kann, die Informationen nach Bedarf ansagt, um optisch präsentierte Daten zu ergänzen oder sogar teilweise zu ersetzen.
- Die vorliegende Erfindung kann konfiguriert werden zur Verwendung mit nur einem GPS-Empfänger, mit einem durch Karten aus beispielsweise einer Kartendatenbank 30 unterstützten GPS-Empfänger und/oder zur Verwendung mit einem GPS-Empfänger, der sowohl von einer Kartendatenbank als auch von einer externen Informationsquelle, beispielsweise von einem externen Sensor, unterstützt wird. Diese externe Informationsquelle kann zum Beibehalten der Positionsinformationen durch Koppelnavigation während solcher Zeiten verwendet werden, wenn keine ausreichende Anzahl von Satelliten sichtbar ist, um die gewünschten Informationen bereitzustellen.
- Im Betrieb wird ein Verbund bzw. Gemisch aller von NAVSTAR-Satelliten empfangener Signale von der GPS-Antenne 28 an einen Satellitenempfängerabschnitt 36 des GPS-Car- Systemmoduls 26 angelegt. Signale von einzelnen NAVSTAR- Satelliten werden dann in satellitenspezifischen Verfolgungskanälen, wie beispielsweise den SatTRAK-Kanälen 38, 40, 42 und 44, verfolgt. Obgleich es relativ üblich ist, vier bis zwölf Satelliten zu verfolgen und somit ein bis zwölf Satellitenverfolgungskanäle zu verwenden, sind aus Gründen der Klarheit nur vier derartige Kanäle gezeigt. Die Ausgaben dieser satellitenspezifischen Verfolgungskanäle werden von dem SatProcessor bzw. Satellitenprozessor 46 verarbeitet, um xuser, yuser- zuser- und tuser-Daten über eine geeignete Logiksteuerung an einen GPS-Positionsprozessor, wie beispielsweise PosProcessor oder Nav Soln 48, zu liefern, der die Navigationslösung bestimmt, um Positionsdaten zu bestimmen. Die Positionsdaten werden dann vom PosProcessor 48 an eine geeignete Anzeige für den Bediener des Autos angelegt, wie beispielsweise eine Anzeigeeinheit 34.
- Der externe Sensor 49 kann in Fig. 2 zweckmäßigerweise Sensordaten oder lokale oder Satelliten-Positionsinformationen oder Positionsinformationen, die eine lokale Position oder Satelliten-Positionsinformationen liefern, direkt an den PosProcessor 48 zum Vergleich mit den von dem SatProcessor 46 und/oder von dem Kartenanzeigeprozessor 50 bestimmten Positionsinformationen liefern. Der externe Sensor 49 kann zweckmäßigerweise ein beliebiger Sensor sein, der Informationen, die zum Aktualisieren von Positionsinformationen zur Koppelnavigation nützlich sind, einschließlich der Richtung, der Geschwindigkeit oder der Beschleunigung oder anderen Daten, aus denen Koppelnavigationsdaten hergeleitet werden können, liefert. Herkömmliche Sensoren umfassen Trägheitsnavigationssysteme mit magnetischen oder optischen Gyroskopen, Kreiselmagnetkompassen, Odometern oder Radsensoren oder dergleichen. Alternativ können externe GPS- Format-Signale, wie beispielsweise diejenigen, die von einem Pseudo-Liten bereitgestellt werden, verwendet werden, um gegenwärtige Satelliten- oder Positionsinformationen zu aktualisieren.
- Am Beginn einer navigierten Reise würde der Bediener des Autos 10 üblicherweise Daten, die die physikalische Umgebung betreffen, die die beabsichtigte Route umgibt, dem GPS-Car- Systemmodul 26 bereitstellen, indem eine geeignete Datenspeichervorrichtung, wie beispielsweise eine CD-ROM, in die Kartendatenbank 30 eingefügt wird und/oder Daten über eine Eingabevorrichtung 32 eingegeben werden, die zweckmäßigerweise eine Kleintastatur, eine Tastatur, eine Zeigevorrichtung, eine Rollkugel, ein Berührungsbildschirm, ein graphischer Notizblock, eine Spracherkennungs-Schnittstelle und/oder eine Kombination derartiger Eingabevorrichtungen sein kann. Der Bediener des Autos 10 würde ebenfalls das beabsichtigte Ziel in das GPS-Car-Systemmodul 26 über eine mit der Anzeigeeinheit 34 wechselwirkende Dateneingabevorrichtung, wie beispielsweise eine Maus oder eine Rollkugel, und/oder über die Eingabevorrichtung 32 eingeben. Der Karten/Anzeige-Prozessor 50 des GPS-Car-Systemmoduls 26 würde dann die gewünschte Route üblicherweise von der dann aktuellen Position als Ursprungspunkt zu dem gewünschten Ziel in Übereinstimmung mit den Regeln der Navigation und von der Kartendatenbank 30 bereitgestellte Einzelheiten des Ortes entwickeln. Die geeigneten Routendaten werden in der Routendatenbank 52 gespeichert, und zwar einschließlich des Routings in der Form von Straßen und Abbiegungen zwischen Straßen. Zusätzliche Informationen, wie beispielsweise die Höhe, die Breite der Straßen usw., können ebenfalls in der Kartendatenbank 30 und/oder der Routendatenbank 52 enthalten sein. Diese Datenbanken können in dem GPS-Car-Navigationssystem 24 enthalten sein und/oder dem GPS-Car-Systemmodul 26 von externen Speichermedien, wie beispielsweise in geeigneten Plattenlaufwerken angeordneten Disketten, verfügbar gemacht werden.
- Während der Navigation kann jeder sichtbare Satellit in einem Satellitenverfolgungskanal verfolgt werden. Wenn beispielsweise vier oder mehr Satelliten sichtbar sind, wird jeder der sichtbaren Satelliten in einem eigenen Kanal, wie beispielsweise den SatTRAK-Kanälen 38, 40, 42 und 44, verfolgt. Die Ausgabe der Satellitenverfolgungskanäle wird dann an den SatProcessor 46 angelegt, der satelliten-basierte Lösungen für die vier Unbekannten, wie beispielsweise xuser, yuser, Zuger und tuser bereitstellen würde. Die durch xuser und yuser dargestellten Daten werden herkömmlicherweise als die zweidimensionalen orthogonalen Komponenten der Erdoberfläche, wie beispielsweise Norden und Osten, verwendet. Gemäß der vorliegenden Erfindung werden xuser und yuser jedoch vorzugsweise verwendet, um Daten für ein Paar von orthogonalen Richtungen darzustellen, die für die Richtung der Fahrzeugbewegung spezifisch sind und Aufspur(on-track)- und Querspur(cross-track)-Richtungen genannt werden.
- Herkömmliche Richtungen, wie beispielsweise Nord, Süd, Ost und West, beziehen sich auf die magnetischen oder wahren Nordpole der Erde, während Aufspur und Querspur, die bei der vorliegenden Erfindung verwendet werden, Richtungen sind, die relativ zu der erwarteten Richtung der Bewegung des Autos 10 zu einem beliebigen bestimmten Punkt in der Route festgelegt werden. Beispielsweise würde sich bei einer 90º- Abbiegung von einem Kurs genau nach Norden der Winkel des Fahrzeuggeschwindigkeitsvektors von 0º auf 90º ändern, wenn auf die Erdoberfläche bezogene Richtungen, wie beispielsweise Nord und Ost, verwendet werden. Die gleiche Abbiegung würde keine Änderung in dem 0º-Winkel des Fahrzeuggeschwindigkeitsvektors vor oder nach der Abbiegung aufweisen, solange wie das Auto 10 auf der erwarteten Spur bleibt.
- Die durch Zuser dargestellten Daten sind üblicherweise die Oberflächenhöhe, wie beispielsweise die Höhe bzw. Elevation über dem Meeresspiegel, während die durch tuser dargestellten Daten die genaue Zeit, die aus einem oder mehreren der Satellitenverfolgungskanäle bestimmt wird, darstellen.
- Lösungen für alle vier Unbekannten der Positionsinformation können aus Signalen von vier sichtbaren Satelliten hergeleitet werden, so daß genaue Positionsinformationen innerhalb der Genauigkeitsgrenze, die dann von der sichtbaren GPS-Satelliten-Konstellation verfügbar ist, somit von dem PosProcessor 48 an den Karten/Anzeige-Prozessor 50 angelegt werden können. Die von den Satelliten bestimmten Positionsinformationen werden mit den physikalischen Daten von der Kartendatenbank 30 und/oder den gewünschten Routendaten von der Routendatenbank 52 verarbeitet, um geeignete Navigationsinformationen an den Bediener des Autos 10 über die Anzeigeeinheit 34 zu liefern.
- Wenn weniger als vier Satelliten sichtbar sind, kann die an den PosProcessor 48 angelegte tuser-Lösung durch die geschätzte Lösung test 54 ersetzt werden, die beispielsweise aus einem internen Taktmodell 54 bei der Positionsschätzung oder dem Positionsmodell 63 hergeleitet wird. Auf ähnliche Weise kann die zuser-Lösung durch eine zest-Lösung 56 ersetzt werden, die aus einem ebenfalls im Positionsmodell 63 enthaltenen Elevationsschätzwert 56 hergeleitet wird, und zwar in Übereinstimmung mit von der Routendatenbank 52 in Übereinstimmung mit den dann aktuellen, an den Karten/Anzeige- Prozessor 50 angelegten GPS-Positionsinformationen hergeleiteten Routing-Daten. test 54 und zest 56 werden an den PosProcessor 48 angelegt und dann anstatt von tuser und Zuger verwendet, wenn nur zwei Satelliten sichtbar sind. Die Verwendung von geschätzten oder modellierten Lösungen für die Variablen t und z, d. h. die Verwendung von test 54 und zest 56, sind herkömmlicherweise als Takt-Kalten bzw. als Höhe- Halten bekannt.
- Es muß bemerkt werden, daß die bis jetzt beschriebene spezielle Konfiguration des GPS-Car-Navigationssystems 24 nur eine von vielen bekannten Möglichkeiten zum Konfigurieren derartiger Systeme darstellt, wobei irgendeines dieser Möglichkeiten verwendet werden kann, ohne den Erfindungsgedanken oder Schutzumfang der vorliegenden Erfindung zu verlassen, die in den Ansprüchen festgelegt ist.
- Gemäß der vorliegenden Erfindung kann die Breite der Fahrbahn, die entweder bekannt ist oder geschätzt wird, verwendet werden, um yest 60 anstatt yuser zur Verwendung bereitzustellen, wenn nur ein Satellit sichtbar ist. yest 60 kann aus der Routendatenbank 52 und/oder der Kartendatenbank 30 hergeleitet werden. Da die Unbekannten x und y orthogonal sind, kann xuser verwendet werden, um die Aufspur-Informationen zu beschreiben, d. h. die Fortbewegung des Autos 10 entlang seiner vorbestimmten Spur, während yest 60 die Querspur- Informationen darstellt, d. h. wie weit das Auto 10 von der Mitte der Straße abgekommen ist.
- Es wird auf Fig. 1 Bezug genommen. xuser wird verwendet, um die Fortbewegung des Autos 10 entlang der Fahrbahn 12 anzugeben, während yest 60 verwendet wird, um die Breite der Fahrbahn 12 darzustellen. Die tatsächliche Breite der Fahrbahn kann von der Kartendatenbank 30 hergeleitet oder angenommen werden, da der tatsächliche Wert der Breite der Fahrbahn verglichen mit den entlang der Navigationsroute zu messenden Entfernungen relativ klein und somit häufig unbedeutend ist. Da der (die) maximal erlaubte Querspur-Fehler (bzw. Querabweichung), d. h. der maximal erlaubte geeignete Wert für y, durch die physikalische Breite der Straße einschränkt wird, läßt sich yest 60 relativ einfach genau schätzen.
- Durch Verwenden von yest 60, zest 56 und test 54 ist es möglich, verwendbare Navigationsdaten für das Auto 10 entlang einer bekannten Fahrbahn unter Verwendung von Signalen von nur einem einzigen sichtbaren Satelliten bereitzustellen. Es ist bedeutsam zu bemerken, daß relativ genaue vorherige und anfängliche Positionsinformationen erforderlich sein können, und daß nicht alle sichtbaren NAVSTAR-Satelliten für eine Navigation mit einem einzigen Satelliten geeignet sein werden, und zwar abhängig vom der Position des Satelliten in bezug auf den Weg des Autos 10. Die während einer Navigation mit einem einzigen Satelliten bestimmten Positionsinformationen sind Positionsinformationen entlang der Spur, die akkumuliert und zum Bestimmen der akkumulierten, entlang der Spur zurückgelegten Entfernung verwendet werden können. Diese Daten liefern zurückgelegte Entfernungsinformationen, die herkömmlicherweise in einem Fahrzeug durch ein Odometer bereitgestellt werden, und können statt der von einem Odemeter bereitgestellten Entfernungsinformationen verwendet werden.
- Es wird nun sowohl auf Fig. 1 als auch auf Fig. 2 Bezug genommen. Abbiegungsdaten können verwendet werden, um die terrestrische GPS-Navigation durch Verwenden der Erfassung einer bekannten Abbiegung zu verbessern, um die Fortbewegung entlang einer vorbestimmten Route zu aktualisieren. Wenn mindestens vier Satelliten sichtbar sind, kann die Position des Autos 10 mit der Genauigkeit des GPS-Systems bekannt sein. Wenn Takt-, Höhe- oder Querspur-Halten oder eine Kombination dieser verwendet wird, wird die bekannte Position des Autos durch jede Ungenauigkeit des verwendeten Schätzwerts oder der verwendeten Schätzwerte verschlechtert. Beispielsweise werden während des Takt-Haltens der Drift des internen Taktmodells und die Ungenauigkeit der Quelle von teßt 54 die Genauigkeit verschlechtern, mit der die Position bekannt ist, und zwar als Funktion der Größe der Ungenauigkeit. In ähnlicher Weise wird jede Änderung der Höhe gegenüber der geschätzten oder fest vorgegebenen Höhe, d. h. jede Ungenauigkeit von zest 56, die Genauigkeit der bekannten Position verschlechtern. Änderungen der Fahrbahnbreite und Ungenauigkeiten der Kartendaten in Hinblick auf die Fahrbahnbreite, d. h. jede Ungenauigkeit von yest 60, können die Positionsinformationen ebenfalls verschlechtern.
- Sogar mit vier sichtbaren Satelliten kann es die Geometrie der sichtbaren Satelliten schwierig machen, die Position durch Messung von GPS-Signalen zu bestimmen. Ferner ist es während der terrestrischen Navigation für Satelliten nicht ungewöhnlich, während der Navigation vorübergehend verdeckt zu sein, beispielsweise indem sie durch Gebäude und andere Hindernisse blockiert werden.
- Es kann daher wünschenswert sein, die Genauigkeit, mit der die aktuelle Position des Fahrzeugs bekannt ist, mit tatsächlichen Positionsinformationen, wann immer möglich, zu aktualisieren. Die Aktualisierungsinformationen werden manchmal nützlich sein, wenn vier Satelliten sichtbar sind, wobei sie jedoch immer als Zusatzdaten nützlich sind, wenn weniger als vier Satelliten sichtbar sind. Aktualisierungsinformationen sind während der Navigation mit einem einzigen Satelliten extrem nützlich, um eine Akkumulation von Fehlern in den Positionsinformationen zu vermeiden.
- Im Betrieb wurden dem System eine ursprüngliche Position und ein Ziel bereitgestellt, wobei das System dann die zu folgende Spur bestimmte. Die zu folgende Spur oder Routing- Informationen können in Form einer Datenbank von Rauten- Informationen, wie beispielsweise der Routendatenbank 52 bereitgestellt werden. Bei dem verwendeten Beispiel folgt die Spur 62 der Mittellinie der Straße 12 zu der Kreuzung 22 und biegt dann ab 64, um der Mittellinie der Straße 16 zu folgen. Die Spur 62, die Straßen 12 und 16, die Kreuzung 22 und die Abbiegung 64 werden der Routendatenbank 52 während der Erstellung der Route von dem Karten/Anzeige-Prozessor 50 aus der dann aktuellen Position und dem über die Eingabevorrichtung 32 eingegebenen Ziel bereitgestellt.
- Die physikalische Position des Autos 10 ist sehr genau bekannt, wenn das Auto 10 bei der Abbiegung 64 abbiegt. Diese genaue Kenntnis der Position des Autos zu einer bestimmten Zeit kann zweckmäßigerweise verwendet werden, um die GPS-Navigationsinformationen durch. Bereitstellen einer Positions-Neueinstellung bzw. Rücksetzung zu aktualisieren, die einer bekannten Anfangsposition ähnlich ist. Die Aktualisierungsinformationen aus Abbiegungen sind mit höchster Wahrscheinlichkeit verwendbar, wenn der Winkel der Abbiegung 64 ausreichend groß ist, um eine eindeutige Positionsbestimmung zu ermöglichen. Es wird erwartet, daß jede Abbiegung von mehr als 45º erfaßt werden kann. Bei höheren Geschwindigkeiten des Fahrzeugs können kleinere Abbiegungswinkel ebenfalls nützliche Informationen liefern. Die Positionsaktualisierungsinformätionen werden an das Positionstaodell 63 angelegt, um den internen Takt oder dass test-Modell 54, die Elevation oder das zest-Modell 56, das yest-Modell 60 sowie das xest 61, das ein Modell der Position des Autos entlang der Spur ist, zu aktualisieren. Diese vier Schätzwerte bilden zusammen das Positionsmodell 63, das durch Informationen von der Kartendatenbank 30, der Routendatenbank 52, von einem Aktuelle-Position-Prozessor 70, von dem PosProcessor 48 und/oder von dem externen Sensor 49 aktualisiert werden können, um das genaueste verfügbare Positionsmodell 63 zu bilden. Das Positionsmodell 63 kann ebenfalls verwendet werden, um Schätzwerte an die gleichen Datenquellen zu liefern.
- Das tatsächliche Abbiegen des Autos kann dann durch eine Änderung in dem Fahrzeuggeschwindigkeitsvektor erfaßt werden, der aus den GPS-Daten oder mit anderen herkömmlichen Mitteln, wie beispielsweise einem Magnetkompaß oder einem Trägheitsnavigationssensor bestimmt wird. In Übereinstimmung mit dem schnellen Reakquisitions-System, das nachstehend mit Bezug auf Fig. 3 beschrieben ist, können GPS-Daten alleine in geeigneter Weise derartige Abbiegungen erfassen, sogar wenn eine Navigation mit einem einzigen Satelliten erforderlich ist. Die Abbiegung, die von dem Abbiegungsdetektor 66 erfaßt wird, ist mit Daten von der Routendatenbank 52 korreliert, um die tatsächliche Position des Autos mit der Genauigkeit der Kartendatenbank 30 zu bestimmen. Die Genauigkeit der Daten in der Kartendatenbank 30 kann ohne weiteres und zweckmäßigerweise viel größer als die von dem GPS-System verfügbare Genauigkeit sein, insbesondere, wenn eine Navigation mit einem einzigen Satelliten oder irgendeine Kombination des Takt-, Höhen- oder Querspur-Haltens verwendet wird. Daher kann die Positionsaktualisierung eine wesentliche Erhöhung der Genauigkeit bei der Bestimmung der dann aktuellen Position ermöglichen.
- Der Nutzen der Vorgehensweise dieser Ausführungsform der vorliegenden Erfindung ist ähnlich der Identifikation und der Verwendung eines bekannten Wegpunkts bei der Durchführung einer Koppelnavigation. Der kumulative Fehler wird bei dem bekannten Wegpunkt wesentlich verringert, so daß zusätzliche zukünftige Positionsbestimmungsfehler die Last einer Akkumulation vergangener Fehler nicht tragen.
- Wie es in Fig. 2 gezeigt ist, liefert die Routendatenbank 52 Daten bezüglich der Spur 62 üblicherweise aus der Kartendatenbank 30 an den Karten/Anzeige-Prozessor 50, um die aktuelle GPS-Position anzuzeigen, und kann ähnliche Informationen ebenfalls an den Abbiegungsdetektor 66, den Abbiegungskomparator 68 und/oder den Aktuelle-Position-Prozessor 70 liefern, um den PosProcessor 48 mit einer Positionsrücksetzung zu aktualisieren.
- Der Abbiegungsdetektor 66 kann auf viele unterschiedliche Arten konfiguriert sein und wird verwendet, um tatsächlich von dem Auto 10 ausgeführte Abbiegungen zu erfassen, und Abbiegungen, wie beispielsweise die Abbiegung 64, aus der Routendatenbank 52 zum späteren Vergleich mit der erfaßten Abbiegung auszuwählen. In Übereinstimmung mit einer bevorzugten Ausführungsform der vorliegenden Erfindung kann der Abbiegungsdetektor 66, die von dem PosProcessor 48 gelieferte aktuelle GPS-Position bearbeiten, um eine Fahrzeuggeschwindigkeitsvektorposition zu entwickeln, die sowohl die Richtung als auch die Geschwindigkeit der Bewegung angibt. Wesentliche Änderungen in dem Richtungsabschnitt des Fahrzeuggeschwindigkeitsvektors würden eine Änderung der Richtung, wie beispielsweise eine Abbiegung, angeben. Der Abbiegungsdetektor 66 kann somit Abbiegungen direkt aus den GPS-Informationen durch Bestimmen des Fahrzeuggeschwindigkeitsvektors und Erfassen von eine Abbiegung darstellenden Änderungen in dem Fahrzeuggeschwindigkeitsvektor erfassen.
- Der Abbiegungsdetektor 66 oder eine andere Einheit, falls zweckmäßig, bearbeitet ebenfalls von der Routendatenbank 52 bereitgestellte Routeninformationen, um die erwartete Position des Autos 10 entlang der Spur 62 basierend auf der dann aktuellen GPS-Positionsinformation zu bestimmen. Sobald die erwartete Position des Autos 10 entlang der Route bestimmt ist, können eine oder mehrere Abbiegungen in dem Bereich der erwarteten Position des Autos 10 zum Vergleich mit den aus den GPS-Daten hergeleiteten Anzeichen für eine physikalische Abbiegung ausgewählt werden.
- Wenn Änderungen in dem tatsächlichen Fahrzeuggeschwindigkeitsvektor, der beispielsweise aus den GPS-Positionsdaten hergeleitet wird, sich angemessen mit den bei einer bestimmten Abbiegung vorhergesagten Änderungen vergleichen lassen, die aus der Routendatenbank 52 hergeleitet werden, kann die tatsächliche Position des Autos 10 zur Zeit der Abbiegung sehr genau bestimmt und verwendet werden, um die GPS-Daten an der Abbiegung zu aktualisieren. Wenn eine tatsächliche Abbiegung aus einer Änderung in dem Fahrzeuggeschwindigkeitsvektor aus der GPS-Position des Autos 10 nahe der für diese Abbiegung vorhergesagten Zeit erfaßt wird, kann die tatsächliche Position des Autos 10 zur Zeit der Abbiegung bestimmt und verwendet werden, um die dann aktuelle GPS-Position zur Verwendung als eine an den PosProcessor 48 angelegte Positions-Rücksetzung zu aktualisieren.
- Alternativ kann der Abbiegungsdetektor 66 Nicht-GPS-Messungen zum Bestimmen des Auftretens einer tatsächlichen Abbiegung des Autos 10 verwenden, wie beispielsweise Kompaßkurse oder Trägheitsnavigationsbestimmungen, die beispielsweise von einem externen Sensor 49 hergeleitet und direkt an den Abbiegungsdetektor 66 oder über den PosProcessor 48 angelegt werden, wie es in Fig. 2 gezeigt ist.
- Die Erfassung von Abbiegungen aus GPS-Signalen kann ohne weiteres durchgeführt werden, solange wie zwei Satelliten sichtbar sind und geeignete Geometrien zum Bestimmen von zweidimensionalen Koordinaten der Position des Autos liefern. Während einer Navigation mit einem einzigen Satelliten wird, wie es oben beschrieben ist, die Verwendung von Abbiegungsinformationen zum Aktualisieren der letzten bekannten Positionsinformationen sogar noch bedeutender, wobei jedoch die Position des einzigen sichtbaren Satelliten in bezug auf die Spur 62 sogar noch wichtiger wird, damit tatsächliche Abbiegungen genau erfaßt werden können.
- Die Abbiegungserfassung kann ebenfalls durch Überwachen von Änderungen zwischen erfaßten und verdeckten Satelliten bereitgestellt werden. Wenn beispielsweise nur der Satellit 14 für das Auto 10 auf der Fahrbahn 12 vor der Kreuzung 22 sichtbar war, und beim Einfahren in die Kreuzung 22 der Satellit 19 plötzlich sichtbar wurde, während der Satellit 14 vorübergehend verdeckt war, könnte der Wechsel von dem Satelliten 14 zum Satelliten 19 verwendet werden, um eine Abbiegung in Übereinstimmung mit den Daten von jedem Satelliten anzuzeigen. Durch Verwendung eines schnellen Reakquisitions-Schemas, wie es hier nachstehend beschrieben ist, kann die tatsächliche Position, bei der die Richtungsänderung auftritt, d. h. die Position bei der der Wechsel zwischen Satelliten auftritt, ausreichend genau bestimmt werden, um genaue Positionsaktualisierungsinformationen an der Abbiegung zu ermöglichen.
- Auf ähnliche Weise kann der Abbiegungskomparator 68 zweckmäßigerweise innerhalb einer anderen Komponente des Systems, wie beispielsweise in dem PosProcessor 48, dem Kanten/Anzeige-Prozessor 50 und/oder dem SatProcessor 46 implementiert sein, so daß eine mögliche Abbiegung aus den Routendaten für die Spur 62 zum Vergleich mit den erfaßten .Abbiegungsdaten ausgewählt werden kann.
- Es wird nun auf Fig. 3 Bezug genommen. Bei einer anderen Ausführungsform ermöglicht die vorliegende Erfindung eine schnelle Reakquisition von Satellitensignalen, die beispielsweise nützlich ist, wenn ein vorher erfaßter Satellit verdeckt wird und dann vielleicht nur für eine kurze Zeit, beispielsweise wenn sich ein Auto über eine Kreuzung bewegt, sichtbar wird.
- Es wird auf die Sichtlinie zwischen dem Auto 10 und dem Satelliten 19 Bezug genommen. Wie es in Fig. 1 gezeigt ist, ist es in einer Stadtumgebung üblich, daß die Gebäude entlang den Straßenrändern als Barrierewand wirken, die die Sichtlinien zu vielen GPS-Satelliten verdeckt. Die von den Gebäuden 20 und 21 gebildete Barrierewand wird jedoch gewöhnlicherweise an Kreuzungen, wie beispielsweise der Kreuzung 22, durchbrochen. Beispielsweise kann das Auto 10, während es die Kreuzung 22 überquert, die Position 11 erreichen, bei der die vorher verdeckte Sichtlinie zu einem Satelliten, wie beispielsweise dem Satelliten 19, vorübergehend nicht verdeckt ist, und zwar aufgrund des Zwischenraums zwischen den Gebäuden 20 und 21 an der Kreuzung 22. Diese vorübergehende Sichtbarkeit eines vorher verdeckten Satelliten kann eintreten, während sich das Auto 10 auf der Kreuzung oder am Rand der Kreuzung befindet.
- Der vorübergehende Kontakt mit dem Satelliten 19 ist relativ kurz. Wenn die Kreuzung 22 beispielsweise 60 Fuß breit ist und sich das Auto 10 mit 30 Meilen pro Stunde bewegt, kann die benötigte Zeit, um die Kreuzung zu überqueren, so kurz wie 1,3 Sekunden sein. Herkömmliche GPS-Navigationssysteme würden beispielsweise während dieses kurzen Zeitintervalls sogar dann keine Wiedererfassung bzw. Reakquisition durchführen und keine nützlichen Daten von dem Satelliten 19 herleiten, wenn dieser vorher erfaßt wurde.
- Gemäß einer anderen Ausführungsform maximiert die vorliegende Erfindung den Gebrauch derartiger Reakquisitions- Gelegenheiten durch Minimieren der für die Reakquisition erforderlichen Zeit, der Sammlung von Daten und der Verarbeitung der gesammelten Daten zur Positionsbestimmung. Es wird nun auf Fig. 3 Bezug genommen, in der ein Abschnitt des SatTRAK-Kanals 38 als ein Beispiel für die Konfiguration jedes der Satellitenverfolgungskanäle ausführlicher gezeigt ist. Nach der ursprünglichen Akquisition verfolgt der SatTRAK-Kanal 38 einen einzigen Satelliten, indem er von der GPS-Antenne 28 empfangene Satellitensignale 72 bearbeitet. Die Satellitensignale 72 umfassen die Signale von dem Satelliten, der von dem SatTRAK-Kanal 38 verfolgt wird. Sie werden demoduliert und ausgewählt, indem sie in einem der Korrelatoren 74 mit einer Kopie des pseudo-zufälligen 1023- Chip-Spreizspektrumcodes, der auf Satellitensignale 72 von dem GPS-Satelliten angewendet wird, multipliziert werden. Die Korrelatoren 74 können aus Exklusiv-ODER-NOR-Gattern konfiguriert sein, um die zum Bereitstellen eines Korrelationsergebnisses erforderliche Zeit zu minimieren.
- Während der Verfolgung wird die Kopie des von dem Codegenerator 76 erzeugten und an die Exklusiv-ODER-Korrelatoren 74 mit der Verzögerung 78 angelegten Codes mit dem Code in den empfangenen Satellitensignalen 72 synchronisiert, so daß die Kopie des Codes mit den Satellitensignalen 72 korreliert. Dies kann auf mehrere, in der Technik bekannte unterschiedliche Art und Weisen erreicht werden, einschließlich durch Verschieben der Erzeugungszeit des Codes in dem Codegenerator 76 und/oder durch Einstellen des von einer externen Verzögerung angelegten Verzögerungsbetrags. In jedem Fall wird der an die Exklusiv-ODER-Korrelatoren 74 angelegte Code, wenn der SatTRAK-Kanal 38 auf den ausgewählten Satelliten eingerastet ist, mit dem von diesem ausgewählten Satelliten empfangenen Code synchronisiert. Diese Korrelation wird üblicherweise die pünktliche oder augenblickliche Korrelation genannt, um diese Synchronisation anzugeben.
- Herkömmliche GPS-Empfänger behalten nach der Akquisition eine Einrastung auf dem Satellitensignal bei, indem sie zusätzliche Korrelationen durchführen, die häufig frühe oder späte Korrelationen genannt werden, oder von frühen oder späten Korrelatoren durchgeführte Korrelationen. Diese Korrelationen werden dann zeitlich uni eine bestimmte Verzögerung verschoben, beispielsweise eine halbe C/A-Code-Chip- Breite von dem pünktlichen oder augenblicklichen Korrelator. Das heißt, wenn die Zeit des Auftretens eines bestimmten Chips in dem Satellitensignal die Zeit t0 ist, dann würde der augenblickliche Korrelator unter idealen Bedingungen die Satellitensignale 72 mit einem Duplikat des Codes mit dem gleichen Chip zur Zeit t0 multiplizieren. Die frühe Korrelation würde zur Zeit t0 - ¹/&sub2; Chip durchgeführt werden, und die späte Korrelation würde zu einer Zeit t0 + ¹/&sub2; Chip durchgeführt werden. Wann immer die Synchronisation zwischen dem Codegenerator 76 und den empfangenen Satellitensignalen zu driften beginnt, fangen die Korrelationsergebnisse an sich zugunsten entweder der frühen oder der späten Korrelation auf Kosten der augenblicklichen Korrelation zu ändern.
- Eine herkömmliche Vorgehensweise zum Beibehalten der Verriegelung auf den Signalen von einem bestimmten Satelliten besteht darin, das Timing des Codegenerators 76 mit einer Rückkopplungsschleife einzustellen, die verwendet wird, um die Leistung in den Korrelationsprodukten in den frühen und späten Korrelatoren gleich zu halten. Auf diese Art und Weise kann der Codegenerator 76 kontinuierlich mit Satellitensignalen 72 neu synchronisiert werden, so daß die Genauigkeit des Systems innerhalb eines halben Chips in jeder Richtung (früh oder spät) der empfangenen Signale liegt.
- Wenn die Satellitensignale 72 vorübergehend verloren gegangen sind, da beispielsweise die Satellitensignale vorübergehend durch Gebäude 20 und 21 verdeckt sind, wie es in Fig. 1 gezeigt ist, werden verschiedene Techniken verwendet, um zu versuchen, den Codegenerator 76 mit empfangenen Satellitensignalen 72 zu synchronisieren, so daß der SatTRAK-Kanal 38 die Signale von dem gewünschten Satellitenneu erfassen kann. Wie es oben bemerkt ist, umfassen herkömmliche Techniken das Takt- und Höhen-Halten, und eine Ausführungsform der vorliegenden Erfindung liefert eine weitere Technik, die Querspur-Halten (cross-track hold) genannt wird.
- Wenn die Verdeckung der Satellitensignale nicht sehr kurz ist, ist die Genauigkeit der Vorhersage derartiger Techniken jedoch nicht ausreichend, um die Synchronisation, ausgenommen für eine sehr kurze Zeitspanne der Verdeckung, aufrechtzuerhalten.
- In Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung wird eine massiv parallele Korrelation verwendet, um ein erweitertes Einfangfenster des Korrelations-Einfangs um die dann aktuelle vorhergesagte Synchronisationszeit herum zu erzeugen, um ein zuvor erfaßtes und dann verdecktes Satellitensignal sofort neu zu erfassen. Insbesondere wird die Geschwindigkeit der Reakquisition gemäß der vorliegenden Erfindung ausreichend schnell gemacht, so daß nützliche GPS-Positionsdaten während der Zeit erfaßt werden können, in der sich das Auto 10 über die Kreuzung 22 bewegt, obgleich beispielsweise die Signale von dem Satelliten 19 durch die Gebäude 20 verdeckt wurden, bis sich das Auto 10 innerhalb der Kreuzung 22 befand.
- Für diesen Zweck wird eine erweiterte Serie von Korrelationen mit einer Serie von Verzögerungen eines festen Bruchteils einer Chip-Breite, wie beispielsweise einer ¹/&sub2;-Chip- Breite, zusätzlich zum Erweitern sowohl der frühen als auch der späten der vorhergesagten sofortigen Korrelation durchgeführt. Wie es in Fig. 3 gezeigt ist, werden Satellitensignale 72 in eine feste Anzahl von Proben umgewandelt, beispielsweise mit Hilfe einer Analog/Digital-Umwandlung in einem A/D-Wandler 73, um n Signalproben 75 bereitzustellen. Eine ähnliche Anzahl von Codeproben wird durch k fest vorgegebene ¹/&sub2;-Chip-Breite-Verzögerungen 78 bereitgestellt, um k-1 Sätze von n Codeproben 80 bereitzustellen, die von einem ersten Satz von n Codeproben 80 ohne Verzögerung zu einem k- 1ten Satz von n Codeproben 80 fortschreiten, die mit einer Gesamtzahl von k Verzögerungen 78 verzögert wurden. Es ist zweckmäßig ¹/&sub2;-Chip-Verzögerungen für jede Verzögerung 78 zu verwenden, wobei jedoch andere Bruchteile einer Chip-Breite verwendet werden können.
- Der k/2-te Satz von n Codeproben 80 oder der Satz am nächsten zu k/2 kann zweckmäßigerweise um den richtigen Betrag verzögert sein, um die augenblicklichen Korrelation in einem der Exklusiv-ODER-Korrelatoren 74 mit n Signalproben 75 von dem A/D-Wandler 73 während der Verfolgung durchzuführen. Der (k/2-1)-te Satz von n Codeproben 80 kann dann verwendet werden, um die frühe Korrelation durchzuführen, während der (k/2+1)-te Satz von n Codeproben 80 dann verwendet werden kann, um die späte Korrelation während der Verfolgung durchzuführen. Die zusätzlichen Korrelationen könne ebenfalls während der Verfolgung durchgeführt werden, wobei jedoch ein erheblicher Vorteil bereitgestellt wird, wenn sie während der Reakquisition verwendet werden.
- Das heißt, daß bei der vorliegenden Erfindung die bei der Verfolgung herkömmlicherweise verwendeten frühen, augenblicklichen und späten Korrelationen ebenfalls während des Reakquisitions-Modus verwendet werden können, und zwar unterstützt durch eine erhebliche Anzahl von Korrelationen, die zusätzliche Verzögerungen verwenden. Unabhängig davon, ob die frühen oder späten Korrelationen verwendet werden oder nicht, ergibt sich eine zweckmäßige Anzahl zusätzlicher Verzögerungen auf beiden Seiten der augenblicklichen Verzögerung aus (k-1) = 20, so daß neun oder zehn ¹/&sub2;-Chip-Verzögerungen auf beiden Seiten der k/2-ten augenblicklichen Verzögerung bereitgestellt werden. Auf diese Art und Weise werden Korrelationen während der Reakquisition mit Zeitverzögerungen von fünf Chip-Breiten auf beiden Seiten der vorhergesagten augenblicklichen oder pünktlichen Verzögerung durchgeführt. Dies stellt ein erweitertes Einfangfenster mit einem potentiellen Fehler in der Größenordnung von ±5 · 300 Metern dar. Das heißt, daß, wenn die vorhergesagte Synchronisation mit den Satellitensignalen 72, die von dem GPS-Car-Systemmodul 26 modelliert werden, um soviel wie das Äquivalent eines ± 1500 Meter Positionsfehlers während des Signalverlusts von einem bestimmten Satelliten driftet, der beispielsweise aus der Verdeckung in einer Stadt-Lage resultiert, mindestens einer der Mehrzahl von Exklusiv-ODER-Korrelatoren 74 die erforderliche augenblickliche Korrelation bereitstellen würde, um sofort auf den Satellitensignalen 72 einzurasten.
- Sobald die Korrelationen durchgeführt sind, werden die Korrelationsergebnisse für jeden Satz von n Codeproben 80 in Summierern 84 summiert, um eine Serie von Werten zu erzeugen, die jeweils getrennt die Korrelation von n Signalproben 75 mit jedem der Sätze von n Codeproben 80 angeben. Diese Korrelationsergebnisse werden an einen Schwellenwerttest 82 angelegt, wobei dessen Ausgabe an den SatProcessor 46 nur angelegt wird, wenn Satellitensignale 72 erfolgreich empfangen wurden. Die Ausgabe des Schwellenwerttests 82 spezifiziert die Zahl von Verzögerungen, die die augenblickliche Korrelation für das neu erfaßte Satellitensignal darstellen. Es ist bedeutsam anzumerken, daß gemäß der vorliegenden Erfindung die Satelliten-Verfolgungs- und -Reakquisitions-Modi keine getrennten Funktionen sind, sondern eher nahtlos wechselwirken. Das heißt, daß durch Bereitstellen eines wesentlich erweiterten Einfangfensters die zur Verfolgung verwendeten Korrelationen ebenfalls automatisch für eine sofortige Reakquisition nützlich sind, solange wie das Einfangfenster ausreichend breit ist, um alle während der Signalverdeckung oder einem anderen Signalverlust akkumulierten Positionsfehler zu umfassen.
- Da die Geschwindigkeit der Reakquisition sehr bedeutsam ist, um die Möglichkeit zu maximieren, die kurze Zeit während der Bewegung über die Kreuzung 22 zu nutzen, wenn der Satellit 19 vorübergehend sichtbar sein kann, ist es vorteilhaft, alle derartigen Korrelationen parallel durchzuführen. Ferner ist es vorteilhaft, alle derartige Korrelationen in dem Einfangfenster kontinuierlich durchzuführen, um die Zeit zu minimieren, während der kein Satellitensignal verfolgt wird. Gemäß der gegenwärtig bevorzugten Ausführungsform werden Exklusiv-ODER-Korrelatoren 74 mit Hilfe von Hardware und nicht von Software realisiert, um die Geschwindigkeit der Korrelation zu maximieren und jede Fehler-Akkumulation durch Minimieren der Zeit für die Reakquisition zu minimieren.
- Im Betrieb, wenn das Auto 10 der Spur 62 entlang der Fahrbahn 12 folgt, verdecken während mindestens eines Teils der Zeit Gebäude 21 die Sichtlinie zwischen dem Auto 10 und dem Satelliten 19. Wenn der Satellit 19 vorher von dem GPS- Car-Systemmodul 26 erfaßt wurde, wird ein ungefährer Zeitwert für die Synchronisation mit Satellitensignalen vorhersagt. Dieser Wert wird so genau wie möglich innerhalb des GPS-Car-Systemmoduls 26 beibehalten, während der Satellit 19 verdeckt ist. Um die Vorhersage für die erforderliche Verzögerung so genau wie möglich aufrechtzuerhalten, d. h. den während des Signalverlustes akkumulierten Positionsfehler zu minimieren, liefern die oben beschriebenen Techniken zum Aufrechterhalten oder Aktualisieren der Positionsgenauigkeit durch Verwenden von Querspur-Halten, durch Rücksetzen der Position an einer bestimmten Abbiegung und/oder durch die Verwendung von externen Sensoren zur Koppelnavigation einen erheblichen Nutzen für die Verwendung mit den kombinierten, oben beschriebenen erweiterten Verfolgungs- und Reakquisitions-Fenstern.
- Bei der gegenwärtigen Technologie ist es zweckmäßig, ¹/&sub2;- Chip-Verzögerungen zwischen den Korrelatoren vorzusehen, wobei jedoch andere Verzögerungswerte verwendet werden können. In ähnlicher Weise ist es zweckmäßig, zu erwarten, daß die augenblickliche Korrelation innerhalb von plus oder minus fünf Chips des Timing der Satellitensignale beibehalten werden kann. Fig. 3 stellt daher eine Serie von neun oder zehn frühen und neun oder zehn späten Korrelatoren dar, die den augenblicklichen Korrelator 74 umgeben, um das ±5- Chip-Einfangfenster zu erreichen, das den augenblicklichen Korrelator 74 in 20 Halb-Chip-Schritten umgibt. Eine unterschiedliche Anzahl von Korrelatoren und anderen Verzögerungen würde ebenfalls mit der vorliegenden Erfindung arbeiten.
- Die Verwendung einer Mehrzahl fest vorgegebener Verzögerungen einer halben Chip-Breite erlaubt die sofortige Reakquisition von Signalen von einem Satelliten innerhalb einer Genauigkeit einer halben Chip-Breite. In Übereinstimmung mit Satellitensignalen 72, wie sie gegenwärtig von den NAVSTAR- Satelliten geliefert werden, stellt eine Halb-Chip-Breite einen maximalen Positionsfehler von ungefähr 150 Metern dar. Es ist möglich, den maximalen Positionsfehler und/oder die Geschwindigkeit der Datenverarbeitung wesentlich zu verringern, indem fest vorgegebene Verzögerungen mit einem anderen Verzögerungsbetrag, z. B. fest vorgegebene Verzögerungen eines Drittels, eines Viertels, eines Fünftels oder eines anderen Wertes einer Chip-Breite verwendet werden.
- Herkömmliche Ansätze für unterschiedliche Betriebsarten schalten zwischen breiten und engen Verzögerungen bei der Akquisition und/oder Reakquisition um, um einen Kompromiß zwischen der Breite des Einfangfensters und der Anzahl der für den gewünschten Bereich erforderlichen Korrelationen bereitzustellen. Gemäß der vorliegenden Erfindung wird eine neue Technik verwendet, die die vorteilhafte Verwendung von Verzögerungen mit fest vorgegebenen Chip-Breiten erlaubt, um eine feinere Graduierung der Korrelationsschritte bereitzustellen. Insbesondere werden, wie es in Fig. 4 gezeigt ist, zwei Sätze von Verzögerungen halber Breite verwendet, um das Äquivalent eines Satzes von Verzögerungen einer Viertel- Breite bereitzustellen. Die Anzahl von Sätzen von festen Verzögerungen und der Versatz zwischen ihnen kann den Anforderungen der gewünschten Anwendung entsprechend ausgewählt werden.
- Es wird nun auf Fig. 4 Bezug genommen. Eine erste Mehrzahl von Sätzen von n Codeproben 80 wird direkt von dem Codegenerator 76 hergeleitet, untereinander um Verzögerungen einer halben Chip-Breite 78 verzögert und mit n Signalproben 75 in Exklusiv-ODER(oder NOR)-Korrelatoren 74 korreliert, wie es in Fig. 3 vorgesehen ist. Zur besseren Erläuterung und Darstellung sind die Ausgaben von diesem ersten Satz eines Satzes von n Codeproben 80 als an die Summierer 84 angelegt gezeigt, um anzugeben, daß die in den Exklusiv- ODER-Korrelatoren 74 von jedem derartigen Satz von n Codeproben 80 erzeugten Korrelationsprodukte über Summierer 84 an den Schwellenwerttest 82 angelegt werden. Alle derartigen Korrelationsprodukte werden angelegt, wobei jedoch zwecks Klarheit nur die Korrelationsprodukte ohne Verzögerung, die vorhergesagte augenblickliche oder k/2-te Verzögerung und die k-te Verzögerung dargestellt sind. Die Korrelationsprodukte von dieser ersten Mehrzahl von Sätzen von n Codeproben haben voneinander einen Abstand einer Verzögerung einer ¹/&sub2;- Chip-Breite, wie es oben angegeben ist.
- Außerdem sind gemäß der vorliegenden Erfindung zusätzliche Sätze von Korrelationsprodukten mit unterschiedlichen Abständen durch Verwenden eines oder mehrerer Sätze von ¹/&sub2;- Chip-Verzögerungen 78 verfügbar, indem beispielsweise der gleiche Satellit in zwei oder mehr zeitlich zueinander versetzten Kanälen verfolgt wird. Es ist erneut bedeutsam anzumerken, daß andere Verzögerungen und/oder Offsets ebenfalls vorteilhaft verwendet werden können, und daß die Verzögerungen nicht alle gleich sein müssen.
- Insbesondere wird eine zweite Mehrzahl von Sätzen von n Codeproben 84 von dem Codegenerator 76 hergeleitet und untereinander um Verzögerungen einer ¹/&sub2;-Chip-Breite 78 verzögert. Die Verzögerungen in den zweiten Sätzen der n Codeproben 84 sind jedoch gegenüber den Verzögerungen in dem ersten Satz von n Codeproben 80 um einen festen Betrag, wie beispielsweise eine Verzögerung einer Viertel-Chip-Breite, durch Einführung einer Verzögerung einer Viertel-Chip-Breite 79 zwischen dem Codegenerator 76 und dem ersten Satz von n Codeproben in den Sätzen der n Codeproben 84 versetzt. Dies führt dazu, daß jede der Proben in den Sätzen von n Codeproben 84 in die Mitte zwischen zwei der Sätze von n Codeproben 80 fällt. Wie es in Fig. 4 gezeigt ist, sind nur k-1 Sätze von n Codeproben 84 mit k Sätzen von n Codeproben 80 erforderlich.
- Jeder der Sätze von n Codeproben 84 ist mit n Signalproben 75 in den Exklusiv-ODER-Korrelatoren 74 korreliert, wie es in Fig. 3 vorgesehen ist, um Korrelationsprodukte zu erzeugen, die dann durch zusätzliche Summierer 84 summiert werden. Wie es oben bemerkt ist, werden die gestrichelten> Linien zwischen allen Sätzen von Codeproben und den Summierern 84 verwendet, um anzugeben, daß das Korrelationsprodukt zwischen diesem Satz von Codeproben und n Signalproben 75 an einen bestimmten Summierer 84 angelegt wird. Wie es dann ohne weiteres aus Fig. 4 ersichtlich ist, werden Korrelationsprodukte, die voneinander durch Verzögerungen einer ¹/&sub4;- Chip-Breite von der 0-ten Verzögerung bis zur k-ten Verzögerung getrennt sind, unter Verwendung von Sätzen von Verzögerungen einer ¹/&sub2;-Chip-Breite und einer einzigen Verzögerung eines ¹/&sub4;-Chips (die die Offset-Verzögerung zwischen zwei Kanälen darstellen kann) erzeugt, und nach einer separaten Summation an den Schwellenwerttest 82 angelegt, um zu bestimmen, welche Verzögerung die aktuell augenblickliche Verzögerung der Satellitensignale 72 von einem von dem GPS- Car-Systemmodul 26 neu erfaßten Satelliten darstellt.
- Der zweite Satz von ¹/&sub2;-Chip-Verzögerungen kann ohne weiteres implementiert werden, indem man einen zweite Kanal den gleichen Satelliten verfolgen läßt, jedoch um eine Verzögerung einer ¹/&sub4;-Chip-Breite 79 versetzt.
- Auf diese Art und Weise kann der Bereich der Verzögerung, innerhalb dessen eine Satellitensignal-Einrastung erfaßt, beibehalten und/oder neu erfaßt werden kann, von einer Breite von ±¹/&sub2;-Chip auf ungefähr eine Breite von ±¹/&sub4;- Chip verringert werden, was ein schnelleres Einfangen zum Einrasten ermöglicht, d. h. wenn die Verfolgung optimiert und der Bereichsfehler auf ein Minimum verringert wurde.
- Es ist bedeutsam von der nahtlosen Integration der Verfolgung und der Reakquisition Notiz zu nehmen, wie sie von der vorliegenden Erfindung dadurch bereitgestellt wird, daß die gleichen Korrelationen für die Verfolgung und Reakquisition verwendet werden, und von der damit verbundenen Einfang- und Einrastgeschwindigkeit und von der dadurch bereitgestellten Einfachheit. Die Fähigkeit innerhalb eines Einfangfensters schnell neu zu erfassen, so daß eine der Korrelationen sofort als augenblickliche Korrelation verwendet werden kann, beschleunigt alle Daten-Akquisitionen danach. Es ist ebenfalls zweckmäßig, eine erste Mehrzahl von Sätzen von n Codeproben 80 zur Verfolgung zu benutzen, und wenn Satellitensignale 72 verlorengehen, eine zusätzliche Genauigkeit bei der Reakquisition durch Verwenden einer zweiten Mehrzahl von Sätzen von n Codeproben, wie beispielsweise von Sätzen von n Codeproben 84, bereitzustellen. Insbesondere kann die gleiche Mehrzahl von Sätzen von n Codeproben 84 zur Reakquisition von Signalen 72 für unterschiedliche Satelliten zu unterschiedlichen Zeiten verwendet werden, um die Gesamtzahl von Komponenten und die erforderlichen Schritte zu verringern, um alle notwendigen Korrelationen und Summierungen zu erzeugen.
- Im Betrieb versucht das GPS-Car-Systemmodul 26 ununterbrochen, die Signale von dem Satelliten 19 im SatTRAK-Kanal 38 zu verfolgen und neu zu erfassen, während der Satellit 19 verdeckt ist. Wenn das Auto 10 über die Kreuzung 22 fährt, wird die Sichtlinie zu dem Satelliten 19 vorübergehend durch die Gebäude 21 nicht verdeckt. Wann immer irgendeine der im SatTRAK-Kanal 38 durchgeführten Korrelationen angibt, daß die Satellitensignale mit ausreichender Stärke empfangen werden, so daß die Korrelationsprodukte von einigen der Korrelatoren über dem Schwellenwert liegen, wird die Reakquisition sofort erreicht. Die Reakquisition findet statt, wenn die Korrelatorausgabe angibt, daß der größte Betrag als der neue augenblickliche Korrelator ausgewählt wird. Dann werden herkömmliche Techniken zum Verbessern der Qualität der Daten verwendet.
- Die Daten von dem Satelliten 19 werden verwendet, um die GPS-Daten sofort nach einer Einschwingzeit zum Einrasten zu aktualisieren und die gegenwärtig daraus hergeleiteten bekannten Positionsinformationen zu korrigieren. Sogar wenn der Satellit 19 dann sofort erneut verdeckt wird, ermöglichen die während der Bewegung über die Kreuzung durch schnelle Reakquisition hergeleiteten Aktualisierungsinformationen eine wesentliche Verbesserung der Genauigkeit der durch GPS bestimmten Position. Dies wird es dem GPS-Car- Systemmodul 26 erlauben, die genaue Navigation sogar in sonst sehr schwierigen Bereichen, wie beispielsweise Stadtstraßen, fortzusetzen.
- Obgleich die Verwendung von Navigationsdaten eines einzigen Satelliten durch Querspur-Halten und nachfolgendes Aktualisieren von Satellitendaten durch Erfassung von Abbiegungen und/oder sofortiges Neuerfassen von Satellitensignalen in Kreuzungen jeweils getrennt beschrieben wurden, sind sie auch in Kombination sehr nützlich. Terrestrische Navigationssysteme mit GPS-Empfängern in einem selbständigen Modus, unterstützt durch Kartenanzeigen und Datenbanken und/oder unterstützt durch externe Sensoren, wie beispielsWeise Trägheitsnavigationssysteme, können aus der Verwendung von Kombinationen einer oder mehrerer derartiger Modi Nutzen ziehen. Bei einer bevorzugten Ausführungsform der vorliegenden Erfindung werden alle drei Techniken kombiniert, um die Fähigkeit des Car-Navigationssystems, genaue und nützliche Navigationsdaten bereitzustellen, zu maximieren, während eine schwierige Umgebung, wie beispielsweise Stadtstraßen, durchfahren wird.
- Es wird nun auf Fig. 5 Bezug genommen. Es wird eine bevorzugte Ausführungsform der vorliegenden Erfindung beschrieben, in der Hauptteile der SatTRAK-Kanäle 38, 40, 42 und 44 und des SatProcessor 46 der vorliegenden Erfindung in einem ASIC (Application Specific Integrated Circuit) 102 implementiert sind. Viele der Funktionen eines herkömmlichen Satelliten-Prozessors können jedoch immer noch mit Hilfe von Software ausgeführt werden. Die dargestellte spezielle Implementierung liefert ein 12-Kanal-GPS-Erfassungs- und Verfolgungssystem mit schnellen Reakquisitions-Fähigkeiten, wie sie oben beschrieben sind, wobei die Anzahl der auf dem ASIC erforderlichen Gatter, um dieses System zu implementieren, wesentlich verringert wird.
- Die von der GPS-Antenne 28 empfangenen Signale werden digitalisiert und bilden einen digitalen Verbund bzw. ein digitales Gemisch von Signalen, die von allen sichtbaren Satelliten empfangen werden, um Probendaten 100 zu erzeugen, die bei einer Frequenz von 37,33f&sub0; liegen, wobei f&sub0; die Chip-Rate des an jeden GPS-Satelliten angelegten C/A-Code ist. Zweckmäßigerweise werden die nachstehend beschriebenen Frequenzen als Vielfache von f&sub0; gekennzeichnet. Jedes von zwölf Raumfahrzeugen (SVs = Space Vehicles) oder Satelliten wird im ASIC 102 unter der Steuerung der zentralen Verarbeitungseinheit oder CPU (Central Processing Unit) 101 verfolgt, die Steuersignale und Daten an den ASIC 102 liefert. Insbesondere liefert die CPU 101 Daten betreffend die vorhergesagten Doppler-Verschiebungen und den an jedes SV angelegten C/A-Code an einen dem ASIC 102 zugeordneten Direktzugriffsspeicher oder RAM (Random Access Memory) R1 103, der die Daten an den RAM R2 105 zu zugewiesenen Zeiten liefert. Der RAM R2 105 liefert Daten an den ASIC 102 und empfängt Daten von diesem, was ermöglicht, daß die CPU 101 Daten aktualisieren kann und der ASIC 102 alte Daten verarbeiten kann, um gleichzeitig zu arbeiten. Der RAM R2 105 wird von dem ASIC 102 primär als Puffer verwendet, um Zwischenwerte von Signalen während der Verarbeitung zu speichern. Weitere herkömmliche Teile eines Mikrocomputers, einschließlich einer CPU, sind nicht gezeigt, wobei sie jedoch zweckmäßigerweise Einrichtungen umfassen können, die Software betreiben, die die Techniken des einzigen Satelliten, des Querspur-Haltens und weitere oben beschriebene Techniken sowie weitere Funktionen des SatProcessor 46 implementieren.
- Probendaten 100 werden an den C/A-Code-Akquisitions-, Verfolgungs- und Reakquisitions-Block CACAPT 104 im ASIC 102 angelegt, wo sie in In-Phase- und Quadratur-Phase- oder I- und Q-Signale am Basisband von dem I/Q-Splitter bzw. -Verteiler 106 aufgeteilt werden. Nach Verarbeitung durch den CACAPT 104 werden die I-, Q-Signale für eine Doppler- Verschiebung im 12-Kanal-Doppler-Block 108 rotiert, der erwartete Doppler-Frequenzverschiebungen für jedes der zwölf SVs separat ausgleicht, die verfolgt werden können.
- Die Doppler-rotierten Signale I, Q für jedes SV werden dann an den Korrelatorblock 110 angelegt, wobei jede Signalprobe, die von einem der zwölf SVs kommt, in einer gemultiplexten Art und Weise mit 20 verzögerten Versionen des C/A- Codes korreliert wird, die von einem 12-Kanal-Codiererblock 112 für dieses SV erzeugt werden. Während jedes Zeitsegments führt, wie es nachstehend mit Bezug auf Fig. 11 ausführlicher beschrieben ist, der Korrelatorblock 110 240 C/A-Code- Korrelationen im Akkumulator 175 durch, um die Geschwindigkeit der Akquisition und Reakquisition zu verbessern. Die Ausgabe des Korrelatorblocks 110 wird an den IQACCUM-Block 114 angelegt, und die Ausgabe des IQACCUM-Blocks 114 wird an IQSQACCUM 116 im Akkumulatorblock 115 angelegt. Der IQACCUM- Block 114 wird zweckmäßigerweise von einem anderen Block des dem ASIC 102 zugeordneten RAMs konfiguriert, der hier als RAM 3 bezeichnet ist. Auf ähnliche Weise wird IQSQACCUM 116 zweckmäßigerweise von einem anderen Block des dem ASIC 102 zugeordneten RAMs konfiguriert, der hier als RAM 4 bezeichnet ist.
- Der Akkumulatorblock 115 arbeitet während der Akquisitions-, Verfolgungs- und Reakquisitions-Modi unterschiedlich, und zwar unter der Steuerung der CPU 101. Während des Akquisitions-Modus wird der Codiererblock 112 veranlaßt, durch so viele Sätze von 240 unterschiedlichen Codeverzögerungen wie notwendig zu sequenzieren, um die Satellitensignale von einem bestimmten Raumfahrzeug zu erfassen. Das heißt, daß so viele Sätze wie 240 unterschiedliche Verzögerungen im Korrelatorblock 110 korreliert werden, um den IQSQACCUM 116 mit einer geeigneten Korrelationsausgabe zu versorgen, deren Leistung angibt, daß die Korrelation mit diesem Satelliten erreicht wurde. Der Prozeß wird dann für jeden zu erfassenden Satelliten wiederholt. Zweckmäßigerweise können alle Verzögerungen getestet werden.
- Während der Reakquisition wird ein einziger Satz von 20 Verzögerungen in dem Korrelatorblock 110 korreliert, um zu bestimmen, ob eine derartige Verzögerung einen Spitzenwert über einem vorbestimmten Schwellwert liefert, um anzugeben, daß eine Korrelation erreicht wurde und der Satellit dadurch neu erfaßt wurde. Der Reakquisitions-Modus arbeitet dadurch innerhalb des Verfolgungs-Modus transparent, daß ein Satz von 20 Verzögerungen im Korrelatorblock 110 korreliert wird. Wenn die Verfolgung beibehalten wird, kann das Spitzensignal von einer bestimmten Verzögerung zu der nächsten benachbarten Verzögerung wandern, wobei es jedoch innerhalb des aktuellen Satzes von 20 korrelierten Verzögerungen gehalten wird. Es ist zweckmäßig, die das Signal mit dem größten Betrag erzeugende Verzögerung als die augenblickliche Verzögerung anzusehen, die das augenblickliche Korrelationsprodukt erzeugt. Die durch eine Verzögerung mehr und eine Verzögerung weniger erzeugten Signale werden dann die frühen und späten Korrelationsprodukte, die auf eine herkömmliche Art und Weise verarbeitet werden können, um die Einrastung mit jedem Satelliten aufrechtzuerhalten.
- Wenn das Signal von dem Satelliten vorübergehend verdeckt wird oder aus irgendeinem anderen Grund verloren geht, wird der dann aktuelle Satz von 20 Verzögerungen korreliert und nach einer Spitze von ausreichendem Betrag durchsucht, um die Reakquisition anzugeben. Die Doppler- und die Code- Werte werden basierend auf den letzten verfügbaren Positionsinformationen einschließlich der Geschwindigkeit kontinuierlich aktualisiert, und die Korrelationen werden durchgeführt, bis das Satellitensignal neu erfaßt wird oder eine ausreichende Zeit verstrichen ist, so daß das Satellitensignal als verloren angesehen wird.
- Die Arbeitsweise und die Konfiguration des ASIC 102 werden nun ausführlicher hinsichtlich des In-Phase- oder I- Signal-Wegs beschrieben. Der Quadratur-Phase- oder Q-Signal- Weg ist identisch und muß nicht getrennt beschrieben werden.
- In dem CACAPT 104 werden Abtast- bzw. Probendaten 100 bei 37,33f&sub0; an den I/Q-Splitter bzw. I/Q-Verteiler 106 angelegt, um ein 2-Bit-Signal bei 18,67ff&sub0; zu erzeugen, das weiter auf 2f&sub0; durch ein Digitalfilter 118 verringert wird, das durch Hinzufügen von Sätzen von 10, 9 und 8 Proben arbeitet, die summiert, quantisiert und dann seriell in einem 11- Proben-tiefen-Puffer 120 gespeichert werden. Wenn der 11- Proben-tiefe-Puffer 120 gefüllt ist, werden Daten an einen identischen Puffer, genannt paralleler Block 122, zur Doppler-Rotation parallel übertragen. Die Daten werden somit aus dem 11-Proben-tiefen-Puffer 120 hinaus übertragen, wenn 11 Proben empfangen wurden, d. h. bei einer Chip-Rate von 1/11tel von 2ff&sub0; oder ungefähr 0,1Bff&sub0;. Der 11-Proben-tiefe- Puffer 120 arbeitet als Seriell-Parallel-Umsetzer, während der parallele Block 122 als Parallel-Seriell-Umsetzer arbeitet. Dies führt zu 186 parallelen Übertragungen pro Millisekunde.
- Daten werden aus dem parallelen Block 122 mit 24f&sub0; an den 12-Kanal-Doppler-Block 108 hinausgeschoben, so daß das niederwertigste Bit oder LSB (= Least Significant Bit) des seriellen Wandlers, des parallelen Blocks 122, die Ausgabe von CACAPT 104 in der Form von CapIOut und CapQOut ist, die als CACAPT-Datenausgabe 123 an den 12-Kanal-Doppler-Block 108 angelegt werden. Der Anstieg in der Chip-Rate von 2f&sub0; auf 24f&sub0; liefert eine Betriebsgeschwindigkeits-Vergrößerung von 12, wie es nachstehend ausführlicher beschrieben wird.
- Mit Bezug nun ebenfalls auf Fig. 6 wird der 12-Kanal- Doppler-Block 108 nun ausführlicher beschrieben. Der Doppler-Block 108 empfängt eine satellitenspezifische CACAPT-Datenausgabe 123 einschließlich CapIOut und CapQOut von CACAPT 104 zur Speicherung im Doppler-Register 124. Eine satelliten- oder quellenspezifische vorhergesagte Doppler- Phase wird nach Verarbeitung durch den Träger-NCO bzw. Träger-Numerische-Steuerung-Oszillator (Carrier Numerical Control Oscillator) 125 und die Sinus/Cosinus-Nachschlage- Tabelle 134 ebenfalls an das Doppler-Register 124 angelegt, pro sie zu Caplout und CapQOut für das gleiche SV (oder eine andere Quelle) hinzu addiert werden, um doplout und dopQOut zu bilden. In dem Doppler-Block 108 arbeitet der Träger-NCO 125 mit einer wirksamen Rate von 2f&sub0; für jeden Satellitenkanal, da die Daten-Abtastrate 2f&sub0; beträgt.
- Für jedes SV speichert die CPU 101 die satellitenspezifische vorhergesagte Trägerphase dopPhaseParam und die vorhergesagte Trägerfrequenz dopFreqParam im RAM R2 105. Der Sat_Mem 186 überträgt dann dopPhaseParam und dopFreqParam, wie es in Fig. 9 gezeigt ist, an das Trägerphasenregister 126 bzw. den Trägerphasenausgangspuffer 128 bei jeder 1ms- Grenze. In den Zeichnungen wird die Nummer des ersten und letzten Bits des Signals in Klammern getrennt durch einen vollen Doppelpunkt in Übereinstimmung mit gegenwärtigen Konventionen angegeben. Daher ist dopFreqParam ein 24-Bit-Digitalwert, dessen MSB die Bit-Nummer 23 und dessen LSB die Bit-Nummer 0 hat. Der Addierer 130 addiert die Trägerphase zu der Trägerfrequenz, die aus dopPhaseParam und dopFreqParam hergeleitet ist, um den aktuellen Trägerphasenwert im Trägerphasenregister 126 zu erzeugen, das als Träger-NCO gezeigt ist.
- Die vier höchstwertigen Bits oder MSBs (Most Significant Bits) des Träger-NCO im Trägerphasenregister 126 werden an die Sinus/Cosinus-Nachschlagetabelle 134 angelegt, die zwei 4-Bit-Register zum Speichern ihrer Ausgabe umfaßt. Die Ausgabe der Sinus/Cosinus-Nachschlagetabelle 134 wird an den Doppler-Multiplizierer 132 im Doppler-Register 124 zur Doppler-Rotation der CACAPT-Datenausgabe 123 (CapIOut und CapQOut) angelegt, um die rotierten SV-Ausgangssignale doplQut und dopQOut zu erzeugen. Das Doppler-Register 124 verwendet den Doppler-Multiplizierer 132 sowie vier 4-Bit- Register, zwei Addierer, ein weiteres Paar von 5-Bit- Registern und einen Quantisierer, um dopIOut und dopQOut zu bilden. Es wird nun für einen Moment auf Fig. 11 Bezug genommen. dopIOut und dopQOut werden an einen Parallel- Wandler 166 angelegt, und das rotierte SV-Ausgangssignal 127 ist die Ausgabe des Seriell-Parallel-Umsetzers 166, die direkt an das 11-Bit-Halteregister 140 angelegt wird.
- Während jedes Zeitsegments wird der Anfangswert für die Doppler-Phase jedes SV im RAM R2 105 gespeichert, und daraus von dem Doppler-Block 108 für die Rotation des SV während dieses Segments wiederhergestellt. Am Ende jedes Segments wird der Endwert der Doppler-Phase im RAM R2 105 zur Verwendung als Anfangswert für das nächste Segment gespeichert. Unter der Steuerung von gpsCtl 182 wird der Doppler-Phasen- Wert dopP_Next im Trägerphasen = Ausgangspuffer 102, der am Ende jeder Rotation für ein bestimmtes SV durch dopSave gespeichert wurde, an Sat_Mem 186 zum Speichern im RAM R2 105 für dieses SV angelegt, um vom Doppler-Block 108 erneut während der nächsten Doppler-Rotation dieses SV im folgenden Segment wiederhergestellt zu werden. Die Arbeitsweise des Multiplexer-Blocks 129 kann am besten aus der Beschreibung des dreifachen Multiplexens des ASIC 102 anhand der Fig. 10 und 11 verstanden werden.
- Mit Bezug nun ebenfalls auf Fig. 7 umfaßt der 12-Kanal- Codiererblock 112 einen Codierer-NCO 136 und einen Codegenerator 138. Der Codierer-NCO 136, der dem in Fig. 6 gezeigten Träger-NCO 125 ähnlich ist, erzeugt Gen Enable, wann immer der Phasenakkumulator 148 überläuft. Gen Enable ist das MSB der Ausgabe des Phasenakkumulators 148 und wird an den Codegenerator 138 angelegt.
- Insbesondere legt Sat_Mem 186 unter der Steuerung von gpsCtl 182 den satellitenspezifischen 24-Bit-Codefrequenz- Parameter coderFreqParam und den satellitenspezifischen 24- Bit-Codephasen-Parameter codePhaseParam an jede 1-ms-Flanke an Codierer-NCO von dem RAM R2 105 an. coderFreqParam wird wirksam zu codePhaseParam bei 4f&sub0; pro Kanal im Phasen- Addierer 150 addiert, obgleich codePhasParam mit 48f&sub0; während der Verfolgung und Reakquisition arbeitet. Ein Impuls kann für Gen_Enable zwischen 0 Hz und 4f&sub0; Hz erzeugt werden. Um Gen Enable bei 2f&sub0; zu erzeugen, muß der Wert der Hälfte der Bits (23:0) des Phasenakkumulators 148 als coderFreqParam geladen werden.
- Das LSB von codePhaseParam stellt 1/256-tel des C/A- Code-Chips dar. codePhasParam initialisiert den Inhalt des Phasenakkumulators 148. Gen_Enable wird erzeugt, wann immer der Phasenakkumulator 148 überläuft. Der Phasenakkumulator 148 ist ein 25-Hit-Register, das durch den Wert von codePhasParam initialisiert wird, wenn corHoldRegLoad 152 von der CPU 101 an jeder 1-ms-Flanke aktiv ist, wenn neue Daten von der CPU 101 geschrieben werden. Die 24 LSBs des 25-Bit-Phasenakkumulators 148 werden im Phasen-Addierer 150 zu coderFreqParam hinzuaddiert und an den Phasenakkumulator 148 zurückgegeben. Das Phasen-Puffer-Register 154 speichert und puffert den Inhalt des Phasenakkumulators 148, um CoderPNext zu erzeugen, der aktualisiert wird, wann immer codCodeSave 158 von gpsCtl 182 aktiv ist. CoderPNext wird an Sat_Mem 186 zum Speichern im RAM R2 105 angelegt. Die Arbeitsweise des Multiplexers 142 kann am besten aus der nachstehenden Beschreibung des dreifachen Multiplexens des ASIC 102 verstanden werden, die zusammen mit den Fig. 10 und 11 geliefert wird.
- Gen Enable wird an den Codegenerator 138 angelegt, um zu veranlassen, daß ein neuer Code erzeugt wird. Die C/A-Code- Parameter G1 und G2 werden parallel aus dem RAM R2 105 durch Sat_Mem 186 als glParIn und g2ParIn in den Codegenerator 138 geladen, um glGenOut und g2GenOut zu erzeugen, die an den RAM R2 105 durch Sat_Mem 186 zurückgegeben werden. Das Bit O von sowohl dem G1- als auch dem G2-Generator im Codegenerator 138 wird intern XOR-verknüpft und erzeugt genSerOut 160, das seriell an ein 11-Bit-Code-Schieberegister 170 im Korrelatorblock 110 angelegt wird, wie es in Fig. 5 gezeigt ist. Der Codegenerator 138 erzeugt die folgenden C/A-Codes:
- G1 = 1 + X3 + X10
- G2 = 1 + X2 + X3 + X6 +X8 + X9 + X10
- Die Ausgabe des Code-Schieberegisters 170 wird an die Korrelatoren 74 angelegt, 11 Bits auf einmal mit 4Bf&sub0;, so daß mindestens 20 Code-Verzögerungen, die durch eine halbe Chip-Breite getrennt sind, gegen jede Doppler-rotierte Probe von jedem SV korreliert werden. Der Anstieg der Chip-Rate von 2f&sub0; auf 4Bf&sub0; liefert einen Vergrößerungsfaktor von 24, wie es nachstehend ausführlicher beschrieben wird.
- Werte von G1 und G2 sind während jedes Segments nach der Korrelation mit der Doppler-rotierten Probe in den Korrelatoren 74 für dieses SV in RAM R2 105 zu speichern, so daß sie dann von dem Codiererblock 112 während des nächsten Zeitsegments zur Korrelation der nächsten 11-Bit-Probe von dem gleichen SV wiederhergestellt werden können.
- Es wird nun ebenfalls auf Fig. 8 Bezug genommen, in der der Korrelatorblock 110 ausführlicher gezeigt ist. DopIOut und dopQOut in der rotierten SV-Ausgabe vom Doppler-Block 108 werden an den Seriell-Parallel-Umsetzer 166 angelegt, der dann parallel in das Halte-Register 140 geladen wird. GenSerOut 160 vom Codiererblock 112 wird an das Code- Schieberegister 170 im Korrelatorblock 110 angelegt. Diese Datensätze stellen die von dem SV empfangenen, Dopplerverschobenen Daten sowie den lokal erzeugten Code für dieses SV dar, und werden an den Exklusiv-NOR-Gatter-Korrelator 74 zur Korrelation unter der Steuerung von gpsCtl 182 angelegt.
- Die Ausgabe des Korrelators 74 wird an den Addierer 174 angelegt und im Bit-Kombinierer 176 zu corIOut 178 und corQOut 180 kombiniert, die an den IQACCUM-Block 114 und IQSQACCUM 116 angelegt werden, die in Fig. 5 gezeigt sind. Der Addierer 174 und der Bit-Kombinierer 176 arbeiten als Teil-Akkumulator, wie es durch den Akkumulator 175 in Fig. 5 angegeben ist.
- Es wird nun ebenfalls auf Fig. 9 Bezug genommen, in der ein Überblick der Arbeitsweise des ASIC 102 gezeigt ist. Ein fest zugeordneter chipinterner Logiksatz steuert den Betrieb des ASIC 102 und wird hier als gpsCtl 182 gekennzeichnet. Insbesondere werden unter der Steuerung von gpsCtl 182 Probendaten 100 von den GPS-Satelliten an CACAPT 104 angelegt, wo sie getrennt und in T- und Q-Daten-Ströme dezimiert werden, um eine CACAPT-Datenausgabe 123 zu bilden. Die SV-Daten 123 werden für die vorhergesagte Dopplerverschiebung jedes SV rotiert, um rotierte SV-Ausgangssignale dopIOut und dopQOut zu erzeugen, die mit genSerOut 160 vom Codiererblock 112 in den Korrelatoren 74 korreliert werden. CorIOut 178 und corQOut 180 von den Korrelatoren 74 werden im IQACCUM- Block 114 und IQSQACCUM 116 akkumuliert, um die Ausgabe 184 an die CPU 101 zu erzeugen.
- Wie es nachstehend ausführlicher beschrieben wird, wird ein Abschnitt des Speichers für Sat_Mem 186 verwendet, der die Doppler-Verschiebung und die während des Multiplexens erforderlicher Code-Informationen speichert und bereitstellt.
- Im Betrieb wird jede Millisekunde in 186 Segmente unterteilt, von denen jedes 264 Takte umfaßt. Innerhalb dieser 264 Takte werden 12 Kanäle verarbeitet, wobei jeder Kanal 22 Takte benötigt, um 22 unterschiedliche Korrelationen oder Verzögerungen zu berechnen. Nur 20 von diesen 22 Korrelationen werden gespeichert und zur nachfolgenden Verarbeitung verwendet. Für jeden Kanal steuert gpsCtl 182 das Laden von Träger-NCO 125 im Doppler-Block 108 unter Verwendung von dopLoad und dopSave. Auf ähnliche Weise steuert gpsCtl 182 das Laden von Codierer-NCO 136 im Codiererblock 112 über corHoldRegLoad und corCodeSave. Der Datenfluß durch den Korrelatorblock 110 wird mit serialShiftClk und ebenfalls mit corHoldRegLoad und codCodeSave gesteuert. Steuersignale werden an den IQACCLJM-Block 114 und IQSQCACCUM 116 für jeden Kanal angelegt und umfassen startSegment, startchan, resetAcc, peak, iqsq, wrchan, ShiftSellqSq und acq_mode. Innerhalb jedes Segments liefert gpsCtl 182 die periodischen Signale eng_capShiftClk, capLoad, syncpulse, serialShiftClk an CACAPT 104, um eingehende Satellitendatenproben in Gruppen von 11 Halb-Chip-Proben umzupacken.
- Alle von gpsCtl 182 initiierten Zugriffe werden von Sat_Mem 186 verarbeitet, um Lese/Schreib-Steuerungs- und Adreß-Signale für den RAM R1 103 und den RAM R2 105 zu erzeugen. gpsCtl 182 steuert den Datenfluß durch alle Datenwege zusammen mit Sat_Mem 186 und verwaltet den Zugriff der in dem RAM R1 103 und dem RAM R2 105 gespeicherten Kanalparameter. Auf den RAM R1 103 wird von dem Benutzer geschrieben, um die Kanalparameter zu definieren, die in dem RAM R2 105 am Ende der entsprechenden. Integrations- oder Akkumulations-Zeit geladen werden. Der RAM R2 105 wird von dem Datenweg als ein Zwischenregister (Scratchpad) verwendet, um die Zwischenwerte der verschiedenen Kanalparameter während der Verarbeitung zu speichern.
- Aus dem RAM R2 105 ausgelesene Daten werden an die verschiedenen Parameter-Register im Doppler-Block 108, Codiererblock 112, Korrelatorblock 110 und gpsCtl 182 unter der Steuerung von Sat_Mem 186 gesendet. Daten von diesen Blöcken und dem RAM1 190 werden am Eingang des Schreibports des RAM R2 105 gemultiplext. Der RAM R1 103 ist ein asynchroner 16 · 108-Dual-Port-RAM, der für die Parameter für alle 12 Kanäle verwendet wird, während der RAM R2 192 ein weiterer asynchroner 16 · 108-Dual-Port-RAM ist, der zum Speichern von Zwischenwerten der Satelliten-Parameter während der Verarbeitung verwendet wird, während von einem Kanal zu dem nächsten umgeschaltet wird.
- Es wird nun auf Fig. 10 Bezug genommen. Das System der vorliegenden Erfindung umfaßt einen gemultiplexten Datenweg, um die Größe und Komplexität des ASIC 102 zu verringern, auf dem die Mehrheit der Teile des Systems bereitgestellt werden können. Herkömmliche Empfänger-Ausgestaltungen haben einen einzelnen Satz von Korrelatoren zur Verwendung für jeden der getrennten Kanäle gemultiplext, indem ein SV verfolgt wird, um die Anzahl erforderlicher Korrelatoren zu verringern. Die Verwendung des Systems der vorliegenden Erfindung verringert die Million oder mehr Gatter, die für eine herkömmliche Konfiguration erforderlich sein würde, auf eine bewältigbare Anzahl in der Größenordnung von ungefähr weniger als 100 000.
- Gemäß der vorliegenden Erfindung werden zusätzlich zum Multiplizieren der Satelliten-Kanäle auf eine Art und Weise, bei der keine Daten verloren gehen, die Code-Verzögerungs- Korrelationen ebenfalls gemultiplext. Das heißt, herkömmliche Empfänger verwenden zwei oder drei Korrelatoren, um frühe, späte und/oder augenblickliche Korrelationen für jedes SV bereitzustellen. Die vorliegende Erfindung multiplext eine Mehrzahl von Code-Verzögerungen, um weit mehr Code-Verzögerungs-Korrelationen bereitzustellen, als bei herkömmlichen Systemen verfügbar waren, ohne die Hardware oder die von der Anzahl der verwendeten Gatter benötigte Chip-Fläche auf dem ASIC 102 wesentlich zu vervielfachen.
- Das Multiplexen von Code-Verzögerungen ermöglicht das oben mit Bezug auf Fig. 3 und 4 beschriebene breite Einfangfenster, das eine schnelle SV-Reakquisition ermöglicht. Insbesondere werden 20 Verzögerungen, wie beispielsweise 3,4- Chip-Verzögerungen, bereitgestellt und fortwährend für jedes SV überwacht, so daß GPS-Daten sogar während eines kurzen Sichtbarwerdens des SV, beispielsweise wenn sich das Auto 10 auf der Kreuzung 22 befindet, erfaßt werden, wie es in Fig. 1 gezeigt ist. Das SV kann neu erfaßt und nützliche Daten können erhalten werden, da die Modellierung der Position des Fahrzeugs auf der Fahrbahn 12 ausreichend genau ist, um die vorhergesagten Code- und Doppler-Werte für ein vorher erfaßtes und gegenwärtig verdecktes SV innerhalb eines Fensters von ± 10 Halb-Chip-Code-Verzögerungen zu halten. Auf diese Art und Weise können während der Reakquisition erhaltenen Daten direkt als GPS-Daten verwendet werden. Das heißt, daß der Reakquisitions-Modus für den Verfolgungs-Modus transparent ist. Die GPS-Daten werden erfaßt, wann immer sie ohne erheblichen Zeitverlust zur Reakquisition verfügbar sind.
- Ferner wird die Satellitenverfolgungsoperation selber für jeden Satz von Daten für alle 12 Kanäle gemultiplext, um die ASIC-Gatteranzahl weiter erheblich zu verringern. Das heißt, daß nur ein kleiner Teil der Bits in dem C/A-Code gleichzeitig für alle 12 SVs verarbeitet wird. Um die empfangenen Signale digital zu verarbeiten, müssen die digitalen Darstellungen dieser Signale in Registern und Puffern verarbeitet werden, die imstande sind, die digitalen Daten zu speichern. Der C/A-Code enthält 1023 Bits in jeder Wiederholung, die 1 Millisekunde dauert. Wenn alle 1023 Bits auf einmal verarbeitet werden müßten, würden 1023 Bits breite Register erforderlich sein. Derartige Register würden kostspielig und in der Gatter-Anzahl aufwendig und ziemlich kompliziert sein. In Übereinstimmung mit der bei der dreifach gemultiplexten Empfänger-Konfiguration der vorliegenden Erfindung verwendeten dritten Multiplex-Ebene wird ein kleineres Register gemultiplext, um unterschiedliche Teile der 1023 Bits des C/A-Codes zu handhaben. Dies bedeutet, daß das kleinere Register viele Male während jeder 1-ms-Wiederholung des C/A-Codes verwendet wird, um genug kleinere Proben der empfangenen Daten zu verarbeiten, so daß innerhalb jeder ms alle 1023 Bits verarbeitet werden können.
- Bei der oben insbesondere in den Fig. 3 bis 9 beschriebenen bevorzugten Ausführungsform wurde eine Konfiguration mit 11-Bit-Registern verwendet, so daß jedes Register 186 Mal pro ms verwendet wird, um alle 1023 Bits einer C/A- Code-Wiederholung zu verarbeiten. Jedes 1/186-tel einer Millisekunde wird ein Segment genannt. Die Verfolgung jedes SV wird daher 186 Mal durch Verarbeiten der 11 Bits in jedem Register während jedes Segments gemultiplext. Außerdem werden bei der bevorzugten Ausführungsform 12 Kanäle verwendet, um ein Maximum von 12 SVs zu verfolgen. Dies erfordert, daß jedes 11-Bit-Segment 12 Mal während dieses Segments gemultiplext wird, um eine Doppler-Rotation für jedes SV anzuwenden.
- Ferner wird jeder Kanal außerdem um einen Faktor 22 gemultiplext, um eine wesentliche Mehrzahl von unterschiedlichen Code-Verzögerungen bereitzustellen. Dies erfordert, daß die Doppler-rotierte Probe für jedes SV 22 mal mit unterschiedlichen C/A-Code-Verzögerungen korreliert wird, bevor die Doppler-rotierte Probe für den nächsten Kanal erzeugt wird. Auf diese Art und Weise können 22 unterschiedliche Codephasen für jedes der 12 SV während jedes der 186 Segmente getestet werden, um Echtzeit-Daten mit nur 11-Bit breiten Registern durch Verarbeiten jedes Registers 186 mal pro ms bereitzustellen.
- Es ist bedeutsam anzumerken, daß die Verarbeitung der vorliegenden Erfindung während eines bestimmten Segmentes stattfindet, d. h. 1/186-tel einer Wiederholung des C/A-Codes während der Zeitspanne, die erforderlich ist, damit das Segment aufgefangen werden kann. Auf diese optimierte Art und Weise gehen keine Daten während der Verfolgung und Reakquisition oder des Umschaltens zwischen diesen Zuständen verloren, da die bei irgendeinem bestimmten Segment verarbeiteten Daten höchstens 11 Halb-Chip-Verzögerungen alt sind.
- Es wird nun auf die Fig. 10 und 11 Bezug genommen. Die in Fig. 5 gezeigte Ausgabe des Digitalfilters 118 ist der Probendatenstrom 119 mit 2f&sub0;. Die Chip-Rate der C/A- Modulation der Signale 100 von den SVs liegt bei f&sub0;. Um den Verlust jeglicher Daten zu vermeiden, müssen die SV-Signale mindestens mit ihrer Nyquist-Rate abgetastet werden, d. h. mit dem Zweifachen der Chip-Rate der interessierenden Modulation, die 2f&sub0; beträgt. Obgleich der Probendatenstrom 119 mit einer höheren Chip-Rate als der Nyquist-Rate betrieben werden kann, die das Zweifache der Chip-Rate ist, hat es keine Vorteile, dies zu tun.
- Der Probendatenstrom 119 ist daher eine Serie von Proben der digitalisierten und gefilterten SV-Daten mit dem Zweifachen der Chip-Rate des C/A-Codes, d. h. jede Probe in dem Probendatenstrom 119 ist einen halben C/A-Code-Chip breit. Die Anzahl von Bits in jeder ms oder jedem Code-Zyklus in dem Probendatenstrom 119 beträgt das Zweifache der Anzahl von Bits in der Modulation, d. h. 2046 Bits, die jeweils eine Hälfte eines C/A-Code-Chips darstellen. In Übereinstimmung mit dem Multiplex-Schema der bevorzugten offenbarten Ausführungsform, werden die Daten in 11-Bit-Segmenten verarbeitet, und der Probendatenstrom 119 wird daher seriell an den 11- Bit(10:0)-Register-Wertpuffer 120 angelegt. Die erforderliche Zeit, um 11 Bits aus einer Gesamtzahl von 2046 Bits in dem 2f&sub0;-Datenstrom seriell zu speichern, beträgt 1 ÷ (2046 ÷ 11 = 186) oder 1/186-tel einer ms.
- Während der erste Satz von 11 Proben-Bits in dem 11- Proben-tiefen-Puffer 120 gespeichert wird, sind keine Bits zur Verarbeitung verfügbar. Nachdem die ersten 11 Proben- Bits seriell empfangen und seriell gespeichert wurden, werden die 11 Proben-Bits parallel zu dem Parallel-Block 122 übertragen. Diese parallele Operation findet daher jedes 1/186-tel einer ms oder mit einer Rate von ungefähr 0,18f&sub0; statt. Jedes 1/186-tel einer Millisekunde wird ein Zeitsegment oder Segment genannt, und ist die Einheit der Verarbeitung für die meisten Operationen. Der 1023-Chip-C/A-Code jedes Satelliten in dem empfangenen Verbundsignal wird in 11 Halb-Chip-Bits verarbeitet. Das Teilen der Millisekunden- Wiederholungsrate des C/A-Codes in 186 Zeitsegmente multiplext jedes der 11 Bit-Register um eine Multiplex-Faktor von 186.
- Die CACAPT-Datenausgabe 123 von dem Parallel-Block 122 wird im Doppler-Block 108 mit einer viel höheren Chip-Rate, beispielsweise mit 24f&sub0; verarbeitet. Das heißt, daß die 11 Bits von Probendaten in jedem Zeitsegment um einen Faktor von 12 gemultiplext werden, um zu ermöglichen, daß 12 unterschiedliche Operationen mit diesem Satz von 11 Datenbits durchgeführt werden. Insbesondere werden in dem Doppler- Block 108 Caplcut und CapQOut der CACAPT-Datenausgabe 123 im Doppler-Register 124 mit 12 unterschiedlichen Doppler- Verschiebungen multipliziert, so daß innerhalb jedes Segments 12 unterschiedliche Doppler-Rotationen durchgeführt werden.
- Jede unterschiedliche Doppler-Verschiebung stellt die vorhergesagte Doppler-Rotation dar, die für jedes der maximal 12 unterschiedlichen SVs erforderlich sind, die verfolgt werden können. Der Anstieg der Verarbeitungs-Chip-Rate von 2f&sub0; auf 24f&sub0; multiplext die Verarbeitung für jeden der 24 Datenkanäle. Es ist bedeutsam anzumerken, daß das Multiplexen, um es einen Kanal zu erlauben, als 12 gemultiplexte oder virtuelle Kanäle zu arbeiten, die jeweils ein unterschiedliches SV darstellen, nur angewendet wird, nachdem die Eingangssignale gemultiplext sind, d. h. in 186 Zeitsegmente aufgebrochen sind, die jeweils 11 Halb-Chip-Breite- Bits aufweisen. Auf diese Art und Weise wird das Multiplexen für 12 Kanäle oder Satelliten ohne weiteres mit relativ kostengünstigen 11-Bit-Registern ohne Zeit- oder Datenverlust erreicht. Es ist wichtig, daß die Auswahl der Anzahl von Abtastungen eine ganzzahlige Aufteilung der Anzahl von Code-Bits pro Periode ist, um diese Ziele zu erreichen. Ein Multiplexer-Block 129 im Täger-NCO 125 steuert das Timing bei diesem Multiplexing unter der Steuerung des gpsCtl 182.
- Die Ausgabe des Doppler-Blocks 108, die Signale doplout und dopQOut, wird an den Seriell-Parallel-Umsetzer 166 innerhalb des Korrelatorblocks 110 angelegt. Jedes rotierte SV-Ausgangssignal 127 stellt das rotierte Signal von einem einzigen SV dar, und 12 derartige rotierte SV-Ausgangssignale 127 werden in jedem Zeitsegment erzeugt.
- Das rotierte SV-Ausgangssignal 127 wird auf parallele Art und Weise in das Halteregister 140 im Korrelatorblock 110 geladen. Die Eingabe in den Exklusiv-NOR-Gatter- Korrelator 74 ist daher ein 11 Bit breites Signal, das für 1/12-tel eines Zeitsegments als Eingabe in den Exklusiv-NOR- Gatter-Korrelator 74 gehalten wird.
- Der Korrelator 74 ist eine Serie von 11 getrennten Ein- Bit-Korrelatoren, die alle parallel arbeiten. Ein Eingangssignal ist das rotierte SV-Ausgangssignal 127, während die anderen 11-Bit-Eingangssignale von 11 Ein-Bit-Ausgangs-Bits genSerOut(160) von dem Codiererblock 112 geliefert werden. Während des 1/12-tel des zur Bearbeitung des rotierten SV- Ausgangssignals 127 für einen bestimmten Satelliten vorgesehenen Zeitsegments wird der Code für dieses SV seriell von dem Codegenerator 138 erzeugt und an das Code-Schieberegister 170 angelegt.
- Am Anfang der Korrelation für einen bestimmten Kanal wurden 11 Bits des Codes für dieses SV in das Code- Schieberegister 170 geschoben und sind darin zur Korrelation verfügbar. Jedes 1/22-tel eines Kanals (d. h. ein 1/12-tel eines Segments) wird jedes der 11 Bits im Code-Schieberegister 170 in einem von 11 Ein-Bit-Exklusiv-NOR-Gattern in dem Exklusiv-NOR-Gatter-Korrelator 74 korreliert. Dies erzeugt 11 Korrelätor-Ausgabe-Bits, deren Summe den Betrag der Korrelation zwischen dem rotierten SV-Ausgangssignal 127 und dieser Codephase angibt. Diese parallel erzeugten 11 Korrelationssummen werden parallel summiert und im Akkumulatorblock 115 in dem ersten von 22 Summierern gespeichert, der zu diesem SV gehört.
- Während des nächsten oder zweiten 1/22-tel eines Kanals erzeugt der Codegenerator 138 das nächste Bit für den C/A- Code für dieses SV. Dieses nächste Bit wird seriell an das Code-Schieberegister 170 angelegt. Zu dieser Zeit verbleiben 10 Bits von der ersten Korrelation im Code-Schieberegister 170 und bilden zusammen mit dem neuesten Bit eine weitere 11-Bit-Probe des erwarteten Codes für dieses SV, die gegenüber der vorherigen 11-Bit-Probe um die Zeit verzögert ist, die erforderlich ist, um ein Bit zu erzeugen, d. h. eine halbe Chip-Breite bei der Rate, mit der der Code erzeugt wird, 48f&sub0;. Die zweite Probe ist daher eine um einen halben Chip verzögerte Version des Codes, die um eine halbe Chip- Breite gegenüber den vorherigen 11 Bit = Proben verzögert ist. Es ist bedeutsam anzumerken, daß die gerade beschriebenen beiden 11-Bit-Codeproben sich nur darin unterscheiden, daß ein neues Bit an einem Ende des Registers eingeschoben wurde, um das MSB an dem anderen Ende des Registers hinauszuschieben.
- Das 11-Bit-Korrelationsprodukt des gleichen rotierten SV-Ausgängssignals 127 und die zweite 11-Bit-Probe des Codes werden im Akkumulatorblock 115 dann in dem zweiten der 22 Summierer gespeichert, der zu diesem SV gehört. Danach werden die verbleibenden 20 seriellen Verschiebungen des genSerOut 160 von dem Codegenerator 138 gegen das gleiche rotierte SV-Ausgangssignal 127 korreliert, um 20 zusätzliche Summen von 11-Bit-Korrelationen zum Speichern im Akkumulatorblock 115 für dieses SV zu erzeugen. Das Ergebnis besteht darin, daß 22 Werte dann in dem Akkumulatorblock 115 zur Verarbeitung verfügbar sind, wobei jeder Wert ein Maß der Korrelation der Signale von einem SV mit 22 unterschiedlichen Codephasen oder Verzögerungen ist, die jeweils um eine halbe Chip-Breite getrennt sind.
- Während des nächsten 1/12-tel eines Zeitsegments, d. h. während der Verarbeitung des zweiten gemultiplexten Kanals, wird das rotierte SV-Ausgangssignal 127 für das nächste SV zur Korrelation mit 22 unterschiedlichen einhalb-Chip-Verzö gerungen des für diesen Satelliten erzeugten Codes an das Halteregister 140 angelegt. Am Ende eines Segments umfaßt der Akkumulatorblock 115 eine Matrix von 12 mal 20 unterschiedlichen Summen. Bei einer Implementierung der vorliegenden Erfindung wurde es als vorteilhaft befunden, nur 20 von den 22 möglichen Code-Verzögerungs-Korrelationsergebnissen zu speichern. Die 12 Zeilen von 20 Summen stellen das Maß der Korrelation für jedes der 12 SVs bei 20 Codephasen oder Verzögerungen dar.
- Zusammenfassend läßt sich sagen, daß der Datenweg für die vorliegende Erfindung dadurch dreifach gemultiplext wird, daß
- a) jede Millisekunde, die 1023 Bits eines C/A-Codes darstellt, in 186 Teile aufgeteilt wird, um die 186 Segmente in einer Millisekunde einer Probe zu bilden, so daß nur 11 Halb-Chip-Breite-Proben-Bits auf einmal verarbeitet werden;
- b) jedes Segment dann mit 12 gemultiplext wird, so daß jede derartige 11-Bit-Probe für 12 unterschiedliche Quellen rotiert wird;
- c) die rotierte 11-Bit-Probe für jede Quelle gegen 20 Sätze von unterschiedlichen Code-Verzögerungen für diese Quelle korreliert wird, um in jedem Kanals um 20 zu multiplexen; und
- d) die Summe der Korrelationsprodukte für jede Verzögerung in jedem Kanal dann summiert wird, um die akkumulierte Korrelations-Ausgabe zu erzeugen.
- Obgleich 22 unterschiedliche Verzögerungen verfügbar sind, ist es zweckmäßig, 20 derartige Verzögerungen oder Codephase-Theorien zum Testen des rotierten Satellitensignals zu verwenden. Das Korrelationsprodukt mit dem größten Betrag für jeden Kanal nach der Akkumulation, d. h. die größte der 20 Summen der in dem Akkumulatorblock 115 gespeicherten 11 Bits für jeden Kanal kann dann mit Hilfe seiner Größe erfaßt werden, beispielsweise von einem Spitzendetektor, um zu bestimmen, welche Verzögerungs-Theorie die genaueste ist. Die Spitzensumme stellt die pünktliche oder augenblickliche Korrelation für dieses SV dar.
- Es wird nun insbesondere auf Fig. 11 Bezug genommen. Das dreifache Multiplex-Schema der vorliegenden Erfindung kann ohne weiteres durch Betrachten der Zeitscheiben verstanden werden, die sich aus allen Multiplex-Operationen ergeben. Innerhalb jeder Millisekunde weist der C/A-Code für jeden bestimmten Satelliten 1023 Bits auf. Um alle notwendige Information zu erhalten, werden die Satellitensignale in einem digitalen Verbund von Signalen von allen Satelliten mit der Nyquist-Rate von 2f&sub0; abgetastet, um 2046 Halb-Chip- Breite Proben-Bits zu erzeugen.
- Jeder sequentielle Satz von 11 Proben-Bits wird zusammen als ein Zeitsegment verarbeitet, wobei dessen Länge gleich 1/(2046 ÷ 11) einer ms, d. h. ein 1/186-tel einer ms ist. Nach der Verarbeitung des 186ten Segments in einer Millisekunde wurden alle notwendigen Daten extrahiert, und die 11-Bit-Probe für das nächste Segment ist verfügbar. Obgleich die über jede ms im Akkumulatorblock 115 akkumulierten Teilsummen nur an dem Ende einer ms ausgewertet werden können, gehen keine Daten verloren, und die Ergebnisse sind nur ein Segment spät. Das heißt, da es ein Segment dauert, um einen 11-Proben-tiefen-Puffer 120 zu füllen und die 11-Bit-Probe an den Parallel-Block 122 zu übertragen, werden die Daten von der ersten 11-Bit-Probe verarbeitet, während die Daten für die zweite 11-Bit-Probe aufgefangen werden. Sogar wenn das System für ein Jahr gearbeitet hat, ist die zur Lieferung von Positionsinformationen verarbeitete Probe nur ein Zeitsegment alt.
- Die 11 Bits jedes Segments werden für jedes SV gemultiplext, indem sie während der Doppler-Rotation zeitgemultiplext werden. Das heißt, die 11-Bit-Probe des Segments 1 wird verwendet, um 12 unterschiedliche Doppler-verschobene Ausgaben zu liefern, so daß eine einzige 11-Bit-Segment- Probe 12 Mal verwendet wird, um 12 unterschiedliche satellitenspezifische Doppler-rotierte Versionen zu erzeugen, und zwar unter der Annahme, daß alle 12 Satelliten sichtbar sind oder modelliert werden. Die Operationen für einen Kanal erfordern dann 1/12-tel eines Segments. Es ist entscheidend zu beachten, daß jedes Segment nur ein Teilergebnis erzeugt, und daß die 12 Teilergebnisse während jedes Segments am Ende jeder Millisekunde summiert werden müssen, um gültige Ausgangsdaten bereitzustellen.
- Jede der Operationen auf einem bestimmten Kanal in einem Segment werden um einen Faktor 22 zeitgemultiplext, so daß 22 unterschiedliche Code-Verzögerungen für diese Teilsumme für diesen Satelliten getestet werden können. Die Spitzensumme dieser 22 Korrelationen kann jedoch mit Hilfe des Betrags sofort erfaßt werden, falls notwendig, um die wahrscheinlichste Verzögerung für diesen Kanal auszuwählen. Bei der vorliegenden Ausführungsform sind die Informationen für diesen Kanal nur einmal pro Millisekunde gültig, wenn summiert oder akkumuliert wird, so daß das Erfassen der Spitze in einem bestimmten Segment keinen wesentlichen Vorteil bieten kann. Bei einigen GPS-Anwendungen und bei anderen Spreizspektrum-Anwendungen, wie beispielsweise bei der drahtlose Nachrichtenübertragung, kann es wünschenswert sein, wenn starke Signale vorhanden sind, die Summe der Akkumulationen für jede Quelle von R3 bis R4 häufiger als Einmal pro Code-Wiederholungs-Rate zu akkumulieren und zu übertragen. Die zum Auswerten einer bestimmten Codephasen- Verzögerung oder -Theorie erforderliche Zeit beträgt nur 1/22-tel der Zeit, die pro Kanal pro Segment oder 1/22-tel von 1/12-tel von 1/186-tel einer Millisekunde erforderlich ist. Diese Betriebsgeschwindigkeit wird leichter erreicht, da die erforderlichen 11 Ein-Bit-Korrelationen parallel erzeugt werden. Auf ähnliche Weise wird die Geschwindigkeit der Erzeugung der unterschiedlichen Code-Verzögerungen für ein bestimmtes SV einfacher gemäß der vorliegenden Erfindung erreicht, da jede 11-Bit-Code-Verzögerungs-Probe automatisch erzeugt wird, wenn jedes einzelne neue Bit, d. h. jedes neue genSerOut 160 in das Code-Schieberegister 170 geschoben wird.
- Die Auswahl der Beträge oder Multiplex-Faktoren, die in jeder Multiplex-Ebene verwendet werden, ist nicht willkürlich. Je größer die Anzahl von Segmenten ist desto kleiner ist die erforderliche Größe oder Tiefe der Register, die für jede Probe benötigt werden. Durch Verwenden eines Codewiederholungs-Multiplex-Faktors von 186, d. h. durch Teilen der 2046 Bits eines 2f&sub0; durch 186 müssen nur 11 Proben-Bits gleichzeitig ausgewertet werden.
- Die Anzahl der erforderlichen Kanäle wird pragmatisch durch die Tatsache begrenzt, daß mindestens 4 SVs zur gleichen Zeit sichtbar sein müssen, um die Position in drei Dimensionen genau zu bestimmen. Zeit ist die vierte Unbekannte, die zusammen mit jeder der drei Dimensionen bestimmt werden muß, obgleich Maßnahmen zum Schätzen, Modellieren und/oder Aktualisieren der Positionsinformationen, oben beschrieben sind, so daß Positionsinformationen genau sogar während Zeitspannen bereitgestellt werden können, wenn weniger als vier Satelliten gleichzeitig sichtbar sind.
- Die Konstellation von 24 benutzten NAVSTAR-Satelliten wird so angeordnet, daß die Erde abgedeckt wird, so daß ein Maximum von 12 derartigen Satelliten bei einer beliebigen Position zu einer beliebigen Zeit sichtbar sein kann. Die maximale Anzahl von praktisch verwendbaren Kanälen ist aus diesem Grund nicht kleiner als etwa 12 Kanäle. Der ausgewählte Kanal-Multiplex-Faktor, der auf der Kanalebene zum Multiplexen bei der hier gezeigten Ausführungsform verwendet wird, ist daher ein Faktor von 12.
- Die Anzahl von unterschiedlichen Code-Verzögerungen wird am unteren Ende durch ein absolutes Minimum von Eins begrenzt, so daß, wenn die genaue Verzögerung irgendwie beibehalten werden kann, die einzig notwendige Korrelation die pünktliche oder augenblickliche Korrelation sein würde. Herkömmliche GPS-Empfänger-Systeme verwenden mindestens zwei oder drei unterschiedliche Code-Verzögerungen, so daß herkömmliche Verfolgungstechniken benutzt werden können, beispielsweise diejenigen, die frühe, augenblickliche und späte Korrelationen verwenden, um die augenblickliche Korrelation innerhalb ±1 Verzögerung zu zentrieren.
- Gemäß der vorliegenden Erfindung wird eine wesentlich größere Anzahl unterschiedlicher Code-Verzögerungen oder Verzögerungs-Theorien getestet, so daß eine schnelle Reakquisition erreicht werden kann, wie es oben mit Bezug auf Fig. 3 und 4 beschrieben ist. Obgleich es für die hier beschriebene bestimmte bevorzugte Ausführungsform bestimmt wurde, daß eine Gesamtzahl von 20 unterschiedlichen Verzögerungen, die jeweils zeitlich um eine Hälfte der Breite eines C/A-Code-Chips getrennt sind, d. h. ¹/&sub2; eines 1/2046-tel einer ms, wurde eine Code-Verzögerungs-Multiplex-Faktor von 22 ausgewählt, da die Beziehung zwischen allen drei Multiplex-Faktoren ebenfalls bedeutsam ist.
- Das Produkt der drei Multiplex-Faktoren, dem Code- Wiederholungs-Multiplex-Faktor, dem Kanal-Multiplex-Faktor und dem Code-Verzögerungs-Multiplex-Faktor, sollte optimalerweise ein gerades ganzzahliges Vielfache der Anzahl von Bits in jeder Wiederholung der Spreizspektrum-Modulation sein. Ein gerades ganzzahliges Vielfache ist erforderlich, da Proben mit der zweifachen Chip-Rate, d. h. der Nyquist- Rate, genommen werden müssen, um einen Datenverlust beim Abtasten mit einer langsamen Rate zu verhindern. Obgleich Multiplex-Faktoren sogar erfolgreich verwendet werden können, wenn das Produkt nicht genau gleich einem geraden ganzzahligen Vielfachen ist, kann dies Datenverluste oder eine unnötige Komplexität und entsprechende Kosten verursachen.
- Bei der bestimmten gezeigten Ausführungsform ist der interessierende Spreizspektrum-Code der C/A-Code, wobei jede Wiederholung dessen 1023 Bits umfaßt. Gemäß der oben erläuterten dreifachen Multiplex-Produktregel, muß das Produkt der drei Multiplex-Faktoren gleich einem geraden ganzzahligen Vielfachen von 1023, wie beispielsweise 2046 sein. Bei der beschriebenen Ausführungsform ist der Code-Wiederholungs-Multiplex-Faktor gleich 186, der Kanal-Multiplex- Faktor gleich 12 und der Code-Verzögerungs-Multiplex-Faktor gleich 22. Das Produkt von 186 multipliziert mit 12 und dann mit 22 beträgt 49104, das, wenn es durch 1023 geteilt wird, gleich 48 ist. 48 ist eine gerade ganze Zahl, und somit liefert der bei der vorliegenden Erfindung verwendete spezielle Satz von Multiplex-Faktoren eines von verschiedenen optimierten Systemen.
- Der Grund dafür, daß die Multiplex-Faktor-Produktregel in einer 3-Ebenen-Multiplex-Konfiguration für den C/A-Code gut arbeitet, besteht darin, daß es drei Primfaktoren in 1023 gibt. Das heißt, 1023 ist das Produkt von drei Primzahlen, 31, 11 und 3. Jeder der drei Multiplex-Faktoren ist durch eine dieser Primzahlen geradzahlig teilbar. Beispielsweise ist 186 durch 31 sechsmal, 12 durch 3 viermal und 22 ist durch 11 zweimal teilbar.
- Das Verwenden jedes Primfaktors der Anzahl von Bits in der abgetasteten Bitrate in einem der Multiplex-Faktoren ergibt zwei oder mehr unterschiedliche Familien von Multiplex-Konfigurationen für C/A-Code-Spreizspektrumempfänger. Wenn bei der ersten Familie 11 Kanäle erwünscht sind, dann müßte entweder der Code-Wiederholungs-Multiplex- Faktor oder der Kanal-Multiplex-Faktor durch 31 teilbar sein. Obgleich es bei bestimmten Anwendungen wünschenswert sein kann, 31 oder 62 unterschiedliche Code-Verzögerungen zu verwenden, besteht ein wesentlichen Vorteil darin, den Code- Wiederholungs-Multiplex-Faktor so groß wie möglich zu machen. Dies verringert die Anzahl erforderlicher Bits, die in jedem Segment gespeichert und verarbeitet werden müssen. Indem der Code-Wiederholungs-Multiplex-Faktor so ausgewählt wird, daß er ein Vielfaches von 31 ist, kann die Anzahl von tatsächlich verwendeten Verzögerungen leichter gesteuert werden, da der Code-Verzögerungs-Multiplex-Faktor jedes Vielfache von 3 sein könnte.
- Bei der anderen zweckmäßigen Familie werden 6, 9, 12, 15 oder 18 Satelliten-Kanäle gewünscht, so daß der Kanal- Multiplex-Faktor ein ganzzahliges Vielfaches von 3 ist. Dieses ermöglicht, daß der Code-Verzögerungs-Multiplex- Faktor ein Faktor von 11 ist, während der Code-Wiederholungs-Multiplex-Faktor ein Faktor von 31 ist. Die in der obigen Beschreibung beschriebene spezielle Ausführungsform gehört zu dieser Familie.
- Eine weitere Einschränkung bei der Auswahl der Multiplex-Faktoren ist die Betriebs-Geschwindigkeit der niedrigsten Multiplex-Ebene. Bei der offenbarten Ausführungsform arbeitet die dritte Multiplex-Ebene bei 48f&sub0;. Die Takt- Geschwindigkeit der Hardware-Implementierung muß ausreichend sein, um einen Betrieb bei dieser Geschwindigkeit zu ermöglichen. Wenn schnellere und schnellere chipinterne Komponenten entwickelt werden, können höhere Takt-Geschwindigkeiten verwendet werden, um die Verarbeitung mit höchster Geschwindigkeit durchzuführen, und größere Vielfache können verwendet werden. Beispielsweise könnte mit Komponenten in den Hochgeschwindigkeits-Verarbeitungsabschnitten, wie beispielsweise indem Korrelatorblock 110, die für einen Betrieb mit höheren Raten mit Vielfachen von f&sub0; geeignet sind, wie beispielsweise mit 96f&sub0;, der Code-Wiederholungs- Multiplex-Faktor verdoppelt werden, um 24 Kanäle mit 20 Verzögerungen oder Abgriffen oder 12 Kanäle mit 40 Verzögerungen oder Abgriffen oder 11 Kanäle mit 6 Bits und 22 Abgriffen zu erzeugen.
- Die Systemkonfiguration kann ebenfalls von dem Standpunkt einer Zeit- oder Geschwindigkeits-Vergrößerung aus betrachtet werden. Der Betrieb auf der dritten Multiplex- Ebene bei 48f&sub0; ist 24 Mal schneller als die Chip-Rate der verarbeiteten 2f&sub0;-Probe. Dieser Verstärkungsfaktor von 24 ermöglicht einen Hardware-Multiplex - oder Gatter-Kompressionsfaktor von 24. Die Anzahl von Gattern auf dem ASIC 102 oder von anderen Einrichtungen zur Implementierung der vorliegenden Erfindung wird im wesentlichen direkt proportional zu dem Vergrößerungsfaktor verringert. Wenn alle anderen Faktoren gleich sind, beträgt der Oberflächenbereich eines bei 48f&sub0;-betriebenen Chips von der Größenordnung her 1/24-tel des Oberflächenbereichs, der erforderlich sein würde, um bei 2f&sub0; zu arbeiten. Auf ähnliche Weise würde ein Anstieg des Vergrößerungsfaktors auf 96 eine Verringerung der erforderlichen nutzbaren Chip-Oberfläche, die erforderlich ist, in der Größenordnung von fast der Hälfte erlauben.
- Die spezielle Ausführungsform des Mehr-Ebenen-Multiplex- Spreizspektrumempfängers der vorliegenden Erfindung, die oben offenbart wurde, ist ein GPS-Empfänger. Die gleiche Erfindung kann für andere Spreizspektrumsignale, wie beispielsweise drahtlose Telefonsignale bei entsprechender Berücksichtigung der Auswahl von Multiplex-Faktoren basierend auf der Bitrate des verwendeten Spreizspektrum-Codes und der auf diese Anwendung anwendbaren Umgebungsfaktoren verwendet werden. Die Umgebungsfaktoren für die vorliegende Konfiguration, wie beispielsweise die praktischen Beschränkungen auf die Anzahl von Kanälen und Codephasen, wurden oben beschrieben.
- Es wird nun auf Fig. 12 Bezug genommen, die als Blockdiagramm einen Überblick eines GPS-Empfängersystems 200 zeigt, das eine bevorzugte Ausführungsform des oben beschriebenen Digital-Signalverarbeitungs-Chips 102, des ASIC GSP1 202, und einen Hochfrequenz-Chip, GRF1 204, umfaßt, und zwar kombiniert mit anderen Komponenten, um ein vollständiges Empfängersystem gemäß der vorliegenden Erfindung zu bilden.
- Dem ASIC GSP1 202 sind der SRAM 206, der ROM 208 und die CPU 101 zugeordnet, die durch Daten- und Adreß-Busse 210 und 212 verbunden sind, um die Funktionen des RAM R1 103, des RAM R2 105 und des Sat_Mem 186 und weitere benötigte Funktionen bereitzustellen, die oben beispielsweise bezüglich Fig. 5 beschrieben sind.
- Der GRF1 204 ist in dem RF-Verarbeitungs-Teilsystem 214 enthalten, das Satellitensignale von der GPS-Antenne 28 empfängt und Proben- oder GPS-Daten 100 an den ASIC GSP1 202 liefert, der ein automatisches RF-Verstärkungs-Steuersignal AGC 216 zurück an den GRF1 204 liefert. Dem GRF1 204 in dem RF-Verarbeitungs-Teilsystem 214 ist ein RF-Filter 218 zugeordnet, das die Signale von der GSP-Antenne 28 an einen rauscharmen Verstärker LNA 220 anlegt, wobei dessen Ausgabe an den GRF1 204 angelegt wird. Außerdem verwendet der GRF1 204 ein außerhalb der Leiterplatte befindliches Filter, das ZF-Filter (IF FILTER) 222, sowie ein Kristall 224. Es ist bedeutsam anzumerken, daß das ZF-Filter 222 ein kostengünstiges externes Zwischen- oder ZF-Filter vom 2-Pol- LC(Induktivität-Kapazität)-Typ anstatt eines kostspieligeren und komplexeren 5- oder 6-Pol-Filters aus den folgenden Gründen sein kann. Das GPS-Empfänger-System 200 verwendet ein relativ breites ZF-Band gefolgt von einem Dezimator oder Digitalfilter, Digitalfilter 118, wie es beispielsweise in CACAPT 104 in Fig. 5 gezeigt ist.
- Insbesondere wird die Ausgabe des LNA 220 von dem GRF1 204 mit dem ZF-Filter (IF FILTER) 222 verarbeitet, um GPS- Daten 100 zu erzeugen, die an CACAPT 104 im ASIC GSP1 202 angelegt werden. Innerhalb des ASIC GSP1 202 werden GPS- Daten 100 in In-Phase- und Quadratur-Phase-Signale, I- bzw. Q-Signale, im I/Q-Splitter 106 getrennt. Die I-Signale werden dann an das Digitalfilter 118 angelegt, und die Q- Signale werden auf die gleiche Art und Weise, wie es in Fig. 5 gezeigt und oben beschrieben ist, verarbeitet.
- Fig. 13 zeigt eine Blockdiagramm-Beschreibung des GRF1 204 und Fig. 14 zeigt die Pinbelegung des GRF1 204. Fig. 15 zeigt ein Ablaufdiagramm der AGC-Schnittstelle. Fig. 16 liefert zusätzlich Einzelheiten einer bevorzugten Ausführungsform des GPS-Empfängersystems 200, insbesondere die Verbindungen zwischen dem ASIC GSP1 202 und GRF1 204 so wie der zugeordneten Schaltungsanordnung.
- Mit Bezug nun auf die Fig. 13 bis 16 kann die SiRFstarTM-Ausführungsform des GPS-Empfängersystems 200 wie folgt beschrieben werden:
- Die SiRFstar-GPS-Architektur ist ausgestaltet, um die anspruchsvollen Anforderungen der im allgemeinen Trend liegenden GPS-Verbraucher-Produkte zu erfüllen. Die Kombination der SiRFstar-GSP1-Signalverarbeitungsmaschine, des SiRFstar-GRF1-RF-Frontends und der SiRFstar-GSWl-Software liefert eine leistungsfähige kostengünstige GPS-Lösung für eine breite Vielfalt von Produkten. Die einzigartigen 100 ms SnapLock-Fähigkeiten des SiRFstar kombiniert mit der 12- Kanal-Verfolgung aller Sichtbaren liefert eine maximale Verfügbarkeit von GSP-Satelliten-Messungen. Der SingleSat- Navigatioris-Modus ist imstande, diese Messungen zu verwenden, um GSP-Positions-Aktualisierungen sogar in den schroffesten Stadtschluchten mit begrenzter Sichtbarkeit zu erzeugen. Ein Dual-Mehrweg-Abweisungs-Schema verbessert die Positions-Genauigkeit in diesen Schluchten. Eine wahre 2- Bit-Signalverarbeitung ermöglicht dem FoliageLockTM-Modus bei niedrigeren Signalpegeln zu erfassen und zu verfolgen, und zwar für einen Betrieb sogar unter dichtem Laubwerk.
- Die Hochleistungs-Firmware, die den Chipsatz begleitet, nutzt die SiRFstar-Hardware-Fähigkeiten voll aus, um eine vollständige Lösung für unsere Kunden bereitzustellen. Die Software ist modular in der Ausgestaltung und über verschiedene Prozessoren und Betriebssysteme übertragbar, um eine schnelle Entwicklungszeit und eine maximale Flexibilität von Ausgestaltungsentscheidungen zu ermöglichen, um ein beliebiges Produkt GPS-tauglich zu machen.
- Der GRF1 ist ein vollständiger Frontend-Frequenz-Wandler für GPS-Empfänger. Die Ausgestaltung des Stands der Technik kombiniert einen rauscharmen Verstärker (LNA = Low Noise Amplifier), einen Mischer, einen 1527,68 MHz PLL-Synthesizer, eine chipinterne Frequenz-Referenz, eine ZF-Stufe mit AGC, einen 2-Bit-A/D-Wandler und eine Steuerlogik, um die Umsetzung von RF in digitale Ausgaben durchzuführen. Der GRF1 empfängt das von GPS-Satelliten ge sendete 1575,42 MHz- Signal und wandelt das Signal in komplementäre Digitalsignale auf einer 47,74 MHz-PECL-Stufe um, die von dem GSP1- Signalprozessorchip verarbeitet werden können. Die 2-Bit- Schnittstelle liefert eine hervorragende Verfolgungsleistung mit schwachen und gedämpften Signalen, sowie eine verbesserte Stör-Immunität. Tabelle 1 Pinidentifizierung PINBESCHREIBUNG Tabelle 2 GRF1-Signalbeschreibung
- Alle Pins Vee und Vcc sollten verbunden sein, um einen zuverlässigen Betrieb zu gewährleisten.
- 1. Sämtliches Bypaß-Leitungen sollten zur positiven Versorgung führen, es sei denn, daß es anderweitig spezifiziert ist. Kondensatoren mit niedrigem Verlustfaktor sollten so nahe wie möglich an allen Leistungspins angeordnet sein.
- 2. Differentielle Eingangs- und Ausgangssignale sollten für eine optimale Systemleistung verwendet werden.
- 3. Gute RF-Praktiken müssen in dem PC-Karten-Layout befolgt werden, Masse- und Leistungsebenen sollten, wann immer möglich, verwendet werden.
- 4. Vee wird üblicherweise als GND bezeichnet.
- Der GRF1 empfängt das GSP-L1-Signal über eine externe Antenne und einen geeigneten LNA. Das L1-Eingangssignal ist ein Direkt-Sequenz-Spreizspektrumsignal (DSSS-Signal) bei 1575,42 MHz mit einem bei 1023 Mbps BPSK-(Zweiphasen- Umtastungs)-modulierten Spreizcode. Die Eingangssignal- Leistung an der Antenne beträgt ungefähr -130 dBm (verteilt über 2,048 MHz), wobei das gewünschte Signal unter dem thermischen Grundrauschen liegt. Der Frontend-Kompressionspunkt ist -30 dBm, wobei mit einer ausreichenden externen Filterung in dem ZF-Abschnitt die Zurückweisung großer Außerbandsignale möglich ist.
- Der LNA/Mischer ist vollständig differential, was die Gleichtaktstörung erheblich verringert. Mit einer Rauschzahl von ungefähr 8 dB und einer Umwandlungsverstärkung von 20 d8 können kostengünstige Filter mit relativ hohem Einfügungsverlust bei dem ZF verwendet werden. Der LNA/Mischer und der chipinterne 1527,68 MHz PLL erzeugen eine ZF-Ausgangsfrequenz von 47,74 MHz. Die doppelt abgestimmten Mischerausgänge sind offene Kollektoren und erfordern somit eine externe DC-Vorspannung auf Vcc.
- Die ZF-Stufe liefert ungefähr 75 dB einer Kleinsignalverstärkung. Ein externes ZF-Filter ist zwischen dem LNA/Mischer und den ZF-Verstärkerstufen erforderlich. Das ZF-Bandpaß-Filter kann eine Bandbreite zwischen 3 und 12 MHz ohne Auswirkung auf die Leistung aufweisen. Die Eingänge in die ZF-Stufe sind zweiseitig und erfordern eine DC-Vorspannung von Vcc. Die doppelt abgestimmte E/A liefert ungefähr 40 dB Rausch-Immunität; somit wird eine abgestimmte Filterausgestaltung sehr empfohlen.
- Ein 6-Bit-Register liefert 48 dB einer Verstärkungssteuerung (1 dB/Bit) und ist über eine dreiadrige TTL-Pegel- Schnittstelle (AGCCLK, AGCDATA, AGCSTRB) zugänglich. Die Steuer-Bits werden seriell in das Chip, LSB zuerst, auf der abfallenden Flanke des AGCCLK geschoben. Eine eindeutige spannungsgesteuerte Quellen-Ausgestaltung in den ZF-Verstärkungsstufen liefert eine äußerst gute Verstärkungslinearität in Abhängigkeit von der Temperatur (< 0,5 dB). Die maximale Verstärkung wird ausgewählt, wobei nur Nullen in das Register geladen werden (siehe Fig. 15 für Timing-Einzelheiten).
- Der ZF-Verstärkerausgang wird an einen 2-Bit-Quantisierer geführt, der Vorzeichen- und Betragsausgaben liefert.
- Die Vorzeichen- und Betrags-Datenbits werden mit Hilfe der abfallenden Flanke des Abtasttaktes von 38,192 MHz (siehe PLL-Synthesizer) zwischengespeichert. Differenz-Ausgänge für dieses ACQCLK sind ebenfalls vorgesehen.
- Der lokale Oszillator, Bezug GPSCLK, und der Abtast-Takt werden aus einem chipinternen PLL-Synthesizer-Block hergeleitet. Der VCO, Teiler und ein Phasendetektor sind in dem Chip vorgesehen. Alles was benötigt wird, ist ein externer Referenz-Taktgeber von 24,552 MHz und passive Schleifen- Filterkomponenten.
- Fig. 16 zeigt den Chip in einer typischen Konfiguration. Das Schleifenfilter wird mit einer Ladungspumpe bereitgestellt. Zwei Widerstände und zwei Kondensatoren stellen die Schleifenfilter-Bandbreite ein. Die Referenz kann durch Verwenden eines Kristalls, eines Widerstands und zwei Kondensatoren erzeugt werden, oder, falls eine bessere Referenz-Stabilität erforderlich ist, kann ein externer Oszillator verwendet werden. Differenz-Eingänge für die Referenz sind zur Verwendung mit einem externen Oszillator verfügbar, der eine erhebliche Rauschimmunität bereitstellt. Differentielle Ausgangssignale GSPCLK und ACQCLK werden von dem Block bereitgestellt.
- Die Ausgangsseite der GSP1-Schnittstelle liefert Takte und die 2-Bit-Probendaten an den GSP1. Diese Signale sind alle differentiell, um Rauschen zu verringern und eine verbesserte Leistung bereitzustellen. Die 2-Bit-Proben werden digital gefiltert, was das in der RF-Schaltung erforderliche Filtern erheblich verringert, so daß ein einfaches 1- oder 2-Pol-LC-Filter für das ZF-Filter ausreichend ist. Der GSP1 liefert eine echten 2-Bit-Datenweg überall in dem Korrelationsprozeß, was die Verfolgung von extrem schwachen Signalen ermöglicht.
- Die Eingangsseite der GSP1-Schnittstelle ist ein AGC- Block, der die Verstärkung in der ZF-Stufe in dem GRF1 steuert. Die Verstärkung kann auf eine festen Wert eingestellt werden oder sich gemäß einer über Software steuerbaren Schwelle verändern dürfen. Der GSP1 überwacht die ankommenden Signale und kann die Verstärkung jede Millisekunde einstellen, was eine schnelle Anpassung an eine sich ändernde Signalumgebung erlaubt. AC-Charakteristika Tabelle 3 AC-Charakteristika Tabelle 4 AGC-Schnittstellen-Timing
- Es wird nun auf Fig. 17 Bezug genommen, in der eine Serie grafischer Darstellungen der relativen Korrelationsamplitude als Funktion des Zeitversatzes für Direktweg- und zwei Arten von Mehrweginterferenz gezeigt ist. Diese grafischen Darstellungen sind bei einem Zeitversatz von Null, d. h. zur Ankunftszeit des Direktwegsignals, ausgerichtet.
- Die Direktwegkorrelationsfunktion 226 in der Mitte der Figur ist das Ergebnis des Korrelierens eines entlang eines direkten Wegs, Sichtlinie, in der Abwesenheit von Mehrwegsignalen empfangenen Satellitensignals, wobei ein Duplikat der C/A-Code-Modulation dann auf dem Direktwegsignal vorhanden ist. Die Spitze 230 der Direktwegkorrelationsfunktion 226 ist an dem Ursprung gezeigt, um die tatsächliche Ankunftszeit oder die Null-Codephase darzustellen. In der Praxis kann dieser Punkt in Folge von Filtern und anderen systematischen Abweichungen etwas versetzt sein. Die Spitze 230 wird dann als die pünktliche Codephase genommen, das heißt als die Ankunftszeit der PN-Codegruppe von einem bestimmten Satelliten.
- Die Direktwegkorrelationsfunktion 226 kann beispielsweise durch Betrieb des Korrelatorblocks 110 erzeugt werden, der die Dopplerverschobenen Satellitensignale von dem Dopplerblock 108 durch die Ausgabe des Codiererblocks 112 korreliert, wie es in Fig. 9 gezeigt ist, während die geschätzte Codephase geändert wird. Insbesondere zeigt die Direktwegkorrelationsfunktion 226 die Form der Korrelationsfunktion, die vom Einstellen der Codephase ohne Mehrweginterferenz resultieren würde, von ungefähr einer C/A-Code- Chip-Breite früh, einer Verzögerung oder Zeitverschiebung von -1 Chip, bis zu etwa einer Chip-Breite spät, einer Verzögerung oder Zeitverschiebung von ungefähr +1 Chip.
- Es wird herkömmlicherweise angenommen, daß sich die dreieckige Form der Direktwegkorrelationsfunktion 226 aus den folgenden Umständen ergibt. Es wird fast keine Korrelation zwischen dem empfangenen Signal und dem intern erzeugten Code geben, wenn die Codephasenverschiebung größer als ungefähr 1 bis 1,5 Chips in jeder der beiden Richtungen ist. Wenn die Zeitverschiebung von ungefähr 1 Chip auf ungefähr Null in jeder Richtung verringert wird, steigt die Korrelation auf ein Maximum bei einer Verschiebung von Null an, d. h. wenn die Codephase des intern erzeugten Codes mit der Codephase des Signals, wie es von den Korrelationsspitzen empfangen wird, genau gleich ist (weniger systematische Abweichungen, Verschiebungen und Wirkungen von Filtern).
- Eine verzögerungs-verriegelte Schleife wird herkömmlicherweise zum Verfolgen der erwarteten Position der Spitze 230 verwendet, indem ein Paar von frühen und späten Korrelatoren mit einer fest vorgegebenen Verschiebung oder Zeitverzögerung dazwischen verwendet wird, wobei frühe und späte Korrelationen durchgeführt werden, um die Spitze 230 zu umgeben oder zu umspannen.
- Wie es in Fig. 18 gezeigt ist, können Restcodephasenfehler, die sich aus Mehrweginterferenz ergeben, gemäß der vorliegenden Erfindung erfaßt, bestimmt und/oder korrigiert werden. Insbesondere werden Satellitensignale von der GPS- Antenne 28 empfangen und von verschiedenen Komponenten, wie es oben beschrieben ist, sowie von dem Bandpaßfilter 232 verarbeitet, bevor sie mit einem von dem PN-Codegenerator 234 erzeugten Code-Duplikat korreliert werden. Die Zeitverschiebung des von dem PN-Codegenerator 234 erzeugten PN- Codes wird durch die Verzögerung oder den Offset einer einstellbaren Verzögerung 236 gesteuert, die von dem Systemtakt 238 gesteuert wird.
- Die Ausgabe des PN-Codegenerators 234 wird, so wie sie versetzt ist, an den frühen Korrelator 240 zur Korrelation mit den Satellitensignalen angelegt, die von dem Bandpaßfilter 232 verarbeitet werden. Die Ausgabe des PN-Codegenerators 234 wird durch ein Paar von ¹/&sub2;-Chip-Verzögerungen 242 und 244 an den späten Korrelator 246 angelegt, wobei der andere Eingang jeweils ebenfalls mit der Ausgabe des Bandpaßfilters 232 beliefert wird. Als Ergebnis sind die Satellitensignale an zwei Punkten mit einer festen 1 Chip-Verzögerung oder Trennung dazwischen korreliert. Die Korrelationsfunktionen werden an Detektoren 248 angelegt, die eine Charakteristik der Korrelationsfunktion, wie beispielsweise die Leistung, auswerten. Es sei bemerkt, daß weitere Werte oder Charakteristika der Korrelationsfunktion, üblicherweise eine komplexe Zahl mit In-Phasen- und Quadratur-Phasen- Komponenten, anstatt der Amplitudenmessungen enthaltenden Leistungsmessungen verwendet werden können.
- In Übereinstimmung mit herkömmlichen Techniken wird eine verzögerungs-verriegelte Schleife zur Codeverfolgung durch Einstellung der Zeitverschiebung der einstellbaren Verzögerung 236 verwendet, so daß die Amplitude oder Leistung der frühen oder späten Korrelationsfunktionen in einer festen Beziehung beibehalten werden. Bei einer bevorzugten Ausführungsform wird die Leistung der frühen und späten Korrelationsfunktionen durch ein Codephasenfehlersystem 250 gleich gehalten, das die Codephasenzeitverschiebung einstellt, um diese Beziehung aufrechtzuerhalten. Die Codeverfolgung wird dann dadurch durchgeführt, daß bekannt ist, daß die tatsächliche Ankunftszeit des Codes von dem Satelliten innerhalb des Abstands von einem Chip zwischen den frühen und späten Korrelationen, liegt während ihre Leistungen gleich bleiben.
- Es wird erneut auf Fig. 17 Bezug genommen. Wenn die verzögerungs-verriegelte Schleife von Fig. 18 die Codephase in der Darstellung ordnungsgemäß verfolgt, so daß die frühen und späten Korrelationsamplituden gleich sind, betragen die relativen Beträge der frühen und späten Korrelatoren 252 und 254 die Hälfte des Betrags der Spitze 230. Das heißt, daß, wenn die Zeitphasenverschiebung eingestellt wird, so daß Korrelationsamplituden von gleichem Wert verfolgt werden, diese Werte zeitlich die in der Figur als augenblickliche Korrelation 256 gezeigte tatsächliche Ankunftszeit der Signale symmetrisch umgeben. Mit anderen Worten wird für ein Direktwegsignal bewirkt, daß die augenblickliche Korrelation 256 in der Mitte zwischen den frühen und späten Korrelationen 252 und 254 auftritt, so daß die augenblickliche Korrelation 256 bei einer Zeitverschiebung von Null auftritt, d. h. zu der tatsächlichen Ankunftszeit des Codes. Wie es in Fig. 17 gezeigt ist, ist die Amplitude der augenblicklichen Korrelation 256 eine relative Amplitude, der ein Wert von 1,0 gegeben wird. Die Amplituden der frühen und späten Korrelationen 252 und 254 weisen gleiche Werte von 0,5 auf.
- Wie es in Fig. 18 gezeigt ist, wird, um zu veranlassen, daß die augenblickliche Korrelation in der Mitte zwischen den frühen und späten Korrelationen auftritt, die 1 Chip- Verzögerung zwischen der frühen und späten Korrelation durch ein Paar von ¹/&sub2;-Chip-Verzögerungen 242 und 244 bereitgestellt. Die Ausgabe der ¹/&sub2;-Chip-Verzögerung 242 wird an den augenblicklichen Korrelator 240 angelegt, um die augenblickliche Korrelation 256, eine Halb-Chip-Verschiebung von dem frühen Korrelator 240 zur Auswertung durch den Detektor 248 zu erzeugen. Die Eingabe der ¹/&sub2;-Chip-Verzögerung 244 wird von der ein ¹/&sub2;-Chip-Verzögerung 242 bereitgestellt, so daß die Ausgabe der ein ¹/&sub2;-Chip-Verzögerung 244, die an den späten Korrelator 246 angelegt wird, von der Eingabe in den frühen Korrelator 240 durch eine volle Chip-Verschiebung getrennt ist. Die Ausgaben des Detektors 248 werden dann angelegt, um die verzögerungs-verriegelte Schleife abzuschließen.
- Die Mehrwegverzerrung bewirkt, wenn sie vorhanden ist, daß die augenblickliche Korrelation gegenüber der tatsächlichen Ankunftszeit des Satellitensignals um einen Fehler versetzt ist, der hier als der Codephasenrestfehler beschrieben wird. Es wurde bestimmt, daß das Vorzeichen des Fehlers zwischen der augenblicklichen Korrelation und der tatsächlichen Ankunftszeit, entweder voreilend oder nacheilend von der Beziehung zwischen der Trägerphasen der Direkt- und Mehrwegsignale abhängt. Wenn sich die Phasendifferenz zwischen den Trägerphasen der Direkt- und Mehrwegsignale 0º nähert, wie es beispielsweise als nacheilende Mehrwegkorrelationsfunktion 258 gezeigt ist, neigen die Direkt = und Mehrwegsignale dazu, sich zu verstärken, was die relative Amplitude der Korrelationsprodukte erhöht. Wenn sich die Phasendifferenz zwischen den Trägerphasen der Direkt- und Mehrwegsignale 180º nähert, wie es beispielsweise als voreilende Mehrwegkorrelationsfunktion 260 gezeigt ist, neigen die Direkt- und Mehrwegsignale dazu, sich auszulöschen, was die relative Amplitude der Korrelationsprodukte verringert.
- Bedeutender ist, daß sich die Beziehung zwischen der Position der tatsächlichen Ankunftszeit und den Punkten gleicher Korrelationsamplitude ebenfalls verändert. Wie es oben erläutert ist, sind die Punkte gleichen Betrags der frühen und späten Korrelationen, die durch eine fest vorgegebene Verzögerung getrennt sind, ohne Mehrweg symmetrisch zur Korrelationsspitze, d. h. zur tatsächlichen Ankunftszeit, so daß der Punkt in der Mitte dazwischen, der als die pünktliche Korrelation verfolgt wird, tatsächlich die reale Ankunftszeit des Codes ist.
- Gemäß der vorliegenden Erfindung wurde jedoch bestimmt, daß Mehrweginterferenz durch Verstärkung oder Löschung verursacht, daß die Punkte gleicher Amplitude der frühen und späten Korrelationen nicht länger zur Korrelationsspitze symmetrisch sind. Wie es beispielsweise ohne weiteres bei Betrachtung der nacheilenden Mehrwegkorrelationsfunktion 258 ersichtlich ist, sind die Punkte gleicher Amplitude von frühen und späten Korrelationen 252 und 254 nach rechts verschoben, das heißt zu einer positiven oder nacheilenden Verzögerung mit Bezug auf die Punkte gleicher Amplitude von frühen und späten Korrelationen für die Direktwegkorrelationsfunktion 226.
- Wenn der Mittelpunkt der Zeitverschiebung zwischen den frühen und späten Korrelationen für die nacheilende Mehrwegkorrelationsfunktion 258 verfolgt wird, ist die nacheilende augenblickliche Korrelation 262 zeitlich gegenüber der augenblicklichen Direktwegkorrelation 256 um einen Mehrweg- Verstärkungsinterferenz-Nacheilungsfehler 264 versetzt. Das heißt, daß die nacheilende augenblickliche Korrelation 262 gegenüber der tatsächlichen Ankunftszeit des Direktwegsignals um eine positive oder nacheilende Verzögerungszeit versetzt ist. Auf ähnliche Weise ist, wenn der Mittelpunkt in der Zeitverschiebung zwischen der frühen und späten Korrelation für die voreilende Mehrwegkorrelationsfunktion 260 verfolgt wird, die voreilende augenblickliche Korrelation 266 zeitlich gegenüber der augenblicklichen Direktwegkorrelation 256 um einen Mehrweg-Auslöschungsinterferenz- Voreilungsfehler 268 versetzt. Das heißt, daß der Mehrweg- Auslöschungsinterferenz-Voreilungsfehler 268 gegenüber der tatsächlichen Ankunftszeit des Direktwegsignals um eine negative oder voreilende Verzögerungszeit versetzt ist.
- Außerdem wird die Beziehung zwischen den frühen, augenblicklichen und späten Korrelationsproduktamplituden durch Mehrweginterferenz geändert. Wie es bei Betrachtung der nacheilenden Mehrwegkorrelationsfunktion 258 ersichtlich ist, ist, wenn der Mittelpunkt der Zeitverschiebung zwischen der frühen und späten Korrelation für die nacheilende Mehrwegkorrelationsfunktion 258 verfolgt wird, die nacheilende augenblickliche Korrelation 262 in der Amplitude größer als die augenblickliche Direktwegkorrelation 256. Die Amplituden der frühen und späten Korrelationen 252 und 254 für die nacheilende Mehrwegkorrelationsfunktion 258 sind ebenfalls größer als für die Direktwegkorrelationsfunktion 226.
- Insbesondere ist die nacheilende augenblickliche Amplitude 270 größer als 1,0, und gleiche frühe und späte nacheilende Korrelationsamplituden 272 sind größer als 0,5. Wie es jedoch bei Betrachtung ersichtlich ist und durch Simulation gezeigt wird, ist die gleiche frühe und späte nacheilende Korrelatiorisamplitude 272 größer als die halbe nacheilende augenblickliche Amplitude 270. Auf ähnliche Weise ist die voreilende augenblickliche Amplitude 270 kleiner als 1,0, und die gleichen frühen und späten voreilenden Korrelationsamplituden 276 sind kleiner als 0,5. Außerdem ist die gleiche frühe und späte voreilende Korrelationsamplitude 276 kleiner als die halbe voreilende augenblickliche Amplitude 274.
- Gemäß der vorliegenden Erfindung werden diese Beziehungen verwendet, um das Vorzeichen und den Betrag der Verschiebungsfehler, des Mehrwegverstärkungsinterferenz- Nacheilungsfehlers 264 und des Mehrwegauslöschungsinterferenz-Voreilungsfehlers 268, zu bestimmen. Das in Fig. 18 gezeigte Codephasenfehlersystem 250 empfängt als Eingaben die Korrelationsamplituden (oder andere von Detektoren 248 bestimmte Charakteristika) der Korrelationsprodukte von dem frühen Korrelator 240, dem augenblicklichen Korrelator 243 und dem späten Korrelator 246.
- Wenn das Codephasenfehlersystem 250 bestimmt, daß die Amplitude der in der Mitte zwischen den frühen und späten Korrelationen durchgeführten augenblicklichen Korrelationen geringer als das Zweifache der Amplitude der gleichen frühen und späten Korrelationen ist, dann existiert der Mehrwegverstärkungsinterferenz-Nacheilungsfehler 264. Wenn das Codephasenfehlersystem 250 bestimmt, daß die Amplitude der auf in der Mitte zwischen den frühen und späten Korrelationen durchgeführten augenblickliche Korrelationen mehr als das Zweifache der Amplitude der frühen und späten Korrelationen beträgt, dann existiert der Mehrwegauslöschungsinterferenz- Voreilungsfehler 268.
- Wenn jedoch das Codephasenfehlersystem 250 bestimmt, daß die Amplitude der in der Mitte zwischen den frühen und späten Korrelationen durchgeführten augenblicklichen Korrelation gleich dem Zweifachen der Amplitude der frühen und späten Korrelationen ist, dann existiert kein Mehrweginterferenzfehler.
- Das heißt, daß die Existenz eines Mehrweginterferenzfehlers erfaßt werden kann, und falls erfaßt, kann das Vorzeichen des Fehlers durch Vergleichen des Verhältnisses der Amplitude der augenblicklichen Korrelation mit den gleichen Amplituden der frühen und späten Korrelationen, die gegenüber der augenblicklichen Korrelation symmetrisch versetzt sind.
- Der relative Betrag des Mehrweginterferenzfehlers kann auf verschiedene unterschiedliche Arten geschätzt werden. Abhängig von der relativen Amplitude des Mehrwegsignals zu dem Direktwegsignal und den Differenzen der Trägerphasen dazwischen, wird ein geeigneter empirisch bestimmter Skalierungsfaktor, wie beispielsweise -0,5, der multipliziert wird mit entweder der Summe der frühen und späten Korrelationsamplituden geteilt durch die Amplitude der pünktlichen Korrelation oder mit der Quadratwurzel der Summe der Quadrate der frühen und späten Korrelationsamplituden geteilt durch das Quadrat der Amplitude der pünktlichen Korrelation, einen geeigneten Korrekturfaktor unter den meisten Umständen liefern.
- Mit anderen Worten kann eine Berechnungskorrektur an dem Pseudo Range bzw. der Pseudoentfernung proportional zu der Amplitude der (frühen + späten) pünktliche Korrelationen durchgeführt werden, um die Wirkung der Mehrwegfehlern zu verringern oder zu beseitigen, wenn die Mehrwegverzögerung kleiner als ungefähr 1,5 PRN-Chips ist.
- Wie es in Fig. 18 gezeigt ist, gibt es drei Verwendungen für den Rest-Mehrweg-Codephasenfehler 278, der sowohl das Vorzeichen als auch den geschätzten Betrag des Fehlers umfaßt. Dieser Fehler kann einfach in dem Rest des Empfängers verwendet werden, der als Empfängerprozessor 280 gezeigt ist, um den Pseudo Range rechnerisch weiter zu entwickeln, und somit die Positionsbestimmung zu ändern, ohne die Arbeitsweise der zum Verfolgen der Codephase verwendeten verzögerungs-verriegelten Schleife zu ändern.
- Alternativ oder zusätzlich dazu kann der Rest-Mehrweg- Codephasenfehler 278 an die einstellbare Verzögerung 236 angelegt werden, die die Zeitverschiebung des PN-Codegenerators 234 ändert, um die Verschiebung des frühen Korrelators 240 zu steuern. Die beiden ¹/&sub2;-Chip-Verzögerungen 242 und 244 halten den Abstand zwischen dem frühen Korrelator 240 und dem späten Korrelator 246 bei einer vollen Chip-Breite, wobei der augenblickliche Korrelator 243 dazwischen zentriert ist. Auf diese Art und Weise kann der augenblickliche Korrelator 243 dazu gebracht werden, die Ankunftszeit des Direktwegsignals genauer zu verfolgen. Außerdem kann das Abstaridssteuersignal 280, das beispielsweise von dem Codephasenfehlersystem 250 erzeugt wird, verwendet werden, um den Abstand der frühen und späten Korrelationen einzuengen oder anderweitig zu steuern, sowie die Symmetrie um die augenblickliche Korrelation, um die tatsächliche Ankunftszeit des Codes besser zu verfolgen.
- Außerdem kann der Rest-Mehrweg-Codephasenfehler 278 in dem Mehrwegmodell 282 verwendet werden, um ein synthetisiertes Modell der verwendeten interferierenden Mehrwegsignale zu verbessern oder bereitzustellen, beispielsweise zur Mehrwegauslöschung. Ein von dem Mehrwegmodell 282 erzeugtes Duplikat 284 kann als eine Meßeingabe an die Fehlerkorrektor-Rückkopplungsschleife 286 angelegt werden, die die Signale von dem Bandpaßfilter 232 als Sollwert-Eingabe 287 empfängt, um das an das Mehrwegmodell 282 angelegte Fehlersignal 288 zu erzeugen. Das Fehlersignal 288 wird verwendet, um das Duplikat 284 zu steuern, um irgendwelche Unterschiede zwischen dem Duplikat und dem empfangenen Signal zu verringern, bis das Duplikat eine genaue Darstellung der Mehrwegsignale ist. Das Mehrwegmodell 282 kann dann eine zusätzliche Codephasenkorrektur 290 liefern, die von dem Summierer 292 dem Rest-Mehrweg-Codephasenfehler 278 zum Einstellen des PN-Codegenerators 234 hinzugefügt wird.
- Wie es oben mit Bezug auf das Abstandssteuersignal 280 bemerkt ist, kann es unter bestimmten Umständen wünschenswert sein, den Abstand oder die Zeitverschiebung zwischen dem frühen Korrelator 240 und dem späten Korrelator 246 zur verbesserten Verfolgung zu verringern. Diese Technik des Verringerns des Abstands wurde ebenfalls bei Versuchen verwendet, um den Restfehler der Mehrweginterferenz durch Überspannen der Spitze der Korrelationsfunktion zu minimieren. Man beachte bei Betrachtung von Fig. 17, daß die Spitze der Korrelationsfunktion am einfachsten auszuwählen ist, indem die Direktwegkorrelationsfunktion 226 überspannt wird, da eine relative steile Steigung auf beiden Seiten der Spitze 230 auftritt, was es einfacher macht, die Spitze zu unterscheiden.
- Wenn der Abstand zwischen den frühen und späten Korrelationen in der Anwesenheit eines Mehrwegs verringert wird, wird jedoch mindestens eine der Seiten der Spitzen weniger steil. Beispielsweise ist die Steigung der nacheilenden Flanke der nacheilenden Mehrwegkorrelationsfunktion 258 wesentlich weniger steil als deren voreilende Flanke. Auf ähnliche Weise ist die Steigung der voreilenden Flanke der voreilenden Mehrwegkorrelationsfunktion 260 ebenfalls weniger steil als die Steigung ihrer nacheilenden Flanke. Wenn die Steigung in der Nähe der Spitze und der augenblicklichen Korrelation weniger steil wird, wird es schwieriger, die Spitze insbesondere bei der Anwesenheit von Rauschen zu erfassen oder zu überspannen. In Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung kann das Vorzeichen und der Betrag des Fehlers zuerst bestimmt werden, um Mehrwegeffekte zu verringern, bevor der Abstand für Verfolgungszwecke verringert wird.
- Es sei ebenfalls aus Fig. 17 bemerkt, daß zwei Korrelationsspitzen durch die Auslöschungsinterferenz erzeugt werden. Obgleich es möglich sein kann, den falschen Peak zufällig zu verfolgen, ist es nur notwendig zu bestimmen, ob eine andere frühere und möglicherweise größere Korrelationsspitze innerhalb eines kleinen Abstands existiert, um zu veranlassen, daß die verzögerungs-verriegelte Schleife die richtige Spitze verfolgt.
- Um eine genaue Bewertung des Mehrwegfehlers zu liefern, muß die Grundlinie auf Grund von Rauschen entfernt werden. 13 s wird nun auf Fig. 3 Bezug genommen. Die vorliegende Erfindung erlaubt die zweckmäßige und genaue Bewertung der Grundlinie auf Grund von Rauschen als Ergebnis der Verwendung einer relativ großen Anzahl von Korrelatoren, wie beispielsweise Exklusiv-NOR-Gatter-Korrelatoren 74. Insbesondere kann ein Korrelator 74 zu einer wesentlich früheren Korrelationszeit oder Verzögerung als der augenblickliche Abgriff verwendet werden, um die Grundlinie auf Grund von Rauschen zu bewerten. Auf diese Art und Weise kann das Rauschen ohne Störung durch eine beliebige Korrelation mit dem gewünschten Signal bestimmt werden.
- Fig. 19 zeigt ein schematisches Blockdiagramm eines GPS-Empfängers 310, der in Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung aufgebaut ist. Eine herkömmliche allseitig gerichtete halbhemisphärische GPS-Antenne 312 empfängt PRN-codierte Signale von einer Mehrzahl von nicht gezeigten GPS-Sendern. Die Signale, wie sie empfangen werden, können Mehrwegsignale enthalten oder nicht, die, wenn sie vorhanden sind, durch den Betrieb des GPS-Empfängers 310 gemäß der vorliegenden Erfindung auszulöschen sind. Bei der bestimmten Implementierung des in Fig. 19 gezeigten GPS-Empfängers 310 werden die Signale empfangen, nach unten konvertiert, bandpaßgefiltert und in digitale Signale zur weiteren Verarbeitung im Empfänger- Frontend 314 umgewandelt. Diese besondere Implementierung des Frontends 314 arbeitet besonders gut bei dem Empfänger der vorliegenden Erfindung, wobei jedoch viele andere Frontend-Konfigurationen auch gut mit der vorliegenden Erfindung verwendet werden können.
- Insbesondere werden innerhalb des Frontends 314 die von der GPS-Rundstrahlantenne 312 empfangenen Signale an den RF- Empfänger 316 angelegt, wobei sie danach in einem Mischer 318 heruntergemischt werden, indem sie mit einem bekannten "lokalen Oszillator"(LO)-Signal gemischt werden, das von einem LO-Frequenzsynthesizer 320 erzeugt wird. Danach werden die herunter gemischten Signale im Zwischenfrequenzprozessor 322 verarbeitet und im Bandpaßfilter (BPS) 324 gefiltert. Die herunter gemischten und bandpaßgefilterten empfangenen Signale werden schließlich in digitale Signale im Analog/Digital-Wandler (ADC = analog to digital converter) 326 umgewandelt, um eine digitalisierte Version 328 der empfangenen Signale zu erzeugen. Die in Fig. 19 für die digitalisierte Version 328 verwendeten doppelten Linien stellen dar, daß die darin enthaltenen Signalinformationen einen komplexen Wert aufweisen. Es sei ebenfalls bemerkt, daß bekannte direkte Konversionstechniken ebenfalls verwendet werden könnten.
- Der ADC 326 wird durch einen Abtasttakt 321 von dem Frequenzsynthesizer 320 mit einer bestimmten Rate gesteuert, die üblicherweise höher als die Chip-Rate ist, mit der die von den GPS-Empfängern übertragenen Signale codiert werden. Bei dieser bestimmten Ausführungsform läuft der Abtasttakt 321 32-mal schneller als die Chip-Rate und wird an den ADC 326 angelegt, so daß jedes 1/32-tel jedes Chips betreffene Informationen bestimmt werden können.
- Die digitalisierte Version 328 der Signale, wie sie empfangen werden, wird an die Trägerverfolgungsschleife 330 angelegt, die eine herkömmliche Trägerverfolgungsschleife sein kann, die durch die Hinzufügung eines Auslöschungssubtrahierers 332 sowie die Bereitstellung eines rohen Meßsignals 334 der Verfolgungsschleife an dem Ausgang des Phasenrotators 336 modifiziert sein kann. Die Arbeitsweise der Trägerverfolgungsschleife 330 wird nachstehend ausführlicher nach den Einzelheiten der Arbeitsweise des nicht-codierten Duplikatsignalsynthesizers 338 beschrieben.
- Der Duplikatsignalsynthesizer 338 liefert einen Phasenverfolgungsfehler 340 an den Auslöschungssubtrahierer 332 in der Trägerverfolgungsschleife 330 zur Auslöschung von Mehrwegsignalen in dem Auslöschungssubtrahierer 332. Wie es in Fig. 19 gezeigt ist, sind die in dem Duplikatsignalsynthesizer 338 aufgenommenen Komponenten dadurch etwas willkürlich in Fig. 19 aufgenommen, daß beispielsweise der PRN- Generator 342, der Codierer-NCO 344 und andere Komponenten ebenfalls zur Verwendung in anderen Teilen des GPS-Empfängers 310 vorhanden sein können. Zur einfacheren Beschreibung der aktuellen Erfindung wird die Arbeitsweise derartiger Komponenten innerhalb des Duplikatsignalsynthesizers 338 hier beschrieben.
- Der primäre Arbeitsgang des Duplikatsignalsynthesizers 338 wird von einem FIR-Filter (Finite Impulse Response Filter) 346 durchgeführt, das einen Summierer 348 und ein binäres Schieberegister 350 umfaßt. Bei der in Fig. 19 gezeigten bevorzugten Ausführungsform werden ein 48-Kanal- Summierer 348 und ein binäres 48-Kanal-Schieberegister 350 ausgewählt, um ungefähr 1,5 C/A-Code-Chip-Breiten eines Signals auf einmal für die Mehrwegauslöschung auszuwerten. Das heißt, daß der Abtasttakt 321 mit dem 32-fachen der C/A- Code-Chip-Breite arbeitet, so daß 48 derartige Abtastungen bzw. Proben ungefähr 1,5 C/A-Code-Chips einfangen würde. Ungenauigkeiten, die größer als etwa 1 oder 1 1/2 Chip- Breiten sind, die sich beispielsweise aus dem Mehrweg ergeben, werden geeignet anderswo in dem GPS-Empfänger beispielsweise unter Verwendung herkömmlicher Techniken gehandhabt.
- Eine Serie von 48 Schaltern 352, einer in jedem Kanal zwischen dem binären Schieberegister 350 und dem Summierer 348, werden durch die Kanäle des binären Schieberegisters 350 gesteuert, um eine Serie von 48-Kanal-Fehlersignalen 354, die nachstehend ausführlicher beschrieben sind, an einen entsprechenden Kanal des Summierers 348 anzulegen.
- Während des Verlaufs von 48 Impulsen von dem Abtasttakt 321, der von der Größenordnung von 1,5 Chips codierter PRN- Modulation in der digitalisierten Version 328 der empfangenen Signale darstellt, wird der satellitenspezifische PRN- Code 343 für den interessierenden Satelliten an das binäre Schieberegister 350 angelegt. Der satellitenspezifische PRN- Code 343 kann auf eine im Allgemeinen herkömmlichen Art und Weise erzeugt werden, wie es beispielsweise in dem Codiererteilsystem 337 gezeigt ist, durch Takten der Ausgabe des satellitenspezifischen Code-NCO 344 (numerisch gesteuerten Oszillators bzw. numerically controlled oscillator) in einen herkömmlichen PRN-Codegenerator 342. Der satellitenspezifische PRN-Code 343 wird an das binäre Schieberegister 350 unter der Steuerung des Abtasttaktes 321 angelegt, so daß die voreilende Flanke jedes PRN-Code-Impulses an die Stufe 1 des binären Schieberegisters 350 angelegt wird, während die verbleibenden Stufen den Rest der oben erläuterten 1,5 Chip- Probe enthalten.
- Der pünktliche PRN-Code 345, der aus dem Anlegen des satellitenspezifischen PRN-Codes 343 an das binäre Schieberegister 350 durch Berechnen aus der Stufe 1 oder möglicherweise Stufe 2 hergeleitet wird, wird an die Trägerverfolgungsschleife 330 angelegt, um eine In-Phase- oder I-Komponente 372 zu erzeugen, wie es nachstehend ausführlicher mit Bezug auf die Trägerverfolgungsschleife 330 beschrieben wird. Das Codiererteilsystem 337 erzeugt ebenfalls das Code- Verfolgungsfehlersignal 41 aus dem Duplikatsignalsynthesizer 338, wie es nachstehend ausführlicher beschrieben wird.
- Die 48-Kanalfehlersignale 354 werden jeweils aus einem komplexen Fehlersignal 356 durch Korrelieren mit der entsprechenden Ausgabe von dem binären Schieberegister 350 hergeleitet und in dem Kanalverstärkungs/Signalaufbereitungs-Systemen 355 auf eine Art und Weise einzeln gewichtet und integriert, die dazu neigt, den Betrag des komplexen Fehlersignals 356 durch Einstellen des Meßsignals 364 zu verringern, um das Sollwertsignal 362 besser zu nähern, das heißt, um die Signale, wie sie empfangen wurden, besser anzupassen und damit zu löschen, einschließlich Mehrwegfehler, falls vorhanden. Bei der bevorzugten Ausführungsform wird, wie es in Fig. 19 gezeigt ist, eine komplexe Form des Näherungs-Algorithmus des geringsten mittleren Quadrats (LMS = least mean square) verwendet, obgleich viele andere bekannte Näherungstechniken verwendet werden könnten. Die Fehlerverfolgungsschleife dient dazu, das komplexe Fehlersignal 356 aufzubereiten und zu gewichten, um das Meßsignal 334 zu zwingen, gleich dem Sollwertsignal 362 zu sein.
- Das Sollwertsignal 362 wird an den Verfolgungsschleifensubtrahierer 360 als das aufrechtzuerhaltende Sollwertsignal angelegt und aus der digitalisierten Version 328 der Signale, wie sie empfangen wurden, hergeleitet, während das Meßsignal 364 die Ausgabe des Summierers 348 im Duplikatsignalsynthesizer 338 ist und das Duplikat der Signale darstellt, wie sie empfangen wurden. Ein Nullwert für das komplexe Fehlersignal 356 gibt an, daß das Meßsignal 364 gleich dem Sollwertsignal 362 gewesen sein muß, von dem es subtrahiert wurde.
- Das Sollwertsignal 362 wird aus der digitalisierten Version 328 der Signale, wie sie empfangen wurden, nach einer Phasenrotation durch den Phasenrotator 336 in der Trägerverfolgungsschleife 330 und nachfolgender Demodulation im Datenbit-Demodulator-Multiplizierer 370 hergeleitet, indem die Signale mit einem Schätzwert oder gemessenen Wert der auf das C/A-Signal jedes GPS-Satellitensenders angewendeten Navigationsmodulation mit 50 Bits pro Sekunde (bps) multipliziert werden, die in Fig. 19 als Navigationsdatenbits 368 gezeigt sind. Das Entfernen der Wirkung der Navigationsmodulation ist notwendig, so daß die C/A-Code-Modulation direkt verfolgt werden kann. Die zweiphasige Navigationsnachrichtenmodulation mit 50 bps kann, wie es in Fig. 19 gezeigt ist, durch Abstreifen der Modulation von dem rohen Meßsignal 334 in dem Datenbit-Multiplizierer 370 oder durch mod-2-Addieren der Modulation zu dem satellitenspezifischen PRN-Code 343 entfernt werden, wie es nachstehend ausführlicher mit Bezug auf Fig. 20 beschrieben wird.
- Es wird erneut auf Fig. 19 Bezug genommen. Während des Betriebs können die Datennachricht und somit die Navigationsdatenbits 368 bereits bekannt sein. Da normalerweise erwartet werden kann, daß sich diese Datennachricht nicht sehr schnell ändert, können die Datenbits von dem rohen Meßsignal 334 durch Multiplizieren der Navigationsdatenbits 368 mit dem rohen Meßsignal 334 in dem Datenbit-Multiplizierer 370 abgestreift werden. Sogar wenn die volle Datennachricht nicht genau bekannt ist, können Teile der Nachricht bekannt sein oder angenommen werden, da sich die Nachricht verglichen mit den Bitraten der verarbeiteten Signale sehr langsam ändert. Die Position innerhalb der Navigationsnachricht kann bekannt sein und verwendet werden, wie beispielsweise der Header oder die Protokollinformationen, die die Art der folgenden Informationen angibt, das heißt der Header für die Zeit- und Dateninformationen. Es ist nur notwendig, genug über die Datennachricht zu wissen, um die Mehrwegsignale für die Auslöschung ordnungsgemäß zu modellieren.
- Es wird nun ebenfalls auf Fig. 20 Bezug genommen. Falls die Datenbit-Nachricht gegenwärtig nicht bekannt ist, kann sie durch Demodulation, wie es gezeigt ist, oder auf irgendeine andere zweckmäßige Art und Weise geschätzt werden. Beispielsweise kann die In-Phasen- oder I-Komponente 372 der Costas-Schleifendemodulation, die der pünktlichen oder fristgerechten Korrelation in der Trägerverfolgungsschleife 330 als Antwort auf den pünktlichen PRN-Code 345 zugeordnet ist, über jede 20 ms Dauer eines Navigationsdatenbits von 50 bps integriert werden, um die Polarität und somit die binäre Amplitude von 1 oder 0 für dieses Datenbit anzugeben. Gemäß der in Fig. 20 gezeigten Ausführungsform der vorliegenden Erfindung wird eine In-Phasen- oder I-Komponente 372 an den 20 ms-Integrator und Digitalisierer 374 angelegt und mit dem GPS-C/A-Code synchronisiert, wie er empfangen wurde. Diese Synchronisation kann durch Takten der Integration in dem 20 ms-Integrator und Digitalisierer 374 mit dem Datenbit- Timingsignal 376 erreicht werden, das von dem PRN-Codegenerator 342 im Codierer 337 oder in irgendeiner anderen geeigneten Art und Weise hergeleitet wird.
- Bei der bevorzugten Ausführungsform stellen die Integratoren 373 (in Fig. 20 gezeigt), die sowohl in den I- als auch den Q-Signalwegen in der Costas-Schleife in der Trägerverfolgungsschleife 330 enthalten sind, bereits eine Integration für mindestens 20 ms bereit, so daß eine weitere Integration in dem 20 ms-Integrator und Digitalisierer 374 nicht erforderlich ist. Wenn die von den Integratoren 373 gelieferte Integration kleiner als 20 ms ist, wird eine Integrationszeit von 20 ms durch den 20 ms-Integrator und Digitalisierer 374 bereitgestellt.
- Die Ausgabe des 20 ms-Integrators und Digitalisierers 374 hat die Form von demodulierten Datenbits 378. Die Zeitmehrdeutigkeit hinsichtlich der Frage, welche 1 ms-Wiederholung der C/A-Code-Modulation den Beginn des Datenbits markiert, kann mit irgendeiner von vielen bekannten herkömmlichen Techniken gelöst werden.
- Dieser von dem 20 ms-Integrator und Digitalisierer 374 bereitgestellte Schätzwert der Datenbitinformationen ist jedoch erst am Ende der 20 ms-Bitdauer der 50bps-Navigationsdatenmodulation verfügbar. Diese 20 ms-Nacheilung ist für viele Duplikatsynthesizer annehmbar, wie beispielsweise die in dem Duplikatsignalsynthesizer 338 verwendete komplexe LMS-Rückkopplungsanpassung. Eine elegante jedoch einfache Lösung dieses Problems der Nacheilung des Schätzwerts für demodulierte Datenbits 378 besteht darin, jeweils die zwei möglichen Werte für Navigationsdatenbits 368 in einem Paar von Duplikatsignalsynthesizern zu verwenden und dann am Ende der 20 ms-Zeitspanne die Synthesizerausgaben von dem bestimmten Synthesizer auszuwählen, der zufällig den korrekten Bitwert verwendet hat.
- Wie es in Fig. 20 gezeigt ist, werden bei eine Implementierung dieser Vorgehensweise das rohe Meßsignal 334 von der Trägerverfolgungsschleife 330 und der satellitenspezifische PRN-Code 343 beide parallel sowohl an das erste FIR 346a sowie an das zweite FIR 346b angelegt. Als eine Alternative zum Abstreifen der Navigationsnachrichtendatenbits von dem rohen Meßsignal 334, um ein Sollwertsignal 362 zu bilden, wird das Datenbit zu dem satellitenspezifischen PRN- Code 343 mod-2 hinzugefügt, um die mögliche 180º Phasenverschiebung auf Grund der Navigationsnachrichtenmodulation in einem Inverter 347 darzustellen, bevor der Code an das zweite FIR 346b angelegt wird.
- Insbesondere wird ein vorhergesagter Datenbitwert von Bit = 0 durch Anlegen des satellitenspezifischen PRN-Codes 343 direkt an das erste binäre Schieberegister 350a im ersten FIR 346a erreicht. Der erste Duplikatsignalsynthesizer 338a umfaßt ein erstes FIR 346a, das einen komplexen LMS- Verfolgungs-Algorithmus 339a verwendet, um das Meßsignal 364a im Summierer 348a als Antwort auf das erste binäre Schieberegister 350a zu synthetisieren. Ein vorhergesagter Datenbitwert von Bit = 0 wird an das erste binäre Schieberegister 350a im ersten FIR 346a durch Anlegen des satellitenspezifischen PRN-Codes 343 direkt an das erste binäre Schieberegister 350a angelegt. Die Ausgaben des komplexen LMS-Verfolgungs-Algorithmus 339a umfassen h1a und h2a, die die Gewichtungen der ersten beiden Zeitsegmente des ersten FIR 346a darstellen.
- Ein vorhergesagter Datenbitwert von Bit = 1 wird an das zweite binäre Schieberegister 350b im zweiten FIR 346b durch Anlegen des satellitenspezifischen PRN-Codes 343 durch einen Inverter 347 an das zweite binäre Schieberegister 350b angelegt. Das FIR 346b verwendet den komplexen LMS-Verfolgungs- Algorithmus 339b, um das Meßsignal 364b im Summierer 338b des zweiten FIR 346b als Antwort auf das zweite binäre Schieberegister 350b zu synthetisieren. Die Ausgaben des komplexen LMS-Verfolgungs-Algorithmus 339b umfassen h1b und h2b, die die Gewichtungen der ersten beiden Zeitsegmente des zweiten FIR 346b darstellen.
- Um zu bestimmen, welcher der vorhergesagten Navigationsdatenbit-Modulationswerte, 1 oder 0, am Ende einer 20 ms- Integrationszeit richtig war, wird der tatsächliche Wert der Navigationsdaten-Nachrichtenmodulation an den Bitkomparator und Datenschalter 382 von dem demodulierten Datenbit 378 von dem 20 ms-Integrator und Digitalisierer 374 zusammen mit h1a und h2a von dem ersten FIR 346a und h1b und h2b von dem zweiten FIR 346b angelegt. Wenn das tatsächliche Datenbit einen Datenbitwert von Bit = 0 aufwies, d. h. keine Phasenverschiebung, dann legt der Bitkomparator und Schalter 382 h1a und h2a von dem ersten FIR 346a als h&sub1; und h&sub2; an das Codiererteilsystem 337 an. Zusätzlich werden h1b bis h48b im zweiten FIR 346b durch h1a bis h48a vom ersten FIR 346a ersetzt. Wenn jedoch das demodulierte Datenbit 378 einen Datenbitwert von Bit = 1 angibt, dann legt der Bitkomparator und Schalter 382 h1b und h2b von dem zweiten FIR 346b als h&sub1; und h&sub2; an das Codiererteilsystem 337 an. Außerdem werden h1a bis h48a im ersten FIR 346a durch h1b bis h48b vom zweiten FIR 346b ersetzt. Auf diese Art und Weise wird das System alle 20 ms aktualisiert, sogar wenn die Navigationsdatenbitmodulation a priori nicht bekannt ist.
- Mit erneutem ausführlichem Bezug auf Fig. 19 wird die Verwendung von h&sub1; und h&sub2; im Codiererteilsystem 337 nun ausführlicher beschrieben. Wie es oben bemerkt ist, stellen diese beiden Werte die Gewichtungen der ersten beiden Zeitspannen dar, die bei der erfolgreichen Duplizierung der Signale, wie sie empfangen werden, einschließlich Mehrwegeffekte verwendet werden. h&sub1; und h&sub2; werden im Addierer 384 zur Umwandlung durch einen ArcusTangens-Konverter 386 zu einem Phasenverfolgungsfehler 340 kombiniert, der dann von dem Codiererteilsystem 337 an die Trägerverfolgungsschleife 330 angelegt wird.
- Außerdem werden die Beträge von h&sub1; und h&sub2; in Quadrierern (oder alternativ Absolutwerte) 388 zur Subtraktion durch den Subtrahierer 390 quadriert, um ein Code-Verfolgungsfehlersignal 41 zur Verwendung durch ein Code-Schleifenfilter 392 zu erzeugen, das den Codierer-NCO 344 ansteuert. Die geschätzte Trägerphase 379 wird von der Trägerverfolgungsschleife 330 erzeugt und kann zum dynamischen Unterstützen, insbesondere für eine sich bewegende Plattform, wie beispielsweise ein Fahrzeug, verwendet werden, indem sie auf die PRN-Chip-Rate im Teiledurch-1540-Skalierer 394 skaliert wird, und zwar zur Kombination mit der Ausgabe des Code- Schleifenfilters 392 im Addierer 396 vor dem Anlegen an den Codierer-NCO 344, der den PRN-Codegenerator 342 ansteuert und die geschätzte Codephase 398 erzeugt.
- Die geschätzte Trägerphase 379 und die geschätzte Codephase 398 werden bei einem herkömmlichen GPS-Datenprozessor, wie beispielsweise dem in Fig. 19 gezeigten Prozessor 29, verwendet, um die erforderlichen Positionsinformationen herzuleiten.
- Es wird erneut Bezug auf den Datenbitmultiplizierer 370 in Fig. 19 genommen. Ein Vorteil des Abstreifens der Navigationsdatenbitmodulation von dem rohen Meßsignal 334, um ein Sollwertsignal 362 zu erzeugen, betrifft die Notwendigkeit, das binäre Schieberegister 350 zu duplizieren, wenn die Navigationsdatenmodulation nicht bekannt ist. Eine alternative Vorgehensweise besteht darin, die Navigationsdatenbit-Modulation zu dem Meßsignal 364 hinzuzufügen, beispielsweise durch geeignetes Invertieren des satellitenspezifischen PRN-Codes 343, der an das FIR 346 angelegt wird. Das heißt, wenn beide möglichen Datenbit-Modulationswerte der Navigationsnachricht getestet werden müssen, ermöglicht das Abstreifen der Navigationsdatenbits 368 von dem (FIR)-Filter 346 in dem Datenbit-Multiplizierer 370 des FIR 346, wie es in Fig. 19 gezeigt ist, die Duplizierung von parallelen FIRs 346, die von einem einzigen binären Schieberegister 350 angesteuert werden. Diese Konfiguration ist nachstehend in Fig. 21 gezeigt.
- Wie es in Fig. 20 gezeigt ist, sind jedoch doppelte binäre Schieberegister 350a und 350b erforderlich, wenn auf die Navigations-Nachrichtendaten hin in einer Konfiguration getestet wird, in der die beiden möglichen Navigations- Nachrichtenbits durch Invertieren auf einen eines Paars von FIRs 346 erzeugt werden. Das Abstreifen der Navigationsnachricht vor dem Anlegen an das FIR 346 bietet daher den Vorteil des Verringerns der Bauelementezahl bei einem parallelen System durch das binäre Schieberegister 350b.
- Es wird nun auf Fig. 21 Bezug genommen. Eine digitalisierte Version 328 der Signale, wie sie empfangen wurden, wird an die Trägerverfolgungsschleife 330 zur Phasenrotation durch den Phasenrotator 336 angelegt, um ein rohes Meßsignal 334 zu erzeugen, von dem die Navigationsdatenbits 368 durch den Datenbitmultiplizierer 370 auf die gleiche Art und Weise wie in Fig. 19 abgestreift sind. Das rohe Meßsignal 334 wird dann an den ersten Duplikatsignalsynthesizer 338a angelegt, um eine Navigationsdatenbitmodulation von Bit = 0 darzustellen. Das resultierende Sollwertsignal 362 stellt eine Navigationsdatenbitmodulation von Bit = 1 zum Anlegen an den zweiten Duplikatsignalsynthesizer 338b dar. Es ist bedeutsam anzumerken, daß im Gegensatz zu der in Fig. 20 gezeigten Konfiguration sowohl das erste FIR 346a als auch das zweite FIR 346b von einem einzigen binären Schieberegister 350 angesteuert werden, wobei dessen Ausgaben parallel an beide Filter angelegt werden. Der komplexe LMS-Verfolgungs- Algorithmus 339a empfängt das augenblickliche Code-Signal des satellitenspezifischen PRN-Codes 343 über das binäre Schieberegister 350 und legt den pünktlichen PRN-Code 345 an die Trägerverfolgungsschleife 330 an.
- Die verbleibenden Ausgaben der Fehlerverfolgungsschleifen sind h1a und h2a von dem ersten FIR 346a und h1b und h2b von dem zweiten FIR 346b, die mit dem demodulierten Datenbit 378 von dem 20 ms-Integrator und Digitalisierer 374 im Bit- Komparator und Schalter 382 verglichen werden, um zu bestimmen, welche der Filterausgaben an das Codiererteilsystem 37 als h&sub1; und h&sub2; angelegt werden. Die Arbeitsweise der Ausführungsform von Fig. 21 ist somit derjenigen von Fig. 20 mit der Ausnahme sehr ähnlich, daß die Navigationsdatenbitmodulation von dem rohen Meßsignal 334 abgestreift und nicht zu dem satellitenspezifischen PRN-Code 343 hinzugefügt wird. Wie es oben angemerkt und aus Fig. 21 ersichtlich ist, besteht eines der vorteilhaften Ergebnisse dieser Konfiguration in der Verwendung eines einzigen binären Schieberegisters 350 anstatt des ersten binären Schieberegisters 350a und des zweiten binären Schieberegisters 350b, wie es in der in Fig. 20 gezeigten Konfiguration erforderlich ist.
- Es wird nun auf die Arbeitsweise der in den Fig. 19 bis 21 gezeigten Ausführungsformen Bezug genommen. Die Verwendung der Navigationsdatenbitmodulation, die aus den Signalen, wie sie empfangen werden, hergeleitet wird, die wesentliche Mehrwegfehler aufweisen können, verschlechtert den Betrieb eines typischen Empfängers nicht wesentlich. Insbesondere kann angenommen werden, daß ein typischer Empfänger beispielsweise mit einem Signalpegel von 38 dB-Hz, Eb/N&sub0; = 21 dB mit der Datenrate von 50 bps der Navigationsdatenbits arbeiten kann, wobei Eb die Energie pro Bit und N&sub0; Watt pro Hertz darstellt. Die Bitfehlerrate würde dann 10&supmin;³ bei ungefähr Eb/N&sub0; = 7 dB sein. Somit kann die pünktliche Korrelation durch den Mehrweg beträchtlich verschlechtert werden, ohne daß Fehler in nennenswertem Umfang in die Datenbit-Schätzwerte eingebracht werden, wie es durch Simulationen nachgeprüft ist. Mit anderen Worten bedeutet der relativ größere Betrag des Signals und seiner Fehlerrate gegenüber dem Betrag und dem Schätzwert der Navigations- Datenbits, daß Mehrwegfehler in den Navigations-Datenbits die Verarbeitung der Empfängersignale nicht deutlich beeinflussen.
- Um den Vorgang des Auslöschungsvorgehensweise der vorliegenden Erfindung mathematisch zu analysieren, kann das empfangene Signal mit K Mehrwegkomponenten modelliert werden als:
- S(t) = b(t) akejφkPN(t - τk) = b(t) αkPN(t - τk) (1)
- wobei eine komplexe Darstellung des Betrags und der Phase auf dem Träger verwendet wird. Für jede Mehrwegkomponente ist τ die Verzögerung in PRN-Chips, a der Betrag und φ die Trägerphase. Aus mathematischen Gründen können der Betrag und die Phase zu dem einzigen komplexen Wert α kombiniert werden. Die direkte Komponente entspricht α&sub0;, und ihre Ankunftszeit und Phase sind die gewünschten Messungen für die Zwecke der Navigation. Nur Mehrwegkomponenten, die um weniger als ungefähr 1 PRfl-Chip verzögert sind, sind in Gleichung (1) von Belang, da der PRN-Code für längere Mehrwegverzögerungen nicht korreliert ist.
- Durch Einspeisen des bekannten PRN-Codes in ein binäres Schieberegister, wie es in Fig. 19 gezeigt ist, wird der allgemeine Schätzwert
- est(t) = b(t) hmPN(t - τ - mT) (2)
- synthetisiert, wobei T eine Auslegungszeitabstand in PRN- Chips bezeichnet, und die hm-werte zu bestimmende komplexe werte sind. Eine grafische Auftragung von hm als Funktion von mT ist der Mehrwegprofilschätzwert in dem Empfänger, der idealerweise mit dem tatsächlichen Profil übereinstimmen würde. Die hm-Werte können "Abgriff-Gewichte" genannt werden, und T ist der Abgriff-Abstand (tap spacing). Das Schieberegister in Fig. 19 schiebt jedes T.
- Um das Eingangssignal genau zu modellieren, wenn es durch ein Mehrweg verzerrt wird, ist es notwendig, τ in Gleichung (2) annähernd τo in Gleichung (1) zu machen. Die Empfängerverarbeitung stellt τ und die hm-Werte ein, um den mittleren quadratischen Wert von
- ε = be(t)[S(t) + n(t)] - est(t) (3)
- zu minimieren, wobei be(t) einen Schätzwert der Datenbits ist. Wie es oben erläutert ist, können die Datenbits wirksam abgestreift werden. Dann ist der bekannte komplexe LMS- Algorithmus eine direkte Methode zum Einstellen von hm, um den mittleren quadratischen Fehler einer gewichteten Summe verglichen mit einem gewünschten Ergebnis zu minimieren. In Gleichung (3) ist s(t) das gewünschte Ergebnis und E der komplexe Fehler. Wenn er auf die vorliegende Aufgabe angewendet wird, wird der komplexe LMS-Algorithmus durch die Rückkopplungsanpassung
- Δhm = gPN*(t - mT)ε (4)
- beschrieben, die jeden hm-Wert einstellt, um den mittleren quadratischen Fehler zu minimieren. Die Verstärkungskonstante g stellt die Zeitkonstante der Anpassung ein. Ein kleines g verringert den Fehler auf Grund von Rauschen und gewährleistet die Stabilität der Rückkopplungsschleifen. Die Gleichung (4) zeigt, daß im allgemeinen eine konjugiertkomplexe von dem PRN-Code zu nehmen ist, wobei dies jedoch bei der vorliegenden Anwendung unnötig ist, bei der PRN(t) reell ist (±1 Werte).
- Der Wert von τ kann durch Bestimmen des frühesten signifikanten Werts von hm geschätzt werden, wenn der Empfänger auf herkömmlicher Weise entweder durch Differenzbildung zwischen frühen und späten Korrelationsleistungen (Verzögerungs-Einrastungs-Verfolgung) oder durch Bilden des Skalarprodukts zwischen einer frühen/späten Korrelation und einer pünktlichen Korrelation (Skalarproduktverfolgung) verfolgt. Diese Vorgehensweise sieht die Berechnung des Mehrwegprofilschätzwerts als ein Bereitstellen einer Korrektur an der herkömmlichen PRN-Verfolgung an.
- Gemäß der vorliegenden Erfindung wird nun eine alternative und bevorzugte Vorgehensweise zum Schätzen von α beschrieben. Um anzufangen sei angenommen, daß es keinen Mehrweg, nur die direkte Komponente gibt. Idealerweise würde nur ein hm, in dem Mehrwegprofilschätzwert ungleich Null sein; aufgrund der Wirkung der endlichen Empfängerbandbreite weist jedoch der Mehrwegprofilschätzwert tatsächlich eine Breite von ungleich Null auf. Dann kann eine Wiederherstellungskraft bzw. Rückstellkraft zum Einstellen von τ durch Differenzbildung zweier benachbarter hm-Werte erhalten werden, z. B.
- Verfolgungs-Wiederherstellungskraft = h&sub1; ² - h&sub2; ² (5)
- Tatsächlich wird 1 durch dieses Verfahren des Verfolgens hin zu einer Verfolgungs-Null eingestellt, so daß die direkte Komponente in der Mitte zwischen die frühesten beiden benachbarten Abgriffe des Mehrwegprofilschätzwerts fällt. (Es sei bemerkt, daß es besser sein kann, die beiden in Gleichung (5) verwendeten benachbarten Abgriffe auf etwas später bei der Mehrwegprofilschätzung zu verschieben.) Dann kann eine Verfolgungsschleife für τ geschlossen werden, um die Wiederherstellungskraft von Gleichung (5) auf die Verfolgungs-Null zu zwingen.
- Es sei nun angenommen, daß plötzlich eine Mehrwegkomponente auftritt. Die LMS-Rückkopplungsanpassung zum Schätzen des Mehrwegprofils verursacht, daß weitere Werte von hm für m> 2 Werte ungleich Null entwickeln, wobei jedoch idealerweise h&sub1; und h&sub2; nicht betroffen sind. Somit wird idealerweise τ weiterhin ohne einen deutlichen Fehler verfolgt.
- Die Trägerphase der direkten Komponente ist in den komplexen Werten von h&sub1; und h&sub2; enthalten, wenn τ, wie es oben beschrieben ist, verfolgt wird. Da die direkte Komponente zwischen diese beiden Abgriffe fällt, wird ein Schätzwert der Trägerphase durch die Phase von h&sub1;+h&sub2; angegeben. Idealerweise wird, wenn eine Mehrwegkomponente plötzlich auftritt, der Schätzwert der Trägerphase der direkten Komponente nur geringfügig beeinflußt.
- Von praktischer Bedeutung bei der Trägerverfolgung ist es imstande zu sein, bei Fahrzeugdynamik zu verfolgen. Aus diesem Grund zeigt Fig. 19 die gewöhnliche pünktliche Korrelation, um I- und Q-Komponenten zu erzeugen, die verwendet werden, um den Fehler für eine Standard-Costas-Schleifenverfolgung der Dynamik zu berechnen. Die aus h&sub1; und h&sub2; bestimmte Trägerphase für die direkte Komponente wird von dem Costas-Fehler subtrahiert, so daß die Costas-Schleife die geschätzte Phase der direkten Komponente verfolgt.
- Die geschätzte Trägerphase wird um 1540 in dem Teiledurch-1540-Skalierer 394 skaliert, was das Verhältnis der Trägerfrequenz zu der PRN-Chip-Rate darstellt, und in die Code-Verfolgung in dem Codierer-NCO 344 eingespeist, um die Wirkung der Dynamik aus der Code-Schleife zu entfernen.
- Es wird nun auf Fig. 22 Bezug genommen, in der die Arbeitsweise einer alternativen Ausführungsform der vorliegenden Erfindung gezeigt ist, bei der Mehrwegfehler mit Verzögerungen größer als ungefähr 1,5 C/A-Code-Chips erfaßt und korrigiert werden können. Diese Technik zum Korrigieren von nicht interferierenden Mehrwegsignalfehlern mit langer Verzögerung (d. h. einer Verzögerung größer als ungefähr 1,5 Chips) kann verwendet werden, in einer Kombination mit Techniken für konstruktiv oder destruktiv interferierende Mehrweg-Signalfehler mit einer kurzen Verzögerung (d. h. einer Verzögerung geringer als etwa 1,5 Chips), wie beispielsweise diejenigen, die in den Fig. 17 bis 18 und Fig. 19 bis 21 gezeigt sind, oder sie kann alleine verwendet werden.
- In einer Stadtumgebung oder irgendeiner anderen, in der es wesentliche, mögliche Signal-blockierende und -reflektierende Objekte gibt, rasten GPS und andere Spreizspektrumempfänger gelegentlich auf einem reflektierten Signal oder Mehrwegsignal ein und verfolgen dieses. Obgleich das Verfolgen eines Mehrwegsignals beginnen kann, wenn das Direktwegsignal von dem Sender blockiert ist, wird das Verfolgen des Mehrwegsignals häufig sogar fortgesetzt, wenn das Direktwegsignal später verfügbar wird, wodurch potentiell wertvolle Navigationsinformationen verloren gehen.
- Dieses Mehrwegproblem kann ebenfalls an für differentielle GPS-Sender ausgewählten Orten auftreten, als Ergebnis von Reflexionen, beispielsweise von einem Parkplatz mit schwarzem Asphalt in der Nähe des Senders, wenn sich der Winkel des ankommenden Signals auf Grund der Satellitenbewegung ändert.
- Wenn das Direktwegsignal danach verfügbar wird, würde es vorteilhaft sein, den Empfänger zu zwingen, auf das Direktwegsignal einzurasten und das reflektierte Signal zu ignorieren, das verfolgt wurde. Um dies zu tun, müssen die Direktwegsignale und Mehrweg-Reflexionssignale ohne weiteres voneinander unterscheidbar sein. Gemäß der Arbeitsweise der in Fig. 22 dargestellten Ausführungsform wird die größer als herkömmliche Anzahl von Korrelatoren, die zum Verfolgen der ankommenden Signale für jeden Satelliten verfügbar sind, um eine schnelle Reakqusition bereitzustellen, vorteilhaft verwendet, um nachzuprüfen, daß das verfolgte Signal tatsächlich das Direkt-Signal und nicht ein später ankommendes Mehrwegsignal ist. Wenn ein nicht-verfolgtes Direktwegsignal oder sogar ein Mehrweg-Reflexionssignal mit kürzerem Weg erfaßt wird, wird die Verfolgung sofort zu dem besseren Signal bewegt.
- Während der Satellitenverfolgung benutzt die vorliegende Erfindung zusätzlich zum Durchführen der frühen, augenblicklichen und späten Korrelationen, um die Verfolgungsgenauigkeit aufrechtzuerhalten, eine Mehrzahl von zunehmend früheren Korrelationen, um das Vorhandensein eines Satellitensignals zu erfassen, das deutlich früher als das gegenwärtig als das augenblickliche Signal verfolgte Signal auftritt. Wenn ein früheres Signal erfaßt wird, wird angenommen, daß es ein wertvolleres Signal ist, wie beispielsweise das Direktwegsignal oder mindestens ein Mehrweg-Reflexionssignal mit kürzerem Weg, insbesondere wenn der Betrag der früheren Korrelation größer als der Betrag der augenblicklichen Korrelation für das verfolgte Signal ist. Wenn ein früheres wertvolleres Signal erfaßt wird, wird die Code-Verzögerung oder die Codephase eingestellt, so daß das frühere Signal als das neue augenblickliche Korrelationssignal verfolgt wird. Ein verwandtes Phänomen wurde entdeckt, daß sich auf die Änderungsrate des Drifts eines reflektierten Wegsignals hin oder weg von dem Direktwegsignal bezieht. Beispielsweise ist bei einem über einem Parkplatz mit schwarzem Asphalt angeordneten Empfänger das reflektierte Wegsignal später als das Direktwegsignal, wobei jedoch die Verzögerung nicht konstant ist. Wenn sich der Einfallswinkel der von dem Satelliten empfangenen Signale ändert, ändert sich die Verzögerung. Die Änderungsrate der Verzögerung, das heißt die Geschwindigkeit der Fortbewegung, liefert wesentliche Informationen über den Reflektor einschließlich seiner physikalischen Qualitäten, wie beispielsweise Winkel und Abstand.
- Zusätzlich zum Verwenden dieser Informationen für andere Zwecke kann die Geschwindigkeit der Fortbewegung in solchen Fällen nützlich sein, in denen die Differenz in den Amplituden der direkten und reflektierten Wege nicht verwendet werden kann, um zwischen den direkten und reflektierten Signalen zu unterscheiden. Das heißt, daß sich das reflektierte Wegsignal hinsichtlich der Empfangszeit gegenüber dem gewünschten Signal ändern wird, und sich ebenfalls auf eine Art und Weise ändern wird, die sich von Direktwegsignalen unterscheiden läßt. Viele Charakteristika der gewünschten Direktwegsignale sind aus den Ephemeriden bekannt, sogar wenn die genaue Ankunftszeit noch nicht bekannt ist. Die Rate der Fortbewegung eines reflektierten Signals wird sich von derjenigen, die von der Fortbewegung des Direktwegsignals erwartet wird, die durch Satellitenbewegung verursacht wird, unterscheiden und kann somit verwendet werden, um das Direktwegsignal zu identifizieren. In einigen Situationen, insbesondere in fest vorgegebenen Positionen, wie beispielsweise Differential-GPS-Sendestationen, kann der Empfänger für bekannten Reflektoren kalibriert werden, wie beispielsweise die oben beschriebene Parkplätze mit schwarzem Asphalt.
- In anderen Situationen kann, wie beispielsweise in einem sich bewegenden Fahrzeug in einer Stadtumgebung, wobei es schnelle Änderungen der Reflektoren gibt und der Direktweg mehrere Male blockiert sein kann, können die Informationen von einem starken Mehrwegsignal auf der Basis der Rate der Fortbewegung korrigiert werden, vielleicht durch getrenntes Verfolgen des reflektierten Wegsignals, so daß die "dead reckoning (Koppelnavigation)" oder die Modellierung des Direktwegsignals verbessert werden kann, indem der reflektierte Weg in den Zwischenzeiten verfolgt wird, wenn der Direktweg blockiert ist.
- Im Betrieb wird, wie es in Fig. 22 gezeigt und wie es vorher mit Bezug auf Fig. 11 beschrieben wurde, jede 11 ¹/&sub2;- Chip-Probe oder jedes Segment Doppler-rotiert, um eine satellitenspezifische Probe für jedes verfolgte SV bereitzustellen. Das Segment #1 wird zuerst im SatTRAK-Kanal 38 für das SV1 mit einer für dieses SV zu dieser Zeit spezifischen Doppler-Rotation verarbeitet und dann in den SatTRAK-Kanälen 40, 42 und 44 der SVs 2 bis 4 (und so weiter für alle 11 SVs) durch Doppler-Rotation des Segments für jedes SV in jedem Kanal. Jede Doppler-rotierte Version des Segments #1 wird dann der Reihe nach um alle 22 satellitenspezifische Code-Verzögerungen verzögert, um die Korrelationsbeträge für alle 22 Verzögerungstheorien für dieses SV zu bestimmen.
- Danach werden die 11 1/2 Chip-Proben von allen verbleibenden 185 Segmenten in jeder ms-Codewiederholungszeitspanne auf die gleiche Art und Weise verarbeitet. Die Ergebnisse der Korrelation für jede Verzögerung für jedes der 12 SVs werden in einer Matrix von Korrelationsbeträgen für SVs als Funktion der Abgriffszahl oder Verzögerung akkumuliert. Beispielsweise ist die Akkumulation von Korrelationsamplituden für Korrelationen der Signale vom SV #1 im SatTRAK-Kanal 38 in Fig. 22 in der Zeile 1 für die Zeit T0 gezeigt. Die Beträge sind auf einer beliebigen Skala gezeigt. Es ist zweckmäßig, einen Betrag zu verwenden, der die Leistung des Korrelationsprodukts wiedergibt und nicht die Beträge der einzelnen I- und Q-Quadraturphasensignale zu verwenden, die in dem Verfolgungsmodus verwendet werden können. Die I- und Q- Korrelationsprodukte können danach in Übereinstimmung mit der herkömmlichen Umwandlungsformel in Leistung umgewandelt werden, in der die Leistung die Quadratwurzel der Summe der Quadrate von I und Q ist, oder es können Leistungsmessungen oder eine Spitzenerfassung innerhalb jedes Kanals ausgeführt werden. Eine alternative Vorgehensweise wird nachstehend mit Bezug auf Fig. 23 beschrieben, bei der ein schneller Reakquisitionskanal, der bereits eine Leistungsumwandlung und Spitzenerfassung aufweist, als getrennter Codephasenverifizierungskanal verwendet werden kann.
- In jedem Fall würde die augenblickliche Korrelationsverzögerung normalerweise so eingestellt werden, daß die Ergebnisse der augenblicklichen Korrelation in der Abgriffsspalte #2 akkumuliert werden (oder an einer anderen fest vorgegebenen Position, wie beispielsweise der Mitte der Verzögerungsleitung).
- Bei dem für das SV #1 gezeigten Beispiel wird die frühe Korrelation in der Spalte #1 akkumuliert, die einen Betrag von 4 für die 186 Segmente zeigt, die eine volle Wiederholung des C/A während 1 ms darstellen. Die augenblicklichen und späten Korrelations-Akkumulationen sind in den Spalten #2 und #3 mit Beträgen von 8 bzw. 4 gezeigt. In ähnlicher Weise sind die akkumulierten Beträge für die frühen, augenblicklichen und späten Korrelationen in den SatTRAK-Kanälen 40, 42 und 44 in den Spalten 1, 2 und 3 der Zeilen R2, R3 und R4 mit Beträgen von 6, 12 und 6 für das SV #2; 4, 8 und 4 für das SV #3 und 2, 4 und 2 für das SV #4 gezeigt. Für den Zweck der Darstellung wird eine Mehrweg-Reflexion des Signals von dem SV #1 in dem SatTRAK-Kanal 38 angegeben, die um die Spalte #17 herum mit Beträgen von 2, 4 und 2 zentriert ist, während ein Mehrwegsignal von SV #4 im SatTRAK- Kanal 44 angegeben ist.
- Bei dieser Konfiguration, bei der die frühen, augenblicklichen und späten Korrelationen mit Verzögerungen oder Abgriffgewichten von 1, 2 bzw. 3 durchgeführt werden, können die verbleibenden Korrelationen mit Abgriffgewichten größer als 3 während des Verfolgungsmodus überflüssig sein. Um Batterieenergie zu sparen oder die Geschwindigkeit des Multiplexens zu erhöhen, können diese Korrelationen ausgeschaltet werden.
- GemäE der vorliegenden Erfindung können die frühen, augenblicklichen und späten Korrelationen ebenfalls mit den größten Verzögerungen, bei Abgriffgewichten bei oder nahe 20, 21 und 22 verarbeitet werden. In Zeile 1, Zeit t&sub1; sind die Korrelationsbeträge für SV #1 im SatTRAK-Kanal 38 gezeigt, wobei die augenblickliche Korrelation in der Spalte #21 durchgeführt wird. Wenn, wie es gezeigt ist, die augenblickliche Korrelation fehlerhafterweise auf einer Mehrweg- Reflexion eingerastet wurde, verfolgt der SatTRAK-Kanal 38 unbeabsichtigterweise eine Mehrweg-Reflexion und nicht das gewünschte Direktwegsignal. Das Direktwegsignal, falls sichtbar, wird den Empfänger entlang eines kürzeren Wegs und somit zu einer früheren Zeit erreichen, d. h. bei einem früheren Abgriff oder Verzögerungszahl. Als Beispiel geben die für SV #1 im SatTRAK-Kanal 38 akkumulierten Korrelationsbeträge in Spalten 6, 7 und 8 Beträge von 6, 12 und 6 an, was angibt, daß das Direktwegsignal zu einer Zeit vorhanden ist, die dem Abgriff oder der Verzögerung #7 entspricht. Wie es in Fig. 17 gezeigt ist, wird erwartet, daß die Korrelationsform für ein Direktwegsignal, wie beispielsweise die Direktwegkorrelationsfunktion 226, ein gleichseitiges Dreieck ist.
- Wenn die akkumulierten Beträge im SatTRAK-Kanal 38 analysiert werden, wird das Direktwegsignal am Abgriff #7 erfaßt, und danach wird die richtige augenblickliche Korrelation zu dieser Zeit durchgeführt. Dies kann durch Verschieben der Verzögerungen der Abgriffe erreicht werden, so daß die dem Abgriff #7 zugeordnete Verzögerung danach am Abgriff #21 vorhanden ist. Danach können alle weiteren früheren Signale, die auftreten und für Abgriffgewichte #1 bis 419 akkumuliert werden, erneut verwendet werden, um nach einem Direktwegsignal zu suchen und dieses zu erfassen, wenn die aktuelle ausgewählte augenblickliche Verzögerung ungenau ist. Auf ähnlich Weise sind die frühen, augenblicklichen und späten Korrelations-Akkumulationen für SVs #2, #3 und #4 in den Zeilen 2 bis 4 zur Zeit t1 gezeigt.
- Hinsichtlich des SatTRAK-Kanals 38 gibt die Erfassung des Direktsignalwegs beim Abgriff #7 und nicht beim Abgriff 421 an, daß die Mehrwegsignal-Weglänge 15 ¹/&sub2;-Chips länger als der Direktweg oder ungefähr 2 ¹/&sub2; Meilen länger war, und zwar unter der Annahme, daß ungefähr 6 ¹/&sub2; Chips eine Meile darstellen.
- Gemäß einem weiteren Aspekt der vorliegenden Erfindung kann es vorteilhaft sein, das Mehrwegsignal weiterhin zu verfolgen, um zusätzliche Informationen für die Korrektur der Mehrweginterferenz zu erhalten, wenn die Mehrwegsignalweglänge nur ungefähr 1,5 ¹/&sub2; Chips (oder weniger) größer als der Direktweg ist. Auf ähnliche Weise kann die Verfolgung des Mehrwegsignals vorteilhaft sein, um das Direktwegesignal zu modellieren, wenn das Direktwegesignal vorübergehend verdeckt ist. Insbesondere kann die Verdeckung des Direktwegsignals zum Einrasten auf dem Mehrwegsignal führen, so daß, wenn ein früheres Direktwegsignal erfaßt wird, es vernünftig ist, anzunehmen, daß das Direktwegsignal später erneut verdeckt sein kann.
- Insbesondere kann, wie es für den SatTRAK-Kanal 38 in der Zeile 1, t&sub2;, gezeigt ist, das Direktwegsignal beim Abgriff #7 beibehalten werden, wo es erfaßt wurde und die Weiterentwicklung der Mehrweg-Reflexion kann überwacht werden. Kurzfristig kann die Änderung der Weglänge infolge der Fahrzeugbewegung wesentlich größer als die Änderung der Weglänge aufgrund der Satellitenbewegung sein. Wenn die Mehrweg- Signalweglänge mit Bezug auf die Direktweglänge zunimmt, ist es in beiden Fällen jedoch wahrscheinlich, daß das Mehrwegsignal keine zusätzlichen Verfolgungsschwierigkeiten verursachen wird. Wenn jedoch, wie es gezeigt ist, die Weglängendifferenz abnimmt, kann es ebenso sein, daß der Betrag der Korrelationen des Mehrwegsignals ansteigt.
- Zur Zeit t2 hat die Mehrweg-Signalweglänge abgenommen, so daß sie nur ungefähr 2 Meilen länger als die Weglänge des Direktwegs ist, so daß die Mehrwegkorrelationen in Spalten von ungefähr 12 ¹/&sub2; Chip-Verzögerungen von den entsprechenden Beträgen der Direktwegkorrelationen akkumuliert werden. Um sowohl die Mehrweg- als auch die Direktwegsignale innerhalb der gleichen 22 Abgriff-Verzögerungsleitung zu verfolgen, muß das Direktwegsignal zwischen den Abgriffen 2 und 10 korreliert werden. Bei dem gezeigten Beispiel bleibt die Direktweglänge beim Abgriff #7, so daß das Mehrwegsignal beim Abgriff #19 verfolgt werden kann.
- Zu einer späteren Zeit, die als Zeit t&sub3; gezeigt ist, wurde die zusätzliche Weglänge für das Mehrwegsignal auf ungefähr 1,5 Meilen verringert, was durch nur 9 ¹/&sub2; Chip- Verzögerungen dargestellt wird. Wenn die Weglängendifferenz kleiner oder gleich der halben Anzahl von Abgriffen ist, kann es zweckmäßig sein, die augenblickliche Korrelation für das Direktwegsignal zu dem Mittelpunkt der Zeile, d. h. zum Abgriff #11 zu verlegen. Das Mehrwegsignal wird bei einer Differenzweglänge von ungefähr 9 ¹/&sub2; Chip-Verzögerungen dann beim Abgriff #20 akkumuliert.
- Zu einer noch späteren Zeit, die als Zeit t&sub4; gezeigt ist, wurde das Weglängen-Differential auf ungefähr 6 ¹/&sub2; Verzögerungen verringert, und die Mehrwegsignal-Korrelation wird somit beim Abgriff #17 akkumuliert. Als Beispiel wird der Betrag der stärksten Mehrwegkorrelation als 10 gezeigt, was ein erheblicher Anstieg gegenüber dem Betrag bei dem größeren Weglängen-Differential ist. Dieser Anstieg steht im Einklang mit den Änderungen der Mehrwegreflexion, die auftreten, wenn sich das den GPS-Empfänger enthaltende Fahrzeug zu einem Mehrwegreflektor hinbewegt, wie beispielsweise zu einem Gebäude oder einem Berg.
- Auf ähnliche Weise wurde bei einer noch späteren Zeit t&sub5; das Weglängen-Differential auf ungefähr eine halbe Meile verringert, so daß die Mehrwegsignal-Korrelationsbeträge in den Abgriffen #13, #14 und #15 akkumuliert sind. Bei dieser Stufe liegt die Mehrwegkorrelation innerhalb ungefähr 1,5 ¹/&sub2;- Chip-Verzögerungen von der bei den Abgriffen #10, #11 und #12 akkumulierten Direktwegkorrelation. Wenn das Weglängen- Differential innerhalb ungefähr 1,5 ¹/&sub2;-Chip-Verzögerungen liegt, können, wie es oben mit Bezug auf Fig. 17 angemerkt ist, die Korrelationsprodukte konstruktiv oder destruktiv interferieren, was es schwieriger macht, das Direktwegsignal genau zu verfolgen.
- Wie man jedoch bei Betrachtung von Fig. 22 sehen kann, kann die fortschreitende Änderung des Weglängen-Differentials als Funktion der Zeit modelliert werden. Obgleich die Progression als eine ziemlich lineare Progression gezeigt ist, kann die tatsächliche Progression eine beliebige Form annehmen, und zwar abhängig von der Position und der Art des Reflektors sowie von dem relativen Weg und den Richtungsänderungen des Empfängers, die alle modelliert werden können, um eine relativ genaue Darstellung des Mehrwegsignals während der Zeitspanne der Interferenz mit dem Direktwegsignal zu liefern. Die für das Mehrwegsignal modellierten Korrelationsprodukte können dann von der Direktwegkorrelation subtrahiert oder anderweitig ausgeglichen werden, um den Direktweg genauer zu verfolgen.
- Außerdem kann, wie es in Fig. 17 gezeigt ist, die Form der durch die Mehrweginterferenz verursachten verzerrten Korrelation bei der Korrektur oder der Kompensation der Direktwegkorrelation für Verfolgungszwecke berücksichtigt werden.
- Es wird nun insbesondere auf die Zeit t&sub6; Bezug genommen. Nachdem das Weglängen-Differential ein Minimum erreicht hat (das Null sein kann, wenn das Mehrwegsignal verschwindet, falls sich das Fahrzeug dem Reflektor nähert), kann das Mehrweg-Weglängen-Differential erneut beginnen, anzusteigen. Es kann vorteilhaft sein, das Mehrwegsignal zu verfolgen, während die differentielle Weglänge abnimmt, wie es oben bemerkt ist, um die Mehrweginterferenz zu kompensieren. Außerdem kann es vorteilhaft sein, eine Mehrwegkorrelation oder mindestens das Mehrwegsignal mit dem größten Signalbetrag zu verfolgen, ganz gleich, ob das Weglängendifferential ansteigt oder abnimmt, um das Direktwegsignal während Zeitspannen der Verdeckung zu modellieren.
- Zur Zeit t&sub6; ist das Weglängendifferential auf ungefähr 1 Meile angestiegen, wobei jedoch das Direktwegsignal durch die Umgebung verdeckt wurde, d. h. durch ein Gebäude, durch Laubwerk, durch einen Hügel oder dergleichen. Durch Verfolgen des Verlaufs eines Haupt-Mehrwegsignals, falls verfügbar, einschließlich der Richtungsänderungen des Verlaufs des Weglängendifferentials, kann ein genaues Modell des Direktwegs während kurzer oder nicht so kurzer Zeitspannen beibehalten werden, wenn das Direktwegeignal verdeckt ist. Das Modell des Direktwegsignals kann auf jede geeignete Art und Weise, wie beispielsweise in einer Matrix von modellierten Korrelationsprodukten, beibehalten werden.
- Es wird nun auf Fig. 23 Bezug genommen. Die oben beschriebene Code-Verifizierungsfunktion kann auf eine unterschiedliche Art und Weise konfiguriert sein, um einige der Funktionen der Ausführungsform mit der schnellen Reakquisition zu nutzen, die oben mit Bezug auf Fig. 3 erläutert wurde. Bei einer Ausführungsform der vorliegenden Erfindung kann jeder Satellitenverfolgungskanal entweder in einem Satellitenverfolgungsmodus, indem die Quadratur-Korrelation der T- und Q-Signale von einem Satelliten bei jeder der 22 Abgriff-Verzögerungen durchgeführt wird, um dieses SV zu verfolgen, oder in einem schnellen Reakquisitionsmodus betrieben werden, wobei die Korrelationsleistung an jedem der 22 Abgriff-Verzögerungen bestimmt wird, und die Spitzenleistung auf die gleiche Art und Weise ausgewählt wird, wie es während der Reakquisition verwendet wird.
- Bei der speziellen Ausführungsform des gegenwärtig betrachteten schnellen Reakquisitionsmodus wird die Korrelationsleistung für jeden Abgriff sofort gemessen. Bei dieser Konfiguration ist es vorteilhaft, einen getrennten unabhängigen Kanal für die Codephasen-Verifizierung zu verwenden.
- Insbesondere wird, wie es in Fig. 23 gezeigt ist, das Segment #1 an mehrere Satellitenverfolgungskanäle angelegt, einschließlich der SatTRAK-Kanäle 38, 40, 42 und 44 usw. zum Verfolgen von SVs 1 bis 11. Die Segmente #2 bis #186 werden der Reihe nach auf die gleiche Art und Weise verarbeitet.
- Der Codephasen-Verifizierungs-SatTRAK-Kanal 300, der oben in Fig. 11 als der zum Verfolgen des SV 12 verwendete SatTRAK-Kanal gezeigt wurde, wird in dem schnellen Reakquisitionsmodus und nicht dem Verfolgungsmodus verwendet, um die Codephase für jedes SV der Reihe nach zu verifizieren. Die Aufgabe des Verifizierens der Codephase ist oben beschrieben und bezieht sich auf die Suche nach einem Direktwegsignal, das entlang eines Wegs empfangen wird, der kürzer als der Weg des verfolgten Signals ist.
- Im Betrieb wird während der ersten ms die 11 ¹/&sub2; Halb-Bit- Probe des Segments #1 der Reihe nach im Codephasen-Verifizierungs-SatTRAK-Kanal 300 verarbeitet, wobei die Codephase so eingestellt wird, daß die augenblickliche Korrelation für das gegenwärtig verfolgte Satellitensignal mit einer der größeren Verzögerungen korreliert wird, wie beispielsweise bei Abgriff #22. Die bei den Abgriffen #1 bis #21 geprüften Verzögerungstheorien sind dann die herkömmliche frühe Korrelation am Abgriff #21 und fortschreitend frühere Zeiten von Abgriff #21 zurück zum Abgriff #1.
- Als Beispiel kann das Mehrwegsignal 231 vom SV #1 unbeabsichtigterweise im SatTRAK-Kanal 38 verfolgt werden. Im SatTRAK-Kanal 38 würden die Codephasen-Verzögerungen für die 22 Abgriffe im SatTRAK-Kanal 38 so eingestellt werden, daß die augenblickliche Korrelation beim Abgriff #2 auftreten würde. Während einer Zeitspanne von 1 ms, der Wiederholungszeitspanne für eine volle 1023-Bit-Sequenz des C/A-Codes, würde der Codephasen-Verifizierungs-SatTRAK-Kanal 300 verwendet, um zu verifizieren, daß kein früheres mögliches Direktwegsignal ebenfalls verfügbar war.
- Im Betrieb wird die Codephase des Codephasen-Verifizierungs-SatTRAk-Kanals 300 so eingestellt, daß die Spitze des verfolgten Signals, bei diesem Beispiel die Spitze des Mehrwegsignals 231, beim Abgriff #22 verfolgt wird. Wie es in Fig. 23 gezeigt ist, wird nach der Akkumulation über 186 Segmente ein Korrelations-Leistungsbetrag von 4 m, der die Spitze des Mehrwegsignals 231 darstellt, am Abgriff #22 akkumuliert, und der Punkt halber Leistung ist als Betrag von 2 am Abgriff #21 gezeigt. Außerdem wird die Spitze 230 des Direktsignals am Abgriff #4 mit einem Betrag von 6 akkumuliert, während die Punkte halber Leistung bei Beträgen von 3 für die frühen und späten Korrelationsleistungen bei den Abgriffen von 3 bzw. 5 gezeigt sind.
- Während der nächsten Zeitspannen von 10 ms werden die Leistungen für die Korrelationsprodukte an jedem Abgriff für alle verbleibenden SVs 2 bis 11 geprüft. Für jedes SV wird die früheste Spitze als das Direktwegsignal ausgewählt, und die Codephase für dieses SV wird demgemäß eingestellt. Der Prozeß kann dann wiederholt werden.
- Wie es oben bezüglich Fig. 22 bemerkt ist, kann es vorteilhaft sein, das Mehrweg-Reflexionssignal zu verfolgen, um das Direkt- und Mehrwegsignal zu modellieren, um entweder die Interferenz zu minimieren, wenn die differentielle Wegverzögerung in der Größenordnung von ungefähr 1,5, Chips oder weniger ist, oder ein vorübergehendes verdecktes Direktwegsignal weiterhin zu verfolgen. Diese Aufgaben können zweckmäßigerweise ebenfalls im Codephasen-Verifizierungs-SatTRAK-Kanal 300 für ein SV pro ms erfüllt werden.
- Es wird nun auf Fig. 24 Bezug genommen, in der ein Blockdiagramm einer alternativen Ausführungsform des in Fig. 2 dargestellten GPS-Car-Navigationssystems gezeigt ist, die zur besseren Navigation während verringerter Satelliten-Sichtbarkeit verwendet wird.
- Wie es oben bemerkt ist, werden GPS-Empfänger vorzugsweise mit einem Minimum von 3 oder 4 Satelliten betrieben, die über den sichtbaren Himmel verteilt sind, um die 4 notwendigen Unbekannten, die üblicherweise xuser, yuser und Zuser umfassen, zu bestimmen oder zumindest zu schätzen, die drei orthogonale Koordinaten zur Lokalisierung des Benutzers liefern, sowie die Unbekannte tuser die die erforderliche Satellitenzeit liefert. Bei der in Fig. 24 gezeigten Ausführungsform sind die vier Unbekannten als auser, cuser, Zuser und tuser bezeichnet. Die drei orthogonalen Benutzer- Koordinaten sind auser, die den Benutzer hinsichtlich der Entfernung entlang des gegenwärtig identifizierten Kurses oder der entsprechenden Spur lokalisiert, cuser, die den Benutzer hinsichtlich des Querspurabstands des Benutzers von dem gegenwärtig identifizierten Kurs oder der entsprechenden Spur lokalisiert und zuser, die die Höhe des Benutzers herkömmlicherweise hinsichtlich der vertikalen Entfernung über oder unter dem Meeresspiegel darstellt.
- Wie es in Fig. 24 dargestellt ist, verarbeitet das GPS- Car-Navigationssystem 400 Satellitensignale im ASIC 102, die in dem Satelliten-Empfängeranschnitt 36 von der GPS-Antenne 28 empfangen wurden, um alle gegenwärtig sichtbaren Satelliten in satellitenspezifischen Verfolgungskanälen, wie beispielsweise den SatTrak-Kanälen 38, 40, 42 und 44 zu verfolgen, wobei deren Ausgaben an den SatProcessor 46 angelegt werden. Eine Navigationslösung kann dann in NavProzessor 402 erzeugt werden, die das Positionsmodell 403 der vier Unbekannten, wie beispielsweise das interne Taktmodell 54, die Höhenschätzung 56, cest 404 und aest 406, erzeugt. Die Verwendung von cest 404 und aest 406 wurde als vorteilhaft befunden, sogar wenn mehr als ein Satellit sichtbar ist.
- Das GPS-Car-Systemmodul 26 wird auch mit Daten bezüglich der dann aktuellen - und erwarteten zukünftigen - physikalischen Umgebung des Autos 10 von beieapielsweise der Routendatenbank 52 beliefert, die Informationen über das Routing in der Form von Straßen und Abbiegungen zwischen Straßen sowie die tatsächliche oder geschätzte Fahrbahnbreite umfaßt. Die geschätzte Fahrbahnbreite kann einfach ein Standardwert sein, der eine übliche Fahrbahnbreite darstellt, wie beispielsweise die Breite einer zweispurigen Stadtstraße oder eines Highways, falls dann keine andere Informationen verfügbar sind.
- Lösungen für alle vier Unbekannten der Positionsinformationen können hergeleitet werden, wenn Signale von vier in einer ordnungsgemäßen geometrischen Konfiguration angeordneten Satelliten sichtbar sind. Wenn Signale von nur drei sichtbaren Satelliten für eine geeignete Verarbeitung verfügbar sind, kann die zuser-Lösung durch die zest-Lösung 56 ersetzt werden, die aus einem Elevations-Schätzwert oder -Standardwert hergeleitet wird, was herkömmlicherweise als Höhen-Halte-Modus der Verarbeitung bezeichnet wird. Änderungen der Elevation treten bei der terrestrischen Navigation relativ langsam statt, so daß die Verschlechterung der Positionsgenauigkeit während des Höhen-Haltens häufig annehmbar ist.
- Wenn Signale von nur zwei geeigneten Satelliten verfügbar sind, werden die cuser-Positionsinformationen durch cest ersetzt, was aus der Routendatenbank 52 hergeleitet oder anderweitig geschätzt werden kann, was hier als der Querspur-Halten-Verarbeitungsmodus bezeichnet wurde. Der maximale physikalische Querspurabstand, d. h. die Breite der Fahrbahn, ist üblicherweise kleiner als die gegenwärtig mit dem GPS-System verfügbare Positionsgenauigkeit, und somit ist eine aus dem Querspur-Halten resultierende Positionsinformations-Verschlechterung normalerweise annehmbar, solange wie sich das Fahrzeug entlang einer bekannten Spur oder Richtung fortbewegt.
- Es wird nun auf Fig. 25A Bezug genommen. Wenn Routendaten von der Routendatenbank 52 oder einer anderen Quelle verwendet werden, kann die vorhergesagte Spur 408 die tatsächliche Fahrbahn 409 darstellen, die sich in der Zeichnung beispielsweise in einer ersten Richtung von einem Punkt 410 zu einer Abbiegung 412 erstreckt, wobei danach die tatsächliche Fahrbahn 409, und somit die vorhergesagte Spur 408, um estwa 30º nach rechts abbiegt. Eine ähnliche Situation tritt ein, wenn eine absichtliche Abbiegung durchgeführt wird, beispielsweise beim Verlassen eines Highway.
- Es wird nun auf Fig. 25B Bezug genommen. Wenn keine detaillierten Fahrbahn- oder Spurdaten verwendet werden, kann der Standard-Schätzwert für die vorhergesagte Spur 408 einfach der aktuelle Kurs sein. Das heißt, solange sich das Fahrzeug mit dem GPS-Car-Navigationssystem 400 entlang der tatsächlichen Fahrbahn 409 von dem Punkt 410 zu der Abbiegung 412 fortbewegt, folgt die vorhergesagte Spur 408 der tatsächlichen Fahrbahn 409 und es tritt kein Querspurfehler auf. Wenn jedoch nach der Abbiegung 412 die vorhergesagte Spur 408 lediglich aus dem Kurs des Fahrzeugs zwischen dem Punkt 410 und der Abbiegung 412 geschätzt wird, würde sich die vorhergesagte Spur 408 entlang der gleichen ursprünglichen Richtung fortsetzen, während die tatsächliche Fahrbahn 409 nach rechts abbiegt.
- In der in Fig. 25A gezeigten Situation kann das Querspur-Halten ohne wesentliche Genauigkeitsverschlechterung sowohl vor als auch nach der Abbiegung 412 erfolgreich verwendet werden. In der in Fig. 25B nach der Abbiegung 412 dargestellten Situation ist jedoch der tatsächliche Weg der tatsächlichen Fahrbahn 409 nicht bekannt und wird lediglich durch den vorherigen Fahrzeugkurs geschätzt, so daß ein wesentlicher Querspurfehler auftreten kann. Insbesondere ist der Querspurfehler bei der Abbiegung 412 Null, wobei er jedoch auf den Querspurfehlerabstand 414 ansteigt, wenn das Fahrzeug den Punkt 416 entlang der tatsächlichen Fahrbahn 409 erreicht. Wenn das GPS-Car-Navigationssystem 400 danach den Punkt 420 auf der tatsächlichen Fahrbahn 409 erreicht, erreicht der Querspurfehler den Querspurfehlerabstand 418.
- Eine Möglichkeit, das Querspur-Halten in der in Fig. 25B dargestellten Situation weiterhin wirksam zu verwenden, bei der die vorhergesagte Spur 408 nur aus dem aktuellen Kurs geschätzt wird, besteht darin, einen in Fig. 2 gezeigten Abbiegungsdetektor 66 zu benutzen, um das Auftreten einer Abbiegung zu erfassen. Die Abbiegungserfassungsanzeige kann in Verbindung mit einem Abbiegungskomparator 68 und der Routendatenbank 52 verwendet werden, um die vorhergesagte Spur 408 zu korrigieren oder zu aktualisieren, um dem tatsächlichen Weg der tatsächlichen Fahrbahn 409 zu entsprechen, oder nur um eine Neuschätzung der vorhergesagten Spur 408 durch Verwenden des dann aktuellen Kurses nach der Abbiegung zu verlangen. Auf ähnliche Weise besteht eine weniger wünschenswerte, jedoch einfachere Vorgehensweise darin, einen Zeitgeber 422 zu verwenden, um zu veranlassen, daß eine vorhergesagte Spur 408 periodisch aus dem dann aktuellen Kurs neu geschätzt wird.
- Eine bessere Alternative ist in Fig. 24 gezeigt, in der ein Steady-State-Detektor 424 alternativ zu oder zusätzlich zu dem Abbiegungsdetektor 66 verwendet werden kann. Der Steady-State-Detektor 424 kann einfach eine Art von Abbiegungsdetektor sein, wie beispielsweise ein Magnetkompaß oder eine höher entwickelte Einrichtung, wie beispielsweise ein Trägheitsnavigationssystem sein. In jedem Fall dient der Steady-State-Detektor 424 dazu anzugeben, daß das Fahrzeug nicht länger Steady-State-Bedingungen beibehält, das heißt, daß es nicht länger einer geraden Linie folgt oder sich entlang einer glatten Kurve fortbewegt. Die Ausgabe des Steady- State-Detektors 424 wird an den NavProcessor 402 angelegt, um anzugeben, daß die vorhergesagte Spur 408 nicht länger genau ist, da das Fahrzeug die Richtung geändert hat.
- Bei einer Anzeige von dem Steady-State-Detektor 424, daß eine Änderung der Steady-State-Bedingungen während des Querspur-Haltens eingetreten ist, wenn mehr als ein Satellitensignal im Blick ist, schaltet der NavProcessor 402 gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung automatisch von Querspur-Halten auf Takt-Halten um. Mit anderen Worten wird, bei einer Anzeige, daß ein Querspurfehler existieren kann, der aktuelle Taktschätzwert während einer kurzen Zeitspanne beibehalten, in der der Querspurschätzwert aktualisiert wird.
- Die Zeitdauer, während derselben das Takt-Halten ohne wesentliche Verschlechterung der Positionsgenauigkeit beibehalten werden kann, ist eine Funktion der Genauigkeit oder des Drifts der bei dem GPS-Car-Navigationssystem 400 verwendeten Echtzeituhr. Diese Genauigkeit kann vorhergesagt werden und ist wahrscheinlich gut genug, um für Zeitspannen von mindestens der Größenordnung von etwa 30 bis 60 Sekunden verwendet zu werden. Ein erster Schritt zum Erhöhen der Zeitdauer, während der das Takt-Halten ohne unannehmbare Positionsverschlechterung beibehalten werden kann, besteht darin, ein Modell des Fehlers der Echtzeituhr beizubehalten.
- Das Echtzeituhr-Fehlermodell 426 dient dazu, den Drift der in Fig. 12 gezeigten Echtzeituhr 428 zu überwachen. Der Uhr-Drift, verglichen mit der tatsächlichen Zeit, wie sie von den Satelliten bestimmt wird, wird als eine Funktion der Zeit bestimmt, so daß ein weiterer Drift vorhergesagt werden kann. Einige der Faktoren, die zu diesem Drift beitragen, sind linear und vorhersagbar, so daß einige Anteile des Uhr- Driftens genau modelliert werden können, und die Uhr so eingestellt werden kann, daß dieser Drift ausgeglichen wird. Andere Faktoren, die zu dem Uhr-Drift beitragen, sind nicht vorhersagbar. Das heißt, daß sogar nach einem Korrigieren der Uhr bzgl. im Vergleich zur Satellitenzeit erfaßbare Fehler die Genauigkeit der Echtzeituhr 428 nur auf ein bestimmtes Niveau verbessert werden kann. Die Ungenauigkeit des Taktmodells, die aus den zufälligen und nicht vorhersagbaren Faktoren resultiert, bestimmt die Zeitdauer, in der das Takt-Halten ohne einen nicht annehmbaren Grad der Genauigkeitsverschlechterung verwendet werden kann.
- Das Echtzeituhr-Fehlermodell 426 kann dann verwendet werden, um die die Zeitdauer einzustellen, während der Takt- Halten verwendet werden kann, so daß das Querspur-Halten freigegeben und der Querspurfehler minimiert oder eliminiert werden kann. Im Betrieb überwacht das Echtzeituhr-Fehlermodell 426 die Echtzeituhr 428, um die Höhe des nicht vorhersagbaren und unkorrigierbaren Uhr-Drifts zu bestimmen, während der SatProcessor 46 die Echtzeituhr 428 als Antwort auf Signale von den GPS-Satelliten korrigiert. Danach wird, wenn es nur zwei sichtbare Satelliten gibt, der Querspur-Halternodus eingerichtet, und der Steady-State-Detektor 424 überwacht die Fortbewegung des Fahrzeugs, um zu bestimmen, wann eine Abbiegung oder andere Änderungen gleicher Höhe durch eine Änderung der Steady-State-Bedingungen angegeben wird.
- Danach wird das Querspur-Halten freigegeben und das Takt-Halten eingerichtet, um alle Querspurfehler zu korrigieren. Danach wird in Übereinstimmung mit dem Zeitgeber 422 das Takt-Halten freigegeben und das Querspur-Halten erneut eingerichtet. Während nur zwei Satelliten mit brauchbaren Signalen sichtbar sind, wird das Querspur-Halten dann bis zum nächsten Mal beibehalten, wenn der Steady-State-Detektor 424 die mögliche Existenz eines bedeutenden Querspurfehlers angibt. Alternativ kann das Takt-Halten während längerer Zeitspannen des Querspur-Haltens in Übereinstimmung mit dem Zeitgeber 422 periodisch verwendet werden, um eine Verringerung aller akkumulierten Querspurfehler zu ermöglichen. Auf diese Art und Weise kann die bestmögliche Navigationslösung aus den Signalen von zwei Satelliten durch Hin- und Herschalten zwischen zwei Haltezuständen, wie beispielsweise Querspur- und Takt-Halten, erhalten werden. Die Zeit in jedem Haltezustand ist in Übereinstimmung mit Angaben oder Vorhersagen der nicht annehmbaren Abweichung von dem gehaltenen oder modellierten Wert begrenzt.
- Bei den typischsten Betriebsbedingungen bei der terrestrischen Navigation tragen die Breite der Fahrbahn, des Wasserwegs oder des Luftwegs - und die Wahrscheinlichkeit einer Steady-State-Bewegung - beide zu einer Bevorzugung des Querspur-Haltens gegenüber dem Takt-Halten bei, insbesondere angesichts der Drift-Fehler in gegenwärtig verfügbaren Echtzeituhren, die für GPS-Empfänger verwendet werden. Das periodische Hin- und Herschalten zwischen Querspur- und Takt- Halten liefert die genauesten und verläßlichsten Navigationslösungen für zwei sichtbare Satelliten. Wenn der zweite Satellit ebenfalls nicht verfügbar wird, so daß Signale von nur einem einzigen Satelliten brauchbar bleiben, kann das Takt-Halten in Verbindung mit dem Querspur-Halten für eine Navigation mit einem einzigen Satelliten verwendet werden.
- Es wird erneut auf Fig. 12 Bezug genommen. Der Leistungsverbrauch ist ein kritisches Thema für viele terrestrische Spreizspektrumempfänger, einschließlich GPS- Empfängern, insbesondere für Batterie-betriebene Empfänger. Viele Batterie-betriebene Empfänger werden in Umgebungen verwendet, in denen die Batterie-Belastung aufgrund des Empfängers nominal ist und/oder geeignet aufgeladen werden kann, wie beispielsweise in einem Fahrzeug. Viele andere Batterie-betriebene Empfänger, die hier zweckmäßigerweise als Hand-Held-Einheiten bezeichnet werden, sind zur Leistungsversorgung ausschließlich auf ihre Batterien angewiesen und müssen regelmäßig durch Nachladen der Batterien oder Ersetzen derselben mit neuer Energie versorgt werden. Außerdem macht die Art der Verwendung derartiger Einrichtungen eine vernünftig lange Batterielebensdauer bedeutsam.
- Herkömmliche Einrichtungen können heruntergefahren werden, das heißt ausgeschaltet werden, so daß die Batterie- Belastung minimal ist. Die Zeit, die erforderlich ist, um einzuschalten und eine vernünftige Navigationslösung bereitzustellen, ist jedoch häufig nicht zufriedenstellend. Wenn beispielsweise ein herkömmlicher Empfänger, gerade nachdem er heruntergefahren wurde, eingeschaltet wird, kann er imstande sein, ohne weiteres die Satelliten neu zu erfassen, die er vorher verfolgte, wobei jedoch eine derartige Reakquisition mindestens 2 bis 3 Sekunden in Anspruch nimmt. Diese Zeitverzögerung ist zu lang, um ein Abschalten zwischen Positionen, die bei den meisten Anwendungen fest vorgegeben sind, zu erlauben. Bei einem Fahrzeug würde es ein Benutzer vorziehen, nicht mehrere Sekunden nach der Anforderung einer Positionsbestimmung zu warten, bis der Empfänger eine aktualisierte Navigationslösung bereitstellt.
- Wenn ein Empfänger ferner für mehr als einige Sekunden abgeschaltet wurde, werden die akkumulierten Zeitfehler häufig dazu führen, daß eine Suche notwendig ist, um auf den Satellitensignalen einzurasten, es sei denn, daß eine Echtzeituhr mit hoher Qualität (und somit kostspielig) oder eine andere Quelle einer genauen Zeitinformation bereitgestellt wird. Eine Satellitensignalsuche kann 15 Minuten benötigen, wenn der Empfänger für eine Weile nicht eingeschaltet war.
- Gemäß der vorliegenden Erfindung wurden jedoch Energiespartechniken benutzt, um es möglich zu machen, daß Batterie-betriebene, Hand-Held-Empfänger oder ähnliche Empfänger mit minimalen Batterie-Energieanforderungen betrieben werden können, um sofortige oder zumindest als sofort wahrnehmbare Positionsbestimmungen und Navigationslösungen bereitzustellen, wenn die Einheit eingeschaltet oder wenn eine Positionsbestimmung angefordert wird. Mit dem Begriff sofortig oder als sofortig wahrnehmbar ist eine relativ kurze Zeitverzögerung in der Größenordnung von einer Viertel bis zu einer halben Sekunde zwischen der Zeit, zu der die Einheit aktiviert wird, und der Zeit, zu der der Benutzer die Positionsbestimmung empfängt, gemeint, so daß dem Benutzer keine Antwortzeitverzögerung bewußt gemacht wird.
- Es gibt zwei primäre Batteriesparbetriebsarten, den Push-to-fix- oder Ruhe-Modus und den kontinuierlichen Navigationsmodus mit reduzierter Leistung.
- In dem Push-to-fix-Modus bzw. Drücke-zum-Bestimmen-Modus drückt der Benutzer, wenn eine Navigationslösung oder Positionsbestimmung erforderlich ist, eine Taste auf der Einheit und eine Positionsbestimmung wird in einer ausreichend kurzen Zeit angezeigt, so daß der Benutzer durch die Zeit, die erforderlich ist, um neu zu erfassen und die Navigationslösung bereitzustellen, nicht verärgert wird. Der Push-to- fix-Modus kann daher eine als sofortig wahrnehmbare Navigationslösung bereitstellen, wenn die Push-to-fix-Steuerung aktiviert ist. Während der übrigen Zeit arbeitet der Empfänger in einem Ruhe-Modus, bei dem eine minimale Energie verbraucht wird. Während des Ruhe-Modus wurde jedoch der wirksame Taktfehler modelliert, so daß die Beibehaltung der Taktgenauigkeit automatisch durchgeführt wird, um den nicht vorhersagbaren Taktfehler unter einem vorbestimmten Betrag zu halten, so daß der Empfänger erneut zur Taktbeibehaltung mit minimalem Energieverbrauch aktiviert werden kann.
- Bei dem kontinuierlichen Betriebsmodus mit verringerter Leistung wird eine als fortwährend aktualisiert wahrnehmbare Navigationslösung bereitgestellt. Die Mehrheit der Energieverbrauchenden Teile des Empfängersystems werden für einen bedeutenden Bruchteil jeder Sekunde nicht mit Leistung versorgt. Wie es nachstehend beispielhaft beschrieben wird, kann die vorliegende Erfindung in einem Modus betrieben werden, bei dem der volle Betrieb des Empfängers nur für 200 Millisekunden pro Sekunde verwendet wird, wobei ungefähr 80% der Batterieenergie gespart wird, die andernfalls während der verbleibenden 800 Millisekunden pro Sekunde verwendet werden würden.
- Wie es in Fig. 12 gezeigt ist, kann das GPS-Empfängersystem 200 in verschiedene Hauptteilsysteme aufgeteilt sein, beispielsweise ein RF-Verarbeitungsteilsystem 214 mit dem Antenneneingang und RF-Signalaufbereitungs-, Filter- und -Vorverstärkungsstufen, einem ZF-Filter sowie mit dem Kristalloszillator für einen genauen Takt oder Zähler, eine Signalverarbeitungsstufe basierend auf dem ASIC GSP1 202 und einem digitalen Abschnitt 430, der die digitalen Computereinrichtungen, wie beispielsweise SRAM 206, ROM 208 und CPU 101 enthält, die durch Daten- und Adreßbusse 210 und 212 verbunden sind, sowie die Echtzeituhr 428.
- Gemäß der vorliegenden Erfindung werden das RF-Verarbeitungsteilsystem 214 und der ASIC GSP1 202 für einen wesentlichen Teil der Zeit in einen sogenannten Ruhe-Modus heruntergefahren, während der digitale Abschnitt 430 eingeschaltet bleibt, um den Betrieb der Echtzeituhr 428 aufrechtzuerhalten. Bei vielen Systemen kann es wünschenswert sein, den Kristall 224 in einem betriebsbereiten Zustand während des "Aus"- oder Ruhe-Zustands zu halten, indem er beispielsweise in einer temperaturgesteuerten Umgebung warm gehalten wird.
- Bei dem Push-to-fix-Modus ist die Dauer der erlaubten Abschalt- oder "Aus"-Zeit während des Ruhe-Modus, das heißt des Zeitintervalls zwischen Taktgenauigkeits-Beibehaltungsvorgängen von der Höhe des nicht vorhersagbaren oder nicht modellierbaren Drifts der Echtzeituhr 428 abhängig. Bei einer typischen Anwendung wird der in der Echtzeituhr 428 verwendete Kristall ein relativ kostengünstiger Kristall in der Größenordnung der Qualität von Kristallen sein, die in einem Personal-Computer verwendet werden. Derartige Kristalle können eine Zeitauflösung von 30 Mikrosekunden oder besser bereitstellen und sind modellierbar, um Zeit auf eine halbe Millisekunde in ungefähr 50 Sekunden zu halten.
- Um die Ruhe- oder "Aus"-Zeit in einem Push-to-fix-Modus zu maximieren, wird der Drift der Echtzeituhr 428 gemessen und gegen eine genauere Zeitbasis modelliert, wie sie von dem Kristall 224 in dem RF-Verarbeitungsteilsystem 214 und/oder von den Signalen von den Satelliten bereitgestellt wird. Es kann zweckmäßig sein, den Taktfehler der Echtzeituhr 428 so zu modellieren, daß die verstrichene Zeit, während der die nicht vorhersagbaren Änderungen in der Echtzeituhr 428 auftreten, bestimmt werden kann. Diese Modellierung kann a priori durch Schätzen oder gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung dadurch erreicht werden, daß kontinuierlich während des Betriebs bestimmt wird, so daß die volle Genauigkeit der Echtzeituhr 428 verwendet wird.
- Wenn bestimmt wird, daß die Echtzeituhr 428 auf eine vorhersagbare Art und Weise driftet, kann die Echtzeituhr 428 von dem digitalen Abschnitt 430 regelmäßig aktualisiert werden, um den Drift auszugleichen. Die Zeitspanne zwischen dem Aktualisieren kann dann verlängert werden, so daß der nicht vorhersagbare (und somit nicht modellierbare) Fehler nie einen vorbestimmten Betrag, beispielsweise eine halbe Millisekunde, überschreitet. Das heißt, wenn der maximal erlaubte derart Fehler ausgewählt wird, daß er eine halbe Millisekunde beträgt, dann hängt die bestimmte Zeitspanne für die maximale Auszeit davon ab, wie lange die Uhr benötigt, um eine halbe Millisekunde in einer nicht vorhersagbaren Art und Weise zu driften.
- Im Ruhe-Modus bewirkt die CPU 101 am Ende der Aus-Zeit, daß das RF-Verarbeitungsteilsystem 214 und der ASIC GSP1 202 erneut mit Strom versorgt werden. Das RF-Verarbeitungsteilsystem 214 versucht, die Verfolgung eines ausgewählten Satelliten fortzusetzen und/oder einen Satelliten neu zu erfassen. Der ausgewählte Satellit kann zweckmäßigerweise der Satellit mit dem stärksten oder auf andere Weise nützlichstem Signal sein, wie es in der vorhergehenden "An"-Zeit bestimmt wird. Die "Aus"-Zeit wurde so ausgewählt, daß die Signale von dem ausgewählten Satelliten innerhalb einer bekannten Zeitverschiebung liegen und somit ohne weiteres erneut erfaßt werden.
- Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung können ungefähr 240 Korrelationen während jeder Millisekunde durchgeführt, akkumuliert und beendet werden, das heißt, während jeder Wiederholung des C/A-Codes. Diese 240 Korrelationen stellen jeweils eine halbe Chip-Zeit dar. Wenn der Taktfehler weniger als ungefähr plus oder minus 60 Chips darstellt, wobei die in der Größenordnung von plus oder minus 10 Meilen im Pseudo Range liegen kann, findet die Verfolgung während der ersten Millisekunde statt. Das heißt, daß nützliche Daten sofort aufgefangen werden. Wenn der Taktfehler innerhalb plus oder minus 120 Chip-Hälften liegt, wird insbesondere eine der 240 Korrelationen tatsächlich die augenblickliche Korrelation sein. An dem Ende der ersten Millisekunde können die Daten aus der augenblicklichen Korrelation in der normalen Weise verwendet werden, um den ausgewählten Satelliten zu verfolgen und dadurch den Taktfehler zu bestimmen. Somit kann am Ende der ersten Millisekunde der Taktbeibehaltungsoperation der Taktfehler korrigiert werden und der Pseudo Range an dem "besten" oder ausgewählten Satelliten neu bestimmt werden.
- Während der nächsten und nachfolgenden 1-ms-Zeitspannen kann die normale Verfolgung aller oder mindestens der meisten der anderen Satelliten, die sichtbar bleiben, wieder aufgenommen werden, da der Fehler in der Echtzeituhr 428 korrigiert wurde.
- Auf diese Art und Weise wird die Taktbeibehaltung automatisch mindestens so häufig durchgeführt, wie es durch den tatsächlichen Takt-Drift erforderlich ist, so daß die Betriebszeitdauer, die erforderlich ist, um die Verfolgung wieder aufzunehmen, gesteuert werden kann. Die Dauer der "Aus"-Zeit kann allgemein als eine Funktion der Qualität der Echtzeituhr 428 gesteuert werden. Für jede vorgegebene Höhe des Taktfehlers kann die Energiemenge, die für die Wiederaufnahme der Verfolgung erforderlich ist, teilweise durch die Anzahl verwendeter Korrelationen gesteuert werden. Wenn mehr Korrelationen verwendet werden, wird mehr Energie verbraucht, wobei jedoch längere "Aus"-Zeiten verwendet werden können.
- Bei der gegenwärtig bevorzugten Ausführungsform wurde bestimmt, daß eine Aus-Zeit von 50 Sekunden mit einem zweckmäßigen Qualitätsniveau des Taktkristalls für die Echtzeituhr 428 geeignet sein würde. Die genaue Dauer der Aus-Zeit kann mit Hilfe einer Taktfehlermodellierung während des Aktionsbetriebs des Empfängers bestimmt werden, wie es oben bemerkt ist. Am Ende der "Aus"-Zeit von 50 Sekunden wird das GPS-Empfängersystem 200 eingeschaltet und kann die Verfolgung zumindest des ersten Satelliten sofort während der ersten Millisekunde aufnehmen und dann von allen verfügbaren Satelliten. Wenn das GPS-Empfängersystem 200 bedingt durch die Notwendigkeit der Beibehaltung der Taktgenauigkeit eingeschaltet wurde, ist kein weiteres Verfolgen erforderlich, und der "Aus"- oder Batterie-Energiesparstatus kann wieder aufgenommen werden, sobald wie der Taktfehler durch Verfolgen des ersten Satelliten korrigiert ist.
- Wenn die Satellitenverfolgung des ausgewählten Satelliten nicht während der ersten Millisekunde für die Beibehaltung der Taktgenauigkeit wieder aufgenommen wird, wird die Gesamtzeit, die erforderlich ist, um den besten Satelliten neu zu erfassen, üblicherweise weniger als 9 Millisekunden betragen, da alle 1023 möglichen Verzögerungstheorien mit ungefähr 9 Durchläufen bei 240 Verzögerungen pro Durchlauf getestet werden können.
- Wenn zusätzlich zu der Taktfehler-Beibehaltung eine Navigationslösung erforderlich ist, kann der Normalbetrieb des GPS-Empfängersystems 200 solange, wie es erforderlich ist, nach einem Taktbeibehaltungsvorgang fortgesetzt werden, um die Navigationslösung zu beenden.
- Im Betrieb kann nach einer normalen Satellitenverfolgung der Push-to-fix-Betrieb eingerichtet werden, und der Empfänger wird in den Ruhe-Modus für die von dem Taktfehlermodell bestimmte Zeitspanne eintreten, um es der Uhr zu erlauben, innerhalb eines festen Betrags, beispielsweise einer halben Millisekunde, genau zu bleiben. Am Ende der so bestimmten Ruhe-Modus-Zeitspanne findet das Taktbeibehalten statt, wobei der Empfänger lange genug aufwacht, um die Echtzeituhr 428 zu korrigieren. Danach wird der Ruhe-Modus wieder aufgenommen.
- Bei Empfang einer Push-to-fix-Anforderung für eine Navigationslösung wird ein Taktbeibehaltungsvorgang durchgeführt, um die Echtzeituhr 428 zu korrigieren, und dann wird die normale Verfolgung für alle verfolgten Satelliten wieder aufgenommen. Die Navigationslösung kann dann in normaler Weise bestimmt und der Ruhe-Modus wieder aufgenommen werden.
- Bei dem kontinuierlichen Betriebsmodus mit verringerter Energie, wird der Ruhe-Modus periodisch, beispielsweise alle 800 Millisekunden in jeder Sekunde, in Anspruch genommen. Der modellierte Takt-Drift ist am Ende des Ruhe-Modus ausreichend klein, so daß die normale Verfolgung automatisch wieder aufgenommen werden kann. Während der nächsten 200 Millisekunden wird die Satellitenverfolgung dann wieder aufgenommen, Taktkorrekturen werden durchgeführt und die Navigationslösung wird bestimmt.
- Während der nächsten nachfolgenden Sekunden wird der 800 Millisekunden Ruhe-Modus weiterhin mit einem 200 Millisekunden Verfolgungsmodus abgewechselt, wodurch die Energieanforderungen für den scheinbar normalen, ununterbrochenen Betrieb wesentlich verringert werden. Während der 800 Millisekunden der Schlafperiode bleibt der digitale Abschnitt 430 oder mindestens ein wesentlicher Teil desselben aktiv. Wenn man annimmt, daß die von den RF-, Signalverarbeitungs- und digitalen Verarbeitungsteilsystemen verbrauchte Energie ungefähr gleich hoch ist, liegen die Energieeinsparungen somit in der Größenordnung von ungefähr zwei Drittel von 80% des vollen Betriebs-Energiebudgets, so daß sich ungefähr Einsparungen von etwa der Hälfte ergeben, während die Positionsbestimmung einmal pro Sekunde aktualisiert wird.
- Bei vielen Hand-Held-Anwendungen kann der kontinuierliche Betrieb eine Positionsbestimmung in Zeitintervallen erfordern, die deutlich größer als eine Sekunde sind, beispielsweise 5 Sekunden. Der Betrieb der RF- und Signalverarbeitungsabschnitte für nur etwa 200 ms alle 5 Sekunden ermöglicht einen außerordentlichen Anstieg der Lebensdauer für jeden bestimmten Satz von Batterien.
- Es wird nun auf Fig. 26 Bezug genommen. Diese Betriebsmodi können in einem energiesparenden Empfänger 432 kombiniert werden, der in einem kontinuierlichen Energiesparmodus sowie dem Push-to-fix-Modus arbeitet. Die Vorgänge beginnen, wie es oben beschrieben ist, in dem Dauererfassungsmodus und dann im Verfolgungsmodus, was als Schritt 434 angegeben ist. Bei der bevorzugten Ausführungsform wird eine Push-to-fix- Anfrage 436 durchgeführt. Wenn der Push-to-fix-Betrieb nicht erforderlich ist, wird der Empfänger in einem Ruhe-Modus für eine feste Zeitspanne, wie beispielsweise 800 ms, unter der Führung des Schritts 438 betrieben. Danach wird eine feste Verfolgungszeitspanne, beispielsweise 200 ms, gemäß Schritt 440 durchgeführt. Betriebszyklen sind zwischen den Schritten 438 und 440 bis zum Push-to-fix-Betrieb erforderlich.
- Wenn der Push-to-fix-Betrieb begonnen hat, wird in den Ruhe-Modus 442 eingetreten, bis die Anfrage 444 bestimmt, daß der maximal erlaubte Taktfehler eingetreten ist. Wie es oben bemerkt ist, hängt die Zeitspanne, in der dieser Taktfehler auftritt oder als auftretend modelliert wird, von dem maximal erlaubten Fehler ab, der seinerseits von der Anzahl von pro Einheitszeit verfügbaren Korrelationen sowie der für die Wiederaufnahme oder Reakquisition der Verfolgung erlaubten Zeitdauer abhängt. Bei der gegenwärtig bevorzugten Ausführungsform, die 240 Korrelationen pro Millisekunde verwendet und verlangt, daß der Takt-Drift auf plus oder minus eine halbe Millisekunde begrenzt wird, kann ein Ruhezeitraum von bis zu 50 Sekunden erlaubt sein.
- Wenn der auf dem maximal erlaubten. Taktfehler basierende Ruhezeitraum vorbei ist, wird die Wiederaufnahme der Verfolgung bei Schritt 446 für den ausgewählten Satelliten unter Verwendung einer maximalen Anzahl verfügbarer Korrelatoren begonnen. Wenn eine Einrastung 448 auf das Signal des ausgewählten Satelliten erreicht wurde, wird die Echtzeituhr und/oder das korrigierte Taktmodell gemäß Schritt 450 aktualisiert. Wenn eine Bestimmung (Anfrage 452) erforderlich ist, dann wird die Verfolgung gemäß Schritt 454 für alle Satelliten unter Verwendung der Korrelationen im Zeitmultiplex-Verfahren wieder aufgenommen, wie es oben beschrieben ist. Wenn eine Bestimmung gegenwärtig nicht erforderlich ist, und die Anfrage 436 angibt, daß der Push-to-fix-Modus fortzusetzen ist, nimmt der Empfänger den Ruhe-Modus gemäß Schritt 442 wieder auf, bis ein maximaler Taktfehler erneut auftritt oder als auftretend vorhergesagt wird, beispielsweise nach weiteren 50 Sekunden.
Claims (23)
1. Ein Spreizspektrumempfänger (24) zum Verarbeiten
eines von einer Mehrzahl von GPS-Satelliten (14, 18, 19)
empfangenen (100) Verbunds von Signalen durch Digitalisieren
(104) einer Probe (Sample) der Verbundsignale und separates
Doppler-Verschieben (108) der Probe in jedem einer Mehrzahl
separater Satellitenverfolgungskanäle (38, 40, 42, 44) zum
Verfolgen eines ausgewählten Satelliten und durch
Korrelieren (74) jeder Doppler-verschobenen Probe mit einer Mehrzahl
verschieden verzögerter Versionen (160) von auf die Signale
aus jedem Satelliten angewendeten satellitenspezifischen
Codemodulationen, wobei jede digitalisierte Probe ein aus
sequentiellen Ein-Bit-Abtastwerten des Verbundsignals
gebildeter Mehr-Bit-Wert (122) ist, wobei die Mehr-Bit-Probe in
jeden Satellitenverfolgungskanal gemultiplext und während
des Anlegens an jeden Kanal für einen sich auf diesen Kanal
beziehenden ausgewählten Satelliten Doppler-verschoben wird,
wobei jede Doppler-verschobene Mehr-Bit-Probe in jedem Kanal
an einen digitalen Mehr-Bit-Korrelator (74) zum Korrelieren
mit wenigstens einer Serie verschieden Zeit-verzögerter
Codeduplikate angelegt wird, wobei die Korrelationsprodukte
für jede Mehr-Bit-Probe in jedem Satellitenverfolgungskanal
gespeichert werden in einer Datenzelle (175, 14) bezogen auf
jedes Zeit-verzögerte Codeduplikat während der Wiederholung
wenigstens einer Codemodulationsperiode, um eine Summe zur
Verfügung zu stellen, die sich auf dass Korrelationsprodukt
des Signals aus einem speziellen Satelliten für jede
derartige Zeitverzögerung bezieht, gekennzeichnet durch:
Einfangfensterausdehnungsmittel zum Betreiben des Mehr-
Bit-Korrelators zum Korrelieren jedes sequentiellen Segments
eines Spreizspektrumsignals mit wenigstens zwei Serien
verschieden zeitlich verzögerter Codeduplikate, wobei die
wenigstens zwei Serien verschieden zeitlich verzögerter
Codeduplikate zeitlich verschachtelt sind.
2. Der Empfänger nach Anspruch 1, wobei die Mehr-Bit-
Probe ferner gekennzeichnet ist dadurch:
daß jede Probe eine Serie von 11 sequentiellen
halbcode-chip-breiten Abschnitten des Verbundsignals darstellt.
3. Der Empfänger nach Anspruch 1, ferner gekennzeichnet
dadurch:
daß jede Probe eine Anzahl von Halb-Chip-Breiten
enthält, die proportional dem Primfaktor der Anzahl der Chip-
Breiten in jeder Codeperiode ist.
4. Der Empfänger nach Anspruch 3 zur Verwendung mit
C/Acodierten GPS-Signalen, ferner gekennzeichnet dadurch:
daß die Anzahl der Chip-Breiten proportional einer Zahl
ist, die unter 3, 11 und 31 ausgewählt ist.
5. Der Empfänger nach Anspruch 1, ferner gekennzeichnet
dadurch:
daß Akquisitions/Verfolgungs/Reakquisitions-Modus-
Steuermittel selektiv den Empfänger so betreiben, daß eine
Mehrzahl von codequellenspezifischer Serien von
zeitverzögerten Duplikaten für wenigstens eine Codeperiode verwendet
werden, die sich in einem Akquisitionsmodus auf dieselbe
Codequelle beziehen und die sich in einem
Verfolgungs/Reakquisitions-Modus auf eine Mehrzahl verschiedener Codequellen
beziehen.
6. Der Empfänger nach Anspruch 5, wobei die
Akquisitions/Verfolgungs/Reakquisitions-Modus-Steuermittel ferner
gekennzeichnet sind durch:
Mittel zum selektiven Betreiben des Empfängers derart,
daß er in dem Verfolgungs/Reakquisitions-Modus eine Mehrzahl
von codequellenspezifischen zeitlich verzögerten Duplikaten
verwendet, die sich auf jede der verschiedenen Codequellen
beziehen.
7. Der Empfänger nach Anspruch 1, wobei die
Codeduplikate in den verschachtelten Sätzen durch Zeitverzögerungen
getrennt sind, die geringer sind als die Zeitverzögerungen
innerhalb jedes Satzes.
8. Der Empfänger nach Anspruch 1, wobei jedes zeitlich
verzögerte Duplikat innerhalb einer Serie von anderen
Codeduplikaten in dieser Serie durch eine halbe Code-Chip-Breite
getrennt ist.
9. Der Empfänger nach Anspruch 8, wobei die
Codeduplikate in einer der Serien von den Codeduplikaten in anderen
Serien durch weniger als eine halbe Code-Chip-Breite
getrennt sind.
10. Der Empfänger nach Anspruch 9, wobei die
Codeduplikate in einer der Serien von den Codeduplikaten in anderen
Serien durch eine Viertel-Code-Chip-Breite getrennt sind.
11. Der Empfänger nach Anspruch 1, ferner gekennzeichnet
dadurch:
daß eine erste Mehr-Bit-Probe in jeden der
Satellitenverfolgungskanäle gemultiplext wird, während eine
sequentiell nachfolgende Mehr-Bit-Probe aus den von den Satelliten
empfangenen Verbundsignalen aufgefangen wird.
12. Der Empfänger nach Anspruch 6, ferner gekennzeichnet
dadurch:
daß jedes Mehr-Chip-Segment in einem
satellitenspezifischen Satz von Mehr-Chip-Duplikaten gegenüber dem
vorhergehenden Mehr-Chip-Segment um eine partielle Code-Chip-Breite
differiert.
13. Der Empfänger nach Anspruch 12, wobei der
Codegenerator mit dem Mehr-Bit-Korrelator synchronisiert ist, um ein
Mehr-Chip-Korrelationsprodukt bei der Erzeugung jedes Mehr-
Chip-Segments zu bilden.
14. Der Empfänger nach Anspruch 1, wobei die Serie von
zeitverzögerten Codeduplikaten ferner umfaßt:
eine Serie von sequentiell zeitlich verzögerten
Codeduplikaten, die ein Verfolgungszeitfenster abdecken, das
ausreicht, um eine augenblickliche Zeitverzögerung von einem
ausgewählten Codesender zu verfolgen; und
zusätzliche zeitlich verzögerte Codeduplikate, die ein
Wiedereinfangzeitfenster abdecken, das von dem
Verfolgungsfenster getrennt ist.
15. Der Empfänger nach Anspruch 14, wobei das
Wiedereinfangfenster ausreichend groß ist, um ein augenblickliches
Zeitverzögerungskorrelationsprodukt für jeden Code nach
vorhersagbaren Perioden eines Verdeckens des Codesenders
während des normalen Betriebs des Empfängers einzuschließen.
16. Der Empfänger nach Anspruch 15, wobei das
Einfangfenster ausreichend groß ist, um ein augenblickliches
Zeitverzögerungskorrelationsprodukt nach Perioden der
Codesenderverdeckung während des Betriebs des Empfängers in einem
Fahrzeug in einer Stadtumgebung einzuschließen.
17. Der Empfänger nach Anspruch 1, ferner aufweisend:
Verfolgungsmittel zum Auswählen einer Zeitverzögerung,
die keiner der Zeitverzögerungen der Duplikate gleich ist,
als augenblickliche Verzögerung.
18. Der Empfänger nach Anspruch 17, wobei die
Verfolgungsmittel ferner aufweisen:
Mittel, die bewirken, daß die Korrelationsprodukte von
zwei der zeitverzögerten Duplikate gleich sind; und
Mittel zum Auswählen der augenblicklichen Verzögerung in
Abhängigkeit von dem Verhältnis der Amplitude der gleichen
Korrelationsprodukte zu einem Korrelationsprodukt, das eine
dazwischen liegende Zeitverzögerung aufweist.
19. Der Empfänger nach Anspruch 18, wobei die gleichen
Korrelationsprodukte um eine fest vorgegebene
Zeitverzögerung beabstandet sind.
20. Der Empfänger nach Anspruch 19, wobei die fest
vorgegebene Zeitverzögerung eine Chip-Breite ist.
21. Der Empfänger nach Anspruch 18, wobei die
augenblickliche Zeitverzögerung so ausgewählt ist, daß sie
geringer ist als die Hälfte der Zeit zwischen den
Zeitverzögerungen der gleichen Korrelationsprodukte, sofern das Verhältnis
der Amplituden der gleichen Korrelationsprodukte zu einem
Korrelationsprodukt, das eine Zeitverzögerung aufweist, die
der Hälfte zwischen den Zeitverzögerungen der gleichen
Korrelationsprodukte entspricht, größer als Eins ist.
22. Der Empfänger nach Anspruch 18, wobei die
augenblickliche Verzögerung so ausgewählt ist, daß sie mehr als
die Hälfte der Zeit zwischen den Zeitverzögerungen der
gleichen Korrelationsprodukte ist, sofern das Verhältnis der
Amplituden der gleichen Korrelationsprodukte zu einem
Korrelationsprodukt, das eine Zeitverzögerung aufweist, die der
Hälfte des Unterschieds zwischen den Zeitverzögerungen der
gleichen Korrelationsprodukte entspricht, kleiner als Eins
ist.
23. Der Empfänger nach Anspruch 1, ferner aufweisend:
Abtastmittel zum Bilden digitalisierter Proben der aus
den Codequellen empfangenen Signale bei einer ersten Rate;
digitale Filtermittel zum Bilden der sequentiellen
Segmente aus den digitalisierten Proben bei einer zweiten Rate,
die wesentlich langsamer als die erste Rate ist.
Applications Claiming Priority (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US63745796A | 1996-04-25 | 1996-04-25 | |
| US08/638,021 US5901171A (en) | 1996-03-15 | 1996-04-25 | Triple multiplexing spread spectrum receiver |
| US08/637,537 US6041280A (en) | 1996-03-15 | 1996-04-25 | GPS car navigation system |
| US08/638,882 US5897605A (en) | 1996-03-15 | 1996-04-25 | Spread spectrum receiver with fast signal reacquisition |
| US2426096P | 1996-08-21 | 1996-08-21 | |
| US2630496P | 1996-09-16 | 1996-09-16 | |
| US4286897P | 1997-03-28 | 1997-03-28 | |
| PCT/US1997/006946 WO1997040398A2 (en) | 1996-04-25 | 1997-04-25 | Spread spectrum receiver with multi-bit correlator |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69714581D1 DE69714581D1 (de) | 2002-09-12 |
| DE69714581T2 true DE69714581T2 (de) | 2003-04-17 |
Family
ID=27567684
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69714581T Expired - Lifetime DE69714581T2 (de) | 1996-04-25 | 1997-04-25 | Spreizspektrumempfänger mit multibitkorrelation |
Country Status (9)
| Country | Link |
|---|---|
| EP (1) | EP0895599B1 (de) |
| JP (1) | JP3548853B2 (de) |
| KR (1) | KR100459834B1 (de) |
| CN (1) | CN1160578C (de) |
| AT (1) | ATE222000T1 (de) |
| AU (1) | AU729697B2 (de) |
| CA (1) | CA2252903A1 (de) |
| DE (1) | DE69714581T2 (de) |
| WO (1) | WO1997040398A2 (de) |
Families Citing this family (78)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1997014055A1 (en) * | 1995-10-09 | 1997-04-17 | Snaptrack, Inc. | Method and apparatus for determining the location of an object which may have an obstructed view of the sky |
| US6133871A (en) * | 1995-10-09 | 2000-10-17 | Snaptrack, Inc. | GPS receiver having power management |
| EP0855041B1 (de) * | 1995-10-09 | 2002-12-18 | Snaptrack, Inc. | Gps-empfänger und verfahren zur verarbeitung von gps-signalen |
| US5884214A (en) | 1996-09-06 | 1999-03-16 | Snaptrack, Inc. | GPS receiver and method for processing GPS signals |
| US5831574A (en) * | 1996-03-08 | 1998-11-03 | Snaptrack, Inc. | Method and apparatus for determining the location of an object which may have an obstructed view of the sky |
| US6208290B1 (en) | 1996-03-08 | 2001-03-27 | Snaptrack, Inc. | GPS receiver utilizing a communication link |
| US5841396A (en) | 1996-03-08 | 1998-11-24 | Snaptrack, Inc. | GPS receiver utilizing a communication link |
| US6133874A (en) * | 1996-03-08 | 2000-10-17 | Snaptrack, Inc. | Method and apparatus for acquiring satellite positioning system signals |
| US6289041B1 (en) | 1997-02-11 | 2001-09-11 | Snaptrack, Inc. | Fast Acquisition, high sensitivity GPS receiver |
| US6816710B2 (en) | 1998-05-06 | 2004-11-09 | Snaptrack, Inc. | Method and apparatus for signal processing in a satellite positioning system |
| US6208291B1 (en) | 1998-05-29 | 2001-03-27 | Snaptrack, Inc. | Highly parallel GPS correlator system and method |
| US6323805B1 (en) | 1998-09-09 | 2001-11-27 | Qualcomm, Inc. | Data boundary aware base station assisted position location |
| US6331835B1 (en) * | 1999-02-02 | 2001-12-18 | The Charles Stark Draper Laboratory, Inc. | Deeply-integrated adaptive GPS-based navigator with extended-range code tracking |
| US6704348B2 (en) | 2001-05-18 | 2004-03-09 | Global Locate, Inc. | Method and apparatus for computing signal correlation at multiple resolutions |
| JP3488144B2 (ja) * | 1999-08-24 | 2004-01-19 | 松下電器産業株式会社 | 位置通知装置 |
| FR2798794B1 (fr) * | 1999-09-17 | 2001-11-16 | Agence Spatiale Europeenne | Procede de traitement de signaux de navigation a trajets multiples dans un recepteur presentant une pluralite d'antennes |
| JP3884896B2 (ja) * | 2000-04-06 | 2007-02-21 | 株式会社エヌ・ティ・ティ・ドコモ | 通信品質取得装置および通信品質取得方法 |
| EP1152544A1 (de) * | 2000-05-05 | 2001-11-07 | Lucent Technologies Inc. | Ein Zeiteffizienter Echtzeitkorrelator für CDMA-Systeme |
| JP3476009B2 (ja) * | 2000-10-11 | 2003-12-10 | 日本電気株式会社 | Cdma通信システムにおける移動局及びそのフィンガー割り当て方法 |
| JP4485676B2 (ja) * | 2000-11-17 | 2010-06-23 | 日本無線株式会社 | マルチパス信号監視用衛星受信機 |
| US6525687B2 (en) * | 2001-02-12 | 2003-02-25 | Enuvis, Inc. | Location-determination method and apparatus |
| TW567336B (en) * | 2001-05-04 | 2003-12-21 | Asulab Sa | Radio-frequency signal receiver with means for improving the reception dynamic of said signals |
| US7567636B2 (en) | 2001-05-18 | 2009-07-28 | Global Locate, Inc. | Method and apparatus for performing signal correlation using historical correlation data |
| US6891880B2 (en) | 2001-05-18 | 2005-05-10 | Global Locate, Inc. | Method and apparatus for performing signal correlation |
| US7769076B2 (en) | 2001-05-18 | 2010-08-03 | Broadcom Corporation | Method and apparatus for performing frequency synchronization |
| US6819707B2 (en) | 2001-05-18 | 2004-11-16 | Global Locate, Inc. | Method and apparatus for performing signal correlation using historical correlation data |
| US7190712B2 (en) | 2001-05-18 | 2007-03-13 | Global Locate, Inc | Method and apparatus for performing signal correlation |
| CA2387891A1 (en) * | 2001-06-08 | 2002-12-08 | Asulab S.A. | Radiofrequency signal receiver with means for correcting the effects of multipath signals, and method for activating the receiver |
| EP1265371B1 (de) * | 2001-06-08 | 2007-08-22 | Asulab S.A. | Empfänger für Funksignale mit Mitteln zur Korrektur der Mehrwegeffekte und Verfahren |
| US6684157B2 (en) * | 2001-12-06 | 2004-01-27 | Yazaki North America, Inc. | Method and system for interfacing a global positioning system, other navigational equipment and wireless networks with a digital data network |
| EP1454160B1 (de) * | 2001-12-13 | 2009-11-04 | SiRF Technology, Inc. | Schnelle erfassung eines gps-signals |
| GB0130250D0 (en) * | 2001-12-19 | 2002-02-06 | Koninkl Philips Electronics Nv | A method of obtaining a position fix in a gps receiver and a gps receiver for the same |
| US7215280B1 (en) | 2001-12-31 | 2007-05-08 | Rdpa, Llc | Satellite positioning system enabled media exposure |
| US7038619B2 (en) | 2001-12-31 | 2006-05-02 | Rdp Associates, Incorporated | Satellite positioning system enabled media measurement system and method |
| US7095813B2 (en) * | 2002-05-16 | 2006-08-22 | Qualcomm Incorporated | System and method for the detection and compensation of radio signal time of arrival errors |
| US6681181B2 (en) * | 2002-05-20 | 2004-01-20 | Sige Semiconductor Inc. | GPS receiver with improved immunity to burst transmissions |
| US7657230B2 (en) * | 2002-08-29 | 2010-02-02 | Qualcomm Incorporated | Procedure for detecting interfering multi-path condition |
| SE0203047D0 (sv) | 2002-10-15 | 2002-10-15 | Nordnav Technologies Ab | Spread spectrum signal processing |
| US6873910B2 (en) | 2002-10-22 | 2005-03-29 | Qualcomm Incorporated | Procedure for searching for position determination signals using a plurality of search modes |
| GB0320993D0 (en) * | 2003-09-09 | 2003-10-08 | Koninkl Philips Electronics Nv | A method of acquiring a received spread spectrum signal |
| GB0322685D0 (en) * | 2003-09-27 | 2003-10-29 | Koninkl Philips Electronics Nv | Method of position determination |
| CN100351642C (zh) * | 2003-12-11 | 2007-11-28 | 旺玖科技股份有限公司 | 展频接收机的相关器 |
| US8023882B2 (en) | 2004-01-14 | 2011-09-20 | The Nielsen Company (Us), Llc. | Portable audience measurement architectures and methods for portable audience measurement |
| US7212155B2 (en) * | 2004-05-07 | 2007-05-01 | Navcom Technology, Inc. | GPS navigation using successive differences of carrier-phase measurements |
| US7453925B2 (en) * | 2004-10-18 | 2008-11-18 | Navcom Technology, Inc. | Phase multi-path mitigation |
| EP1964275A4 (de) * | 2005-12-23 | 2012-03-28 | Nokia Corp | Durchführen eines korrelationsempfangs eines spreizspektrumsignals |
| MX2007015979A (es) | 2006-03-31 | 2009-04-07 | Nielsen Media Res Inc | Metodos, sistemas y aparato para medicion de multiples fines. |
| US7474260B2 (en) * | 2006-04-19 | 2009-01-06 | Media Tek Inc. | Adjustable time-division multiplexing receiver for receiving satellite signal and method for the same |
| CN1869730B (zh) * | 2006-06-26 | 2010-07-14 | 威盛电子股份有限公司 | 全球定位系统信号接收器及其搜寻与捕获方法 |
| CN1888931B (zh) * | 2006-08-03 | 2010-05-12 | 上海交通大学 | 基于gps的双星定位导航方法 |
| CN1916658B (zh) * | 2006-08-30 | 2010-05-12 | 威盛电子股份有限公司 | 全球定位系统信号接收器及其搜寻方法 |
| CN1971304B (zh) * | 2006-11-24 | 2010-05-19 | 浙江大学 | 用于高动态卫星导航接收机基带信号处理的方法及装置 |
| US8059699B2 (en) * | 2007-05-11 | 2011-11-15 | Mediatek Inc. | Low power consumption GNSS receiver and method thereof |
| KR101164749B1 (ko) * | 2007-11-15 | 2012-07-12 | 콸콤 인코포레이티드 | Gnss 수신기와 신호 추적 회로 및 시스템 |
| JP2011505558A (ja) * | 2007-11-30 | 2011-02-24 | ザ・ボーイング・カンパニー | ナビゲーション信号反射器の位置決定を有するユーザ装置ナビゲーション解法 |
| CN103033830A (zh) * | 2011-09-30 | 2013-04-10 | 安凯(广州)微电子技术有限公司 | 一种gps接收机功耗控制装置和gps接收机 |
| CN102608631B (zh) * | 2011-10-28 | 2014-09-03 | 北京航空航天大学 | 基于模糊逻辑的自适应强跟踪ukf定位滤波算法 |
| US10088316B2 (en) | 2012-11-28 | 2018-10-02 | Toyota Motor Engineering & Manufacturing North America, Inc. | Navigation systems and vehicles for predicting routes |
| US9291717B2 (en) * | 2013-05-09 | 2016-03-22 | Samsung Electronics Co., Ltd. | Method and apparatus for efficiently combining satellite navigation signals |
| CN103441777B (zh) * | 2013-08-30 | 2015-09-09 | 上海航天测控通信研究所 | 一种星载扩频接收机及其提高载波捕获精度的方法 |
| GB201400729D0 (en) | 2014-01-16 | 2014-03-05 | Qinetiq Ltd | A processor for a radio receiver |
| US9189839B1 (en) | 2014-04-24 | 2015-11-17 | Google Inc. | Automatically generating panorama tours |
| US9002647B1 (en) * | 2014-06-27 | 2015-04-07 | Google Inc. | Generating turn-by-turn direction previews |
| WO2016027727A1 (ja) * | 2014-08-20 | 2016-02-25 | ソニー株式会社 | 全地球航法衛星システムの受信装置および受信方法、並びにプログラム |
| US9551588B2 (en) | 2014-08-29 | 2017-01-24 | The Nielsen Company, LLC | Methods and systems to determine consumer locations based on navigational voice cues |
| CN105044738A (zh) * | 2015-07-09 | 2015-11-11 | 中国民用航空飞行学院 | 一种接收机自主完好性监视的预测方法及预测系统 |
| CN109564293B (zh) * | 2016-07-22 | 2023-09-08 | 瑞士优北罗股份有限公司 | 用于全球导航卫星系统(gnss)信号跟踪的装置和方法 |
| CN106325269B (zh) * | 2016-08-05 | 2019-06-11 | 上海电力学院 | 基于里程计和磁传感器的两轮平衡车路径校正装置及方法 |
| CN106292660B (zh) * | 2016-08-05 | 2019-06-11 | 上海电力学院 | 基于里程计和灰度传感器的平衡车路径校正装置及方法 |
| GB2566731A (en) * | 2017-09-25 | 2019-03-27 | Focal Point Positioning Ltd | System for determining a physical metric such as position |
| CN109298435B (zh) * | 2017-11-02 | 2023-05-23 | 天津讯联科技有限公司 | 卫星反射信号的跟踪方法、装置及接收机 |
| KR102389035B1 (ko) * | 2017-12-06 | 2022-04-22 | 한국전자통신연구원 | 압축 데이터 송수신 방법 및 이를 위한 장치 |
| CN109916429B (zh) * | 2018-11-23 | 2021-10-08 | 深圳市中科金朗产业研究院有限公司 | 一种微机电陀螺仪校准装置、方法及无人机导航系统 |
| CN109507291B (zh) * | 2018-12-26 | 2021-08-06 | 西安科技大学 | 一种信号预处理方法 |
| CN110247642B (zh) * | 2019-06-13 | 2023-07-11 | 江苏卓胜微电子股份有限公司 | 一种fir滤波方法及滤波器 |
| CN114325773B (zh) * | 2021-12-20 | 2025-05-06 | 上海交通大学 | 基于gps l1信号/l5信号的拓展宽窄相关器 |
| CN117406249B (zh) * | 2023-12-14 | 2024-03-08 | 成都安则优科技有限公司 | 一种反无人机卫星导航设备及数据回放方法 |
| CN119071131B (zh) * | 2024-09-12 | 2025-08-08 | 河南工程学院 | 一种基于双相关算子的极简同步方案 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4807256A (en) * | 1985-12-23 | 1989-02-21 | Texas Instruments Incorporated | Global position system receiver |
| US5177490A (en) * | 1989-12-12 | 1993-01-05 | Pioneer Electronic Corporation | Gps satellite signal tracking system for gps receivers |
| US5390207A (en) * | 1990-11-28 | 1995-02-14 | Novatel Communications Ltd. | Pseudorandom noise ranging receiver which compensates for multipath distortion by dynamically adjusting the time delay spacing between early and late correlators |
| US5347284A (en) * | 1991-02-28 | 1994-09-13 | Texas Instruments Incorporated | System and method for a digital navigation satellite receiver |
| EP0501828B1 (de) * | 1991-02-28 | 2000-01-12 | Texas Instruments Incorporated | Vielkanal- und Suchprozessor für GPS |
| US5245628A (en) * | 1991-03-29 | 1993-09-14 | Texas Instruments Incorporated | Enhanced l1/l2 code channel for global positioning system receivers |
| US5448773A (en) * | 1992-02-05 | 1995-09-05 | Trimble Navigation Limited | Long life portable global position system receiver |
| JP3295454B2 (ja) * | 1992-08-05 | 2002-06-24 | パイオニア株式会社 | Gps受信機の信号処理方法 |
| US5347536A (en) * | 1993-03-17 | 1994-09-13 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Multipath noise reduction for spread spectrum signals |
| US5583513A (en) * | 1993-03-24 | 1996-12-10 | Board Of Trustees Of The Leland Stanford Junior University | System and method for generating precise code based and carrier phase position determinations |
| US5402347A (en) * | 1993-07-22 | 1995-03-28 | Trimble Navigation Limited | Satellite search methods for improving time to first fix in a GPS receiver |
| FR2712095B1 (fr) * | 1993-11-05 | 1995-12-22 | Europ Agence Spatiale | Procédé de mesures altimétriques aériennes ou spatiales, notamment destiné à l'altimétrie des océans, et dispositif mettant en Óoeuvre un tel procédé. |
| JP3106829B2 (ja) * | 1993-12-22 | 2000-11-06 | 松下電器産業株式会社 | Gps受信機の復調回路 |
| US5515283A (en) * | 1994-06-20 | 1996-05-07 | Zexel Corporation | Method for identifying highway access ramps for route calculation in a vehicle navigation system |
-
1997
- 1997-04-25 DE DE69714581T patent/DE69714581T2/de not_active Expired - Lifetime
- 1997-04-25 WO PCT/US1997/006946 patent/WO1997040398A2/en not_active Ceased
- 1997-04-25 AU AU31160/97A patent/AU729697B2/en not_active Ceased
- 1997-04-25 AT AT97926383T patent/ATE222000T1/de not_active IP Right Cessation
- 1997-04-25 CN CNB971958408A patent/CN1160578C/zh not_active Expired - Lifetime
- 1997-04-25 CA CA002252903A patent/CA2252903A1/en not_active Abandoned
- 1997-04-25 KR KR10-1998-0708604A patent/KR100459834B1/ko not_active Expired - Fee Related
- 1997-04-25 EP EP97926383A patent/EP0895599B1/de not_active Expired - Lifetime
- 1997-04-25 JP JP53835297A patent/JP3548853B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP3548853B2 (ja) | 2004-07-28 |
| KR100459834B1 (ko) | 2005-01-31 |
| CA2252903A1 (en) | 1997-10-30 |
| ATE222000T1 (de) | 2002-08-15 |
| AU729697B2 (en) | 2001-02-08 |
| KR20000010646A (ko) | 2000-02-25 |
| WO1997040398A2 (en) | 1997-10-30 |
| WO1997040398A3 (en) | 1998-02-26 |
| EP0895599A2 (de) | 1999-02-10 |
| EP0895599B1 (de) | 2002-08-07 |
| DE69714581D1 (de) | 2002-09-12 |
| AU3116097A (en) | 1997-11-12 |
| CN1160578C (zh) | 2004-08-04 |
| JP2002500751A (ja) | 2002-01-08 |
| CN1223723A (zh) | 1999-07-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69714581T2 (de) | Spreizspektrumempfänger mit multibitkorrelation | |
| US6249542B1 (en) | Multipath processing for GPS receivers | |
| US6748015B2 (en) | Spread spectrum receiver with multi-bit correlator | |
| DE69231376T2 (de) | Folgesystem mit GPS | |
| US7295633B2 (en) | Triple multiplexing spread spectrum receiver | |
| US5897605A (en) | Spread spectrum receiver with fast signal reacquisition | |
| US6041280A (en) | GPS car navigation system | |
| US6047017A (en) | Spread spectrum receiver with multi-path cancellation | |
| US6198765B1 (en) | Spread spectrum receiver with multi-path correction | |
| US6917644B2 (en) | Spread spectrum receiver with multi-path correction | |
| US6240367B1 (en) | Full fusion positioning method for vehicle | |
| DE69731200T2 (de) | Erfassung in einem gps-empfänger | |
| US6018704A (en) | GPS receiver | |
| DE102013003265A1 (de) | Verfahren und vorrichtung zur synchronisation und genauen zeitberechnung für gnss-empfänger | |
| US20060015250A1 (en) | GPS navigation with integrated phase track filter | |
| EP1209483A2 (de) | Spreizspektrumempfänger mit Tibitkorrelator | |
| EP1271102B1 (de) | Spreizspektrumempfänger mit Multibitkorrelation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8328 | Change in the person/name/address of the agent |
Representative=s name: KRAMER - BARSKE - SCHMIDTCHEN, 81245 MUENCHEN |
|
| 8327 | Change in the person/name/address of the patent owner |
Owner name: SIRF TECHNOLOGY, INC., SAN JOSE, CALIF., US |