DE60035367T2 - Sucher mit programmierbarem signalangepasstem filter zum suchen nach mehreren pilotsignalen - Google Patents

Sucher mit programmierbarem signalangepasstem filter zum suchen nach mehreren pilotsignalen Download PDF

Info

Publication number
DE60035367T2
DE60035367T2 DE60035367T DE60035367T DE60035367T2 DE 60035367 T2 DE60035367 T2 DE 60035367T2 DE 60035367 T DE60035367 T DE 60035367T DE 60035367 T DE60035367 T DE 60035367T DE 60035367 T2 DE60035367 T2 DE 60035367T2
Authority
DE
Germany
Prior art keywords
data
sets
sums
values
despread
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
DE60035367T
Other languages
English (en)
Other versions
DE60035367D1 (de
Inventor
Gilbert C. San Diego SIH
Ian San Diego FEVRIER
Inyup San Diego KANG
Christopher San Diego PATRICK
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of DE60035367D1 publication Critical patent/DE60035367D1/de
Publication of DE60035367T2 publication Critical patent/DE60035367T2/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
    • 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/709Correlator structure
    • H04B1/7093Matched filter type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • 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/70707Efficiency-related aspects
    • H04B2201/7071Efficiency-related aspects with dynamic control of receiver resources
    • H04B2201/70711Efficiency-related aspects with dynamic control of receiver resources with modular structure

Description

  • HINTERGRUND DER ERFINDUNG
  • I. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Kommunikationen. Insbesondere betrifft die vorliegende Erfindung ein neues und verbessertes Verfahren und eine Vorrichtung zum Detektieren von einem oder mehreren Pilotsignalen mit einem programmierbaren Optimalfilter- bzw. Matched-Filter-Suchelement.
  • II. Beschreibung des relevanten Hintergrunds
  • Pseudozufallsrausch-(PN = pseudo random noise) Sequenzen werden gemeinhin in Direktsequenz-Spreizspektrumkommunikationssystemen verwendet, wie solchen, welche in dem IS-95 über die Luft Schnittstellenstandard und seinen Derivaten wie IS-95-A und ANSI J-STD-008 beschrieben sind (hierin nachfolgend zusammenfassend als der IS-95 Standard bezeichnet), verbreitet durch die Telecommunication Industry association (TIA) und hauptsächlich innerhalb von zellularen Telekommunikationssystemen verwendet. Der IS-95 Standard beinhaltet Codemultiplex-Vielfachzugriff (CDMA = code division multiple access) Signalmodulationstechniken zum Ausführen von mehreren Kommunikationen gleichzeitig über die gleiche HF Bandbreite. Wenn kombiniert mit zusammenfassender Leistungssteuerung, erhöht die Ausführung von mehreren Kommunikationen über die gleiche Bandbreite die gesamte Anzahl von Anrufen und anderen Kommunikationen, welche in einem drahtlosen Kommunikationssystem durch unter anderem Erhöhung der Frequenzwiederverwendung ausgeführt werden können, verglichen mit anderen drahtlosen Telekommunikationstechnologien. Die Verwendung von CDMA Techniken in einem Mehrfachzugriffkommunikationssystem ist in dem U.S. Patent Nummer 4,901,307 , benannt „SPREAD SPECTRUM COMMUNICATION SYSTEM USING SATELLITE OR TERRESTRIAL REPEATERS"; und U.S. Patent Nummer 5,103,459 , benannt „SYSTEM AND METHOD FOR GENERATING SIGNAL WAVEFORMS IN A CDMA CELLULAR TELEPHO NE SYSTEM", beschrieben, welche beide dem Bevollmächtigten der vorliegenden Erfindung zugeordnet sind.
  • 1 liefert eine hochgradig vereinfachte Darstellung eines zellularen Telefonsystem, welches gemäß der Verwendung des IS-95 Standards konfiguriert ist. Während des Betriebs führt ein Satz von Teilnehmereinheiten 10a-d drahtlose Kommunikation durch Aufbauen von einer oder mehreren HF Schnittstellen mit einer oder mehreren Basisstationen 12a-d unter Verwendung von CDMA modulierten HF Signalen aus. Jede HF Schnittstelle zwischen einer Basisstation 12 und einer Teilnehmereinheit 10 besteht aus einem Vorwärtsverbindungssignal, welches von der Basisstation 12 gesendet wird, und einem Rückverbindungssignal, welches von der Teilnehmereinheit gesendet wird. Unter Verwendung dieser HF Schnittstellen wird eine Kommunikation mit einem anderen Benutzer im Allgemeinen mittels einer Mobiltelefonvermittlungsstelle (MTSO = mobil telephone switching office) 14 und einem öffentlich vermittelten Telefonnetzwerk (PSTN = public switched telephone network) 16 durchgeführt. Die Verbindungen zwischen Basisstationen 12, MTSO 14 und PSTN 16 werden normalerweise über Drahtleitungsverbindungen ausgeführt, obwohl die Verwendung von zusätzlichen HF- oder Mikrowellenverbindungen auch bekannt ist. Jede Teilnehmereinheit 10 kommuniziert mit einer oder mehreren Basisstationen 12 unter Verwendung eines Rake-Empfängers. Ein RAKE-Empfänger ist in dem U.S. Patent Nummer 5,109,390 , benannt „DIVERSITY RECEIVER IN A CDMA CELLULAR TELEPHONE SYSTEM", dem Bevollmächtigten der vorliegenden Erfindung zugeordnet, beschrieben. Ein RAKE-Empfänger wird typischerweise aus einem oder mehreren Suchelementen zum direkten Lokalisieren und Mehrwegausbreiten von Pilot von benachbarten Basisstationen und zwei oder mehr Fingern zum Empfangen und Kombinieren von Informationssignalen von diesen Basisstationen ausgebildet. Sucher sind in, benannt „MULTIPATH SEARCH PROCESSOR FOR SPREAD SPECTRUM MULTIPLE ACCESS COMMUNICATION SYSTEMS"; veröffentlicht als WO 9610873A1 , dem Bevollmächtigten der vorliegenden Erfindung zugeordnet, beschrieben.
  • Inhärent in dem Design der Direktsequenzspreizspektrumskommunikationssysteme ist die Erfordernis, dass ein Empfänger seine PN Sequenzen zu denjenigen der Basisstation ausrichten muß. In IS-95 verwendet jede Basisstation und Teilnehmereinheit die exakt gleichen PN Sequenzen. Eine Basisstation unterscheidet sich selbst von anderen Basisstationen durch Einfügen eines einzigartigen Versatzes in der Generation ihrer PN Sequenzen. In IS-95 Systemen werden alle Basisstationen durch ein ganzzahliges Vielfaches von 64 Chips versetzt. Eine Teilnehmereinheit kommuniziert mit einer Basisstation durch Zuweisen von mindestens einem Finger zu der Basisstation. Ein zugewiesener Finger muß den geeigneten Versatz in seiner PN Sequenz einfügen, um mit dieser Basisstation zu kommunizieren. Es ist auch möglich, Basisstationen durch Verwendung von einzigartigen PN Sequenzen zu differenzieren, für jede, anstatt Versatze der gleichen PN Sequenz. In diesem Fall würden Finger ihre PN Generatoren einstellen, um die geeignete PN Sequenz für die Basisstation, welcher er zugewiesen ist, zu erzeugen.
  • Teilnehmereinheiten lokalisieren Basisstationen durch Verwendung von Suchelementen bzw. Suchern. Ein schnelles, flexibles, und Hardwareeffizientes Optimalfilter-Suchelement ist in dem U.S. Patent US 6,363,108 , (hierin nachfolgend die '010 Anmeldung), benannt „PROGRAMMABLE MATCHED FILTER SEARCHER", angemeldet am 31. März 1999, dem Bevollmächtigten der vorliegenden Erfindung zugeordnet, beschrieben. Das Suchelement fügt eine Flexibilität zu den parallelen Berechnungsmerkmalen eines Optimalfilterelements hinzu, wodurch es erlaubt wird eine variable Anzahl von kohärent Akkumulationen und eine variable Anzahl von nicht-kohärenten Akkumulationen mit hoher Geschwindigkeit für ein weites Gebiet von Suchhypothesen auf eine Ressourcen effiziente Art und Weise auszuführen. Viele der Merkmale dieses Suchers sind auch auf die vorliegende Erfindung anwendbar, und werden in größerer Detailliertheit unten stehend beschrieben.
  • Die FCC hat bestimmt, dass bis Oktober 2001, Anbieter den Ort eines zellularen Telefonbenutzers unter Verwendung eines Notruf-911-Anrufs innerhalb von 125 Metern liefern müssen. Zusätzlich zum Vorsehen von verpflichtenden Ortsdiensten sind drahtlose Anbieter im Liefern von Umsatz generierenden ortsbasierten Diensten wie Verkehrsassistenz, Verkehrsinformationen, gelbe-Seiten-Directory Assistenz, und Ähnliches interessiert.
  • Eine Vielzahl von Ansätzen kann unternommen werden, um dieses Problem zu lösen, unter anderem Lösungen basierend auf dem Global Positioning System (GPS). Das Global Positioning System beinhaltet eine Konstellation von 24 Satelliten. Jeder Satellit beinhaltet eine Uhr bzw. einen Takt, welche mit GPS Zeit synchronisiert gehalten wird, und zwar durch Überwachen von Bodenstationen. GPS Empfänger auf dem Boden können Signale verwenden, welche von mehreren GPS Satelliten empfangen wurden, um Position und Zeit zu bestimmen. Jeder GPS Satellit sendet zwei Mikrowellenträger: einen 1575,42 MHz L1 Träger, welcher die Signale trägt, welche für Standard Positioning Service (SPS) verwendet werden, und einen 1227,60 MHz 12 Träger, welcher Signale trägt für Precise Positioning Service (PPS). PPS wird durch Regierungsbehörden verwendet und erlaubt einen höheren Grad von Genauigkeit in der Positionierung.
  • Der L1 Träger wird durch den Coarse Acquisition (C/A) Code moduliert, ein 1023-Chip Pseudozufallscode, welcher mit 1023 Mcps gesendet wird, welcher für zivile Positionslokalisierungsdienste verwendet wird. Jeder GPS Satellit hat seinen eigenen CIA Code, welcher sich alle 1 ms wiederholt. Der Code, welcher für PPS verwendet wird, ist ein 10,23 MHz Code, welcher 267 Tage in der Länge ist. Jeder GPS Satellit hat einen unterschiedlichen C/A Code, welcher zu einer Familie von Codes gehört, welche als Gold-Codes benannt werden. Gold-Codes werden verwendet aufgrund dessen, weil deren Kreuzkorrelation zwischen ihnen klein ist. Jeder GPS Satellit generiert eine einzigartige C/A Codesequenz. Ein GPS Empfänger reproduziert die C/A Sequenz für einen bestimmten Satelliten und korreliert sie mit dem empfangenen Signal über alle möglichen Versatze. Wenn Korrelation gefunden wird, wird die Startzeit des Codes als die Ankunftszeit (TOA = time of arrival) bei dem Empfänger bezeichnet. Diese TOA ist ein Mass des Abstands zu dem Satelliten, mit einem Versatz aufgrund einer Fehlanpassung zwischen der Empfänger-Uhr und GPS Zeit. Die TOA wird auch als der Pseudoabstand bezeichnet. Sobald der Pseudoabstand von jedem der vier Satelliten erhalten wurde, kann eine Positionsfixierung berechnet werden durch Lösung der Schnittpunkte von vier Sphären. Die Verwendung von vier Satelliten erlaubt, dass Unsicherheit der Empfängeruhr herausgelöscht wird.
  • GPS Positionslokalisierung kann basierend nur auf Signalen durchgeführt werden, welche von GPS Satelliten empfangen werden, wie gerade beschrieben wurde, aber kann auch erreicht werden unter Verwendung eines hybriden Schemas. Solche hybriden Schemata sind oft nützlich, wenn zusätzlich Information verfügbar ist, um die Komplexität der Ortslokalisierungsaufgabe zu verringern. Ein Beispiel ist ein drahtloses Netzwerk, in welchem die Basisstation Information liefern kann, um die benötigten Suchfenster einzuschränken, oder genaue Zeit korrespondierend zu GPS Zeit liefern kann. Ein solches System ist in dem U.S. Patent 6,321,090 , benannt „MOBILE COMMUNICATION SYSTEM WITH POSITION DETECTION TO FACILITATE HARD HANDOFF", angemeldet am 6. November 1998, dem Bevollmächtigten der vorliegenden Erfindung zugeordnet, beschrieben.
  • Es gibt eine Gemeinsamkeit in der Hardware, welche zur Suche nach CDMA Piloten (oder Ähnliches) benötigt wird, und derjenigen, welche zur Positionsbestimmung benötigt wird (egal ob reines GPS oder irgendein Hybrid). Jedoch im Gegensatz zu den einfach Pilotcodesystemen wie denjenigen, welche in IS-95 beschrieben sind, würden Mehrfachpilotcodesysteme wie GPS inhärent von der Fähigkeit zum Suchen von mehr als einem Pilotcode gleichzeitig profitieren. Viele Einrichtungen, wie die Teilnehmereinheit 10 in 1, werden benötigen, beide Typen von Suche während ihres normalen Betriebs durchzuführen. Es gibt einen Bedarf im Stand der Technik für ein schnelles, flexibles, Hardware-effizientes Suchelement, welches CDMA Pilotsuche mit Mehrfachpilotsuche für Systeme wie GPS Positionsbestimmung kombiniert.
  • Weitere Aufmerksamkeit wird auf das Dokument WO 09/41846 A gelenkt, welches einen flexiblen Laufkorrelator zur Verwendung in einem Spreizspektrumsempfänger zum Teilen von Basisbandsignalsamples in unterschiedliche Gruppen, Zuordnung von jeder Gruppe zu einem unterschiedlichen Abschnitt eines Spreizcodes, und Kombinieren von einigen der Signalsamples mit korrespondierenden Werten in dem Spreizcodeabschnitt, betrifft. Die Gruppierungen und Spreizcodeabschnitte können während des Betriebs des Empfängers verändert werden, um die Performance des Empfängers unter unterschiedlichen oder sich verändernden Bedingungen zu maximieren. Zusätzlich können das Sample und die Spreizcodewertkombinationen weiter auf unterschiedliche Arten und Weisen kombiniert werden, und die weiteren Kombinationen können während des Betriebs des Empfängers verändert werden. Das Basisbandsignal kann entweder gleichmäßig oder nicht gleichmäßig gesampelt werden. Die Phase und die Frequenz des Basisbandsamplings können während des Betriebs des Empfängers derart eingestellt werden, dass Samples sehr nah zu der optimalen Samplingposition genommen werden, an der Spitze einer Chipwellenform in dem Basisbandsignal.
  • Weitere Aufmerksamkeit wird auf das Dokument WO 97/14056 A gelenkt, welches ein kombiniertes GPS- und Kommunikationssystem betrifft, welches einen gemeinsam verwendeten Schaltkreis hat. Die kombinierten Systeme beinhalten eine Antenne zum Empfangen von Daten, welche anzeigend für GPS Signale sind, einen Frequenzkonvertierer, welcher mit der Antenne verbunden ist, einen Frequenzsynthesizer, welcher mit dem Frequenzkonvertierer verbunden ist, einen analog-zu-digital Konvertierer, welcher mit dem Frequenzkonvertierer verbunden ist, und einen Prozessor, welcher mit dem Frequenzkonvertierer verbunden ist. Der Prozessor verarbeitet die Daten, welche anzeigend für GPS Signale sind, um einen Pseudoabstand basierend auf den Daten, welche anzeigend für GPS Signale sind, zu bestimmen. Der integrierte Kommunikationsempfänger beinhaltet eine mehrfach verwendete Komponente, welche mindestens eine der Antenne, des Frequenzkonvertierers, des Frequenzsynthesizers, und des analog-zu-digital Konvertierers ist. Typischerweise demoduliert der Prozessor auch Kommunikationssignale, welche empfangen wurden, wie auch steuert die Modulation von Daten, welche als ein Kommunikationssignal durch eine Kommunikationsverbindung gesendet werden sollen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß der vorliegenden Erfindung wird ein programmierbares Optimalfilter-Suchelement gemäß Anspruch 1 vorgesehen, und ein Verfahren zum Durchführen von programmierbarer Optimalfilter-Suche, gemäß Anspruch 11, werden vorgesehen. Ausführungsbeispiele der Erfindung sind in den abhängigen Ansprüchen beschrieben.
  • Ein neues und verbessertes Verfahren und eine Vorrichtung zum Suchen wird beschrieben. Der Sucher kombiniert die Fähigkeit zum Suchen von mehreren Versatzen von einzelnen Piloten, wie diejenigen, welche in dem IS-95 System gefunden werden, mit der Fähigkeit zum Suchen von mehreren Piloten, wie diejenigen, welche in dem GPS Ortsbestimmungssystem gefunden werden. Beide Typen von Suche können in einer einzigen Architektur durchgeführt werden, welche die parallelen Berechungsmerkmale eines Optimalwertfilters mit der Flexibilität des Erlaubens einer variablen Anzahl von kohärent Akkumulationen und einer variablen Anzahl von nicht kohärent Akkumulationen, erlaubt, welche bei hoher Geschwindigkeit für einen weiten Bereich von Suchhypothesen auf eine Ressourcen effiziente Art und Weise durchgeführt werden sollen. Diese Erfindung erlaubt die parallele Verwendung der Optimalfilterstruktur in einer Zeit-geschlitzten Art und Weise zum Suchen von mehreren Fenstern. Zusätzlich erlaubt das Suchelement optionales unabhängiges Walshfreilegen für jedes Suchfenster. Der Zeit teilende Ansatz erlaubt optionales Frequenzsuchen bei jedem Versatz.
  • I und Q Kanaldaten werden unter Verwendung einer Optimalfilterstruktur entspreizt. Die Optimalfilterstruktur kann als ein großer Optimalfilter mit einem einzigen I/Q Dateneingang konfiguriert sein, oder er kann konfiguriert sein zum Akzeptieren einer Vielzahl von Signalen, wodurch der Optimalfilter im Wesentlichen in eine Vielzahl von kleineren Optimalfiltern aufgeteilt wird. Die Vielzahl von Eingängen können unabhängige Signale von einer Vielzahl von Quellen sein, wie mehrere Satelliten in einem GPS Netzwerk. Die In-Phase und Quadratur-Amplituden von dem Optimalfilter werden in kohärente Akkumulatoren zum Summieren einer programmierbaren Dauer von Zeit geliefert. Die kohärente Akkumulation kann für die gesamte Optimalfilterstruktur auftreten, oder mehrere Akkumulationen können basierend auf den Untersätzen von dem Optimalfilter generiert werden, welche jeder der Vielzahl von Eingangssignalen zugeordnet sind. Diese kohärenten Akkumulationen sind verfügbar zur weiteren Verarbeitung in einer Einrichtung wie einem DSP. Für einfache Pilotsuche werden die kohärenten Amplitudenakkumulationen quadriert und summiert zum Erzeugen eines Energiemaßes. Die Energiemessung wird für eine zweite programmierbare Zeit zum Durchführen von nicht kohärenter Akkumulation akkumuliert. Der resultierende Wert wird zum Bestimmen der Wahrscheinlichkeit eines Pilotsignals bei diesem Versatz verwendet.
  • Jede Optimalfilterstruktur beinhaltet ein N-wertiges Schieberegister zum Empfangen von Daten, eine programmierbare Bank von Taps zum Durchführen von Entspreizen und optionaler Walshabdeckung, und eine Addiererstruktur zum Summieren der resultierenden Filtertapberechnungen. Die Optimalfilterstruktur kann optional auf eine Zeit geteilte Art und Weise zum Suchen von mehreren Fenstern wie durch einen Multiplexer diktiert verwendet werden, welcher verschiedene Ströme von Tapwerten zum Entspreizen liefert (mit optionaler Walshfreilegung beinhaltet in den Tapwerten). Zusätzlich kann ein optionaler Phasenrotierer hinzugefügt werden zum Anwenden von gemultiplexierten Phasenwerten, und zwar zum Durchführen von Frequenzsuche. In jedem Zyklus erzeugt die Optimalfilterstruktur eine Mittelberechnung für einen bestimmten Versatz (mit optionaler Walshabdeckung und optionaler Phasenrotation), welche N Berechnungen basierend auf den Daten in dem Schieberegister beinhaltet.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Merkmale, Ziele und Vorteile der vorliegenden Erfindung werden offensichtlicher werden von der detaillierten Beschreibung, welche unten stehend gegeben wird, wenn sie zusammen mit den Zeichnungen genommen wird, in welchen gleiche Bezugszeichen korrespondierendes durchgängig identifizieren, und wobei folgendes gilt:
  • 1 ist ein Blockdiagramm eines zellularen Telefonsystems;
  • 2 ist ein Blockdiagramm eines programmierbaren Optimalfilter-Suchelements gemäß dem Stand der Technik;
  • 3 zeigt einen QPSK Entspreizer;
  • 4 zeigt einen BPSK Entspreizer;
  • 5 ist ein Blockdiagramm eines Optimalfilter-Suchelements, welches gemäß der vorliegenden Erfindung konfiguriert ist; und
  • 6A-6D beinhalten ein detaillierteres Blockdiagramm, welches gemäß der vorliegenden Erfindung konfiguriert ist;
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • 2 zeigt ein vereinfachtes Diagramm eines Suchelements, welches gemäß der Erfindung konfiguriert ist, welches in der '010 Anmeldung offenbart ist. Die Merkmale der '010 Erfindung werden hier wiederholt, gefolgt von den Modifikationen, welche gemäß der folgenden Erfindung gemacht werden sollen. Eines der neuen Merkmale der vorliegenden Erfindung ist es, dass eine erhöhte Funktionalität von GPS Suche erlaubt wird, während eine Architektur verwendet wird, welche sehr ähnlich zu derjenigen ist, welche in der '010 Anmeldung beschrieben wird.
  • I und Q Daten (hierin nachfolgend DI und DQ) kommen in die Schieberegister 400 und 402 jeweils herein. Die Größe der Optimalfilterkomponente dieser Erfindung wird durch N gegeben, der Anzahl von Speicherorten in den Schieberegistern. Daten werden kontinuierlich geladen und durch die Schiebere gister mit einer konstanten Rate geschoben. In dem exemplarischen Ausführungsbeispiel werden Daten mit der zweifachen Chiprate geladen. Dies erlaubt das Suchen auf jeder Chip- und Halb-Chip-Grenze.
  • Die Daten in den Schieberegistern 400 und 402 werden dann mit N-Bit-Teilen der I und Q PN Sequenzen (nachfolgend PNI und PNQ) korreliert, welche in den Entspreizer 410 geladen werden. Zum Entspreizen eines QPSK Spreizpilotsignals wird komplexes Entspreizen durchgeführt: (DI + jDQ)·(PNI + jPNQ) = (DIPNI + DQPNQ) + j(DQPNI – DIPNQ).
  • 3 zeigt eine Stufe in dem N-stufigen QPSK Entspreizer. Einer der N Werte von DI wird mit dem korrespondierenden Tap- bzw. Abgriffswert PNI in den Multiplizierer 600 multipliziert, und durch den korrespondierenden Tapwert PNQ in dem Multiplizierer 604. Ähnlich wird DQ mit den Tapwerten PN, zu PNQ in den Multiplizieren 604 und 606 jeweils multipliziert. Der Ausgang der Multiplizierer 600 und 606 wird in dem Addierer 608 summiert. Der Ausgang des Multiplizierers 604 wird von dem Ausgang des Multiplizierers 602 in dem Addierer 610 subtrahiert. Der Ausgang des Addierers 608 ist der entspreizte I Wert. Der Ausgang des Addierers 610 ist der entspreizte Q Wert. Weil es N Stufen gibt, werden N solche komplexe Resultate vorhanden sein.
  • Die vorliegende Erfindung ist auch nützlich zum BPSK Entspreizen. In diesem Fall gibt es nur eine einzige PN Sequenz zum Korrelieren damit, welche die Tapwerte für sowohl das I wie auch Q in dem Entspreizer 410 liefert. Der in 3 gezeigte Schaltkreis kann wie er ist verwendet werden, mit einer einzigen PN Sequenz, welche zu sowohl PNI wie auch PNQ geliefert wird. 4 zeigt den vereinfachten Entspreizer, welcher verwendet werden kann, wenn nur BPSK Entspreizen gewünscht wird. DI und DQ werden mit der PN Sequenz in den Multiplizierern 612 und 614 jeweils multipliziert. Die Ergebnisse werden in dem Addierer 616 summiert, um den entspreizten I Wert zu erzeugen. Der Ausgang des Multiplizierers 612 wird von dem Multiplizierer 614 in dem Addierer 618 subtrahiert, um den entspreizten Q Wert zu erzeugen. Wiederum gibt es N Stufen, somit wird es N komplexe Resultate geben.
  • Obwohl 3 und 4 Multiplizierer in der Verwendung zeigen, sind Vereinfachungen im Stand der Technik bekannt. Wenn die Tapwerte binär sind, wie sie in dem exemplarischen Ausführungsbeispiel sind, nur aus den Werten 1 und -1 bestehen, und das geeignete Datenformat für DI und DQ gewählt wird, kann der Entspreizschritt unter Verwendung von nur XOR-Gattern und Multiplexierern durchgeführt werden (Details sind nicht gezeigt).
  • Die N entspreizten I und entspreizten Q Werte, welche in dem Entspreizer 410 erzeugt werden, werden jeweils in den Summierern 420 und 422 summiert. Jedes Mal, wenn die Daten in den Schieberegistern 400 und 402 sich verändern, werden neue Summen in den Summierern 420 und 422 berechnet, wie in 2 gezeigt ist. Jede Summe ist eine N-Chip kohärente Akkumulation eines bestimmten Versatzes. Der Vorgang wird für eine programmierbare Anzahl von Zyklen ohne Veränderung der Tapwerte in dem Entspreizer 410 wiederholt. Zum Beispiel ist in dem exemplarischen Ausführungsbeispiel die Größe des Optimalfilters N gleich 64. Es sei eine Suchfenstergröße L von 64 angenommen, und eine kohärente Akkumulation C von 256 wurde gewünscht. In diesem Fall werden die Tapwerte, welche für den Anfang des Fensters geeignet sind, in den Entspreizer 410 geladen, und Daten werden zyklisch durch das Schieberegister hindurchgeschleust, wodurch Resultate von den Summierern 420 und 422 bei jedem Zyklus erzeugt werden.
  • Jedes Resultat wird in kohärente Akkumulatoren 430 und 432 jeweils geladen. Diese Akkumulatoren akkumulieren mehrere Akkumulationen zu einem einzigen Zeitpunkt. In dem exemplarischen Ausführungsbeispiel sind sie RAM basiert. Während jedem Zyklus wird die geeignete partielle Akkumulation erhalten, hinzugefügt zu der Ausgabe von jedem Summierer 420 und 422, und die resultierende partielle Akkumulation wird wiederum in dem RAM gespeichert. In unserem Beispiel wurden, wenn 64 Zyklen durchlaufen wurden, die ersten 64 I und Q Summen in Akkumulatoren 430 und 432 geladen. Jede dieser Summen korrespondiert zu einem C von 64, weil dies die Breite des Optimalfilters ist.
  • Während dieser Zeit wurde ein neuer Satz von Tapwerten für den Entspreizer 410 berechnet. Diese werden derart berechnet, dass die gleichen 64 Versatzhypothesen, welche in dem ersten Durchgang getestet wurden, wiederum getestet werden können. Wenn die Tapwerte nicht verändert wurden, würde ein neuer Versatz mit jedem Zyklus getestet werden, bis der gesamte PN Raum durchsucht wurde (wie ein standardmäßiges Optimalfilter-Suchelement). Die Optimalfilterprozedur wird wiederum wiederholt für weitere 64 Zyklen. Dieses Mal wird jedes Resultat mit korrespondierender partieller Akkumulation für seinen Versatz summiert, wie in Akkumulatoren 430 und 432 gespeichert. Nachdem 64 Zyklen durchlaufen wurden, besteht jede partielle Akkumulation aus zwei 64 Chip partiellen Akkumulationen, korrespondierend zu einem C von 128. Der Prozess wird zweimal mehr wiederholt, unter Veränderung der Taps jedes Mal, bis die Akkumulatoren als vier 64 Chipwerte für das gewünschte C von 256 akkumuliert haben. In dieser Konfiguration kann das Suchelement kohärente Akkumulation auf jedem C ausführen, welches ein ganzzahliges Vielfaches von N ist. Die Fenstergröße, welche kohärent durchsucht werden kann, wird durch die Anzahl von partiellen Akkumulationen bestimmt, welche in Akkumulatoren 430 und 432 gespeichert werden können. (Die obere Grenze von C wird durch die Anzahl von Bits der Präzision bestimmt, welche verwendet wird, und von Skalierungstechniken, welche verwendet werden, sofern vorhanden. Der Fachmann wird einfach Schaltkreise designen können, welche einen gewünschten C Wert aufnehmen.)
  • Das Laden von PN Tapwerten wird wie folgt durchgeführt: Die PN Sequenzen werden unterschiedlich generiert, und zwar abhängig davon, ob der gleiche Satz von Hypothesen getestet werden soll, oder ein neuer Satz beginnt. In dem exemplarischen Ausführungsbeispiel werden die PN Sequenzen über ein lineares Rückkopplungsschieberegister (LFSR = linear feedback shift register) basierend auf PN Generatoren generiert. Die Zeitgebung von Tapgeneration wird am besten mit einem Beispiel erklärt. In dem exemplarischen Ausführungsbeispiel ist der Optimaifilter N Werte breit, so dass eine N Bit-Tapsequenz generiert werden muß. Zur Einfachheit werden wir annehmen, dass sich die Daten mit einer Chiprate verändern, welche die gleiche Rate ist, mit welcher die PN Generatoren aktualisiert werden müssen. Dies steht im Gegensatz zu dem exemplarischen Ausführungsbeispiel, in welchem die Daten mit der zweifachen Chiprate aktualisiert werden, so dass zwei Datensamples zu jedem PN Zustand korreliert sind. Es sei angenommen, dass wir wünschen, C = 192 Werte für eine Fensterseite von 128 zu akkumulieren. Es sei angenommen, dass unser PN Generator die geeigneten ersten 64 I und Q Tapwerte generiert hat, welche in dem Entspreizer 410 geladen werden. 64 Sätze von Daten werden durch Schieberegister 400 und 402 zyklisch durchgeleitet. Für jeden Satz wird eine kohärente I Summe von 64 Werten berechnet und in dem nicht kohärent Akkumulator 430 gespeichert, und eine kohärente Q Summe von 64 Werten wird berechnet und in dem Akkumulator 432 gespeichert. Jede kohärente Summe korrespondiert zu einem der ersten 64 sequenziellen Versatzhypothesen, welche durchsucht werden. Weil ein C von 192 gewünscht wird, müssen die obigen 64 Zyklen dreimal wiederholt werden, um 192 zu erreichen. Jedoch müssen geeignete Schritte unternommen werden, um die PN Taps in dem Entspreizer 410 korrekt auf die hereinkommenden Daten auszurichten. Wir wünschen, dass die gleichen Versatze wiederum getestet werden, um den zweiten Satz von kohärent Werten zu erzeugen. Die PN Generatoren, welche zur Erzeugung der hereinkommenden Daten verwendet werden, wurden 64 Chips nach vorne bewegt. Wir müssen auch einen neuen Satz von PN Werten 64 Chips nach vorne laden, um die gleichen Versatze erneut zu testen. Diese Werte werden durch die PN Generatoren kreiert, während die ersten 64 Summen generiert werden. Der Prozess wird für den dritten Satz wiederholt, um kohärente Akkumulationen von 192 Chips zu kreieren.
  • Nun wurde die erste Hälfte des Suchfensters durchgeführt. Die PN Generatoren, welche zur Erzeugung der hereinkommenden Daten verwendet werden, wurden um 64 Chips nach vorne wiederum bewegt. Wenn wir eine ähnliche fortgeschrittene PN Sequenz in den Entspreizer 410 geladen haben, würden wir mehr Daten auf den ersten 64 Versatzen sammeln, was nicht benötigt ist in diesem Beispiel. Stattdessen wünschen wir, einen Versatz von 64 einzufügen, um die nächsten 64 Versatze zu testen. Wir können dies einfach erreichen, indem die PN Werte nicht aktualisiert werden (weil die PN Sequenz in den hereinkommenden Daten in Relation zu den Werten, welche derzeit in dem Entspreizer 410 sind, fortgeschritten sind). Wenn die ersten 64 Berechnungen für die zweite Hälfte des Fensters durchgeführt wurden, muß ein neuer Satz von PN Werten in den Entspreizer 410 geladen werden, um mehr Daten auf den gleichen Versatzen zu sammeln, gerade wie oben beschrieben wurde. Der Prozess wiederholt sich, bis ein Wert von 192 Chips von Daten akkumuliert wurde.
  • Wenn die kohärenten Akkumulationen der I und Q Daten wie eben beschrieben vollständig sind, werden die resultierenden Werte quadriert und summiert (I^2 + Q^2) wie in dem Energieberechner 440 gezeigt. Das Ergebnis für jeden Versatz wird in nicht kohärente Akkumulatoren 450 geladen. Dieser Akkumulator ist ein multiakkumulationsfähiger Akkumulator ähnlich zu den Akkumulatoren 430 und 432. Für die programmierbare Anzahl von nicht kohärenten Akkumulationen M werden die Werte von unabhängigen kohärenten Akkumulationen für jeden Versatz in dem Suchfenster akkumuliert. Jedes Mal, wenn die Energie in nicht kohärenten Akkumulatoren 450 gespeichert wird, werden die partiellen Akkumulationen in kohärenten Akkumulatoren 430 und 432 für andere C Berechnungen zurückgesetzt.
  • Der Fachmann wird vielfältige Lösungen verwenden, um die Resultate zu verarbeiten, welche in dem nicht kohärenten Akkumulator 450 gespeichert sind. In dem exemplarischen Ausführungsbeispiel werden die Ergebnisse des nicht kohärenten Akkumulators 450 zu einem DSP 460 geliefert, wo die Werte untersucht werden, um zu bestimmen, welcher Versatz in dem Suchfenster ist, sofern einer vorhanden ist, wahrscheinlich zu dem Ort eines Pilotsignals korrespondiert. Der DSP 460, welcher jeder DSP oder Mikroprozes sor sein kann, welcher zum Ausführen der gewünschten Operationen in der Lage ist, kann alle der Optimalfiltersuchprozeduren steuern. Er kann zu dem Suchelement dediziert sein, oder die Suchfunktionen können nur einen Teil der verschiedenen Aufgaben ausmachen, welche der DSP 400 in dem Betrieb der Teilnehmereinheit durchführt. Der gesamte Prozess wie gerade beschrieben kann wiederholt werden für mehrere Suchfenster, sofern benötigt.
  • 5 zeigt das Suchelement von 2, welches gemäß der vorliegenden Erfindung modifiziert ist. Gleich bezeichnete Objekte sind identisch in den beiden Figuren, und die Modifikationen werden unten stehend detailliert ausgeführt.
  • N-wertige Schieberegister 400 und 402 von 2 wurden durch Serien von M-wertigen Schieberegistern 401A-K und 403A-K jeweils ersetzt. Jedes M-wertige Schieberegister 401A-K und 403A-K hat einen auswählbaren Eingang, welcher eingestellt werden kann, um eine GPS Eingabe (aus GPSI1-k bzw. GPSQ1-k) oder die Ausgabe des vorherigen M-wertigen Schieberegisters (außer für die anfänglichen Register 401A und 403A, welche jeweils die CDMA I und Q Sequenzen wählen) auszuwählen.
  • Wenn für die CDMA Pilotsuche konfiguriert, wie oben stehend beschrieben, wird jedes M-wertige Register konfiguriert, um als seinen Eingang den Ausgang des vorherigen M-wertigen Registers zu wählen (außer für die anfänglichen Register 401A und 403A, welche jeweils die CDMA I und Q Sequenzen wählen). In diesem Modus funktionieren die M-wertigen Schieberegister 401A-K und 403A-K identisch zu den N-wertigen Schieberegistern 400 und 402 jeweils, welche sie ersetzen.
  • Wenn sie zur GPS Suche konfiguriert sind, wählt jedes M-wertige Schieberegister 401A-K oder 403A-K als seinen Eingang die In-Phase oder Quadratur-Komponente des GPS Signals aus, welches es dekodieren soll, namentlich GPSI1-k und GPSQ1-k, jeweils. Der Fachmann wird erkennen, dass eine Vielzahl von Konfigurationen der M-wertigen Register möglich sind. Zum Bei spiel, wenn K Register verfügbar sind, aber nur K/2 Pilote gesucht werden müssen, können die K Register in Paaren konfiguriert sein, um K/2 2M-wertige Register zu bilden. Implementierer dieser Erfindung können den Grad von unabhängiger Programmierbarkeit der ausgewählten Ausgänge von M-wertigen Schieberegistern 401A-K und 403A-K auswählen, um zu ihren jeweiligen Anforderungen zu passen.
  • Die Ausgabe des M-wertigen Schieberegisters 401A-K und 403A-K werden dann in dem Entspreizer 410 in der oben in Bezug auf 3 und 4 beschriebenen Art und Weise entspreizt. Die PN Sequenzen für das Entspreizen werden basierend darauf ausgewählt, ob CDMA Pilotsuche oder GPS Pilotsuche benötigt wird. Die geeigneten Codes werden in den Entspreizer 410 geladen. In 5 sind nur ein einziger In-Phasecode (PNI) und ein einziger Quadratur-Phasecode (PNQ) als Eingänge zu dem Entspreizer 410 gezeigt. Diese Konfiguration benötigt, dass die K GPS Codes seriell aneinandergefügt und geladen werden. Der Fachmann wird wissen, wie zusätzliche Taps vorgesehen werden, um zu erlauben, dass mehrere Abschnitte des Entspreizers mit GPS oder CDMA Codes geladen werden, und diese Option wird unten stehend mit Bezug auf 6D detailliert ausgeführt. (man beachte, dass CDMA und GPS Pilotsignale die Optionen sind, welche in dem exemplarischen Ausführungsbeispiel der Erfindung ausgewählt wurden. Der Fachmann wird erkennen, dass die Erfindung einfach für andere Situationen verwendbar ist, in welchen eine variable Anzahl von Quellen mit einer variablen Anzahl von unterschiedlichen PN Sequenzen gesucht werden muß.)
  • Summierer 420 und 422 von 2 werden in 5 durch partielle Summierer 421A und 432A gefolgt von zusätzlichen Summierern 421B und 423B ersetzt. Summierer 121A berechnet K Summen der entspreizten In-Phase Resultate und der Summierer 423A berechnet K Summen der entspreizten Quadratur-Phase Resultate. Diese Resultate sind die vollständigen Summen wenn das Suchelement im GPS Modus betrieben wird, und die Resultate werden zu dem mux bzw. Multiplexerelement 433 und mux 434 jeweils geliefert. Wenn das Suchelement zur CDMA Pilotsuche konfiguriert ist, repräsen tieren die K Summen partielle Summen, und sie müssen in Summierern 421B und 423B jeweils summiert werden. Die Resultate von Summierern 421B und 423B werden zu muxes 433 und 434 geliefert.
  • Muxes 433 und 434 werden verwendet, um zwischen den partiellen Summen auszuwählen (Welche vollständige Summen für die K individuellen GPS Pilote repräsentieren) und der vollständigen Summe, welche zur CDMA Pilotsuche verwendet wird. Die Ergebnisse werden zu kohärenten Akkumulatoren 430 und 432 jeweils geliefert. Im CDMA Modus funktionieren kohärente Akkumulatoren 430 und 432 wie oben stehend mit Bezug auf 2 beschrieben wurde. Ohne Modifikation ist nur das Speicherelement der Akkumulatoren während des GPS Modus nützlich, die Ergebnisse müssen zu einem Prozessor wie der DSP 460 geliefert werden, wie gezeigt ist, zur kohärenten Akkumulation. Eine weitere Option ist es, kohärente Akkumulatoren 430 und 432 in einer programmierbaren Art und Weise herzustellen, und zwar derart, dass die integrierten Addierer (nicht gezeigt) erzeugt konfiguriert werden können, um K Akkumulationen zu erzeugen, wenn GPS Suche durchgeführt wird. In jedem Fall werden in dem exemplarischen Ausführungsbeispiel die Resultate zu dem DPS 460 zur Energieberechnung, nicht kohärenten Akkumulation, Spitzendetektion und anderer Verarbeitung, welche notwendig ist zur Pseudoabstandsgeneration geliefert. Dies ist nicht zwingend, weil Hardware, welche zur CDMA Pilotdetektion verwendet wird, verwendet werden kann, um auch Werte zur GPS Detektion zu berechnen. Jedoch müssten, anstatt eines einzigen Pfads, wie es der Fall ist für CDMA, K Pfade konstruiert werden, um die K gewünschten Resultate zu liefern. Dies wurde K Mal die Hardware oder eine Erhöhung von Faktor K in der Verarbeitungsgeschwindigkeit benötigen (wenn die existierende Hardware zeitlich aufgeteilt ist).
  • Die Ergebnisse von den kohärenten Akkumulatoren 430 und 432 werden zu dem Energieberechner 440, dem nicht kohärenten Akkumulator 450, und dann zu dem DSP 460 zur Verarbeitung in der oben stehend mit Bezug auf 2 beschriebenen Art und Weise geliefert.
  • 6A bis 6D zeigen das exemplarische Ausführungsbeispiel der vorliegenden Erfindung. Dieses Ausführungsbeispiel ist konfiguriert, um CDMA Suche oder gleichzeitige Suche von acht GPS Satelliten mit minimalem Einfluss oder Erhöhung in der Hardwareanforderung des CDMA Suchelements, welches in der '010 Anmeldung beschrieben ist, zu unterstützen.
  • In 6A treten empfangene Signale in die Antenne 700 ein, und HF Verarbeitungsaufgaben, wie Verstärkung, Herunterkonvertierung, Filterung und A/D Konvertierung werden in dem Empfänger 702 ausgeführt. Die Ergebnisse werden zu dem optionalen Optimalfilter 704 und dem mux 706 geliefert. Der mux 706 wählt die gefilterte oder nicht gefilterte Version aus, welche durch die acht GPS Frontends verarbeitet werden soll, bestehend aus Blöcken 708A-G, 710A-G, und 712A-G. Code-Doppler-Einstellblöcke 708A-G empfangen das Signal von dem mux 706. Die resultierenden Code-Dopplereingestellten Signale werden in Rotatoren 710A-H jeweils verarbeitet, um die unabhängigen Frequenzdopplereffekte von den acht Satelliten zu akkumulieren. Diese resultierenden Signale werden in Dezimierern 712A-D dezimiert. Die Dezimierung ist optional. In dem exemplarischen Ausführungsbeispiel werden die digitalen IQ Sampels, welche von dem Empfänger 702 kommen, mit chipx8, oder acht Mal der Chiprate, gesampelt. Die exemplarischen Dezimatoren 712A-H liefern Ausgangssignale, welche bei Raten von chipx8 (keine Dezimierung), chipx4 oder chipx2 sein können. Die Ausgänge der Dezimatoren 712A-H sind PATH_1 bis PATH_8 jeweils benannt.
  • 6B zeigt den exemplarischen Code-Dopplereinstellblock. Er ist als Code-Dopplereinstellblock 708A benannt, aber ist anzeigend für Blöcke 708A-H. IQ Daten von dem mux 706 treten ein und werden zu der Tapverzögerungsleitung 716 geliefert, welche acht Taps in dem exemplarischen Ausführungsbeispiel hat. Die IQ Daten gehen auch zu dem optionalen Interpolierfiltern 714A. Der Ausgang des Interpolierfilters 714A wird zu der Verzögerungsleitung bzw. -linie 718A geliefert, welche auch 8 Taps in dem exemplarischen Ausführungsbeispiel hat. Jeder Ausgang der Tapverzögerungslinien 716A und 718A ist selektiv durch einen DSP (DSP 820 in 6C) gesteuert. Der mux 720A wählt einen Ausgang von jeder Tapverzögerungslinie 716A oder 716B aus, und liefert den Ausgang zum dem Rotator 710A, wie oben stehend beschrieben wurde.
  • In 6C sind Signale PATH_2 bis PATH_8 gezeigt, welche in die muxes 802B-H jeweils eintreten. Diese muxes werden verwendet, um den Eingang zu den Tapverzögerungslinien (TDL = tap delay line) 800B-H zwischen Signalen PATH_2 bis PATH_8 und dem Ausgang des vorherigen TDL, 800A-G, jeweils zu schalten. PATH_1 kommt direkt in TDL 800A. Der Fachmann wird die Option erkennen, den gesamten Pfad von der Antenne 700 durch zu PATH_1 derart zu programmieren, dass er die CDMA Pilotsuchdaten oder Daten von einem der acht GPS Suchpilote repräsentiert. Jeder der TDL 800A-H ist von der Länge 16 mit 8 Tabs. Dies erlaubt die Berechnung auf halb-chip Grenzen. Die Ergebnisse von jedem der TDL 800A-H werden zu den QPSK Entspreizern 804A-H gerichtet, wo Entspreizen mit jeder PN Sequenz für CDMA Pilotsuche auftritt, benannt CDMA_PN, oder einer der GPS Grobaquisitionssequenzen CA_1_A bis CA_8_A.
  • Als eine Alternative, wie mit Bezug auf den Entspreizer 410 in 5 gezeigt ist, können die Codes CA_1_A bis CA_8_A auf den einfach verketteten Eingang zu den Entspreizern 804A-H sequenziert werden, wie durch den Eingang CDMA_PN gezeigt ist. In dem exemplarischen Ausführungsbeispiel, wie in 6C gezeigt ist, geht jede der Sequenzen CA_1_A bis CA_8_A jeweils direkt in die Entspreizer 804A-H. Diese Generation dieser Sequenzen ist in 6D gezeigt. Separate Goldcodegeneratoren für jeden Kanal (nicht gezeigt) erzeugen Sequenzen CA_1 bis CA_8, welche in die TDLs 830A-H gehen. Jeder dieser TDLs ist von der Länge 24 mit Taps bei den Positionen 0, 4, 8, 16 und 24. Die Ausgänge dieser Tabs werden mit der Rate chipx8 durch muxes 832A-H ausgewählt, um Signale CA_1_A bis CA_8_A zu erzeugen. Dies erlaubt, dass jeder GPS Kanal bis zu vier benachbarte Fenster durchsucht, welche 16 chipx2 Hypothesen in jedem Intervall von acht Chips während einer groben Suche aufspannt. Der mux 834 wird ver wendet, um diese Sequenzen zur Lieferung zu dem QPSK Entspreizer 804A durch den Eingang CDMA_PN zu liefern.
  • Die entspreizten Ergebnisse werden zu Summieren 804A-H geliefert, um die Werte zu erzeugen, welche GPS_sum_1 bis GPS_sum_8 benannt sind. Diese Werte sind zur Akkumulation in dem kohärenten Akkumulator 810 verfügbar. Im CDMA Modus repräsentieren diese Werte partielle Summen und müssen in dem Summierer 808 summiert werden. Das resultierende Signal ist mit CDMA benannt. Das CDMA Signal kann in dem Rotierer 812 rotiert werden (dieser Block ist optional) und das Ergebnis ist auch zu dem kohärenten Akkumulator 810 verfügbar. Der kohärente Akkumulator wählt zwischen den GPS Summen oder dem CDMA Wert aus, und zwar abhängig von dem derzeitigen Betriebsmodus. Die Ergebnisse der kohärenten Akkumulation werden zu dem DSP 820 während der GPS Suche geliefert. Während der CDMA Suche werden die Ergebnisse von kohärenter Akkumulation zu dem Energieberechner 814 geliefert. Diese Ergebnisse werden zu dem nicht kohärenten Akkumulator 816 weitergeleitet, und diese Ergebnisse werden zu dem DSP 820 geliefert. (man beachte, dass andere Hardwareverarbeitung stattfinden kann nach nicht kohärenter Akkumulation anstatt in dem DSP, wie in der '010 Anmeldung diskutiert.)
  • Somit wurde ein programmierbares Optimalfiltersuchelement für mehrfache Pilotsuche beschrieben. Die Beschreibung wird gegeben, um jedem Fachmann zu ermöglichen, die vorliegende Erfindung auszuführen oder zu benutzen. Die verschiedenen Modifikationen dieser Ausführungsbeispiele werden dem Fachmann offensichtlich sein, und die generischen Prinzipien, welche hierin definiert wurden, können auf andere Ausführungsbeispiele ohne die Verwendung der erfinderischen Fähigkeit angewandt werden. Somit ist es nicht beabsichtigt, die vorliegende Erfindung durch die hierin gezeigten Ausführungsbeispiele einzuschränken, sondern ihr soll der weiteste Umfang zugestanden werden, welcher konsistent mit den Prinzipien und neuen Merkmalen, welche hierin offenbart wurden, ist. 19667

Claims (14)

  1. Ein programmierbares Optimalfilter- bzw. Matched-Filter-Suchelement, das Folgendes aufweist: ein Schieberegister (401A-K, 403A-K, 800A-H), das als Einzelschieberegister operiert, wenn es Daten eines ersten Typs empfängt, und als ein Mehrfachschieberegister operiert, wenn Daten eines zweiten Typs empfangen werden, wobei der erste Typ von Daten von einer einzelnen Quelle empfangen wird und der zweite Typ von Daten von einer Vielzahl von Quellen empfangen wird; eine Vielzahl von PN-Generatoren zum Generieren einer Vielzahl von PN-Sequenzen; ein Matched-Filter, der geladen werden kann, zum Laden der Vielzahl von PN-Sequenzen, zum Entspreizen des Satzes von ankommenden Daten und zum Summieren der Zwischenergebnisse; und ein Akkumulierelement (810, 816) zum Empfangen der Summen und zum Akkumulieren dieser in Sätze, um einen Satz von akkumulierten Summen zu erzeugen.
  2. Programmierbares Matched-Filter-Suchelement nach Anspruch 1, wobei der Matched-Filter, der geladen werden kann, konfigurierbar ist, um eine einzelne PN-Sequenz von einem der Vielzahl von PN-Generatoren oder einer Vielzahl von PN-Sequenzen von der Vielzahl von PN-Generatoren zu empfangen.
  3. Programmierbares Matched-Filter-Suchelement nach Anspruch 1, wobei der Matched-Filter, der geladen werden kann, weiterhin Folgendes aufweist: einen Entspreizer (804A-H) zum Empfangen der PN-Sequenzen und der Daten von dem ersten Schieberegister und zum Erzeugen von Sätzen von entspreizten Werten, wobei der Entspreizer gleichzeitig mehrere PN-Sequenzen empfängt, während des Entspreizens des zweiten Typs von Daten; einen ersten Satz von Summierern (806A-H) zum Summieren der Sätze von entspreizten Werten von dem Entspreizer zum Erzeugen einer vollständigen Summe, wenn die Daten des ersten Schieberegisters den zweiten Typ von Daten haben, und zum Erzeugen von Teilsummen, wenn die Daten von dem ersten Schieberegister den ersten Typ von Daten besitzen; und ein zweiter Satz von Summierern (808) zum Empfangen der Teilsummen von dem ersten Satz von Summierern und Erzeugen einer vollständigen Summe, wenn die Daten von dem ersten Schieberegister den ersten Typ von Daten bzw. Datentyp besitzen.
  4. Programmierbares Matched-Filter-Suchelement nach Anspruch 3, wobei die Sätze von ankommenden Daten von der Vielzahl von Quellen von einer Vielzahl von Pfadprozessoren empfangen werden, wobei jeder der Pfadprozessoren Folgendes aufweist: einen Code-Doppler-Anpassblock (708A-H); ein Frequenz-Rotator (710A-H); und einen optionalen Dezimierer (712A-H).
  5. Programmierbares Matched-Filter-Suchelement nach Anspruch 1, wobei das Schieberegister (401A-K, 403A-K, 800A-H) Folgendes aufweist: ein erstes Schieberegister, das als Einzelschieberegister operiert, wenn ein erster Datentyp empfangen wird, und als Mehrfachschieberegister operiert, wenn ein zweiter Datentyp empfangen wird, zum Empfangen von Sätzen von ankommenden In-Phasen-(I)-Daten des ersten oder zweiten Typs von einer oder einer Vielzahl von Quellen und weiterhin Folgendes aufweist: ein zweites Schieberegister, das als Einzelschieberegister operiert, wenn ein erster Datentyp empfangen wird und als Mehrfachschieberegister operiert, wenn ein zweiter Datentyp empfangen wird, zum Empfangen von Sätzen von ankommenden Quadratur-(Q)-Daten des ersten oder zweiten Typs von einer oder einer Vielzahl von Quellen; wobei der beladbare Matched-Filter weiterhin Folgendes besitzt: den Entspreizer zum Empfangen der Sätze von I-Daten, der Sätze von Q-Daten und der PN-Sequenzen und zum Erzeugen von Sätzen von entspreizten I-Werten und zum Erzeugen von Sätzen von entspreizten Q-Werten, wobei der Entspreizer gleichzeitig mehrere PN-Sequenzen empfängt und distinkte Sätze von entspreizten I- und Q-Werten erzeugt, wenn der zweite Datentyp von den ersten und zweiten Schieberegistern empfangen wird; einen ersten Satz von Summierern (421A, 423A) zum Summieren der Sätze von entspreizten I- und Q-Werten von dem Entspreizer, zum Erzeugen von vollständigen I- und Q-Summen, wenn die Daten von den ersten und zweiten Schieberegistern den zweiten Datentyp besitzen und zum Erzeugen von Teil-I- und Q-Summen, wenn die Daten von den ersten und zweiten Schieberegistern den ersten Datentyp besitzen; einen zweiten Satz von Summierern (421B, 423B) zum Empfangen der Teilsummen von dem ersten Satz von Summierern und zum Erzeugen von vollständigen I- und Q-Summen, wenn die Daten von den Schieberegistern den ersten Datentyp besitzen; ein I-Akkumulier-Element (430) zum Empfangen der vollständigen I-Summen und zum Akkumulieren dieser in Sätzen, um einen ersten Satz von akkumulierten I-Summen zu erzeugen; ein Q-Akkumulier-Element (432) zum Empfang an der vollständigen Q-Summen und zum Akkumulieren dieser in Sätzen, um einen Satz von akkumulierten Q-Summen zu erzeugen; ein Energie-Berechnungselement (440, 814) zum Empfangen von Sätzen von akkumulierten I-Summen und Sätzen von akkumulierten Q-Summen zum Quadrieren von jeweiligen der Sätze von akkumulierten I-Summen und zum Quadrieren von jeweiligen der Sätze von akkumulierten Q-Summen und zum Summieren der Ergebnisse der Quadrate der jeweiligen Sätze von I- und Q-Summen, um Sätze von Energiewerten zu Erzeugen; und Ausgänge zum Vorsehen der Sätze von akkumulierten I-Summen und der Sätze von akkumulierten Q-Summen vor dem Verarbeiten in dem Energie-Berechnungselement.
  6. Programmierbares Matched-Filter-Suchelement nach Anspruch 5, das weiterhin ein Akkumulier-Element (450, 816) aufweist zum Empfangen der Sätze von Energiewerten und zum Erzeugen von Sätzen von Akkumulierungen von einigen der Sätze von Energiewerten.
  7. Programmierbares Matched-Filter-Suchelement nach Anspruch 6, wobei: I- und Q-PN-Sequenzen erzeugt werden durch den PN-Generator; und der Entspreizer QPSK-Entspreizungen ausführt.
  8. Programmierbares Matched-Filter-Suchelement nach Anspruch 6, wobei der Entspreizer eine BPSK-Entspreizung ausführt.
  9. Programmierbares Matched-Filter-Suchelement nach Anspruch 6, das weiterhin einen Multiplexer zum Empfangen von mehreren PN-Sequenzen und zum Liefern dieser zum zeitlichen Teilen des beladbaren Matched-Filters aufweist, um zusätzliche Sätze von Summen basierend auf den mehreren PN-Sequenzen zu erzeugen.
  10. Programmierbares Matched-Filter-Suchelement nach Anspruch 6, das weiterhin Folgendes aufweist: einen Multiplexer zum Empfangen von einem oder mehreren Phasenwerten; und I- und Q-Rotatoren (812) zum Empfangen von Ausgaben der I- und Q-ladbaren Matched-Filtern und zum Rotieren der Ausgaben gemäß der Phasenausgabe des Multiplexers, und zum Liefern der Ergebnisse an die I- und Q-Akkumulier-Elemente.
  11. Ein Verfahren zum Ausführen einer programmierbaren Matched-Filter-Suche, wobei das Verfahren Folgende Schritte aufweist: a) Speichern von einem Satz von I- und Q-Daten in einem Schieberegister, wenn die Daten einen ersten Datentyp besitzen und zum Speichern einer Vielzahl von Sätzen von I- und Q-Daten in dem Schieberegister, wenn die Daten einen zweiten Datentyp besitzen; b) Erzeugen einer oder einer Vielzahl von PN-Sequenzen; c) Entspreizen der Daten mit einer PN-Sequenz, wenn die Daten den ersten Typ besitzen, um einen Satz von I- und Q-Entspreizwerten zu erzeugen, und Entspreizen der Daten einer Vielzahl von PN-Sequenzen, wenn die Daten den zweiten Datentyp besitzen, um Sätze von I- und Q-Entspreizwerten zu erzeugen; d) Summieren von Ergebnissen der entspreizten I-Werte; e) Summieren von Ergebnissen der entspreizten Q-Werte; f) Akkumulieren der resultierenden summierten entspreizten I-Werte, um ein oder eine Vielzahl von Ergebnissen jeweils zu erzeugen; und g) der resultierenden summierten entspreizten Q-Werte, um ein oder eine Vielzahl von Ergebnissen jeweils zu erzeugen.
  12. Verfahren nach Anspruch 11, das weiterhin folgende Schritte aufweist: i) Quadrieren der akkumulierten entspreizten I-Werte; j) Quadrieren der akkumulierten entspreizten Q-Werte; und k) Summieren beider Quadrate.
  13. Verfahren nach Anspruch 12, das weiterhin den Schritt I) des Akkumulierens der Summe von Quadraten aufweist.
  14. Verfahren nach Anspruch 13, das weiterhin den Schritt h) des Vorsehens der Vielzahl von akkumulierten, summierten, entspreizten I- und Q-Werte berechnet in den Schritten f) und g) als Ausgaben aufweist, wenn die Vielzahl von Sätzen von I- und Q-Daten in dem Schritt a) gespeichert werden und alternierendes Fortfahren, um die Schritte i) bis l) auszuführen, wenn der eine Satz von I- und Q-Daten im Schritt a) gespeichert wird.
DE60035367T 1999-12-21 2000-12-20 Sucher mit programmierbarem signalangepasstem filter zum suchen nach mehreren pilotsignalen Expired - Lifetime DE60035367T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US468556 1990-01-23
US09/468,556 US6480529B1 (en) 1999-12-21 1999-12-21 Programmable matched filter searcher for multiple pilot searching
PCT/US2000/034774 WO2001047135A1 (en) 1999-12-21 2000-12-20 Programmable matched filter searcher for multiple pilot searching

Publications (2)

Publication Number Publication Date
DE60035367D1 DE60035367D1 (de) 2007-08-09
DE60035367T2 true DE60035367T2 (de) 2008-02-28

Family

ID=23860283

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60035367T Expired - Lifetime DE60035367T2 (de) 1999-12-21 2000-12-20 Sucher mit programmierbarem signalangepasstem filter zum suchen nach mehreren pilotsignalen

Country Status (16)

Country Link
US (1) US6480529B1 (de)
EP (1) EP1240722B1 (de)
JP (1) JP4763205B2 (de)
KR (1) KR20020062345A (de)
CN (1) CN1190017C (de)
AT (1) ATE366001T1 (de)
AU (1) AU2285101A (de)
BR (1) BR0016532A (de)
CA (1) CA2393509A1 (de)
DE (1) DE60035367T2 (de)
ES (1) ES2287043T3 (de)
HK (1) HK1052595B (de)
IL (1) IL149947A0 (de)
MX (1) MXPA02006219A (de)
RU (1) RU2254680C2 (de)
WO (1) WO2001047135A1 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324159B1 (en) * 1998-05-06 2001-11-27 Sirius Communications N.V. Method and apparatus for code division multiple access communication with increased capacity through self-noise reduction
EP1175734A1 (de) * 1999-05-10 2002-01-30 Sirius Communications N.V. Verfahren und vorrichtung für hochgeschwindigkeits-cdma-kommunikation, die mittels software rekonfigurierbar ist
US7372888B1 (en) * 1999-05-10 2008-05-13 Agilent Technologies Inc. Method and apparatus for software reconfigurable communication transmission/reception and navigation signal reception
US7327779B1 (en) 1999-07-23 2008-02-05 Agilent Technologies, Inc. Method and apparatus for high-speed software reconfigurable code division multiple access communication
JP2001345738A (ja) * 2000-06-06 2001-12-14 Sony Corp 同期検出装置
KR100488078B1 (ko) * 2000-12-21 2005-05-09 엘지전자 주식회사 이동 통신 시스템 수신단의 파일럿 신호 검색기 및 방법
DE10108413A1 (de) * 2001-02-21 2002-09-19 Philips Corp Intellectual Pty Empfangsverfahren bei einem Mobiltelefon mit Mehrfachcodeempfang und Mobiltelefon
JP4092291B2 (ja) * 2001-08-02 2008-05-28 インフィネオン テヒノロジース アクチェンゲゼルシャフト 構成可能なターミナル・エンジン
US7756085B2 (en) * 2001-11-20 2010-07-13 Qualcomm Incorporated Steps one and three W-CDMA and multi-mode searching
KR100426621B1 (ko) * 2001-12-20 2004-04-13 한국전자통신연구원 단말기의 프리엠블 신호를 탐색하는 작은 창 프리엠블탐색 장치 및 그 방법
US7738533B2 (en) * 2002-01-07 2010-06-15 Qualcomm Incorporated Multiplexed CDMA and GPS searching
EP1441449A1 (de) * 2003-01-27 2004-07-28 Agilent Technologies, Inc. - a Delaware corporation - Programmierbarer Erfassungsmodul für einen CDMA-basierten Multistandard-Empfänger
KR100546318B1 (ko) * 2003-02-22 2006-01-26 삼성전자주식회사 서로 다른 통신모드를 지원하는 듀얼 모드 모뎀의 통합 셀탐색기
US7026928B1 (en) 2003-03-21 2006-04-11 Realty Times Portable personal security system
US8138972B2 (en) * 2003-09-02 2012-03-20 Csr Technology Inc. Signal processing system for satellite positioning signals
KR20070012308A (ko) * 2003-09-02 2007-01-25 서프 테크놀러지, 인코포레이티드 위성 위치 신호를 위한 신호 처리 시스템
WO2005055494A2 (en) * 2003-11-26 2005-06-16 Qualcomm Incorporated Method and apparatus for calculating a position estimate of a mobile station using network information
CN1940589B (zh) * 2005-09-30 2010-04-21 凌阳科技股份有限公司 一种全球卫星定位系统的数据位同步的方法及系统
US7917798B2 (en) 2005-10-04 2011-03-29 Hypres, Inc. Superconducting digital phase rotator
KR101043689B1 (ko) * 2007-10-29 2011-06-24 주식회사 텔에이스 Gps를 위한 초기 동기 신호의 획득 방법 및 장치
US8292543B2 (en) * 2008-04-28 2012-10-23 Waste Management, Inc. Multi-planar gas recovery bioreactor
WO2010082431A1 (ja) * 2009-01-15 2010-07-22 日本電気株式会社 無線通信システムにおける同期処理回路、同期処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5577025A (en) * 1995-06-30 1996-11-19 Qualcomm Incorporated Signal acquisition in a multi-user communication system using multiple walsh channels
DK0880713T4 (da) * 1995-10-09 2011-05-16 Snaptrack Inc Kombineret GPS-positioneringssystem og kommunikationssystem, som anvender delt kredsløb
CN100409027C (zh) * 1995-10-09 2008-08-06 快速追踪有限公司 处理gps信号的gps接收机及方法
US5715276A (en) * 1996-08-22 1998-02-03 Golden Bridge Technology, Inc. Symbol-matched filter having a low silicon and power requirement
US6363105B1 (en) * 1998-02-17 2002-03-26 Ericsson Inc. Flexible sliding correlator for direct sequence spread spectrum systems

Also Published As

Publication number Publication date
US6480529B1 (en) 2002-11-12
CN1413392A (zh) 2003-04-23
AU2285101A (en) 2001-07-03
JP4763205B2 (ja) 2011-08-31
IL149947A0 (en) 2002-11-10
JP2003518807A (ja) 2003-06-10
ATE366001T1 (de) 2007-07-15
RU2002119421A (ru) 2004-01-20
EP1240722A1 (de) 2002-09-18
KR20020062345A (ko) 2002-07-25
CA2393509A1 (en) 2001-06-28
EP1240722B1 (de) 2007-06-27
RU2254680C2 (ru) 2005-06-20
CN1190017C (zh) 2005-02-16
MXPA02006219A (es) 2003-01-28
BR0016532A (pt) 2002-12-24
WO2001047135A1 (en) 2001-06-28
HK1052595B (zh) 2005-09-09
ES2287043T3 (es) 2007-12-16
DE60035367D1 (de) 2007-08-09
HK1052595A1 (en) 2003-09-19

Similar Documents

Publication Publication Date Title
DE60035367T2 (de) Sucher mit programmierbarem signalangepasstem filter zum suchen nach mehreren pilotsignalen
DE60118715T2 (de) Korrelationsfilter für den rückkanal in einem drahtlosen cdma system mit mehreren bit-raten
DE69720722T2 (de) Leistungseffizienter empfänger
DE60024814T2 (de) Verfahren und gerät zum erfassen eines spreizspektrumsignals
DE69823496T2 (de) Orthogonal kodesynchronisationssystem und verfahren für spreizspektrum cdma-nachrichtenübertragung
DE69926767T2 (de) Endgerät mit parallelem pilotsucher
DE19824218C1 (de) Multipfad-Ausbreitungsverzögerungs-Bestimmungsvorrichtung unter Verwendung von periodisch eingefügten Pilotsymbolen
DE69723078T2 (de) Verfahren zum effektiven abtasten in einem korrelator
DE69834235T2 (de) Verfahren und Vorrichtung zum Empfang von GPS/GLONASS-Signalen
US6363108B1 (en) Programmable matched filter searcher
DE69433640T2 (de) Erfassung und Nachführung der Synchronisation eines Direktsequenzspreizspektrumempfängers
DE69432555T2 (de) Direktsequenzspreizspektrumempfänger unter Verwendung eines während konstanter gleitender Zeitintervalle gemittelten Pilotsignales
DE69937838T2 (de) Ein cdma-empfänger der nachführeinrichtungen zwischen mehreren rake-zweigen teilt
FI110821B (fi) GPS-vastaanotin, jossa on nopea keräys suurella tarkkuudella
DE69631711T2 (de) Spreizspektrumsignalempfänger unter Verwendung einer selbsteinstellenden Detektionsschwelle
DE60019943T2 (de) Vorrichtung und verfahren zum empfangen von nachrichten unter verwendung von akkumulationssuchern variabler länge
DE69720723T2 (de) Verfahren zur vermeidung von harmonischen dopplerkopien in einem gps-empfänger
DE60131362T2 (de) Nachführung eines mehrweg-aufgelösten signals in einem rake-empfänger
DE69826073T2 (de) Synchroner Fangkreis für Kodemultiplexmehrfachzugriff
DE69632915T2 (de) Verfahren zum steuern eines empfängers, und empfänger
DE60023525T2 (de) Verfahren und anordnung zum generieren von mehreren bits eines pseudorausch-sequenzes pro taktimpuls durch parallelberechnung
DE60202919T2 (de) Empfangseinheit, Empfangsverfahren und Halbleitervorrichtung
DE10216191A1 (de) Schaltungsmaßstabverringerung von RAKE-Empfängern in CDMA-Kommunikationssystemen
DE60124817T2 (de) Synchronisationdetektionsgerät
EP1504541B1 (de) Rake-Demodulator mit Multicode-Finger

Legal Events

Date Code Title Description
8364 No opposition during term of opposition