(57)【要約】ＧＰＳ受信機（３０１）は、受信したＧＰＳ信号の短いセグメントを用いてキャリア周波数並びにゴールドコードの位相を取得する。ある実施形態において、ＧＰＳ信号の１−ｍｓのセグメントは、周波数ドメインに変化する。これが、ゴールドコードの周波数表示（４０２）の周波数表現と乗算（４０２）される。こうして生じた積は、タイムドメインに変換され、ピークが検出される。ピーク（４０６ａ−ｄ）の位置は、コード位置に対応する。ピーク（４０６ａ−ｄ）がない場合、キャリア周波数は、変化する。キャリア周波数におけるフルおよびハーフビンステップが考慮される。入力信号中の、４または１６ｍｓ等の長いセグメントを用いるとともに、１−ｍｓセグメントを積分することにより、処理によるゲインが達成される。処理中のＧＰＳ信号の短いセグメント中で起こる移行による影響を補償することが考慮される。非同期式および同期式技術を用いて積分を行うことが可能となる。【選択図】図４
2004509358.tif 000002
【特許請求の範囲】
【請求項１】
ＧＰＳ受信機であって、
受信拡散コード周波数（ｒｅｃｅｉｖｅｄ ｓｐｒｅａｄｉｎｇ ｃｏｄｅ ｆｒｅｑｕｅｎｃｙ）を有する受信拡散コード（ｒｅｃｅｉｖｅｄ ｓｐｒｅａｄｉｎｇ ｃｏｄｅ）を備えた複合ＧＰＳ信号を受信する受信器、
前期受信複合ＧＰＳ信号をサンプルレートでデジタル化するデジタイザー、
拡散コードを生成する拡散コード生成器、
関連づけられた出力を生成するため、受信複合ＧＰＳ信号と前記生成された拡散コードを関連付けるコンボルバー（ｃｏｎｖｏｌｖｅｒ）、
前記サンプルレートが前記受信拡散コード周波数の整数倍と等しくないこと、を原因とするクロックエラーを推定する手段、
前記関連づけられた出力ならびに前記推定されたクロックエラーから得られる距離関数（ｍｅｔｒｉｃ）、
時間オフセットの合計（ｔｏｔａｌ ｔｉｍｅ ｏｆｆｓｅｔ）および周波数オフセットを決定するため前記距離関数を最大化する手段、を備えたこと、
を特徴とするもの。
【請求項２】
請求項１にかかるＧＰＳ受信機において、前記コンボルバーは、線形コンボリューション（ｌｉｎｅａｒ ｃｏｎｖｏｉｌｕｔｉｏｎ）、を実行すること、
を特徴とするもの。
【請求項３】
請求項１にかかるＧＰＳ受信機において、前記コンボルバーは、循環コンボリューション（ｃｉｒｃｕｌａｒ ｃｏｎｖｏｉｌｕｔｉｏｎ）、を複数回実行すること、
を特徴とするもの。
【請求項４】
請求項１にかかるＧＰＳ受信機において、さらに、
前記拡散コードを変調するデータシ−ケンスを推定する手段、
理想的な複合ＧＰＳ信号と前記生成拡散コードとの関連づけ、に対応する理想的なコンボルバー出力（ｉｄｅａｌ ｃｏｎｖｏｌｖｅｒ ｏｕｔｐｕｔ）を生成する手段、
前記コンボルバー出力と、前記推定されたデータシーケンスの複合共役（ｃｏｍｐｌｅｘ ｃｏｎｊｕｇａｔｅ）、ならびに、前記理想的なコンボルバー出力の複合共役、とを乗算する乗算器、を備えており、
前記距離関数は、前記集められたＧＰＳ信号の連続するセグメントに対する前記乗算器のアプリケーションの積分値、を有すること、
を特徴とするもの。
【請求項５】
請求項１にかかるＧＰＳ受信機において、前記距離関数を最大化する手段は、前記距離関数を最大化するため、異なる所定の時間オフセット全体を検索すること、
を特徴とするもの。
【請求項６】
請求項１にかかるＧＰＳ受信機において、前記コンボルバーは、周波数ドメイン内においてコンボリューションを実行すること、
を特徴とするもの。
【請求項７】
ＧＰＳ受信機で用いられるコード位相およびキャリア周波数オフセットを生じさせる方法であって、
受信拡散コードシーケンス周波数を有する受信拡散コードシーケンスを備えた複合ＧＰＳ信号を受信するステップ、
サンプルーレートで前記受信複合ＧＰＳ信号をサンプリングするステップ、
生成拡散コードシーケンスを生成するステップ、
前記受信ＧＰＳ信号と、前記生成拡散コードを関連づける（ｃｏｎｖｏｌｖｉｎｇ）ステップ、
前記サンプルレートが前記受信拡散コード周波数の整数倍と等しくないこと、を原因とするクロックエラーを推定するステップ、
前記関連づけられた出力ならびに前記推定されたクロックエラーから距離関数を生じさせるステップ、
時間オフセットの合計（ｔｏｔａｌ ｔｉｍｅ ｏｆｆｓｅｔ）および周波数オフセットを決定するため前記距離関数を最大化するステップ、を備えたこと、
を特徴とするもの。
【請求項８】
請求項７にかかる方法において、前記関連づけステップは、線形コンボリューションを実行するステップを備えたこと、
を特徴とするもの。
【請求項９】
請求項７にかかる方法において、前記関連づけステップは、循環コンボリューション（ｃｉｒｃｕｌａｒ ｃｏｎｖｏｉｌｕｔｉｏｎ）、を複数回実行するステップを備えたこと、
を特徴とするもの。
【請求項１０】
請求項７にかかる方法において、さらに、
前記拡散コードを変調するデータシ−ケンスを推定するステップ、
理想的な複合ＧＰＳ信号と前記生成された拡散コードとの関連づけ、に相当する理想的なコンボルバー出力を生成するステップ、
前記コンボルバー出力と、前記推定されたデータシーケンスの複合共役、ならびに、前記理想的なコンボルバー出力の複合共役、とを乗算するステップ、および
前記集められたＧＰＳ信号の連続セグメントにわたり、前記乗算器の出力を積分するステップ、を備えること、
を特徴とするもの。
【請求項１１】
請求項７にかかる方法において、前記最大化ステップは、前記距離関数を最大にするため、異なる所定時間オフセットにわたり検索を実行するステップ、を備えたこと、
を特徴とするもの。
【請求項１２】
請求項７にかかる方法において、前記関連づけステップは、さらに、前記受信ＧＰＳ信号を周波数ドメインに変換するステップ、
前記生成された拡散コードシーケンスを周波数ドメインに変換するステップ、
積を得るため、前記変換された受信ＧＰＳ信号と拡散コードシーケンスを乗算するステップ、および
前記積を時間ドメインに変換するステップ、を備えたこと
を特徴とするもの。
【発明の詳細な説明】
【０００１】
【関連出願】
本明細書は、その全体が参照のため本明細書に取り込まれる、２０００年８月９日出願の米国特許出願番号０９／９２４、５４２の部分継続出願である。また、本発明は、その全体が参照のため本明細書に取り込まれる、２０００年９月１８日に出願された米国仮出願番号６０／２３３、４４６の出願日の利益を主張する。
【０００２】
【発明の属する分野】
本発明は、一般に、ＧＰＳ測位システムに関し、具体的には、ＧＰＳ測位システムにおける改良されたコード位相ならびにキャリア取得に関するものである。
【０００３】
【発明の背景】
全地球測位システム（ＧＰＳ）は、多数のアプリケーションにおいて、位置を決定するために用いられている。例えば、ナビゲーションのアプリケーションにおいて、ユーザーは、自身のその瞬間の位置とともに、長時間にわたる自身の位置を決定するため、ＧＰＳ受信機を用いる。ＧＰＳ受信機の他の用途は、目的物を追跡することにある。例えば、トラック内に備え付けることにより、トラックの移動が追跡可能となる。貨物に受信機を取り付けることにより、その貨物の正確な位置を追跡可能とする。これらのコンセプトは、車両管理（ｆｌｅｅｔ ｍａｎａｇｅｍｅｎｔ）および配送業者における配送管理にも拡大適用することが可能である。ＧＰＳ受信機の測位能力を利用した、追加の、ならびに、新たなサービスを、展開し、開発することが可能である。
【０００４】
図１は、測位に用いられる従来のＧＰＳ受信機１０１の略図である。図１において、ＧＰＳ受信機１０１は、従来のＧＰＳ受信機の関連する基本機能を説明するため、簡略化されている。アンテナ１０２は、ＧＰＳサテライト１０３ａ，１０３ｂ，１０３ｃ、および、１０３ｄからＧＰＳ信号を受信する。アンテナ１０２は、受信したＧＰＳ信号を信号調整プロセッサ１０４に供給する。信号調整プロセッサ１０４は、かかる信号を、増幅し、フィルタリングするとともに、処理のためにベースバンドにまでダウンコンバートする。ベースバンド信号は、処理ブロック１０６内のキャリアおよびコード位相追跡アルゴリズムに供給される。処理ブロック１０６は、乗算器１０８、相関器１１０、キャリア周波数発振器１１２、ゴールドコード生成器１１４、ならびに、積分器１１６、を含んでいる。乗算器１０８は、ベースバンド信号とキャリア周波数発振器１１２から受けたキャリア周波数の推定値を乗算する。キャリア周波数発振器１１２は、電圧制御発信器（ＶＣＯ）又は、数値制御発信器（ＮＣＯ）であってもよい。相関器１１０は、信号と、コード生成器１１４により生成されたゴールドコードの複製に相関関係を付ける。かかるゴールドコードは、各ＧＰＳサテライトによって生成された、固有かつ、既知のコードである。ここで、”コード”および”コールドコード”という語は、同じ意味で用いられている。相関器１１０の出力は、積分器１１６により積分される。積分器１１６の出力は、コード追跡生成器１１４およびキャリア周波数発振器１１２で必要とされる情報を生成するため、デジタル信号プロセッサ１１８に入力される。かかる情報には、キャリア位相、ならびに、コード位相情報が含まれている。
【０００５】
キャリア周波数発信器１１２、マルチキャリア１０８、積分器１１６並びにＤＳＰの組み合わせは、ダウンコンバータにおける周波数基準エラーを補償するキャリア追跡ループであるとともに、特定のサテライトと関連するドプラー偏移（Ｄｏｐｐｌｅｒ ｓｈｉｆｔ）、として動作する。コード生成器１１４、相関器１１０、積分器１１６、ならびにＤＳＰ１１８の組み合わせは、受信信号のコード位相内のいかなる偏移も補償するコード追跡ループとして動作する。
【０００６】
一般に、従来のＧＰＳ受信機においては、並列的に作動する一連の処理ブロック１０６が存在する。処理ブロックの各処理ブロック１０６の列は、異なるサテライトに合わせられている。通常、ＧＰＳサテライト毎に、少なくとも２つの処理ブロック１０６が存在する。
【０００７】
ＧＰＳ受信機１０１は、ＧＰＳ信号を処理するため、２つのモードで動作する。最初に、受信機は、ＧＰＳ信号信号のキャリア周波数およびゴールドコード位相を取得しなければならない。この動作は、取得モードとして知られている。次に、受信機１０１は、取得モードにおいて始点として決定されたキャリア周波数ならびにゴールドコード位相を用いてキャリア周波数ならびにゴールドコード位相を追跡しなければならない。この動作は、追跡モードとして知られている。
【０００８】
取得モード中、ＧＰＳ受信機は、演繹的知識（ｐｒｉｏｒｉ ｋｎｏｗｌｅｄｇｅ）を用いる。例えば、受信機は、ＧＰＳ信号の名目的なキャリア周波数を知っている。しかし、かかる名目上のキャリア周波数は、以下の理由から当該受信機で実際に受信されるものとは異なる。まず最初に、送信サテライトと受信サテライトの相対運動によって引き起こされるドプラー偏移により、受信キャリア周波数を変更させる。また、ローカル発信器（図示せず）は、それ自身によりエラーを引き起こす。これにより、キャリア周波数、ならびに、ゴールドコードの補正値（ゴールドコードの位相）が決定される。
【０００９】
かかる決定行うため、従来のＧＰＳ受信機では、通常、積分器１６の出力が、マッチが得られたことを示す所定のしきい値を超えるまで、異なったキャリア周波数ならびにコード位相を試すことにより、一連のサーチが行なわれていた。上述のような複数の処理チャネルを用いることにより、ＧＰＳ受信機は、並列的なサーチを実行することが可能となっていた。
【００１０】
図２は、キャリア周波数ならびにゴールドコード位相を決定するため、従来のＧＰＳ受信機１０１により実行されるサーチのプロセスを示すグラフである。発信器１１２は、通常、ＧＰＳ信号の名目上のキャリア周波数を設定する。また、コードは、当初のコード位相を用いて、コード生成器１１４によって生成される。受信されたキャリア周波数ならびにコード位相が、発信器１１２により生成されたキャリア周波数、ならびに、コード生成器１１４によって生成されたコードのコード位相とそれぞれマッチした場合、積分器１１６の出力は、比較的高くなる。他方、キャリア周波数又はコード位相がマッチしない場合、積分器１１６の出力は、比較的く、実質的にノイズである。
【００１１】
一般に、従来のサーチアルゴリズムは、まず、周波数を設定し、ゴールドコード位相を変化させる。コード位相が変化するにつれ、コントローラ１１８は、積分器１１６の出力を測定する。積分器１１６の出力が、所定のしきい値を超えた場合、コントローラ１１８では、ロックがなされ、コントローラ１１８がその追跡モードにある、と推定する。全てのコード位相（コード位相ｃｐ１からｃｐＮまで）が試されると、コントローラ１１８は、キャリア周波数ｆ２を出力するようキャリア周波数発信器を切り換える。かかるプロセスは、積分器１１６の出力がロック状態を示していることを理由にコントローラ１１８が早めに停止されない限り、各コード位相ｃｐ１からｃｐＮ、および、各周波数１から周波数Ｍまでの間、繰り返される。周波数コード移動の組み合わせが発見されない場合、受信機は、信号を取得することが出来ない。
【００１２】
従来のＧＰＳ受信機は、受信信号の異なる部分で上述のプロセスの各ステップを実行していた。すなわち、各ステップにおいて、受信機によって受信されたＧＰＳ信号の新しい部分が処理される。従来のＧＰＳ受信機は、ときどきＧＰＳ信号を数秒のうちに取得することができるが、通常、取得プロセスには、非常に長い時間が必要である。
【００１３】
取得モードの後、受信機は、追跡モードに切り換えられる。追跡モードにおいて、受信機は、入力するキャリアおよびコード位相のロック状態を維持するため、発信器１１２の周波数ならびにゴールドコード位相の補正値を連続的に調整する。コード位相の追跡は、通常、前と後のコード（ｅａｒｌｙ ａｎｄ ｌａｔｅ ｃｏｄｅ）をそれぞれ（規則コードとともに）生成する前後コード生成器（ｅａｒｌｙ ａｎｄ ｌａｔｅ ｃｏｄｅ ｇｅｎｅｒａｔｏｒ）を用いて、既知の方法により補助される。受信されたコードが、前のコードとの相関が高い場合、コントローラ１１８は、コード生成器１１４の位相遅延を減少させる。受信されたコードが、後のコードとの相関が高い場合、コード生成器は、コード生成器１１４の位相を増加させる。受信されたコードが、規則コードとの相関が最も高い場合、何らの変更もなされない。
【００１４】
キャリア追跡は、通常、積分器により出力された信号の位相を分析することにより行われる。発信器１１２により生成されたキャリア周波数が、受信されたキャリア周波数とマッチした場合、位相回転（ｐｈａｓｅ ｒｏｔａｔｉｏｎ）がなされることはない。かかるマッチがない場合、コントローラ１１８は、位相回転をすべて補償するため、発信器１１８の周波数を高くするか、低くするかのいずれかを行う。
【００１５】
追跡に加え、受信機は、ＧＰＳ信号のキャリア上で変調された５０Ｈｚのデータを復調することができる。この５０Ｈｚ信号は、信号を送信する特定のサテライトに関する情報を搬送する。例えば、かかる信号は、ＧＰＳサテライトの位置および動きに関する情報を提供する天体暦情報（ｅｐｈｅｍｅｒｉｓ ｉｎｆｏｒｍａｔｉｏｎ）を含んでいる。
【００１６】
【発明の概要】
本発明は、受信ＧＰＳ信号のごく短い部分のみを用いることで、ＧＰＳ信号の取得に要する時間を低減することによるＧＰＳ受信機の取得フェーズの改善に関する。すなわち、本発明は、受信機が正確なキャリア周波数ならびにゴールドコード位相を決定するのに要する時間を減少させる。その追跡フェーズにおいて用いられるキャリア周波数ならびにゴールドコード位相の初期値を提供することにより、この情報は、従来のＧＰＳ受信機の取得フェーズに取って代ることができる。また、本発明を用いて行われるコード位相の測定は、その全体が参照のため本明細書に取り込まれる、キルフェザー等への米国特許番号６，２４３，６４８で説明されたシステム等のシステムにおいて、位置を決定するためにも用いることが可能である。
【００１７】
本発明のある実施形態において、ＧＰＳ信号は、受信され、信号調整プロセッサにより調整される。こうして受信されたＧＰＳ信号は、受信機から見て、全てのＧＰＳ信号からのコントリビューションを有する合成信号である。かかる信号の短い部分は、集められ、メモリ内に記憶される。当該部分を周波数ドメインに変換するため、信号の短い部分についてＦＦＴが行われる。次に、ゴールドコードシーケンスが生成される。シーケンスを周波数ドメインに変換するため、生成されたゴールドコードシーケンス中でＦＦＴが行われる。既知のシーケンスであって、ゴールドコードシーケンスを生成し、それを周波数ドメインに変換するゴールドコードシーケンスは、前もって実現可能なイベントであることが好ましい。すなわち、位置測定のためにＧＰＳ受信機が用いられる前に、ゴールドコードシーケンスならびにその周波数ドメイン表現を予め計算することができる。これにより、ゴールドコードシーケンス、および／又は、その周波数表示が、以後の処理のためメモリ内に記憶される。入力信号の短い部分のＦＦＴとゴールドコードシーケンスが乗じられる。積を時間ドメインに変換するため、逆ＦＦＴ動作が行われる。時間ドメイン表現は、生成されたゴールドコードシーケンスを有する入力信号の短い部分のコンボリューションである。振幅演算器は、時間ドメインの積（ｔｉｍｅ ｄｏｍａｉｎ ｐｒｏｄｕｃｔ）のポイントごとの振幅を演算する。ピーク検出器は、ピークが何処に位置するのか判断する。かかるピークは、信号の短い部分におけるコード位相を表わす。
【００１８】
ピークが存在しない場合、コントローラーは、新たなキャリア周波数に移り、前記プロセスを繰り返す。これは、時間メインシグナルと、周波数シフトと等しい周波数を有する複合指数関数（ｃｏｍｐｌｅｘ ｅｘｐｏｎｅｎｔｉａｌ）を乗算することにより、実行することができる。これに代え、入力ＧＰＳ信号の周波数表示又はゴールドコード中の全てのビンを何らかの方法で（ｏｎｅ ｗａｙ ｏｒ ｔｈｅ ｏｔｈｅｒ）シフトさせることにより、これを実行することもできる。周波数シフトは、ＦＦＴの分解能とシフトしたビンの数の積と等しい。次に、ゴールドコード読み出しプロセスが続けられる。これは、ピークが見つかるか、ピークが見つからない場合、好ましい周波数が全てテストされるまで続けられ、プロセスは、取得がうまく行かなくても終了する。各ＧＰＳサテライトに固有のゴールドコードを用いることにより、入力信号に寄与するＧＰＳサテライトについてプロセス全体が繰り返される。
【００１９】
本発明の他の実施形態において、コードのピークをよりはっきりと認識可能とするために積分を用いることができるよう、長い間隔の入力ＧＰＳ信号について上述のプロセスが実行される。かかる実施形態において、入力ＧＰＳ信号の複数のミリセカンド部分が集められ、メモリ内に記憶される。前記入力ＧＰＳ信号は、１ミリセカンドのセグメントに分割される。各ミリセカンドセグメントは、当該セグメントの周波数ドメイン表現として周波数ドメインに変換される。かかる周波数ドメイン表現は、受信機から見てサテライトの一つに固有のゴールドコードの周波数表示、と乗じられる。ゴールドコードの周波数表示は、受信装置の動作の前に生成され、記憶されたもの、であることが好ましい。各乗算の積は、タイムドメインに変換され、特定のサテライトのゴールドコードを有する各１ｍｓセグメントのコンボリューションを表わす。かかるコンボリューションにおける各ポイントの振幅が計算される。かかる振幅は、コンボリューションにわたってポイントごとに積分（合計）され、次に、ピークが検出される。ピークの位置は、コード位相に対応する。キャリア周波数は、入力信号、又は、周波数ドメイン中のゴールドコードを適切にシフトすることにより、上述のように決定される。
【００２０】
本発明の他の実施形態において、上で説明した積分は、同期式処理（ｃｏｈｅｒｅｎｔ ｐｒｏｃｅｓｓｉｎｇ）を用いて行われる。ここでは、二つのステップが行われる。最初のステップは、上述の複数ミリセカンド法（ｍｕｌｔｉｐｌｅ ｍｉｌｌｉｓｅｃｏｎｄ ｍｅｔｈｏｄ）を用いてコード位相（コンボリューション中のピーク位置）ならびにキャリア周波数、をおおまかに決定する。次に、合成サイン波が、コンボリューション中のピーク位置のポイントにあわされる。かかるサイン波の周波数は、受信したキャリアとキャリア周波数の大まかな予想値との間の差である。コンボリューション中のポイントは、各コンボリューションと、あわせられたサイン波と等しい周波数における複合指数関数、を複合的に乗算（ｃｏｍｐｌｅｘ ｍｕｌｔｉｐｌｉｃａｔｉｏｎ）することにより、この周波数の差を除去するために回転する位相である。これを行うことにより、コンボリューションは、互いに同期する（ｃｏｒｈｅｒｅｎｔ）。次に、かかるコンボリューションは、ポイントごとに積分（合計）される。全てのポイントにおける合計の振幅がとられ、ピーク位置が検出される。プロセスは、ピーク自身とともに、ピークの位置近傍の周囲数ポイントのみの振幅をとり、合計し、回転させることにより最適化される。次に、ピーク位置をさらに精緻化するため、補完法（ｉｎｔｅｒｐｏｌａｔｉｏｎ ｔｅｃｈｎｉｑｕｅｓ）が適用される。
【００２１】
本発明の他の実施形態において、コード位相（ピーク位置）は、サンプルクロック周波数のエラーを補償することにより更に精緻化される。サンプルクロック周波数エラーの推定値は、キャリア周波数オフセットによって得られる。かかるサンプルエラークロックの推定値は、ピーク位置を決定するための補間技術（ｉｎｔｅｒｐｏｌａｔｉｏｎ ｔｅｃｈｎｉｑｕｅ）を補強するために用いられる。
【００２２】
本発明は、発明の詳細な説明、添付された図面、ならびに、添付のクレームにより詳細に説明される。
【００２３】
【発明の説明】
本発明は、受信したＧＰＳ信号の非常に短い部分のみを用いることよってＧＰＳ信号の取得に要する時間を減少させることにより、ＧＰＳ受信機の取得モードを改善することに関する。かかる短い部分は、入力ＧＰＳ信号におけるミリセカンドとセカンドとの間であることが好ましい。このように、本発明は、正しいキャリア周波数ならびにゴールドコード位相を決定するために受信機が必要とする時間を減少させる。本発明は、最も短いもので長さが１ミリセカンドの信号の収集部分を用いた信号取得を可能にする。
【００２４】
図３は、本発明に基づき使用することが可能な一又は複数のＧＰＳサテライトから受信したＧＰＳ信号を取得するＧＰＳ受信機３０１の略図である。明確化のため、以下の説明では、一のチャネルのみが用いられている。しかし、視野内にある全てのＧＰＳ信号サテライトの入力信号を同時に処理するため、説明に用いられている一のチャネルを、ゴールドコードの生成（Ｇｏｌｄ ｃｏｄｅ ｇｅｎｅｒａｔｉｏｎ）に適切な変更を施したもの、に置き換え可能であることが当業者にとって明かである。各チャネルは、そこからの信号によりチャネルが受信対象となる特定のＧＰＳ信号サテライトに対応するゴールドコードを生成するため、ゴールドコード生成器を用いる。これに代え、各ＧＰＳサテライトのゴールドコードを順次用いて前記信号を処理することで、順次モード（ｓｅｒｉａｌ ｍｏｄｅ）において単一のチャネルを用いてもよい。
【００２５】
受信機３０１は、合成ＧＰＳ信号を受信するアンテナ３０２を含む。すなわち、受信機３０１により受信された入力ＧＰＳ信号は、受信機３０１から見て、全てのＧＰＳ信号サテライトからのコントリビューション（ｃｏｎｔｒｉｂｕｔｉｏｎｓ）を有する。アンテナ３０２は、信号調整プロセッサ３０４に接続されている。信号調整プロセッサ３０４は、アンテナ３０２によって収集されたＧＰＳ信号を増幅し、フィルタリングする。信号調整プロセッサ３０４は、前記信号を、処理用のベースバンド等の他の周波数に変換することもできることが好ましい。次に、ベースバンド信号は、メモリ３１２内に記憶される。メモリ３１２は、デジタル信号プロセッサ（ＤＳＰ）３０８、又はその一部に、アクセス可能である。メモリ３１２を用いたプロセッサ３１０は、信号を取得するために、すなわち、ＧＰＳサテライトのゴールドコード信号をもたらす各ＧＰＳサテライトのゴールドコードサテライトのキャリア周波数ならびにコード位相を決定するため、以下で説明するようにＧＰＳ信号サテライト信号を処理する。
【００２６】
Ａ／Ｄ変換器３０６は、情報の周波数帯域の２倍（ａｔ ｔｗｉｃｅ ｔｈｅ ｉｎｆｏｒｍａｔｉｏｎ ｂａｎｄｗｉｄｔｈ）で信号をデジタル化可能なものであれば、どのようなＡ／Ｄ変換器であってもよい。この場合、かかる情報の周波数帯域は、１．０２３ＭＨｚ（信号調整プロセッサ３０４が前記信号をベースバンドにダウンコンバートすると仮定した場合）のＧＰＳチップレートである。したがって、複合信号に対する最低サンプリングレートは、１．０２３ＭＨｚである。一般に、サンプリングレートは、高い方がよいが、サンプリングレートは、メモリ３１２の容量により制約を受ける。サンプリングレートは２．０４８ＭＨｚであることが好ましい。
【００２７】
メモリ３１２内に、ＧＰＳ信号のどの部分を記憶してもよい。しかし、記憶されるＧＰＳ信号は、ミリセカンドより大きく、セカンドよりも小さいことが好ましい。より多くの信号が与えられると、信号対雑音比（ＳＮＲ）を小さくすることに役立つ積分時間を長くすることができるが、処理時間が長くなってしまうと言う問題がある。これは、発明を実施する際にそれぞれ定められる設計上のトレードオフである。
【００２８】
上述のように、デジタル化されたＧＰＳ信号は、受信機から見て、各ＧＰＳサテライトからのコントリビューションを含んでいる。かかる受信機は、そのサテライトが、視野内にあるかを、公開された情報を用いて既知の様々な方法により決定する。例えば、受信機は、受信信号と、発せられた全てのＧＰＳコードと、を関連づけることができる。それに代え、受信機が、現在のアルマナック（ａｌｍａｎａｃ）、現在時刻ならびに適切な位置（例えば、この前の位置決めから）を有する場合、受信機は、視野内のＧＰＳサテライトを演算することが可能である。また、ＧＰＳ受信機は、どのサテライトが視野内にあるかについて通信リンクから通知されうる。この方法によれば、受信機は、どのゴールドコードのシーケンスが、その処理に適用されているかを知ることが出来る。
【００２９】
ゴールドコード位相ならびにキャリア周波数は、記憶された入力ＧＰＳサテライトのゴールドコード信号から、以下のように決定される。ここで、”ゴールドコードの遅れ””ゴールドコード位相および”コード位相”という文言は、同じ意味で用いられている。上述のように、各ＧＰＳサテライトには、ＧＰＳ信号として送信される固有のゴールドコードが割り当てられている。このように、アンテナ３０２によって集められる合成信号には、ＧＰＳ信号、および、受信機から見て、各サテライトに対応するゴールドコード、が含まれている。かかるゴールドコードは、公衆に利用可能である。
【００３０】
ゴールドコード内には、１．０２３ＭＨｚのレートで送信される１０２３のビット又はチップが存在する。したがって、完全なゴールドコードのシーケンスは、１−ｍｓの長さを有する（すなわち、１ミリセカンド毎に繰り返す）。２０のゴールドコードシーケンス毎（２０ミリセカンド）に、１８０度だけＧＰＳサテライトのゴールドコード信号が位相シフト（又は移行）する場合がある。位相シフトが起こる場合、信号は反転する。したがって、ＧＰＳ信号の少なくとも１−ｍｓ部分を得ることにより、少なくとも一のゴールドコードの全シーケンスを確実に捕捉することができる。次に、集められたＧＰＳ信号のミリセカンド部分のどこでシーケンスが始まるのかを見つけるかが問題となる。
【００３１】
図４は、コールドコードシーケンスの位置を決定するプロセッサ３１０のより詳細な略図である。メモリ３１２内に記憶されたデジタル信号は、どこからゴールドコードが始まるのかを決定するため既知のゴールドコードと関連づけられる（ｃｏｎｖｏｌｖｅｄ）。かかる既知のゴールドコードは、ゴールドコード生成器４０２によって生成される。ゴールドコード生成器４０２によって生成されたゴールドコードは、受信されたＧＰＳ信号と関連付け器（ｃｏｎｖｏｌｖｅｒ）４０４内で関連づけられる。関連付け器４０４は、関連づけられた信号４０６を出力する。ピーク４０６ａ、４０６ｂ、４０６ｃ、又は４０６ｄは、ゴールドコード生成器４０２によって生成されたゴールドコードが、デジタルＧＰＳ信号と最もマッチする箇所を表す。ここで、ピーク４０６ｃが反転していることに注意すべきである。これは、ＧＰＳ信号中に在し、２０ミリセカンド毎に起こる、１８０度位相シフト（ここでは、”移行”と呼ばれることもある）の影響である。
【００３２】
よく知られているように、タイムドメインにおける関連づけは、計算によって集中的に行われるプロセス（ｉｎｔｅｎｓｉｖｅ ｐｒｏｃｅｓｓ）である。したがって、本発明は、受信ＧＰＳ信号とゴールドコードの既知の複製との関連づけ（ｃｏｎｖｏｌｕｔｉｏｎ）を実行するため、周波数ドメイン技術（ｆｒｅｑｕｅｎｃｙ ｄｏｍａｉｎ ｔｅｃｈｎｉｑｕｅ） を用いることが好ましい。
【００３３】
図５Ａは、本発明の第一実施形態にかかる周波数ドメイン処理の略図である。明確化のため、かかる処理は、入力ＧＰＳ信号の１−ｍｓ部分について説明される。ゴールドコード生成器４０２は、ゴールドコードの１−ｍｓ（すなわち、全サイクル）部分を生成する。かかる、ゴールドコードは、ＦＦＴアルゴリズム５０６ａに入力される。受信ＧＰＳ信号５０４のデジタル化された１−ｍｓ部分は、ＦＦＴアルゴリズム５０６ｂに入力される。ＦＦＴアルゴリズムの出力は、信号の周波数ドメイン表示である。入力ＧＳＰ信号セグメントの信号の周波数ドメイン表示ならびにゴールドコードは、周波数ドメイン乗算器５０８によって乗算される。
【００３４】
よく知られているように、周波数ドメインにおける乗算は、タイムドメインにおける関連づけと等しいが、動作はかなり少なくて済む。周波数ドメインの乗算の積は、逆ＦＦＴアルゴリズム５１０によりタイムドメインに復元される。振幅演算器５１２は、逆ＦＦＴアルゴリズム５１０の出力上でポイント毎の振幅の演算を実行する。ピーク検出器５１４は、どこでビンの値（ｂｉｎ ｖａｌｕｅ）がしきい値を超えたかを判断することによりピークの位置を決定する。このようなビンの位置は、受信ＧＰＳ信号信号信号のコード位相として取られる。ピーク位置をさらに精緻化するため、補完法を用いることができ、これを以下に説明する。
【００３５】
どのようなサイズのＦＦＴであっても用いることが出来る。しかし、本発明のある実施形態において、ＦＦＴの分解能は、どの信号が処理されているか、および、かかるプロセスがどの段階にあるか、によって変化する。また、ＦＦＴは不要であり、２倍のパワーも不要である。しかし、ＦＦＴ等の計算上効率的なアルゴリズムの使用を可能とするので、パワーが２倍であることが好ましい。本発明のある実施形態において、ＦＦＴの分解能は、１ＫＨｚ／ｂｉｎである。入力信号は、４．０９６ＭＨｚでデジタル化される。１ＫＨｚの分解能を得るため、入力する信号を周波数ドメインに変換するよう４、０９６ポイントのＦＦＴが用いられる。情報の周波数帯域は、１．０２３ＭＨｚであるから、前記信号はサンプルの取り過ぎである（ｏｖｅｒｓａｍｐｌｅｄ）。したがって、最も低い１、０２４ポイントだけが用いられ、１ＫＨｚの分解能を有する１．０２４ＭＨｚの実効周波数帯域がもたらされる。
【００３６】
上述のように、ゴールドコードシーケンスは、各ＧＰＳサテライトに固有である。これは、永久かつ普遍なコードである。したがって、ゴールドコードシーケンスのＦＦＴは、予め演算可能であり、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ等の不揮発性メモリ、又は他のどのような不揮発性メモリにも記憶することができる。さらに、かかるＦＦＴを、初期化終了後、メモリ３１２内に記憶させることも出来る。図５Ｂは、ゴールドコードの周波数表示が予め計算され、システムの稼働前に記憶された場合に使用することができる本発明の第二の実施形態にかかるシステムの略図である。かかる予め計算されたゴールドコードの周波数ドメイン表現５２０は、周波数ドメイン乗算器５０８に入力され、上述のような処理が続けられる。
【００３７】
本発明によってもたらされる他の改良点は、受信機から見て、各ＧＰＳサテライトのコントリビューションが、合成された入力ＧＰＳ信号中に存在することを認識することから生じる。これにより、同じ信号部分を全てのＧＰＳ信号信号サテライトに用いることが出来る。したがって、入力信号セグメントを、周波数ドメインに変換するのはたった一度で済む。
【００３８】
上述のように、信号をベースバンドに混合するため用いられるキャリア周波数が実際のキャリア信号ではない場合、乗算器４０４又は５０８は、実質的にノイズである。したがって、振幅演算器５１２によって生成された振幅中に識別可能なピークは存在しない。すなわち、ピークのしきい値よりも大きい値を有するビンも存在しないであろう。かかる事態が生じると、プロセッサ３１０は、ゴールドコードを生成するために用いられているキャリア周波数が、誤っていると推定する。したがって、所定量だけキャリア周波数が変更され、上記プロセスが繰り返される。予想されるドプラーによる不確実性（Ｄｏｐｐｌｅｒ ｕｎｃｅｒｔａｉｎｔｙ）、および、信号をベースバンドに混合するため用いられる発信器の周波数の不確実性をカバーするディスクリートキャリア周波数のセットがテストされるまで上述のプロセスを連続的に繰り返す。ピーク（所定のしきい値を超える値を有するビン）を生じさせるキャリア周波数が見つけられると、プロセッサ３１０は、キャリア周波数のサーチを停止し、ピークを与えるキャリア周波数を用いる。
【００３９】
デジタル信号は、既に周波数ドメインに変換されているので、本発明を用いて周波数をシフトすることは、比較的容易である。このことは、信号の周波数が、Ｎ個のビンにより、信号のＦＦＴをシフトすることだけにより変更されているからである。周波数シフトの合計は、各ビンの分解能のＮ倍である。左側へのシフトは周波数を低下させるが、右側へのシフトは周波数を上昇させる。ビンの分解能以外の周波数シフトが求められている場合、これは、ＦＦＴを実行する前に、信号のタイムドメイン器表現と、所望のオフセットと等しい周波数を有する複合指数関数（ｃｏｍｐｌｅｘ ｅｘｐｏｎｅｎｔｉａｌ）を乗算することにより達成される。
【００４０】
さらに、実際のキャリア周波数とマッチしないことを原因とする損失を最小化するため、キャリア周波数をビンの分解能の半分の刻みにする（ｓｔｅｐｐｅｄ ｉｎ ｈａｌｆ−ｂｉｎ ｒｅｓｏｌｕｔｉｏｎｓ）こともできる。この方法により達成されるのは、メモリ３１２内に記憶されたデジタル信号と、ビンの分解能の半分と等しい周波数を有する複合指数関数を乗算することである。次に、ビンの半分の周波数シフトが行われ、この信号に対し、上述の手続きが繰り返される。こうして現れた最も高いピーク同士が比較され、高い二つのピークに対応するキャリア周波数ならびにコード位相が、コード位相ならびにキャリア周波数として選択される。周波数シフトが小さい、すなわち、分解能が高いほど、よりよい結果が得られること、に注意すべきである。しかし、かかる高い分解能の処理は、より長い処理時間を必要とする。
【００４１】
ゴールドコードは、１．０２４ＭＨｚでサンプリングされる。ゴールドコードは、それ自身に内在する１．０２３ＭＨｚでサンプリング可能であるが、ＦＦＴ等の効率的なアルゴリズムを用いることが出来るよう、２倍のパワーレートでサンプリングするのが好ましい。１０２４−ポイントのＦＦＴが、サンプリングされたゴールドコードシーケンスに対して適応される。
【００４２】
上述のように、ゴールドコードシーケンスは、各ＧＰＳサテライトに固有、永久（すなわち、任意のサテライトのものであっても変わらない）かつ既知のコードである。したがって、ゴールドコード、および、その結果として生じる各サテライトの周波数表示は、予め計算することが出来、後のアクセスのため、テーブル内に記憶することが可能である。このように、各ゴールドコードの周波数表示を生成するため、各サテライトのゴールドコードシーケンスが、ＦＦＴアルゴリズムに適用される。これらのゴールドコードの周波数表示は、受信機の動作前にメモリに記憶される。かかる周波数表示は、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ等の不揮発性メモリ、等の、プロセッサ３１０によってアクセス可能などのような不揮発性メモリにも記憶することができる。また、かかる周波数表示は、テーブル内に記憶するのが好ましい。プロセッサ３１０が、特定のサテライトのゴールドコードの周波数表示を必要とする場合、実行時間において演算するのではなく、テーブルから取り込む。
【００４３】
また、予め演算されたゴールドコードシーケンスは、上述のハーフビン分析に関し、より効率的な動作を提供する。この場合、ゴールドコードの周波数表示は、ハーフビンによりシフトし、上述のようにメモリ内に非シフトゴールドコード（ｎｏｎ−ｓｈｉｆｔｅｄ Ｇｏｌｄ ｃｏｄｅ）として記憶される。かかるシフト済みのゴールドコードは、ハーフビン分析用に用いられる。予め演算されたハーフビンシフト済みのゴールドコードを記憶するのに必要とされる追加のメモリ資源に備え、改善された演算効率を測定しなければならない。入力信号の周波数をシフトする場合と同様に、小さい周波数のシフトでも、よい結果、すなわち、高い分解能、が得られる。繰り返すが、かかる高分解能処理を行うには、より長い処理時間が必要である。
【００４４】
入力信号ならびに特定サテライトのゴールドコード周波数ドメイン表現は、積の信号を生成するため、互いに乗算される。かかる積の信号は、入力信号ならびにゴールドコードのコンボリューションの周波数ドメイン表現である。逆ＦＦＴアルゴリズム５１０は、二つの信号のタイムドメインのコンボリューションを得るため、逆ＦＦＴ動作を実行する。
【００４５】
逆ＦＦＴアルゴリズム５１０は、１０２４ポイントの逆ＦＦＴを実行することも出来る。しかし、その結果は、逆ＦＦＴ動作の分解能を上昇させることによって、実質的な改善を示すことができる。これは、前記積の信号の終わりに０を付加することによりなされる。例えば、分解能を２倍にするには、前記積の信号の終わりに１０２４個の０を付加する（ｂｙ ａｐｐｅｎｄｉｎｇ １０２４ ０’ｓ ｔｏ ｔｈｅ ｅｎｄ ｏｆ ｔｈｅ ｐｒｏｄｕｃｔ ｓｉｇｎａｌ）とともに、２０４８ポイントの逆ＦＦＴを行うことによって達成される。同様に、分解能を４倍にすることは、前記積の信号の終わりに３０７２個の０を付加するとともに、４０９６ポイントの逆ＦＦＴを行うことによって達成される。当業者にとっては、かかる方法によってＦＦＴの分解能を向上させるとともに、ＦＦＴを逆にすることは、既知のことである。
【００４６】
逆ＦＦＴ動作の分解能を上昇させると、入力信号のコンボリューションの本当のピークならびにゴールドコードが逆ＦＦＴ動作のビン間で低下（ｆａｌｌｉｎｇ）するリスクが低くなる。ピークエネルギーを、ビン間に拡散させることにより、特に、ＧＰＳ受信機が動作する高ノイズ環境における高ノイズ環境ピークの検出が困難となる。また、いずれかのビンにおけるピークエネルギーは、所定しきい値を超えてはならない。これにより、ピーク検出器５１４は、そこで有効なピークを検出しない。逆ＦＦＴ動作５１０の分解能を上昇させると、かかる問題を防止することが出来る。
【００４７】
入力信号の４、０９６ポイントをとるＦＦＴの他の結果としては、上述の周波数シフトを実行した場合に、かかるシフトが、元のＦＦＴにおける４、０９６ポイントを全て使用しなければならない、ことがある。かかるシフトは、１、０２４個の低いポイントだけを用いて実行することも出来るが、４、０９６ポイントＦＦＴを用いてシフトするとともに、１０２４個の低いポイントを用いることによって、より正確な結果が得られる。
【００４８】
ＧＰＳ信号は、非常に微弱なものなので、積分処理が１ミリセカンドだけで終了する場合、ピークの検出が困難である。したがって、数ミリセカンドの入力ＧＰＳ信号がデジタル化され、記憶され、処理された場合、結果は改善される。例えば、４又は１６ミリセカンドのデータを用いると、かかる時間間隔にわたり積分を行うことにより達成されるゲインによってノイズの影響が克服されるので、結果が改善される。多数のミリセカンドが用いられるが、かかる数は、集められた信号の各ミリセカンドにおいて完全なゴールドコードシーケンスが見られるよう、１ミリセカンドの倍数であることが好ましい。ゴールドコード（その周期が１ミリセカンドである）は、集められた信号の各ミリセカンドサンプルの同じ場所で、生じなければならない。
【００４９】
図６は、本発明の第三の実施形態にかかる入力ＧＰＳ信号の複数のミリセカンド部分を処理するシステム６０１の、ある実施形態における略図である。図６において、入力信号６０２の４ｍｓ部分が処理のため集められる。上述のように、こうして集められた信号は、どのような長さであってよいが、１ミリセカンドの倍数であることが好ましい。入力信号６０２は、６０４ａ、６０４ｂ、６０４ｃ、ならびに６０４ｄの４つのセグメントに分割される。
【００５０】
ＦＦＴプロセッサ６０６は、４つのセグメントそれぞれにＦＦＴを実行する。上述のように、最初の１、０２４ポイントだけを、以後の処理のために保存する。かかる１、０２４ポイントのセグメントは、入力信号のセグメント６０４ａ、６０４ｂ、６０４ｃ、ならびに６０４ｄとそれぞれ対応するセグメント６０８ａ、６０８ｂ、６０８ｃ、ならびに６０８ｄである。当業者には、知られていることであろうが、これは、１ｍｓを法とする（１ｍｓ ｍｏｄｕｌｏ）循環的なコンボリューション（ｃｉｒｃｕｌａｒ ｃｏｎｖｏｌｕｔｉｏｎ）である。ほとんどの場合、循環コンボリューションで十分であるが、集められた信号の移行が発生する線形コンボリューション（ｌｉｎｅａｒ ｃｏｎｖｏｌｕｔｉｏｎ）を用いることによって、ある程度の処理ゲインが得られる。このことは、後で詳しく説明される。
【００５１】
ＦＦＴセグメント６０８ａ、６０８ｂ、６０８ｃ、ならびに６０８ｄは、デジタル入力信号６０２に寄与する（ｃｏｎｔｒｉｂｕｔｉｎｇ）ＧＰＳサテライトと関連するゴールドコード６０９の周波数ドメイン表現、に乗じられる。上述のように、周波数ドメインゴールドコード６０９は、予め演算されていることが好ましい。これに代え、周波数ドメインゴールドコード６０９を得るため、タイムドメインゴールドコードのＦＦＴが実行される。かかる乗算は、各ＦＦＴセグメントに関し、乗算器６１０ａ、６１０ｂ、６１０ｃ、ならびに６１０ｄ内でポイント毎に進められ、各セグメントの積がそれぞれ乗算結果６１２ａ、６１２ｂ、６１２ｃ、ならびに６１２ｄに記憶される。上述のように、この動作はタイムドメインコンボリューションと同じである。
【００５２】
逆ＦＦＴアルゴリズム６１４は、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄを得るため、各乗算結果６１２ａ、６１２ｂ、６１２ｃ、ならびに６１２ｄについて、それぞれ逆ＦＦＴを実行する。かかるコンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄは、入力信号セグメント６０４ａ、６０４ｂ、６０４ｃ、ならびに６０４ｄを有するゴールドコードのコンボリューションとそれぞれ対応する。
【００５３】
キャリア周波数がほぼ正確である場合、ゴールドコードが各セグメントである場所に対応する上記コンボリューションのそれぞれにピークが存在すべきである。したがって、コンボリューションの積分をポイント毎に行うことにより、ノイズからピークを識別する能力が改善される。振幅−および−合計（ｍａｇｎｉｔｕｄｅ−ａｎｄ−ｓｕｍ）アルゴリズム６１８は、積分を実行するために用いられる。
【００５４】
コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄが、振幅および合計アルゴリズム６１８に与えられる。振幅および合計アルゴリズム６１８は、１、０２４ポイントのコンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄについてポイント毎の振幅および合計動作、を実行する。
ピーク位置に対応するポイントの合計は、本質的にノイズである他のポイントよりも大きい。ピーク検出器６２０は、前記合計における１、０２４ポイントのそれぞれと、所定のピークしきい値を比較することにより、ピークの位置を決定する。値がピークしきい値を超える場合、かかる値が生じたその位置が、ピーク位置であると推定される。かかるピーク位置は、現在処理中のＧＰＳサテライトに関連づけられたコード位相の推定値である。
【００５５】
上述のように、正確なキャリア周波数も決定される。ピークが存在しない場合、上述のように、ＦＦＴビンの分解能により周波数がシフトされる。信号の複数のミリセカンド部分も処理された場合に、上述のハーフビン分析を行うことが可能となる。この場合、四つの１ーミリセカンドセグメントのそれぞれについてハーフビン処理が行われる。すなわち、ハーフビンにより周波数をシフトさせるため、ハーフビンと等しい周波数を有する複合指数関数が、４−ｍｓの入力信号のセグメント６０４ａ、６０４ｂ、６０４ｃ、ならびに６０４ｄのそれぞれに乗算される。入力信号の４−ｍｓの周波数シフトを用いることで、上述のように処理が続けられる。さらに、ピーク検出についてより高い分解能を提供するため、必要であれば、逆ＦＦＴアルゴリズムに供給される前に乗算結果６１２ａ、６１２ｂ、６１２ｃ、ならびに６１２ｄにゼロを付加してもよい。それに代えて、入力ＧＰＳ信号のＦＦＴではなく、上述のように、周波数ドメイン内の周波数をシフトするとともに、ゴールドコードのＦＦＴをシフトすることにより、周波数シフトを行うこともできる。
【００５６】
この処理は、合成入力ＧＰＳ信号に寄与する各ＧＰＳサテライトについて繰り返される。各サテライトに関し、かかるサテライトは、固有のゴールドコードを各サテライトに中継する（ｓａｔｅｌｌｉｔｅｓ）。
【００５７】
前記の処理では、ＧＰＳ入力信号の集められた部分のゴールドコードシーケンスに移行がない、と推定される。上述のように、ゴールドコードシーケンスは、２０マイクロセカンド毎に常に反転する。１ミリセカンドセグメント中の移行位置は、当該特定のセグメントのゴールドコードのコンボリューションに大きく影響する。セグメントの最初に移行が生じた場合、大体はマイナスのピークが現れる。振幅値が合計に用いられているので。このことは、結果に影響を及ぼさない。かかる移行がセグメントの最初からさらに移動するにつれて、ピークは低下する。これがセグメントの中央で起こった場合、無視できる程度のものとなる。かかる移行がセグメントの中央から移動するにつれ、コンボリューションから生じるピークの値が増加する。ピーク値は、セグメントの最後において、自身の正の最大値に戻る。しかし、最悪の場合、かかる移行により、そこでコントリビューション（ｃｏｎｔｒｉｂｕｔｉｏｎ）が生じる１−ｍｓセグメントからのピークに対するいかなるコントリビューションも完全に削除されてしまう。したがって、かかる移行がセグメントの中央で起こった場合、３つのセグメントだけが、そこで４ｍｓの入力信号が積分されたピークに寄与する。同様に、１５セグメントだけが、そこで１６ｍｓの入力信号が積分されたピークに寄与する。したがって、かかる移行は、処理をほとんど低下させない。
【００５８】
移行に関する前述の問題は、上述の断片的な循環コンボリューション（ｐｉｅｃｅｗｉｓｅ ｃｉｒｃｕｌａｒ ｃｏｎｖｏｌｕｔｉｏｎ）の代わりに線形コンボリューションを実行することにより防止することが可能である。かかる線形コンボリューションを実行する技術の効率的な種類は、一般に、区分コンボリューション（ｓｅｃｔｉｏｎｅｄ ｃｏｎｖｏｌｕｔｉｏｎ）として知られている。区分コンボリューションにおいて、メモリに記憶された入力信号の全体部分の重複したセグメントは、メモリに記憶されたゴールドコードＦＦＴに関連づけられる。各重複部分のＦＦＴがとられ、ゴールドコードＦＦＴと乗算される。かかる結果の逆ＦＦＴが演算され、前記結果を用いて重ね合わせ保存（ｏｖｅｒｌａｐ−ｓａｖｅ）又は重ね合わせ加算（ｏｖｅｒｌａｐ−ａｄｄ）法が実行される。よく知られている二つの区分コンボリューション、重ね合わせ保存法および重ね合わせ加算法は、その全体が参照のため本明細書に取り込まれる、ローレンス　Ｒ．ラビナー＆バーナード　ゴールド著の、デジタル信号処理の原理と応用、２．２５章（”区分コンボリューション”）（１９７５年）に詳しい。
【００５９】
例えば、入力信号の４ｍｓ部分を用いると、区分コンボリューションの結果は、入力信号を有するゴールドコードの４ｍｓの線形コンボリューションとなる。各セグメントの振幅が、演算され、全てのセグメントについての振幅が上述の方法によりポイント毎に合計される。区分コンボリューションは、セグメントの境界にわたって各セグメントの全てのゴールドコードシーケンスを用いているので、循環コンボリューションが用いられる移行に伴う上述の問題は、存在しない。どちらかと言えば、ピークは、移行が存在する場所で反転する。上述のように、振幅は、加算プロセスにおいて用いられるので、反転が存在することは、重要ではない。
【００６０】
これまで説明してきたプロセスは、非同期式平均法（ｎｏｎ−ｃｏｈｅｒｅｎｔ ａｖｅｒａｇｉｎｇ）を用いている。ここで、平均および積分は、同義語として用いられている。ピーク位置は、同期式平均法を用いることで、更に正確に求める（ｆｕｒｔｈｅｒ ｒｅｆｉｎｅｄ）ことができる。同期式平均法には、２ステップのプロセスが採用される。最初のステップにおいては、キャリア周波数ならびにコード位相のおおまかな予測を得るために、上述の複数セグメント法（ｍｕｌｔｉ−ｓｅｇｅｍｅｎｔ ｔｅｃｈｎｉｑｕｅ）が用いられる。第二ステップにおいては、こうして得られたキャリア周波数ならびにコード位相の推定値を精緻化するために、同期式信号処理法（ｃｏｈｅｒｅｎｔ ｓｉｇｎａｌ ｐｒｏｃｅｓｓｉｎｇ ｔｅｃｈｎｉｑｕｅｓ）が用いられる。
【００６１】
前記の同期信号処理法は、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄを用いる。これらを加算することにより、一緒に平均してから振幅を取り、ピーク検出を行うことが望ましい。しかし、かかる動作を行うためには、周波数をかなり正確に把握する必要がある。なぜなら、入力信号の間隔を変更すると、入力信号とキャリア周波数の推定値間の周波数の差が、ベクトルの回転、すなわち、位相のオフセット、として明らかになるからである。かかる位相のオフセットは、演算された合計の振幅を低下させる。このベクトルの回転は、ミリセカンドにわたるが、おそらく、重要なものではないであろう。しかし、数ミリセカンドにわたるベクトルの回転は、平均プロセスにとって有害となりうる。
【００６２】
ベクトルの回転を明かにするため、回転周期が決定される。これは、１ｍｓコンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄでのピークの位置（上で決定された）における複合値を分析することにより行われる。かかる周期は、既知のいずれかの技術を用いて決定される。例えば、サイン波の周期を決定するため、４ポイントのＦＦＴを用いることも出来る。上述のゼロを付加する方法（ｚｅｒｏ−ａｐｐｅｎｄｉｎｇ ｔｅｃｈｎｉｑｕｅ）によって、精度が向上する。例えば、４、１２、又は２８又は他の数の０を付加することによって、より高い精度を得ることができる。ＦＦＴのサイズは、演算能力の２倍であることが好ましい。ＦＦＴは、ピークにおける各々の独立した値中に存するノイズの平均を出す。ピーク位置における複合値を用いてサイン波の周期を決定する他のカーブフィッテイング法（ｃｕｒｖｅ−ｆｉｔｔｉｎｇ ｔｅｃｈｎｉｑｕｅ）は、当業者にとっては明かであろう。
【００６３】
かかる周波数オフセットを用いることで、各コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄでベクトルの回転が補償される。これは、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄと、上記のピーク位置で決定された周期のサイン波の値を有する複合指数関数を、ブロック的に乗じること（ｂｌｏｃｋ ｍｕｌｔｉｐｌｙｉｎ）により行われる。次に、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄが平均される。この場合、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄの合計は、振幅の演算前に行われる。これは、処理のコヒーレントな性質（ｃｏｈｅｒｅｎｔ ｎａｔｕｒｅ）から可能である。
【００６４】
図７は、上述のかかる方法による同期式処理を示す。コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄの例示部分は、大まかなコンボリューションが、入力信号の各ミリセカンドの間に、ゴールドコードが入力信号に最も適切に配置されている箇所を示している。これらが、ピーク７０１ａ、７０１ｂ、７０１ｃ、ならびに７０１ｄである。各ピークに関連づけられている位相は、それぞれ位相表現７０２ａ、７０２ｂ、７０２ｃ、ならびに、７０２ｄで示される。入力信号のキャリア周波数とローカルで生成されたゴールドコードの周波数がぴったりマッチすると、位相表現７０２ａ、７０２ｂ、７０２ｃ、ならびに、７０２ｄは、それぞれ等しくなる。
【００６５】
しかし、図７に示すように、時間が経過するにつれ、すなわち、コンボリューションセグメントからコンボリューションセグメントまでに、位相が回転する。この位相の回転レートは、入力信号のキャリア周波数とローカルで生成されたゴールドコードの周波数との間の周波数オフセットに対応する。かかる周波数オフセットは、例えば、上述のように、ＦＦＴを行うことにより推定される。ベクトル７０２ａの位相は、基準（ｒｅｆｅｒｅｎｃｅ）として任意に選択される。上記で計算された周波数オフセットを用いることにより、各コンボリューション６１６ｂ、６１６ｃ、および６１６ｄについて、ピーク時の位相が決定される。この位相と前記基準間の差が、同期式平均法を可能にするため、各コンボリューションの積に与えられる、回転量である。かかる位相は、コンボリューションセグメントと、前記基準からの位相差と等しい位相を有する複合指数関数を、乗算する複合ブロックによって供給される。
【００６６】
１−ｍｓのサンプル全体でなく、ピーク及びピークのいずれかの側の一又はそれ以上のポイントのみを処理することによって、別の効果を得ることも出来る。数個の点を用いることにより、１０２４ポイント全ての処理を実行するよりも、処理が著しく高速になる。この後の説明では、５ポイント（推定されたピーク位置のいずれかのサイド上で２ポイントおよび推定されたピーク位置のポイント）のみが用いられる。しかし、推定されたピーク位置を取り囲む、ならびに、含む、どのような数のポイントを用いても良いことに注意すべきである。
【００６７】
前述の回転を前記５ポイントに与えた後、コード位相をより正確に決定するため、ピークの検出が実行される。ピークの検出には、いろいろな方法がある。例えば、ピークが与えられるのか、を決定するため、パラボリックフィット等のカーブフィッテイング法（ｃｕｒｖｅ−ｆｉｔｔｉｎｇ ｔｅｃｈｎｉｑｕｅｓ）を用いることも出来る。
【００６８】
これに代え、テーブルルックアップ法が用いられる。この方法において、ゴールドコードは、様々なオフセット、好ましくはチップの長さを超えるもの、で完璧な入力信号に関連づけられる。かかる様々なオフセットは、チップ長さにわたり均一に変化することが好ましい。どのような数のポイントを用いてもよいが、例えば、演算の効率化のため、５ポイントだけを用いるようにしても良い。また、どのようなオフセット数を用いるようにしてもよい。例えば、６４のオフセットを用いた場合、値の第一のセットは、ゴールドコードならびに入力信号の完璧な配置に相当する。テーブルにおける値の第二のセットは、ゴールドコードと入力信号間のチップ長の１／６４番目の配置ずれ（ｍｉｓａｌｉｇｎｍｅｎｔ ｏｆ １／６４ｔｈ）に相当する。前記テーブルは、予め計算され、上述のゴールドコードのＦＦＴの場合のように、不揮発性メモリ内に記憶されていることが好ましい。
【００６９】
図８は、ゴールドコードに関連する入力信号の予め計算したタイミングオフセットを記憶しているテーブルの使用状況を示す略図である。ピーク８０１の近傍にある回転した５ポイントは、相関器８０４を用い、テーブル８０２内の各エントリーＥＮＴ１、ＥＮＴ２からＥＮＴ　Ｎと相関される。最大の相関点が、最大値選択器８０６によって、コード位相の正確な値として選ばれる。かかる最大相関点は、振幅およびコンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄから、上記のように決定されたおおまかなコード位相を調整するために用いられる。
【００７０】
コード位相ならびに周波数の大まかな予測値は、かかる予測値を正確に調整するのに要求される補完法よりも多くの演算が要求されるので、本発明を、さらに最適化することができる。これは、周波数ならびにコード位相の大まかな予測値を決定する初期のステップにおいては、長い処理時間が必要になるので、小さいデータ（例えば、４又は８ミリセカンド）を用いなければならないが、周波数ならびにコード位相を正確に調整するためには、短い処理時間しか要らないので、大きなデータ（例えば、１６ミリセカンド）を用いることが出来るからである。
【００７１】
しかし、前述の方法に対して、どのような量のデータを提供することも可能である。
【００７２】
受信信号のＳＮ比が非常に小さい場合、例えば、ＧＰＳ信号信号受信機がビル又は他の構造物内ある場合、であっても本発明の変更例を用いることができる。この場合、ＳＮ比は、おおまかな周波数ならびにコード位相を決定するため、非同期式平均法を行うには低い値であってもよい。この場合に求められるのは、コード位相ならびに周波数を決定するため、同期式平均法を行う能力である。
【００７３】
この変更例において、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄを作り出すための処理は、前に説明した通りである。次に、図７に基づき行われた同期式処理が、コンボリューション６１６ａ、６１６ｂ、６１６ｃ、ならびに６１６ｄの各ポイントで行われる。したがって、単に、大まかなピーク位置で同期式処理を一度だけ行うだけでなく、同期式処理を１０２４回（すなわち、コンボリューションサイズがいかに多かろうとも）行う。結果として生じた値同士は、次に、どこにピークがあるのか決定するため、比較される。ピーク位置が決定されると、ピーク位置は、カーブフィッテイング法又はルックアップテーブルを用いて上述のように精緻化される。
【００７４】
以下は、本発明の数学的基礎を示すものである。上述のように、本発明は、拡散コード（ゴールドコード）のシーケンスｈ（ｎ）とマッチする、コンボルバーの複合ベースバンド出力（ｃｏｍｐｌｅｘ ｂａｓｅｂａｎｄ ｏｕｔｐｕｔ）に基づいて動作する；
【数１】
2004509358.tif 000003
ここで、集められたＧＰＳ信号のｎ∈［０、１、・・・・、Ｎ−１］およびＮは、集められたＧＰＳ信号のサンプル数である。上述のように、かかるコンボリューションは、周波数ドメイン内で実行することが好ましい。
【００７５】
ある実施形態において、このコンボリューションは、連続したコンボリューションであり、区分コンボリューション技術（ｓｅｃｔｉｏｎｅｄ ｃｏｎｖｏｌｕｔｉｏｎ ｔｅｃｈｎｉｑｕｅ）を用いて実行することが好ましい。周波数ならびにコード位相のオフセットが正しければ、ピークは、集められたＧＰＳ信号の各１ミリセカンドセグメントのゴールドコードシーケンスの始点位置に対応するコンボリューション出力中に現れるはずである。上述のように、前記ピークの信号対雑音比（ＳＮＲ）は、積分によって改善することが可能である。
【００７６】
上述のように、かかる積分の一つは、非同期式平均法である。非同期式平均法において、集められたＧＰＳ信号の各１ミリセカンドにおける各サンプルの振幅は、振幅ベクトルｚ（ｎ）を得るため、他の複数の１ミリセカンドセグメントのそれぞれにおいて対応する振幅に加算される。したがって、ｚ（ｎ）は以下のように求められる。
【００７７】
【数２】
2004509358.tif 000004
ここで、Ｔは、ゴールドコード位相の周期であり、Ｎは、集められたＧＰＳ信号のサンプル数であり、Ｍは、積分時間（ｉｎｔｅｇｒａｔｉｏｎ ｔｉｍｅ）である。Ｍは、集められたＧＰＳ信号の１ミリセカンドセグメントの数に対応する。十分なＳＮ比および積分時間を用いることにより、非同期式平均法は、１ミリセカンドセグメントの境界と関連づけ器の出力ピーク間の以下に示す時間オフセットで確実にピークを生成する。
【００７８】
【数３】
2004509358.tif 000005
このピークの位置は、ゴールドコードの時間オフセットに対応する。
【００７９】
また、上述のように、次に、本発明は、この時間推定値（ｔｉｍｅ ｅｓｔｉｍａｔｅ）を精緻化する。これは、ピーク位置におけるコンボルバー出力を分析することにより行われ、ｗ（ｍ）＝ｙ（ｎ０＋ｍＴ）によって得られる、ここで、ｍ∈［０、１、・・・、Ｍ−１］であり、Ｍは、積分時間（例えば、ミリセカンドセグメントの数）である。これらのサンプル（ｗ（ｍ））は、次に、Ｍ個のサンプルについて生じうる全てのデータ変調シーケンス（ａｌｌ ｐｏｓｓｉｂｌｅ ｄａｔａ ｍｏｄｕｌａｔｉｏｎ ｓｅｑｕｅｎｃｅｓ ｆｏｒ ｔｈｅ Ｍ ｓａｍｐｌｅｓ）に乗算される。すなわち、Ｍ個のサンプルが連続した時点でデータの変化が生じると推定されるとともに、Ｍ個のサンプルのそれぞれが対応するデータ値と乗算される。したがって、ｄｓ（ｍ）のデータ変調シーケンスが存在し、ここで、ｍ∈［０，１、・・・・、Ｍ−１］、ｓ∈［０，１、・・・・、Ｐ−１］であり、Ｍは、積分時間（例えば、ミリセカンドセグメントの数）であり、Ｐは、Ｍ個のセグメントにより与えられ得るデータシーケンスの数である。これらの積には、以下を生じさせるＬ−ポイントＤＦＴが採用される。
【００８０】
【数４】
2004509358.tif 000006
ここで、ｆ∈［０，１、・・・・、Ｌ−１］、ｓ∈［０，１、・・・・、Ｐ−１］である。Ｌは、周波数分解能を向上させるため、ＬにゼロをＭ個付加することによって（ｂｙ ａｐｐｅｎｄｉｎｇ Ｌ−Ｍ ｚｅｒｏｅｓ）得ることができる。以下に示すＰの変化についての最大値の位置（ｆ０，ｓ０），は、データシーケンスの推定値ｄｓ０（ｍ）、ｍ∈［０，１、・・・・、Ｍ−１］をもたらす最大値を含む変化に対応する、周波数オフセットの推定値ｆ０、および、データシーケンス指数ｓ０である：
【数５】。
2004509358.tif 000007
大まかな時間推定値をｎ０ 、周波数オフセットの推定値をｆ０、ならびに、データシーケンスの推定値ｄｓ０（ｍ）であり、ｍ∈［０，１、・・・、Ｍ−１］であるとすると、次に、本発明は、正確な時間オフセット推定値τ０を決定する。これは、関連づけ器の理想的な出力、ν（ｔ，τ）、ｔ∈［−Ｒ、−Ｒ＋１、・・・、Ｒ−１、Ｒ１］を、ν（０、τ）が関連付け器の出力のピークに相当するよう、一連の時間オフセット｛τｋ｜ｋ∈［０、１、・・・・ｋ−１］｝にわたって生成することにより決定される。上述のように、コンボルバーのピークのほとんどの部分を捕捉するため、領域［−Ｒ、−Ｒ＋１、・・・・、Ｒ−１、Ｒ１］が選ばれる。次に、理想的なノイズのない入力波形の数学モデルから分析的手法によりピークが決定される。
【００８１】
これに代え、上述のように、一連の時間オフセットにわたる理想的なコンボルーバー出力のテーブルが予め計算される。かかる計算は、分析的に派生する機能を用いることができる、すなわち、必要とされる値は、与えられた時間オフセットを有する理想的なノイズのない入力波形を生成するとともに、コンピュータの動作をシミュレートするコンピュータモデル、から得ることができる。
【００８２】
本発明においては、同期式技術を用いることもできる。以下の記載により、同期式平均技術を用いる場合の数学的基礎が提供される。同期式平均技術は、大まかな時間オフセットでの各コンボルバー出力のピークの周辺と、三つの要素を乗算し、結果として生じた積を、集められたＧＰＳ信号のＭ個のセグメントにわたって平均化すること、を必要とする。
【００８３】
第一の要素は、データシーケンスの推定値ｄｓ０（ｍ）、ｍ∈［０、１、・・・・、Ｍ−１］から得られる。コンボルバー出力のピークを含むセグメントに対応する前記推定されたデータシーケンスの複合共役は、上述のピークを含む領域の各サンプルに乗じられる。第二の要素は、周波数オフセットの推定値ｆ０から演算される。周波数オフセットの推定値で生成されたキャリアの複合共役は、ピークを含む領域の各サンプルに乗じられる。第三の要素は、一連の時間オフセット｛τｋ｜ｋ∈［０、１、・・・・ｋ−１］｝中、理想的なコンバーター出力、ν（ｔ，τ）、ｔ∈［−Ｒ、−Ｒ＋１、・・・・、Ｒ−１、Ｒ１］を生成する手段から得られる。ピークを含む領域内の各サンプルは、特定の時間オフセット中、理想的なコンボルバー出力の対応サンプルに乗じられる。
【００８４】
領域にわたる平均値は、
【数６】
2004509358.tif 000008
であり、次に、τ∈｛τｋ｝は、その共役に乗じられ、以下の距離関数を生成するため合計される：
【数７】
2004509358.tif 000009
ここで、τ∈｛τｋ｝である。検索アルゴリズムは、距離関数を最大化するため、所定の異なる時間オフセットにおける距離関数Ｑ（τ）、を評価する。簡単なアルゴリズムであれば、固定されたグリッド（ｆｉｘｅｄ ｇｒｉｄ）の時間オフセットにわたる距離関数を評価し、最大値を選ぶことができる。時間オフセットの合計がｔ０＝ｎ０＋τ０によって得られるように、距離関数Ｑ（τ）の最大値を提供する以下の時間オフセットは、大まかな時間推定値ｎ０ から正確な時間オフセット推定値として選択される、前記時間オフセットは：
【数８】
2004509358.tif 000010
である。
【００８５】
本発明の他の実施形態において、Ｔ（サンプリングされたコードセグメント長）の非整数値は、補償される。Ｔの非整数値は、例えば、サンプルクロックがゴールドコードシーケンスの周波数の正確な倍数でない場合に生じうる。かかる条件は、サンプルクロック発信器がゴールドコードシーケンスの周波数と完璧に同期しない場合、あるいは、受信されたＧＰＳ信号にドプラー偏移（Ｄｏｐｐｌｅｒ ｓｈｉｆｔｓ）が生じた場合、に起こりうる。Ｔ’は、非積分ゴールドコード周期の推定値であり、Ｔは、Ｔ’に最も近い整数であり、εは、Ｔの端数部分（ｆｒａｃｔｉｏｎａｌ ｐａｒｔ）であり、Ｔ’＝Ｔ＋εであると仮定すると、ここで集められたＧＰＳセグメントにわたる平均値は：
【数９】
2004509358.tif 000011
ｔ∈［−Ｒ、−Ｒ＋１、・・・・、Ｒ−１、Ｒ１］、τ∈｛τｋ｝と計算される。この式において、ν＊（ｔ，τ＋ｍε）は、τ＋ｍεに最も近いτ∈｛τｋ｝の値で評価される。次に、距離関数Ｑ（τ）は、上述のように評価される。Ａ（ｔ，τ）に関する式から見られるように、εの影響は、積分時間が増加するにつれ、大きくなる蓋然性が高い。
【００８６】
本発明は、受信信号における未知の大きなドプラー偏移を補償することも可能である。このことは、周波数ビンを介するという観点から、上で説明されている。数学的には、コンボルバーは、以下を評価するよう調整される：
【数１０】。
2004509358.tif 000012
本発明のある実施形態において、かかる調整技術は、次に、ｆＤの一連の値の各メンバーに適用される。時間オフセットの合計ｔ０＝ｎ０＋τ０を計算するため、ｆＤの全ての値にわたって距離関数の最大値をもたらすｎ０とτ０の組み合わせが選択される。距離関数の最大値がもたらすｆＤの値は、ｆＤ０と表される。
【００８７】
ｆＤの値を全て検索し、ｎ０とτ０を決定するため全ての計算を実行する前記実施形態は、ｆＤ０を強引に決定するための方法（ｂｒｕｔｅ ｆｏｒｃｅ ｍｅｔｈｏｄ）の一つである。ｆＤ０を最初に決定することにより、時間オフセットの合計ｔ０＝ｎ０＋τ０をより効率的に決定することが可能となる。例えば、本発明の他の実施形態においては、コンボルバーの出力振幅、ｆＤの一連の値の各周波数ｚ（ｎ０）を評価することにより、ｆＤ０が決定される。最大振幅をもたらすｆＤの値は、ｆＤ０として取られる。したがって、本発明のかかる実施形態において、ｆＤ０は、以下の通り求められる：
【数１１】。
2004509358.tif 000013
かかるｆＤ０の値は、次に、時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するため、前記の調節技術において用いられる。
【００８８】
さらに、本発明の他の実施形態において、ｆＤ０は、上述のように、ｆＤの一連の値における各周波数についてＷ（ｆ０，ｓ０）、を評価することにより決定される。Ｗ（ｆ０，ｓ０）の振幅を最大にするｆＤの値は、ｆＤ０として取られる。したがって、本発明のこの実施形態において、ｆＤ０は、以下の通り求められる：
【数１２】。
2004509358.tif 000014
かかるｆＤ０の値は、次に、時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するため、前記の調節技術において用いられる。
【００８９】
本発明の前述の３つの実施形態のいずれかを用いてドプラーオフセットｆＤ０が一旦決定されると、サンプルクロックでのエラーε、が推定可能となる。εは、以下の式により評価される：
【数１３】
2004509358.tif 000015
ここで、ｆｃは、送信信号のキャリア周波数（すなわち、いずれのドプラー偏移よりも前であり、ｆｓは、サンプルレート）である。
【００９０】
上述のように、本発明は、集められた全てのＧＰＳ信号にわたる連続コンボリューションではなく、集められたＧＰＳ信号のセグメントに関して実行された循環コンボリューションに適用可能である。かかる循環コンボリューションは、複合ベースバンド信号入力シーケンスを非重複ブロック（ｎｏｎ−ｏｖｅｒｌａｐｐｉｎｇ ｂｌｏｃｋｓ）にセグメント化し、各ブロックについて高速フーリエ変換（ＦＦＴ）を実行し、ゴールドコードシーケンスのＦＦＴ値と各変形ブロックを乗算し、前記積の逆ＦＦＴを取り、さらに、結果として生じたセグメントを結合（ｃｏｎｃａｔｅｎａｔｉｎｇ）すること、により実行されることが好ましい。時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するための残りの技術は、上述の通りである。
【００９１】
未知の大きなドプラー偏移を補償する上述の技術は、循環コンボリューションを用いることによっても適用可能である。例えば、本発明のある実施形態において、コンボルバーは、ｈ（ｎ）ｔ∈［０、１、・・・、Ｎ−１］を有する、以下の循環コンボリューションを評価するために調節される：
【数１４】。
2004509358.tif 000016
かかる調整技術は、次に、ｆＤの一連の値の各メンバーに適用される。時間オフセットの合計ｔ０＝ｎ０＋τ０を計算するため、ｆＤの全ての値にわたり距離関数の最大値をもたらすｎ０とτ０の組み合わせが選択される。距離関数の最大値もたらすｆＤの値は、ｆＤ０と表される。
【００９２】
時間オフセットの合計を決定するための、この強引な方法は、上述のように、最初にｆＤ０を決定することによって、ｔ０＝ｎ０＋τ０をより効率的に決定することが可能である。例えば、本発明の他の実施形態においては、コンボルバーの出力振幅、ｆＤの一連の値の各周波数ｚ（ｎ０）を評価するため、循環コンボリューションを用いることでｆＤ０が決定される。最大振幅をもたらすｆＤの値が、ｆＤ０として取られる。したがって、本発明のかかる実施形態において、ｆＤ０は、以下の通り求められる：
【数１５】。
2004509358.tif 000017
かかるｆＤ０の値は、次に、時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するため、前記の調節技術で用いられる。時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するプロセスを続ける前に、所定周波数ｆＤ０で線形コンボリューションが実行される。
【００９３】
本発明の他の実施形態において、ｆＤ０は、上述のように、ｆＤの一連の値における各周波数についてＷ（ｆ０，ｓ０）、を評価することにより決定される。Ｗ（ｆ０，ｓ０）の振幅を最大にするｆＤの値は、ｆＤ０として取られる。したがって、ｆＤ０は、以下の通り求められる：
【数１６】。
2004509358.tif 000018
かかるｆＤ０の値は、次に、時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するため、前記の調節技術において用いられる。時間オフセットの合計ｔ０＝ｎ０＋τ０を決定するプロセスを続ける前に、所定周波数ｆＤ０で線形コンボリューションが実行される。
【００９４】
本発明の前述の３つの実施形態のいずれかを用いてドプラーオフセットｆＤ０が一旦決定されると、サンプルクロックでのエラーε、が推定可能となる。εは、以下の式により評価される：
【数１７】。
2004509358.tif 000019
ここで、ｆｃは、送信信号のキャリア周波数（すなわち、いずれのドプラー偏移よりも前であり、ｆｓは、サンプルレート）である。
【００９５】
本発明の他の実施形態は、大まかな時間オフセットの推定値ｎ０を生成するために非同期式平均法を用いない、正に強引な方法である。それに代え、ありうる各値ｎ０ ＝０、１、２、・・・、Ｎ−１について、距離関数の最大値が評価される。距離関数Ｑ（τ）を最大化するｎ０とτ０の組み合わせは、時間オフセットの合計ｔ０＝ｎ０＋τ０を計算するため選択される。本発明のかかる実施形態は、以前に説明した本発明の他のいずれかの実施形態と組み合わせることができる。
【００９６】
本発明の好ましい実施形態の前述の開示は、例示と説明の目的のためになされたものであり、発明を網羅し又は開示された形式に限定すること意図したものではない。当業者にとっては、上述の開示を考慮すれば、開示された実施形態の様々な変更および改良をなすことは明かである。本発明の範囲は、添付した特許請求の範囲、および、その均等物のみによって定められる。
【００９７】
さらに、本発明の代表的な実施形態を説明するにあたり、本明細書は、ステップの特定ステップとして本発明の方法、および／又は、プロセスを表現している。しかし、方法又はプロセスは、目的に一致する範囲で、ここで述べられているステップの特定の順序に依存するものではなく、前記方法又はプロセスは、述べられたステップの順序に限定されるべきではない。当業者であれば理解するように、ステップは、他の順序でも良い。したがって、明細書中で述べたステップの特定の順序を、特許請求の範囲に関する限定事項として解釈してはならない。さらに、方法又はプロセスに方向付けられた特許請求の範囲は、記述された順序におけるそのステップの動作（ｐｅｒｆｏｒｍａｎｃｅ）に限定されるべきでなく、当業者であれば、順番を変更しても、本発明の精神ならびに範囲は、そのままであることを直ちに理解することができる。
【図面の簡単な説明】
【図１】
図１は、測位に用いられる従来のＧＰＳ受信機の略図である。
【図２】
図２は、キャリア周波数ならびにゴールドコード位相を決定するため、従来のＧＰＳ受信機により実行されるサーチプロセスを示すグラフである。
【図３】
図３は、本発明に基づき使用することが可能な一又は複数のＧＰＳサテライトからＧＰＳ信号を取得するＧＰＳ受信機の略図である。
【図４】
図４は、ゴールドコードシ−ケンスの位置を決定するプロセッサの略図である。
【図５Ａ】
図５Ａは、本発明の第一の実施形態にかかる周波数ドメイン処理の略図である。
【図５Ｂ】
図５Ｂは、本発明の第二の実施形態にかかる周波数ドメイン処理の略図である。
【図６】
図６は、本発明の第三の実施形態にかかる入力ＧＰＳ信号の複数のミリセカンド部分を処理するシステムの実施形態の略図である。
【図７】
図７は、本発明にかかる同期式処理を示す。
【図８】
図８は、ゴールドコードに関連する入力信号の予め計算したタイミング補正を記憶しているテーブルの使用状況を示す。
【図１】
2004509358.tif 000020
【図２】
2004509358.tif 000021
【図３】
2004509358.tif 000022
【図４】
2004509358.tif 000023
【図５Ａ】
2004509358.tif 000024
【図５Ｂ】
2004509358.tif 000025
【図６】
2004509358.tif 000026
【図７】
2004509358.tif 000027
【図８】
2004509358.tif 000028
【国際公開パンフレット】
2004509358.tif 000029
2004509358.tif 000030
2004509358.tif 000031
2004509358.tif 000032
2004509358.tif 000033
2004509358.tif 000034
2004509358.tif 000035
2004509358.tif 000036
2004509358.tif 000037
2004509358.tif 000038
2004509358.tif 000039
2004509358.tif 000040
2004509358.tif 000041
2004509358.tif 000042
2004509358.tif 000043
2004509358.tif 000044
2004509358.tif 000045
2004509358.tif 000046
2004509358.tif 000047
2004509358.tif 000048
2004509358.tif 000049
2004509358.tif 000050
2004509358.tif 000051
2004509358.tif 000052
2004509358.tif 000053
2004509358.tif 000054
2004509358.tif 000055
2004509358.tif 000056
2004509358.tif 000057
2004509358.tif 000058
2004509358.tif 000059
2004509358.tif 000060
2004509358.tif 000061
2004509358.tif 000062
2004509358.tif 000063
2004509358.tif 000064
2004509358.tif 000065
2004509358.tif 000066
2004509358.tif 000067
2004509358.tif 000068
【国際調査報告】
2004509358.tif 000069