DE60130643T2 - Sender-Empfänger für CDMA-Kommunikation mit Driftkorrektur einer Chipzählvorrichtung - Google Patents

Sender-Empfänger für CDMA-Kommunikation mit Driftkorrektur einer Chipzählvorrichtung Download PDF

Info

Publication number
DE60130643T2
DE60130643T2 DE60130643T DE60130643T DE60130643T2 DE 60130643 T2 DE60130643 T2 DE 60130643T2 DE 60130643 T DE60130643 T DE 60130643T DE 60130643 T DE60130643 T DE 60130643T DE 60130643 T2 DE60130643 T2 DE 60130643T2
Authority
DE
Germany
Prior art keywords
count
time
counter
code counter
receiver
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
Application number
DE60130643T
Other languages
English (en)
Other versions
DE60130643D1 (de
Inventor
Pierre Residence Au Bertrand
Sundararajan Sriram
Eric Biscondi
Francis A. Houston Honore
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of DE60130643D1 publication Critical patent/DE60130643D1/de
Application granted granted Critical
Publication of DE60130643T2 publication Critical patent/DE60130643T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details 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/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • H04B1/7073Synchronisation aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70715Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation with application-specific features

Description

  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf das Gebiet der drahtlosen Kommunikationssysteme und insbesondere auf einen drahtlosen Sender/Empfänger, der die Signaloperationen teilweise in Reaktion auf vom Satellitennavigationssystem empfangene Taktsignale ausführt.
  • BESCHREIBUNG DES STANDES TECHNIK
  • Die drahtlose Kommunikation ist in geschäftlichen, persönlichen und anderen Anwendungen vorherrschend geworden, wobei im Ergebnis dessen die Technologie für derartige Kommunikation in verschiedenen Bereichen fortgesetzt Fortschritte macht. Ein derartiger Fortschritt umfasst die Verwendung von Streuspektrum-Übermittlungen, einschließlich jener des Codemultiplex-Vielfachzugriffs ("CDMA"). Bei derartigen Übermittlungen kommuniziert eine Anwenderstation (z. B. ein tragbares Zellulartelephon) mit einer Basisstation, wobei die Basisstation typischerweise einer "Zelle" entspricht. Die CDMA-Systeme sind durch die gleichzeitige Übertragung verschiedener Datensignale über einen gemeinsamen Kanal charakterisiert, bei der jedem Signal ein eindeutiger Code zugewiesen ist. Dieser eindeutige Code entspricht einem Code einer ausgewählten Anwenderstation innerhalb der Zelle, um den richtigen Empfänger eines Datensignals zu bestimmen.
  • Der CDMA macht zusammen mit entsprechenden Standards, die einen CDMA der dritten Generation hervorgebracht haben, der als 3G-Mobilfunk bezeichnet wird, fortgesetzt Fortschritte. Der 3G-Mobilfunk enthält zwei Standards, nämlich den IS2000, der Qualcomm-gestützt ist und den IS95 in einer Betriebsart unterstützt, und einen Breitband-CDMA, der außerdem als WCDMA bezeichnet wird und einen 3GPP-Standard besitzt. Die unter diesen Standards ausgeführten Übermittlungen erfordern einen Zeitbezug, um die Codierung und die synchronisierte Decodierung der Übermittlungen zu unterstützen. Eine Ebene einer derartigen Codierung ist z. B. die Verwendung einer Signalspreizung, wie z. B. die Verwendung eines Walsh-Codes. Als ein weiteres Beispiel können die CDMA-Übermittlungen durch die Verwendung sowohl eines Langcodes als auch eines Kurzcodes codiert werden. Um die Übermittlungen für die Übertragung richtig zu codieren, müssen die Kurz- und Langcodes mit irgendeiner Bezugszeit richtig synchronisiert sein. Außerdem synchronisiert die Anwenderstation, wenn diese Übermittlungen durch eine Anwenderstation empfangen werden, ihren Betrieb in Bezug auf den Kurz- und Langcode der sendenden Basisstation, wobei sich folglich die Anwenderstation außerdem notwendigerweise auf die richtige Synchronisation der Basisstation in Bezug auf ihren Kurz- und Langcode stützt.
  • In Anbetracht des Bedarfs an einem Zeitbezug und beispielhaft im Fall des IS2000 enthält eine Basisstation des aktuellen Standes der Technik einen Globalpositions-Empfänger, der seinen Zeitbezug in Reaktion auf die Signale vom bekannten Satellitennavigationssystem ("GPS-System") erhält. Es ist allgemein bekannt, dass das GPS-System geographische Positionierungsinformationen sendet, aber derartige Informationen werden im vorliegenden Kontext nicht verwendet; statt dessen ist außerdem bekannt, dass das GPS-System entsprechend einer Atomuhr jede Sekunde einen periodischen Impuls zusammen mit einer Zeitnachricht ausgibt. Beim CDMA verwendet eine Basisstation des Standes der Technik sowohl den GPS-Impuls als auch die entsprechende Zeitnachricht. Die Zeitnachricht wird verwendet, um einen Wert in einem Chip-Zählstand-Register zu initialisieren, während die Frequenz des Impulses einen Bezug in einen Lokaloszillator im Empfänger bereitstellt. Spezifisch enthält der Oszillator einen Phasenregelkreis ("PLL"), der seine Frequenz in Reaktion auf die Frequenz des GPS-Impulses verriegelt. Die verriegelte Frequenz wird dann verwendet, um ein lokales Master-Taktsignal zu erzeugen, das durch den Empfänger verwendet wird, um das Chip-Zählstand-Register zu inkrementieren. Sobald das Chip-Zählstand-Register einen Wert in Reaktion auf die Zeitnachricht speichert, wird folglich der Zählstand dann durch den lokalen PLL-Oszillator inkrementiert.
  • Während gezeigt worden ist, dass der oben beschriebene Stand der Technik eine arbeitsfähige Basisstation schafft, um die Basisstation zu synchronisieren und dadurch synchronisierte Übertragungen zu unterstützen, haben die Erfinder der vorliegenden Erfindung beobachtet, dass ein derartiger Zugang außerdem verschiedene Einschränkungen und Nachteile schafft. Weil z. B. der Master-Takt über einen PLL mit der GPS-Taktung verriegelt ist, wird in die Taktsignale ein unerwünschtes Phasenrauschen eingeführt, das in einem PLL-Aufbau inhärent ist. Als ein weiterer Nachteil erfordert die Verringerung eines derartigen Rauschens einen hochentwickelten PLL, der deshalb relativ komplex zu implementieren ist und die Kosten vergrößert, wobei die Vergrößerung der Kosten bei dem fortwährenden Fortschritt des konkurrenzbetonten Marktes für Zellularvorrichtungen selbst im hohen Grade unerwünscht ist und in der Tat manchmal unannehmbar ist. Als ein weiterer Nachteil wird das Master-Taktsignal vom vorhergehenden Zugang verwendet, um verschiedene Vorrichtungen zu takten, wie es von einem Master-Signal erwartet würde, während tatsächlich nur bestimmte Empfangs- und Sendefunktionen die Synchronisation erfordern, wie z. B. um Korrelationsoperationen auszuführen. Als ein Master-Taktsignal beeinflusst das PLL-induzierte Rauschen in diesem Master-Taktsignal jedoch außerdem andere Schaltungen in dem Empfänger, wobei diese beeinflussten Schaltungen deshalb in der Tat oft Taktphasenkorrekturen erfordern. Noch weitere Nachteile und Einschränkungen können durch einen Fachmann auf dem Gebiet bemerkt werden.
  • Im Hinblick auf das Obige ergibt sich ein Bedarf, einen Zugang für einen verbesserten drahtlosen Sender/Empfänger zu schaffen, der mit einem System- oder einem anderen universellen Zeitsignal synchron arbeitet, wie er durch die im Folgenden erörterten bevorzugten Ausführungsformen erreicht wird.
  • Die vorliegende Erfindung schafft Vorrichtungen und Verfahren gemäß den Ansprüchen.
  • In einer bevorzugten Ausführungsform gibt es ein drahtloses Kommunikationssystem. Das System umfasst einen Sender/Empfänger, wobei der Sender/Empfänger einen Codezähler und einen Taktoszillator umfasst, um einen Zählstand im Codezähler voreilen zu lassen. Der Sender/Empfänger umfasst ferner eine Schaltungsanordnung zum Empfangen einer Zeitnachricht auf der Grundlage einer Systemzeit außerhalb des Sender/Empfängers und eine Schaltungsanordnung zum Bestimmen eines Systemzeit-Zählstandes und zum Speichern des Systemzeit-Zählstandes im Codezähler in Reaktion auf die Zeitnachricht. Ferner eilt der Codezähler fortgesetzt vom Systemzeit-Zählstand in Reaktion auf den Taktoszillator vor. Der Sender/Empfänger umfasst ferner eine Schaltungsanordnung zum wiederholten Bewerten des Zählstandes im Code zähler nach dem Voreilenlassen vom Systemzeit-Zählstand, um zu ermitteln, ob der Zählstand zu einem ungenauen Zählstand abgedriftet ist. Schließlich umfasst der Sender/Empfänger ferner eine Schaltungsanordnung zum Einstellen des ungenauen Zählstandes auf einen wahrgenommenen genauen Zählstand in Reaktion auf das Erfassen eines ungenauen Zählstandes. Andere Schaltungen, Systeme und Verfahren sind außerdem offenbart und beansprucht.
  • KURZBESCHREIBUNG DER MEHREREN ANSICHTEN DER ZEICHNUNG
  • Bevorzugte und beispielhafte Ausführungsformen der vorliegenden Erfindung werden nun lediglich beispielhaft unter Bezugnahme auf die Figuren der beigefügten Zeichnung weiter beschrieben, worin:
  • 1 eine graphische Darstellung eines Zellularkommunikationssystems durch ein heutiges Codemultiplex-Vielfachzugriff-Beispiel ("CDMA"-Beispiel) veranschaulicht, in dem die bevorzugten Ausführungsformen arbeiten;
  • 2 einen elektrischen Blockschaltplan einer Basisstations-Konfiguration gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung veranschaulicht, die in irgendeiner der Basisstationen BST1 und BST2 in 1 verwendet werden kann;
  • 3 einen Ablaufplan eines Verfahrens des bevorzugten Betriebs der verschiedenen Blöcke der Basisstations-Konfiguration 20 nach 2 veranschaulicht;
  • 4 ein allgemeines Ablaufdiagramm veranschaulicht, das beim Systemzeit-Ursprung (d. h. dem 6. Januar 1980) beginnt und Langcode-Zählungen LCC0 bis LCCn und einen während der LCCn genommenen Abtastwert TP umfasst;
  • 5 eine Möglichkeit eines Abtastfehlers veranschaulicht, die sich aus der spezifischen Ankunftszeit eines GPS-Impulses und in Bezug auf den Zählstand im LCSTC-Zähler der bevorzugten Ausführungsform ergibt; und
  • 6 zusätzliche Einzelheiten, die den Langcode-Generator und den Korrelator-Coprozessor nach 2 betreffen, mit besonderer Konzentration auf den Langcode, wie er sowohl im Sendefunktionalitäts-Abschnitt TX als auch im Empfangsfunktionalitäts-Abschnitt RX verwendet wird, veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • 1 veranschaulicht eine graphische Darstellung eines Zellularkommunikationssystems 10 durch ein heutiges Codemultiplex-Vielfachzugriff-Beispiel ("CDMA"-Beispiel), in dem die bevorzugte Ausführungsform der vorliegenden Erfindung arbeitet. Im System 10 sind zwei Basisstationen BST1 und BST2 gezeigt. Jede Basisstation BST1 und BST2 enthält einen entsprechenden Satz von Antennen AT11 bis AT1n und AT21 bis AT2n, durch die jede CDMA-Signale senden oder empfangen kann. Der allgemeine Bereich der vorgesehenen Reichweite jeder Basisstation definiert eine entsprechende Zelle; folglich ist vorgesehen, dass die Basisstation BST1 im Allgemeinen mit den Zellularvorrichtungen in der Zelle 1 kommuniziert, während vorgesehen ist, dass die Basisstation BST2 im Allgemeinen mit den Zellularvorrichtungen in der Zelle 2 kommuniziert. Selbstverständlich ist durch die Konstruktion eine Überlagerung zwischen der Kommunikationsreichweite der Zelle 1 und 2 vorhanden, um eine kontinuierliche Kommunikation zu unterstützen, sollte sich eine Kommunikationsstation von einer Zelle zur anderen bewegen. In der Tat enthält das System 10 weiter in dieser Hinsicht außerdem eine Anwenderstation UST, die im Zusammenhang mit einem Fahrzeug V gezeigt ist, um zu demonstrieren, dass die Anwenderstation UST mobil ist. Außerdem enthält beispielhaft die Anwenderstation UST eine einzige Antenne ATU, um die Zellularübermittlungen sowohl zu senden als auch zu empfangen.
  • In gewisser Hinsicht kann das System 10 entsprechend bekannter allgemeiner Techniken für verschiedene Typen der Zellular- oder anderer Streuspektrum-Übermittlungen, einschließlich der CDMA-Übermittlungen, arbeiten. Derartige allgemeine Techniken sind im Stand der Technik bekannt und enthalten den Beginn eines Anrufs von der Anwenderstation UST und die Abwicklung dieses Anrufs durch irgendeine oder beide der Basisstationen BST1 und BST2. Damit irgendeine Basisstation BST1 oder BST2 einen derartigen Anruf abwickelt, sind verschiedene Signalverarbeitungen eingeschlossen, wie im Stand der Technik bekannt ist. Die Anwenderstation UST überträgt z. B. ein CDMA-Signal zur Basisstation, wo diese CDMA-Übermittlung unter Verwendung eines Streucodes moduliert wird, der sich aus einer Folge binärer Impulse zusammensetzt, wobei jedes Stück des entsprechend diesem Code übertragenen CDMA-Signals als ein "Chip" bezeichnet wird. Außerdem arbeiten in diesem Beispiel die Vorrichtungen im System 10 entsprechend einem gegebenen Protokoll für das System 10, was beispielhaft der IS-2000-Standard sein kann, der bei einer Chip-Rate von 1,2288 MHz arbeitet und durch den die Anwenderstation UST mit einer derartigen Rate mit den Basisstationen BST1 und BST2 kommuniziert.
  • Wie oben bei der Beschreibung des Abschnitts über die verwandte Technik dieses Dokuments erörtert worden ist, enthalten CDMA-Signale außerdem verschiedene Ebenen der Codierung. Im Ergebnis enthält jede Basisstation BST1 und BST2 eine ausreichende Sende-Schaltungsanordnung, um Signale zu anderen Stationen zu senden, wobei diese Signale verschiedene Ebenen der Codierung enthalten, wobei ähnlich jede Basisstation BST1 und BST2 eine ausreichende Empfangs-Schaltungsanordnung enthält, um die Wirkungen dieser Codierung aus den von einer weiteren Station empfangenen Signalen zu entfernen (d. h. das Signal zu decodieren), um die Datensymbole innerhalb der Übermittlung richtig zu identifizieren. Wie außerdem früher eingeführt worden ist, enthalten diese Codes einen Langcode und einen Kurzcode, wobei beide hier erwähnt werden, da sie Relevanz für die bevorzugte Ausführungsform besitzen. In Bezug auf die Kurz- und Langcodes setzt der IS-2000-Standard (wie auch der vorhergehende I-95-Standard) eine anfängliche Startzeit für die Kurz- und Langcodes fest, deren Beginn als Systemzeit-Ursprung, 6. Januar 1980, bezeichnet wird. Es wird angenommen, dass der Kurzcode, der 215 Chips lang ist, und der Langcode, der 242-1 Bits lang ist, zum Systemzeit-Ursprung entstanden sind und sich von diesem Zeitpunkt periodisch wiederholen. Jeder Code wird unter Verwendung eines Zählstandes der gleichen Chip-Länge bestimmt, wobei der Zählstand zu irgendeinem gegebenen Zeitpunkt einen Versatzindex zum entsprechenden Code zu diesem Zeitpunkt bereitstellt. Folglich umfasst der Langcode-Zählstand 242-1 Bits, wobei dieser Zählstand zu irgendeinem Zeitpunkt einen Versatzindex bereitstellt, um den geeigneten 242-1-Langcode zu bestimmen, der zu diesem Zeitpunkt zu verwenden ist, wobei ähnlich der Kurzcode-Zählstand 215 Bits umfasst, die ebenfalls einen Versatzindex für einen entsprechenden Kurzcode auf der Grundlage des Wertes des Kurzcode- Zählstandes zu einem gegebenen Zeitpunkt bereitstellen. In allen Fällen muss, um die verschiedenen Übertragungsoperationen zu einem Zeitpunkt TP und in Bezug auf den Kurzcode und den Langcode auszuführen, dann jede Basisstation bestimmen, wo TP in die Zeit bezüglich der sich wiederholenden Perioden für die Lang- und Kurzcode-Zählstände fällt. Die folgenden zusätzlichen Einzelheiten, die die bevorzugten Ausführungsformen betreffen, sind spezifisch auf die Bereitstellung eines Systems gerichtet, das die verbesserten Aspekte in dieser Hinsicht enthält.
  • 2 veranschaulicht einen elektrischen Blockschaltplan einer Basisstations-Konfiguration 20 gemäß einer bevorzugten Ausführungsform, die in irgendeiner oder beiden der Basisstationen BST1 und BST2 im System 10 verwendet werden kann. Als Einführung stellt die Veranschaulichung des Empfängers 20 nur verschiedene Blöcke dar, um den Kontext und die bevorzugte Implementierung einer Ausführungsform zu demonstrieren, während es für einen Fachmann auf dem Gebiet selbstverständlich sein sollte, dass zahlreiche andere Blöcke und verwandte Funktionalität in der Basisstations-Konfiguration 20 enthalten sein können. Im Allgemeinen enthält die Basisstations-Konfiguration 20 einen funktionalen Abschnitt, der die Sendefunktionalität TX veranschaulicht, und einen weiteren funktionalen Abschnitt, der die Empfangsfunktionalität RX veranschaulicht, aber für einen Fachmann auf dem Gebiet sollte es selbstverständlich sein, dass 2 in erster Linie ein funktionaler Blockschaltplan ist, wobei folglich einige Schaltungen, um bestimmte Funktionen zu implementieren, beiden TX- und RX-Funktionalitäten gemeinsam sein können. Ferner erwähnt in dieser Hinsicht die Erörterung hierin nur bestimmte bevorzugte Schaltungen und Techniken zum Implementieren bestimmter Aspekte der bevorzugten Erfindung, während noch weitere Aspekte in der Basisstations-Konfiguration 20 implementiert sein können.
  • Es wird der Sendefunktionalitäts-Abschnitt TX der Basisstations-Konfiguration 20 betrachtet, wobei er einen Langcode-Generator 22 enthält, der einen Zähler 22c für den Langcode-Systemzeit-Zählstand ("LCSTC"-Zähler) enthält, wobei der Abschnitt TX außerdem einen Kurzcode-Generator 24 enthält, der einen Zähler 24c für die Kurzcode-Systemzeit ("SCSTC"-Zähler) enthält. Wie durch ihre Namen suggeriert wird, gibt der Langcode-Generator 22 den Langcode aus, während der Kurzcode-Generator 24 den Kurzcode ausgibt. Ferner sind sowohl der Langcode-Generator 22 als auch der Kurzcode-Generator 24 so angeschlossen, dass sie insofern in Reaktion auf einen lokalen Taktoszillator 26 arbeiten, als die entsprechenden Zähler im Allgemeinen durch das Taktsignal inkrementiert werden, und obwohl dies nicht erschöpfend gezeigt ist, stellt der lokale Taktoszillator 26 außerdem ein Master-Taktsignal vielem der Schaltungsanordnung der Basisstations-Konfiguration 20 bereit. Hinsichtlich des Langcode-Generators 22 und des Kurzcode-Generators 24 können die durch diese Schaltungen erzeugten Codes außerdem in Reaktion auf Signale von einem digitalen Signalprozessor ("DSP") 28 beeinflusst werden. Außerdem in Bezug auf den DSP 28 und seine potentielle Wirkung auf die Lang- und Kurzcodes empfängt der DSP 28 eine Impuls- und Zeitnachricht von einem Satellitennavigations-Empfänger ("GPS"-Empfänger) 30, wobei der GPS-Empfänger 30 in verschiedenen Formen kommerziell verfügbar ist und seine Ausgabe und seine Wechselwirkung mit anderen Schaltungen im Folgenden weiter ausführlich beschrieben sind. Der DSP 28 ist außerdem bidirektional mit dem Langcode-Generator 22 und dem Kurzcode-Generator 24 verbunden, so dass er die Werte des LCSTC-Zählers 22c und des SCSTC-Zählers 24c während einer Analyse auf der Grundlage aufeinanderfolgender periodischer Werte in diesen Zählern lesen und modifizieren kann, wie außerdem später ausführlich beschrieben ist. In der bevorzugten Ausführungsform ist der DSP 28 aus der Familie der DSP-Vorrichtungen ausgewählt, die von Texas Instruments Incorporated kommerziell verfügbar sind, wobei die bevorzugte Auswahl gegenwärtig der TMS340C642x-DSP ist. Die Codeausgänge des Langcode-Generators 22 und des Kurzcode-Generators 24 sind als ein Eingang mit dem Kombinierer 32 verbunden. Der Ausgang des Kombinierers 32 stellt einen zusammengesetzten Code bereit, der als ein Multiplikandeneingang mit einem Multiplizierer 34 verbunden ist, wobei der Multiplizierer 34 außerdem die DATEN vom DSP 28 als eine Multiplikandeneingabe empfängt. Der Ausgang des Multiplizierers 34 ist als ein Eingang mit einem Impulsformer 36 verbunden, wobei der Ausgang des Impulsformers 36 als ein digitaler Eingang mit dem Digital-Analog-Umsetzer ("D/A"-Umsetzer) 38 verbunden ist. Schließlich ist der analoge Ausgang des Umsetzers 38 mit einer HF-Aufwärtsumsetzer-Schaltung 40 verbunden, deren HF-Ausgang an eine Sendeantenne ATTX gekoppelt ist. Obwohl nur die Sendeantenne ATTX gezeigt ist, sollte es selbstverständlich sein, dass, wie oben in Bezug auf 1 erwähnt worden ist, eine Basisstation und folglich die Basisstations-Konfiguration 20 mehrere Sendeantennen enthalten kann.
  • Der Betrieb des Sendefunktionalitäts-Abschnitts TX der Basisstations-Konfiguration 20 wird nun im Allgemeinen beschrieben, wobei größere Einzelheiten später in Bezug auf bestimmte Aspekte der bevorzugten Ausführungsform dargestellt werden. Vorzugsweise stellt der lokale Taktoszillator 26 ein freilaufendes Taktsignal bereit, d. h., er wird durch keine externe Quelle angesteuert oder verriegelt. Dieses freilaufende Taktsignal ist mit dem Langcode-Generator 22 und dem Kurzcode-Generator 24 (ebenso wie mit anderen Schaltungen, die weder gezeigt noch erörtert sind) verbunden. In Reaktion auf das Taktsignal und außerdem den Modifikationen vom DSP 28 unterworfen, wie später ausführlich beschrieben ist, gibt der Langcode-Generator 22 einen Langcode aus, der entsprechend dem Zählstand im LCSTC-Zähler 22c ausgewählt ist, während der Kurzcode-Generator 24 einen Kurzcode ausgibt, der entsprechend dem Zählstand im SCSTC-Zähler 24c ausgewählt ist. Der Kombinierer 32 kombiniert die Lang- und Kurzcodes entsprechend den im Stand der Technik bekannten Prinzipien, wobei das Produkt der zusammengesetzte Code ist, der als ein Multiplikand mit dem Multiplizierer 34 verbunden ist. Außerdem gibt der DSP 28 digitale DATEN aus, die zu einer weiteren Station zu senden sind, wobei der Multiplizierer 34 diese DATEN mit dem zusammengesetzten Code multipliziert, wobei das Ergebnis dem Impulsformer 36 bereitgestellt wird. Der Impulsformer 36 setzt das digitale Signal in irgendeines von verschiedenen gewünschten Sendeformaten, wie sie im Stand der Technik bekannt sind, wie z. B. ein erhöhtes Kosinus-Signal, um. Schließlich und wie im Stand der Technik bekannt ist, setzt der DIA-Umsetzer 36 das formatierte digitale Signal in eine analoge Form um, wobei der Hochfrequenz-Aufwärtsumsetzer 40 das analoge Signal in ein Hochfrequenzformat umsetzt, das dann über die Sendeantenne ATTX gesendet wird, so dass jene Hochfrequenz-Übermittlungen durch andere Stationen empfangen werden können, wie z. B. durch die in 1 gezeigte Anwenderstation UST.
  • Es wird der Empfangsfunktionalitäts-Abschnitt RX der Basisstations-Konfiguration 20 betrachtet, wobei er eine Empfangsantenne ATRX enthält, obwohl es selbstverständlich sein sollte, dass, wie oben in Bezug auf 1 erwähnt worden ist, eine Basisstation und folglich die Basisstations-Konfiguration 20 mehrere Empfangsantennen enthalten kann. Die Empfangsantenne ATRX empfängt die Signale und verbindet sie mit einem Eingang eines HF-Abwärtsumsetzers 42. Der analoge Ausgang des HF-Abwärtsumsetzers 42 ist als ein Eingang mit einem Analog-Digital-Umsetzer ("A/D"-Umsetzer) 44 verbunden, dessen Ausgang als ein Eingang mit einem Korrelator-Coprozessor 46 verbunden ist. Vorzugsweise ist der Korrelator-Coprozessor 46 als eine anwendungsspezifische integrierte Schaltung ("ASIC") konstruiert, wobei der Korrelator-Coprozessor 46 in allgemeinen in Reaktion auf das durch den lokalen Taktoszillator 26 bereitgestellte Master-Taktsignal in Zyklen arbeitet. Außerdem und aus später ausführlich dargelegten Gründen sind separate Ausgänge mit gestrichelten Linien gezeigt, die von den Code-Generatoren 22 und 24 mit dem Korrelator-Coprozessor 46 verbunden sind, weil er in Reaktion auf die Zählstände in den Zählern 22c und 24c arbeitet, aber in einer Weise, die von der des Sendefunktionalitäts-Abschnitts TX der Konfiguration 20 verschieden ist. Der Korrelator-Coprozessor 46 ist bidirektional mit einem Bus B gekoppelt, der außerdem bidirektional mit einem DSP 28 gekoppelt ist.
  • Nun wird der Betrieb des Empfangsfunktionalitäts-Abschnitts RX der Basisstations-Konfiguration 20 im Allgemeinen beschrieben, wobei größere Einzelheiten später in Bezug auf bestimmte Aspekte der bevorzugten Ausführungsform dargestellt werden. Die Hochfrequenzsignale werden durch die Empfangsantenne ATRX empfangen, durch den Abwärtsumsetzer 42 abwärts umgesetzt und durch den A/D-Umsetzer 44 von analogen in digitale Signale umgesetzt, alles so, wie es im Stand der Technik bekannt ist. Die resultierenden digitalen Signale werden zum Korrelator-Coprozessor 46 geleitet, der verschiedene Unterschaltungen enthalten kann, um zahlreiche funktionale Operationen auszuführen. Insbesondere ist in der bevorzugten Ausführungsform der Korrelator-Coprozessor 46 eine programmierbare, im hohen Grade flexible vektorgestützte Korrelationsmaschine, die die RAKE-Empfängeroperationen der CDMA-Basisstation für mehrere Kanäle ausführt. Weil die meisten RAKE-Empfängerfunktionen ungeachtet des speziellen drahtlosen Protokolls Korrelationen und Akkumulationen umfassen, kann eine generische Korrelationsmaschine für die verschiedenen RAKE-Empfängeraufgaben, wie die Fingerentspreizung (komplexe Werte), die aus ei nem PN-Multiplizieren und einer kohärenten Akkumulation bestehen, verwendet werden, wobei außerdem der Korrelator-Coprozessor 46 die CDMA-Suchoperationen ausführt. Außerdem akkumuliert der Korrelator-Coprozessor 46 ebenfalls die Symbolenergiewerte; er akkumuliert z. B. die frühen, die pünktlichen und die späten Abtastwerte eines RAKE-Fingers, wobei diese Messungen für die Codeverfolgungsschleife des Fingers verwendet werden und wobei für die Suchoperationen der Korrelator-Coprozessor 46 die akkumulierten Energiewerte für ein spezifiziertes Fenster der Versätze zurückschickt. Zusätzlich Einzelheiten in Bezug auf die Funktionalität des Korrelator-Coprozessors 46 können in den folgenden US-Patentanmeldungen gefunden werden, von denen jede durch Literaturhinweis hierin eingefügt ist: (1) US-Patentanmeldung 09/244.518, eingereicht am 4. Februar 1999; (2) US-Patentanmeldung 09/607.410, eingereicht am 30. Juni 2000; und (3) US-Patentanmeldung 09/691.576, eingereicht am 18. Oktober 2000. Die Ergebnisse der Verarbeitungsoperationen vom Korrelator-Coprozessor 46 werden an den Bus B gekoppelt, wobei unter Verwendung dieser Ergebnisse der DSP 28 eine zusätzliche Signalverarbeitung ausführt. Der DSP 28 führt z. B. vorzugsweise Symbolraten-Empfangsoperationen, wie z. B. die Kanalschätzung, die Maximalverhältniskombination ("MRC"), die Entschachtelung, die automatische Verstärkungsregelung und die automatische Frequenzsteuerung, aus. Folglich kann der DSP 28 schließlich die empfangenen Datensymbole erfassen, wobei diese Symbole in verschiedenen erwünschten Arten auf der Grundlage der vorgesehenen Funktionalität der Basisstations-Konfiguration 20 verarbeitet werden können; in der Tat rufen diese Symbole typischerweise zusätzliche Übertragungen in der Form der DATEN-Ausgabe durch den DSP 28 an den Multiplizierer 34 hervor, wie oben in Bezug auf den Sendefunktionalitäts-Abschnitt TX der Basisstations-Konfiguration 20 erörtert worden ist.
  • 3 veranschaulicht einen Ablaufplan eines Verfahrens 50 des bevorzugten Betriebs der verschiedenen Blöcke der Basisstations-Konfiguration 20, wobei gemäß dem Verfahren 50 die Zählstände des LCSTC-Zählers 22c und des SCSTC-Zählers 24c so festgestellt und aktualisiert werden, dass die Lang- bzw. Kurzcodes in Reaktion auf die Zählstände bereitgestellt werden können. Als Einführung und um die folgende Erörterung zu vereinfachen, sind die im Verfahren 50 veranschaulichten spezifischen Schritte auf den LCSTC-Zähler 22c und seinen mit ihm in Beziehung stehenden Langcode gerichtet, während ein Fachmann auf dem Gebiet aus der Erörterung erkennen wird, wie ein vergleichbares Verfahren auf den SCSTC-Zähler 24c und seinen mit ihm in Beziehung stehenden Kurzcode angewendet wird. Das Verfahren 50 beginnt mit einem Rücksetzschritt 52, der auftritt, wenn die Basisstations-Konfiguration 20 zurückgesetzt wird, wie z. B. beim Einschalten oder bei einem vergleichbaren Ereignis. Nach dem Rücksetzschritt 52 geht das Verfahren 50 zum Schritt 54 weiter. Im Schritt 54 wird der LCSTC-Zähler 22c auf einen vorgegebenen Anfangswert gesetzt, um eine anfängliche lokale Zeit festzusetzen. In der bevorzugten Ausführungsform ist der vorgegebene Wert null. Danach geht das Verfahren 50 vom Schritt 54 zum Schritt 56 weiter, wobei angegeben wird, dass während der verbleibenden Schritte der Wert im LCSTC-Zähler 22c in Reaktion auf den lokalen Taktoszillator 26 inkrementiert wird (es sei denn, dass ein anderes Eingreifen auftritt, wie später erörtert ist).
  • Im Schritt 56 erwartet der GPS-Empfänger 30 der Basisstations-Konfiguration 22 einen GPS-Impuls und seine entsprechende Zeitnachricht. Es wird in Erinnerung gerufen, dass, wie bei der Beschreibung des Abschnitts über die verwandte Technik erörtert worden ist, bekannt ist, dass das GPS-System einen periodischen Impuls zusammen mit einer Zeitnachricht entsprechend einer Atomuhr ausgibt. Während der Impuls durch das GPS jede Sekunde ausgegeben werden kann, kann in der bevorzugten Ausführungsform der Schritt 56 so festgesetzt sein, dass er auf jeden derartigen Impuls antwortet, oder kann alternativ der Schritt 56 so sein, dass er nur auf Impulse antwortet, die mit einer anderen festen Periode (z. B. zwei Sekunden) beabstandet sind. In jedem Fall stellt der Schritt 56 einen Wartezustand dar, bis ein Impuls bei der festgesetzten Periode und seine entsprechende Zeitnachricht empfangen werden. Wenn sie empfangen werden, wird vorzugsweise eine Unterbrechung für den DSP 28 erzeugt, der die Zeitnachricht in den DSP-Speicher liest und zusammen mit ihr die Anzahl der Zählstände im LCSTC-Zähler 22c ab dem Zeitpunkt, zu dem die Zeitnachricht empfangen worden ist, speichert. Als Nächstes geht das Verfahren 50 vom Schritt 56 zum Schritt 58 weiter. Wegen der Bezugnahme in diesem Dokument sei der Index für jeden empfangenen Impuls außerdem i, wobei folglich die zum Zeitpunkt i empfangene Zeitnachricht zusammen mit dem Impuls(i) als die Zeitnachricht(i) bezeichnet werden kann.
  • Der Schritt 58 und die nachfolgenden Schritte werden nun unter Bezugnahme auf 4 eingeführt, die ein allgemeines Ablaufdiagramm veranschaulicht, das beim Systemzeit-Ursprung (d. h. dem 6. Januar 1980) beginnt. Beginnend am Systemzeit-Ursprung tritt eine erste Langcode-Zählung LCC0 auf, wobei ihr bei ihrem Abschluss eine weitere Lang-Zählung mit gleicher Periode folgt, usw., wodurch sich die Zählungen wiederholen, um eine Folge von Langcode-Zählungen LCC0, LCC1 bis LCCn zu erzeugen, wobei jede Langcode-Zählung eine Periode besitzt, die gleich 224-1 Bits ist, während die der Zählung von einem Wert von 0 zu einem Wert von 224-1 weitergeht. Beispielhaft ist in der bevorzugten Ausführungsform, in der die Chip-Rate 1,2288 MHz beträgt, dann jede Langcode-Zählung etwa 3.579.139 Sekunden oder etwa 41,425 Tage lang. Um die Basisstations-Konfiguration 20 richtig zu synchronisieren, versuchen das Verfahren 50 und insbesondere die Schritte 58 bis 62, die nun ausführlicher erörtert werden, einen Impuls zu einem Zeitpunkt TP zu empfangen und aus der Ankunftszeit dieses Impulses und der entsprechenden Zeitnachricht des Impulses zu bestimmen, welcher Systemzeit-Langcode-Zählstand und -Kurzcode-Zählstand bei TP liegen, d. h., was diese Zählstand-Werte im Zeitbereich sind, der bezüglich des Systemzeit-Ursprungs definiert ist. Folglich versucht in dem Beispiel nach 4 das Verfahren 50, die Anzahl der Zählungen im Langcode-Zählstand zum Zeitpunkt TP in Chips zu bestimmen. Außerdem initialisiert das Verfahren 50, sobald dieser Zählstand bestimmt ist, den Wert des LCSTC-Zählers 22c auf einen eingestellten Schätzwert des bestimmten Zählstandes neu, so dass die lokale Zeit im LCSTC-Zähler 22c danach einen Schätzwert der tatsächlichen Systemzeit repräsentiert. Danach wird der LCSTC-Zähler 22c nach TP entsprechend diesem neu initialisierten Wert vorwärts inkrementiert.
  • In 3 wird spezifisch der Schritt 58 betrachtet, wobei dieser die Anzahl der Chips bestimmt, die während der Systemzeit-Langcode-Zählung ab dem Zeitpunkt, zu dem der momentane GPS-Impuls empfangen worden ist, verstrichen sind. Beispielhaft kann eine derartige Bestimmung so betrachtet werden, dass sie in Reaktion auf das Empfangen eines Impulses(i) und seiner entsprechenden Zeitnachricht(i) ausgeführt wird, die zum Zeitpunkt TP, der in 4 veranschaulicht ist, an der Basisstations-Konfiguration 20 angekommen sind. Spezifisch be stimmt im Schritt 58 der DSP 28 einen geschätzten Wert des Systemzeit-Langcode-Zählstandes zum Zeitpunkt i, wobei dieser Schätzwert als L ^ST bezeichnet wird und entsprechend der folgenden Gleichung 1 bestimmt wird:
    Figure 00140001
    wobei Fchip die Chip-Rate für die spezielle Ausführungsform ist, wie z. B. 1,2288 MHz im bevorzugten Beispiel, während der Name "round" angibt, dass das von
    Figure 00140002
    zurückgeschickte Ergebnis zur nächsten ganzen Zahl auf- oder abgerundet wird. Aus dem vorhergehenden wird ein Fachmann auf dem Gebiet erkennen, dass die Gleichung 1 für die Basisstations-Konfiguration 20 einen approximierten Wert des Systemzeit-Langcode-Zählstandes zu einem Zeitpunkt TP, der in 4 veranschaulicht ist, bestimmt.
  • Bei gegebenem Schätzwert des Systemzeit-Langcode-Zählstandes aus der Gleichung 1 geht das Verfahren 50 vom Schritt 58 zum Schritt 60 weiter, in dem der DSP 28 arbeitet, um eine eingestellte Anzahl der lokalen Langcode-Zählstände zu bestimmen, die gleich der Anzahl der lokalen Zählstände im LCSTC-Zähler 22c zum Zeitpunkt i ist, zu dem der GPS-Impuls des Schrittes 56 empfangen worden ist. Mit anderen Worten, es wird in Erinnerung gerufen, dass der Schritt 54 den LCSTC-Zähler 22c auf einen vorgegebenen anfänglichen lokalen Wert zurücksetzt, der seit diesem Zeitpunkt kontinuierlich inkrementiert worden ist; demzufolge ist ab dem Zeitpunkt i, zu dem der GPS-Impuls des Schrittes 54 empfangen worden ist, der Wert im LCSTC-Zähler 22c größer als der Wert des Schrittes 54, wobei sich dieser lokale Wert vom Systemzeit-Langcode-Zählstand um eine Differenz unterscheidet, die davon abhängig ist, wann der Zeitpunkt i aufgetreten ist. Um die Approximation des Schrittes 60 auszuführen, anstatt einfach den lokalen Zählstand-Wert des LCSTC-Zählers 22c ab dem Zeitpunkt i für spätere Bestimmungen zu verwenden, werden zwei zusätzliche Aspekte untergebracht, von denen jeder im Folgenden ausführlich beschrieben wird.
  • Als ein erster Aspekt bezüglich der Zählstände im LCSTC-Zähler 22c wird die Bitgenauigkeit in den LCSTC- und SCSTC-Zählern 22c und 24c betrachtet. Spe zifisch zählen in der bevorzugten Ausführungsform die LCSTC- und SCSTC-Zähler 22c und 24c in 1/8-Chip-Inkrementen. In Bezug auf den LCSTC-Zähler 22c führt er dies unter Verwendung eines 45-Bit-Zählers für den 242-1-Bit-Langcode aus; folglich identifizieren die 42 höchstwertigen Bits des Zählers eine ganzzahlige Anzahl von Chips, während die drei niedrigstwertigen Bits des Zählers in 1/8-Chip-Inkrementen zählen. In Bezug auf den SCSTC-Zähler 24c ist er vorzugsweise so bemessen, dass er eine Dauer zählt, die lang genug ist, damit sie drei Kurzcode-Perioden enthält, und außerdem in 1/8-Chip-Inkrementen inkrementiert wird. Folglich enthält der SCSTC-Zähler 24c 15 Bits, um einen einzigen 215-Bit-Kurzcode zu zählen, zwei zusätzliche Bits, um einen Gesamtbetrag von wenigstens drei Kurzcode-Perioden zu überspannen, und drei zusätzliche Bits, um in 1/8-Chip-Inkrementen zu zählen, wobei er folglich insgesamt 20 Bits umfasst. In allen Fällen passt in Anbetracht des 1/8-Chip-Inkrements der Zähler 22c und 24c die bevorzugte Ausführungsform, wie sie im Folgenden im Zusammenhang mit der Gleichung 2 ausführlich beschrieben wird, die Werte dieser Zählstände so an, dass der angepasste Wert eine vergleichbare Einheit zu den Einheiten der ganzen Chips bereitstellt, die durch die Gleichung 1 verwirklicht sind.
  • Als ein zweiter Aspekt bezüglich der Zählstände im LCSTC-Zähler 22c wird angegeben, dass es irgendein Niveau des Abtastfehlers des Zählstandes entweder im LCSTC-Zähler 22c oder im SCSTC-Zähler 24c gibt. 5 veranschaulicht diese Möglichkeit eines Abtastfehlers, die sich aus der spezifischen Ankunftszeit eines GPS-Impulses und in Bezug auf den LCSTC-Zähler 22c ergibt, wobei die gleichen Prinzipien gleichermaßen für den SCSTC-Zähler 24c gelten. Insbesondere veranschaulicht 5 einen GPS-Impuls GPS(i), der während einer Periode T auftritt, in der der LCSTC-Zähler 22c einen bestimmten Zählstand besitzt, wobei dieser Zählstand durch LCSTC(k) angegeben ist. Es wird jedoch angegeben, dass sich GPS(i) zeitlich irgendwohin innerhalb T verschieben könnte, wobei irgendein GPS-Impuls, der während der 1/8-Chip-Periode von T auftritt und einem Inkrement des Wertes des LCSTC-Zählers 22c folgt, den gleichen Wert besitzt, der am Anfang des Intervalls T gültig gewesen ist. Um diesen Abtastfehler zu minimieren, passt die bevorzugte Ausführungsform, wie außerdem im Folgenden im Zusammenhang mit der Gleichung 2 ausführlich beschrieben wird, den tatsächlich eigentlich gespeicherten Wert des LCSTC-Zählers 22c an einen Punkt in der Mitte des Intervalls T an.
  • In Anbetracht der oben beschriebenen Aspekte bezüglich der Zählstände in einem Zähler 22c oder 24c bestimmt der Schritt 60 einen geschätzten approximierten Wert des Langcode-Zählstandes, der dem Zählstand im LCSTC-Zähler 22c ab der Ankunft des Impulses GPS (i) entspricht, wobei der geschätzte Wert als L ^CCP(i) bezeichnet wird und in der folgenden Gleichung 2 gezeigt ist: L ^CCP(i) = (LCSTC(i) + 0,5)/8. Gleichung 2
  • Folglich implementiert der Nenner aus der Gleichung 2 die oben erörterte Anpassung von 1/8-Chip-Einheiten an auf ganzen Chips basierende Einheiten, während die Addition von 0,5 zu dem dann vorhandenen Wert des Zählstandes im LCSTC-Zähler 22c eine nicht beeinflusste Schätzfunktion bereitstellt, die die Abtastzeit im in 5 gezeigten Intervall T zentriert.
  • Nach dem Schritt 60 geht das Verfahren 50 zum Schritt 62 weiter, der die Differenz der in den Schritten 58 und 60 bestimmten Werte bestimmt, d. h., im Schritt 62 bestimmt der DSP 28 die Langcode-Zählstanddifferenz, die als Δ ^LC(i) bezeichnet wird, entsprechend der folgenden Gleichung 3: Δ ^LC(i) = L ^ST(i) – L ^CCP(i). Gleichung 3
  • Außerdem wird in dieser Hinsicht der Wert von Δ ^LC(i), wie er durch Gleichung 3 bestimmt ist, falls er keine ganze Zahl ist, auf den nächsten 1/8-Bruchteil eines Chips gerundet. Aus der Gleichung 3 und dem vorhergehenden sollte ein Fachmann auf dem Gebiet erkennen, dass Δ ^LC(i) deshalb einen Schätzwert des Versatzes zwischen dem geschätzten Systemzeit-Langcode-Zählstand nach Gleichung 1 und der geschätzten Anzahl von Chips, die im LCSTC-Zähler 22c gezählt sind, zum Zeitpunkt i repräsentiert. Nachdem dieser geschätzte Versatz bestimmt worden ist, fügt im Schritt 62 und zu irgendeinen Zeitpunkt (i + x) der DSP 28 diesen Wert von Δ ^LC(i) (wie er auf einen 1/8-Chip-Wert gerundet ist) in den LCSTC-Zähler 22c für den Zeitpunkt i hinzu, d. h, der vorhergehende lokale Wert im LCSTC-Zähler 22c wird so eingestellt, dass nach dem Schritt 62 LCSTC(i + x) = Δ ^LC(i) + LCSTC(i + x) gilt. An diesem Punkt sollte deshalb der Wert im LCSTC-Zähler 22c einen Schätzwert des Systemzeit-Langcode-Chip-Zählstands repräsentieren. Außerdem wird dieser neu geschriebene Wert des LCSTC(i) im Speicher des DSP 28 als der Zeitnachricht(i) entsprechend gespeichert. Danach wird der neu geschriebene Wert des LCSTC-Zählers 22c abhängig von den periodischen Einstellungen, wie im Folgenden mit den erörterten verbleibenden Schritten des Verfahrens 50 weiter ausführlich beschrieben wird, durch den freilaufenden lokalen Taktoszillator 26 kontinuierlich inkrementiert.
  • Nach dem Schritt 62 geht das Verfahren 50 zum Schritt 64 weiter. Als Einführung repräsentiert der Schritt 64 zusammen mit den verbleibenden Schritten 65 bis 72 eine Methodologie des Aufrechterhaltens und der Korrektur der Taktung für den Zählstand im LCSTC-Zähler 22c, wie er in Reaktion auf die anschließend empfangenen GPS-Impulse und ihre entsprechenden Zeitnachrichten bestimmt wird. Spezifisch arbeiten die Schritte 64 und 65 in einer zum Schritt 46 vergleichbare Weise, d. h., im Schritt 64 erwartet der GPS-Empfänger 30 der Basisstation 22 abermals entsprechende GPS-Impulse und ihre entsprechenden Zeitnachrichten. Wenn jede empfangen wird, wird vorzugsweise eine Unterbrechung für den DSP 28 erzeugt, der die Werte der Zeitnachricht in den DSP-Speicher liest und zusammen mit ihnen den Zählstand im LCSTC-Zähler 22c ab dem Zeitpunkt des Empfangs dieses vor kurzem empfangenen Impulses speichert. Beim Abschluss des Schrittes 65 speichert deshalb der Speicher des DSP 28 wenigstens zwei Zeitnachrichten nach dem Zeitpunkt i, wie z. B. zum Zeitpunkt i + 2 und zum Zeitpunkt i + 4. Danach geht das Verfahren 50 vom Schritt 64 zum Schritt 66 weiter.
  • Der Schritt 66 führt auf der Grundlage der Erkenntnis der bevorzugten Ausführungsform, dass für zwei mit einem Gesamtbetrag von s Sekunden getrennt empfangene GPS-Impulse unter der Voraussetzung keines Fehlers oder keiner Drift in der Anzahl der Zählstände die Differenz zwischen der am Anfang und am Ende der s Sekunden im LCSTC-Zähler 22c gespeicherten Anzahl der Chip-Zählstände s × Fchip sein sollte, eine Bestimmung aus. Falls s z. B. gleich 2 ist und die Chip-Rate 1,2288 MHz beträgt, dann sollte LCSTC(i + 4) um 2 × 1,2288 (10)6 größer als LCSTC(i + 2) sein. In Anbetracht dieser Beobachtungen bestimmt der Schritt 66, ob die folgende Ungleichung 4 erfüllt ist: LCSTC42(t + s) – LCSTC42(t) – (s × Fchip) > 1, Gleichung 4wobei die Tiefstellung "42" unter Bezugnahme auf jeden Wert LCSTC42 in der Ungleichung 4 angibt, dass nur die 42 höchstwertigen Bits vom Zähler verwendet werden, wobei dadurch die Bestimmung in Einheiten ganzer Chips ausgeführt wird (im Gegensatz zu 1/8 Inkrementen, falls alle 45 Bits des Zählers verwendet würden). Wenn die Ungleichung 4 erfüllt ist, dann geht das Verfahren 50 vom Schritt 66 zum Schritt 68 weiter, wohingegen, wenn die Ungleichung 4 nicht erfüllt ist, dann das Verfahren 50 vom Schritt 66 zum Schritt 70 weitergeht.
  • Aus dem Obigen wird der Schritt 68 erreicht, wenn die durch die Ungleichung 4 bestimmte Differenz eins übersteigt, wobei ein derartiges Ergebnis angibt, dass der Zählstand im LCSTC-Zähler 22 zum Zeitpunkt i + s nach oben abgedriftet ist, so dass er im Vergleich zu dem Wert, den er gezählt haben sollte, hätte er seit dem Zeitpunkt t nur s × Fchip Chips gezählt, größer und ungenau ist. Im Ergebnis arbeitet der Schritt 68, um den Zählstand im LCSTC-Zähler 22c darauf zu verringern, was auf der Grundlage von s × Fchip Chips, die seit dem Zeitpunkt t verstrichen sind, als ein genauer Zählstand wahrgenommen wird. In der bevorzugten Ausführungsform wird diese Operation durch den DSP 28 ausgeführt, der acht 1/8-Chip-Zeiteinstellungen plant, die an dem Zählstand im LCSTC-Zähler 22c auszuführen sind, wobei, um den Richtlinien des Standards zu entsprechen, jede dieser 1/8-Chip-Einstellungen nicht früher als 200 ms getrennt auszuführen ist. Um diese acht geplanten Einstellungen tatsächlich auszuführen, empfängt in der bevorzugten Ausführungsform der Langcode-Generator 22 eine Takteinstellungsangabe vom DSP 28, die nur für Veranschaulichungszwecke später in 6 als ein Takteinstellungs-Funktionsblock gezeigt ist, wobei der Takteinstellungs-Funktionsblock die Inkrementwirkung des Taktsignals zwischen dem lokalen Taktoszillator 26 und dem LCSTC-Zähler 22c ändert. In Reaktion auf die Planung des Schrittes 68 verhindert oder unterdrückt der Takteinstellungs-Funktionsblock für einen Taktübergang vom lokalen Taktoszillator 26 während einer 200-ms-Periode, dass der Übergang des Taktsignals den Zählstand im LCSTC-Zähler 22c inkrementiert. Im Ergebnis gibt es während acht 200-ms-Perioden dann acht Fälle, in denen der Zählstand im LCSTC-Zähler 22c nicht inkrementiert wird, wobei dadurch der Gesamtzählstand ein Chip kleiner (d. h. unterdrückte 8 Fälle × 1/8-Chip-Inkrement) gelassen wird, als er ohne das Eingreifen durch den Takteinstellungs-Funktionsblock gewesen wäre. Nach dem Schritt 68 kehrt das Verfahren 50 zum Schritt 65 zurück, wobei der Schritt 66, nachdem ein erfolgreich empfangener GPS-Impuls ankommt, seine Bestimmung mit einer möglichen Fortsetzung des Ablaufs zurück zum Schritt 68, der bereits beschrieben worden ist, oder zum Schritt 70, wobei der Letztere im Folgenden weiter erörtert wird, ausführt.
  • Der Schritt 70 führt außerdem eine Bestimmung auf der Grundlage der Erkenntnis der bevorzugten Ausführungsform aus, dass für zwei mit einem Gesamtbetrag von s Sekunden getrennt empfangene GPS-Impulse unter der Voraussetzung keines Fehlers oder keiner Drift in der Anzahl der Zählstände die Differenz zwischen der zu diesem Zeitpunkt im LCSTC-Zähler 22c gespeicherten Anzahl der Chip-Zählstände s × Fchip Chips betragen sollte. Im Gegensatz zum Schritt 66, der auf eine unerwünschte Beschleunigung im Zählstand des LCSTC-Zählers 22c gerichtet ist, ist jedoch der Schritt 70 auf die Möglichkeit einer unerwünschten Verlangsamung im Zählstand des LCSTC-Zählers 22c gerichtet. Spezifisch bestimmt der Schritt 70, ob die folgende Ungleichung 5 erfüllt ist, die auftritt, falls der Zählstand im LCSTC-Zähler 22c nach unten abgedriftet ist, so dass er kleiner ist, als er sein sollte, hätte der Zähler seit dem Zeitpunkt t s × Fchip Chips gezählt: LCSTC42(t + s) – LCSTC42(t) – (s × Fchip) < 1. Gleichung 5
  • Wenn die Ungleichung 5 erfüllt ist, dann geht das Verfahren 50 vom Schritt 70 zum Schritt 72 weiter, wohingegen, wenn die Ungleichung 5 nicht erfüllt ist, dann das Verfahren 50 vom Schritt 70 zum Schritt 65 zurückkehrt.
  • Aus dem Obigen wird der Schritt 72 erreicht, wenn die Ungleichung 5 wahr ist, wobei ein derartiges Ergebnis angibt, dass der Zählstand im LCSTC-Zähler 22c zum Zeitpunkt t + s ungenau ist, weil er kleiner ist, als er sein sollte, hätte der LCSTC-Zähler 22c seit dem Zeitpunkt t s × Fchip Chips gezählt. Im Ergebnis arbeitet der Schritt 72, um den Zählstand im LCSTC-Zähler 22c darauf zu vergrö ßern, was auf der Grundlage von s × Fchip Chips, die seit dem Zeitpunkt t verstrichen sind, als ein genauer Zählstand wahrgenommen wird. In der bevorzugten Ausführungsform wird diese Operation ebenfalls durch den DSP 28 ausgeführt, der acht 1/8-Chip-Zeiteinstellungen plant, die an dem Zählstand im LCSTC-Zähler 22c auszuführen sind, wobei abermals den Richtlinien des Standards entsprochen wird, so dass jede dieser Einstellungen nicht früher als 200 ms getrennt auszuführen ist. In diesem Fall arbeitet der Takteinstellungs-Funktionsblock des Langcode-Generators 22 anstatt mit einer unterdrückenden Wirkung mit einer multiplizierenden Wirkung. Spezifisch verdoppelt in Reaktion auf die Planung des Schrittes 72 der Takteinstellungs-Funktionsblock für einen Taktübergang vom lokalen Taktoszillator 26 während einer 200-ms-Periode das Inkrementieren des Zählstandes im LCSTC-Zähler 22c, d. h. anstelle eines einzigen Inkrements des Zählstands in Reaktion auf einen einzigen Taktübergang tritt ein doppeltes Inkrement in Reaktion auf einen einzigen Taktübergang auf, wobei dadurch der Zählstand um 2/8 Chips voreilen gelassen wird. Im Ergebnis gibt es während acht 200-ms-Perioden acht Fälle, in denen der Zählstand im LCSTC-Zähler 22c zweimal inkrementiert wird, wobei dadurch der Gesamtzählstand voreilen gelassen wird, damit er einen Chip mehr (d. h. 8 Fälle × 2/8 Chips) beträgt, als er ohne das Eingreifen des Takteinstellungs-Funktionsblocks gewesen wäre. Nach dem Schritt 72 kehrt das Verfahren 50 zum Schritt 65 zurück, wodurch der Schritt 66, nachdem ein erfolgreich empfangener GPS-Impuls ankommt, seine Bestimmung mit verschiedenen möglichen Fortsetzungen des Ablaufs, wie oben erörtert worden ist, ausführt. Außerdem wird der Rückkehr- und Vorwärts-Verfahrensablauf, der die Schritte 65 bis 72 umfasst, vorzugsweise eine Zeitlang periodisch wiederholt, wobei jedesmal erfasst wird, ob eine Drift im LCSTC-Zähler 22c aufgetreten ist, und alle erforderlichen Korrekturen geplant und ausgeführt werden, falls eine derartige Drift erfasst wird. Schließlich sollte ein Fachmann auf dem Gebiet erkennen, dass, wenn weder die Bedingung des Schrittes 66 noch die Bedingung des Schrittes 70 für eine gegebene Iteration des Ablaufs erfüllt ist, dann durch den Takteinstellungs-Funktionsblock kein Eingreifen ausgeführt wird, wobei im Ergebnis für jede Periode des lokalen Taktoszillators 26 der LCSTC-Zähler 22c um einen entsprechenden einzigen 1/8-Chip-Zählstand inkrementiert wird.
  • Nachdem das Verfahren 50 in Bezug auf den LCSTC-Zähler 22c beschrieben worden ist, sind verschiedene zusätzliche Beobachtungen bemerkenswert. Als eine erste Beobachtung und wie oben kurz erwähnt worden ist, wird das Verfahren 50 außerdem vorzugsweise auf den SCSTC-Zähler 24c angewendet. Ohne das ganze Verfahren erneut ausführlich darzulegen, sollte ein Fachmann auf dem Gebiet deshalb erkennen, dass der SCSTC-Zähler 24c auf einen vorgegebenen Wert zurückgesetzt wird, danach in Reaktion auf die Übergänge vom lokalen Taktoszillator 26 inkrementiert wird und weiter modifiziert wird, damit er einen Versatzwert enthält, so dass danach der SCSTC-Zähler 24c entsprechend einem geschätzten Systemzeit-Kurzcode-Zählstand voreilt. Danach werden periodische Bewertungen in Reaktion auf nacheinander empfangene GPS-Impulse ausgeführt, um das Vorhandensein irgendeiner ungenauen Zunahme oder Abnahme des Zählstandes des SCSTC-Zählers 24c zu ermitteln, wie durch das Vergleichen des Zählstands im Zähler zu einer Impulszeit mit seinem Wert, wie er zum Zeitpunkt eines vorher empfangenen Impulses gespeichert worden ist, erfasst wird. Falls ein fehlerhaft hoher Zählstand gefunden wird, arbeitet die Takteinstellungs-Funktionsoperation durch den DSP 28, um die 1/8-Chip-Inkrementierung des SCSTC-Zählers 24c für acht Fälle zu unterdrücken, von denen jeder nicht früher als 200 ms getrennt auftritt, wohingegen, falls ein fehlerhaft hoher Zählstand gefunden wird, eine durch den DSP 28 bereitgestellte Takteinstellungsoperation arbeitet, um die 1/8-Chip-Inkrementierung des SCSTC-Zählers 24c für acht Fälle zu verdoppeln, von denen jeder nicht früher als 200 ms getrennt auftritt. Als eine zweite Beobachtung müssen in der bevorzugten Ausführungsform die Schritte 65 bis 72 nicht für jeden empfangenen GPS-Impuls aktiviert werden, wenn derartige Impulse in der Größenordnung von zwei oder weniger Sekunden getrennt sind. Statt dessen wird in der bevorzugten Ausführungsform die Bewertung und die mögliche Korrektur vorzugsweise alle 30 Sekunden ausgeführt. Wenn außerdem eine Bestimmung ausgeführt wird, dass eine Korrektur (d. h. eine Zunahme oder Abnahme) des Zählstands entweder im LCSTC-Zähler 22c oder im SCSTC-Zähler 24c erforderlich ist, dann muss der Zeitpunkt der tatsächlichen Korrektur nicht nächstgelegen oder sogar zeitlich genau übereinstimmend sein, weil die kurzfristige Stabilität des lokalen Taktoszillators 26 ausreichend hoch ist und folglich das Vertrauen in die Korrekturbestimmungen während mehreren Millisekunden gültig bleiben sollte. Falls jedoch eine Korrektur verzögert wird, dann sollte die nächste Bewertung und Bestimmung ebenfalls verzögert werden, bis die vorher verzögerte Korrektur durch das Einstellen der Zählstände im geeigneten Zähler implementiert ist.
  • Nachdem die bevorzugte Ausführungsform in Bezug auf die Entwicklung des Langcode-Zählstandes für die Basisstations-Konfiguration 20 ausführlich beschrieben worden ist, wird der Leser nun daran erinnert, dass in 2 gezeigt ist, dass der Langcode in den Sendefunktionalitäts-Abschnitt TX ausgegeben wird, wobei außerdem unter Verwendung einer gestrichelten Linie gezeigt ist, dass er mit dem Empfangsfunktionalitäts-Abschnitt RX verbunden ist. 6 veranschaulicht nun diese Aspekte ausführlicher, die im Anbetracht eines Verständnisses der vorhergehenden Figuren und ihrer Beschreibungen leichter erkannt werden sollten. Im Allgemeinen veranschaulicht 6 zusätzliche Einzelheiten, die den Langcode-Generator 22 und den Korrelator-Coprozessor 46 betreffen, mit besonderer Konzentration auf den Langcode, wie er sowohl im Sendefunktionalitäts-Abschnitt TX als auch im Empfangsfunktionalitäts-Abschnitt RX verwendet wird. Außerdem sollte ein Fachmann auf dem Gebiet erkennen, dass vergleichbare Aspekte außerdem für den Kurzcode gelten, wobei Derartige jedoch nicht gezeigt sind, um die Veranschaulichung und die folgende Erörterung zu vereinfachen.
  • Es wird der Langcode-Generator 22 in 6 betrachtet, wobei er einen Takteingang 22ci enthält, der so angeschlossen ist, dass er das Taktsignal vom lokalen Taktoszillator 26 empfängt (siehe außerdem 2), wobei der Eingang 22ci logisch so gezeigt ist, dass er dieses Taktsignal einem Takteinstellungs-Funktionsblock 22TAFB bereitstellt; vorzugsweise ist der Takteinstellungs-Funktionsblock 22TAFB eine in Software durch den DSP 28 bereitgestellte Funktion, wobei er die im Zusammenhang mit den Schritten 66 bis 72 nach 3 beschriebene Funktionalität bereitstellt, er ist in diesem Dokument aber als ein Block beschrieben, um ein Verständnis seines Betriebs in Bezug auf die anderen in 6 (und 2) gezeigten Blöcke zu unterstützen. Der Ausgang des Takteinstellungs-Funktionsblocks 22TAFB stellt ein INKREMENT-Signal dem LCSTC-Zähler 22c bereit, wobei die höchstwertigen 42 Bits, LCSTC42, separat von den niedrigstwertigen 3 Bits, LCSTC3, dieses Zählers in 6 gezeigt sind, um den ganzen Chip-Zählstand vom 1/8-Chip-Zählstand zu unterscheiden. Die höchstwertigen 42 Bits, LCSTC42, sind als eine Eingabe mit einem Sende-Langcode-Generator 22TXLCG verbunden, der an seinem Ausgang den Langcode bereitstellt, der durch den in 2 gezeigten Sendefunktionalitäts-Abschnitt TX zu verwenden ist.
  • Der Betrieb des Langcode-Generators 22 sollte in Anbetracht der verschiedenen früheren Figuren und ihrer Beschreibungen leicht erkannt werden, wobei folglich ein derartiger Betrieb hier nur kurz in Bezug auf die spezifische Veranschaulichung nach 6 wiederholt wird. Das Taktsignal vom Takteingang 22ci wird durch den Takteinstellungs-Funktionsblock 22TAFB empfangen, der arbeiten kann, um dieses Signal unbeeinflusst weiterzuleiten, um den LCSTC-Zähler 22c zu inkrementieren, oder der es modifizieren kann, wie es im Zusammenhang entweder mit dem Schritt 68 oder mit dem Schritt 72 in 3 beschrieben worden ist. Um diese Möglichkeiten weiter zu veranschaulichen, ist der Takteinstellungs-Funktionsblock 22TAFB funktional so gezeigt, dass er einen Frequenzvielfacher 22M enthält, der das Taktsignal als einen Multiplikanden empfängt, wobei er einen Wert von entweder 0, 1 oder 2 als einen weiteren Multiplikanden empfangen kann. Um den Schritt 68 auszuführen, wobei beschrieben worden ist, dass sein erneuter Aufruf unterdrückt, dass das Taktsignal den LCSTC-Zähler 22c erreicht, wird dann ein Multiplikand 0 bereitgestellt, wobei dadurch eine Null-Ausgabe (d. h. kein Takt) zu diesem Zeitpunkt ausgegeben wird. Um umgekehrt den Schritt 72 auszuführen, wobei beschrieben worden ist, dass sein erneuter Aufruf die Taktsignal-Übergänge zum LCSTC-Zähler 22c verdoppelt, wird dann ein Multiplikand 2 bereitgestellt, wobei dadurch doppelte Taktübergänge zu diesem Zeitpunkt ausgegeben werden. Schließlich besitzt der vorgegebene Multiplikand den Wert von 1, der zu keiner Änderung des Taktsignals führt, so dass es vom Takteingang 22ci direkt weitergeleitet wird, um den LCSTC-Zähler 22c zu inkrementieren. Beim Abschluss des Betriebs des Langcode-Generators 22 stellen die LCSTC42 dem Sende-Langcode-Generator 22TXLCG einen Versatzindex bereit. In Reaktion arbeitet der Sende-Langcode-Generator 22TXLCG entsprechend den bekannten Prinzipien, um den Langcode zu erzeugen und auszugeben, wobei der Langcode dann den geeigneten Vorrichtungen im Sende funktionalitäts-Abschnitt TX der Basisstation vorgelegt wird. In Reaktion steuert jedes Inkrement der LCSTC42 ein neues DATEN-Lesen und eine Erzeugung des zusammengesetzten Codes an, so dass das Produkt dieser Werte dem Multiplizierer 34 (2) bereitgestellt und für die Sendung verarbeitet werden kann.
  • Nun wird zu jenen Aspekten des Korrelator-Coprozessors 46 übergegangen, wie er in 6 gezeigt ist, wobei sie einen Finger-/Suchaufgaben-Wegversatzblock 80 enthalten, dessen Ausgang als ein erster Summand mit einem Addierer 82 verbunden ist. Ein zweiter Summand wird dem Addierer 82 von einem Takteinstellungs-Kompensator 84 bereitgestellt. Vorzugsweise ist der Takteinstellungs-Kompensator 84 außerdem eine durch den DSP 28 in Software bereitgestellte Funktion, aber er ist in diesem Dokument auch als ein Block beschrieben, um ein Verständnis seines Betriebs in Bezug auf die anderen in 6 (und 2) gezeigten Blöcke zu unterstützen. Der Takteinstellungs-Kompensator 84 empfängt an seinem Eingang die 42 höchstwertigen Bits LCSTC42 vom LCSTC-Zähler 22c, wobei angegeben ist, dass diese Verbindung als eine gestrichelte Linie gezeigt ist, damit sie der oben in Bezug auf 3 erörterten gestrichelten Linie entspricht. Spezifisch wird in Erinnerung gerufen, dass früher angegeben worden ist, dass die Verbindung in gestrichelten Linien dargestellt ist, weil der Korrelator-Coprozessor 46 in Reaktion auf die Zählstände in den Zählern 22c und 24c in einer Weise arbeitet, die von der des Sendefunktionalitäts-Abschnitts TX der Konfiguration 20 verschieden ist, wobei dieser Unterschied nun im Folgenden veranschaulicht und weiter erklärt wird. Der Ausgang des Addierers 82 stellt einem Empfangs-Langcode-Generator 86 einen Codeversatz und einem Pipelinesteuerblock 88 ein Finger-Rahmen-Taktungssignal bereit.
  • Der Betrieb des Empfangsfunktionalitäts-Abschnitts RX ist in vieler Hinsicht entweder entsprechend dem Stand der Technik oder gemäß dem Betrieb des Korrelations-Coprozessors 46, wie er in den oben aufgenommenen Patentanmeldungen beschrieben ist, wobei die vorgesehene Konzentration der Veranschaulichung in 6 für diesen Abschnitt auf den Takteinstellungs-Kompensator 84 gerichtet ist. Wie spezifisch im Stand der Technik bekannt ist, wird der Langcode-Zählstand verwendet, um jede Finger- und Suchaufgaben-Rahmen/Schlitz/Chip-Taktung zu erzeugen und außerdem die Pipelinesteuerung zu unterstützen. Sobald diese verschiedenen Funktionen auf den im Schritt 62 nach 3 festgesetzten LCSCT-Wert initialisiert sind, arbeitet jedoch der Empfangsfunktionalitäts-Abschnitt RX vorzugsweise so, dass irgendwelche späteren Einstellungen an dem LCSTC-Zähler 22c durch den Takteinstellungs-Funktionsblock 22TAFB (d. h. durch die Schritte 68 oder 72) den Empfangsfunktionalitäts-Abschnitt RX nicht beeinflussen. Mit anderen Worten, nach der Initialisierung des Schrittes 62 des LCSTC werden in der bevorzugten Ausführungsform die Fingeraufgaben durch ihre eigenen Verzögerungsverriegelungsschleifenfunktionen synchronisiert, wobei sie nicht durch irgendwelche internen LCSTC-Einstellungen gestört werden. Um dieses Ergebnis zu erreichen, entfernt der Takteinstellungs-Kompensator 84, sobald diese Aufgaben ausgeführt werden, effektiv die Wirkung irgendeiner an den LCSTC42 durch den Takteinstellungs-Funktionsblock 22TAFB vorgenommenen Einstellung, wobei dies erreicht wird, indem der von den LCSTC42 empfangene Wert inkrementiert/dekrementiert wird, falls die LCSTC42 durch den Schritt 68 oder den Schritt 72 eingestellt worden sind. Demzufolge empfängt der Takteinstellungs-Kompensator 84 die LCSTC42 und gibt einen entsprechenden Wert LCSTC42ADJ aus, der wie folgt selektiv modifiziert wird. Sei c das LCSTC-Inkrement bei der Chip-Rate, d. h. sei es 8mal die Zeit für jede 1/8-Bit-Einstellung am LCSTC-Zähler. Demzufolge arbeitet der Takteinstellungs-Kompensator 84 entsprechend dem folgenden Pseudocode:
    • Zeile 1; wenn LCSTC42(c + 1) – LCSTC42(c) = 0, dann LCSTC42ADJ = LCSTC42 + 1
    • Zeile 2; wenn LCSTC42(c + 1) – LCSTC42(c) = 2, dann LCSTC42ADJ = LCSTC42 – 1
    • Zeile 3; sonst LCSTC42ADJ = LCSTC42
  • Die Zeile 1 des Pseudocodes ist in einem Fall wahr, in dem der Takteinstellungs-Funktionsblock 22TAFB unterdrückt hat, dass die Taktübergänge den LCSTC-Zähler 22c erreichen, und dadurch den ganzzahligen Chip-Zählstand darin um einen Chip verringert hat, wobei im Ergebnis die Zeile 1 festsetzt, dass die LCSTC42ADJ der Zählstand der LCSTC42 vor den unterdrückten Taktübergängen sind, indem sie definiert, dass die LCSTC42ADJ gleich LCSTC42 + 1 sind. Umgekehrt ist die Zeile 2 des Pseudocodes in einem Fall wahr, in dem der Takteinstellungs-Funktionsblock 22TAFB die Taktübergänge zum LCSTC-Zähler 22 verdoppelt und dadurch den ganzzahligen Chip-Zählstand darin um 2 vergrößert hat, wobei im Ergebnis die Zeile 2 festsetzt, dass die LCSTC42ADJ der Zählstand der LCSTC42 vor den verdoppelten Taktübergängen sind, indem sie definiert, dass die LCSTC42ADJ gleich LCSTC42ADJ – 1 sind. Falls schließlich weder die Zeile 1 noch die Zeile 2 wahr ist, dann nimmt die Zeile 3 keine Einstellung vor, so dass die LCSTC42ADJ die gleichen wie der Wert der LCSTC42 sind. In allen Fällen werden nach irgendeiner potentiellen Kompensation die LCSTC42ADJ als ein Codeversatz für den RX-Langcode-Generator 86 verwendet, der arbeiten kann, um den entsprechenden Langcode unter Verwendung von Prinzipien auszuwählen, die im Stand der Technik bekannt sind, wobei gleichermaßen die LCSTC42ADJ als ein Fingerrahmenbildungssignal für die richtige Taktung des Pipelinesteuerblocks 88 verwendet werden.
  • In Anbetracht der vorhergehenden Operationen in Reaktion auf das GPS-System implementiert die bevorzugte Ausführungsform außerdem optional einen zusätzlichen Schutz, sollte das GPS-System vorübergehend nicht verfügbar sein. Um für eine derartige Möglichkeit spezifisch eingestellt zu sein, sollte die Basisstations-Konfiguration 20 eine Leistungsquelle (z. B. eine Batterie) enthalten, die verwendet wird, um die lokale Zeit der Basisstation aufrechtzuerhalten, während sie ausgeschaltet ist. Beim Einschalten werden dann der LCSTC-Zähler 22c und der SCSTC-Zähler 24c mit Werten initialisiert, die aus dem aktuellen Datum/der aktuellen Zeit abgeleitet werden, die von der internen Uhr bereitgestellt werden. Danach werden sie gemäß der oben beschriebenen Methodologie mit dem GPS synchronisiert, sobald die GPS-Signale verfügbar werden.
  • Alternativ wird ein Sender/Empfänger für ein drahtloses Kommunikationssystem, der einen Codezähler enthält, offenbart. Ein Taktoszillator lässt einen Zählstand im Codezähler voreilen. Ein Satellitennavigationsempfänger empfängt eine Satellitennavigations-Zeitnachricht bei einer GPS-Systemzeit. Der Sender/Emp fänger enthält eine Schaltungsanordnung zum Bestimmen eines Systemzeit-Zählstandes und zum Speichern des Systemzeit-Zählstandes im Codezähler in Reaktion auf die Zeitnachricht. Der Codezähler wird fortgesetzt vom Systemzeit-Zählstand in Reaktion auf den Taktoszillator voreilen gelassen. Die Schaltungsanordnung bewertet wiederholt den Zählstand im Codezähler nach dem Voreilenlassen vom Systemzeit-Zählstand, um zu ermitteln, ob der Zählstand zu einem ungenauen Zählstand abgedriftet ist. Eine weitere Schaltungsanordnung stellt in Reaktion auf das Erfassen eines ungenauen Zählstandes den ungenauen Zählstand auf einen wahrgenommenen genauen Zählstand ein. Eine noch weitere Schaltungsanordnung sendet die in Reaktion auf den Zählstand im Zähler synchronisierten Nachrichten. Der Codezähler umfasst einen Langcode-Zähler zum Zählen eines Langcodes, der eine Anzahl von Chips X enthält, und zum Modulieren eines Signals, das mit einer Chip-Rate Fchip zu senden ist. Die Zeitnachricht enthält eine Zeitangabe i, die eine Zeitdifferenz von einer Ursprungszeit zu einem Zeitpunkt repräsentiert, zu dem die Zeitnachricht gesendet worden ist. Die Schaltungsanordnung zum Bestimmen eines Systemzeit-Zählstandes bestimmt den Systemzeit-Zählstand zum Zeitpunkt i, so dass er gleich
    Figure 00270001
    ist.
  • Der Systemzeit-Zählerstand kann bezüglich eines Zeitpunkts i bestimmt werden, wobei der Sender/Empfänger ferner eine Schaltungsanordnung zum Initialisieren eines anfänglichen Zählstands in den Zähler vor dem Speichern des Systemzeit-Zählstandes in dem Codezähler umfassen kann. Zusammen mit der Schaltungsanordnung zum Addieren eines geschätzten Versatzes zum Zählstand im Codezähler zu einem Zeitpunkt nach dem Zeitpunkt i kann außerdem eine Schaltungsanordnung zum Bestimmen eines geschätzten Versatzes zwischen dem Systemzeit-Zählstand und dem Zählstand im Codezähler zum Zeitpunkt i vorgesehen sein.
  • Der Sender/Empfänger kann noch weiter eine Schaltungsanordnung zum Senden von Nachrichten, die in Reaktion auf den Zählstand im Zähler synchronisiert werden, umfassen.
  • Der Sender/Empfänger kann noch weiter einen Sender/Empfänger mit Codemultiplex-Vielfachzugriff umfassen.
  • Die Schaltungsanordnung zum wiederholten Bewerten und die Schaltungsanordnung zum Einstellen können Teil eines digitalen Signalprozessors sein.
  • Der Sender/Empfänger kann einen Basisstations-Sender/Empfänger umfassen.
  • Aus dem Obigen kann erkannt werden, dass die obigen Ausführungsformen eine verbesserte Sender/Empfänger-Konfiguration schaffen, die teilweise in Reaktion auf die Zeitsignale vom GPS-System arbeitet und die vorzugsweise als eine CDMA-Basisstation implementiert ist. Ein Sender/Empfänger gemäß der bevorzugten Ausführungsform stützt sich nicht auf einen PLL-Taktoszillator, um die Werte seiner Kurz- und Langcode-Zählstände zu aktualisieren, wobei folglich die Nachteile eines derartigen Zugangs vermieden werden. Indem der PLL-Taktoszillator vermieden wird, wird z. B. kein Phasenrauschen in das durch den freilaufenden lokalen Taktoszillator 26 bereitgestellte Master-Taktsignal eingefügt. Als ein weiteres Beispiel werden die Kosten vermieden, die sowohl durch einen PLL-Taktoszillator als auch die Rauschverringerungsschaltungen, die erforderlich sind, um die negativen Wirkungen einer derartigen Vorrichtung auszugleichen, auferlegt werden. Außerdem schafft die bevorzugte Ausführungsform noch weitere Vorteile. Die Kombination eines ASIC-Korrelator-Coprozessors 46 und eines DSP 28 schafft z. B. eine integrierte und digitale Synchronisation für die GPS-Lösung für die Basisstations-Implementierungen. Als ein weiteres Beispiel ist ein derartiger integrierter Zugang für die Verkäufer derartiger Lösungen attraktiv, da er ihre Implementierung vereinfacht. Als ein noch weiterer Vorteil führt der DSP 28 vorzugsweise die Synchronisationsbestimmungen und -einstellungen in Software aus, was eine hohe Leistung, eine hohe Flexibilität und die Unterstützung verschiedener externer Quellformate erlaubt. Als ein noch weiterer Vorteil kann ein Fachmann auf dem Gebiet andere Zusammenhänge ermitteln, in denen die verschiedenen Lehren der Erfindung implementiert werden können, während die bevorzugte Ausführungsform im Zusammenhang mit bestimmten Protokollen und Standards veranschaulicht worden ist. Als ein noch weiterer Vorteil können bestimmte der obigen Lehren in verschiedener Hinsicht variiert werden, wie z. B. durch das Implementieren des Sender/Empfängers als eine Anwenderstation, das Aufnehmen verschiedener Standards usw. Folglich könnten, während die vorliegenden Ausführungsformen ausführlich beschrieben worden sind, verschiedene Ersetzungen, Modifikationen oder Änderungen an den oben dargelegten Beschreibungen vorgenommen werden, ohne vom Umfang der Erfindung abzuweichen, der durch die folgenden Ansprüche definiert ist.

Claims (21)

  1. Sender/Empfänger (20) für ein drahtloses Kommunikationssystem zum Senden und Empfangen zeitbezogener codierter Signale, mit: einem Taktoszillator (26) zum Voreilenlassen eines Codezählers (22c, 24c), wenn die codierten Signale empfangen oder gesendet werden, derart, dass der Codezähler einen momentanen lokalen Zeitwert bereitstellt; Mitteln zum Bereitstellen eines anfänglichen lokalen Zeitwertes für den Codezähler; und einer Schaltungsanordnung (28) zum Empfangen einer Zeitnachricht auf der Grundlage einer Systemzeit außerhalb des Sender/Empfängers; wobei die Schaltungsanordnung ferner so beschaffen ist, dass sie: einen Systemzeitwert aus der empfangenen Zeitnachricht bestimmt; einen aktualisierten Codezählerwert bestimmt, der den Systemzeitwert repräsentiert, und den aktualisierten Wert in den Codezähler lädt, derart, dass der Codezähler einen aktualisierten momentanen lokalen Zeitwert bereitstellt; eine nachfolgende Zeitnachricht empfängt und den dann momentanen lokalen Zeitwert als einen ersten Codezählerwert speichert; eine weitere nachfolgende Zeitnachricht empfängt und den dann momentanen lokalen Zeitwert als einen zweiten Codezählerwert speichert; eine erwartete Codezählerdifferenz auf der Grundlage der empfangenen Zeitnachrichten bewertet und diesen Wert mit der Differenz zwischen dem ersten und dem zweiten Codezählerwert vergleicht, um zu ermitteln, ob der Zählstand abgedriftet ist; und den Zählstand in dem Codezähler in Reaktion auf irgendeine derartige Drift einstellt.
  2. Sender/Empfänger für ein drahtloses Kommunikationssystem nach Anspruch 1, mit einer Schaltungsanordnung zum Bestimmen eines geschätzten Versatzes zwischen dem Systemzeit-Zählstand und der momentanen lokalen Zeit und zum Addieren des geschätzten Versatzes zu dem Zählstand in dem Codezähler, derart, dass der Codezähler den aktualisierten momentanen lokalen Zeitwert bereitstellt.
  3. Sender/Empfänger für ein drahtloses Kommunikationssystem nach Anspruch 1 oder Anspruch 2, wobei der Sender/Empfänger ferner eine Schaltungsanordnung zum Senden von Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden, umfasst.
  4. Sender/Empfänger für ein drahtloses Kommunikationssystem nach Anspruch 3, wobei der Sender/Empfänger ferner eine Schaltungsanordnung umfasst, um Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden, zu senden, nachdem der Zählstand durch die Schaltungsanordnung für eine Drift eingestellt worden ist; um einen kompensierten Zählstand, der den Zählstand in dem Zähler vor seiner Einstellung repräsentiert, bereitzustellen; und um Nachrichten, die in Reaktion auf den kompensierten Zählstand synchronisiert werden, zu empfangen.
  5. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem der Ansprüche 1 bis 4, ferner mit: einem Satellitennavigationsempfänger (30); wobei die Zeitnachricht eine Satellitennavigations-Zeitnachricht ist, die durch den Satellitennavigationsempfänger empfangen wird.
  6. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, bei dem: der Codezähler einen ersten Codezähler (22c) und einen zweiten Codezähler (24c) umfasst; der Taktoszillator so beschaffen ist, dass er einen Zählstand in dem zweiten Codezähler voreilen lässt; und der Sender/Empfänger ferner umfasst: eine Schaltungsanordnung zum Speichern des Systemzeitwertes in dem zweiten Codezähler, wobei der zweite Codezähler so beschaffen ist, dass er gegenüber dem Systemzeitzählstand in Reaktion auf den Taktoszillator fortgesetzt voreilt; zum wiederholten Bewerten des Wertes in dem zweiten Codezähler nach dem Voreilenlassen gegenüber dem Systemzeitwert, um zu ermitteln, ob der Wert in dem zweiten Codezähler abgedriftet ist; und zum Einstellen des Zählstandes in dem zweiten Codezähler in Reaktion auf die erfasste Drift.
  7. Sender/Empfänger für ein drahtloses Kommunikationssystem nach Anspruch 6, bei dem der erste Codezähler einen Langcode-Zähler umfasst und bei dem der zweite Codezähler einen Kurzcode-Zähler umfasst.
  8. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, bei dem der Taktoszillator einen frei laufenden Taktoszillator enthält.
  9. Sender/Empfänger für ein drahtloses Kommunikationssystem nach Anspruch 7 oder Anspruch 8, bei dem: der Langcode-Zähler so beschaffen ist, dass er einen Langcode zählt, der eine Anzahl von Chips X enthält, und dass er ein mit einer Chip-Rate Fchip zu sendendes Signal moduliert; die Zeitnachricht eine Zeitangabe i enthält, die die Zeitdifferenz von einer Ursprungszeit zu einer Zeit, zu der die Zeitnachricht gesendet wurde, repräsentiert; und die Schaltungsanordnung zum Bestimmen eines Systemzeit-Zählstandes den Systemzeit-Zählstand zu der Zeit i so bestimmt, dass er gleich
    Figure 00320001
    ist.
  10. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, bei dem: der Zähler eine Bitgenauigkeit besitzt, die zum Zählen von 1/x Bits geeignet ist; und die Schaltungsanordnung zum Einstellen des Zählstandes den Zählstand durch Ändern des Zählstandes in dem Zähler in einer Gesamtanzahl x über x gleichmäßig beabstandete Perioden einstellt.
  11. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, wobei der Sender/Empfänger einen Sender/Empfänger mit Codemultiplex-Vielfachzugriff umfasst.
  12. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, bei dem die Schaltungsanordnung zum wiederholten Bewerten und die Schaltungsanordnung zum Einstellen Teil eines digitalen Signalprozessors sind.
  13. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, wobei der Sender/Empfänger einen Basisstation-Sender/Empfänger umfasst.
  14. Sender/Empfänger für ein drahtloses Kommunikationssystem nach einem vorhergehenden Anspruch, ferner mit: einem ersten Sender/Empfänger zum Senden von Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden; und einem zweiten Sender/Empfänger zum Empfangen der Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden.
  15. Verfahren zum Betreiben eines Sender/Empfängers in einem drahtlosen Kommunikationssystem, um zeitbezogene codierte Signale zu senden oder zu empfangen, das umfasst: Voreilenlassen eines Codezählers mit einem Taktoszillator (26), wenn die codierten Signale empfangen oder gesendet werden, um einen momentanen lokalen Zeitbezug zu schaffen; Vorsehen (54) eines anfänglichen lokalen Zeitwerts für den Codezähler; Empfangen (56) einer Zeitnachricht auf der Grundlage einer Systemzeit außerhalb des Sender/Empfängers; Bestimmen (58) eines Systemzeitwerts aus der empfangenen Zeitnachricht; Bestimmen (60) eines aktualisierten Codezählerwerts, der den Systemzeitwert repräsentiert, und Laden des aktualisierten Werts in den Codezähler, derart, dass der Codezähler einen aktualisierten momentanen lokalen Zeitwert bereitstellt; Empfangen (64) einer nachfolgenden Zeitnachricht und Speichern des dann momentanen Zeitwerts als einen ersten Codezählerwert; Empfangen (65) einer weiteren nachfolgenden Zeitnachricht und Speichern des dann momentanen lokalen Zeitwerts als einen zweiten Codezählerwert; Bewerten (66, 70) einer erwarteten Codezählerdifferenz auf der Grundlage der empfangenen Zeitnachrichten und Vergleichen des Wertes mit der Differenz zwischen dem ersten und dem zweiten Codezählerwert, um zu ermitteln, ob der Zähler abgedriftet ist; und Einstellen (68, 72) des Zählstands in dem Codezähler in Reaktion auf irgendeine derartige Drift.
  16. Verfahren nach Anspruch 15, das ferner den folgenden Schritt umfasst: Bestimmen (62) eines geschätzten Versatzes zwischen dem Systemzeit-Zählstand und der momentanen lokalen Zeit und Addieren des geschätzten Versatzes zu dem Zählstand in dem Codezähler, derart, dass der Codezähler den aktualisierten momentanen lokalen Zeitwert bereitstellt.
  17. Verfahren nach Anspruch 15 oder Anspruch 16, das ferner den Schritt des Sendens von Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden, umfasst.
  18. Verfahren nach einem der Ansprüche 15 bis 17, bei dem der Schritt des Empfangens der Zeitnachricht das Empfangen einer Zeitnachricht, die eine Satellitennavigations-Zeitnachricht ist, umfasst.
  19. Verfahren nach einem der Ansprüche 15 bis 18, bei dem der Sender/Empfänger einen Sender/Empfänger für Codemultiplex-Vielfachzugriff umfasst.
  20. Verfahren nach einem der Ansprüche 15 bis 19, bei dem der Sender/Empfänger einen ersten Sender/Empfänger zum Senden von Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden, umfasst; und das ferner den Schritt des Betreibens des zweiten Sender/Empfängers zum Empfangen der Nachrichten, die in Reaktion auf den Zählstand in dem Zähler synchronisiert werden, umfasst.
  21. Drahtloses Kommunikationssystem, das einen Sender/Empfänger nach einem der Ansprüche 1 bis 14 umfasst.
DE60130643T 2001-07-02 2001-07-02 Sender-Empfänger für CDMA-Kommunikation mit Driftkorrektur einer Chipzählvorrichtung Expired - Lifetime DE60130643T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP01401766A EP1276252B1 (de) 2001-07-02 2001-07-02 Sender-Empfanger für CDMA-Kommunikation mit Driftkorrektur einer Chipzählvorrichtung

Publications (2)

Publication Number Publication Date
DE60130643D1 DE60130643D1 (de) 2007-11-08
DE60130643T2 true DE60130643T2 (de) 2008-07-17

Family

ID=8182791

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60130643T Expired - Lifetime DE60130643T2 (de) 2001-07-02 2001-07-02 Sender-Empfänger für CDMA-Kommunikation mit Driftkorrektur einer Chipzählvorrichtung

Country Status (4)

Country Link
US (1) US7218669B2 (de)
EP (1) EP1276252B1 (de)
AT (1) ATE374466T1 (de)
DE (1) DE60130643T2 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6337980B1 (en) * 1999-03-18 2002-01-08 Hughes Electronics Corporation Multiple satellite mobile communications method and apparatus for hand-held terminals
US7046718B1 (en) * 2000-09-25 2006-05-16 The Directv Group, Inc. Coherent phase synchronous code division multiple access communications from multiple transponder platforms
GB2398970B (en) * 2003-02-28 2005-06-01 Motorola Inc Communication systems and apparatus and methods for use therein
US8160032B2 (en) * 2007-12-07 2012-04-17 Intel Corporation Coordinating communications among wireless personal area network devices
CN102869085B (zh) * 2012-09-12 2015-05-20 大唐移动通信设备有限公司 基站时钟同步系统和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3849733A (en) * 1973-05-23 1974-11-19 Bell Telephone Labor Inc Interface apparatus for receiving and monitoring pilot signals which control a timing signal generator
US5414729A (en) * 1992-01-24 1995-05-09 Novatel Communications Ltd. Pseudorandom noise ranging receiver which compensates for multipath distortion by making use of multiple correlator time delay spacing
US6788663B2 (en) * 2002-05-03 2004-09-07 Qualcomm Inc System, method, and apparatus for generating a timing signal

Also Published As

Publication number Publication date
US20030231613A1 (en) 2003-12-18
EP1276252B1 (de) 2007-09-26
US7218669B2 (en) 2007-05-15
DE60130643D1 (de) 2007-11-08
EP1276252A1 (de) 2003-01-15
ATE374466T1 (de) 2007-10-15

Similar Documents

Publication Publication Date Title
DE69534524T2 (de) Verfahren und Gerät zur Synchronisierung in einem Direktsequenzspreizspektrumkommunikationssystem
DE60125546T2 (de) Mehrwegparameterschätzung in spreizspektrumkommunikationssystemen
DE60207747T2 (de) Kodeverfolgungsschleife mit automatischer Leistungsnormierung
EP1173944B1 (de) Verfahren zur bildung bzw. ermittlung einer signalfolge, verfahren zur synchronisation, sendeeinheit und empfangseinheit
DE69629724T3 (de) Kombiniertes gps und kommunikations-system mit geteilten schaltkreisen
DE69635140T2 (de) Adaptives signalangepasstes Filter
DE60118715T2 (de) Korrelationsfilter für den rückkanal in einem drahtlosen cdma system mit mehreren bit-raten
DE69728211T2 (de) Mobilkommunikationssystem mit Senderleistungssteuerung
DE60024814T2 (de) Verfahren und gerät zum erfassen eines spreizspektrumsignals
DE60110873T2 (de) Verfahren und Gerät zur Zeitschlitzerfassung und zur Frequenzversatzkorrektur
DE60306173T2 (de) Bewertung der verzögerungsschätzungsqualität
DE69925656T2 (de) Spreizspektrumkommunikationssystem unter Verwendung von einem einzigen Spreizcode
DE69935072T2 (de) Verfahren, vorrichtung und system zur bestimmung der position von einem frequenzsynchronisationssignal
DE60025136T2 (de) Empfangsvorrichtung und Empfangsverarbeitungsverfahren
DE69937838T2 (de) Ein cdma-empfänger der nachführeinrichtungen zwischen mehreren rake-zweigen teilt
EP1825631A1 (de) Synchronisationsvorrichtung und vorrichtung zum erzeugen eines synchronisationssignals
DE60220351T2 (de) Korrektur der Frequenzverschiebung bei WCDMA
DE69926767T2 (de) Endgerät mit parallelem pilotsucher
DE69919729T2 (de) Empfänger zur positionsbestimmung mit effizientem phasendrehglied
DE10317905A1 (de) Verfahren und Gerät zur Synchronisierung eines Funktelemetriesystems mittels eines Übertragungsreferenz-Verzögerungssprung-Ultrabreitband-Pilotsignals
DE60107350T2 (de) Verfahren und Vorrichtung zur Korrektur der Frequenzverschiebung und Speichermedium zur Speicherung des Steuerungsprogramms dafür
DE60014779T2 (de) Einrichtung zum Umkehrspreitzen des Spectrum, Einrichtung zur Zeitpunktdetedtion, Kanalschätzer, Frequensmessung und automatische Frequenzregelung
DE102012016502A1 (de) Chirp-empfänger
DE69904957T2 (de) Positionsbestimmung mit geringem speicherplatz
DE60308829T2 (de) Gps-empfängervorrichtung und empfangsverfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition