(57)【特許請求の範囲】
【請求項１】
衛星からの受信信号をサンプリングした時系列のサンプリング値をｋ個（ｋ≧２）ずつ選択することと、
前記選択されたｋ個のサンプリング値を、加減算の組み合わせを変えて加減算することと、
レプリカコードの位相ずらし量が異なるレプリカオフセットそれぞれについて、前記加減算の組み合わせのうちの、当該レプリカオフセットでの前記レプリカコードのコード値の時系列変化に対応する組み合わせの前記加減算結果を並列的に積和していくことで、各レプリカオフセットそれぞれについての前記受信信号と前記レプリカコードとの相関値を算出することと、
前記相関値を用いて前記衛星の衛星信号を捕捉することと、
を含む衛星信号捕捉方法。
【請求項２】
前記衛星信号を捕捉することは、前記各レプリカオフセットそれぞれについて算出した複数の相関値のうちの最大の相関値に対応する前記レプリカオフセットに基づいてコード位相を判定することを含む、
請求項１に記載の衛星信号捕捉方法。
【請求項３】
ｋは４以上であり、
前記加減算することは、
ｋ個のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて第１の加減算を行うことと、
前記グループ間で、前記第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行うことと、
を含み、前記第２の加減算の結果をｋ個のサンプリング値の加減算結果とする、
請求項１又は２に記載の衛星信号捕捉方法。
【請求項４】
前記グループ毎の前記第１の加減算の結果を第１の記憶部に記憶することを更に含み、
前記第２の加減算を行うことは、前記第１の記憶部に記憶された前記第１の加減算の結果を用いて前記第２の加減算を行うことを含む、
請求項３に記載の衛星信号捕捉方法。
【請求項５】
前記第２の加減算を行うことは、前記相関値を算出する際に、加減算部が、前記第１の記憶部に記憶された前記第１の加減算の結果を用いて前記第２の加減算を行うことであり、
前記相関値を算出することは、当該レプリカオフセットでの前記レプリカコードのコード値の時系列変化に対応する加減算結果を前記加減算部の加減算結果の中から選択して前記積和を行うことを含む、
請求項４に記載の衛星信号捕捉方法。
【請求項６】
前記第２の加減算の結果を第２の記憶部に記憶することを更に含み、
前記相関値を算出することは、当該レプリカオフセットでの前記レプリカコードのコード値の時系列変化に対応する加減算結果を前記第２の記憶部から読み出して前記積和を行うことを含む、
請求項４に記載の衛星信号捕捉方法。
【請求項７】
衛星からの受信信号をサンプリングした時系列のサンプリング値をｋ個（ｋ≧２）ずつ選択する制御を行う選択制御部と、
前記選択されたｋ個のサンプリング値を、加減算の組み合わせを変えて加減算する加減算部と、
レプリカコードの位相ずらし量が異なるレプリカオフセットそれぞれについて、前記加減算の組み合わせのうちの、当該レプリカオフセットでの前記レプリカコードのコード値の時系列変化に対応する組み合わせの前記加減算結果を並列的に積和していくことで、各レプリカオフセットそれぞれについての前記受信信号と前記レプリカコードとの相関値を算出する相関値算出部と、
前記相関値を用いて前記衛星の衛星信号を捕捉する捕捉部と、
を備えた衛星信号捕捉装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、衛星信号を捕捉する方法等に関する。
【背景技術】
【０００２】
衛星信号を利用した測位システムとしては、ＧＰＳ（Global Positioning System）が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。ＧＰＳでは、複数のＧＰＳ衛星の位置や各ＧＰＳ衛星から位置算出装置までの擬似距離等の情報に基づいて位置算出装置の位置座標と時計誤差とを求める位置算出計算を行う。
【０００３】
ＧＰＳ衛星から送出されるＧＰＳ衛星信号は、Ｃ／Ａ（Coarse and Acquisition）コードと呼ばれるＧＰＳ衛星毎に異なる拡散符号で変調されている。位置算出装置は、微弱なＧＰＳ衛星信号を捕捉するために、受信したＣ／Ａコードの信号（受信信号）と、Ｃ／Ａコードを模擬したレプリカコードの信号（レプリカコード）との相関演算を行ってＧＰＳ衛星信号を捕捉する。
【０００４】
具体的には、レプリカコードの位相をずらしつつ相関演算を行い、最も高い相関値が得られた位相がいわゆるコード位相とされて、ＧＰＳ衛星信号が捕捉される。例えば特許文献１には、弱電界環境等において、ＧＰＳ衛星信号の捕捉を高速化するための技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２００６／００５６４９７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の相関演算の場合には、受信信号のサンプリング値とレプリカコードのサンプリング値とを１つ１つ乗算し、積算する処理を、位相のずらし回数分実行する必要があった。そのため、回路規模が大きくならざるを得なかった。この問題は、消費電力が増大する要因の１つでもあった。
【０００７】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、受信信号とレプリカコードとの相関演算を少ない演算量で実現する全く新しい手法を提案することにある。
【課題を解決するための手段】
【０００８】
以上の課題を解決するための第１の形態は、衛星からの受信信号をサンプリングした時系列のサンプリング値をｋ個（ｋ≧２）ずつ選択することと、前記選択されたｋ個のサンプリング値を、加減算の組み合わせを変えて加減算することと、前記加減算の組み合わせのうちの、レプリカコードのコード値の時系列変化に対応する組み合わせの前記加減算結果を用いて、前記受信信号と前記レプリカコードとの相関値を算出することと、前記相関値を用いて前記衛星の衛星信号を捕捉することと、を含む衛星信号捕捉方法である。
【０００９】
また、他の形態として、衛星からの受信信号をサンプリングした時系列のサンプリング値をｋ個（ｋ≧２）ずつ選択する制御を行う選択制御部と、前記選択されたｋ個のサンプリング値を、加減算の組み合わせを変えて加減算する加減算部と、前記加減算の組み合わせのうちの、レプリカコードのコード値の時系列変化に対応する組み合わせの前記加減算結果を用いて、前記受信信号と前記レプリカコードとの相関値を算出する相関値算出部と、前記相関値を用いて前記衛星の衛星信号を捕捉する捕捉部と、を備えた衛星信号捕捉装置を構成することとしてもよい。
【００１０】
この第１の形態等によれば、衛星からの受信信号をサンプリングした時系列のサンプリング値をｋ個（ｋ≧２）ずつ選択する。そして、選択したｋ個のサンプリング値を、加減算の組み合わせを変えて加減算する。そして、加減算の組み合わせのうちの、レプリカコードのコード値の時系列変化に対応する組み合わせの加減算結果を用いて、受信信号とレプリカコードとの相関値を算出する。
【００１１】
これにより、受信信号のサンプリング値とレプリカコードのコード値との乗算を行うことなく、受信信号とレプリカコードとの相関値を算出することができる。ソフトウェア処理として実現する場合でも、電子回路として構成する場合でも、乗算は、加減算に比べて極めて多大な処理ステップないし回路が必要となる。このため、乗算が不要となる効果は極めて大きい。なお、これにより、消費電力が削減されるのは勿論である。
【００１２】
また、第２の形態として、第１の形態の衛星信号捕捉方法において、前記相関値を算出することは、前記レプリカコードのコード値の相関計算位置を変更することを含み、前記レプリカコードのコード値の前記相関計算位置からの時系列変化に対応する組み合わせの前記加減算結果を用いて前記相関値を算出することであり、前記衛星信号を捕捉することは、前記相関計算位置を変更して算出した複数の相関値のうちの最大の相関値に対応する前記相関計算位置に基づいてコード位相を判定することを含む、衛星信号捕捉方法を構成することとしてもよい。
【００１３】
この第２の形態によれば、レプリカコードのコード値の相関計算位置を変更し、レプリカコードのコード値の相関計算位置からの時系列変化に対応する組み合わせの加減算結果を用いて相関値を算出する。これにより、レプリカコードの位相を変えて相関演算を行って相関値を算出した場合と同様の演算結果を得ることができる。そして、相関計算位置を変更して算出した複数の相関値のうちの最大の相関値に対応する相関計算位置に基づいてコード位相を判定することで、受信信号のコード位相を判定することができる。
【００１４】
また、第３の形態として、第１又は第２の形態の衛星信号捕捉方法において、ｋは４以上であり、前記加減算することは、ｋ個のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて第１の加減算を行うことと、前記グループ間で、前記第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行うことと、を含み、前記第２の加減算の結果をｋ個のサンプリング値の加減算結果とする、衛星信号捕捉方法を構成することとしてもよい。
【００１５】
この第３の形態によれば、ｋ個（ｋは４以上）のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて第１の加減算を行う。そして、グループ間で、第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行う。これにより、ｋ個のサンプリング値を加減算の組み合わせを変えて加減算する場合と同じ効果を得ることができる。
【００１６】
また、第４の形態として、第３の形態の衛星信号捕捉方法において、前記グループ毎の前記第１の加減算の結果を第１の記憶部に記憶することを更に含み、前記第２の加減算を行うことは、前記第１の記憶部に記憶された前記第１の加減算の結果を用いて前記第２の加減算を行うことを含む、衛星信号捕捉方法を構成することとしてもよい。
【００１７】
この第４の形態によれば、グループ毎の第１の加減算の結果を第１の記憶部に記憶する。そして、第１の記憶部に記憶された第１の加減算の結果を用いて第２の加減算を行う。これにより、第１の加減算の結果が第１の記憶部に記憶されるため、同じ演算結果となる第１の加減算を何回も実行する必要がなくなり、相関演算を一層少ない演算量で実現することができる。
【００１８】
また、第５の形態として、第４の形態の衛星信号捕捉方法において、前記第２の加減算を行うことは、前記相関値を算出する際に、加減算部が、前記第１の記憶部に記憶された前記第１の加減算の結果を用いて前記第２の加減算を行うことであり、前記相関値を算出することは、前記レプリカコードのコード値の時系列変化に対応する加減算結果を前記加減算部の加減算結果の中から選択して前記相関値を算出することである、衛星信号捕捉方法を構成することとしてもよい。
【００１９】
この第５の形態によれば、相関値を算出する際に、加減算部が、第１の記憶部に記憶された第１の加減算の結果を用いて第２の加減算を行う。そして、レプリカコードのコード値の時系列変化に対応する加減算結果を加減算部の加減算結果の中から選択することで、受信信号とレプリカコードとの相関演算を行った場合と同様の相関値を算出することができる。
【００２０】
また、第６の形態として、第４の形態の衛星信号捕捉方法において、前記第２の加減算の結果を第２の記憶部に記憶することを更に含み、前記相関値を算出することは、前記レプリカコードのコード値の時系列変化に対応する加減算結果を前記第２の記憶部から読み出して前記相関値を算出することである、衛星信号捕捉方法を構成することとしてもよい。
【００２１】
この第６の形態によれば、第２の加減算の結果を第２の記憶部に記憶する。そして、レプリカコードのコード値の時系列変化に対応する加減算結果を第２の記憶部から読み出して相関値を算出する。これにより、第２の加減算の結果が第２の記憶部に記憶されるため、同じ演算結果となる第２の加減算を何回も実行する必要がなくなり、相関演算を一層少ない演算量で実現することができる。
【図面の簡単な説明】
【００２２】
【図１】原理説明における相関値の算出方法の説明図。
【図２】原理説明における相関値の算出方法の説明図。
【図３】携帯型電話機の機能構成の一例を示すブロック図。
【図４】ベースバンド処理回路部の回路構成の一例を示すブロック図。
【図５】第１実施例における相関値の算出方法の説明図。
【図６】衛星信号捕捉用データのデータ構成図。
【図７】衛星信号捕捉処理の流れを示すフローチャート。
【図８】第２実施例における相関値の算出方法の説明図。
【図９】第２の衛星信号捕捉処理の流れを示すフローチャート。
【発明を実施するための形態】
【００２３】
以下、本発明を適用した好適な実施形態の一例について説明する。本実施形態は、衛星測位システムの一種であるＧＰＳ（Global Positioning System）に本発明を適用した実施形態である。
【００２４】
１．原理
本実施形態における衛星信号捕捉方法について説明する。ＧＰＳにおいて、測位用衛星の一種であるＧＰＳ衛星は、アルマナックやエフェメリス等の衛星軌道データを含む航法メッセージを、測位用衛星信号の一種であるＧＰＳ衛星信号に乗せて発信している。
【００２５】
ＧＰＳ衛星信号は、拡散符号の一種であるＣ／Ａ（Coarse and Acquisition）コードによって、スペクトラム拡散方式として知られるＣＤＭＡ（Code Division Multiple Access）方式によってＢＰＳＫ（Binary Phase Shift Keying）変調で変調された１．５７５４２［ＧＨｚ］の通信信号である。Ｃ／Ａコードは、コード長１０２３チップを１ＰＮフレームとする繰返し周期１ｍｓの擬似ランダム雑音符号であり、衛星毎に異なる。
【００２６】
ＧＰＳ衛星がＧＰＳ衛星信号を発信する際の周波数（規定搬送波周波数）は、１．５７５４２［ＧＨｚ］と予め規定されているが、ＧＰＳ衛星やＧＰＳ受信装置の移動により生ずるドップラーの影響等により、ＧＰＳ受信装置がＧＰＳ衛星信号を受信する際の周波数は、必ずしも規定搬送波周波数とは一致しない。そのため、受信した電波の中からＧＰＳ衛星信号を捕捉するために、いわゆる周波数サーチを行う。また、受信したＧＰＳ衛星信号（Ｃ／Ａコード）の位相、すなわちコード位相を特定するために、いわゆる位相サーチを行う。
【００２７】
この２つのサーチによって、ＧＰＳ衛星信号を捕捉する。但し、周波数が既知であれば、位相サーチのみを行ってＧＰＳ衛星信号を捕捉することも可能である。本実施形態は、この周波数サーチ及び位相サーチにおいて行われる相関演算、すなわち相関値の算出方法に関して特徴を有している。
【００２８】
図１は、本実施形態における相関値の算出方法の説明図である。図１において、サンプルメモリには、受信信号をサンプリングした値（以下、「サンプリング値」と称す。）が１ミリ秒分格納されている。本実施形態では、１ミリ秒の間に２１１２回サンプリングする。そのため、サンプルメモリには、１ミリ秒分のサンプリング値として、「ｄ１」〜「ｄ２１１２」の２１１２個のサンプリング値が格納されている。なお、ＧＰＳ衛星信号の搬送波（キャリア）の除去は、受信信号をサンプリングする前に行ってもよいし、サンプリングした後に行ってもよい。
【００２９】
次に、処理部が、加減算部に出力させるｋ個のサンプリング値を選択する。つまり、処理部は、受信信号をサンプリングした時系列なサンプリング値をｋ個ずつ選択する制御を行う選択制御部に相当する。本実施形態では、ｋの値を２以上とする（ｋ≧２）。
【００３０】
ｋの値は適宜選択可能であるが、原理説明として、最も簡単な例である「ｋ＝２」とする場合を例に挙げて説明する。この場合、受信信号のサンプリング値「ｄ１」〜「ｄ２１１２」を２個ずつ選択するため、１０５６組の受信データ組が得られる。この１０５６組の受信データ組を「Ｓ（ｉ）＝Ｓ１〜Ｓ１０５６」と表記する。但し、「ｉ＝１〜１０５６」は受信データ組の番号を示す。具体的に書き表すと、「Ｓ１＝（ｄ１，ｄ２）」、「Ｓ２＝（ｄ３，ｄ４）」、・・・、「Ｓ１０５６＝（ｄ２１１１，ｄ２１１２）」となる。
【００３１】
受信データ組「Ｓ１」〜「Ｓ１０５６」のそれぞれが選択されて加減算部に出力されると、加減算部が、当該受信データ組に含まれる２個のサンプリング値を、加減算の組み合わせを変えて加減算する。換言すると、加減算部は、各受信データ組それぞれについて、当該受信データ組に含まれるｋ個のサンプリング値を、正負の符号の組み合わせを異ならせて加算する。
【００３２】
例えば、図１に示されている受信データ組「Ｓ１」に着目して説明すると、受信データ組「Ｓ１」に含まれるサンプリング値「ｄ１」及び「ｄ２」を、加減算の組み合わせを変えて加減算する。その結果、「ｄ１＋ｄ２」、「ｄ１−ｄ２」、「−ｄ１＋ｄ２」及び「−ｄ１−ｄ２」の４個の加減算結果が得られる。この加減算を、全ての受信データ組「Ｓ１」〜「Ｓ１０５６」を対象として行う。
【００３３】
図１では、受信データ組に含まれる２個のサンプリング値を加減算する場合の正負の符号の組み合わせを、順番にコンマで区切って括弧書きで表記している。具体的には、正の符号同士の加減算は（＋，＋）と表記し、正と負の符号の加減算は（＋，−）と表記している。また、負と正の符号の加減算は（−，＋）と表記し、負の符号同士の加減算は（−，−）と表記している。
【００３４】
上記の加減算の結果はバッファ（記憶部）に格納される。図１のバッファにおいて、横欄は、上述した正負の符号の組合せ｛（＋，＋）、（＋，−）、（−，＋）、（−，−）｝を示し、縦欄は、受信データ組「Ｓ１」〜「Ｓ１０５６」を示す。各受信データ組「Ｓ１」〜「Ｓ１０５６」それぞれについて、４通りの正負の符号の組み合わせでサンプリング値を加減算した結果が、バッファの対応する領域に格納される。
【００３５】
一方、レプリカコードは、相関演算のために、受信信号と同じサンプリング時間間隔でサンプリングされている。本実施形態では、コード長１０２３チップでなるレプリカコードは２１１２回サンプリングされることとなる。サンプリングされたレプリカコードの値（以下、「コード値」と称す。）を、符号「ｒ」を用いて「ｒ１」〜「ｒ２１１２」として説明する。
【００３６】
処理部は、選択開始位置を１コード値ずつずらしながら、２１１２個のコード値をｋ個ずつ選択する。ここでは「ｋ＝２」の場合を考えているため、第１番目に（ｒ１，ｒ２）を選択し、第２番目に（ｒ２，ｒ３）を選択し、第３番目に（ｒ３，ｒ４）を選択し、・・・、第２１１２番目に（ｒ２１１２，ｒ１）を選択する。
【００３７】
その結果、全部で２１１２組のレプリカデータ組が得られる。この２１１２組のレプリカデータ組を「Ｒ（ｈ）＝Ｒ１〜Ｒ２１１２」と表記する。但し、「ｈ＝１〜２１１２」はレプリカデータ組の番号を示す。具体的に書き表すと、「Ｒ１＝（ｒ１，ｒ２）」、「Ｒ２＝（ｒ２，ｒ３）」、「Ｒ３＝（ｒ３，ｒ４）」、「Ｒ４＝（ｒ４，ｒ５）」、・・・、「Ｒ２１１１＝（ｒ２１１１，ｒ２１１２）」、「Ｒ２１１２＝（ｒ２１１２，ｒ１）」となる。
【００３８】
さて、本実施形態では、各受信データ組それぞれについて、加減算の組み合わせのうちの、レプリカコードのコード値の時系列変化に対応する組み合わせの加減算結果を用いて、受信信号とレプリカコードとの相関値を算出する。本実施形態の手法で算出される相関値は、受信信号とレプリカコードとを相関演算した値に相当する相関値と言うこともできる。但し、説明を簡単にするために、先ずは、レプリカコードの位相をずらさずに算出する場合を説明する。
【００３９】
例えば、受信データ組「Ｓ１＝（ｄ１，ｄ２）」に着目した場合、受信データ組「Ｓ１」に対応するレプリカデータ組は、位相をずらしていないため、レプリカデータ組「Ｒ１＝（ｒ１，ｒ２）」となる。例えば、このレプリカデータ組「Ｒ１」に含まれる２個のコード値が「＋１，−１」であるとすると、処理部は、バッファに格納されている受信データ組「Ｓ１」に係る４個の加減算結果のうち、「（＋，−）」の正負の符号の組み合わせで加減算された加減算結果「Ｓ１（＋，−）」を選択する。
【００４０】
このとき、選択された加減算結果「Ｓ１（＋，−）」は、受信データ組「Ｓ１＝（ｄ１，ｄ２）」とレプリカデータ組「Ｒ１＝（ｒ１，ｒ２）」との相関を計算した結果となる。すなわち、「ｄ１×ｒ１＋ｄ２×ｒ２」の計算結果が、この加減算結果「Ｓ１（＋，−）」となるのである。つまり、「ｄ１×ｒ１＋ｄ２×ｒ２」の計算結果を、乗算を行わずに算出できることになる。これが本願実施形態の特徴の１つである。
【００４１】
以下、この選択された加減算結果であって、１つの受信データ組と１つのレプリカデータ組との相関の計算結果に相当する値のことを「積和値」と称す。
【００４２】
同様に、例えば、受信データ組「Ｓ２＝（ｄ３，ｄ４）」に着目した場合、受信データ組「Ｓ２」に対応するレプリカデータ組は、位相をずらしていないため、レプリカデータ組「Ｒ３＝（ｒ３，ｒ４）」となる。例えば、このレプリカデータ組「Ｒ３」に含まれる２個のコード値が「−１，−１」であるとすると、処理部は、バッファに格納されている受信データ組「Ｓ２」に係る４個の加減算結果のうち、「（−，−）」の正負の符号の組み合わせで加減算された加減算結果「Ｓ２（−，−）」を選択する。
【００４３】
このとき、選択された加減算結果「Ｓ２（−，−）」は、受信データ組「Ｓ２＝（ｄ３，ｄ４）」とレプリカデータ組「Ｒ３＝（ｒ３，ｒ４）」との相関を計算した結果となる。すなわち、「ｄ３×ｒ３＋ｄ４×ｒ４」の計算結果が、この加減算結果「Ｓ２（−，−）」となる。
【００４４】
このようにして、処理部は、全ての受信データ組「Ｓ１」〜「Ｓ１０５６」について、上記の手順に従ってバッファから加減算結果を選択して積和値を決定（算出）する。そして、処理部は、これらの積和値を合算することで、Ｃ／Ａコード１周期分の受信信号とレプリカコードとの相関値を算出する。このようにして算出された相関値は、受信信号とレプリカコードとを相関演算した値に相当する。従って、処理部は、相関値算出部の機能を有すると言える。
【００４５】
ここで、積和値の合算も加算のみである。従って、本実施形態の手法では、乗算を一切行わずに相関値が算出できることになる。これは、電子回路の回路規模を縮小させる作用効果を生む。また、ソフトウェアによる算出計算で相関値を算出する場合には演算ステップ数を大幅に削減することが可能となる。
【００４６】
以上、位相をずらさずに相関値を算出する場合について説明したが、ＧＰＳにおける相関演算では、レプリカコードの位相をずらしながら、受信信号とレプリカコードとの相関演算を実行する。位相のずらし量に応じて、受信データ組に対応するレプリカデータ組を変更して相関値を算出することになる。ずらし量を「レプリカオフセット」と称して説明する。
【００４７】
例えば、レプリカオフセットを「ｊ」とし、「ｊ＝１」の場合にずらし量をゼロ、「ｊ＝２」の場合に１サンプリング位置分位相をずらす、と考える。このとき、受信データ組「Ｓ（ｉ）」に対応するレプリカデータ組を「Ｒ（２ｉ＋ｊ−２）」として、上述の相関値の算出を行う。
【００４８】
具体的には、レプリカオフセットが「１」であれば（ｊ＝１）、受信データ組「Ｓ１＝（ｄ１，ｄ２）」に対応するレプリカデータ組を「Ｒ１＝（ｒ１，ｒ２）」とし、受信データ組「Ｓ２＝（ｄ３，ｄ４）」に対応するレプリカデータ組を「Ｒ３＝（ｒ３，ｒ４）」とし、・・・、受信データ組「Ｓ１０５６＝（ｄ２１１１，ｄ２１１２）」に対応するレプリカデータ組を「Ｒ２１１１＝（ｒ２１１１，ｒ２１１２）」とする。
【００４９】
また、例えば、レプリカオフセットが「２」であれば（ｊ＝２）、受信データ組「Ｓ１＝（ｄ１，ｄ２）」に対応するレプリカデータ組を「Ｒ２＝（ｒ２，ｒ３）」とし、受信データ組「Ｓ２＝（ｄ３，ｄ４）」に対応するレプリカデータ組を「Ｒ４＝（ｒ４，ｒ５）」とし、・・・、受信データ組「Ｓ１０５６＝（ｄ２１１１，ｄ２１１２）」に対応するレプリカデータ組を「Ｒ２１１２＝（ｒ２１１２，ｒ１）」とする。
【００５０】
「ｊ」を「１」〜「２１１２」まで変化させることで、Ｃ／Ａコード１周期分、位相をずらすこととなる。レプリカオフセットは、レプリカコードのコード値の相関計算位置に相当する。
【００５１】
図２は、Ｃ／Ａコード１周期分位相をずらして求めた積和値及び相関値をテーブル形式で表わした図である。ｍ番目（ｍ＝１〜１０５６）の受信データ組「Ｓｍ」について、レプリカオフセットを「ｎ」（ｎ＝１〜２１１２）とした場合に得られる積和値を「ｐ（ｍ，ｎ）」と表記する。例えば、レプリカオフセットを「１」とした場合について、受信データ組「Ｓ１」〜「Ｓ１０５６」それぞれについて得られる積和値を「ｐ（１，１）」〜「ｐ（１０５６，１）」と表記する。同様に、レプリカオフセットを「２」とした場合について、受信データ組「Ｓ１」〜「Ｓ１０５６」それぞれについて得られる積和値を「ｐ（１，２）」〜「ｐ（１０５６，２）」と表記する。
【００５２】
各レプリカオフセットそれぞれについて、受信データ組「Ｓ１」〜「Ｓ１０５６」に係る積和値を合算することで、相関値「Ｃｏｒｒ」が算出される。例えば、レプリカオフセット「１」について、受信データ組「Ｓ１」〜「Ｓ１０５６」に係る積和値「ｐ（１，１）」〜「ｐ（１０５６，１）」を合算することで、レプリカオフセット「１」に係る相関値「Ｃｏｒｒ１」が算出される。全てのレプリカオフセットについて同様の演算を行うことで、レプリカオフセット「１」〜「２１１２」に係る相関値「Ｃｏｒｒ１」〜「Ｃｏｒｒ２１１２」が算出される。
【００５３】
処理部は、レプリカオフセットを変更しながら相関値を算出することで、最終的に図２に示したテーブルの各値を算出することとなる。そして、算出した相関値のうちの最大の相関値に対応するレプリカオフセットに基づいてコード位相を判定する。これは、相関計算位置（レプリカオフセット）を変更して算出した複数の相関値のうちの最大の相関値に対応する相関計算位置に基づいてコード位相を判定することに相当する。
【００５４】
２．実施例
次に、上記の衛星信号捕捉方法を用いて衛星信号を捕捉する衛星信号捕捉装置の実施例について説明する。ここでは、衛星信号捕捉装置を備えた電子機器の一例として、携帯型電話機の実施例について説明する。但し、本発明を適用可能な実施例が以下説明する実施例に限定されるわけではないことは勿論である。
【００５５】
２−１．第１実施例
２−１−１．携帯型電話機の構成
図３は、本実施例における携帯型電話機１の機能構成の一例を示すブロック図である。携帯型電話機１は、ＧＰＳアンテナ５と、ＧＰＳ受信部１０と、ホスト処理部３０と、操作部４０と、表示部５０と、音出力部５５と、携帯電話用アンテナ６０と、携帯電話用無線通信回路部７０と、記憶部８０と、時計部９０とを備えて構成される。
【００５６】
ＧＰＳアンテナ５は、ＧＰＳ衛星から発信されているＧＰＳ衛星信号を含むＲＦ（Radio Frequency）信号を受信するアンテナであり、受信信号をＧＰＳ受信部１０に出力する。
【００５７】
ＧＰＳ受信部１０は、ＧＰＳアンテナ５から出力された信号に基づいて携帯型電話機１の位置を算出する回路或いは装置であり、いわゆるＧＰＳ受信機に相当する。本実施形態では、ＧＰＳ受信部１０が衛星信号捕捉装置に相当する。
【００５８】
ＧＰＳ受信部１０は、ＲＦ受信回路部１１と、ベースバンド処理回路部２０とを備えて構成される。なお、ＲＦ受信回路部１１と、ベースバンド処理回路部２０とは、それぞれ別のＬＳＩ（Large Scale Integration）として製造することも、１チップとして製造することも可能である。
【００５９】
ＲＦ受信回路部１１は、ＲＦ信号の受信回路部である。回路構成としては、例えば、ＧＰＳアンテナ５から出力されたＲＦ信号をＡ／Ｄ変換器でデジタル信号に変換し、デジタル信号を処理する受信回路を構成してもよい。また、ＧＰＳアンテナ５から出力されたＲＦ信号をアナログ信号のまま信号処理し、最終的にＡ／Ｄ変換することでデジタル信号をベースバンド処理回路部２０に出力する構成としてもよい。
【００６０】
後者の場合には、例えば、次のようにＲＦ受信回路部１１を構成することができる。すなわち、所定の発振信号を分周或いは逓倍することで、ＲＦ信号乗算用の発振信号を生成する。そして、生成した発振信号を、ＧＰＳアンテナ５から出力されたＲＦ信号に乗算することで、ＲＦ信号を中間周波数の信号（以下、「ＩＦ（Intermediate Frequency）信号」と称す。）にダウンコンバートし、ＩＦ信号を増幅等した後、Ａ／Ｄ変換器でデジタル信号に変換して、ベースバンド処理回路部２０に出力する。
【００６１】
ベースバンド処理回路部２０は、ＲＦ受信回路部１１から出力された受信信号に対して、搬送波（キャリア）の除去や相関値の算出等を行ってＧＰＳ衛星信号を捕捉する。そして、捕捉したＧＰＳ衛星信号から抽出した時刻情報や衛星軌道情報等を利用して、携帯型電話機１の位置及び時計誤差を算出する。
【００６２】
ホスト処理部３０は、記憶部８０に記憶されているシステムプログラム等の各種プログラムに従って携帯型電話機１の各部を統括的に制御するプロセッサーであり、ＣＰＵ（Central Processing Unit）等のプロセッサーを有して構成される。ホスト処理部３０は、ベースバンド処理回路部２０から取得した位置座標を元に、表示部５０に現在位置を指し示した地図を表示させたり、その位置座標を各種のアプリケーション処理に利用する。
【００６３】
操作部４０は、例えばタッチパネルやボタンスイッチ等を有して構成される入力装置であり、押下されたキーやボタンの信号をホスト処理部３０に出力する。この操作部４０の操作により、通話要求やメール送受信要求、各種アプリケーション実行要求、位置算出要求等の各種指示入力がなされる。
【００６４】
表示部５０は、ＬＣＤ（Liquid Crystal Display）等を有して構成される表示装置であり、ホスト処理部３０から出力される表示信号に基づいた各種表示を行う。表示部５０には、位置表示画面や時刻情報等が表示される。
【００６５】
音出力部５５は、スピーカー等を有して構成される音出力装置であり、ホスト処理部３０から出力される音出力信号に基づいた各種音出力を行う。音出力部５５からは、通話中の音声や、各種アプリケーションに係る音声ガイダンス等が音出力される。
【００６６】
携帯電話用アンテナ６０は、携帯型電話機１の通信サービス事業者が設置した無線基地局との間で携帯電話用無線信号の送受信を行うアンテナである。
【００６７】
携帯電話用無線通信回路部７０は、ＲＦ変換回路、ベースバンド処理回路等によって構成される携帯電話の通信回路部であり、携帯電話用無線信号の変調・復調等を行うことで、通話やメールの送受信等を実現する。
【００６８】
記憶部８０は、ＲＯＭ（Read Only Memory）やフラッシュＲＯＭ、ＲＡＭ（Random Access Memory）等の記憶装置を有して構成され、ホスト処理部３０が携帯型電話機１を制御するためのシステムプログラムや、各種アプリケーション処理を実行するための各種プログラムやデータ等を記憶する。
【００６９】
時計部９０は、携帯型電話機１の内部時計であり、水晶振動子及び発振回路でなる水晶発振器等を有して構成される。時計部９０の計時時刻は、ベースバンド処理回路部２０及びホスト処理部３０に随時出力される。時計部９０の計時時刻は、ベースバンド処理回路部２０によって算出された時計誤差に基づき補正される。
【００７０】
２−１−２．ベースバンド処理回路部の回路構成
図４は、ベースバンド処理回路部２０の回路構成の一例を示す図であり、本実施例に係わる回路ブロックを中心に記載した図である。ベースバンド処理回路部２０は、主要な構成として、サンプルメモリ２１０と、キャリア除去部２２０と、第１の加減算部２３０と、バッファ２４０と、第２の加減算部２５０と、処理部２７０と、記憶部２９０とを備える。
【００７１】
サンプルメモリ２１０は、ＲＦ受信回路部１１から出力される受信信号のサンプリング値が格納されるメモリである。サンプルメモリ２１０は、処理部２７０から出力されるデータの出力制御信号に従ってサンプリング値を選択して、キャリア除去部２２０に出力する。
【００７２】
キャリア除去部２２０は、サンプルメモリ２１０から出力される受信信号（受信信号のサンプリング値）に対して、デジタル化されたキャリア除去用の信号（キャリア除去用信号のサンプリング値）を乗算することで、受信信号を検波する。
【００７３】
より具体的には、各捕捉対象衛星それぞれについて、キャリア周波数をＩＦ周波数にダウンコンバートした周波数に、当該捕捉対象衛星から受信したＧＰＳ衛星信号のドップラー周波数を加味した周波数のキャリア除去用信号を生成する。そして、生成したキャリア除去用信号を受信信号に乗算する。これにより、受信信号の検波が行われ、キャリアが除去された受信信号のデータが第１の加減算部２３０に出力される。
【００７４】
第１の加減算部２３０は、例えば論理回路によって構成され、キャリア除去部２２０から出力される受信信号のサンプリング値に対して、加減算の組み合わせを変えて、第１の加減算を行う。第１の加減算部２３０の演算結果は、バッファ２４０に出力される。
【００７５】
バッファ２４０は、第１の加減算部２３０の演算結果を一時的に記憶する記憶部（第１の記憶部）である。バッファ２４０は、処理部２７０から出力されるデータの書込制御信号に従って、第１の加減算部２３０の演算結果を書き込む。また、処理部２７０から出力されるデータの出力制御信号に従って、書き込んだデータを選択して、第２の加減算部２５０に出力する。
【００７６】
第２の加減算部２５０は、例えば論理回路によって構成され、バッファ２４０から出力される第１の加減算の結果に対して、加減算の組み合わせを変えて、第２の加減算を行う。第２の加減算部２５０の演算結果は、処理部２７０に出力される。
【００７７】
処理部２７０は、ベースバンド処理回路部２０の各機能部を統括的に制御する制御装置及び演算装置であり、ＣＰＵやＤＳＰ（Digital Signal Processor）等のプロセッサーを有して構成される。処理部２７０は、主要な機能部として、衛星信号捕捉部２７１と、位置算出部２７３とを有する。
【００７８】
衛星信号捕捉部２７１は、ＧＰＳ衛星信号の捕捉を行う機能部である。具体的には、レプリカコードのコード値の時系列変化に対応する加減算結果を、第２の加減算部２５０の加減算結果の中から選択して、受信信号とレプリカコードとの相関値を算出する。そして、算出した相関値を用いてＧＰＳ衛星のＧＰＳ衛星信号を捕捉する。
【００７９】
位置算出部２７３は、衛星信号捕捉部２７１によって捕捉されたＧＰＳ衛星信号を利用して、所定の位置算出処理を行って、携帯型電話機１の位置（位置座標）及び時計誤差（クロックバイアス）を算出する。位置算出処理は、例えば、最小二乗法やカルマンフィルター等の手法を適用した処理として実現可能である。
【００８０】
記憶部２９０は、ベースバンド処理回路部２０のシステムプログラムや、衛星信号捕捉機能、位置算出機能といった各種機能を実現するための各種プログラム、データ等を記憶する。また、各種処理の処理中データ、処理結果などを一時的に記憶するワークエリアを有する。
【００８１】
２−１−３．相関値の算出方法
図５は、第１実施例における相関値の算出方法の説明図である。この第１実施例では、ｋを４以上（ｋ≧４）として相関値を算出する。ここでは、最も簡単な例として「ｋ＝４」とする場合を説明する。また、説明の簡明化のために、図５ではキャリア除去部２２０の図示を省略している。
【００８２】
最初に、サンプルメモリ２１０に格納された受信信号のサンプリング値「ｄ１」〜「ｄ２１１２」を４個ずつ選択して、受信データ組「Ｓ１」〜「Ｓ５２８」を生成する。次に、第１の加減算部２３０が、各受信データ組「Ｓ１」〜「Ｓ５２８」のそれぞれについて、当該受信データ組に含まれる４個のサンプリング値を、加減算の組み合わせを変えて加減算する。この際、４個のサンプリング値を２個ずつの２つのグループに分け、各グループそれぞれについて、２個のサンプリング値を加減算の組み合わせを変えて加減算する。
【００８３】
受信データ組「Ｓ１」に着目して説明すると、受信データ組「Ｓ１」に含まれるサンプリング値「ｄ１」〜「ｄ４」を、「ｄ１」及び「ｄ２」の第１グループと、「ｄ３」及び「ｄ４」の第２グループとに分ける。そして、第１グループ及び第２グループのそれぞれについて、２個のサンプリング値を加減算の組み合わせを変えて加減算する。
【００８４】
加減算を行う際の正負の符号の組合せとしては、｛（＋，＋）、（＋，−）、（−，＋）、（−，−）｝の４通りが考えられる。しかし、｛（＋，＋）と（−，−）｝、｛（＋，−）と（−，＋）｝は、正負の符号を逆転させた組み合わせであるため、符号を逆転させた組み合わせは省略する。以下では、｛（＋，＋）、（＋，−）｝の２通りの組み合わせで加減算を行う例を説明する。
【００８５】
第１グループについて、上記の２通りの符号の組み合わせで加減算を行うと「Ｘ１＝ｄ１＋ｄ２」及び「Ｘ２＝ｄ１−ｄ２」が得られる。また、第２グループについて、上記の２通りの符号の組み合わせで加減算を行うと「Ｘ３＝ｄ３＋ｄ４」、「Ｘ４＝ｄ３−ｄ４」が得られる。
【００８６】
全ての受信データ組「Ｓ１」〜「Ｓ５２８」それぞれについて上記の演算を行って、第１の加減算結果「Ｘ１」〜「Ｘ４」を取得する。そして、各受信データ組それぞれに係る第１の加減算の結果をバッファ２４０（第１の記憶部）に記憶する。図５に、受信データ組「Ｓ１」〜「Ｓ５２８」それぞれの第１の加減算の結果「Ｘ１」〜「Ｘ４」を格納するバッファ２４０のデータ構造の一例を示す。
【００８７】
次いで、第２の加減算部２５０が、バッファ２４０に格納された第１の加減算の結果を用いて第２の加減算を行う。すなわち、受信データ組「Ｓ１」〜「Ｓ５２８」のそれぞれについて、第１のグループ及び第２のグループの２つのグループ間で、第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行う。
【００８８】
具体的には、「Ｘ１」及び「Ｘ３」の組み合わせと、「Ｘ１」及び「Ｘ４」の組み合わせと、「Ｘ２」及び「Ｘ３」の組み合わせと、「Ｘ２」及び「Ｘ４」の組み合わせとのそれぞれについて、加減算の組み合わせを変えて加減算する。その結果、図５に示すような１６通りの加減算結果が得られる。このようにして得られた第２の加減算の結果を、４個（＝ｋ個）のサンプリング値の加減算結果とする。
【００８９】
以上のサンプルメモリ２１０〜第２の加減算部２５０までは、電子回路によって構成されている。従って、サンプルメモリ２１０からの読み出し、バッファ２４０への書き込み、バッファ２４０からの読み出しを、処理部２７０が指示するだけで、第１の加減算部２３０及び第２の加減算部２５０の回路動作によって演算が行われることとなる。
【００９０】
処理部２７０は、レプリカコードのコード値の時系列変化に対応する加減算結果を、第２の加減算部２５０の加減算結果の中から選択して相関値を算出する。具体的には、原理で説明したように、選択開始位置を１コード値ずつずらしながら、２１１２個のコード値を４個ずつ選択して、レプリカデータ組「Ｒ１」〜「Ｒ２１１２」を生成する。そして、レプリカオフセットに基づいて、受信データ組に対応するレプリカデータ組を選定し、当該レプリカデータ組に含まれる４個のコード値の正負の符号の組み合わせと同じ組み合わせで加減算された第２の加減算結果を選択する。このようにして選択した値が、当該受信データ組に係る積和値となる。
【００９１】
例えば、レプリカオフセットが「１（ずらし量ゼロ）」の場合（ｊ＝１）、受信データ組「Ｓ１」に対応するレプリカデータ組はレプリカデータ組「Ｒ１」となる。例えば、レプリカデータ組「Ｒ１」に含まれるコード値が「＋１，＋１，−１，−１」である場合は、第２の加減算部２５０によって演算された１６個の第２の加減算結果のうち、「＋ｄ１＋ｄ２−ｄ３−ｄ４＝Ｘ１−Ｘ３」を選択する。そして、選択した値を受信データ組「Ｓ１」に係る積和値とする。
【００９２】
他の受信データ組についても同様である。そして、レプリカオフセット毎に全ての受信データ組に係る積和値を合算することで、各レプリカオフセットに係る相関値を算出する。各レプリカオフセットに対する受信データ組それぞれの積和値と、相関値とは、衛星別に衛星信号捕捉用データ２９４に格納される（図６参照）。
【００９３】
２−１−４．データ構成
記憶部２９０には、プログラムとして、処理部２７０により読み出され、ベースバンド処理として実行されるベースバンド処理プログラム２９１が記憶されている。ベースバンド処理プログラム２９１は、衛星信号捕捉処理（図７参照）として実行される衛星信号捕捉プログラム２９１１と、位置算出処理として実行される位置算出プログラム２９１３とをサブルーチンとして含む。なお、位置算出処理については従来と同様の処理を適用可能であるため、フローチャートを用いた説明を省略する。
【００９４】
また、記憶部２９０には、主要なデータとして、衛星軌道データ２９２と、レプリカコードデータ２９３と、衛星信号捕捉用データ２９４と、メジャメントデータ２９５と、算出位置データ２９６とが記憶される。
【００９５】
衛星軌道データ２９２は、アルマナックや、各ＧＰＳ衛星のエフェメリス等のデータである。衛星軌道データ２９２は、ＧＰＳ衛星から受信したＧＰＳ衛星信号をデコードすることで取得する他、例えば携帯型電話機１の基地局やアシストサーバーからアシストデータとして取得する。
【００９６】
レプリカコードデータ２９３は、各ＧＰＳ衛星それぞれについて、Ｃ／Ａコードを模擬したレプリカコードのコード値が記憶されたデータである。受信信号のサンプリング値と同様に、例えば２１１２個にサンプリングされたコード値のデータが記憶される。
【００９７】
衛星信号捕捉用データ２９４は、各ＧＰＳ衛星それぞれの衛星信号を捕捉するために用いられるデータであり、そのデータ構成の一例を図６に示す。衛星信号捕捉用データ２９４には、ＧＰＳ衛星の番号である衛星Ｎｏ２９４Ａと、受信データ組及びレプリカオフセット別の積和値データ２９４Ｂと、レプリカオフセット別の相関値データ２９４Ｃとが記憶される。
【００９８】
メジャメントデータ２９５は、コード位相やドップラー周波数、擬似距離、擬似距離変化率といった、捕捉したＧＰＳ衛星信号に係る各種の諸量であるメジャメント情報がＧＰＳ衛星別に記憶されたデータである。
【００９９】
算出位置データ２９６は、位置算出部２７３が位置算出処理を行うことで取得した算出結果のデータであり、算出した携帯型電話機１の位置（位置座標）や時計誤差（クロックバイアス）がこれに含まれる。
【０１００】
２−１−５．処理の流れ
図７は、処理部２７０が、記憶部２９０に記憶されている衛星信号捕捉プログラム２９１１に従って実行する衛星信号捕捉処理の流れを示すフローチャートである。
【０１０１】
最初に、衛星信号捕捉部２７１は、捕捉対象衛星選定処理を行う（ステップＡ１）。具体的には、時計部９０で計時されている現在時刻において、所与の基準位置の天空に位置するＧＰＳ衛星を、記憶部２９０の衛星軌道データ２９２を用いて判定して、捕捉対象衛星に選定する。基準位置は、例えば、電源投入後の初回の位置算出の場合は、いわゆるサーバーアシストによってサーバーから取得した位置とし、２回目以降の位置算出の場合は、最新の算出位置とする等の方法で設定できる。
【０１０２】
次いで、衛星信号捕捉部２７１は、ステップＡ１で選定した各捕捉対象衛星それぞれについて、ループＡの処理を実行する（ステップＡ３〜Ａ３５）。ループＡの処理では、衛星信号捕捉部２７１は、各受信データ組それぞれについて、ループＢの処理を行う（ステップＡ５〜Ａ１３）。
【０１０３】
ループＢの処理では、衛星信号捕捉部２７１は、データの出力制御信号をサンプルメモリ２１０に出力する（ステップＡ７）。出力制御信号とは、データの読出位置の指示信号である。サンプルメモリ２１０は、衛星信号捕捉部２７１からの出力制御信号に従って、指示された読出位置に格納されている当該受信データ組のサンプリング値をキャリア除去部２２０に出力する。
【０１０４】
次いで、衛星信号捕捉部２７１は、キャリア除去部２２０にキャリア除去を指示する（ステップＡ９）。具体的には、当該捕捉対象衛星に係るドップラー周波数をキャリア除去部２２０に出力して、キャリア除去用信号を生成させる。キャリア除去部２２０は、衛星信号捕捉部２７１からの指示に従ってキャリア除去用信号を生成し、サンプルメモリ２１０から出力されているサンプリング値に、キャリア除去用信号のサンプリング値を乗算する。
【０１０５】
次いで、第１の加減算部２３０が、キャリア除去部２２０から出力されるｋ個のサンプリング値を、加減算の組み合わせを変えて第１の加減算を行う（ステップＡ１０）。
【０１０６】
次いで、衛星信号捕捉部２７１は、データの書込制御信号をバッファ２４０に出力する（ステップＡ１１）。書込制御信号とは、データの書込位置の指示信号である。バッファ２４０は、衛星信号捕捉部２７１からの書込制御信号に従って、指示された書込位置に、第１の加減算部２３０から出力されている当該受信データ組に係る加減算結果を書き込む。衛星信号捕捉部２７１は、全ての受信データ組について以上のステップＡ７〜Ａ１１の処理を行う（ステップＡ１３）。
【０１０７】
その後、衛星信号捕捉部２７１は、記憶部２９０に記憶されているレプリカコードデータ２９３のうち、当該捕捉対象衛星のレプリカコードのコード値のレプリカオフセットそれぞれについて、ループＣの処理を実行する（ステップＡ１５〜Ａ３１）。ループＣの処理では、衛星信号捕捉部２７１は、各受信データ組それぞれについて、ループＤの処理を実行する（ステップＡ１７〜Ａ２７）。
【０１０８】
ループＤの処理では、衛星信号捕捉部２７１は、データの出力制御信号をバッファ２４０に出力する（ステップＡ１９）。バッファ２４０は、出力制御信号によって指示された読出位置に格納されている当該受信データ組の第１の加減算の結果を第２の加減算部２５０に出力する。
【０１０９】
次いで、第２の加減算部２５０が、バッファ２４０から出力される当該受信データ組に係る第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行う（ステップＡ２０）。
【０１１０】
次いで、衛星信号捕捉部２７１は、当該受信データ組に対応するレプリカデータ組のコード値の正負の符号の組合せを判定する（ステップＡ２１）。衛星信号捕捉部２７１は、判定した正負の符号の組み合わせと同じ組み合わせの第２の加減算の結果を、第２の加減算部２５０の加減算結果から選択する（ステップＡ２３）。そして、衛星信号捕捉部２７１は、選択した加減算結果を当該レプリカオフセットの当該受信データ組に係る積和値として衛星信号捕捉用データ２９４の積和値データ２９４Ｂに記憶させた後（ステップＡ２５）、次の受信データ組へと処理を移行する。
【０１１１】
全ての受信データ組についてステップＡ１９〜Ａ２５の処理を行った後、衛星信号捕捉部２７１は、ループＤの処理を終了する（ステップＡ２７）。その後、衛星信号捕捉部２７１は、衛星信号捕捉用データ２９４の積和値データ２９４Ｂに記憶された当該レプリカオフセットの全ての受信データ組に係る積和値を合算して相関値を算出し、相関値データ２９４Ｃに記憶させる（ステップＡ２９）。そして、衛星信号捕捉部２７１は、次のレプリカオフセットへと処理を移行する。
【０１１２】
全てのレプリカオフセットについてステップＡ１７〜Ａ２９の処理を行った後、衛星信号捕捉部２７１は、ループＣの処理を終了する（ステップＡ３１）。その後、衛星信号捕捉部２７１は、相関値データ２９４Ｃに記憶されている複数の相関値のうちの最大の相関値に対応するレプリカオフセットに基づいてコード位相を判定し、記憶部２９０のメジャメントデータ２９５に記憶させる（ステップＡ３３）。そして、衛星信号捕捉部２７１は、次の捕捉対象衛星へと処理を移行する。
【０１１３】
全ての捕捉対象衛星についてステップＡ５〜Ａ３３の処理を行った後、衛星信号捕捉部２７１は、ループＡの処理を終了する（ステップＡ３５）。そして、衛星信号捕捉部２７１は、衛星信号捕捉処理を終了する。
【０１１４】
２−１−６．作用効果
本実施例によれば、ベースバンド処理回路部２０において、サンプルメモリ２１０に格納されたＧＰＳ衛星からの受信信号をサンプリングした時系列なサンプリング値が４個ずつ選択される。そして、選択された４個のサンプリング値が、第１の加減算部２３０において、加減算の組み合わせを変えて加減算される。この際、４個のサンプリング値を２個ずつの２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて第１の加減算が行われる。第１の加減算部２３０の演算結果はバッファ２４０に格納される。そして、バッファ２４０に格納されたグループ毎の第１の加減算の結果について、第２の加減算部２５０において、加減算の組み合わせを変えて第２の加減算が行われる。そして、第２の加減算の結果が４個のサンプリング値の加減算結果とされる。
【０１１５】
このようにして４個のサンプリング値の加減算結果が求まったならば、処理部２７０は、その加減算の組み合わせのうちの、レプリカコードのコード値の時系列変化に対応する組み合わせの加減算結果を用いて、受信信号とレプリカコードとの相関値を算出する。以上の相関値の算出までを、レプリカコードのコード値の相関計算位置（レプリカオフセット）を変更しながら行い、算出した複数の相関値のうちの最大の相関値に対応する相関計算位置に基づいて、受信信号のコード位相を判定する。
【０１１６】
本実施例の手法によれば、４個ずつ選択した受信信号のサンプリング値を、加減算の組み合わせを変えて加減算する。そして、レプリカコードのコード値の時系列変化に対応する組み合わせの加減算結果を選択するといった簡易な手法により、受信信号とレプリカコードとの相関値を算出することができる。すなわち、乗算を行わずに相関値を算出できるため、回路規模を大幅に縮小できる。また、ソフトウェアによる演算量も大幅に減少させることができる。これら回路規模の縮小や演算量の減少は、消費電力の削減にもなる。
【０１１７】
また、本実施例の手法では、第１の加減算部２３０の演算結果がバッファ２４０に格納されるため、同じ演算結果となる第１の加減算を何回も実行する必要がなくなり、相関演算を一層少ない演算量で実現することができる。
【０１１８】
２−２．第２実施例
第２実施例は、上記の携帯型電話機１の実施例において、第２の加減算部２５０による加減算の結果を第２のバッファ（第２の記憶部）２６０に記憶することとし、処理部２７０が、第２のバッファ２６０から第２の加減算の結果を読み出して相関値を算出する実施例である。なお、携帯型電話機１の構成は第１実施例と同一であるため、再度の説明を省略する。
【０１１９】
２−２−１．相関値の算出方法
図８は、第２実施例における相関値の算出方法の説明図である。図５と同様に、受信信号のサンプリング値を４個ずつ選択して受信データ組を生成する場合を例示する。第１の加減算部２３０による演算結果（第１の加減算結果）は、第１のバッファ（第１の記憶部）２４０に格納される。つまり、各受信データ組それぞれについて、２つのグループに分けて加減算を行った結果「Ｘ１〜Ｘ４」が第１のバッファ２４０に格納される。
【０１２０】
次いで、第１のバッファ２４０から出力される第１の加減算の結果に基づいて、第２の加減算部２５０が第２の加減算を行う。第２の加減算部２５０の第２の加減算によって、各受信データ組それぞれについて、１６個の加減算結果が得られる。そして、この１６個の加減算の結果が、第２のバッファ（第２の記憶部）２６０に格納される。処理部２７０は、４個のレプリカコードのコード値の時系列変化に対応する加減算結果を第２のバッファ２６０から読み出して相関値を算出する。
【０１２１】
２−２−２．処理の流れ
図９は、上記の実施例のベースバンド処理回路部の処理部２７０が、図７の衛星信号捕捉処理に代えて実行する第２の衛星信号捕捉処理の流れを示すフローチャートである。なお、衛星信号捕捉処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
【０１２２】
各受信データ組について行うループＢの処理において、ステップＡ９でキャリア除去の指示を行った後、第１の加減算部２３０が、キャリア除去部２２０から出力されたｋ個のサンプリング値を、加減算の組み合わせを変えて第１の加減算を行う（ステップＡ１０）。
【０１２３】
その後、衛星信号捕捉部２７１は、データの書込制御信号を第１のバッファ２４０に出力する（ステップＢ１１）。第１のバッファ２４０は、書込制御信号によって指示された書込位置に、当該受信データ組に係る第１の加減算の結果を書き込む。
【０１２４】
その後、衛星信号捕捉部２７１は、データの出力制御信号を第１のバッファ２４０に出力する（ステップＢ１２）。第１のバッファ２４０は、出力制御信号によって指示された読出位置から、当該受信データ組に係る第１の加減算の結果を読み出して第２の加減算部２５０に出力する。
【０１２５】
次いで、第２の加減算部２５０が、第１のバッファ２４０から出力された当該受信データ組に係る第１の加減算の結果を、加減算の組み合わせを変えて第２の加減算を行う（ステップＡ２０）。
【０１２６】
その後、衛星信号捕捉部２７１は、データの書込制御信号を第２のバッファ２６０に出力する（ステップＢ１３）。第２のバッファ２６０は、書込制御信号によって指示された書込位置に、当該受信データ組に係る第２の加減算の結果を書き込む。これにより、当該受信データ組について、１６個の加減算の結果が第２のバッファ２６０に書き込まれることになる。
【０１２７】
ステップＡ７〜Ｂ１３の処理を全ての受信データ組について行うことで、各受信データ組それぞれについて、第２のバッファ２６０に１６個の加減算の結果が書き込まれる。
【０１２８】
衛星信号捕捉部２７１は、各レプリカオフセット及び各受信データ組について行うループＣ及びループＤの処理において、当該受信データ組に対応するレプリカデータ組のコード値の正負の符号の組み合わせを判定する（ステップＡ２１）。そして、判定した正負の符号の組み合わせと同じ組み合わせの第２の加減算結果を第２のバッファ２６０から読み出す（ステップＢ２３）。そして、読み出した加減算結果を積和値として衛星信号捕捉用データ２９４の積和値データ２９４Ｂに記憶させる（ステップＢ２５）。
【０１２９】
第２実施例の手法では、第２の加減算部２５０の演算結果が第２のバッファ２６０に格納されるため、同じ演算結果となる第２の加減算を何回も実行する必要がなくなり、相関演算を一層少ない演算量で実現することができる。
【０１３０】
３．変形例
本発明を適用可能な実施例は、上記の実施例に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能であることは勿論である。以下、変形例について説明する。
【０１３１】
３−１．ｋの値
上記の原理説明では、受信信号のサンプリング値を２個ずつ選択して受信データ組を生成する場合を例に挙げて説明した。また、上記の実施例では、受信信号のサンプリング値を４個ずつ選択して受信データ組を生成する場合を例に挙げて説明した。しかし、受信信号のサンプリング値をｋ個ずつ選択する場合のｋの値は、何もこれらに限られるわけではなく、適宜選択可能であることは勿論である。
【０１３２】
また、ｋを４以上とし、ｋ個ずつのサンプリング値を２つのグループに分けて加減算を行う場合において、第１のグループと第２のグループとでサンプリング値を同数として演算を行ってもよいし、第１のグループと第２のグループとでサンプリング値を異なる数として演算を行ってもよい。例えば、「ｋ＝５」とした場合において、第１のグループに含まれるサンプリング値を「２個」とし、第２のグループに含まれるサンプリング値を「３個」としてもよい。
【０１３３】
３−２．受信信号の積算
上記の実施形態では、サンプルメモリに記憶された１ミリ秒分のサンプリング値を対象として加減算を行うものとして説明したが、サンプルメモリに記憶されるサンプリング値は１ミリ秒分以上でもよい。
【０１３４】
例えば、サンプルメモリに１０ミリ秒分の受信信号のサンプリング値を記憶する。１ミリ秒分のデータを２１１２個にサンプリングするため、２１１２×１０個分のサンプリング値がサンプルメモリに蓄積記憶されることになる。１ミリ秒は、Ｃ／Ａコードの１周期に相当する。そこで、位相（サンプルタイミング）が同一のサンプリング値を積算する。
【０１３５】
つまり、最初の１ミリ秒分、次の１ミリ秒分、その次の１ミリ秒分といった、１０個の１ミリ秒分のサンプリング値のうち、同一のサンプルタイミングの１０個分のサンプリング値を積算する。その結果、積算値は、位相（サンプルタイミング）を変えた２１１２個の値となる。この積算値を、上述した実施形態のサンプリング値として利用する。この手法は、感度が向上するため、弱電界環境において有用である。
【０１３６】
３−３．バッファの有無
第１実施例では、第１の加減算部２３０の演算結果をバッファ２４０に格納するように構成したが、バッファ２４０はなくてもよい。すなわち、第１の加減算部２３０の演算を相関処理の度に行うようにしてもよい。また、第２実施例では、第２の加減算部２５０の演算結果を第２のバッファ２６０に格納するように構成したが、前述のバッファ２４０と同様に第２のバッファ２６０はなくてもよい。
【０１３７】
３−４．データの出力制御信号及び書込制御信号の有無
第１実施例では、サンプルメモリ２１０にデータの出力制御信号を出力し、バッファ２４０にデータの書込制御信号及び出力制御信号を出力するように構成したが、これらのデータの出力制御信号及び書込制御信号はなくてもよい。また、第２実施例では、サンプルメモリ２１０にデータの出力制御信号を出力し、第１のバッファ２４０にデータの書込制御信号及び出力制御信号を出力し、第２のバッファ２６０にデータの書込制御信号を出力するように構成したが、前述の第１の実施例と同様に、これらのデータの出力制御信号及び書込制御信号はなくてもよい。
【０１３８】
３−５．電子機器
上記の実施例では、電子機器の一種である携帯型電話機に本発明を適用した場合を例に挙げて説明したが、本発明を適用可能な電子機器はこれに限られるわけではない。例えば、カーナビゲーション装置や携帯型ナビゲーション装置、パソコン、ＰＤＡ（Personal Digital Assistant）、腕時計といった他の電子機器についても同様に適用することが可能である。
【０１３９】
３−６．衛星測位システム
また、上記の実施形態では、衛星測位システムとしてＧＰＳを例に挙げて説明したが、ＷＡＡＳ（Wide Area Augmentation System）、ＱＺＳＳ（Quasi Zenith Satellite System）、ＧＬＯＮＡＳＳ（GLObal NAvigation Satellite System）、ＧＡＬＩＬＥＯ等の他の衛星測位システムを適用してもよい。
【符号の説明】
【０１４０】
１  携帯型電話機、  １０  ＧＰＳ受信部、  １１  ＲＦ受信回路部、  ２０  ベースバンド処理回路部、  ３０  ホスト処理部、  ４０  操作部、  ５０  表示部、  ５５  音出力部、  ６０  携帯電話用アンテナ、  ７０  携帯電話用無線通信回路部、  ８０  記憶部、  ９０  時計部、  ２１０  サンプルメモリ、  ２２０  キャリア除去部、  ２３０  第１の加減算部、  ２４０  バッファ、  ２５０  第２の加減算部、  ２７０  処理部、  ２９０  記憶部
【図１】
0005974487.tif 000002
【図２】
0005974487.tif 000003
【図３】
0005974487.tif 000004
【図４】
0005974487.tif 000005
【図５】
0005974487.tif 000006
【図６】
0005974487.tif 000007
【図７】
0005974487.tif 000008
【図８】
0005974487.tif 000009
【図９】
0005974487.tif 000010