(57)【要約】【課題】受信信号とレプリカコードとの相関演算を少ない演算量で実現する全く新しい手法の提案。【解決手段】ＧＰＳ衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、受信信号とレプリカコードとの相関値を算出する。そして、相関値を用いてＧＰＳ衛星の衛星信号を捕捉する。【選択図】図１
2013142607.tif 000002
【特許請求の範囲】
【請求項１】
衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、前記受信信号と前記レプリカコードとの相関値を算出することと、
前記相関値を用いて前記衛星の衛星信号を捕捉することと、
を含む衛星信号捕捉方法。
【請求項２】
前記複数の加減算器は、ｋ個（ｋ≧２）のサンプリング値のうちの一のサンプリング値の加減算符号が所定符号と仮定した場合における、異なる加減算の組み合わせで加減算する回路で構成され、
前記相関値を算出することは、
ｋ個のコード値のうち、前記一のサンプリング値に対応する一のコード値以外のコード値の組み合わせに基づいて、前記一の加減算器を選択することと、
前記一の加減算器の出力値の符号を前記一のコード値に基づき変更することと、
を含む請求項１に記載の衛星信号捕捉方法。
【請求項３】
衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器と、
前記複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、前記受信信号と前記レプリカコードとの相関値を算出する相関値算出部と、
前記相関値を用いて前記衛星の衛星信号を捕捉する捕捉部と、
を備えた衛星信号捕捉装置。
【請求項４】
前記複数の加減算器は、ｋ個（ｋ≧２）のサンプリング値のうちの一のサンプリング値の加減算符号が所定符号と仮定した場合における、異なる加減算の組み合わせで加減算する回路で構成され、
前記相関値算出部は、ｋ個のコード値のうち、前記一のサンプリング値に対応する一のコード値以外のコード値の組み合わせに基づいて、前記一の加減算器を選択し、前記一の加減算器の出力値の符号を前記一のコード値に基づき変更した値を用いて、前記相関値を算出する、
請求項３に記載の衛星信号捕捉装置。
【請求項５】
ｋは４以上であり、
ｋ個のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて加減算を行う加減算部と、
前記加減算部の加減算結果を記憶する記憶部と、
を更に備え、
前記複数の加減算器は、前記記憶部に記憶されたグループ内の加減算結果を、グループ間での加減算の組み合わせを変えて演算する、
請求項４に記載の衛星信号捕捉装置。
【請求項６】
前記受信信号は、Ｎ［Ｈｚ］でＢＰＳＫ（Binary Phase Shift Keying）変調された信号を含み、
前記サンプリングの周波数は、Ｍ（＞２Ｎ）［Ｈｚ］であり、
前記複数の加減算器は、前記レプリカコードをＭ［Ｈｚ］でサンプリングした場合に生じ得るコード値の時系列変化に対応する加減算符号の組み合わせを加減算する回路で構成される、
請求項３〜５の何れか一項に記載の衛星信号捕捉装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、衛星信号を捕捉する方法等に関する。
【背景技術】
【０００２】
衛星信号を利用した測位システムとしては、ＧＰＳ（Global Positioning System）が広く知られており、携帯型電話機やカーナビゲーション装置等に内蔵された位置算出装置に利用されている。ＧＰＳでは、複数のＧＰＳ衛星の位置や各ＧＰＳ衛星から位置算出装置までの擬似距離等の情報に基づいて位置算出装置の位置座標と時計誤差とを求める位置算出計算を行う。
【０００３】
ＧＰＳ衛星から送出されるＧＰＳ衛星信号は、Ｃ／Ａ（Coarse and Acquisition）コードと呼ばれるＧＰＳ衛星毎に異なる拡散符号で変調されている。位置算出装置は、微弱なＧＰＳ衛星信号を捕捉するために、受信したＣ／Ａコードの信号（受信信号）と、Ｃ／Ａコードを模擬したレプリカコードの信号（レプリカコード）との相関演算を行ってＧＰＳ衛星信号を捕捉する。
【０００４】
具体的には、レプリカコードの位相をずらしつつ相関演算を行い、最も高い相関値が得られた位相がいわゆるコード位相とされて、ＧＰＳ衛星信号が捕捉される。例えば特許文献１には、弱電界環境等において、ＧＰＳ衛星信号の捕捉を高速化するための技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２００６／００５６４９７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の相関演算の場合には、受信信号のサンプリング値とレプリカコードのサンプリング値とを１つ１つ乗算し、積算する処理を、位相のずらし回数分実行する必要があった。そのため、回路規模が大きくならざるを得なかった。この問題は、消費電力が増大する要因の１つでもあった。
【０００７】
本発明は上述した課題に鑑みて為されたものであり、その目的とするところは、受信信号とレプリカコードとの相関演算を少ない演算量で実現する全く新しい手法を提案することにある。
【課題を解決するための手段】
【０００８】
以上の課題を解決するための第１の形態は、衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、前記受信信号と前記レプリカコードとの相関値を算出することと、前記相関値を用いて前記衛星の衛星信号を捕捉することと、を含む衛星信号捕捉方法である。
【０００９】
また、第３の形態として、衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器と、前記複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、前記受信信号と前記レプリカコードとの相関値を算出する相関値算出部と、前記相関値を用いて前記衛星の衛星信号を捕捉する捕捉部と、を備えた衛星信号捕捉装置を構成することとしてもよい。
【００１０】
この第１の形態等によれば、衛星からの受信信号を時系列にサンプリングしたサンプリング値を、異なる加減算の組み合わせで加減算する複数の加減算器のうち、レプリカコードのコード値の時系列変化に対応する加減算の組み合わせを行う一の加減算器の出力値を用いて、受信信号とレプリカコードとの相関値を算出する。そして、算出した相関値を用いて衛星の衛星信号を捕捉する。
【００１１】
これにより、受信信号のサンプリング値とレプリカコードのコード値との乗算を行うことなく、受信信号とレプリカコードとの相関値を算出することができる。演算器を回路で構成する場合、乗算を行う回路は、加減算に比べて多くの回路素子が必要となる。また、プログラムで演算する場合も、乗算のステップ数は加減算のステップ数に比べて格段に多くのステップ数を必要とする。このため、乗算が不要となる効果は極めて大きい。なお、これにより消費電力が削減されるのは勿論である。
【００１２】
第２の形態は、第１の形態の衛星信号捕捉方法において、前記複数の加減算器は、ｋ個（ｋ≧２）のサンプリング値のうちの一のサンプリング値の加減算符号が所定符号と仮定した場合における、異なる加減算の組み合わせで加減算する回路で構成され、前記相関値を算出することは、ｋ個のコード値のうち、前記一のサンプリング値に対応する一のコード値以外のコード値の組み合わせに基づいて、前記一の加減算器を選択することと、前記一の加減算器の出力値の符号を前記一のコード値に基づき変更することと、を含む衛星信号捕捉方法である。
【００１３】
また、第４の形態として、第３の形態の衛星信号捕捉方法において、前記複数の加減算器は、ｋ個（ｋ≧２）のサンプリング値のうちの一のサンプリング値の加減算符号が所定符号と仮定した場合における、異なる加減算の組み合わせで加減算する回路で構成され、前記相関値算出部は、ｋ個のコード値のうち、前記一のサンプリング値に対応する一のコード値以外のコード値の組み合わせに基づいて、前記一の加減算器を選択し、前記一の加減算器の出力値の符号を前記一のコード値に基づき変更した値を用いて、前記相関値を算出する、衛星信号捕捉装置を構成することとしてもよい。
【００１４】
この第２の形態等によれば、複数の加減算器は、ｋ個（ｋ≧２）のサンプリング値のうちの一のサンプリング値の加減算符号が所定符号と仮定した場合における、異なる加減算の組み合わせで加減算する回路で構成される。従って、ｋ個のサンプリング値を異なる加減算の組み合わせで加減算する回路を構成する場合と比べて、回路構成を簡素化することができる。このとき、ｋ個のコード値のうち、一のサンプリング値に対応する一のコード値以外のコード値の組み合わせに基づいて、一の加減算器を選択する。そして、この一の加減算器の出力値の符号を一のコード値に基づき変更した値を用いることで、相関値を簡単に算出することができる。
【００１５】
また、第５の形態として、第４の形態の衛星信号捕捉方法において、ｋは４以上であり、ｋ個のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて加減算を行う加減算部と、前記加減算部の加減算結果を記憶する記憶部と、を更に備え、前記複数の加減算器は、前記記憶部に記憶されたグループ内の加減算結果を、グループ間での加減算の組み合わせを変えて演算する、衛星信号捕捉装置を構成することとしてもよい。
【００１６】
この第５の形態によれば、加減算部は、ｋ個のサンプリング値を２つのグループに分けた各グループ内で、サンプリング値の加減算の組み合わせを変えて加減算を行う。当該加減算部の加減算結果は記憶部が記憶する。そして、複数の加減算器は、記憶部に記憶されたグループ内の加減算結果を、グループ間での加減算の組み合わせを変えて演算する。これにより、ｋ個のサンプリング値を加減算の組み合わせを変えて加減算した場合と同様の結果を得ることができる。
【００１７】
また、第６の形態として、第３〜第５の何れかの形態の衛星信号捕捉装置において、前記受信信号は、Ｎ［Ｈｚ］でＢＰＳＫ（Binary Phase Shift Keying）変調された信号を含み、前記サンプリングの周波数は、Ｍ（＞２Ｎ）［Ｈｚ］であり、前記複数の加減算器は、前記レプリカコードをＭ［Ｈｚ］でサンプリングした場合に生じ得るコード値の時系列変化に対応する加減算符号の組み合わせを加減算する回路で構成される、衛星信号捕捉装置を構成することとしてもよい。
【００１８】
この第６の形態によれば、受信信号は、Ｎ［Ｈｚ］でＢＰＳＫ変調された信号を含み、サンプリングの周波数は、Ｍ（＞２Ｎ）［Ｈｚ］である。そして、複数の加減算器は、レプリカコードをＭ［Ｈｚ］でサンプリングした場合に生じ得るコード値の時系列変化に対応する加減算符号の組み合わせを加減算する回路で構成される。これにより、全てのコード値の時系列変化に対応する加減算符号の組み合わせを加減算する回路を構成する場合と比べて、回路規模を縮小化することができる。
【図面の簡単な説明】
【００１９】
【図１】原理説明における相関値の算出方法の説明図。
【図２】原理説明における相関値の算出方法の説明図。
【図３】携帯型電話機の機能構成の一例を示すブロック図。
【図４】ベースバンド処理回路部の回路構成の一例を示すブロック図。
【図５】第１実施例における相関値の算出方法の説明図。
【図６】第１実施例における相関値算出部の回路構成の一例を示す図。
【図７】衛星信号捕捉用データのデータ構成図。
【図８】衛星信号捕捉処理の流れを示すフローチャート。
【図９】第２実施例の原理の説明図。
【図１０】第２実施例における第２の加減算部の構成の一例を示す図。
【図１１】第２実施例における相関値算出部の回路構成の一例を示す図。
【図１２】変形例における第２の加減算部の構成の一例を示す図。
【発明を実施するための形態】
【００２０】
１．原理
本実施形態における衛星信号捕捉方法について説明する。
ＧＰＳ衛星を利用した位置算出システムにおいて、測位用衛星の一種であるＧＰＳ衛星は、アルマナックやエフェメリス等の衛星軌道データを含む航法メッセージデータを、測位用衛星信号の一種であるＧＰＳ衛星信号に乗せて発信している。
【００２１】
ＧＰＳ衛星信号は、拡散符号の一種であるＣ／Ａ（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）、ＧＡＬＩＬＥＯ等の他の衛星測位システムを利用した位置算出システムであってもよい。
【符号の説明】
【０１５１】
１  携帯型電話機、  １０  ＧＰＳ受信部、  １１  ＲＦ受信回路部、  ２０  ベースバンド処理回路部、  ３０  ホスト処理部、  ４０  操作部、  ５０  表示部、  ５５  音出力部、  ６０  携帯電話用アンテナ、  ７０  携帯電話用無線通信回路部、  ８０  記憶部、  ９０  時計部、  ２１０  サンプルメモリ、  ２２０  キャリア除去部、  ２３０  第１の加減算部、  ２４０  バッファ、  ２５０  第２の加減算部、  ２６０  相関値算出部、  ２７０  処理部、  ２９０  記憶部
【図１】
2013142607.tif 000003
【図２】
2013142607.tif 000004
【図３】
2013142607.tif 000005
【図４】
2013142607.tif 000006
【図５】
2013142607.tif 000007
【図６】
2013142607.tif 000008
【図７】
2013142607.tif 000009
【図８】
2013142607.tif 000010
【図９】
2013142607.tif 000011
【図１０】
2013142607.tif 000012
【図１１】
2013142607.tif 000013
【図１２】
2013142607.tif 000014