(57)【要約】弱信号の衛星送信を用いて受信機の場所を算出する方法、装置およびシステム。本発明は、補助情報を受信機に供給する役目を果たす、補助情報源と受信機の間の一連のやり取りを含み、弱い衛星送信の存在下で受信機の場所を算出できるようにする。新規の受信機は、弱い衛星信号中では時刻同期日ｆを抽出できないにもかかわらず、補助情報を用いて、弱い衛星信号を検出、捕捉および追尾し、計算した擬似レンジから位置解を計算する。本発明は、局部発振器の校正、相互相関の相殺、ドップラー場所方式、アンサンブル平均化方式、軌道係数テーブルからのアルマナック補助情報の計算、絶対時間の算出、および改良型検索エンジンのための方法および装置を特徴として含む。
2006502412.tif 000002
【特許請求の範囲】
【請求項１】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
該ＳＰＳシステムに情報を送信する補助情報源と、
測定された衛星ドップラー差から初期の大まかな場所を計算するアルゴリズムを実行するプロセッサとを備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項２】
前記受信機は局部発振器を有し、前記プロセッサによって実行されるアルゴリズムは、現在の局部発振器オフセットに依存しない請求項１に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項３】
衛星信号の減衰の存在下で受信機の場所を特定する方法であって、ＳＰＳシステムが、
前記ＧＰＳ受信機によって行われる入力観測毎に、宇宙機（ＳＶ）のクロック補正を衛星送信時刻と衛星ドップラー周波数の両方に施すステップと、
該補正された衛星送信時刻において衛星位置を計算するステップと、
前記受信機の場所を推定するステップと、
受信機の場所の残留誤差が所定の基準未満となるまで以下のステップを繰り返すステップと、
衛星レンジレートの推定値を求めるステップと、
ユーザ位置の最新の推定値を補正するステップと
を含むドップラー測位アルゴリズムを実行する請求項１に記載の衛星信号の減衰の存在下で受信機の場所を特定する方法。
【請求項４】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
該ＳＰＳシステムに情報を送信する補助情報源と、
前記受信機内の局部発振器と、
前記受信器内のプロセッサによって実行され、信号フレーミング間隔の数によって正確に特定される期間のあいだ前記局部発振器のサイクルとその分数を計数することによって、該局部発振器を校正するアルゴリズムとを備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項５】
ＳＰＳ受信機の局部発振器を校正する方法であって、信号フレーミング間隔の数によって正確に特定される期間のあいだ局部発振器のサイクルとその分数を計数するステップと、校正オフセットを計算するステップと、該校正オフセットを、前記ＳＰＳ受信機のファームウェアが捕捉検索を行う際に補正として用いるステップとを含む、ＳＰＳ受信機の局部発振器を校正する方法。
【請求項６】
ＳＰＳ受信機の局部発振器を校正する方法であって、信号フレーミング間隔の数によって正確に特定される期間のあいだ局部発振器のサイクルとその分数を計数するステップと、校正オフセットを計算するステップと、該校正オフセットを用いるステップであって、それによって、発振器周波数を補正する、用いるステップとを含む、ＳＰＳ受信機の局部発振器を校正する方法。
【請求項７】
前記校正オフセットは、該オフセットを最小化するように前記発振器周波数を補正するために用いられる請求項６に記載のＳＰＳ受信機の局部発振器を校正する方法。
【請求項８】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
該ＳＰＳシステムに情報を送信する補助情報源と、
強い信号の振幅を低減するキャンセラであって、相関器に組み込まれるキャンセラと
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項９】
相殺を行う各チャネルに相殺フィンガが設けられ、該相殺フィンガは、妨害信号を追尾するチャネルのプロンプトフィンガへのコード発生器入力から１つの入力を、また、相殺を行うフィンガのコード発生器入力から第２の入力を取得する請求項８に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１０】
前記相殺は、前記信号が約１０ビットで表現される時点で行われる請求項８に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１１】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
該ＳＰＳシステムに情報を送信する補助情報源と、
平均化によって雑音から信号パワースペクトルを抽出するプログラムを制御するプロセッサであって、前記プログラムはＦＦＴを実行し、ＦＦＴビンの大きさの二乗がフィルタリングされる、プロセッサと
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１２】
各コード検索ステップにおいて、いくつかのＦＦＴ期間のあいだ停止する請求項１１に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１３】
各ＦＦＴ期間においてＮ倍の平均化に対して通常の１／Ｎの検索ステップ幅を適用する請求項１１に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１４】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
該ＳＰＳシステムに情報を送信する補助情報源と、
プロセッサ内で実行される、平均化によって雑音から信号パワースペクトルを抽出するアルゴリズムと
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１５】
チャネル毎に、自己畳み込みアレイの大きさの二乗にフィルタをかける請求項１４に記載の衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１６】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
参照テーブル中の、いくつかの最も一般的な衛星の軌道のハードコードした軌道係数と
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１７】
いくつかの前記最も一般的な衛星の軌道の軌道係数を参照テーブルにハードコードすること、および補助情報源から更新を一斉同報することを含む、ＳＰＳ受信機においてアルマナックデータを更新する方法。
【請求項１８】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
部分コード位相、基準タイムスタンプおよび前記受信機の場所の推定値から完全な送信時刻を得るアルゴリズムを実行するプロセッサと
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【請求項１９】
衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステムであって、
搬送波周波数上で同期された符号化信号を送る複数の軌道衛星であって、前記符号化信号は、同期データを含む反復エポックを有する、複数の軌道衛星と、
前記符号化信号の組を検出、捕捉、追尾すると同時に、前記エポックに関して前記組のコード位相を求める受信機と、
１機目の衛星の捕捉後に少なくとも６０チップの検索レンジを有する検索エンジンと
を備える、衛星信号の減衰の存在下で受信機の場所を特定するＳＰＳシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
［発明の分野］
本発明は、米国のＮａｖｓｔａｒ全地球的測位システム（ＧＰＳ）、ロシアの全地球的航法衛星システム（ＧＬＯＮＡＳＳ）および欧州のＧａｌｉｌｅｏシステムといった衛星利用測位システム（ＳＰＳ）において使用される受信機の設計に関する。より具体的には、本発明は、弱信号の衛星送信を用いて受信機の場所を算出する方法、装置およびシステムに関する。
【０００２】
本願は、２００２年１０月４日付で出願された米国仮出願第６０／４１６，３６７号の優先出願日を主張する。
【０００３】
［発明の背景］
衛星利用測位システムは、連続的な直接シーケンス拡散スペクトル信号を地球に送信する衛星のコンステレーションを利用することによって動作する。これらの衛星の受信範囲にある受信機は、拡散スペクトル搬送波上に変調されたデータ（航法メッセージ）を搬送するこれらの信号を傍受する。このデータは、信号中の或る特定の瞬間（instants）における正確な送信時刻を衛星自体に軌道パラメータ（例えばＧＰＳの場合には正確なエフェメリスデータと大まかなアルマナックデータ）とともに提供する。４機の衛星のそれぞれから受信機までの信号の飛行時間を推定し、この推定した飛行時間に対応する送信時の衛星の位置を計算することによって、受信機のアンテナの正確な場所を算出することが可能である。
【０００４】
従来のＳＰＳ受信機では、これを行うプロセスは、少なくとも４機の衛星の擬似レンジを推定し、次にこれらの擬似レンジから受信機の正確な場所およびクロック誤差を計算することを伴う。各擬似レンジは、１機の衛星から受信機までの飛行時間に光速度を乗じたものとして計算されるため、衛星と受信機の間の距離すなわち「レンジ」の推定値となる。飛行時間は、航法メッセージから特定される送信時刻と、受信機内のクロックを用いて特定される受信時刻との間の差として推定される。受信機のクロックは必然的に、衛星のクロックに比して異なる現在時刻を有することになるため、４つのレンジの計算には共通誤差が生じる。この共通誤差は、受信機のクロックにおける誤差に光速度を乗じたものである。
【０００５】
少なくとも４機の衛星を用いることによって、一組の方程式を解いて、受信機のクロック誤差とアンテナの場所の両方を算出することが可能である。３つの測定値しか得られない場合でも、受信機の座標のうちの少なくとも１つがすでに分かっていれば、場所とクロック誤差を算出することは可能である。多くの場合、アンテナの高度を推定することによって、この状況に近づけることができる。
【０００６】
衛星からの信号は、擬似ランダム２値拡散コードによって比較的高い「チップ」レート（例えば１，０２３ＭＨｚ）で二相変調され、次に２値航法メッセージによって低いデータレート（例えば５０Ｈｚ）で二相変調された搬送波信号からなる。搬送波対雑音比は通常、アンテナから衛星への視野方向を遮るもののない受信機の場合、地表において非常に低い（例えば３１ｄＢＨｚ〜５１ｄＢＨｚ）。しかし、従来の位相ロックループおよび遅延ロックループ技法を用いて信号を検出、捕捉および追尾できるようにし、データが抽出されれば十分である。
【０００７】
従来のＳＰＳ受信機における信号のコードの追尾プロセスは、ハードウェアコード発生器および信号混合器の使用を伴う。局部発生させたコードが到来信号のコードと正確に一致する場合、混合器からの出力はコード変調を全く含まない。よって信号の帯域幅はずっと狭くなり、信号をフィルタリングして信号対雑音比を大きく高めることができる。これは通常、デシメーションフィルタを用いて、相関器の出力サンプリングレートが入力サンプリングレートよりもずっと低くなるように行われる（例えば１．３ＭＨｚの入力に対して１ｋＨｚの出力）。
【０００８】
また、ＧＰＳの場合、受信機における任意の所与の瞬間に対応するこの信号の正確な送信時刻は、コード発生器の状態をラッチしてコード位相を得ること、各データビット中のコードエポックを計数すること、航法メッセージの各ワード中のビットを計数すること、メッセージの各サブフレーム中のワードを計数すること、ならびにサブフレーム境界に対応する送信時刻を抽出および復号化することによって算出することができる。あらゆるＳＰＳに同様の方式を用いることができる。
【０００９】
しかし、従来のＳＰＳ受信機は、弱化した送信信号の存在下で、位置の特定中に厄介な中断に見舞われる可能性がある。アンテナと衛星の間のまっすぐな視野方向が遮られた場合、信号はアンテナ到達時に大幅に減衰している場合がある。従来の技法は、これらの信号を検出、捕捉および追尾するために用いることができない。さらに、こうした状況では、信号を検出できたとしても、ＧＰＳ信号の搬送波対雑音比は例えば２４ｄＢＨｚと低いか、それ以下である場合があるため、信号からデータを抽出することが不可能である。
【００１０】
従来技術の装置は、補助情報を使用することで、これらの欠点を最小限に抑えるか、あるいは克服しようとしてきた。このような方式では、付加的な情報が様々な二次送信源を介してＳＰＳ受信機に外部から供給されて、減衰信号により生じた情報の不足分を埋め合わせる。このような装置の例は以下の特許に教示される。Taylor他（米国特許第４，４４５，１１８号）（衛星アルマナックデータによって補助）、Lau（米国特許第５，４１８，５３８号）（差動（differential）衛星測位情報およびエフェメリスによって補助）、Krasner（米国特許第５，６６３，７３４号）（ドップラー周波数シフトの送信によって補助）、Krasner（米国特許第５，７８１，１５６号）（ドップラー周波数シフトの送信によって補助）、Krasner（米国特許第５，８７４，９１４号）（ドップラー、初期化および擬似レンジデータによって補助）、Krasner（米国特許第５，８４１，３９６号）（衛星アルマナックデータによって補助）、Loomis他（米国特許第５，９１７，４４４号）（選択された衛星エフェメリス、アルマナック、電離圏、時刻、擬似レンジ補正、衛星インデックスおよび／またはコード位相属性によって補助）、Krasner（米国特許第５，９４５，９４４号）（タイミングデータによって補助）、Krasner（米国特許第６，０１６，１１９号）（衛星信号からのデータの再送信によって補助）。
【００１１】
しかし補助情報には、付加的な送信機能が必要となる。補助情報は例えば、付加的な衛星送信機または無線電話システムを用いてＳＰＳ受信機に送ることができる。そのため、供給される補助情報の量を低減してそのような付加的な資源の使用を制限することは非常に有利である。例えば、補助情報を伝えるために無線通信ネットワークの音声パスが用いられている場合、音声通信は補助メッセージによって妨害されることになる。したがって、補助メッセージは、音声の妨害を許容可能な持続時間および周波数に制限するため、可能な限り短くなければならない。また、補助データがどのように伝えられるとしても、その通信は、受信機の動作を遅らせることになる。多くの用途において、場所データは即座に必要とされるため、いかなる遅延も最小限に抑えるべきである。
【００１２】
［発明の簡単な説明］
本発明は、国際特許出願ＰＣＴ／ＡＵ０１／００５１９に開示される発明に対する改良である。
【００１３】
局部発振器の校正
多くの補助ＧＰＳ用途において、衛星信号の迅速な捕捉は重要な要件である。捕捉は、受信装置内の基準発振器のドリフトのために遅れる。受信機から衛星への視野方向に沿った相対速度は、受信信号の周波数にドップラーシフトを生じる。ドップラーシフトは、受信機アンテナの速度に関する有用な情報を含むが、ドップラーシフトが存在する場合、周波数検索が必要となり、捕捉時間が増大する。基準発振器のドリフトは、基準発振器のドリフトを許容するために「ドップラー」周波数検索を増やすため、捕捉時間を長くする主な要因である。デジタル通信リンクの正確な信号のフレーミングを使用することによって、本発明は、局部発振器を校正し、それによってドリフト効果を低減する。これは、信号フレーミング間隔の数によって正確に特定される期間のあいだ、局部発振器のサイクルとその分数（fraction）を計数することによって達成される。校正オフセットが算出されたら、これをＧＰＳ受信機ファームウェアが捕捉検索を行う際に補正として用いるか、あるいは、オフセットを最小化するように発振器周波数を補正するために用いることができる。
【００１４】
相互相関の相殺
本発明の別の態様は、相関器の出力で生じる弱い信号と強い信号との相互相関の低減である。これらの相互相関は、ＧＰＳ  Ｃ／Ａコード構造に固有の制限である。或る特定のコードにおけるコード間の相互相関およびドップラーオフセットは、自己相関メインローブのピークとの間でわずか２０ｄＢである。相関器の出力において、これらの相互相関は、求めている弱い信号の局部発生させた複製との相関と区別がつかない。強い信号により生じる相互相関のレベルを下げると、相互相関が弱い信号に及ぼす妨害効果が低減される。このようにして、有効ダイナミックレンジを増大させ、強い信号の存在下でも弱い信号を捕捉、追尾および使用できるようにする。２Ｄの測位（fix）を行うには少なくとも３機の衛星が必要であり、３Ｄの測位を行うには４機の衛星が要求される。さらに、精確な測位を行うことを可能にするほど十分に小さい精度劣化指数を得るには、この最小数よりも多い数が必要となる場合がある。したがって、存在する信号をより多く使用できることが利点となる。ビルの谷間では、この利点は、強い信号が大抵１つまたは２つしかなく、これらが弱い信号をすべて妨害するという点において明確となる。強い信号を相殺するという概念に伴う最大の問題は、相関器への入力における信号の表現精度が非常に低く、よって信号のスケーリングは極めて粗くしか行うことができないことである。これは、この概念の実行可能性を脅かす。本発明は、信号が１０ビットサンプルで表現された時点でスケーリングを行うことを可能にするため、スケーリングの実現可能性は遥かに高くなる。
【００１５】
ドップラー場所方式
本発明の別の態様は、弱い信号環境では、ＧＰＳ受信機の初期位置が１５０ｋｍ以内まで分からないとコード位相のあいまいさを解消できないという問題を扱う。１５０ｋｍというのは、コードエポックの２分の１が占める時間に衛星信号が移動する距離である。本発明は、測定した衛星ドップラー差から初期位置を計算することによって、場所の予備知識を必要とせずに自律的に初期位置を計算する方法を提供する。差を用いて計算を行うことにより、現在の局部発振器のオフセットへの依存を確実に計算から除去する。
【００１６】
アンサンブル平均化方式
本発明のさらに別の態様は、フーリエ変換を行う際の制限により生じる感度の制限に関する。変換は、周波数ビンに値を蓄積することを伴う。以前のアルゴリズムは、ビン幅の縮小が二乗損失によってオフセットされるため、感度に制限がある。これは、ＦＦＴ（高速フーリエ変換）のサイズを非現実的な長さまで大きくしてしまう。この問題を克服するために、１６０ｍｓ（ＦＦＴ長で１２８）を越える積分期間については、スペクトル平均化アルゴリズムを使用する。ＦＦＴアレイを記憶するためのメモリの過剰使用を避けるために、本発明は、捕捉時の自己畳み込み（autoconvolutions）と同様にＦＦＴビンの大きさの二乗をフィルタリングすることによって、移動平均のやり方で動作する。
【００１７】
軌道係数テーブルからのアルマナック補助情報（Aiding）の計算
本発明のさらに別の態様は、受信機から補助情報源（aiding source）へのトラフィックを少なくする。特に、受信機に自身のアルマナックデータを捕捉させ、特定のアルマナック問題のためのオーグメンテーション係数を補助情報として要求することに対する代案が提供される。その代わりに、本発明は、軌道係数を参照テーブルにハードコードし、補助情報を定期的に一斉同報として供給する。
【００１８】
絶対時間の算出
本発明の別の態様は、信号対雑音比が低いときにＧＰＳ信号からデータを抽出する問題に関する。多くの場合、弱信号ＧＰＳ受信機の出力は、完全な（full）送信時刻（擬似レンジ）ではなく各衛星のコード位相に制限される。しかし、完全な送信時刻は、観測のための基準タイムスタンプ、ならびにユーザの場所の推定値が利用可能であれば、部分コード位相から得ることができる。ユーザの場所の推定値は、そのあいまいさが１５０ｋｍ（０．５ｍｓ）未満であるならば、各衛星の公称飛行時間を計算するために用いることができ、基準タイムスタンプは、受信時刻を推定衛星送信時刻に変換するために用いられる。次に、コード位相を用いて、送信時刻の推定値をあいまいさの解消された送信時刻に精緻化する。このあいまいさの解消された送信時刻は、実際のユーザ位置と一致することになるため、実際のユーザ位置を計算するために用いることができる。
【００１９】
改良型検索エンジン
本発明のさらに別の態様は改良型検索エンジンである。現代のＧＰＳ受信機は、広範囲のコード位相および／またはドップラー周波数を同時検索することによって捕捉プロセスを高速化するために超並列相関ハードウェアを内蔵することが多い。このようなハードウェアは検索エンジンと呼ばれることもある。本発明において利用される信号処理アルゴリズムは、改良型検索エンジンに組み込まれ、必要な積分期間の長さを短くすることによって、さらに高速な検索を達成することができる。
【００２０】
本発明の目的は、上記の利点のそれぞれを有する、弱信号動作（weak signal operation）用の衛星利用測位システム受信機を提供することである。
【００２１】
これらの目的に従って、本発明に従って作製される装置は、屋内の場所で受信され得るような減衰した衛星信号を検出、捕捉および追尾する新規の信号処理方式を利用し、場所の解を計算する。この方式は、減衰した衛星信号と、最小限の外部供給補助情報とを新規な方法で使用する。
【００２２】
本発明を添付図面により例示する。しかし、これらの図は、本発明の例を示すものであり、その適用可能性を制限するものではない。
【００２３】
［発明の実施形態の詳細な説明］
本発明は、同一の譲受人が所有する米国特許第５，４５９，４７３号に開示される発明の改善および発展に関する。したがって、上記の米国特許は参照により本明細書中に援用される。
【００２４】
補助情報源と受信機の相互作用
上述のように、本発明に従って用いられる補助データは、ＳＰＳ受信機の大まかな場所と、特定組の衛星の位置および速度とを含む情報に限定することができる。この情報は、要求／応答シーケンスを通じて算出および供給される。本発明によるこのようなやり取りの一実施形態のモデルを図１に示す。
【００２５】
通常のやり取りには、ＳＰＳ受信機１と、補助情報源２と、被呼者（Call Taker：受呼者）３とが関与し得る。ＳＰＳ受信機１は例えば、無線電話または他のハンドセットに埋め込まれるか、それと同じ位置にあるＧＰＳ受信機であり得る。補助情報源２は、無線ネットワーク内のコールセンタあるいはセルサイトまたは他の場所に位置し、補助データが無線通信リンクを介してハンドセットへ送信されるようにしてもよい。被呼者３もまた、無線ネットワークからアクセス可能なコールセンタまたは他の場所に位置していてもよい。場所データの最終的なユーザは、被呼者３、またはＳＰＳ受信機１を携行するユーザであり得る。ＳＰＳ受信機１と、補助情報源２と、被呼者３との間の他の形態の送信も、本発明の目的から逸脱することなく利用することができる。
【００２６】
やり取りを開始するため、ＳＰＳ受信機１は第１の補助要求４を補助情報源２に送る。これは通常、ＳＰＳ受信機１の起動時に行われるが、他の時点でも行うことができる。補助情報源２は応答として、ＳＰＳ受信機１の大まかな場所を含む第１の補助応答５を送る。好ましくは、ＳＰＳ受信機１の大まかな場所は、衛星信号のコードエポックの２分の１に光速度を乗じたもの、すなわちＧＰＳの場合は約１５０ｋｍよりも正確である。この大まかな場所は、第１の補助報告６中で被呼者３にも送られることができる。
【００２７】
ドップラー場所方式の代案
弱い信号環境では、ＧＰＳ受信機の初期位置が１５０ｋｍ以内まで分からないとコード位相のあいまいさを解消することができない。場所の予備知識を必要とせずに自律的に初期位置を計算する方法は、測定した衛星ドップラー差から初期位置を計算することである。差を用いて計算を行うことにより、現在の局部発振器のオフセットへの依存を確実に計算から除去する。この方式を実施するドップラー測位アルゴリズムは以下の通りであり、図３のマイクロプロセッサ２０によって実行される。
１．ＧＰＳ受信機によって行われる入力観測毎に、宇宙機（ＳＶ）のクロック補正を衛星送信時刻（「Ｔｏｔｉ」）と衛星ドップラー周波数の両方に施す。
２．衛星「ｉ」毎に、補正された衛星送信時刻「Ｔｏｔｉ」において衛星位置Ｘｉ（Ｘｉ，Ｙｉ，Ｚｉ）を計算する。
３．計算された衛星位置のベクトル平均を取ることによって平均衛星位置を計算する。ベクトル平均を単位ベクトルに変換してから、地球の半径によってスケーリングする。これにより、ユーザ位置Ｘｕ（Ｘｕ，Ｙｕ，Ｚｕ）の初期推定値が得られる。ユーザの局所速度は、プロセス全体を通じて０であると仮定されため、（ＸｕＤｏｔ，ＹｕＤｏｔ，ＺｕＤｏｔ）は（０，０，０）である。
４．残留誤差が十分に小さく（例えば１００ｍ未満に）なるまで以下のステップ５〜１０を反復する。
５．ユーザ位置およびユーザ速度（０）の最新の推定値を用いて、衛星「ｉ」に対してレンジ「Ｒｉ」およびレンジレート「ＲＲｉ」ベクトルを計算する。これらは反復する毎に、ユーザ位置Ｘｕの推定値が実際の位置に集束するにつれて変化することに留意されたい。
６．レンジベクトル「Ｒｉ」を用いて、視野方向ベクトル「ＬＯＳｉ」（単位レンジベクトル）を計算する。視野方向ベクトルへのレンジレートベクトルの射影（ＲＲｉ．ＬＯＳｉ）を計算することによって、予測衛星レンジレートの推定値を求める。最後に、レンジレート予測ベクトル「ｙｈ」を、１機目の衛星のレンジレートと残り全てのレンジレートとの差のベクトルとして計算する。
７．測定した衛星観測を用いて、測定したレンジレートベクトル「ｙ」を最初に測定された衛星のレンジレート（上記の予測値と同様に同一単位にスケーリングしたドップラー周波数）との間の差として計算する。
８．衛星の視野方向ベクトルを用いて、１機目の衛星と残り全ての衛星との間の視野方向ベクトル差の測定行列「Ｍ」を計算する。行列の各行は、１機目の衛星のＬＯＳベクトルと、残りの衛星のＬＯＳベクトルのうちの１つとの間の差に対応する。
９．Ｍ行列の擬似逆行列「Ｍｐｉ」を計算する。
１０．ｄｘ＝Ｍｐｉ×（ｙ−ｙｈ）およびＸｕ＝Ｘｙ＋ｄｘを計算することによって、ユーザ位置の最新の推定値を補正する。補正「ｄｘ」の大きさが十分に小さな閾値（例えば１００ｍ未満）よりも小さい場合、反復プロセスを終了する。
【００２８】
絶対時間の算出
本発明の以下の態様は、ドップラー位置プロセスに関連する。弱い信号環境における補助ＧＰＳの制約の１つに、信号対雑音比が低いためにＧＰＳ信号からデータを抽出できないことがある。これは、弱信号ＧＰＳ受信機の出力が多くの場合に、完全な送信時刻（擬似レンジ）ではなく各衛星のコード位相に制限されることを意味する。しかし、完全な送信時刻は、観測の基準タイムスタンプならびにユーザの場所の推定値が利用可能であれば、部分コード位相から得ることができる。
【００２９】
ユーザの場所の推定値は、そのあいまいさが１５０ｋｍ（０．５ｍｓ）未満であるならば、各衛星の公称飛行時間を計算するために用いることができ、基準タイムスタンプは、受信時刻を推定衛星送信時刻に変換するために用いられる。次に、コード位相を用いて、送信時刻の推定値を、あいまいさの解消された送信時刻に精緻化する。このあいまいさの解消された送信時刻は、実際のユーザ位置と一致することになるため、実際のユーザ位置を計算するために用いることができる。
【００３０】
上記のプロセスが許容可能な位置精度を提供するためには、基準タイムスタンプの誤差が１０ｍｓ未満であることが必要である。以下に記載するアルゴリズムは、少なくとも１機の追加衛星が利用できるという条件で、推定受信時刻の誤差を計算することができる手段を提供する。このアルゴリズムの概念は、完全なすなわちあいまいさの解消された送信時刻が使用されることを除いて、ドップラー位置プロセスと同様である。
【００３１】
このアルゴリズムは追加の冗長衛星を必要とする。これは、受信時刻誤差を推定しようとすることが、さらなる自由度を導入することと等しいか、または、受信時刻誤差を推定するにはさらなる未知の、よってさらなる線形独立観測が必要となるためである。４つの観測しか利用可能でない場合、受信時刻に関係なく、問題に対する位置解は１つだけとなり、受信時刻誤差は常に０として計算されることになる。
【００３２】
このアルゴリズムは次の通りである。
１．衛星ｉからの未処理の入力観測毎に、宇宙機（ＳＶ）のクロック補正について衛星送信時刻Ｔｏｔｉを補正する。
２．衛星ｉ毎に、補正したＴｏｔｉにおいて衛星位置ベクトルＸｉ（Ｘｉ，Ｙｉ，Ｚｉ）および衛星速度ベクトルＸｉＤｏｔ（ＸｉＤｏｔ，ＹｉＤｏｔ，ＺｉＤｏｔ）を計算する。各衛星の相対論的補正もこの段階で計算することができる。
３．補正されたＴｏｔに相対論的補正を施し、ＳＶの位置および速度ベクトルを再計算する。
４．平均衛星位置を取り、これを単位ベクトルに変換し、地球の半径によって拡大することによってユーザ位置Ｘｕ（Ｘｕ，Ｙｕ，Ｚｕ）の起点を計算する。
５．残留位置誤差が十分に小さく（例えば１００ｍ未満に）なり、残留受信時刻推定誤差も十分に小さく（例えば１０ｍｓ未満に）なるまで以下のステップ６〜１９を反復する。
６．衛星ｉからの未処理の入力観測毎に、宇宙機（ＳＶ）のクロック補正について衛星送信時刻Ｔｏｔｉを補正する。また、相対論的補正を施す。（すなわちステップ（１）および（３））。
７．各衛星の補正されたＴｏｔｉを用いて、衛星の位置Ｘｉおよび速度ＸｉＤｏｔベクトルを再計算する。
８．最新のユーザ位置Ｘｕを用いて、衛星レンジＲｉおよびレンジレートＲＲｉベクトルを再計算する。レンジおよびレンジレートベクトルには地球の回転の補正も含まれる。
９．この時点におけるオプションのステップは、測定された観測に、電離圏および対流圏によって生じる伝送遅延効果を考慮に入れた付加的な補正を施すことである。
１０．補正された衛星観測を用いて、メートル単位にスケーリングされた送信時刻（または擬似レンジ）差のベクトルｙｄを生成する。この差は、１番目のＴｏｔと、それ以降のそれぞれのＴｏｔとの間で取られる。
１１．計算された衛星レンジベクトルを用いて、衛星毎にレンジ差の予測（メートル単位）のベクトルｙｄｈを計算する。この差は、１番目のレンジ予測と、それ以降のそれぞれのレンジ予測との間で取られる。
１２．測定（姿勢）行列Ｍを計算する。ここで、行列の各行は１番目のＬＯＳベクトルと、それ以降のそれぞれのＬＯＳベクトルとの間の差である。測定行列Ｍの擬似逆行列Ｍｐｉを計算する。
１３．ユーザ位置Ｘｕに対する補正をｄｘ＝Ｍｐｉ×（ｙｄ−ｙｄｈ）として計算する。
１４．アルゴリズムの反復回数が３回の反復を超えた場合、以下の付加的なステップ１５〜１９を含める。
１５．ユーザ位置Ｘｕの新たな推定値（ステップ１３において計算される）を用いて衛星のレンジＲｉおよびレンジレートＲＲｉベクトルを再計算する。
１６．補正された衛星観測を用いて、メートル単位にスケーリングされた衛星擬似レンジのベクトルｙを生成する。これは、ベクトルｙが擬似レンジ差ではなく完全な擬似レンジのベクトルであることを除いて、ステップ（１０）と同様である。この計算は、解くことのできる誤差を含む可能性がある受信時刻の推定値を必要とすることに留意されたい。
１７．計算された衛星レンジベクトルを用いて、衛星毎にレンジ予測のベクトル（メートル単位）ｙｈを計算する。これは、ベクトルｙｈが完全な擬似レンジ予測のベクトルであることを除いて、ステップ（１１）と同様である。
１８．２行およびＮｏｂｓ列からなる２番目の測定行列Ｍ１を計算する。ここで、Ｎｏｂｓは衛星観測の数である。１列目は値ｃを含み、ここでｃは、メートル毎秒で表される光速度である。２列目は、メートル毎秒を単位とする衛星レンジレートの推定値を含み、衛星レンジレートは、視野方向ベクトルへの衛星レンジレートベクトルの射影として計算される。
１９．ｄｔベクトルをｄｔ＝擬似逆行列（Ｍ１）×（ｙ−ｙｈ）として計算する。その場合、ｄｔの２番目の要素は、擬似レンジおよび擬似レンジの推定値を計算するために用いられる受信時刻の値が与えられた場合に、受信時刻誤差の推定値である。次に、この時刻を用いて、未処理の観測の受信時刻を補正し、手順を繰り返すことができる。
【００３３】
さらなる補助情報源と受信機の相互作用
ＳＰＳ受信機１は、大まかな場所と、以前に記憶されたアルマナックデータとを用いて、衛星信号を捕捉するための相関検索を行う。アルマナックデータと大まかな場所は、少なくとも１機の衛星が捕捉されれば、初期検索を制約するのに役立つ。捕捉時に、ＳＰＳ受信機１は第２の補助要求７を補助情報源２へ送る。第２の補助要求７は、ＳＰＳ受信機１が擬似レンジ差を算出する際に用いる特定組の衛星を特定するための情報を含む。補助情報源２は応答として、特定した衛星の組の正確な位置および速度を当該衛星のエフェメリスデータから算出する。算出された位置および速度は次に、第２の補助応答８中でＳＰＳ受信機１に送られる。この経過時間は既知であるため、補助要求の送信と受信の間の待ち時間を算出できるものと仮定すると、補助情報源は、衛星信号の受信時刻を数十ミリ秒以内まで算出することが可能である。
【００３４】
したがって本方式では、正確な衛星の位置および速度を補助情報源２が提供するため、ＳＰＳ受信機１ではなく補助情報源２が、衛星信号から特定の時間同期データを算出することができる必要があり、かつ、エフェメリスデータを維持または捕捉する必要がある。さらに、ＳＰＳ受信機１が補助情報源２から受信する際の衛星の位置を確実に精確なものとするため、ＳＰＳ受信機１と補助情報源２との間の通信の待ち時間は数十ミリ秒以内でなければならない。これにより、計算される衛星の場所の誤差を数メートルまで確実に制限することができる。この目的のため、好ましい実施形態において第２の補助要求７は、衛星信号のコード位相がラッチする瞬間から既知の時間が経過したときに行われる。この経過時間は既知であるため、補助要求の送信と受信の間の待ち時間を算出できるものと仮定すると、補助情報源２は、衛星信号の受信時刻を数十ミリ秒以内まで算出することが可能である。
【００３５】
ＳＰＳ受信機１は次に、衛星の位置および速度を受信した後で、擬似レンジおよびレンジレート差を用いて、位置・速度（Position and Velocity）（ＰＶ）解を計算し、自己の正確な場所、速度、進行方向（heading）などを算出する。このような算出の後、ＳＰＳ受信機１は次に、未処理の場所、速度、進行方向、高さ、衛星の識別情報（identifications）および受信機が用いる解の最頻値（solution mode）（すなわち高度の補助を用いた３Ｄまたは２Ｄ）を含む受信機報告９を補助情報源２に送る。
【００３６】
補助情報源２は、この受信機からの情報を受信すると、さらなるアクションを行うことができる。例えば、補助情報源２は、既知の衛星の組および送信時刻を用いて、差動擬似レンジ補正（任意の利用可能な手段によって得られる）を選択し、次に、報告された解の最頻値と一致する、対応する場所補正を計算してもよい。この場所補正の計算により、補助情報源２は、ＳＰＳ受信機が報告した場所に補正を施して、より最新の場所を得ることができる。次にこの正確な場所を、第２の補助報告１０中で被呼者３に送ることができる。
【００３７】
この上記のやり取りの代替的な実施形態として、ＳＰＳ受信機１は補助情報源２にコード位相差を報告する。この場合、補助情報源２は、ＳＰＳ受信機１と同様の方法を用いてＳＰＳ受信機１のＰＶ解を計算することもできる。
【００３８】
上述のように、本方式はＳＰＳ受信機１に、衛星信号からの実際の時間同期データを有するという利点がなくとも擬似レンジを計算することを要求する。このデータの使用を避ける理由は、衛星信号のコード位相が衛星信号の送信時刻における差のあいまいな測定値とみなされるためである。このデータの不使用は、同じ瞬間でのコード位相を測定し、受信時刻が共通になるようにすることによって達成される。さらに、コード位相差を擬似レンジ差に変換する上で必要な、あいまいさを解消することは、補助情報源２から得られる受信機の大まかな場所を利用することによって達成される。大まかな場所を次に、リアルタイムクロックからの大まかな時刻（およそ１分まで精確なもの）および最新のアルマナックデータ（生じるレンジ誤差が約３０ｋｍ未満であるＧＰＳの場合は最近２ヶ月未満のもの）と組み合わせるのであれば、衛星の大まかなレンジを、コードエポックの２分の１に光速度を乗じたもの（コード位相差のあいまいな間隔）よりも正確に求めることが可能となる。大まかなレンジの組とコード位相の組を組み合わせることによって、受信機を約１分よりも正確に同期させる必要なしに明白で正確な擬似レンジ差が導出される。
【００３９】
さらに、補助データを最小限にとどめる目的に一貫して、ＳＰＳ受信機１は、ドップラー情報を供給される必要なしにＰＶ解を計算することができる。従来の装置では、衛星のエフェメリスデータを用いる代案としてドップラー情報を用い、信号捕捉中に搬送波周波数検索を制限することを補助するか、あるいは衛星レンジの変化を予測している。一実施形態において、ＳＰＳ受信機１は、記憶された最新のアルマナックデータを用いてドップラー情報を推定する。
【００４０】
ＳＰＳ受信機１は、この最新のアルマナックデータを用いて衛星のドップラー周波数を、衛星の大まかな場所が約１００キロメートルよりも正確な精度で分かっているものと仮定して、ＧＰＳの場合は約２５０Ｈｚよりも正確な精度まで推定する。これは、ＳＰＳ受信機１の基準発振器の周波数オフセットが数Ｈｚ以内まで分かっていれば、高速捕捉を達成するのに十分な精度である。この基準発振器の周波数オフセット要件を達成するため、ＰＶ解を計算する度に基準周波数オフセットを推定する。よってこれを追尾することができる。さらに、基準周波数が温度および時間に伴い変化する程度まで、またＰＶ解の間の大きな温度変化が捕捉性能の低下をもたらす程度まで、ＳＰＳ受信機１は後述のように、変化に対処する方法を利用し、適切な降格化を保証する。
【００４１】
補助情報源１を使用せずに最新のアルマナックデータが確実にあるようにするには、ＳＰＳ受信機１は、データを最新に保つため、強い信号の存在下において十分な頻度かつ十分な長さで起動されねばならない。ＧＰＳシステムの場合、アルマナックデータは、最新であり続けるためには２ヶ月未満のものでなければならない。このＧＰＳでの目標を遂げるため、ＳＰＳ受信機１は、およそ２ヶ月の期間で約２７組の軌道係数を収集しなければならない。平均して、１組を収集するにはおよそ２０ｓに加え信号捕捉時間がかかり、全ての組を捕捉するにはこのような収集がおよそ６０回必要となる。よって、ＳＰＳ受信機１が強い信号の存在下において平均で約１日１回、約３０ｓにわたって起動されれば、記憶されたアルマナックは最新に保たれる。
【００４２】
軌道係数テーブルからのアルマナック補助情報の計算
補助情報を完全なエフェメリスとその発行時刻の形態でＧＰＳ受信機に供給することは、一般的な方法である。１つの可能性は、受信機に自身のアルマナックデータを捕捉させることであるが、補助情報として拡張（Augmentation）係数が供給される。これらの係数により、アルマナックデータから計算した場所および速度を、エフェメリス係数によって供給される場合と同様の精度まで補正することができる。この手法の１つの欠点は、受信機が、アルマナックの発行を補助情報源に示し、正確な補助データを供給できるようにしなければならないことである。
【００４３】
この手法に対する代案は、いくつかの最も一般的な衛星の軌道の軌道係数を、ＧＰＳ受信機内の参照テーブルにハードコードすることである。その後、補助情報源は、所与の数の可視衛星について、以下の形式で受信機に補助を供給する。
−衛星ＩＤ
−基準週時（あらゆる軌道モデルに必要なパラメータ）
−受信機内のハードコードされた軌道係数のテーブルに対する参照番号
−軌道係数および／またはさらなる軌道係数に対する補正および／または軌道係数の使用後の出力に対する補正
【００４４】
このデータは、完全なエフェメリスデータや完全なアルマナックデータと比べて小さいため、規則的な間隔で送信される一斉同報の形で補助情報を構成することが実現可能である。受信機はアルマナックの発行を供給する必要がないため、受信機が補助情報を要求することは不要となるであろう。これが、一斉同報係数が実現可能であるもう１つの理由である。一斉同報を用いる１つの利点は、一斉同報により、ネットワークベースセンタ（network base center）、コールセンタまたは無線ウェブサイトに向かう方向のシステムのデータトラフィックが著しく減少することである。この方式のもう１つの利点は、受信機がアルマナックデータを捕捉する必要がないことであり、これは、受信機がアルマナックデータを捕捉するために屋外で規則的な間隔で動作される必要がないことを意味する。
【００４５】
局部発振器の校正
多くの補助ＧＰＳ用途において、高速捕捉は重要な用件である。基準発振器のドリフトは、基準発振器のドリフトを許容するために「ドップラー」周波数検索を増やすため、捕捉時間を長くする主な要因である。デジタル通信リンクの正確な信号フレーミングを利用することにより、局部発振器を校正することが可能である。これは以下のように実行することができる。
ｆＬＯ＝Ｈｚで表される補正すべき局部発振器の周波数（Frequency of Local Oscillator）。
ｆＳＦ＝Ｈｚで表されるデジタル通信リンクの信号フレーミングの周波数（Frequency of Signal Framing）。
ＴｏｌＬＯＣ＝ＰＰＭで表される校正前の局部発振器の許容誤差（Tolerance of Local Oscillator before Calibration）。
ＴｏｌＳＦ＝ＰＰＭで表されるデジタル通信リンクの信号フレーミングの許容誤差（Tolerance of Signal Framing）。
ＯｆｆｓｅｔＬＯ＝許容誤差ＴｏｌＬＯＣに対して局部発振器（Local Oscillator）を校正するために必要なオフセット（Offset）（単位はＨｚ）。
Ｐ＝ＴｏｌＬＯＣに対するＯｆｆｓｅｔＬＯを計算するために局部発振器のクロックサイクルを計数しなければならない期間（Period of time）（単位は秒）。
ＮＳＦ＝ＴｏｌＬＯＣに対するＯｆｆｓｅｔＬＯを計算するために局部発振器のクロックサイクルを計数しなければならない信号フレーム数（Number of Signal Frames）。
ＮＬＯ＝Ｐ（すなわちＮＳＦ個の信号フレーム）中に計数された局部発振器のクロックサイクル数（Number of Local Oscillator clock cycles）。
ｎ＝１／ｎは、信号フレーミングの遷移（transitions）時に測定することのできる局部発振器サイクルの分数である。
【００４６】
この方式は、信号フレーミング間隔の数によって正確に特定される期間のあいだ、局部発振器のサイクルとその分数を計数することを伴う。局部発振器の周期に対する測定の分解能は、局部発振器の周期の１／ｎの分数であり、周波数が局部発振器周波数ｆＬＯの約ｎ倍である任意のハードウェアクロックの存在下で容易に算出することができる。一例として、局部発振器はｆＬＯ＝１０ＭＨｚであってもよく、１／２ｎ（この場合はちょうど１０％）以上の精度を有する５０ＭＨｚのクロックが存在すれば、局部発振器の位相を、信号フレーミングの遷移時に最も近い１／ｎサイクルまで測定することができる。この測定は、後の信号フレーミング遷移時に繰り返され、局部発振器サイクルの総数および１／ｎサイクルが決まる。ＴｏｌＳＦ＜＜ＴｏｌＬＯＣであると仮定すると、次式が成り立つ。
Ｐ＝１０６／（ｎ×ｆＬＯ×ＴｏｌＬＯＣ）
【００４７】
使用される信号フレーミング間隔の最小数は次式によって与えられる。
ＮＳＦ＝Ｒｏｕｎｄｕｐ（ｆＳＦ×Ｐ）
ここで、「Ｒｏｕｎｄｕｐ（切り上げ）」関数は、（ｆＳＦ×Ｐ）が非整数であり、補正が必要とされる精度を満たすかまたは超えるような場合に、次に大きな整数（whole integer）を提供する。
【００４８】
実際の測定期間はＮＳＦ／ｆＳＦであり、
ここで、ＮＬＯサイクル（１／ｎサイクル精度）を計数する。
【００４９】
単一の局部発振器サイクルのより精確な期間はＮＳＦ／（ｆＳＦ×ＮＬＯ）である。よって、より精確な周波数は（ｆＳＦ×ＮＬＯ）／ＮＳＦである。
【００５０】
すると、発振器の周波数オフセットが次式によって得られる。
ＯｆｆｓｅｔＬＯ＝ｆＬＯ−（ｆＳＦ×ＮＬＯ）／ＮＳＦ
【００５１】
この校正オフセットは、ＧＰＳ受信機ファームウェアが捕捉検索を行う際に補正として用いることができるか、あるいは、オフセットを最小化するように発振器周波数を補正するために用いることができる。
【００５２】
妨害信号の存在下における弱い信号の捕捉／追尾
弱いＳＰＳ信号の使用に伴う問題の１つは、いかなるＳＰＳシステムでもダイナミックレンジは限られていることである。例えば、ＧＰＳシステムのＣ／Ａコード信号の場合、同時に存在する別の信号よりも約２０ｄＢ以上弱い信号はいずれも、強い方の信号によって妨害される可能性がある。この妨害には主に２つの作用がある。第１に、十分に低い閾値を用いて弱い方の信号を捕捉しようとしている間に、受信機の検索シーケンスは、頻繁な偽警報によって妨害される。これは、強い信号と、受信機内で生成されたコードとの間の相互相関が多くの場合に閾値よりも高くなるためである。第２に、受信機は、弱い方の信号を捕捉および追尾できるかもしれないが、この弱い信号は、追尾アルゴリズムを実際の相関メインローブから引き離す強い方の信号からの相互相関サイドローブによって生じる大きな測定誤差に影響されやすい。
【００５３】
上記１番目の問題を避けることは非常に望ましく、２番目の問題は、数キロメートルもの総測位誤差をもたらす可能性があるため、避けることが不可欠である。したがって、ＳＰＳ受信機１は、弱い方の信号を捕捉しようとする前に、強い信号を捕捉することを試みるべきである。これに関して、図２は、まず最初に高い閾値を用いて強い信号を確実に捕捉するＧＰＳ受信機の手順の一例を概説する。次に、あらゆる残りの必要な信号を捕捉するための閾値を、ＧＰＳの場合には捕捉した最も強い信号よりも２０ｄＢ低く設定する。図２は、ＧＰＳシステムに関する情報を含むが、その一般的な応用は、任意の他のＳＰＳシステムにも等しく適用することができる。
【００５４】
図２を参照すると、本装置は、補助情報源２からＳＰＳ受信機１の大まかな場所を捕捉するために第１の要求／応答のやり取りで開始する。やり取りが成功して大まかな場所の補助データを受信した場合、装置はステップ１１において、強い信号を捕捉することを目的として初期の検索パラメータを設定する。検索用のパラメータは初め高い閾値に、その選択した閾値での捕捉に適した短い積分期間とともに設定される。衛星のコード位相の予備知識はないため、検索に制限はない。基準周波数オフセットは、受信機が以前に動作していた時に測定された前の値（すなわち「ｏｌｄ」）であると仮定される。次にステップ１２ではこれらのパラメータにより、ＳＰＳ受信機１は、マルチチャネル装置を用いて、全ての可視衛星の強い信号の同時検索を行う。
【００５５】
ＧＰＳの例において、このような制限のないコード検索を１衛星につき１チャネル、１積分期間につき１チップで、１チャネルにつき２アームを用いて０．５のチップ間隔で行うと、１０２３／４＝２５６の積分期間、すなわち約１秒かかる。ほとんどの場合、これは存在するあらゆる強い信号の捕捉に十分である。
【００５６】
しかし場合によっては、受信機の基準発振器の仮定の周波数オフセットは、相関器の出力サンプルのサンプリングレートによって対応できる量よりも大きく変化している可能性がある。したがって、仮定の基準周波数オフセットを用いた試行中に衛星信号が捕捉されない場合、ステップ６０においてオフセットを調整し、閾値は下げずに検索を続行する。このようにオフセットは、可能な周波数レンジにわたって検索を行うように体系的に変更される。この体系的な検索は、可能な最も高い閾値において１機または複数の衛星を捕捉した時点で終了する。
【００５７】
可能な周波数レンジにわたって衛星信号が捕捉されなかった場合、ステップ１３において、より低い（例えば６ｄＢ低い）閾値が設定されるとともに、より長い（例えば４倍の長さの）積分期間が用いられることになる。基準周波数オフセットは、前の仮定値に戻され、これらのパラメータ値を用いて周波数検索を再開する。
【００５８】
少なくとも１機の衛星を見付ける本来の検索において、任意の強い信号を捕捉し、なおもさらなる信号が必要である場合、捕捉した最も強い信号の測定した搬送波対雑音比を用いて、ステップ１４における次の検索で用いる積分期間と、その検索中に適用する捕捉閾値との両方を求める。例えば、５０ｄＢＨｚよりも大きい信号を捕捉した場合、次の検索の積分期間が３２ｍｓよりも長い必要はない。その理由は、３２ｍｓの積分期間で３０ｄＢＨｚ以上の信号を検出することが可能であり、上述のダイナミックレンジの問題を回避するために閾値は３０ｄＢＨｚ以上に設定しなければならないためである。
【００５９】
基準周波数オフセットも、ＳＰＳ受信機１の大まかな場所をアルマナックデータおよび捕捉信号の測定した搬送波周波数とともに用いて推定される。これは、さらなる周波数検索の必要をなくすだろう。
【００６０】
少なくとも１機の衛星を捕捉しているため、残りの衛星には１衛星につき１チャネルを用いて制限付き検索方式を実施することができる。なぜなら、残り全ての可視衛星の信号と、最初の１機の衛星の信号との間の大まかなコード位相差を推定することができるからである。大まかな位置推定値の精度を±１０ｋｍであると仮定した場合、コード位相差は、およそ±２５以内であると推定することができる。ＧＰＳの場合、これにより残り全ての衛星を５０×０．１２８ｓすなわち６．４ｓ以内に捕捉することが可能となる。しかし検索は、場所を算出することを可能にするのに十分な数の衛星を捕捉すれば終了することもできる。
【００６１】
したがってＧＰＳの例では、２回目の検索が失敗しなかったと仮定すると、十分な数の衛星を捕捉するのにかかる最長時間は、１回目の強い信号の検索の１ｓに、２回目の１機目の衛星の検索の４ｓと、以後の残りの衛星の検索の６．４ｓとを加えたものとなる。これは合計１１．４ｓとなる。しかし通常、捕捉にかかる時間はこれよりも短い（例えば１ｓ＋４ｓ＋３．２ｓすなわち８．２ｓ）。
【００６２】
相互相関の相殺
強い信号を相殺するという基本概念の好ましい形態は、相関器への入力において信号の表現精度が非常に低く、よって信号のスケーリングは極めて粗くしか行うことができないという問題を扱う。信号がより多数のビットサンプル、例えば１０ビットサンプルによって表現される点でスケーリングを行うことを可能にし、かつスケーリングの実現可能性がより高い好ましい変形は以下の通りである。
【００６３】
この概念は、相関器内に相殺のためのハードウェアを設けることを伴う。図７は、キャンセラを相関器に組み込むことのできる方法を示す概略図である。各チャネルまたは特定のチャネルは、他のチャネルに相殺サービスを提供するように再構成されることができる。代替的に、これらの相殺要素は、この目的専用とすることができる。相殺を行う各チャネルのフィンガ毎に１つの相殺フィンガが必要である。
【００６４】
相殺フィンガは、妨害信号を追尾するチャネルのプロンプトフィンガへのコード発生器入力から１つの入力を取得する。相殺フィンガは、相殺を行うフィンガのコード発生器入力から第２の入力を取得する。これら２つの信号を相関させることによって、相殺フィンガは、関係する２つのＣ／Ａコード間の相互相関の推定値を生成する。
【００６５】
次にこの推定値を、妨害信号（jammer）を追尾するチャネルにおいて達成される相関から得られる妨害信号の大きさに比例するようにスケーリングする。その結果、相殺の必要なチャネルにおいて起こる相互相関の値の推定値が得られる。その後、測定された相関から推定された相互相関値を単純に差し引くことによって相殺を達成することができる。
【００６６】
この実施形態は、信号が約１０ビットによって表現される時点でスケーリングおよび相殺が行われるという利点を有する。そうするためには、信号の帯域幅が、デシメーション（積分およびダウンサンプリング）プロセスによって、およそ２８分の１すなわち２５６分の１に低減されていなければならない。これは、全てのチャネルが同じくダウンコンバートされている場合に実施可能であるため、ダウンコンバージョンステップおよびコード混合ステップは図７に示すようなものとすることができる。最後のチャネルに固有のダウンコンバージョンステップは小さいが、±４ＫＨｚのドップラー偏差に対処するのに十分な大きさである。
【００６７】
複数の衛星信号のコード位相の同時算出
上述のような補助方式を達成するため、本発明のＳＰＳ受信機１には、複数の衛星信号のコード位相を同時に算出する能力が必要である。これに関して、図３は、そのようなＳＰＳ受信機１を１つ示す。通常、ＳＰＳ受信機１は大きく３つの部分に分類することができる。この装置は、フロントエンド回路１７と、３つまたはそれ以上の相関器１８と、メモリを有するマイクロプロセッサ２０とを備える。以下にそれぞれの機能を説明する。
【００６８】
フロントエンド回路１７は通常、最初の信号プロセッサとして次のように働く。フロントエンド回路１７は、アンテナからの信号を増幅し、フィルタリングし、ダウンコンバートし、デジタル化して、当該信号をデジタル相関器１８での処理に適したものにし、信号対雑音比および信号対干渉比が経済的および実際的な実現要件を条件として最小となるようにする。フロントエンド回路のフロントエンド出力１９は、中心が（ＧＰＳの場合）数十ＫＨｚである複素数信号、あるいは中心がおよそ１．３ＭＨｚ以上である実数信号であり得る。サンプリングレートは通常数ＭＨｚであり、デジタル化は少なくとも１サンプル当たり２ビットである。好ましい実施形態において、ＡＧＣ回路は、デジタル化信号のレベルを一定に保つ。ＧＰＳの場合に実際の信号は２ＭＨｚにわたって拡散しており、いずれにせよ弱い信号であるため、この信号は雑音に占められており、ＡＧＣはフロントエンドの出力において一定の雑音レベルを維持する。
【００６９】
それぞれが特定の衛星信号の処理チャネルを表すハードウェア相関器１８は別個に用いられて、フロントエンド出力１９をマイクロプロセッサ２０の制御下でさらに処理する。各相関器１８内部では、特定の衛星信号の推定ドップラーオフセットと、相関器を駆動する水晶発振器の基準周波数の推定オフセットとに基づき、ＤＣ付近までのさらなるダウンコンバージョン２１（この場合は直交）が行われる。次に、結果として得られたダウンコンバート済の複素数信号２２は、特定の衛星信号の実数の２値擬似ランダムコード信号に適合するように選択された、コード発生器２４によって生成された実数の２値擬似ランダムコード信号２３と混合される（すなわち実数の２値擬似ランダムコード信号２３を乗算される）。マイクロプロセッサ２０によって制御されるコード発生器２４は、推定した水晶発振器のオフセットが与えられると、推定した信号ドップラーオフセットに適合するように設定された選択レートで擬似ランダムコード信号２３を生成する。
【００７０】
コード発生器２４は、遅れた（late）擬似ランダムコード信号２５も生成する。この遅れた擬似ランダムコード信号２５は、擬似ランダムコード信号２３と同一であるが、当該擬似ランダムコード信号２３に対して固定したラグがある。この遅れた擬似ランダムコード信号２５もまた、ダウンコンバート済信号２２と混合される。結果として得られた混合信号２６は次に、デシメータ２８によって別個に処理される。デシメータ２８は、アンチエイリアスフィルタにローパスを行い、混合信号２６をより低いサンプリングレートにダウンサンプリングする。ＧＰＳの場合、より低いサンプリングレートとは約１ＫＨｚである。このサンプリングレートは局部のコードレートから導き出して、各コードエポックにつき１つのサンプルが得られるようにすることができる。しかし、これは必須ではない。
【００７１】
コードを検索する場合、プロセッサ２０は、コード発生器２４を各積分期間の開始において所要量だけ瞬間的に進ませる（step）か、コード周波数を正確な時間のあいだ既知の量だけ変化させて、そのコードラグ中に高速ステップを１つ行うようにする。これは好ましい実施形態であるが、代替方式では、検索中にコード周波数を故意にずらし、コードが入力信号のコードに対して連続的にスルー（slew）するようにする。
【００７２】
衛星信号を追尾する際、本実施形態では、プロセッサ２０がこのようにコードラグを絶え間なく調整し、コード発生器２４からの擬似ランダムコード信号２３と遅れた擬似ランダムコード信号２５とを、一方が入力信号のコードに先行し（進んだ（early））、もう一方が入力信号のコードに後続する（遅れた）状態に保つようにする。他の実施形態では、コード発生器２４が、入力信号のコードと同期された状態に保たれる第３の信号（プロンプト）を生成するか、あるいは実際に、入力コードの前後１チップ（最小のコード要素）までのラグ間隔にわたるいくつかの付加的な信号が存在する可能性がある。
【００７３】
相関器の出力サンプル２９は、プロセッサ２０に読み込まれ、このプロセッサ２０において、本明細書中で後述する、搬送波信号の振幅、周波数および位相を推定する信号処理アルゴリズムによってさらに処理される。次に、信号がデータの抽出に十分なほど強いためにデータを抽出すべき場合、位相および周波数は、未処理サンプルに作用してデータを抽出する別個のアルゴリズムによって利用される。このデータの抽出方法は当業者には明らかであろう。
【００７４】
次に、追尾した搬送波信号の周波数を用いて、搬送波のドップラーオフセットおよび水晶発振器のオフセットを推定する。搬送波のドップラーオフセット値は後に、受信機（および受信機が搭載されて移動する車両）の速度を推定するために用いられる。
【００７５】
進んだ、および遅れた相関器出力サンプル２９の振幅は、衛星信号の搬送波対雑音比の推定値を表す。これは、雑音レベルがフロントエンドのＡＧＣによって一定に維持されるためである。衛星信号の検索を行う場合、振幅を閾値と比較して、信号が検出されたかを判定する。検出された場合、捕捉手順が開始される。適切な捕捉手順のステップは、当業者には明らかであろう。
【００７６】
追尾の際、コード位相は上述のように調整され、相関器出力サンプル２９の平均振幅を互いに等しい状態に保つようにする。３つまたはそれ以上の相関器出力サンプル２９が存在する場合、同様であるがより複雑なアルゴリズムを適用することができる。これらの制御アルゴリズムの性質は、当業者には明らかであろう。
【００７７】
各積分期間の終わりに、各相関器１８のコード位相３０は、ハードウェア相関器内のラッチ要素３１によって同時にラッチされる。結果として得られる信号は、コード位相測定値３２を表す。これらのコード位相測定値３２は次に、プロセッサ２０に供給される。次にプロセッサ２０は、平滑化アルゴリズムをコード位相測定値３２ならびに搬送波周波数推定値に適用する。このアルゴリズムは、搬送波周波数推定値の精度を利用して積分期間間のコード位相の変化を予測することによって、コード位相測定値３２中のランダム誤差を経時的に低減するために用いられる。このアルゴリズムはまた、搬送波周波数推定値をフィルタリングして、ランダム誤差を低減させる。搬送波平滑化アルゴリズムについては本明細書中で後述する。
【００７８】
数秒の平滑化後、（好ましい実施形態では５秒）、搬送波を平滑化したコード位相測定値と、フィルタリングした搬送波周波数推定値とを場所ソルバ（location solver）に渡す。この場所ソルバは、ＳＰＳ受信機１の場所と速度を推定する。アルゴリズムは、補助情報源から受信した正確な衛星位置データおよび大まかな場所を利用する。この計算については本明細書中でより詳しく後述する。信号処理、搬送波平滑化および場所求解アルゴリズムはすべて、プロセッサ２０によって実行される。
【００７９】
改良型検索エンジン
検索エンジンはチップ毎に異なる。１つのよく知られたタイプ（解決策１）は、２０個のフィンガをそれぞれ有する１２のチャネルを伴い、これらのチャネルを連結して２４０個のフィンガを提供することができる。この連結モードにおいて、各フィンガは８個のＤＦＴビンを有するため、１９２０個に相当するフィンガを提供し、その全てが１機の衛星を検索する。別のよく知られたタイプ（解決策２）は、全コード空間にわたって最大８機の衛星を同時検索するために用いることができる約１６，０００個のフィンガを有するが、周波数ビンは１つしか有しない検索エンジンを伴う。他のタイプは、制限された検索エンジン能力を相関器とともに組み込む。
いずれの場合にも、検索エンジンハードウェアは、通常は可変の積分期間を有するコヒーレント積分と、それに続く、可変期間にわたる非コヒーレント積分とをサポートする。
図８は、好ましい２ビン検索エンジン構成を示す。コヒーレント間隔（coherent interval）はビン幅を決めるだけでなく、コヒーレント処理利得も決める。非コヒーレント積分ステップの最後に生じる二乗損失は、二乗する前の信号対雑音比に依存するため、コヒーレント間隔を最大化して二乗損失を最小限に抑えるようにすることが望ましい。しかし、初期測位誤差に起因する残留ＴＣＸＯ誤差およびドップラー誤差に対処するのに十分な帯域幅を得ることが必要である。これは、コヒーレント積分期間が長くなるほど、複数の周波数ビンを使用しない限り、周波数検索を必要とする。
【００８０】
無線場所用途では、ネットワーク補償（使用する場合）後に最大２０ｋｍのセル半径および０．１ＰＰＭの残留ＴＣＸＯ誤差を許容するために、最低でもおよそ２００Ｈｚの帯域幅が必要である。
【００８１】
解決策２のハードウェアは相関器を組み込まないため、全ての衛星検索エンジンが同時に同一コード位相で開始し、コード位相測定値が相対的に意味をなすようにする必要がある。これは、順次の周波数検索を不可能にするため、２００Ｈｚの帯域幅を提供するために、使用することのできるコヒーレント間隔を５ｍｓに制限する。４機の衛星しか同時に捕捉されなかった場合、それぞれに２ビンを作成し、コヒーレント間隔を１０ｓに増やすことができる。しかし、弱い信号環境に特有のフェージングにより、これは良い性能を発揮しないであろう。
【００８２】
相関器を使用する場合、追尾ファームウェアを用いて、検索エンジンを用いた捕捉後に衛星信号を追尾することができる。これは、検索アルゴリズムを最適化する際により高い自由度を提供する。検索を順次行うことができ、かつ衛星を順次捕捉することができるため、より長いコヒーレント積分期間を使用することができる。１機目の衛星が捕捉されると、コード空間の検索レンジを制限して、捕捉時間を短くするか、あるいは必要とされる検索エンジン能力を低減することができる。
【００８３】
解決策１のような構成の場合に、１機目の衛星に検索エンジンモードを使用した後は、残り全ての衛星に対して、本文書中に開示するアルゴリズムに基づく捕捉ファームウェアを有する相関器を用いて、制限されたコード検索を順次並行して行う方が遥かに高速である。フェージングを許容するために検索は繰り返し行うことができる。２０個のうちいくつかのフィンガを並行して用いて検索プロセスを高速化することができるが、６個よりも多くのフィンガを用いた場合、処理負荷は法外になる可能性がある。（フィンガは、処理負荷を最低限に抑え、かつ検出性能を最適化するために対で用いられる。）
【００８４】
本発明の捕捉アルゴリズムを有する従来の相関器を用いた探索は順次プロセスである。しかし、本発明の処理方式を用いた場合の所与の感度に必要な積分期間は、検索エンジンを用いた場合よりも遥かに短くなるため、捕捉に相関器または検索エンジンのどちらを選択するかは利用可能な検索エンジンの能力に依存する。１機目の衛星については、検索エンジンの方が常に高速である。以降の衛星については、相関器を用いた方が高速である可能性がある。
【００８５】
特殊な検索エンジン構成を使用して、本発明の処理アルゴリズムと統合してもよい。これにより、検索エンジンは、周波数ビンの数が増えるという代償を払って、積分期間が大幅に短くなるという本発明の利点を活かすことができる。フィンガは３０個ずつのグループで用いて、１２８ｍｓのコヒーレント積分期間に対応する狭いビン幅によりデータ帯域幅および周波数のあいまいさを許容する連続したＤＦＴビンを提供する。大きさを二乗する前に、付加的な処理ブロックが必要となるが、必要とされる追加の処理能力は、コヒーレント処理能力要件の１０％の追加オーバヘッドを示すに過ぎない。非コヒーレント積分の後、ピークビンと隣接ビンをファームウェアに渡して、検出する搬送波の大きさと周波数を推定するためのさらなる処理を行い、相関器に引き渡す。図９は、改良型検索エンジン構成を示す。
【００８６】
最小１ｍｓ、最大１９ｍｓのコヒーレント積分期間を用いると、従来の検索エンジンを用いた信号の検出に必要な非コヒーレント積分時間は、表１のように与えられる。（１９ｍｓを選択すると、１ビット未満で長いコヒーレント積分期間が与えられ、ビット期間をコヒーレント積分期間にわたって確実に連続的にスライドさせる。この結果、１．２ｄＢの損失が生じるが、データ同期の必要が一切なくなる。）５ｍｓのコヒーレント積分の場合、必要となる非コヒーレント積分期間は遥かに長くなる。
【００８７】
【表１】
2006502412.tif 000003
【００８８】
二乗前の信号対雑音比が低いほど二乗損失は高くなる。これが、必要とされる積分期間が指数関数的に増加する理由である。この積分期間の指数関数的な増加が、衛星を並行して捕捉することが重要である理由であり、ひいては、複数の検索エンジンが必要とされる理由である。
【００８９】
しかし、本発明の処理方式では、遥かに長いコヒーレント積分期間が使用され、二乗損失を低減しているため、必要とされる積分期間はより短い。
【００９０】
表２は、非常に弱い信号から極端に弱い信号について、３つの方式の積分期間および捕捉時間を比較する。３つの方式で使用されるハードウェアは、およそ１６，０００個のフィンガと例えば１２個の相関器とからなる検索エンジンである。これは単なる例である。他の検索エンジン構成についても同様の分析を行うことができ、いずれの場合にも、相関器を用いてファームウェアで実行されるか、あるいは図９のようなハードウェア機械化された形態の本発明のアルゴリズムの使用が有利であるという結果が得られる。
【００９１】
第１の方式は、検索エンジンのみを５ｍｓのコヒーレント積分期間で用いる。第２の方式は、検索エンジンを順次１９ｍｓの積分期間で捕捉に、相関器を追尾に用いる。１機目の衛星を捕捉した後に残り全ての衛星を並行して捕捉できるため、２ステップしか必要ない。第１のステップでは、検索エンジン全体を用いて、２機の衛星を並行して検索する。第３の方式は、ＤＦＴ検索エンジンと、本発明のアルゴリズムをハードウェア機械化したものとを順次捕捉に用いるとともに、相関器と、本発明のアルゴリズムに基づくファームウェアとを捕捉に用いる。３つの検索ステップが必要であり、そのうち２ステップが１機目の衛星のため、１ステップが残りの衛星のためのものである。
【００９２】
【表２】
2006502412.tif 000004
【００９３】
２０ｋｍの初期位置のあいまいさを許容するために、本発明では、１機目の衛星の捕捉後に少なくとも６０チップの検索レンジを必要とする。これにより、１機目の衛星の捕捉後に必要な検索エンジンのフィンガの数が決まる。これは、方式２の場合に１衛星につき４８０個、方式３の場合に３，６００個であり、いずれの場合にも、残りの４機以上の衛星を並行して捕捉できることを意味する。
【００９４】
このように、方式１は初期測位に最も長い捕捉時間、よって最も高いエネルギー要件を必要とする。さらに、以降の測位も、衛星を最初から捕捉し直さなければならない場合と同じ大きさのエネルギーが必要である。しかし、本発明を追尾に用いた場合、以降の測位に必要なエネルギーは２つの方法で大幅に低減することができる。第１に、エネルギーを多く消費する検索エンジンをオフにすることができる。第２に、受信機全体をかなりの長期間にわたってデューティサイクルで動作させ（duty cycled）、大きな節約を達成することができる。数マイクロ秒以内まで正確に分かる期間後に受信機を再びオンにするためには、タイマを用いなければならない。その後、コード発生器を、追尾しているコード位相付近にシフトしてから、ファームウェアで実施される本発明を用いて、短い再捕捉検索を行うことができる。相関器のみが用いられるため、エネルギー要件は、初期測位の場合よりも大幅に低くなる。
【００９５】
衛星信号処理アルゴリズム
上記のように、弱い衛星信号のコード位相差を求め、そこからＰＶ解を計算するためには、弱い衛星信号の特別な処理が必要となる。この目的のために、本発明は、衛星信号の振幅、周波数および位相を測定するアルゴリズムを利用する。本発明はまた、コード位相測定値および搬送波周波数推定値に平滑化手順を適用し、経時的に生じるランダム誤差を低減する。最後に、コード位相差を正確な位置・速度解に変換する式を適用する。各アルゴリズムを順に扱う。
【００９６】
（１）弱い衛星信号の振幅、周波数および位相の推定
データの存在下でいくつかの信号の各々の搬送波の振幅を推定するには、各チャネルにそうしたいくつかの信号を有するハードウェア相関器１８を使用する任意のＳＰＳ受信機１が要求される。従来の受信機では、位相ロックループまたは周波数ロックループと、遅延ロックループとが、最終的なダウンコンバータ２１とコード発生器２４の周波数をそれぞれ制御する。しかし、弱い信号の場合は、信号が弱すぎて、補助アルゴリズムからの何らかの補助を使用しなければロックインすることができない。本発明の信号処理アルゴリズムは、捕捉用の補助アルゴリズムとして使用するか、あるいはいかなる位相ロックループまたは周波数ロックループとも独立して捕捉および追尾の両方のために使用することができる。
【００９７】
強い信号を用いれば、個々の相関器出力サンプル２９から信号を、ロックインが可能な十分な信頼度で検出することが可能である。弱い信号の場合、相関器出力サンプル２９は、雑音が多いため、相関器の出力サンプリングレートが極めて低い場合（例えばＧＰＳの場合は８Ｈｚ）を除き、信号を雑音と区別することができない。しかし、デシメータ２８がそのような低サンプリングレートで残留搬送波をフィルタリングして除去してしまうことを防ぐには、ドップラー周波数および水晶発振器オフセットが非現実的な高精度で分かっていなければならない。したがって、より高い相関器出力サンプリングレートを保持する必要があり、コード位相測定値３２における残留搬送波信号の振幅を推定するための適切なアルゴリズムが要求される。
【００９８】
図４は、本発明の一実施形態による相関器１８の進んだ混合信号２９および遅れた混合信号２９の各々からの信号の振幅、周波数および位相の測定に使用されるアルゴリズムのフローチャートを示す。図４を参照すると、当該手順は、相関器１８のコード位相測定値３２からのサンプルブロックに適用される高速フーリエ変換３３の使用を含む。このアルゴリズムの作用は、残留搬送波信号をＦＦＴ出力３４の数個のビンに圧縮することである。したがって衛星信号は、コード位相測定値３２に含まれる全時間領域サンプルにわたってエネルギーが拡散しているときは検出できないが、ＦＦＴ出力３４のビンでは検出できる。しかし、データ変調により衛星信号がいくつかの隣接するビン間で、積分期間とその瞬間における残留搬送波の位相との両方に関して遷移が該当する場所に応じて半ランダムに分割されるため、衛星信号の振幅の推定は容易ではない。
【００９９】
それにもかかわらず、考えられる衛星信号の存在を検出しているので、ピーク値を中心とするＦＦＴ出力３４のビンに窓掛け操作（window operation）３５を適用することによって、雑音の大部分を除去することが可能である。より離れたビンは完全に廃棄してもよい。これは単なるフィルタリング操作であり、窓掛けフィルタリングした信号３７の非線形処理３６に先立って信号対雑音比を大幅に向上させ、データ遷移を排除する。窓掛けフィルタリングした信号３７中の残りの窓掛け済ビンは以下のように、雑音およびデータの存在下で振幅を推定するため、いくつかの方法のうちの１つで処理され得る。
１．廃棄したビンを０で埋め、次に、完全なビンの組を逆変換して時間領域に戻すことができる。これにより、信号対雑音比が著しく向上した時間領域サンプルの組が得られ、これらのサンプルは次に、位相ロックループまたは遅延ロックループのロックインを行うように処理され得る。
２．上述のように逆変換を行い、時間領域サンプルを二乗してデータを除去することができる。すると、結果として得られる信号の振幅は、ＤＦＴを用いて周波数領域に変換し直して以前のＦＦＴピークを中心とする数個のビンを得ること、および雑音に埋め込まれたシッソイドの振幅および周波数をいくつかのＦＦＴビンの値に基づいて推定するのに適した任意の推定アルゴリズムを適用することによって推定することができる。信号を二乗する作用の１つとして、残留搬送波信号の周波数を２倍にし、その周波数がサンプルによってエイリアシングされ得るようにすることに留意することが重要である。このあいまいさは、周波数を求める際に解消される必要があるだろう。
３．自己畳み込みプロセス３６では、残りの窓掛け済ビンのベクトルを自己畳み込みさせてデータを除去することができる。これは時間領域における二乗に相当するが、窓掛けフィルタリングした信号３７中のビン数がＦＦＴ３３のサイズに比べて少ない場合、この自己畳み込みプロセス３６は、上記のオプション２に記載したプロセスよりも計算負荷が少ない場合がある。自動畳み込み済サンプル３８は次に、雑音に埋め込まれたシッソイドの振幅および周波数をいくつかのＦＦＴビンの値に基づいて推定するのに適した任意の推定アルゴリズム３９によって処理することができる。ここでもまた、各ビンに対応する周波数は自己畳み込みプロセス３６によって２倍になっており、よってビン幅は周波数の推定の目的で事実上半分となっていることを理解することが重要である。
【０１００】
本発明の一実施形態は、振幅および残留搬送波周波数の推定にオプション３を採用する。ＲＦ搬送波周波数を以下のように推定する。
Ｆｃ＝Ｆｄ１＋Ｆｄ２＋（Ｎｐ１＋（Ｎｐ２−Ｎｎｏｍ＋ＮΨ）／２）×Ｆｂｉｎ−ΨＦｘｏ×Ｆｎｏｍ／Ｆｘｏ
ここで、
ＦｃはＲＦ搬送波周波数であり、
Ｆｄ１は、フロントエンドでのダウンコンバージョンによる全周波数シフトであり、
Ｆｄ２は、相関器におけるダウンコンバージョンによる周波数シフトであり、
Ｎｐ１は、ＦＦＴにおけるピーク（自己畳み込みを行うために抽出したビンのうち中央のビン）の（Ｎ点ＦＦＴのビン番号（−Ｎ／２〜（Ｎ／２＋１））であり、
Ｎｐ２は、計算した自己畳み込み済ビンにおけるピークビン（振幅および周波数を推定するために抽出したビンのうち中央のビン）のビン番号であり、
Ｎｎｏｍは、計算した自己畳み込み済ビンにおける公称ピークビン（すなわちラグがゼロに相当する）のビン番号であり、
ＮΨは、計算した自己畳み込み済ビンのいくつかの隣接ビンの分析によって推定される周波数調整（Ｎｐ２に対するビン数およびビンの分数で表す）であり、
Ｆｂｉｎは、元のＦＦＴのビン幅であり、
ΨＦｘｏは、水晶発振器の公称周波数からのオフセットであり、
Ｆｎｏｍは、信号の公称ＲＦ搬送波周波数であり、
Ｆｘｏは、水晶発振器の公称周波数である。
【０１０１】
信号の追尾中、所望であれば、前の積分期間中に推定したような残留搬送波周波数の正確な値を利用することによって信号処理の計算負荷を減らすことが可能である。例えば、前の積分期間中に用いられたビンのみを計算すればよい。
【０１０２】
アンサンブル平均化方式
コヒーレントアルゴリズムは、ビン幅を小さくすることで生じる利得が二乗損失によってオフセットされることから、感度が限られている。より精緻化された平均化方式が検証されており、好ましいようである。
【０１０３】
この方式の基本概念は、平均化によって雑音から信号のパワースペクトルを抽出することである。パワースペクトルを計算する際に位相情報は失われるため、検出および搬送波追尾のための振幅および周波数の推定には、MacLeodの推定アルゴリズムの代わりに、（推定性能の点で）より効率の低いJainのアルゴリズムを用いなければならない。しかし、結果として生じる推定性能の低下は、可能な感度の向上によるオフセットよりも大きい。それにもかかわらず、より短い積分期間が必要とされる場合、MacLeod方式を維持すべきである。
【０１０４】
ＦＦＴアレイを記憶するためのメモリの過剰使用を防ぐため、本方式は、ブロック平均化によってではなく移動平均のやり方で動作しなければならない。これは、チャネル毎に、自己畳み込みアレイの大きさの二乗にフィルタをかけることを意味する。円滑な始動のために、かかるフィルタは、簡略化カルマン型のものとすべきである。
【０１０５】
このような方式を実施する際に直面する第１の問題は、自己畳み込みが通常、窓掛け済のＦＦＴ値に対して行われ、窓は、捕捉中のＦＦＴのピーク値を中心とすることである。これは、追尾時には窓の中心が予め決まっているため当てはまらない。よって、上記で概説した方式は、追尾に非常に適しているが、捕捉には拡張を必要とする。これは、個々のＦＦＴのピークの選択が、対象とする低い信号レベルでは信頼できないためである。
【０１０６】
この問題に対して提案される解決策は、ＦＦＴビンの大きさの二乗を、捕捉時の自己畳み込みと同様にフィルタリングすることである。これを容易にする１つの方法は、各コード検索ステップにおいて、いくつかのＦＦＴ期間のあいだ停止することであろう。別法は、各ＦＦＴ期間において非常に遅く進むことであろう。（すなわちＮ倍の平均化に対して通常のＮ分の１の検索ステップ幅を適用する。）自己畳み込みとその後の処理は各ステップにおいて、一切の悪影響なしに通常通り行うことができる。ステップは非常に小さくなるため、要求通りに、平均化期間に一致して、多くのステップに信号スペクトルが存在することになる。ＦＦＴ平均は初めは正確なピークを生じない場合があるため、出現し実際に自己畳み込み平均に組み込まれる信号との間にラグが生じる。しかしこれは、重大な問題となることはなく、必要に応じて捕捉プロセスを調整することによって考慮に入れることができる。
【０１０７】
最後に、この新たな方式が追尾制御アルゴリズムに及ぼす影響を考慮する必要がある。提案される手法は、平均化期間と一致する部分制御調整を行うことである。例えば、平均化期間がＮ個のＦＦＴである場合、それぞれのフィードバックに対して通常の１／Ｎの利得を適用すべきである。
【０１０８】
予期される感度の上昇を確認するために、ブロック平均化のシミュレーションを行った。自己畳み込みの前後において、１５ビンの窓に１２８のＦＦＴサイズを用いた。Jainのアルゴリズムを用いて振幅を推定した。１，０００回の実施にわたって統計量を累計した。
【０１０９】
信号が存在しない状態で、振幅推定値の平均、標準偏差および９９パーセンタイル値を計算した。次に反復により、信号なしの９９パーセンタイルに等しい１０パーセンタイル値を得るために必要な信号振幅を求めた。この実際の信号振幅に対して、振幅推定値の平均および標準偏差を記録した。このプロセス全体を多くの異なる平均化期間について繰り返した。
【０１１０】
表３は、シミュレーションから得られた結果を示す。予測感度は、詳細な表計算分析を用いて予測した感度よりも常におよそ３ｄＢ高い。これは、シミュレーションが、二乗前に１．８ｄＢ、二乗後にはそれ以上に達する量子化および相関オフセットによる損失をシミュレートしていないためである。これを考慮に入れれば、これらのシミュレーションは分析を十分に裏付ける。
【０１１１】
明らかな１つの問題として、信号振幅推定値が実際の振幅からどんどん離れてしまうことがある。同時に、雑音振幅の標準偏差は平均雑音振幅よりも急速に小さくなる。これは、平均化の長さであるＮの値に依存する因数を差し引くことによって、振幅推定値がすべて調整できることを示唆する。表は、かかる調整を適用した影響を実験結果に基づいて示す。これは、検出能力に影響を与えず、他の不都合な特性を持たない。したがって、調整を適用する目的で、これらの結果に基づいて参照テーブルを用いることが提案される。（Ｎ＝１に対する調整は０．０となることに留意されたい。）
【０１１２】
【表３】
2006502412.tif 000005
【０１１３】
目的は、自己畳み込みおよびＦＦＴの値をフィルタリングすることである。これは、フィルタリングされた値を含む記憶されたアレイがチャネル毎になければならないことを意味する。Ｂｉｎｓが複素数ではなく実数であることを除いて、ＡｕｔｏＣｏｎｖの場合と同じ構造を用いてもよい。簡略化カルマン型の手法を用いてフィルタを開始するが、必要な利得係数（＜１）に達したら集束を停止する。
【０１１４】
必要な利得係数は構成パラメータから導出される。これは、信号パワーに関する必要な感度の向上に対応する。これが１に設定された場合、フィルタリングは必要ない。
【０１１５】
検索時に、各ステップにおけるステップ幅は、単に１積分期間ではなく通常のチップステップの分数（また１／Ｇ）であるべきであることに留意されたい。ｄＢＷで表される必要な感度を構成パラメータとして用いることが提案される。追尾用に１つ、捕捉用にもう１つを用いることもできる。表４は、Ｇ（＝１／利得）が必要な感度とどう関連するかを示す。
【０１１６】
【表４】
2006502412.tif 000006
【０１１７】
捕捉がひどく遅くなってしまうため、従来の相関器を用いた捕捉に−１８８を選択することはないだろう。しかし、−１８８という感度が必要である場合、屋内で歩行速度で移動しているに違いないという見解に基づき、追尾にはこれを選択することができる。別法として、この方式を用いて、本文書中の他の箇所で述べるような改良型検索エンジンを捕捉に用いてもよい。
【０１１８】
最後に、Ｇは２０ｄＢの閾値制限によっても制限されるはずである。これは、構成パラメータを無効にするはずである。
【０１１９】
以下の擬似コードは、自己畳み込みにフィルタが適用される方法を示す。
【０１２０】
【数１】
2006502412.tif 000007
【０１２１】
信号処理方式に対するアルゴリズムの改良は、感度を不必要に制限することなく、非現実的なＦＦＴの長さが必要となることを防ぐ。この技法は、ＦＦＴと自己畳み込みの両方の段階でパワースペクトルを平均化することを伴う。メモリ要件を現実的なレベルに保つために、本方式は、フィルタリング手法を用いて実施することができる。
【０１２２】
シミュレーション調査により、感度を高めるという点での本方式の有効性が確認され、性能は、詳細な表計算によって予測したものに近かった。調査はまた、参照テーブルの使用を伴う振幅調節の計算を考案することを可能にするデータを生じた。
【０１２３】
実施方式がプロトタイプ形式で提案および実施され、結果として、感度の大幅な向上が得られた。
【０１２４】
（２）信号の平滑化
信号の追尾中、コード位相および周波数の推定値は、場所ソルバに渡す前に、搬送波平滑化プロセスによって精緻化することができる。図５は、かかるプロセスのフローを示す。図示のアルゴリズムは、いくつかの積分期間（任意にＪ〜Ｎと記した）からの記憶された推定値に適用して、最後の積分期間の精緻化された測定値を表す単一組の測定値を計算するブロック計算である。
【０１２５】
好ましい実施形態において、アルゴリズムは、個々の衛星の絶対的な推定値を処理するのではなく、１機の衛星からの推定値と他の全ての衛星からの推定値との間の差を処理する。この理由は、場所ソルバの好ましい実施形態において、差は基準発振器の周波数オフセットを考慮せずとも処理できることから、絶対的な推定値ではなく差が用いられるためである。
【０１２６】
特定の衛星信号に対応する周波数差推定値４０をすべて、ステップ４２において単純に平均化する。次に予測ステップ４４において、この搬送波周波数差平均４３を用いて前方予測を行う（predict forward）。この予測ステップ４４は、その衛星の最新のコード位相差を除く全てのコード位相差４１に対して、ステップ４５において平均化する前の最新の測定時まで用いる。予測ステップ４４は、搬送波周波数のドップラーオフセット間の差（Ｆｃ１−Ｆｃ２）に基づく、ステップ４６から求めたコード４７の推定ドップラーオフセットを用いる。コード４７の推定ドップラーオフセットを用いて、ステップ４４は、次の式を用いてコード位相差４１をＮ個の積分期間だけ前方予測するために用いられる。
Ψｐ１−Ψｐ２＝Ｆｒａｃ（Ψｍ１−Ψｍ２＋Ｎ×Ｔｉｐ／（Ｔｅ×Ｆｎｏｍ／（Ｆｃ１−Ｆｃ２））
ここで、
Ψｐ１−Ψｐ２は、コードエポックの分数として表した予測コード位相差４８であり、
Ｆｒａｃ関数は、実数引数の分数成分を与え、
Ψｍ１−Ψｍ２は、前方予測される測定コード位相（４１）であり、
Ｔｉｐは公称積分期間であり、
Ｔｅは、追尾アルゴリズムから求められるコードエポック期間である。
【０１２７】
他の数量はすべて先に定義した通りである。
【０１２８】
予測したコード位相差を次に、ステップ４５において平均化し、コード位相差平均４９を生じる。
【０１２９】
（３）コード位相差を用いた位置・速度解の計算
上述のように、ＰＶ解はＳＰＳ受信機１によって、コード位相差が上記の平滑化アルゴリズムによって処理された後に計算される。図６は、好ましい場所ソルバが用いるＰＶ解プロセスを示す。場所ソルバは場所および速度を、精緻化された搬送波周波数差平均４３、コード位相差平均４９、正確な衛星位置５２および大まかな受信機の場所５４を用いて以下のように計算する。
【０１３０】
ステップ５０において、測定値が存在する全ての衛星までの大まかなレンジ５１を計算する。衛星の位置５２は補助情報源２によって供給されるため、このステップは単に、同じく補助情報源２によって供給された、衛星位置および大まかな場所５４のデカルト座標のベクトル差を含む。これらのベクトル差のベクトルの大きさは、大まかなレンジ５１である。
【０１３１】
ステップ５５において、エポックのあいまいさを解消し、コード位相差平均４９を擬似レンジ差５６に変換する。全ての大まかなレンジ５１を（コード位相差を計算するために選択した）基準衛星の大まかなレンジから引き、大まかなレンジ差を得る。これらは、後の使用のため、ならびに次式に従ってエポックのあいまいさを解消する際に使用するために保存する。
Ｐ１−Ｐ２＝ｉｎｔ［（Ｒ１−Ｒ２）／ｃ×Ｔｅ−（Ｑ１−Ｑ２）＋０．５］＋（Ｑ１−Ｑ２）
ここで、
Ｃは光速度であり、
Ｔｅは公称エポック期間であり、
Ｐ１およびＰ２は、衛星１および２の擬似レンジ５６であり、
Ｒ１およびＲ２は、同じ２つの衛星の大まかなレンジ推定値であり、
Ｑ１−Ｑ２は、同じ２つの衛星間のコード位相差である。
【０１３２】
ステップ５８において、ドップラーの影響を受けた搬送波周波数差平均４３からレンジレート差５７を計算する。レンジレート差５７は、次式に従って計算される。
ｄ（Ｒ１−Ｒ２）／ｄｔ＝−ｃ×（Ｆｃ１−Ｆｃ２）／Ｆｎｏｍ
ここで、
ｃは光速度であり、
ｄ（Ｒ１−Ｒ２）／ｄｔは、衛星１と衛星２の間のレンジレート差５７である。
【０１３３】
本発明の代替的な一実施形態では、ステップ５９において最新の場所推定値６０および最新の速度推定値６１を、従来のＳＰＳ受信機におけるカルマン航法フィルタの１回の更新の方法と同様の方法で計算する。実際には、時間が許せば、数回の更新に実際の航法フィルタをかけて、推定ＰＶ解をさらに精緻化することができる。（しかし、この場合は補助情報源２から衛星位置を更新する必要があるだろう。）カルマン利得行列Ｋは、よく知られた次式によって与えられる。
Ｋ＝ＰＭＴ（ＭＰＭＴ＋Ｒ）−１
かつ
Ｘ＝ＸＩＮＩＴ＋Ｋ（Ｙ−ＹＰＲＥＤ）
ここで、Ｙは測定ベクトルであり、Ｘは、場所および速度の推定値を含む解状態ベクトルである。
【０１３４】
この式を用いて、初期の状態ベクトルＸＩＮＩＴを補助情報源からの大まかな場所に速度ゼロで設定する。第１の予測ベクトルＹＰＲＥＤは、大まかなレンジ５１から導出した大まかなレンジ差に設定し、レンジレート差５７の場合はゼロに設定する。
【０１３５】
状態共分散行列Ｐは、行列要素（entries）が大まかな場所および速度の測定値の推定分散を表す対角行列に初期化される。場所分散推定値は補助情報源２から得るか、あるいは固定値を用いることができる。初期の速度推定値はゼロであり、その分散は用途によって異なる。測定値の分散は、従来の受信機の場合と同様に推定することができるが、例外として、測定値の分散行列Ｒはもはや対角ではない。基準衛星との差を計算したという事実は、衛星間の共分散項が、従来の受信機の場合のように０ではなく、分散推定値の半分の値であることを意味する。大まかな場所（５４）および衛星の位置（５２）を用いて、測定行列Ｍの行から方向余弦および方向余弦の差を求めることができる。
【図面の簡単な説明】
【０１３６】
【図１】本発明の一実施形態による、補助情報源と、被呼者と、ＳＰＳ受信機が組み込まれたハンドセットとの間の相互作用を説明するシーケンス図である。
【図２】本発明の一実施形態による、衛星信号を捕捉し、コード位相を測定し、これらの測定値の搬送波を平滑化し、擬似レンジ差を計算し、かつハンドセットの場所を計算するアルゴリズム全体を説明するフローチャートである。
【図３】本発明による標準的なＳＰＳ受信機のブロック図である。
【図４】本発明の一実施形態による、相関器の各チャネルの進んだアームと遅れたアームのそれぞれにおいて振幅を測定するために用いられる信号処理アルゴリズムを説明するブロック図である。
【図５】本発明の一実施形態による、コード位相測定値の誤差を低減するために用いられる搬送波平滑化アルゴリズムを説明するブロック図である。
【図６】本発明の一実施形態による、コード位相および搬送波周波数差から場所および速度を計算するために用いられるアルゴリズムを説明するブロック図である。
【図７】相関器に組み込まれたキャンセラの概略図である。
【図８】２ビン検索エンジン構成を示す図である。
【図９】２コード位相改良型検索エンジンの概略図である。
【図１】
2006502412.tif 000008
【図２】
2006502412.tif 000009
【図３】
2006502412.tif 000010
【図４】
2006502412.tif 000011
【図５】
2006502412.tif 000012
【図６】
2006502412.tif 000013
【図７】
2006502412.tif 000014
【図８】
2006502412.tif 000015
【図９】
2006502412.tif 000016
【国際調査報告】
2006502412.tif 000017
2006502412.tif 000018
2006502412.tif 000019
2006502412.tif 000020