(57)【要約】【課題】演算負荷を小さくして、所要メモリも小さくして、小規模で測位が行える測位装置を得る。【解決手段】本発明の測位装置は、衛星からの測位信号を受信して擬似距離を算出する測位装置において、衛星からの測位信号を受信する受信部と、ディジタル化受信測位信号を記憶するデータ記憶メモリと、この測位信号のデータを所定長以下の対象データ長に分割して対象データ長のデータを生成するデータ分割器２１と、この対象データ長のデータが表す対象値を数論変換する数論変換器２２ａ，２２ｂと、数論変換された対象値と衛星に対応するスペクトル拡散コードとの相関値を数論逆変換する数論逆変換器と、を設けた相関処理部７と、相関処理部が行った最大相関結果で測位信号の遅延時間を推定する遅延時間推定部と、推定された測位信号の遅延時間に基づいて測位計算を行う測位計算部と、測位計算結果で距離の表示を行う表示器と、を備えた。【選択図】図２
2007232694.tif 000002
【特許請求の範囲】
【請求項１】
衛星からの測位信号を受信して擬似距離を算出する測位装置において、
上記衛星からの上記測位信号を受信する受信部と、
上記受信してディジタル化された測位信号を記憶するデータ記憶メモリと、
上記記憶されたディジタル化測位信号のデータを所定長以下の対象データ長になるように分割して対象データ長のデータを生成するデータ分割器と、分割して生成された上記対象データ長のデータが表す対象値を数論変換する数論変換器と、数論変換された上記対象値と上記衛星に対応するスペクトル拡散コードとの相関値を数論逆変換する数論逆変換器と、を設けて相関処理をする相関処理部と、
上記相関処理部が行った相関処理における最大相関結果で上記測位信号の遅延時間を推定する遅延時間推定部と、
上記推定された測位信号の遅延時間に基づいて測位計算を行う測位計算部と、
上記測位計算で得られた距離の表示を行う表示器と、を備えたことを特徴とする測位装置。
【請求項２】
相関処理部におけるデータ分割器は、ディジタル化測位信号をオーバーサンプリングして後、該オーバーサンプリングしたデータを所望の単位に分割して数論変換に用いる対象データ長のデータとし、
数論逆変換器は、上記対象データ長のデータが表す対象値を数論変換した結果とスペクトル拡散コードとの乗算器による乗算結果を数論逆変換し、
上記相関処理部は更にデータ合成器を備えて、該データ合成器は上記数論逆変換された値を加算して相関処理部が行う相関処理とすることを特徴とする請求項１記載の測位装置。
【請求項３】
相関処理部におけるデータ分割器は、ディジタル化測位信号をオーバーサンプリングして後、該オーバーサンプリングしたデータを設定長以下となる設定データ長に区切り、区切られた該設定データ長のデータを順に該設定データ長分ずらして所定分加算したデータが表す対象値を順に生成し、
数論逆変換器は、順に生成した上記対象値を数論変換した結果とスペクトル拡散コードとの乗算器による乗算結果を数論逆変換することを特徴とする請求項１記載の測位装置。
【請求項４】
相関処理部は、数論変換器と数論逆変換器とを、それぞれ複数備えたことを特徴とするする請求項２または請求項３記載の測位装置。
【請求項５】
相関処理部における数論変換器と数論逆変換器とは、上位データと下位データとに分けた対象値を設定し、該上位データと該下位データとを同時に演算して上位データが表す相関値と下位データが表す相関値とを同時に得ることを特徴ととする請求項１記載の測位装置。
【請求項６】
衛星からの測位信号を受信して擬似距離を算出する測位方法において、
受信部が、上記衛星からの上記測位信号を受信する受信ステップと、
上記受信してディジタル化された測位信号に対して、データ分割器が、該ディジタル化測位信号のデータを所定長以下の対象データ長になるように分割して対象データ長のデータを生成するデータ長分割ステップと、
数論変換器が、分割して生成された上記対象データ長のデータが表す対象値を数論変換する数論変換ステップと、
数論逆変換器が、数論変換された上記対象値と上記衛星に対応するスペクトル拡散コードとの相関値を数論逆変換する数論逆変換ステップと、
遅延時間推定部が、上記数論逆変換ステップで得られる相関処理における最大相関結果に基づいて上記測位信号の遅延時間を推定する遅延時間推定ステップと、
測位計算部が、上記推定された上記測位信号の遅延時間に基づいて測位計算を行う測位計算ステップと、を備えたことを特徴とする測位方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、衛星からのＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）信号を受信して受信位置を正確に検出するＧＰＳ測位装置およびＧＰＳ測位方法に関するものである。
【背景技術】
【０００２】
従来のＧＰＳ測位装置およびＧＰＳ測位方法において、ＧＰＳ衛星からのＧＰＳ信号は、見晴らしの良い環境に置かれたＧＰＳ端末によって受信される。ＧＰＳ端末はＧＰＳ受信信号をＡ／Ｄ変換し、ＧＰＳ端末自身が有する全衛星のＣ／Ａ（Ｃｏａｒｓｅ  ａｎｄ  Ａｃｑｕｉｒｅ）コードとの間で相関演算を行い、相関値が最大になる点を求め、擬似距離を算出する。この擬似距離と航法データとよばれるデータから位置計算を行う。
【０００３】
ＧＰＳ処理の相関演算では、時間領域で積算する方法と周波数領域で積算する方法がある。周波数領域で積算する場合の一般的な手法として、ＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ：高速フーリエ変換）等による畳み込み演算が行われる。周波数領域での演算を削減する方法として、ＮＴＴ（Ｎｕｍｂｅｒ  Ｔｈｅｏｒｙ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ：数論変換）を適用する手法が考えられる。ＦＦＴでは指数関数の回転子の乗算が行われるが、ＮＴＴでは、指数関数の代わりに、２のべき乗の乗算と剰余の演算が行われる。２のべき乗の乗算は、ハードウェア等ではビットシフトであり、ＮＴＴでの剰余も加減算１回の処理になる。このため、ＮＴＴを適用することができれば、ＦＦＴに比べて演算量を削減できる。
例えば、文献１はＧＰＳ信号処理に関するものではないが、複数の並列信号を同時に送受信する多重化システムにおいて、高速信号処理手段としてＦＦＴに代わりＮＴＴ変換手法を用いる手段を示している。このような手法を用いれば、演算量を削減することができる。
【特許文献１】特開平１０−２１５２３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで上記のＮＴＴは、演算を行う点数によりデータのｂｉｔ長を変化させる必要がある。２０４８点のＮＴＴの畳み込みではデータのｂｉｔ長は３２ｂｉｔとなり、８１９２点のＮＴＴの畳み込みの場合はｂｉｔ長が６４ｂｉｔとなる。このため、ＮＴＴによる畳み込みを行う点数が大きくなると、演算負荷が大きくなる。
ＧＰＳ信号の１ミリ秒のデータは１０２３点であり、相関を２ミリ秒の範囲で行うものとしても２０４６点であるため、３２ｂｉｔデータ長でＮＴＴ演算を適用できる。
しかし、ＧＰＳ信号を受信する際には、精度を向上させるため、オーバーサンプリング処理が行われる。４倍のオーバーサンプリングで信号が受信される場合には相関演算を行う点数が２０４６×４点、１６倍の場合は２０４６×１６点となり、ＮＴＴを適用する場合のデータ長が大きくなってしまうという問題が生じる。
即ち、ＦＦＴに比べての利点である演算負荷の軽減の効果が得られない、更にデータを保存するメモリ等を大きくする必要があり、測位装置が大型かつ重くなって携帯するには不便になる、という課題がある。
装置コストが高くなる、消費電力増大による電池交換頻度が高まる等の問題もある。
【０００５】
この発明は上記の課題等を解決するためになされたもので、演算負荷を小さくして、所要メモリも小さくして、小規模で測位が行える測位装置を得る。
【課題を解決するための手段】
【０００６】
この発明に係る測位装置は、衛星からの測位信号を受信して擬似距離を算出する測位装置において、
上記衛星からの上記測位信号を受信する受信部と、
上記受信してディジタル化された測位信号を記憶するデータ記憶メモリと、
上記記憶されたディジタル化測位信号のデータを所定長以下の対象データ長になるように分割して対象データ長のデータを生成するデータ分割器と、分割して生成された上記対象データ長のデータが表す対象値を数論変換する数論変換器と、数論変換された上記対象値と上記衛星に対応するスペクトル拡散コードとの相関値を数論逆変換する数論逆変換器と、を設けて相関処理をする相関処理部と、
上記相関処理部が行った相関処理における最大相関結果で上記測位信号の遅延時間を推定する遅延時間推定部と、
上記推定された測位信号の遅延時間に基づいて測位計算を行う測位計算部と、
上記測位計算で得られた距離の表示を行う表示器と、を備えた。
【発明の効果】
【０００７】
この発明によれば、ＧＰＳ測位装置およびＧＰＳ測位方法において、数論変換前にデータを分割するデータ加算・分割器と、数論逆変換後にデータを合成するデータ合成器とを設けたので、ＧＰＳ信号がオーバーサンプリングされたデータであっても、数論変換による高速処理を行うことができ、装置の小規模化、軽量化が得られる効果がある。
即ち、装置のコストダウンを図ることが可能になる効果がある。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
以下、この発明の実施の形態を説明する。
図１は、この発明の実施の形態１におけるＧＰＳ測位方法およびＧＰＳ測位装置の構成を説明するハードウェア構成を含む構成ブロック図である。図１において、ＧＰＳ衛星を利用して測位を行う測位装置１は、ＧＰＳ衛星からのＧＰＳ測位信号を受信するＧＰＳアンテナ２と、そのＧＰＳアンテナ２で受信したＧＰＳ測位信号の増幅等を行う受信部３と、受信部３からのアナログデータである測位信号をデジタルデータに変換するＡ／Ｄ変換部４と、Ａ／Ｄ変換したディジタル化受信データ（測位信号）をいったん記録するデータ記憶部（記憶メモリ）５と、対象となる衛星のスペクトル拡散コード（Ｃ／Ａコード）を生成するスペクトル拡散コード発生部６と、データ記憶部５に保持されているディジタル化されたＧＰＳ測位信号とスペクトル拡散コード発生部６で生成されたスペクトル拡散コードとの相関処理を行う相関処理部７と、相関処理部７から送られてきた相関処理の結果を保存する相関処理結果記憶部８と、相関処理結果記憶部８の中で相関結果が最大となる値を算出し、遅延時間を推定する遅延時間推定部９と、遅延時間推定部９から送られてきた遅延時間に基づいて位置を計算する測位計算部１０と、この計算された位置を測位データとして記憶する測位データ記憶部１２と、測位データにより現在地を表示する表示器１１と、これらの構成要素を制御するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：演算装置）を含む制御部１３と、パラメータの設定やモードの選択やオーバーサンプリングの倍数等を指定するキーボード等の入力部１４と、で構成され、内部バス１５で接続されている。
【０００９】
また図２は、本実施の形態における図１の相関処理部７の詳細構成を示す図である。図２において相関処理部７は、データ記憶部５から読み出したＧＰＳ受信信号を分割するデータ分割器２１と、数論変換による畳み込み演算を行う数論変換演算器２２ａないし２２ｃと、数論変換後のデータの乗算を行う乗算器２３ａ、２３ｂと、数論逆変換を行う数論逆変換演算器２４ａ、２４ｂと、分割して相関処理されたデータを足し合わせるデータ合成器２５と、で構成される。
なお図１において、データ記憶部５と相関処理結果記憶部８と測位データ記憶部１２とは、ＩＣメモリで構成されるが、部分的に磁気ディスク装置等の外部メモリと呼ばれる記憶装置を使用してもよい。またＣＰＵを含む制御部１３は、図示しないメモリに制御プログラムを搭載して、そのプログラムにより各構成要素を内部バス１５経由で制御して、動作記述で詳述するフローに従った動作を行う。
また表示器１１は、例えば液晶パネル等であるが、外部の記憶装置や他の信号処理装置、演算装置等への出力を行う出力部であってもよい。即ち外部で測位結果を知る構成であってもよい。
また、データ記憶部５や相関処理結果記憶部８等の記憶部や、スペクトル拡散コード発生部６は、制御部１３の制御により動作するが、説明を簡潔にするために以下では、データ記憶部５、スペクトル拡散コード発生部６等が自らデータ処理を実行する、として説明する。
【００１０】
次に、全体の動作について説明する。
図３は、上記測位装置１の制御部１３によって実行される装置全体の処理プログラムにより行われる概略の動作フローチャートである。このプログラムは制御部１３の図示しないＲＯＭ等の不揮発メモリにあらかじめ記憶されていてもよいが、プログラム自体を装置とは独立に作成し、ミニディスク、ＣＤ、ＤＶＤ等の外部記憶媒体に記憶しておき、それを入力部１４の一部としてのＣＤリーダ等により書き込み可能なメモリに読み込む、又はインターネット等の通信回線を介して、書き込み可能なメモリにダウンロードしてインストールするようにしてもよい。
測位装置１では、まず、ＧＰＳアンテナ２がＧＰＳ信号を受信し、受信部３が増幅や周波数の変換等の処理を行った後、Ａ／Ｄ変換部４でＡ／Ｄ変換を行ってデジタルデータに変換する（受信ステップＳＴ１、以下ステップの記述を省略する）。Ａ／Ｄ変換されたデータはデータ記憶部５に記録される（ＳＴ２）。
規定されたサイズのデータがデータ記憶部５に記録されると、スペクトル拡散コード発生部６は衛星毎の対象となる衛星のスペクトル拡散コードを生成し相関処理部７に送る（ＳＴ３）。
【００１１】
後で詳述するように、本実施の形態においては相関処理部７が重要な要素であり、ハードウェアの規模増大を抑えている。相関処理部７がディジタル化されたＧＰＳ受信（測位）データを処理する詳細構成要素の接続関係は図２に記載した通りであるが、これらの詳細構成要素の動作を制御するのは、後で説明する図６の動作機能を持つプログラムをＲＯＭに記憶しておき、制御部１３がそれを読み出して行う。遅延時間推定部９や測位計算部１０の動作についても、相関処理部７と同様に、制御部１３がＲＯＭに記憶したプログラムに基づいて動作制御を行う。
データ相関処理部７は、データ記憶部５からＧＰＳ受信信号を１ブロック（２ミリ秒分）読み出し、符号系列との相関処理を行い、演算結果を相関処理結果記憶部８に保存する（ＳＴ４）。
遅延時間推定部９は、上記の演算結果である相関値データを、相関処理結果記憶部８から読み出し、その中から最大値を選び、その値に対応する遅延時間τをτｍａｘとして測位計算部１０に送る（遅延時間推定ステップＳＴ５）。
【００１２】
測位計算部１０は、τｍａｘと航法メッセージからＧＰＳ衛星と測位装置１との距離を算出する（測位計算ステップＳＴ６）。航法メッセージはＧＰＳ信号から取得してもよいし、外部から取得してもよい。
正確な位置情報は、複数の衛星との距離から算出するので、規定された数の衛星に対応する衛星と測位装置１との距離情報が得られるまで、衛星毎にＳＴ３ないしＳＴ６の処理を繰り返し（ＳＴ７）、測位データ記憶部１２に衛星毎のデータを記憶する。
規定された数の衛星に対応する距離情報が得られたら、測位計算部１０は測位データ記憶部１２に記憶されたデータにより、各衛星との距離から、測位装置１の位置を算出する（ＳＴ８）。
測位計算部１０で得られた位置情報から表示器１１に現在位置を表示する（ＳＴ９）。
測位装置１は、以上の動作によりＧＰＳ衛星を利用した位置測定を行う。
【００１３】
次に、重要な構成要素である相関処理部７の動作について説明する。
図２は相関処理部７の詳細構成図であり、図４〜図７は動作説明図である。即ち図４はデータ分割器２１が行う、図５はデータ合成器２５が行うデータの処理方法を示したものである。図４、図５では、１ミリ秒分の受信データ１０２３点が４倍にオーバーサンプリングされているものとし、更に２ミリ秒分のオーバーサンプリングされた受信データとして合計１０２３×２×４点のデータに対して相関演算を行うものとする。また、図２の数論変換（演算）器２２ａ〜２２ｃは２０４８点の数論変換処理を行い、数論逆変換（演算）器２４ａ〜２４ｂは２０４８点の数論逆変換処理を行うものとする。数論変換の各処理と、乗算処理では、２の３２乗＋１（４２９４９６７２９７）の法をとるものとする。
【００１４】
図６は、相関処理部７が実行する相関処理動作を示すフローチャートであるが、例えばこの各ステップの動作を行う相関処理プログラムを図示しないメモリに記憶させて、制御部１３がこの相関処理プログラムを読みとって実行する。データ分割、数論変換、乗算、数論逆変換及びデータ合成自体は、ハードウェアのレジスタ群でのシフトや加算で容易に得られる。例えば相関をとる乗算は、相関演算対象の一方のデータをハードウェア・レジスタに設定して、その設定されたデータに対して他方のデータが表す数に基づくシフト演算を行う。そして本実施の形態においては、これらのレジスタ等のハードウェアの規模増大を抑えて、しかも十分な遅延時間が推定でき、従って正確な測位計算ができる。
図６において、相関処理部７は、以下のＳＴ２１〜ＳＴ２６ｂの処理を行い、相関演算を実行する。まず、数論変換演算器２２ｃは、スペクトル拡散コード発生部６が生成した１０２３点のスペクトル拡散コードのデータを０拡張して２０４８点にする。その後、このデータの並びを逆に並び替える。これを示したのが図７である。図７（ａ）のｃ（１）〜ｃ（２０４８）は０拡張されたスペクトル拡散コードであり、これらのうちｃ（１）〜ｃ（１０２３）がスペクトル拡散コードで、ｃ（１０２４）〜ｃ（２０４８）が０拡張部分である。これを図７（ｂ）に示すように、ｅ（１）〜ｅ（２０４８）として並び替える。ｅ（１）〜ｃ（１０２５）が０となり、ｅ（１０２６）＝ｃ（１０２３）に、ｅ（１０２７）＝ｃ（１０２２）に、以下、・・・ｅ（２０４８）がｃ（１）となる。この２０４８点のデータを数論変換する（ここまでがＳＴ２１）。
【００１５】
次に、データ分割器２１は、図４の様に、ＧＰＳ受信データのインディックスが示す４の剰余をとってＧＰＳ受信データを以下の相関処理が行えるよう、所定長以下の対象データ長に測位信号を分割する。これは具体的には、相関処理部７のハードウェア・レジスタに設定されたＧＰＳ受信データの値が、図４（ａ）に示されるようにｄ（１）〜ｄ（８１８４）まである場合、図４（ｂ）に示すようにＮＴＴ１としてｄ（１）、ｄ（５）、ｄ（９）・・・ｄ（８１８１）をまとめて１つのデータブロックとし、これに０拡張を行って２０４８点のデータとして、データブロック１とする。同様にＮＴＴ２として、ｄ（２）、ｄ（６）、ｄ（１０）・・・ｄ（８１８２）をデータブロック２とする。更にＮＴＴ３として、ｄ（３）、ｄ（７）、ｄ（１１）・・・ｄ（８１８３）をデータブロック３とし、ＮＴＴ４として、ｄ（４）、ｄ（８）、ｄ（１２）・・・ｄ（８１８４）をデータブロック４として、データを分割した後に、各々０拡張を行う。そして拡張後の各２０４８点の対象データ長のデータが示す対象値を、数論変換演算器２２ａ、２２ｂに渡す（データ長分割ステップＳＴ２２）。つまり、レジスタに設定された所定の桁の数値をサンプリングして別のレジスタに設定して、ＮＴＴ１等を得る。また実際には、図４（ａ）の全ての数値をレジスタに設定してＮＴＴ１等を切り出すのではなく、データ記憶部５からＧＰＳ受信データを読み出す時に必要部分のみを読み出してＮＴＴ１等を得る。
【００１６】
数論変換演算器２２ａ、２２ｂは、分割されたデータに対して２０４８点の数論変換を行う。本実施の形態の構成では、数論変換演算器２２ａはデータブロック１の、数論変換演算手段２２ｂはデータブロック２の数論変換を行う（数論変換ステップＳＴ２３）。
乗算器２３ａ、２３ｂは数論変換された各データブロックを受け取る。そして乗算器２３ａは数論変換されたデータブロック１の各要素と、ステップＳＴ２１で数論変換されたスペクトル拡散コードの各要素とを乗算するが、その際に数論変換と同様に２の３２乗＋１（４２９４９６７２９７）の法をとる。数論変換自体は、よく知られている方法であり、レジスタのシフト操作で行われる、２のべき乗操作と剰余の演算で得られる。
同様にして、乗算器２３ｂは、データブロック２の各要素と、スペクトル拡散コードの各要素との乗算処理を行う（ＳＴ２４）。
数論逆変換演算器２４ａ、２４ｂは、上記の乗算処理されたデータブロックのデータに対して２０４８点の数論逆変換を行う。即ち数論逆変換演算器２４ａはデータブロック１の、数論逆変換演算器２４ｂはデータブロック２の数論変換を行う（数論逆変換ステップＳＴ２５）。
データブロック３に対しても数論変換演算器２２ａないし数論逆変換演算器２４ａにより、またデータブロック４に対しても数論変換演算器２２ｂないし数論逆変換演算器２４ｂにより、同様にＳＴ２３〜ＳＴ２５の処理を繰り返す（ＳＴ２６）。
【００１７】
データ合成器２５は、ブロックデータ毎に相関処理されたデータを合成する。図５は、データ合成器２５でのデータの合成を示したものである。数論逆変換演算器２４ａ、２４ｂからは、数論逆変換処理の結果として４つのデータブロックが出力される。図５（ａ）では、データブロック１の数論逆変換の結果をＩＮＴＴ１、データブロック２の数論逆変換の結果をＩＮＴＴ２、〜というように示す。またＩＮＴＴ１の各要素のデータをｎ（１，１）〜ｎ（１，２０４８）で示し、同様にＩＮＴＴ２、ＩＮＴＴ３、ＩＮＴＴ４の各要素のデータをｎ（２，１）〜ｎ（２，２０４８）、ｎ（３，１）〜ｎ（３，２０４８）、ｎ（４，１）〜ｎ（４，２０４８）とする。
データ合成器２５は、これらのデータを以下の手順で加算して最終的な相関結果を算出する（ＳＴ２６ｂ）。
先ず図５（ａ）のＩＮＴＴ１ないしＩＮＴＴ４におけるデータの先頭要素を、図５（ｂ）に示すように選択する。次いでＩＮＴＴ１ないしＩＮＴＴ４における次の要素のデータをＩＮＴＴ１から順に選択する。つまり各ＩＮＴＴのデータが４個飛ばしになるように並び替える。具体的には、ｎ（１，１）、ｎ（２，１）、ｎ（３，１）、ｎ（４，１）、ｎ（１，２）、ｎ（２，２）、ｎ（３，２）、ｎ（４，２）、・・・ｎ（４，２０４８）、と並べる。これもハードウェア・レジスタへの設定であるから容易である。
【００１８】
次いで上記のように並べ替えた図５（ｂ）の要素データに対して、前から順に４つの要素データを加算してｉ蕃目の相関処理結果とする。つまり、上記で並べた要素データを一つづつシフトさせながら４個単位で加算し、これを各番目の相関演算処理の結果とする。具体的には、相関演算結果の１番目であるＦ（１）＝ｎ（１，１）＋ｎ（２，１）＋ｎ（３，１）＋ｎ（４，１）で、Ｆ（２）＝ｎ（２，１）＋ｎ（３，１）＋ｎ（４，１）＋ｎ（１，２）、・・・である。
上記したようにＦ（１）として４つのｎ要素データの加算値を求める処理方法を用いると、以下のＦ（２）は次式（１）で表せる。
Ｆ（２）＝Ｆ（１）−ｎ（１，１）＋ｎ（１，２）                  （１）
同様に、Ｆ（ｋ＋１）は、Ｆ（ｋ）に対して以下の式（２）で求めることが出来る。
Ｆ（ｋ＋１）＝Ｆ（ｋ）−ｎ（ｉ，ｊ）＋ｎ（ｉ，ｊ＋１）          （２）
ただし、ｊ＝ｍｏｄ（ｋ，４）で、ｊ＋１は、ｋ／４の整数部分である。
これは、上記の演算が４×２０４８回程度の加減算で求めることが出来ることを意味する。
【００１９】
図８を用いて、別の視点からＳＴ２１〜ＳＴ２６ｂの処理を説明する。
ＧＰＳ受信信号を４倍にオーバーサンプリングして受信したデータをｄ（１）〜ｄ（８１９２）とする。また、スペクトル拡散コードをｃ（１）〜ｃ（１０２３）とする。これらの相関演算を、数論変換を行わずに処理する場合を示したのが図８である。スペクトル拡散コードをＧＰＳ受信信号にあわせた４倍のデータ数にする場合、スペクトル拡散コードｃ（１）〜ｃ（１０２３）を図の様にｃ（１），ｃ（１），ｃ（１），ｃ（１），ｃ（２），ｃ（２），・・・というように同一のデータを４個毎に並べたデータにし、４０９６点のデータになるように０拡張することになる。
次に遅延時間τに対応する相関値Ｆ（τ）を求める場合には、次の式（３）の処理を行う。
【００２０】
【数１】
2007232694.tif 000003
【００２１】
式（３）を変形すると次の式（４）になる。
【００２２】
【数２】
2007232694.tif 000004
【００２３】
この式（４）が意味することは、ＳＴ２２で示したようにデータを分割して数論変換後に相関演算を行い、数論逆変換して、各結果を合成すれば相関値を求めることになる。
即ち、式（３）をそのまま取扱って遅延時間を推定すると、ハードウェア規模が増大するが、本実施の形態の構成を採れば、規模増大を抑えられる。
【００２４】
上記の説明では、４倍にオーバーサンプリングされたＧＰＳ信号を対象としたが、ｎ倍にオーバーサンプリングされた信号であっても、同様に処理を行うことが出来る。
また上記では、数論変換演算器２２ａ〜２２ｃ、乗算器２３ａ、２３ｂ、数論逆変換演算器２４ａ、２４ｂを用いて処理を行ったが、図示しないクロックによる相関処理部７の演算速度が速い場合には、各要素である数論変換演算器と乗算器と数論逆変換演算器とが各１個しかない構成であっても同様に処理を行うことが出来る。この場合、ハードウェアの構成数を更に減らすことが可能である。
また逆に、数論変換演算器、乗算器、数論逆変換演算器が各４個の構成であっても同様に処理を行うことが可能であり、ｎ倍にオーバーサンプリングされたＧＰＳ信号に対して、各要素をｎ個用意することにより処理を行うことも出来る。この場合にはハードウェア規模は大きくなるが、安価な素子を用いることができて演算時間を短縮し、高速に処理を行うことが出来る。
【００２５】
以上のように、この実施の形態によれば、ｎ倍にオーバーサンプリングされたデータであってもハードウェア規模を拡大せずに、数論変換を利用した相関演算処理を行うことができる。このため、ＦＦＴ等を利用した相関処理に比べて、演算負荷を抑えることができるという効果が得られる。こうして相関処理部のハードウェア規模を抑えて、省電力化、装置の軽量化や製品のコストダウンなどを可能にする効果が得られる。また、ＧＰＳ信号の受信から測位までの時間を短縮できる効果が得られる。
【００２６】
実施の形態２．
上述の実施の形態１では、測位計算を行うために、先ずデータ分割部でデータを分割した後に、数論変換を用いた相関演算を行い、相関演算後にデータ合成部を用いてデータの合成を行っていた。しかし、最初にデータを合成（加算）した後に、数論変換を用いた相関演算処理を行い、相関値を算出することもできる。本実施の形態では、この最初にデータを合成して、要素データを区切って数論変換をして、相関演算処理を行って相関値を得る構成を説明する。
本実施の形態におけるＧＰＳ測位方法および測位装置のブロック構成自体は、実施の形態１の図１に示した構成と同様である。
図９は、本実施の形態におけるＧＰＳ測位システムおよびＧＰＳ測位装置の内部にある相関処理部７ｂの詳細構成を示す図である。図９において、データ記憶部５から読み出したＧＰＳ受信信号を加算処理するデータ加算・分割器２６を除いて、他の要素は実施の形態１での要素と同等の要素である。
【００２７】
全体の動作については、実施の形態１の動作と同じであり、図３に示した、ＳＴ１からＳＴ９までの処理を行う。
次に、図９で示した相関処理部７ｂの動作について、図９〜図１１を用いて説明する。図１０は、例えば上記測位装置１内の制御部１３が処理プログラムを用いて実行する相関処理の動作を示すフローチャートである。
図１０において、ＳＴ２１の処理は、実施の形態１の動作と同じである。
次に、データ加算・分割器２６は、図１１に示す様に、ＧＰＳ受信データを４倍にオーバーサンプリングした値がｄ（１）〜ｄ（８１８４）まである場合、データを１つずつシフトさせながら４個単位で加算し、これを加算処理の結果とする（ステップＳＴ２７）。例えば、１番目であるＧ（１）はｄ（１）＋ｄ（２）＋ｄ（３）＋ｄ（４）、２番目のデータＧ（２）はｄ（２）＋ｄ（３）＋ｄ（４）＋ｄ（５）、である。これらの演算を式（５）で示す。
Ｇ（ｋ）＝ｄ（ｋ）＋ｄ（ｋ＋１）＋ｄ（ｋ＋２）＋ｄ（ｋ＋３）    （５）
【００２８】
次に、データ加算・分割器２６は、加算と分割の例を示す図１１の様に、加算データが示すインディックスの４の剰余をとって分割する。図１１の例では、図１１（ａ）で受信データのｄ（１），ｄ（２）・・・ｄ（１０２３）を拡張してｄ（８１８４）まで得て，図１１（ｂ）のように４つの要素データを加算し，順次シフトして加算処理を行う。そして図１１（ｃ）のように乗算器２３ａ，２３ｂでそれぞれの相関乗算を行う。そして得られた結果がＧ（１）〜Ｇ（８１８４）まである場合、図１１（ｄ）でＧ（１）、Ｇ（５）、Ｇ（９）、・・・Ｇ（８１８１）をまとめて１つのデータブロックとし、これに０拡張を行って２０４８点のデータとして、データブロック１とする。
同様にして、データ加算・分割器２６は、Ｇ（２）、Ｇ（６）、Ｇ（１０）、・・・Ｇ（８１８２）をデータブロック２とし、Ｇ（３）、Ｇ（７）、Ｇ（１１）、・・・Ｇ（８１８３）をデータブロック３とし、Ｇ（４）、Ｇ（８）、Ｇ（１２）、・・・Ｇ（８１８４）をデータブロック４として、データを分割した後に各々０拡張を行う。そして各２０４８点のデータを、数論変換演算器２２ａ、２２ｂに渡す（ＳＴ２８）。
図１０のＳＴ２３〜ＳＴ２６の処理は、実施の形態１の動作と同じである。
即ち、本実施の形態においては、数論変換前にデータ加算・分割器２６で加算処理を行うが、数論変換→乗算処理→逆数論変換という処理は、実施の形態１と同様に、分割されたデータブロックの中で閉じて行われる。
次に、相関処理結果記憶部８は、数論逆変換演算器２４ａ、２４ｂから算出されたデータを保存する。つまりデータブロック１の２０４８点の演算結果を、Ｇ（１），Ｇ（５），Ｇ（９）・・・Ｇ（８１８１）として保存する。
同様にして、相関処理結果記憶部８は、データブロック２の結果をＧ（２），Ｇ（６），Ｇ（１０）・・・Ｇ（８１８２）というように数論変換前のインディックスに対応するように保存する（ＳＴ２９）。
【００２９】
上記の処理は、実施の形態１の式（４）で示した加算処理を最初に行う構成にしたものであり、演算結果は、実施の形態１と同じである。この様に、最初に加算処理を行うことにより、実施の形態１と同様の演算結果が得られ、構成を単純化出来る。このため、相関処理部７の構成要素を減らすことができ、省電力化、装置の軽量化や製品のコストダウンなどを可能にする効果がある。
【００３０】
実施の形態３．
上述の実施の形態１では、データ分割器２１でデータを分割した後に、データブロック毎に数論変換による相関処理を行っていた。２０４８点の数論変換では、２の３２乗＋１（４２９４９６７２９７）の法をとるため、データのビット長は３２ビット必要となる。また、相関処理後のデータは２の３１乗を超えないことがデータオーバーフローを起こさないための条件となる。
しかし、ＧＰＳ受信信号が１ビットないし数ビット程度で、相関を行うスペクトル拡散コードも１ビットないし数ビットの場合には、相関後のデータは２の１５乗以下となり、データビット長の半分が０となる。このような場合には、２つのデータを３２ビット中に共存させることで、相関演算を高速化するという方法が考えられる。本実施の形態は、こうした少ない有効データを高速に取扱う構成と動作を説明する。
【００３１】
例えば、ＧＰＳ受信信号とスペクトル拡散コードが共に＋１もしくは−１の２値であるとする。この時相関の最大値は＋１０２３もしく−１０２３であり、２の１０乗以下である。この場合には、図４に示したデータ分割器２１で分割されたデータｄ（１）とｄ（２）から、数論変換演算器は、データＨ（１）＝ｄ（１）×２１６＋ｄ（２）を算出する。同様にして、ｄ（３）とｄ（４）、ｄ（５）とｄ（６）・・・に対して、以下の式（６）からＨ（ｋ）を算出する。
Ｈ（ｋ）＝ｄ（２ｋ）×２１６＋ｄ（２ｋ＋１）                      （６）
上記の処理は、３２ビットのデータの上位１６ｂｉｔにｄ（２ｋ）を入力し、下位１６ｂｉｔにｄ（２ｋ＋１）を入力すればよく、演算は不要である。
算出したデータＨ（１）〜Ｈ（４０９６）で示されるインディックスの２の剰余をとってＨ（１）、Ｈ（３）、Ｈ（５）・・・Ｈ（４０９５）をデータブロック１とし、Ｈ（２）、Ｈ（４）、・・・Ｈ（４０９６）をデータブロック２とする。以後、乗算器２３ａ，２３ｂ及び数論逆変換演算器２３ａ，２３ｂは、各データブロックに対して数論変換を用いた相関演算処理をする。相関処理後のデータの上位１６ビットを奇数番のデータ、下位１６ビットを偶数番のデータとして、データ合成器２５はデータ統合の処理を行う。
データブロック１の相関処理後のデータＬ（２τ）は、式（７）で表される。
【００３２】
【数３】
2007232694.tif 000005
【００３３】
各データの相関処理後のデータは±２の１０乗以下であるため、式（７）のｄ（４ｋ＋１）の相関結果は下位１６ビットの範囲内であり、ｄ（４ｋ）の相関結果は上位１６ビットの範囲内となる。このため、相関処理後のデータを上位１６ビットと下位１６ビットに分割できる。このような処理により、数論変換による処理回数を半分にすることが出来、処理の演算回数を削減出来る。
以上のように、本実施の形態によれば、ＧＰＳ受信信号とスペクトル拡散コードのデータ長が１ビットないし数ビットの場合、データを上位ビットと下位ビットに共存させることによって、相関処理の演算負荷を抑える効果がある。
こうして相関処理部のハードウェア規模を抑えることができ、省電力化、装置の軽量化や製品のコストダウンなどが可能にする効果が得られる。また、ＧＰＳ信号の受信から測位までの時間を短縮する効果が得られる。
以上のように、この発明はＧＰＳ信号に対して数論変換を用いた相関演算による高速化処理を実現できるので、衛星からのＧＰＳ信号を受信して受信位置を高速に測位するＧＰＳ測位装置およびＧＰＳ測位方法の分野に適用される。
【図面の簡単な説明】
【００３４】
【図１】この発明の実施の形態１における測位装置の構成を示す図である。
【図２】実施の形態１における測位装置内の相関処理部の詳細構成を示す図である。
【図３】実施の形態１における制御部が行う測位装置全体の動作フロー図である。
【図４】実施の形態１におけるデータ分割器が行なう動作を説明する図である。
【図５】実施の形態１におけるデータ合成器が行なう動作を説明する図である。
【図６】実施の形態１において相関処理部が実行する相関処理動作のフロー図である。
【図７】実施の形態１におけるスペクトル拡散コードとその並べ替えを説明する図である。
【図８】オーバサンプリングに対して通常の相関計算により遅延時間を求める例を示す図である。
【図９】この発明の実施の形態２における測位装置の構成を示す図である。
【図１０】実施の形態２における測位装置内の相関処理部の詳細構成を示す図である。
【図１１】実施の形態２における相関処理部の動作を説明する図である。
【符号の説明】
【００３５】
１  測位装置、２  ＧＰＳアンテナ、３  受信部、４  Ａ／Ｄ変換部、５  データ記憶部（メモリ）、６  スペクトル拡散コード発生部、７，７ｂ  相関処理部、８  相関処理結果記憶部、９  遅延時間推定部、１０  測位計算部、１１  表示器（出力部）、１２  測位データ記憶部、１３  ＣＰＵを含む制御部、１４  入力部、２１  データ分割器、２２ａ，２２ｂ  数論変換演算器、２３ａ，２３ｂ  乗算器、２４ａ，２４ｂ  数論逆変換演算器、２５  データ合成器、２６  データ加算・分割器、ＳＴ１  受信ステップ、ＳＴ４  相関演算ステップ、ＳＴ５  相関が最大の遅延時間推定ステップ、ＳＴ６  測位計算ステップ、ＳＴ２１  スペクトル拡散コードの数論変換ステップ、ＳＴ２２  受信データのデータ長分割ステップ、ＳＴ２３  分割データの数論変換ステップ、ＳＴ２４  数論変換データ間の乗算ステップ、ＳＴ２５  乗算データの数論逆変換ステップ、ＳＴ２６ｂ  数論逆変換データの合成ステップ、ＳＴ２７  受信データの加算処理ステップ、ＳＴ２８  加算データの分割ステップ。
【図１】
2007232694.tif 000006
【図２】
2007232694.tif 000007
【図３】
2007232694.tif 000008
【図４】
2007232694.tif 000009
【図５】
2007232694.tif 000010
【図６】
2007232694.tif 000011
【図７】
2007232694.tif 000012
【図８】
2007232694.tif 000013
【図９】
2007232694.tif 000014
【図１０】
2007232694.tif 000015
【図１１】
2007232694.tif 000016