(57)【特許請求の範囲】
【請求項１】
未来の全地球測定システム（ＧＰＳ）ナビゲーションデータを予測する方法であって、
ナビゲーションデータをサーバで受信するステップを含み、該ナビゲーションデータは、未来のナビゲーションデータの予測が可能であるか否かを示すデータフラグを含み、
該ナビゲーションデータをサーバで受信するステップは、受信した該ナビゲーションデータが送信された発信元を識別するステップを含み、
該データフラグが、未来のナビゲーションデータの予測が可能であることを示している場合には、該受信したナビゲーションデータを用いて未来のナビゲーションデータを予測するステップと、
該受信したナビゲーションデータにおける受信したウィークカウント時間（ＴＯＷ）メッセージを用いてアクションタイムに対応する未来のウィークカウント時間（ＴＯＷ）メッセージを決定するステップと、
該未来のナビゲーションデータ、識別された該発信元を示すインジケータ、及び該アクションタイムをクライアントに送信するステップとを含むことを特徴とする未来のナビゲーションデータを予測する方法。
【請求項２】
請求項１に記載の方法において、
該サーバで受信されたナビゲーションデータは、該受信したウィークカウント時間（ＴＯＷ）メッセージが属する受信サブフレームを含み、該未来のナビゲーションデータは、該未来のウィークカウント時間（ＴＯＷ）メッセージが属する予測サブフレームを含み、該未来のウィークカウント時間（ＴＯＷ）メッセージを決定するステップは、
該受信サブフレームから該予測サブフレームを含んでいる次のサブフレームまでの各サブフレームごとに該受信したウィークカウント時間（ＴＯＷ）メッセージを１単位時間だけ増加するステップを有することを特徴とする方法。
【請求項３】
請求項１に記載の方法において、
該未来のナビゲーションデータを予測する該ステップは、該決定した未来のウィークカウント時間（ＴＯＷ）メッセージ及び該受信ナビゲーションデータに基づいてパリティビットを決定するステップを有することを特徴とする方法。
【請求項４】
請求項１に記載の方法において、
該ナビゲーションデータを受信するステップは、該受信ナビゲーションデータがエラーを持っていない場合にはその受信ナビゲーションデータを記憶するステップを有することを特徴とする方法。
【請求項５】
請求項１に記載の方法において、
ナビゲーションデータを受信するステップは、
該受信ナビゲーションデータがエラーを持っていない場合には該識別された送信元についての該受信ナビゲーションデータを記憶するステップをさらに有することを特徴とする方法。
【請求項６】
請求項１に記載の方法において、
該未来のナビゲーションデータを予測するステップは、該受信ナビゲーションデータが新たなナビゲーションデータの組の一部であるか否かを判別するステップを有することを特徴とする方法。
【請求項７】
請求項６に記載の方法において、
記憶したナビゲーションデータと該受信ナビゲーションデータとの間において天体暦についてのデータの発行又はクロックについてのデータの発行のパラメータの一方に違いが検出された場合には、該受信ナビゲーションデータを該新たな受信ナビゲーションデータの組の一部とすることを特徴とする方法。
【請求項８】
請求項６に記載の方法において、
該受信ナビゲーションデータが該新たな受信ナビゲーションデータの組の一部でない場合には該未来のナビゲーションデータは予測され、該受信ナビゲーションデータが該新たな受信ナビゲーションデータの組の一部である場合には該未来のナビゲーションデータは予測されないことを特徴とする方法。
【請求項９】
請求項１に記載の方法において、
該ナビゲーションデータを受信するステップは、記憶したナビゲーションデータを該受信ナビゲーションデータで更新するステップを有することを特徴とする方法。
【請求項１０】
請求項９に記載の方法において、
該受信ナビゲーションデータが補完されていた場合には該受信ナビゲーションデータの補完バージョンを用いて該記憶したナビゲーションデータが更新され、該受信ナビゲーションデータが補完されていなかった場合には該受信ナビゲーションデータの非補完バージョンを用いて該記憶したナビゲーションデータが更新されることを特徴とする方法。
【請求項１１】
全地球測定システム（ＧＰＳ）のクライアントでのデータ除去実行方法であって、
サーバから未来のナビゲーションデータ及びアクションタイムを受信するステップと、
該サーバからの該未来のナビゲーションデータと関連する発信元を示す発信元識別子を受信するステップと、
該アクションタイムに受信した該未来のナビゲーションデータを用いて該クライアントにおいて該データ除去を実行するステップとを含み、
該データ除去は、該未来のナビゲーションデータを用いて、該発信元識別子によって示された発信元によって該クライアントに送信された信号について実行され、
該未来のナビゲーションデータは、受信したナビゲーションデータに基づく予測されたウィークカウント時間（ＴＯＷ）メッセージを含み、該予測されたウィークカウント時間（ＴＯＷ）メッセージと該受信したナビゲーションデータとに基づくパリティビットを含むことを特徴とするデータ除去実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、一般的には無線通信の分野に関し、特に、無線通信システムを用いた全地球測定システムにおけるナビゲーション情報の予測方法に関する。
【背景技術】
【０００２】  地理的ロケーション又はジオロケーションは、移動無線装置の位置を決定することに関連している。従来の技術の地理的ロケーションは、衛星に基づくナビゲーション装置を用いて正確な３つの要素の位置情報を実現する。よく知られている衛星に基づくナビゲーションシステムの１つに全地球測定システム（ＧＰＳ）がある。【０００３】  図１９に従来技術を用いたＧＰＳシステム１０を示す。ＧＰＳシステム１０は複数の衛星１２−ｊ（ｊ＝１，２，…，Ｊ）、少なくとも１つの地上制御局２０、及び少なくとも１つのＧＰＳ受信機３０で構成されている。各衛星１２−ｊは地球１６の周囲をある一定の速度ｖjで軌道を描いて回っており、他の衛星１２−ｊとある一定の距離を保っている。各衛星１２−ｊはＧＰＳ信号１４−ｊを送信している。【０００４】  その信号はある一定の周波数ｆのキャリア信号であり、個々の衛星に関係する固有のプエゾランダムノイズ（ＰＮ−ｊ）符号及びナビゲーションデータ（ＮＤ−ｊ）を用いて変調されたバイポーラ位相シフトキー（ＢＰＳＫ）である。ＰＮ−ｊ符号及びナビゲーションデータＮＤ−ｊは、キャリア信号を変調する前に排他的論理和演算によって結合される。ナビゲーションデータＮＤ−ｊには、衛星識別、タイミング情報、衛星の健全性インジケータ、軌道データ、及びパリティビットが含まれている。【０００５】  地上制御局２０は、ＧＰＳ信号１４−ｊを受信し訂正信号２４−ｊを送信するアンテナ２２、ＧＰＳ信号１４−ｊを検出する複数の相関器２６−ｍ（ｍ＝１，…，Ｍ）、及び、検出されたＧＰＳ信号を用いてＧＰＳ衛星１２−ｊを追跡するとともに各衛星に対する訂正信号２４−ｊを決定するソフトウェアを有するプロセッサ２８で構成されている。訂正信号２４−ｊには、衛星１２−ｊに対する更新位置及びタイミング情報を確保する目的のために、実際のＧＰＳシステム時間からオフセットしたバイアスやドリフトのような衛星クロックが含まれている。【０００６】  図２０に示すように、ＧＰＳ受信機３０は、ＧＰＳ信号１４−ｊを受信するアンテナ３２、ＧＰＳ信号１４−ｊを検出する複数の相関器３４−ｋ（ｋ＝１，２，…，Ｋ）、検出されたＧＰＳ信号１４−ｊを用いてジオロケーション位置を決定するソフトウェアを有するプロセッサ３６、受信したＧＰＳ信号１４−ｊを増幅してフィルタ処理を施すプリアンプ／プリフィルタ１０２、周波数同調器１０６、周波数同調器１０６にタイミングを供給する基準発振器１０８、及びプロセッサ３６にタイミングを供給するクロック１１８で構成されている。【０００７】  相関器４３−ｋには、プエゾランダムノイズ（ＰＮ）符号発生器１１０、乗算器１０４及び１１２、並びに積分ダンプフィルタ１１４が含まれている。ＧＰＳ受信機３０はＰＮ−ｊ符号を通してＧＰＳ信号１４−ｊを検出する。なお、ＰＮ符号発生器１１０は相関器３４−ｋの一部であってもよく、一部でなくともよい。【０００８】  ＧＰＳ信号１４−ｊを検出することは、キャリア周波数の要素及び符号位相の要素において、相関器３４−ｋがＰＮ−ｊ符号に対する受信ＧＰＳ信号１４−ｊを検索する相関処理を伴うことになる。その相関処理は、乗算器１１２を用いて所定の周波数における複製キャリア信号の上で変調された複製ＰＮ−ｊ符号と受信ＧＰＳ信号１４−ｊとをリアルタイムで乗算すること、及び、ダンプフィルタ１１４を用いて乗算器１１２の出力信号を積分することによって実現される。【０００９】  キャリア周波数の要素においては、ＧＰＳ受信機３０は、基準発振器１０８及び周波数同調器１０６を用いてキャリア信号を自己複製して、ＧＰＳ３０に到達するときのＧＰＳ信号１４−ｊの周波数に合わせる。送信されるＧＰＳ信号１４−ｊの周波数ｆは、ＧＰＳ受信機３０に到達する前に、ドップラ効果のために未知の量Δｆjだけ変化する。したがって、ＧＰＳ受信機３０に到達したときのＧＰＳ信号１４−ｊはｆ＋Δｆjの周波数をもっている。【００１０】  ＧＰＳ受信機３０は、複製キャリア信号の周波数が受信ＧＰＳ信号１４−ｊの周波数に合致するまで、ｆ＋Δｆminからｆ＋Δｆmaxまでの範囲の周波数スペクトルｆspecにわたってキャリア信号を自己複製することで、ドップラ効果を計算する。Δｆmin及びΔｆmaxは、ＧＰＳ信号１４−ｊが衛星１２−ｊからＧＰＳ受信機３０まで伝搬するときに、ドップラ効果によって受ける周波数の最小変化及び最大変化である。
すなわち、Δｆmin≦ｆ≦Δｆmaxで表される。【００１１】  符号位相の要素においては、ＧＰＳ受信機３０は、ＰＮ符号発生器１１０を用いて各衛星１２−ｊに関係する固有のＰＮ−ｊ符号を複製する。そこで複製されたＰＮ−ｊ符号は、複製されたキャリア信号の上に乗算器１０４を介して変調される。ＧＰＳ受信機３０によって受信したＧＰＳ信号１４−ｊがあるとしたら、複製されたＰＮ−ｊ符号で変調された複製キャリア信号がそれと相関するまで、複製されたＰＮ−ｊ符号は符号位相スペクトルＲj（ｓｐｅｃ）に亘ってシフトされる。そこでは、各符号位相スペクトルＲj（ｓｐｅｃ）はＰＮ−ｊに関連する全ての可能な位相シフトを含んでいる。すなわち、複製キャリア信号上に変調された位相シフトＰＮ−ｊ符号は、受信したＧＰＳ信号１４−ｊと乗算器１１２を用いて乗算されて、積分ダンプフィルタ１１４によって積分ダンプ処理を受ける出力信号を生成する。【００１２】  相関器３４−ｋは、周波数スペクトルｆspec及びそれらに関連する符号位相スペクトルＲj（ｓｐｅｃ）に亘る複数のＰＮ−ｊ符号に対する並行した調査を実行するように構成されている。すなわち、周波数の要素及び符号の要素の両方に対する並行した調査を実行するように構成されている。複数の相関器３４−ｋの各々は、Δｆmin≦ｆ≦Δｆmaxに沿った可能な周波数の各々及びＰＮ−ｊ符号における可能な位相シフトの各々に亘って、特定のＰＮ−ｊ符号に対する調査に専ら使用される。【００１３】  ある１つの相関器３４−ｋが１つのＰＮ−ｊ符号に対する調査を完了した場合には、その相関器３４−ｋは同じ方法で他のＰＮ−ｊ符号を調査する。複数の相関器３４−ｋによって全てのＰＮ−ｊ符号がひとまとめに調査されるまでこの処理は継続する。例えば、１２個の衛星１２−ｊが存在する場合を想定すると、１２個の固有のＰＮ−ｊ符号が存在することになる。【００１４】  ＧＰＳ受信機３０が６個の相関器３４−ｋを持っている場合には、ＧＰＳ受信機３０は相関器３４−ｋを用いて２組の異なる６個のＰＮ−ｊ符号を同時に調査する。言い換えれば、相関器３４−ｋは最初に６個のＰＮ−ｊ符号に対して調査する。すなわち、相関器３４−１はＰＮ−１符号に対して調査し、相関器３４−２はＰＮ−２符号に対して調査する。他の相関器も同様。最初の６個の調査が完了した場合には、相関器３４−ｋは次の６個のＰＮ−ｊ符号を調査する。すなわち、相関器３４−１はＰＮ−７符号に対して調査し、相関器３４−２はＰＮ−８符号に対して調査する。他の相関器も同様である。【００１５】  ＰＮ−ｊ符号の各々に対する相関器３４−ｋの調査に対して、積分ダンプ処理は、そのＰＮ−ｊ符号における周波数と位相シフトとの組み合わせの各々に対して実行される。例えば、キャリア信号において、周波数スペクトルｆspecが５０個の可能な周波数を含み、符号位相スペクトルＲj（ｓｐｅｃ）が２０４６個の可能なハーフチップ位相シフトを含んでいると想定する。この場合、ＰＮ−ｊ符号における周波数とハーフチップ位相シフトとの全ての可能な組み合わせを調査するためには、相関器３４−ｋは１０２，３００回の積分を実行する必要がある。【００１６】  相関器３４−ｋにおける一般的な積分時間は１ｍｓである。���号対ノイズ比が強い場合、例えば、アンテナ３２が空からよく見える場合、又は衛星１２−ｊから直接見える場合には、この積分時間はＧＰＳ３０がＧＰＳ信号１４−ｊを検出するには十分である。したがって、この例の場合には、１つの相関器３４−ｋが１つのＰＮ−ｊ符号における周波数とハーフチップ位相シフトとの全ての可能な組み合わせを調査するために必要な時間は１０２．３秒となる。【００１７】  相関器３４−ｋによってＧＰＳ信号１４−ｊが検出されると、プロセッサ３６は、相関器３４−ｋの出力信号に対して、高速フーリエ変換（ＦＦＴ）、離散フーリエ変換（ＤＦＴ）、又はこれらと等価な演算を実行して、検出された各衛星１２−ｊについてのプエゾレンジを計算する。検出された衛星１２−ｊからＧＰＳ受信機３０まで伝搬するＧＰＳ信号１４−ｊに関係する伝搬遅延に基づいて、検出された衛星１２−ｊからＧＰＳ受信機３０までの距離の推計に対応する各プエゾレンジが、衛星１２−ｊとＧＰＳ受信機３０についてのクロックにおいて、実際のＧＰＳ時間からのタイミングオフセットに基づく遅延に加わる。ＧＰＳ受信機３０から検出された衛星１２−ｊまでのプエゾレンジ測定は、よく知られているように、ＧＰＳ受信機３０の概略位置を決定するプロセッサ３６を用いて結合される。【００１８】  ＧＰＳ受信機３０が移動電話機又は他のタイプの移動通信装置と一体化している場合には、そのＧＰＳ受信機３０はいつも空からよく見えている訳ではない。このような状況においては、ＧＰＳ受信機３０によって受信されるＧＰＳ信号１４−ｊの信号対ノイズ比は、ＧＰＳ受信機３０が空からよく見えている場合よりも相当低いのが一般的である。したがって、ＧＰＳ受信機３０にとってＧＰＳ信号１４−ｊを検出することが困難である。【００１９】  弱い信号対ノイズ比を補ってＧＰＳ信号１４−ｊの検出を向上させるために、相関器３４−ｋは通常よりも長い積分時間を持つように構成することができる。この場合において、十分な積分時間は１秒である。したがって、上記の例の場合には、相関器３４−ｋが１つのＰＮ−ｊ符号における周波数及びハーフチップ位相シフトの可能な全ての組み合わせを調査するに必要な時間は１０２，３００秒となる。長い積分時間によって獲得時間すなわちＧＰＳ信号１４−ｊを検出するに必要な時間が長くなるという望ましくない結果が生じる。【００２０】  短い積分時間又は長い積分時間で構成されたＧＰＳ受信機によってＧＰＳ信号１４−ｊの獲得を容易にするために、無線支援ＧＰＳ（ＷＡＧ）が開発された。ＷＡＧシステムは、ＧＰＳ信号１４−ｊを調査する相関器によって実行される積分の回数を低減することによって、容易にＧＰＳ信号１４−ｊを獲得する。積分の回数は、調査すべき周波数レンジ及び符号位相レンジを狭くすることによって低減される。言い換えれば、ＷＡＧシステムは、ＧＰＳ信号１４−ｊの調査を特定の周波数及び位相スペクトルＲj（ｓｐｅｃ）よりも少ない符号位相の範囲に限定する。【００２１】  図２１に示す従来のＷＡＧシステム２００は、ＷＡＧサーバ２２０、複数の基地局２３０、及び少なくとも１つのＷＡＧクライアント２４０で構成されている。ＷＡＧサーバ２２０は、ＷＡＧクライアン��２４０によるＧＰＳ信号１４−ｊの検出を容易にするための装置であり、空からよく見える所定のロケーションに設置されたアンテナ２７０を具備したＷＡＧ受信機２６０を備えている。このＷＡＧ受信機２６０は、空からよく見えるアンテナ２７０を具備しているので、普通は短い積分時間で構成された相関器を備えている。【００２２】  ＷＡＧサーバ２２０は、有線インタフェース又は無線インタフェースを介して基地局２３０と通信できる。各基地局２３０は所定のロケーションをもち、基地局２３０に関係する地理的エリア又はセル２５０内に位置しているＷＡＧクライアント２４０に対して通信サービスを提供する。ここで、各セル２５０は所定のさサイズであり、複数のセクタに分割されている。【００２３】  ＷＡＧクライアント２４０は、ＧＰＳ受信機２８０、ＧＰＡアンテナ２８５、及びおそらく移動電話機２９０で構成され、動作中であるか又は空からよく見えるロケーションの圏内若しくは圏外にあるのが一般的である。ＧＰＳ受信機２８０は一般的に長い積分時間をもっている。なお、この出願の目的のために用いている「移動電話機」という用語は限定されるものではなく、通信装置であればどのようなものでも含むと解釈すべきである。。【００２４】  ＷＡＧサーバ２２０は、基地局２３０の所定のロケーション又はＷＡＧクライアントに現在サービスを提供しているセル２５０において検出されたＧＰＳ信号１４−ｊに基づいて、見えている衛星に対する周波数及び符号位相の調査範囲を予測する。この場合、見えている衛星はＷＡＧサーバ２２０から見えている全ての衛星１２−ｊの一組である。すなわち、ＷＡＧサーバ２２０は見えている衛星によって送信されたＧＰＳ信号１４−ｊを検出することができる。【００２５】  この一組の衛星１２−ｊは見えている一組として認識される。見えている衛星について予測された周波数及び符号位相の調査範囲は、その見えている衛星の識別を含み、基地局２３０を介してＷＡＧサーバ２２０からＷＡＧクライアント２４０に送信される。ＷＡＧクライアント２４０は、この情報を用いてＧＰＳ信号１４−ｊに対する並行した調査の絞り込みを実行する。言い換えれば、ＧＰＳ受信機２８０の相関器は、予測された周波数及び符号位相の範囲で識別された衛星を捜す。したがって、全ての周波数スペクトルｆspec及び符号位相スペクトルＲj（ｓｐｅｃ）を調査しないので、積分の総回数は低減される。このため、全体的な獲得時間が低減される。【００２６】  ＷＡＧシステムは、ＷＡＧクライアントによって要求されたＧＰＳ信号１４−ｊを検出するための積分の回数を低減するが、ＧＰＳ信号１４−ｊの信号対ノイズ比が低い環境においてＧＰＳ信号１４−ｊの検出が向上する訳ではない。したがって、信号対ノイズ比が低い環境においては、長い積分時間がなおも要求される。積分時間が連続して２０ｍｓを超える場合には、ＧＰＳ感度すなわちＧＰＳ信号１４−ｊを検出する能力が低下する。この以下の理由は、ナビゲーションデータＮＤ−ｊの各ビットの間隔が２０ｍｓになっているからである。積分時間が２０ｍｓを超えた場合には、その積分期間に１つのナビゲーションビットから次ぎのナビゲーションビットまでの過渡期を含む結果��生じることになる。このため、ＧＰＳ受信感度が低下する。【００２７】  この問題の１つの解決法として、積分する前に（例えば、ａポイント若しくはｂポイントで）ＧＰＳ信号１４−ｊからナビゲーションデータＮＤ−ｊを取り除くか、又は、積分後のプロセッサ３６による処理前に（例えば、ポイントｃで）取り除く。この技法はデータ除去又は変調除去と言う。
【発明が解決しようとする課題】
【００２８】  従来においては、データ除去は前の受信ナビゲーションデータＮＤ−ｊを用いて、今回受信したＧＰＳ信号１４−ｊの中のナビゲーションデータＮＤ−ｊを取り去る。前の受信ナビゲーションデータＮＤ−ｊを用いてデータ除去を実行する場合には、その結果、前の受信ナビゲーションデータＮＤ−ｊ−ｔが現在のナビゲーションデータＮＤ−ｊと必ずしも同一である必要はないので、現在のナビゲーションデータＮＤ−ｊの除去が不完全になる。不完全なデータ除去はビットエラーを発生させるのでＧＰＳ受信感度が低下し、その結果として、データ除去が完全である場合よりも、その期間における積分時間が長くならざるを得ない。したがって、データ除去を向上する方法が求められている。
【課題を解決するための手段】
【００２９】  本発明は、未来のナビゲーションデータを予測することによってデータ除去を向上する方法である。予測した未来のナビゲーションデータを用いたデータ除去は、不完全なデータ除去を抑制又は解消する。これによりＧＰＳ受信感度及び獲得時間の低減が向上する。未来のナビゲーションデータを予測する本発明の方法は、ナビゲーションデータを受信するステップ、及び受信ナビゲーションデータを用いて未来のナビゲーションデータを生成するステップを有する。そこにおいては、予測した未来のナビゲーションデータは、未来の時間に受信するナビゲーションデータとほぼ同一になるはずである。予測した未来のナビゲーションデータは、その後用いられてデータ除去が実行される。
【００３０】  ある実施形態においては、未来のナビゲーションデータに対応する時間におけるウィークメッセージを予測すること、及び、前の受信ナビゲーションデータに基づくパリティビットを予測することにによって、未来のナビゲーションデータが予測される。
【発明を実施するための形態】
【００３１】  本発明は、未来のナビゲーションデータを予測することによってデータ除去を向上する方法である。未来のナビゲーションデータを予測するには、ナビゲーションデータを作り上げる要素を理解することが必要である。ナビゲーションデータにはナビゲーションデータビット及びパリティビットが含まれている。その中のナビゲーションデータビットは、衛星識別子、タイミング情報、衛星健全性インジケータ、及び天体暦及地球暦のような軌道データで構成されている。
【００３２】  図１〜図３に、完全なナビゲーションデータセット３８のハイレベル及び詳細な説明を示す。ナビゲーションデータセット３８は全部で３７，５００ビットをもつ２５個のフレーム４０−ｓで構成されている。その中の各フレームは１，５００ビットで構成され、３０秒の時間間隔で送信される（すなわち、各ビットは２０ｍｓの時間間隔で送信される）。したがって、ナビゲーションデータセット３８の２５個の全てのフレームは、１２分３０秒の期間に送られる。
【００３３】  ナビゲーションデータセット３８は、例えば２時間の固定した期間又は固定しない期間（以下、「データセット期間」という）において有効である（あるいは、おおむね変化しない）。すなわち、ナビゲーションデータセット３８の同じ基本の２５個のフレームは、以下に記載するように、ほとんど例外なくデータセット期間に連続して送信される。
【００３４】  各フレーム４０−ｓは５個のサブフレーム４２−ｑを含み、各サブフレーム４２−ｑは３００ビットで構成されている。１番目のサブフレーム４２−１は、ＧＰＳウィーク番号、衛星の精度及び健全性、並びに衛星クロック訂正の条件に対応するパリティビット及びナビゲーションデータを含んでいる。２番目及び３番目のサブフレーム４２−２及び４２−３は天体暦パラメータ対応するパリティビット及びナビゲーションデータを含んでいる。サブフレーム４２−１、４２−３及４２−３で送信される情報のほとんどは、データセット期間はフレームからフレームまで変化しない。
【００３５】  ４番目のサブフレーム４２−４は、地球暦データ、特別なメッセージ、電離層、タイミングデータ、ページＩＤ、衛星構成、指定データのページ対応するパリティビット及びナビゲーションデータを含んでいる。サブフレーム４２−４で送信されるそのようなページの総数は２５である。その中において、各ページは全ての２５フレームにおいて送信される。サブフレーム４２−４で送信される２５個のページの各々を構成している情報のほとんどは、データセット期間は変化しない。
【００３６】  ５番目のサブフレーム４２−５は、地球暦データ、衛星の健全性、衛星ＩＤ、地球暦の基準時間、及び地球暦の基準ウィーク番号対応するナビゲーションデータビット及びパリティビットを含んでいる。サブフレーム４２−５で送信されるそのようなページの総数は２５である。その中において、各ページは全ての２５フレームにおいて送信される。サブフレーム４２−５で送信される２５個のページの各々を構成している情報のほとんどは、データセット期間は変化しない。
【００３７】  各サブフレーム４２−ｑは１０個のワード５０−ｐで構成されている。そして、各ワード５０−ｐは図３に示すように３０ビットで構成されている。各ワード５０−ｐの上位２４個のビットはナビゲーションデータであり、下位６個のビットはそのワードのパリティビットである。
【００３８】  各サブフレーム４２−ｑの１番目のワード５０−１は、テレメタリ又はＴＬＭワードとして共通に参照される。図４にＴＬＭワード５０−１を示す。ＴＬＭワード５０−１は、６ビットのパリティビット及び２４ビットのナビゲーションデータビットで構成されている。さらに、ナビゲーションデータビットは、サブフレームの開始を識別するための８ビットのプリアンブル、１４ビットのＴＬＭメッセージ、及び２ビットの指定ビットを含んでいる。データセット期間においては、各フレーム４０−ｓ内の各サブフレーム４２−ｑにおけるＴＬＭワード５０−１は同じものである。
【００３９】  例えば、フレーム４０−１内のサブフレーム４２−１におけるＴＬＭワード５０−１、フレーム４０−１内のサブフレーム４２−４におけるＴＬＭワード５０−１、及びフレーム４０−３内のサブフレーム４２−３におけるＴＬＭワード５０−１は、同じデータセット期間は同一のものになっている。したがって、データセット期間において、任意のサブフレーム４２−ｑにおける未来のＴＬＭワードを予測することは、同一のデータセット期間にすでに送信された前のＴＬＭワードをコピーすることを意味する。
【００４０】  各サブフレーム４２−ｑの２番目のワード５０−２は、ハンドオーバワード（ＨＯＷ）として共通に参照される。図５にＨＯＷ５０−２を示す。ＨＯＷワード５０−２は６ビットのパリティビット及び２４のナビゲーションデータで構成されている。さらに、ナビゲーションデータは、上位ビットのウィークカウント時間（ＴＯＷ）メッセージ、サブフレーム４２−ｑを識別するための（サブフレームＩＤの）３ビット、及び２ビットの補充パリティビットを含んでいる。その中で、最後の２ビットのパリティビットは常にゼロになっている。
【００４１】  ＴＯＷメッセージは、６秒又は１つのビットのようにサブフレームごとの１単位時間だけ増加し、ＧＰＳ時間に対する基準時間を提供する。その基準時間は、衛星１２−ｊからのサブフレーム４２−ｑのすぐ後に続く送信開始時間を表し、（６秒／単位時間のような）適切な変換ファクタを用いてＧＰＳ時間におけるウィークカウント時間に変換することができる。
【００４２】  例えば、フレーム４０−１の３番目のサブフレーム４２−３におけるＴＯＷメッセージは、フレーム４０−１の２番目のサブフレーム４２−２におけるＴＯＷメッセージを１単位時間だけ増加することによって検出される。各単位時間が６秒に相当する場合には、適切な変換ファクタは単位時間に対して６秒となり、基準時間に６を乗算することによって（ＧＰＳ時間に対する）ウィークカウント時間に変換することができる。
【００４３】  ＴＯＷメッセージはサブフレームごとに１単位時間だけ増加するので、ＴＯＷメッセージの変化を明らかにするために、パリティビットも各フレーム４０−ｓ内の各サブフレーム４２−ｑのＨＯＷ５０−２において変化する。したがって、任意のサブフレーム４２−ｑにおける未来のＨＯＷ５０−２を予測することは、以下に記載するように、前のＨＯＷ５０−２から次のＨＯＷ５０−２までサブフレーム４２−ｑごとに前のＴＯＷ５０−２のＴＯＷメッセージを１単位時間だけ増加すること、予測された未来のＨＯＷ５０−２を含めること、及び、パリティビットを予測することを意味する。なお、未来のサブフレーム４２−ｑがたとえ現在のデータセット期間の後に起こる場合であっても、そのような未来のサブフレーム４２−ｑにおけるＴＯＷメッセージを予測できる。
【００４４】  サブフレーム４２−１の３番目のワード５０−３から１０番目のワード５０−１０までの各ワードは、６ビットのパリティビット、並びに、ＧＰＳウィーク番号、衛星の精度及び健全性、及びクロックのデータの発行（ＩＯＤＣ）パラメータを含む衛星クロック訂正条件に対応する２４ビットのナビゲーションデータで構成されている。２番目及び３番目のサブフレーム４２−２及び４２−３における３番目のワード５０−３から１０番目のワード５０−１０までの各ワードは、６ビットのパリティビット、及び、天体暦のデータの発行（ＩＯＤＥ）のような天体暦の情報に対応するナビゲーションデータビットで構成されている。
【００４５】  ＴＬＭワード５０−１と同じように、サブフレーム４２−１、サブフレーム４２−２及びサブフレーム４２−３は、データセット期間はフレームからフレームまで変化しない。しかしながら、１番目のサブフレーム４２−１、２番目のサブフレーム４２−２、３番目のサブフレーム４２−３における３番目のワード５０−３から１０番目のワード５０−１０までの各ワードは、互いに同一のものではない。
【００４６】  例えば、最初のフレーム４０−１内における１番目のサブフレーム４２−１の３番目のワード５０−３は、データセット期間における２番目のフレーム４０−２内における１番目のサブフレーム４２−１の３番目のワード５０−３と同じであるが、最初のフレーム４０−１内における１番目のサブフレーム４２−１の３番目のワード５０−３は、最初のフレーム４０−１内における１番目のサブフレーム４２−１又は他の任意のフレーム内における他の任意のサブフレームの１０番目のワード５０−１０とは異なっている。
【００４７】  したがって、データセットの期間において、１番目、２番目、及び３番目のサブフレーム４２−１、４２−２、及び４２−３の未来のワードを予測することは、同じデータセットの期間においてそれぞれ送信された前のサブフレーム４２−１、４２−２、４２−３の３番目のワード５０−３から１０番目のワード５０−１０までをコピーすることを意味する。
【００４８】  なお、ＩＯＤＣパラメータは１番目のサブフレームの１０ビットによって表される。言い換えれば、ＩＯＤＣパラメータの上位２ビットは１番目のサブフレーム４２−１の３番目のワード５０−３の中にあり、ＩＯＤＣパラメータの下位８ビットは１番目のサブフレーム４２−１の３番目のワードの中にある。ＩＯＤＣパラメータは、２番目及び３番目のサブフレーム４２−２及び４２−３の双方において８ビットで表されている。すなわち、ＩＯＤＣパラメータは、２番目のサブフレーム内の８ビットによって表され、再び３番目のサブフレーム４２−３内の同一の８ビットによって表される。
【００４９】  言い換えれば、ＩＯＤＣパラメータは、２番目のサブフレームの３番目のワード５０−３及び３番目のサブフレーム４２−３の１０番目のワード５０−１０の中にある。データセット期間においては、ＩＯＤＣパラメータの上位８ビットは２番目のサブフレーム４２−２内のＩＯＤＣパラメータの上位８ビットに等しく、３番目のサブフレーム４２−３内のＩＯＤＣパラメータの上位８ビットに等しい。
【００５０】  図１〜図３に示すように、４番目のサブフレーム４２−４の３番目のワード５０−３から１０番目のワード５０−１０までは、６ビットのパリティビット、並びに、衛星の地球暦及び健全性データ、指定ビット、衛星構成フラグ、及び電離層データ対応する２４ビットのナビゲーションデータで構成され、５番目のサブフレーム４２−５の３番目のワード５０−３から１０番目のワード５０−１０までは、６ビットのパリティビット、並びに、衛星の地球暦及び健全性データ、及び地球暦の基準時聞及びウィーク番号に対応する２４ビットのナビゲーションデータで構成されている。
【００５１】  ４番目のサブフレーム４２−４のページはページＩＤパラメータによって識別され、そのページＩＤパラメータは３番目のワード５０−３内に位置している。一方、５番目のサブフレーム４２−５のページは衛星ＩＤパラメータによって識別され、その衛星ＩＤパラメータは３番目のワード５０−３内に位置している。データセット期間においては、４番目のサブフレーム４２−４及び５番目のサブフレーム４２−５内における１ページから２４ページまでの３番目のワード５０−３から１０番目のワード５０−１０までは、（ワード及びページはサブフレームからサブフレームに変化し、フレームからフレームに変化するけれども）変化しない。
【００５２】  したがって、データセット期間において４番目のサブフレーム４２−４及び５番目のサブフレーム４２−５内における３番目のワード５０−３から１０番目のワード５０−１０までを予測することは、前の同じデータセット期間に送信された２５ｘ個のフレームの任意の１つのフレームのそれぞれの４番目のサブフレーム４２−４及び５番目のサブフレーム４２−５内における３番目のワード５０−３から１０番目のワード５０−１０までをコピーすることを意味する。ここで、ｘは整数である。
【００５３】  したがって、データセット期間が変化しなかった場合には、同じデータセット期間において衛星１２−ｊから送信さるべきナビゲーションデータセットは、後述するように、２番目のワード５０−２のＴＯＷメッセージ及びパリティビットを予測することによって、同じデータセット期間において送信されたナビゲーションデータセットを用いて予測することができる。
【００５４】  データセット期間が変化したか否か、すなわちナビゲーションデータセット３８がもはや有効でなく新たなナビゲーションデータセットが発行されたか否かを判定する１つの方法は、ＩＯＤＣパラメータとＩＯＤＥパラメータとを比較することである。ＩＯＤＣパラメータ及び又はＩＯＤＥパラメータがある１つのフレームから次ぎのフレームに変化した場合（又は、ある１つのサブフレームから次のサブフレームに変化した場合）には、データセット期間が変化したことになる。そうでない場合には、データセット期間は変化しなかったことになる。
【００５５】  比較される特定のビットは、１番目のサブフレーム４２−１内のＩＯＤＣパラメータ対応する１０ビットのうち下位８ビット、２番目のサブフレーム４２−２内のＩＯＤＥパラメータ対応する８ビット、及び又は３番目のサブフレーム４２−３内のＩＯＤＥパラメータ対応する８ビットである。上記したビットのいずれか１つが変化すると、新たなデータセット期間を指定する。
【００５６】  例えば、現在のフレーム４０−２の１番目のサブフレーム４２−１におけるＩＯＤＣの下位８ビットは、フレーム４０−１の１つ前のフレームの１番目のサブフレーム４２−１におけるＩＯＤＣの下位８ビットと比較される。現在のフレーム４０−２内におけるＩＯＤＣの下位８ビットが、１つ前のフレーム４０−１におけるＩＯＤＣの下位８ビットと等しくない場合には、現在のフレーム４０−２は新たなデータセットの一部である。
【００５７】  同様に、現在のフレームの２番目のサブフレーム４２−２におけるＩＯＤＥパラメータは、１つ前のフレームの２番目のサブフレーム４２−２におけるＩＯＤＥパラメータと比較される。現在のフレームの２番目のサブフレーム４２−２におけるＩＯＤＥパラメータが、１つ前のフレームの２番目のサブフレーム４２−２におけるＩＯＤＥパラメータと異なる場合には、現在のフレームは新たなデータセットの一部である。
【００５８】  あるいは、現在のフレームの３番目のサブフレーム４２−３におけるＩＯＤＥパラメータは、１つ前のフレームの３番目のサブフレーム４２−３におけるＩＯＤＥパラメータと比較される。現在のフレームの３番目のサブフレーム４２−３におけるＩＯＤＥパラメータが、１つ前のフレームの３番目のサブフレーム４２−３におけるＩＯＤＥパラメータと異なる場合には、現在のフレームは新たなデータセットの一部である。
【００５９】  一方、１番目のサブフレーム４２−１におけるＩＯＤＣパラメータに対応する１０ビットのうち下位８ビットは、２番目のサブフレーム４２−２におけるＩＯＤＥパラメータに対応する下位８ビット及び同じフレーム又は異なるフレームに属する３番目のサブフレーム４２−３におけるＩＯＤＥパラメータに対応する下位８ビットと比較される。
【００６０】  上記のナビゲーションデータの記載に基づくならば、前のナビゲーションデータが有効である場合には、未来のある時間（以下、「アクションタイム」という）における未来のナビゲーションデータは予測することができる。言い換えるならば、未来のナビゲーションデータを予測する本発明は、アクションタイムにおけるナビゲーションデータを受信し、その受信ナビゲーションデータを用いて、未来のナビゲーションデータを予測するものである。
【００６１】  ある１つの実施形態においては、ナビゲーションデータを受信することはナビゲーションデータの受領、前に受信して記憶したナビゲーションデータを今回受信ナビゲーションデータを用いて更新すること、及び更新された前に受信して記憶したナビゲーションデータを用いて未来のナビゲーションデータを予測することを意味する。図６〜図１６はこの実施形態の具体例を示すフローチャートであり、以下詳細に記載する。
【００６２】  図６はサブフレーム受信プログラムを示すフローチャート６００であり、複数の衛星１２−ｊから送信されたナビゲーションデータＮＤ−ｊを受信する方法の１つである。サブフレーム受信プログラムは、初期化、サブフレーム受信、パリティチェック、及び衛星識別を実行する。初期化はステップ６０１からステップ６０４までの間に実行される。
【００６３】  ステップ６０１において、サブフレーム受信プログラムは初期化される。ステップ６０２において、１番目、２番目、及び３番目のサブフレーム４２−１、４２−２、及び４２−３に対するサブフレームデータフラグは、各衛星１２−ｊについて偽にセットされる。偽のサブフレームデータフラグは、関連するサブフレームに対するナビゲーションデータのシステム初期化を表し、そのときは関連する未来のサブフレームの予測はできない。これに対して、真のサブフレームデータフラグは、関連するサブフレームのシステム初期化が完了したことを表し、そのときは関連する未来のサブフレームの予測が可能となる。
【００６４】  ステップ６０４において、４番目のサブフレーム４２−４及び５番目のサブフレーム４２−５における１ページから２５ページまでのローカルコピー及びグローバルコピーに対するローカルフラグ及びグローバルフラグは、各衛星１２−ｊについて偽にセットされる。ローカルコピー又はグローバルコピーに対する偽のローカルフラグ又は偽のグローバルフラグは、関連するページに対するナビゲーションデータのシステム初期化を表し、このときは関連する未来のページのコピーはできない。これに対して、真のローカルフラグ又は真のグローバルフラグは、関連するページのシステム初期化が完了したことを表し、そのときは関連する未来のページの予測が可能となる。
【００６５】  サブフレーム受信はステップ６１０において実行される。サブフレーム受信はステップ６０４の後、ステップ６１６の後、又は（サブフレーム受信プログラムがサブフレーム更新プログラムからリターンしたときに）ステップ６０８の後に発生する。ステップ６１０において、ＧＰＳ信号１４−ｊを送信する衛星１２−ｊから現在のサブフレーム４２−ｑが受信される。あるいは、ステップ６１０は、完全なサブフレームの代わりに、そのときの１つのワード又はナビゲーションデータＮＤ−ｊのビットストリームと同等のものを受信できる。
【００６６】  ステップ６１２からステップ６１６において、パリティチェックが実行される。ステップ６１２は現在のサブフレーム４２−ｑにおけるパリティをチェックする。すなわち、パリティアルゴリズムを用いてサブフレーム４２−ｑにおける各ワードに対するパリティをチェックする。
【００６７】  図７は、ワード５０−ｐに対するパリティを実行する本発明の実施形態において使用されるパリティアルゴリズムのフローチャート７００を示している。パリティアルゴリズムは、ワード５０−ｐにおける６ビットのパリティビットが、ワード５０−ｐに対するナビゲーションデータビット及び１つ前のワード５０−ｕからの２ビットのパリティビットの排他的論理の組み合わせから、どのように引き出されたかを示している。ここで、ｐ＞１のときｕ＝ｐ−１であり、ｐ＝１のときｕ＝１０である。以下、特定のビットは下記の名称Ｄbit,wordを用いて示される。ここで、「ｂｉｔ」及び「ｗｏｒｄ」は特定のビット及びワードに対応する。例えば、Ｄ1,pはワード５０−ｐにおける最初のビットを示す。
【００６８】  ステップ７０１において、受信ナビゲーションデータＤ1,p及び受信したパリティビットＤ30,uの間、すなわち、ワード５０−ｐにおける受信した最初のナビゲーションデータ及びワード５０-ｕの受信した最後のパリティビット（又は、３０番目のビット）の間で排他的論理和演算が実行される。Ｄ1,p及びＤ30,uの排他的論理和はｄ1,pによって表される。同様に、ステップ７０２からステップ７２４において、受信した次のナビゲーションデータビット（すなわち、Ｄ2,p，Ｄ3,p，…Ｄ24,p）及びパリティビットＤ30,uの間で排他的論理和演算が実行されて、排他的論理和（すなわち、ｄ2,p，ｄ3,p，…ｄ24,p）が得られる。
【００６９】  ｄ1,p，…ｄ24,pがが決定された場合には、ワード５０−ｐにおけるパリティビットＤ25,u…Ｄ30,uが算出される。ステップ７２５において、ｄ1,p，ｄ2,p，ｄ3,p，ｄ5,p，ｄ6,p，ｄ10,p，ｄ11,p，ｄ12,p，ｄ13,p，ｄ14,p，ｄ17,p，ｄ18,p，ｄ20,p，ｄ23,p及びパリティビットＤ29,uの間で排他的論理和演算が実行されて、パリティビットＤ30,pが得られる。ステップ７２６において、ｄ2,p，ｄ3,p，ｄ4,p，ｄ6,p，ｄ7,p，ｄ11,p，ｄ12,p，ｄ13,p，ｄ14,p，ｄ15,p，ｄ18,p，ｄ19,p，ｄ20,p，ｄ22,p及びパリティビットＤ30,uの間で排他的論理和演算が実行されて、パリティビットＤ26,pが得られる。
【００７０】  ステップ７２７において、ｄ1,p，ｄ3,p，ｄ4,p，ｄ6,p，ｄ7,p，ｄ8,p，ｄ12,p，ｄ13,p，ｄ14,p，ｄ15,p，ｄ16,p，ｄ19,p，ｄ20,p，ｄ22,p及びパリティビットＤ29,uの間で排他的論理和演算が実行されて、パリティビットＤ27,pが得られる。ステップ７２８において、ｄ2,p，ｄ4,p，ｄ6,p，ｄ6,p，ｄ8,p，ｄ9,p，ｄ13,p，ｄ14,p，ｄ15,p，ｄ16,p，ｄ17,p，ｄ20,p，ｄ21,p，ｄ23,p及びパリティビットＤ30,uの間で排他的論理和演算が実行されて、パリティビットＤ28,pが得られる。ステップ７２９において、ｄ1,p，ｄ3,p，ｄ5,p，ｄ6,p，ｄ7,p，ｄ9,p，ｄ10,p，ｄ14,p，ｄ15,p，ｄ16,p，ｄ17,p，ｄ18,p，ｄ21,p，ｄ22,p，ｄ24,p及びパリティビットＤ30,uの間で排他的論理和演算が実行されて、パリティビットＤ29,pが得られる。ステップ７３０において、ｄ3,p，ｄ5,p，ｄ6,p，ｄ8,p，ｄ9,p，ｄ10,p，ｄ11,p，ｄ13,p，ｄ15,p，ｄ19,p，ｄ22,p，ｄ23,p，ｄ24,p及びパリティビットＤ29,uの間で排他的論理和演算が実行されて、パリティビットＤ30,pが得られる。
【００７１】  （ステップ７２５からステップ７３０で）算出されたパリティビットＤ25,p…Ｄ30,pは、現在受信サブフレームにおけるワード５０−ｐに対する受信したパリティビットＤ25,p…Ｄ30,p（すなわち、受信ナビゲーションデータビットに伴って受信したパリティビットＤ1,p…Ｄ24,p）と比較される。算出されたパリティビット及び受信したパリティビットの間のいかなる相違も、受信した関連するワード５０−ｐ（従って、サブフレーム４２−ｑ）がパリティチェックを失敗したことを意味する。
【００７２】  なお、現在のワードのナビゲーションデータビット及び前のワードの最後の２ビットのパリティビットのように、同じパリティビットからパリティビットを算出するためのパリティビットが与えられる場合に、他のパリティアルゴリズムが同一のパリティビットを算出する限りは、そのパリティアルゴリズムも用いることが可能である。
【００７３】  図６のステップ６１４において、算出されたパリティビットが、どのようなワード５０−ｐにおける受信したパリティビットと等しくない場合には、ワード５０−ｐはパリティチェックを失敗する。現在のサブフレーム４２−ｑにおけるいかなるワード５０−ｐについてのパリティチェックの失敗の結果、次のサブフレーム４２−ｑを受信するために、ステップ６１０に戻る前にステップ６１６において現在のサブフレーム４２−ｑは廃棄される。
【００７４】  現在のサブフレーム４２−ｑがパリティチェックを通った場合（すなわち、現在のサブフレーム４２−ｑの全てのワード５０−ｐがパリティチェックを通った場合）には、現在のサブフレーム４２−ｑが属している衛星１２−ｊは、例えば、ＰＮ−ｊ符号又は衛星ＩＤに基づいて、ステップ６１５において認識される。ステップ６１７は、認識した衛星１２−ｊについて前の受信ナビゲーションデータを更新すること（以下、「サブフレーム更新」という）を開始する。
【００７５】  サブフレーム更新は、（コンピュータメモリ内に記憶されている）ナビゲーションデータＮＤ−ｊができる限り最新のものを保持するような処理であり、それにより最新の有効情報に基づく予測ができる。図９〜図１２は、衛星１２−ｊに対するサブフレーム更新プログラムを示すフローチャートである。
【００７６】  （図６のフローチャート６００におけるステップ６１７から移行した）ステップ６２１において、受信した現在のサブフレーム４２−ｑを用いて、衛星１２−ｊに対するサブフレーム更新が初期化される。ステップ６２２において、現在のＴＬＭワード５０−１（すなわち、現在のサブフレーム４２−ｑにおけるＴＬＭワード５０−１）が、前のＴＬＭワード５０−１（すなわち、前のサブフレーム４２−ｑにおけるＴＬＭワード５０−１）と等しいか否かを判別する。現在のＴＬＭワード５０−１が前のＴＬＭワード５０−１と等しくない場合（例えば、初期化による場合）には、ステップ６２４において、前のＴＬＭワード５０−１は現在のＴＬＭワード５０−１に置き換えられる。
【００７７】  前のＴＬＭワード５０−１を置き換えた後、又は現在のＴＬＭワード５０−１が前のＴＬＭワード５０−１と等しい場合には、ステップ６２６において、２番目のワード５０−２における３ビットのサブフレームＩＤをチェックすることによって、現在のサブフレームについてのサブフレーム番号が決定され、適切なサブフレームを更新する処理を開始する。サブフレームＩＤによって識別される現在のサブフレームが、１番目のサブフレーム４２−１、２番目のサブフレーム４２−２、３番目のサブフレーム４２−３、４番目のサブフレーム４２−４、又は５番目のサブフレーム４２−５である場合には、次のステップは、それぞれ、６３２、６５２、６７２、６９２、６９３となる。
【００７８】  ステップ６３２は１番目のサブフレームの更新処理を開始する。ステップ６３２において、サブフレーム４２−１に対するサブフレームデータフラグは真にセットされ、１番目のサブフレームの未来のバージョンを予測するための情報が十分であることが示される。ステップ６３４において、現在のＩＯＤＣパラメータ（すなわち、現在のサブフレーム４２−１におけるＩＯＤＣパラメータ）は、前のＩＯＤＣパラメータ（すなわち、前のサブフレーム４２−１におけるＩＯＤＣパラメータ）と比較される。
【００７９】  現在のＩＯＤＣパラメータが前のＩＯＤＣパラメータと等しい場合には、２番目のワード５０−２におけるＴＯＷメッセージを更新する目的のために、前の１番目のサブフレーム４２−１は現在の１番目のサブフレーム４２−１に置き換えられる。なお、現在の１番目のサブフレーム４２−１及び前の１番目のサブフレーム４２−１の間でフレーム又はサブフレームの番号が分かっている場合には、ステップ６４６は必ずしも必要ではない。この場合には、ＴＯＷメッセージを更新又は算出することができる。ステップ６４６の後のステップ６４８は、次のサブフレーム４２−ｑに対するサブフレーム受信（フローチャート６００のステップ６１０）に戻る。
【００８０】  現在のＩＯＤＣパラメータが前のＩＯＤＣパラメータと等しくない場合（初期化の場合又はデータセット期間が変化した場合）には、１番目のサブフレーム４２−１を新たなデータセットに更新するために、ステップ６３６において、前の１番目のサブフレーム４２−１が現在の１番目のサブフレーム４２−１に置き換えられる。ステップ６３８において、２番目のサブフレーム４２−２に対するサブフレームデータフラグがチェックされる。
【００８１】  ２番目のサブフレーム４２−２に対するサブフレームデータフラグが真である場合（２番目のサブフレーム４２−２の未来のバージョンを予測するための情報が十分であることが示されている場合）には、次のステップ６４０に移行する。そして、次の２番目のサブフレーム４２−２（すなわち、新たなデータセットの２番目のサブフレーム４２−２）を受信する前に、できるだけ最新の２番目のサブフレーム４２−２におけるＩＯＤＣパラメータを維持するために、２番目のサブフレーム４２−２における前のＩＯＤＣパラメータが、現在の１番目のサブフレーム４２−１からのＩＯＤＣパラメータの下位８ビットに置き換えられる。２番目のサブフレーム４２−２におけるＩＯＤＣパラメータが更新された場合には、２番目のサブフレーム４２−２における全てのワード５０−ｐは、例えば図７及び図８のパリティアルゴリズム７００のようなパリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。
【００８２】  ステップ６４０の処理が終了した場合、又は２番目のサブフレーム４２−２についてのサブフレームデータフラグが偽である場合（２番目のサブフレーム４２−２の未来のバージョンの予測のための情報が不十分であることが示されている場合）には、ステップ６４２において、３番目のサブフレーム４２−３に対するサブフレームデータフラグがチェックされる。
【００８３】  ３番目のサブフレーム４２−３に対するサブフレームデータフラグが真であり、３番目のサブフレーム４２−３の未来のバージョンを予測するための情報が十分であることが示されている場合には、ステップ６４４において、次の３番目のサブフレーム４２−３（すなわち、新たなデータセットの３番目のサブフレーム４２−３）を受信する前に、できるだけ最新の３番目のサブフレーム４２−３におけるＩＯＤＣパラメータを維持するために、３番目のサブフレーム４２−３における前のＩＯＤＣパラメータが、現在の１番目のサブフレーム４２−１からのＩＯＤＣパラメータの下位８ビットに置き換えられる。
【００８４】  ３番目のサブフレーム４２−３におけるＩＯＤＣパラメータが更新された場合には、３番目のサブフレーム４２−３における全てのワード５０−ｐは、パリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。ステップ６４４の処理が終了した場合、又は３番目のサブフレーム４２−３についてのサブフレームデータフラグが偽であり、３番目のサブフレーム４２−３の未来のバージョンの予測のための情報が不十分であることが示されている場合には、ステップ６４８に移行して、フローチャート６００におけるサブフレーム受信のステップ６１０に戻る。
【００８５】  なお、ステップ６３８から６４４までは、ＩＯＤＥパラメータの置き換えによって、かつ、２番目及び３番目のサブフレーム４２−２及び４２−３における記憶されたナビゲーションデータ並びに新たなＩＯＤＣパラメータに基づくパリティビットの再計算によって、データセット期間が変化した後に、２番目及び３番目のサブフレーム４２−２及び４２−３を更新するための追加のステップである。
【００８６】  すなわち、ステップ６４０及び６４４が実行された後、２番目及び３番目のサブフレームにおける更新されてコンピュータのメモリに記憶されたナビゲーションデータビット及びパリティビットは、前に受信した２番目及び３番目のサブフレーム４２−２及び４２−３からのナビゲーションデータビットで構成され、その中では、ＩＯＤＥパラメータは、現在受信した１番目のサブフレーム４２−１（すなわち、更新されたナビゲーションデータビット）におけるＩＯＤＣパラメータの現在の下位８ビット及び更新されたナビゲーションデータビットに基づいて再算出されたパリティビットに置き換えられている。
【００８７】  ステップ６５２は２番目のサブフレーム４２−２の更新処理を開始する。ステップ６５２において、２番目のサブフレーム４２−２に対するデータフラグは真にセットされ、２番目のサブフレーム４２−２の未来のバージョンを更新するための情報が十分であることが示されている。ステップ６５４において、現在のＩＯＤＥパラメータ（すなわち、現在の２番目のサブフレーム４２−２におけるＩＯＤＥパラメータ）は、前のＩＯＤＥパラメータ（すなわち、前の２番目のサブフレーム４２−２におけるＩＯＤＥパラメータ）と比較される。
【００８８】  現在のＩＯＤＣパラメータが前のＩＯＤＣパラメータと等しい場合には、２番目のワード５０−２におけるＴＯＷメッセージを更新する目的のために、ステップ６６６において、前の２番目のサブフレーム４２−２は現在の２番目のサブフレーム４２−２に置き換えられる。なお、現在の２番目のサブフレーム４２−２及び前の２番目のサブフレーム４２−２の間でフレーム又はサブフレームの番号が分かっている場合には、ステップ６６６は必ずしも必要ではない。この場合には、ＴＯＷメッセージを更新又は算出することができる。ステップ６６６の後のステップ６６８は、次のサブフレーム４２−ｑに対するサブフレーム受信（フローチャート６００のステップ６１０）に戻る。
【００８９】  現在のＩＯＤＣパラメータが前のＩＯＤＣパラメータと等しくない場合（初期化の場合又はデータセット期間が変化した場合）には、２番目のサブフレーム４２−２を新たなデータセットに更新するために、ステップ６５６において、前の２番目のサブフレーム４２−２が現在の２番目のサブフレーム４２−２に置き換えられる。ステップ６５８において、３番目のサブフレーム４２−３に対するサブフレームデータフラグがチェックされる。
【００９０】  ３番目のサブフレーム４２−３に対するサブフレームデータフラグが真である場合（３番目のサブフレーム４２−３の未来のバージョンを予測するための情報が十分であることが示されている場合）には、次のステップ６６０に移行する。そして、次の３番目のサブフレーム４２−３を受信する前に、できるだけ最新の３番目のサブフレーム４２−３におけるＩＯＤＣパラメータを維持するために、３番目のサブフレーム４２−３における前のＩＯＤＣパラメータが、現在の２番目のサブフレーム４２−２からのＩＯＤＣパラメータに置き換えられる。３番目のサブフレーム４２−３におけるＩＯＤＣパラメータが更新された場合には、３番目のサブフレーム４２−３における全てのワード５０−ｐは、パリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。
【００９１】  ステップ６６０の処理が終了した場合、又は３番目のサブフレーム４２−３についてのサブフレームデータフラグが偽である場合（３番目のサブフレーム４２−３の未来のバージョンの予測のための情報が不十分であることが示されている場合）には、ステップ６６２において、１番目のサブフレーム４２−１に対するサブフレームデータフラグがチェックされる。
【００９２】  １番目のサブフレーム４２−１に対するサブフレームデータフラグが真であり、１番目のサブフレーム４２−１の未来のバージョンを予測するための情報が十分であることが示されている場合には、次の１番目のサブフレーム４２−１を受信する前に、できるだけ最新の１番目のサブフレーム４２−１におけるＩＯＤＣパラメータを維持するために、１番目のサブフレーム４２−１におけるＩＯＤＣの下位８ビットが、現在の２番目のサブフレーム４２−２からのＩＯＤＣパラメータに置き換えられる。
【００９３】  １番目のサブフレーム４２−１におけるＩＯＤＣパラメータの下位８ビットが更新された場合には、１番目のサブフレーム４２−１における全てのワード５０−ｐは、パリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。ステップ６６４の処理が終了した場合、又は１番目のサブフレーム４２−１についてのサブフレームデータフラグが偽であり、１番目のサブフレーム４２−１の未来のバージョンの予測のための情報が不十分であることが示されている場合には、次のステップ６６８において、フローチャート６００におけるサブフレーム受信のステップ６１０に戻る。
【００９４】  なお、ステップ６５８から６６４までは、１番目のサブフレームにおけるＩＯＤＣパラメータ及び３番目のサブフレーム４２−３におけるＩＯＤＥパラメータの置き換えによって、かつ、１番目及び３番目のサブフレーム４２−１及び４２−３における記憶されたナビゲーションデータ並びに新たなＩＯＤＥパラメータに基づくパリティビットの再計算によって、データセット期間が変化した後に、１番目及び３番目のサブフレームを更新するための追加のステップである。
【００９５】  すなわち、ステップ６６０及び６６４が実行された後、１番目及び３番目のサブフレーム４２−１及び４２−３における更新されてコンピュータのメモリに記憶されたナビゲーションデータビット及びパリティビットは、前に受信した１番目及び３番目のサブフレーム４２−１及び４２−３からのナビゲーションデータビットで構成され、その中では、ＩＯＤＣパラメータ及びＩＯＤＥパラメータは、現在受信した２番目のサブフレーム４２−２（すなわち、更新されたナビゲーションデータビット）におけるＩＯＤＥパラメータの現在の下位８ビット及び更新されたナビゲーションデータビットに基づいて再算出されたパリティビットに置き換えられている。
【００９６】  ステップ６７２は３番目のサブフレームの更新処理を開始する。ステップ６７２において、３番目のサブフレーム４２−３に対するデータフラグは真にセットされ、３番目のサブフレーム４２−３の未来のバージョンを更新するための情報が十分であることが示されている。ステップ６７４において、現在のＩＯＤＥパラメータ（すなわち、現在の３番目のサブフレーム４２−３におけるＩＯＤＥパラメータ）は、前のＩＯＤＥパラメータ（すなわち、前の３番目のサブフレーム４２−３におけるＩＯＤＥパラメータ）と比較される。
【００９７】  現在のＩＯＤＥパラメータが前のＩＯＤＥパラメータと等しい場合には、２番目のワード５０−２におけるＴＯＷメッセージを更新する目的のために、ステップ６８６において、前の３番目のサブフレーム４２−３は現在の３番目のサブフレーム４２−３に置き換えられる。なお、現在の３番目のサブフレーム４２−３及び前の３番目のサブフレーム４２−３の間でフレーム又はサブフレームの番号が分かっている場合には、ステップ６８６は必ずしも必要ではない。この場合には、ＴＯＷメッセージを更新又は算出することができる。ステップ６８６の後のステップ６８８は、次のサブフレームに対するサブフレーム受信（フローチャート６００のステップ６１０）に戻る。
【００９８】  現在の３番目のＩＯＤＥパラメータ４２−３が前の３番目のＩＯＤＣパラメータ４２−３と等しくない場合（初期化の場合又はデータセット期間が変化した場合）には、３番目のサブフレーム４２−３を新たなデータセットに更新するために、ステップ６７６において、前の３番目のサブフレーム４２−３が現在の３番目のサブフレーム４２−３に置き換えられる。ステップ６７８において、２番目のサブフレーム４２−２に対するサブフレームデータフラグがチェックされる。
【００９９】  ２番目のサブフレーム４２−２に対するサブフレームデータフラグが真である場合（２番目のサブフレーム４２−２の未来のバージョンを予測するための情報が十分であることが示されている場合）には、次のステップ６８０に移行する。そして、次の２番目のサブフレーム４２−２を受信する前に、できるだけ最新の２番目のサブフレーム４２−２におけるＩＯＤＥパラメータを維持するために、２番目のサブフレーム４２−２における前のＩＯＤＥパラメータが、現在の３番目のサブフレーム４２−３からのＩＯＤＥパラメータに置き換えられる。２番目のサブフレーム４２−２におけるＩＯＤＥパラメータが更新された場合には、２番目のサブフレーム４２−２における全てのワード５０−ｐは、パリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。
【０１００】  ステップ６８０の処理が終了した場合、又は２番目のサブフレーム４２−２についてのサブフレームデータフラグが偽である場合（２番目のサブフレーム４２−２の未来のバージョンの予測のための情報が不十分であることが示されている場合）には、ステップ６８２において、１番目のサブフレーム４２−１に対するサブフレームデータフラグがチェックされる。
【０１０１】  １番目のサブフレーム４２−１に対するサブフレームデータフラグが真であり、１番目のサブフレーム４２−１の未来のバージョンを予測するための情報が十分であることが示されている場合には、次の１番目のサブフレーム４２−１を受信する前に、できるだけ最新の１番目のサブフレーム４２−１におけるＩＯＤＣパラメータを維持するために、１番目のサブフレーム４２−１におけるＩＯＤＣの下位８ビットが、現在の３番目のサブフレーム４２−３からのＩＯＤＥパラメータに置き換えられる。
【０１０２】  １番目のサブフレーム４２−１におけるＩＯＤＣパラメータの下位８ビットが更新された場合には、１番目のサブフレーム４２−１における全てのワードは、パリティアルゴリズムを用いて、再計算されたパリティビットを持つことになる。ステップ６８４の処理が終了した場合、又は１番目のサブフレーム４２−１についてのサブフレームデータフラグが偽であり、１番目のサブフレーム４２−１の未来のバージョンの予測のための情報が不十分であることが示されている場合には、次のステップ６８８において、フローチャート６００におけるサブフレーム受信のステップ６１０に戻る。
【０１０３】  なお、ステップ６７８から６８４までは、１番目のサブフレームにおけるＩＯＤＣパラメータ及び２番目のサブフレーム４２−２におけるＩＯＤＥパラメータの置き換えによって、かつ、１番目及び２番目のサブフレーム４２−１及び４２−２における記憶されたナビゲーションデータ並びに新たなＩＯＤＥパラメータに基づくパリティビットの再計算によって、データセット期間が変化した後に、１番目及び２番目のサブフレーム４２−１及び４２−２を更新するための追加のステップである。
【０１０４】  すなわち、ステップ６８０及び６８４が実行された後、１番目及び２番目のサブフレーム４２−１及び４２−２における更新されてコンピュータのメモリに記憶されたナビゲーションデータビット及びパリティビットは、前に受信した１番目及び２番目のサブフレーム４２−１及び４２−２からのナビゲーションデータビットで構成され、その中では、ＩＯＤＣパラメータ及びＩＯＤＥパラメータは、現在受信した３番目のサブフレーム４２−３（すなわち、更新されたナビゲーションデータビット）におけるＩＯＤＥパラメータの現在の下位８ビット及び更新されたナビゲーションデータビットに基づいて再算出されたパリティビットに置き換えられている。
【０１０５】  ステップ６９２は４番目のサブフレーム４２−４の更新処理を開始する。４番目のサブフレーム４２−４の更新は、５番目のサブフレーム４２−５の更新と同様に、１ページから２５ページまでの予測を容易にする目的のために、１ページから２５ページまでのローカルコピー及びグローバルコピーを更新することを意味する。見えている衛星１２−ｊの各々について、４番目及び５番目のサブフレーム４２−４及び４２−５における１ページから２５ページまでのコピーが維持される。
【０１０６】  このようなコピーは「ローカルコピー」である。グローバルコピーはローカルコピーから導き出される。言い換えれば、４番目及び５番目のサブフレーム４２−４及び４２−５における１ページから２５ページまでのグローバルコピーは、見えている全ての衛星についての４番目のサブフレーム４２−４における３ページの最新のローカルコピーのコピーである。
【０１０７】  例えば、見えている衛星１２−３についての４番目のサブフレーム４２−４における３ページのローカルコピーが、見えている任意の衛星１２−ｊについての４番目のサブフレーム４２−４における３ページの最新のローカルコピーである場合には、４番目のサブフレーム４２−４における３ページのそのローカルコピーは、見えている全ての衛星１２−ｊについての４番目のサブフレーム４２−４における３ページのグローバルコピーに含まれている。
【０１０８】  特定の衛星１２−ｊについてのローカルコピーは、その衛星１２−ｊが見えている衛星の組に加わるとき又はその組の一部になるときに生成される。グローバルコピーは、最初のローカルコピーが生成されるときに生成される。グローバルコピーは、見えている衛星の組の１つの衛星１２−ｊに属しているページが受信されたときは常に生成され、あるいはその後の他の時間に生成される。
【０１０９】  ステップ６９２において、現在の４番目のサブフレーム４２−４のページは、４番目のサブフレーム４２−４の３番目のワード５０−３におけるページＩＤパラメータを用いて識別される。ステップ６９４において、４番目のサブフレーム４２−４の識別されたページに対するグローバルコピー及びローカルコピーは、現在の４番目のサブフレーム４２−４のページに置き換えられる。
【０１１０】  なお、４番目のサブフレーム４２−４はチェックすべきＩＯＤＣパラメータ又はＩＯＤＥパラメータを持っていない。また、４番目のサブフレーム４２−４はデータセット期間が変化したか否かに関係なく置き換えられる。あるいはまた、ステップ６９６は、データセット期間が変化しない場合には、（データセット期間が変化した場合に決定される１番目、２番目、又は３番目のサブフレーム４２−１、４２−２、又は４２−３におけるＩＯＤＣパラメータ若しくはＩＯＤＥパラメータを用いて）削除される。また、識別されたページに対するローカルデータフラグ及びグローバルデータフラグがステップ６９４の前に偽となった場合には、ステップ６９６は削除される。ステップ６９８において、フローチャート６００におけるサブフレーム受信のステップ６１０に戻る。
【０１１１】  ステップ６９３は５番目のサブフレーム４２−５の更新処理を開始する。ステップ６９３において、現在の５番目のサブフレーム４２−５のページは、５番目のサブフレーム４２−５の３番目のワード５０−３における衛星ＩＤパラメータを用いて識別される。例えば、衛星ＩＤパラメータが１０に等しい場合には、５番目のサブフレーム４２−５のページは１０である。
【０１１２】  ステップ６９５において、５番目のサブフレーム４２−５の識別されたページに対するローカルデータフラグ及びグローバルデータフラグが真にセットされた場合には、５番目のサブフレーム４２−５のページの未来のバージョンを予測する情報が十分であることを示している。ステップ６９７において、前の５番目のサブフレーム４２−５の識別されたページのローカルコピー及びグローバルコピーは、現在の５番目のサブフレーム４２−５のページに置き換えられる。
【０１１３】  なお、５番目のサブフレーム４２−５はチェックすべきＩＯＤＣパラメータ又はＩＯＤＥパラメータを持っていない。また、５番目のサブフレーム４２−５はデータセット期間が変化したか否かに関係なく置き換えられる。あるいはまた、ステップ６９７は、データセット期間が変化しない場合には、（データセット期間が変化した場合に決定される１番目、２番目、又は３番目のサブフレーム４２−１、４２−２、又は４２−３におけるＩＯＤＣパラメータ若しくはＩＯＤＥパラメータを用いて）削除される。また、識別されたページのに対するローカルコピー及びグローバルコピーがステップ６９５の前に偽となった場合には、ステップ６９７は削除される。ステップ６９９において、フローチャート６００におけるサブフレーム受信のステップ６１０に戻る。
【０１１４】  サブフレーム受信プログラム及びサブフレーム更新プログラムは、未来のナビゲーションデータを予測するのに利用される。本発明は、適切なナビゲーションデータが受信された場合には、未来のナビゲーションデータがいかなるサイズセグメントであっても予測することができる。例えば、本発明は、未来のナビゲーションデータのサブフレーム、ワード、又はビットストリームを予測する。説明を容易にするために、本発明は、未来のナビゲーションデータのサブフレームを予測すること（以下、「サブフレーム予測」という）に関して記述される。ただし、このことは本発明をサブフレーム予測に限定するものではない。
【０１１５】  サブフレーム予測は、衛星１２−ｊに対してサブフレームが予測されるべきである最初の決定を意味する。予測を実行するための十分なデータがある場合（すなわち、衛星１２−ｊにおけるそのサブフレームに対するデータフラグが真である場合）には、そのサブフレーム４２−ｑにおける１番目のワードから１０番目のワードまでを予測することができる。
【０１１６】  ある１つの実施形態において、本発明は、現在のサブフレーム（例えば、現在受信サブフレーム）、現在のサブフレームの前のバージョン（以下、「前バージョンサブフレーム」という）、及び予想されるべきサブフレームの前のバージョン（以下、「テンプレートサブフレーム」という）を用いて、未来のサブフレーム（以下、「予測サブフレーム」という）を予測する。
【０１１７】  図１３は、上記したサブフレームの間の関係を示す一例である。図１３において、サブフレーム９０は現在のサブフレームＣ、サブフレーム９２は前バージョンサブフレームＢ、サブフレーム９６はテンプレートサブフレームＹ、サブフレーム９４は予測サブフレームＺである。例えば、予測サブフレームＺが４番目のサブフレーム４２−４である場合には、テンプレートサブフレームＹは前に受信した４番目のサブフレーム４２−４である。現在のサブフレームＣが３番目のサブフレーム４２−３である場合には、前バージョンサブフレームＢは前に受信した３番目のサブフレーム４２−３である。予測サブフレームは、現在のサブフレームＣのすぐ後に続くサブフレームである必要はない。
【０１１８】  図１４〜図１６は、サブフレームを予測する本発明の一実施形態によるサブフレーム予測プログラムを示すフローチャート８００である。なお、このサブフレーム予測プログラムは、ナビゲーションデータＮＤーｊの１つのワード、マルチサブフレーム、ビットストリーム等を予測するために、修正することができる。
【０１１９】  ステップ８０１において、サブフレーム予測プログラムは初期化される。ステップ８０２において、予測サブフレームＺが決定される。サブフレームが予測サブフレームＺであるという決定は、さまざまな方法で実行することができる。例えば、予測サブフレームＺは現在のサブフレームＣの後のサブフレーム、要求されたサブフレーム等にすることができる。
【０１２０】  予測サブフレームＺが４番目又は５番目のサブフレーム４２−４又は４２−５である場合には、ステップ８０４に移行する。ステップ８０４においては、４番目又は５番目のサブフレーム４２−４又は４２−５のページは、上記したように、ページＩＤパラメータ又は衛星ＩＤパラメータを検査することによって、それぞれ識別される。
【０１２１】  ステップ８０６において、予測サブフレームＺ又はテンプレートサブフレームＹに対応するサブフレームのページにおけるローカルデータフラグがチェックされる。例えば、４番目のサブフレーム４２−４のページ６が予測サブフレームである場合には、４番目のサブフレーム４２−４のページ６に対するローカルデータフラグがチェックされる。そのローカルデータフラグが真であり、４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのローカルコピーを用いて、予測できることが示されている場合には、ステップ８０７に移行する。
【０１２２】  ステップ８０７において、（特定のサブフレームが予測されることによって）４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのローカルコピーがテンプレートサブフレームＹであるとセットされ、そのテンプレートサブフレームＹから予測サブフレームＺが決定される。例えば、予測サブフレームＺが４番目のサブフレーム４２−４に対応している場合には、４番目のサブフレーム４２−４のローカルコピーはテンプレートサブフレームＹであるとセットされる。
【０１２３】  そのローカルデータフラグが偽であり、４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのローカルコピーを用いて予測ができないことが示されている場合には、ステップ８０８に移行する。ステップ８０８においては、予測サブフレームＺ又はテンプレートサブフレームＹに対応するサブフレームのページに対するローカルデータフラグがチェックされる。
【０１２４】  そのグローバルデータフラグが真であり、４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのグローバルコピーを用いて予測ができることが示されている場合には、ステップ８０９に移行する。ステップ８０９において、４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのグローバルコピーがテンプレートサブフレームＹであるとセットされ、そのテンプレートサブフレームＹから予測サブフレームＺが決定される。そのグローバルデータフラグが偽であり、４番目又は５番目のサブフレーム４２−４又は４２−５におけるページのグローバルコピーを用いて予測ができないことが示されている場合には、ステップ８１０を経由してステップ８０１に戻る。
【０１２５】  予測サブフレームが１番目、２番目、又は３番目のサブフレーム４２−１、４２−２、又は４２−３である場合には、ステップ８０２からステップ８０３に移行する。ステップ８０３において、予測サブフレームＺ又はテンプレートサブフレームＹに対応するサブフレームデータフラグがチェックされる。例えば、２番目のサブフレーム４２−２が予測サブフレームである場合には、２番目のサブフレーム４２−２に対するサブフレームデータフラグがチェックされる。そのサブフレームデータフラグが真であり、予測サブフレームを予測できることが示されている場合には、ステップ８０５に移行する。
【０１２６】  ステップ８０５において、（予測サブフレームによって）１番目、２番目、又は３番目のサブフレーム４２−１、４２−２、又は４２−３がテンプレートサブフレームＹであるとセットされ、そのテンプレートサブフレームＹから予測サブフレームＺが決定される。そのサブフレームデータフラグが偽であり、予測ができないことが示されている場合には、ステップ８１０に移行する。ステップ８１０においては、予測サブフレームＺは予測されず、サブフレーム予測プログラムはステップ８０１に戻る。
【０１２７】  ステップ８１２は予測サブフレームＺのワード５０−１を予測する処理を開始する。ナビゲーションデータＮＤーｊが補完されたか否かを判定するために、現在のサブフレームＣは前バージョンサブフレームＢと比較される。説明を容易にするために、以下、指定ビットは次の名称Ｄbit,word,subframeで表すことにする。例えば、ビットＤ30,10,Cは現在のサブフレームＣの１０番目のワード４２−１０の３０番目のビットを表す。また、ビットＤ28,2,YはテンプレートサブフレームＹの２番目のワード４２−２の２８番目のビットを表す。
【０１２８】  言い換えれば、ステップ８１２において、パリティビットＤ30,10,CはパリティビットＤ30,10,Bと比較される。パリティビットＤ30,10,CがパリティビットＤ30,10,Bに等しく、現在のサブフレームＣが補完されない前バージョンサブフレームＢである場合には、ステップ８１４において、予測サブフレームＺの１番目のワード５０−１はテンプレートサブフレームＹの１番目のワード５０−１と等しくセットされる。パリティビットＤ30,10,CがパリティビットＤ30,10,Bに等しくなく、現在のサブフレームＣが補完された前バージョンサブフレームＢである場合には、ステップ８１６において、予測サブフレームＺの１番目のワード５０−１はテンプレートサブフレームＹの１番目のワード５０−１の補完と等しくセットされる。
【０１２９】  ステップ８２０において、予測サブフレームＺの２番目の予測ワードの処理を開始し、ナビゲーションデータＮＤーｊが補完されたか否かを判定するために、パリティビットＤ30,10,Yがチェックされる。パリティビットＤ30,10,Yが論理０であり、テンプレートサブフレームＹが補完されていない場合には、ステップ８２２においてナビゲーションデータビットＤ18,2,Z…Ｄ22,2,ZはナビゲーションデータビットＤ18,2,Y…Ｄ22,2,Yに等しくセットされる。パリティビットＤ30,10,Yが論理１であり、テンプレートサブフレームＹが補完されている場合には、ステップ８２４においてナビゲーションデータビットＤ18,2,Z…Ｄ22,2,ZはナビゲーションデータビットＤ18,2,Y…Ｄ22,2,Yの補完に等しくセットされる。
【０１３０】  ステップ８２６において、ＴＯＷメッセージに対応するナビゲーションデータビットＤ1,2,Z…Ｄ17,2,Zは、ナビゲーションデータビットＤ1,2,C…Ｄ17,2,Cにセットされ、現在のサブフレームからサブフレームごとに１つの単位時間が増加されて、予測サブフレームＺを含んでいる。例えば、予測サブフレームＺが、図１３の例に示すように、現在のサブフレームＣのすぐ後に続くサブフレームである場合には、現在のサブフレームＣにおけるＴＯＷメッセージは１つの単位時間が増加される。ステップ８２８において、補充のパリティビットＤ23,2,Z及びＤ24,2,Z並びにパリティビットＤ25,2,Z…Ｄ28,2,Zは、パリティアルゴリズムに従って予測される。
【０１３１】  図１７及び図１８は、本発明の一実施形態に用いられるパリティアルゴリズムのフローチャート７４０を示し、補充のパリティビットＤ23,2,Z及びＤ24,2,Z並びにパリティビットＤ25,2,Z…Ｄ28,2,Zを算出する。フローチャート７４０は、ナビゲーションデータビットＤ1,2,Z…Ｄ22,2,Z、パリティビットＤ29,2,Z及びＤ30,2,Z並びにパリティビットＤ29,1,Z及びＤ30,1,Zを用いて、補充のパリティビットＤ23,2,Z及びＤ24,2,Z並びにパリティビットＤ25,2,Z…Ｄ28,2,Zを決定する方法を示している。先に記述したように、パリティビットＤ29,2,Z及びＤ30,2,Zは常にゼロにセットされる。
【０１３２】  ステップ７４１において、ナビゲーションデータビットＤ1,2,ZとパリティビットＤ30,1,Zとの間の排他的論理和演算が実行される。ナビゲーションデータビットＤ1,2,ZとパリティビットＤ30,1,Zとの排他的論理和は、ｄ1,2,Zとして表される。同様に、ステップ７４２…７６２において、次のナビゲーションデータビット（すなわち、Ｄ2,2,Z，Ｄ3,2,Z…Ｄ24,2,Z）とパリティビットＤ30,1,Zとの間の排他的論理和演算が実行され、排他的論理和（すなわち、ｄ2,2,Z，ｄ3,2,Z…ｄ24,2,Z）が得られる。
【０１３３】  ステップ７６３において、Ｄ30,1,Z ，ｄ1,2,Z，ｄ3,2,Z，ｄ5,2,Z，ｄ6,2,Z，ｄ7,2,Z，ｄ9,2,Z，ｄ10,2,Z，ｄ14,2,Z，ｄ15,2,Z，ｄ16,2,Z，ｄ17,2,Z，ｄ18,2,Z，ｄ21,2,Z及びｄ22,2,Zの間の排他的論理和演算が実行され、ｄ24,2,Zが得られる。ステップ７６４において、Ｄ29,1,Z ，ｄ3,2,Z，ｄ5,2,Z，ｄ6,2,Z，ｄ8,2,Z，ｄ9,2,Z，ｄ10,2,Z，ｄ11,2,Z，ｄ13,2,Z，ｄ15,2,Z，ｄ19,2,Z，ｄ22,2,Z及びｄ24,2,Zの間の排他的論理和演算が実行され、ｄ23,2,Zが得られる。ステップ７７５において、Ｄ29,1,Z ，ｄ1,2,Z，ｄ2,2,Z，ｄ3,2,Z，ｄ5,2,Z，ｄ6,2,Z，ｄ10,2,Z，ｄ11,2,Z，ｄ12,2,Z，ｄ13,2,Z，ｄ14,2,Z，ｄ17,2,Z，ｄ18,2,Z，ｄ21,2,Z及びｄ23,2,Zの間の排他的論理和演算が実行され、ｄ25,2,Zが得られる。
【０１３４】  ステップ７７６において、Ｄ29,1,Z ，ｄ2,2,Z，ｄ3,2,Z，ｄ4,2,Z，ｄ6,2,Z，ｄ7,2,Z，ｄ11,2,Z，ｄ12,2,Z，ｄ13,2,Z，ｄ14,2,Z，ｄ15,2,Z，ｄ18,2,Z，ｄ19,2,Z，ｄ21,2,Z及びｄ24,2,Zの間の排他的論理和演算が実行され、ｄ26,2,Zが得られる。ステップ７７７において、Ｄ29,1,Z ，ｄ1,2,Z，ｄ3,2,Z，ｄ4,2,Z，ｄ5,2,Z，ｄ7,2,Z，ｄ8,2,Z，ｄ12,2,Z，ｄ13,2,Z，ｄ14,2,Z，ｄ15,2,Z，ｄ16,2,Z，ｄ19,2,Z，ｄ20,2,Z及びｄ22,2,Zの間の排他的論理和演算が実行され、ｄ27,2,Zが得られる。ステップ７７８において、Ｄ29,1,Z ，ｄ2,2,Z，ｄ4,2,Z，ｄ5,2,Z，ｄ6,2,Z，ｄ8,2,Z，ｄ9,2,Z，ｄ13,2.Z，ｄ14,2,Z，ｄ15,2.Z，ｄ16,2,Z，ｄ17,2,Z，ｄ20,2,Z，ｄ21,2,Z及びｄ23,2,Zの間の排他的論理和演算が実行され、ｄ28,2,Zが得られる。
【０１３５】  図１５のステップ８２９において、ナビゲーションデータビットＤ1,2,Z…Ｄ17,2,Z、ナビゲーションデータビットＤ18,2,Z…Ｄ22,2,Z、補充のパリティビットＤ23,2,Z、及びパリティビットＤ25,2,Z…Ｄ30,2,Zは連結されて、予測サブフレームＺの１０番目のワード５０−１０が形成される。次に、図１６のステップ８３０は、予測サブフレームＺの３番目のワード５０−３から１０番目のワード５０−１０までを予測する処理を開始する。現在のサブフレームＣは前バージョンサブフレームＢと比較されて、現在のサブフレームＣのナビゲーションデータＮＤ−ｊが補完されたか否かを判別する。
【０１３６】  言い換えれば、パリティビットＤ30,10,C はパリティビットＤ30,10,Bと比較される。パリティビットＤ30,10,C がパリティビットＤ30,10,Bと等しく、現在のサブフレームＣが前バージョンサブフレームの補完バージョンでない場合には、ステップ８３４において、予測サブフレームＺの３番目のワード５０−３から１０番目のワード５０−１０は、テンプレートサブフレームＹの３番目のワード５０−３から１０番目のワード５０−１０と等しくなるようにセットされる。
【０１３７】  パリティビットＤ30,10,C がパリティビットＤ30,10,Bと等しくなく、現在のサブフレームＣが前バージョンサブフレームの補完バージョンである場合には、ステップ８３６において、予測サブフレームＺの３番目のワード５０−３から１０番目のワード５０−１０は、テンプレートサブフレームＹの３番目のワード５０−３から１０番目のワード５０−１０の補完と等しくなるようにセットされる。ステップ８４０において、１番目のワード５０−１から１０番目のワード５０−１０は連結されて、予測サブフレームＺが形成される。ステップ８４２において、サブフレーム予測プログラムはステップ８０１に戻り、次の予測サブフレームＺ＋１を予測する。
【０１３８】  未来のナビゲーションデータが予測された場合には、その未来のナビゲーションデータＮＤーｊ及びアクションタイム（又は、それについてのいくつかの指示）は、ＷＡＧサーバ２２０からＷＡＧクライアント２４０に送信される。その送信を受信したＷＡＧクライアント２４０は、アクションタイムにおいて、未来のナビゲーションデータＮＤーｊを用いて、ＧＰＳ信号１４−ｊからナビゲーションデータＮＤーｊのデータ除去を実行する。
【０１３９】  含まれている未来のナビゲーションデータＮＤ−ｊ及びアクションタイムは、例えばＰＮ−ｊ符号のように、衛星１２−ｊを識別するための衛星インジケータであり、未来のナビゲーションデータＮＤーｊはその衛星インジケータに関連するものである。したがって、未来のナビゲーションデータＮＤーｊは、識別された衛星１２−ｊによって送信されたＧＰＳ信号１４−ｊにおけるナビゲーションデータＮＤーｊのデータ除去を実行するためにのみ利用される。
【０１４０】  本発明はこの中である１つの実施形態として記述されているが、他の実施形態も可能である。例えば、ＴＬＭメッセージの更新を簡単にするため、また、全ての衛星のナビゲーションデータＮＤーｊに対するＴＬＭメッセージの１つのコピーを保持することによって記憶容量を低減するために、ＴＬＭメッセージのコピーを前に受信した他のナビゲーションデータと分離して記憶する。さらに、パリティビットは、図７及び図８に記載したアルゴリズムに従って再算出することができるので、各ワード５０−ｐにおけるパリティビットの記憶は必ずしも必要でない。したがって、本発明はここに開示された実施形態に限定されない。
【図面の簡単な説明】
【図１】  完全なナビゲーションデータセットを示す図。
【図２】  図１に続く完全なナビゲーションデータセットを示す図。
【図３】  ナビゲーションデータの１つのフレームをサブフレーム及びワードに分解した図。
【図４】  テレメトリ（ＴＬＭ）及びハンドオーバワード（ＨＯＷ）におけるデータビットを示す図。
【図５】  テレメトリ（ＴＬＭ）及びハンドオーバワード（ＨＯＷ）におけるデータビットを示す図。
【図６】  受信サブフレームプログラムを示すフローチャート。
【図７】  サブフレームにおけるワードに対するパリティチェックのアルゴリズムを示す図。
【図８】  図７に続くサブフレームにおけるワードに対するパリティチェックアルゴリズムを示す図。
【図９】  サブフレーム更新アルゴリズムを示すフローチャート。
【図１０】  図９に続くサブフレーム更新アルゴリズムを示すフローチャート。
【図１１】  図９に続くサブフレーム更新アルゴリズムを示すフローチャート。
【図１２】  サブフレーム更新アルゴリズムを示すフローチャート。
【図１３】  現在のサブフレームと予測サブフレームとの関係を示す図。
【図１４】  サブフレーム予測アルゴリズムのフローチャート。
【図１５】  図１４に続くサブフレーム予測アルゴリズムのフローチャート。
【図１６】  図１５に続くサブフレーム予測アルゴリズムのフローチャート。
【図１７】  サブフレームにおける２つのワードに対するパリティチェックアルゴリズムを示す図。
【図１８】  図１７に続くサブフレームにおける２つのワードに対するパリティチェックアルゴリズムを示す図。
【図１９】  従来技術における全地球測定システム（ＧＰＳ）として参照するナビゲーションシステムに基づく所定の衛星を示す図。
【図２０】  従来技術におけるＧＰＳ受信機を示す図。
【図２１】  従来技術における無線支援ＧＰＳ（ＷＡＧ）システムを示す図。
【符号の説明】  １０  ＧＰＳシステム
１２−ｊ  衛星
１４−ｊ，２４−ｊ  ＧＰＳ信号
２０  地上制御局
２２，３２，２８５  アンテナ
２６−ｍ，３４−ｋ  相関器
２８，３６  プロセッサ
３０，２６０，２８０  ＧＰＳ受信機
４０−ｓ  フレーム
４２−ｑ  サブフレーム
５０−ｐ  ワード
１０２  プリアンプ／プリフィルタ
１０４，１１２  乗算器
１０６  周波数同調器
１０８  基準発振器
１１０  ＰＮ符号発生器
１１４  積分ダンプフィルタ
１１８  クロック
１２０  電源
２２０  ＷＡＧサーバ
２３０  基地局
２４０  ＷＡＧクライアント
２５０  セル
２９０  移動電話機
【図１】
0005398940.tif 000002
【図２】
0005398940.tif 000003
【図３】
0005398940.tif 000004
【図４】
0005398940.tif 000005
【図５】
0005398940.tif 000006
【図６】
0005398940.tif 000007
【図７】
0005398940.tif 000008
【図８】
0005398940.tif 000009
【図９】
0005398940.tif 000010
【図１０】
0005398940.tif 000011
【図１１】
0005398940.tif 000012
【図１２】
0005398940.tif 000013
【図１３】
0005398940.tif 000014
【図１４】
0005398940.tif 000015
【図１５】
0005398940.tif 000016
【図１６】
0005398940.tif 000017
【図１７】
0005398940.tif 000018
【図１８】
0005398940.tif 000019
【図１９】
0005398940.tif 000020
【図２０】
0005398940.tif 000021
【図２１】
0005398940.tif 000022