(57)【要約】      （修正有）【課題】マルチパスの影響を軽減させる新たな手法を提供する。【解決手段】ＧＰＳ受信機は、ＧＰＳ衛星信号の捕捉の際に、受信コード信号との相関演算を行う相関用コードとして、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間を所定値とした相関用コードを用いる。具体的には、チップ中央期間のコード値をゼロとした相関用コードや、チップ中央期間のコード値をレプリカコードの値とゼロとの繰り返しとした相関用コード、チップ中央期間のうち、前半期間のコード値をレプリカコードの値とゼロとの繰り返しとし、後半期間のコード値をゼロとした相関用コード、を用いる。【選択図】図４
2016148594.tif 000002
【特許請求の範囲】
【請求項１】
チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成することと、
測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行うことと、
を含む相関処理方法。
【請求項２】
前記生成することは、前記チップ中央期間のコード値をゼロとして前記相関用コードを生成することを含む、
請求項１に記載の相関処理方法。
【請求項３】
前記生成することは、チップ中央期間のうち、少なくとも冒頭のコード値を、レプリカコードの値とゼロとの繰り返しとして前記相関用コードを生成することを含む、
請求項１に記載の相関処理方法。
【請求項４】
前記生成することは、チップ中央期間のコード値を、レプリカコードの値とゼロとの繰り返しとして前記相関用コードを生成することを含む、
請求項３に記載の相関処理方法。
【請求項５】
前記生成することは、チップ中央期間の前半のコード値を、レプリカコードの値とゼロとの繰り返しとし、後半のコード値をゼロとして前記相関用コードを生成することを含む、
請求項３に記載の相関処理方法。
【請求項６】
チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成する相関用コード生成部と、
測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行う相関演算部と、
を備えた相関処理回路。
【請求項７】
コンピューターに、
チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成することと、
測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行うことと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、測位用衛星信号に対する相関処理方法等に関する。
【背景技術】
【０００２】
現在、衛星信号を用いた衛星測位システムとして、ＧＰＳ（Global Positioning System）やＱＺＳＳ（Quasi Zenith Satellite System）、ＧＬＯＮＡＳＳ（GLObal NAvigation Satellite System）、ＢｅｉＤｏｕ（北斗衛星導航系統）、Ｇａｌｉｌｅｏ（ガリレオ）といった様々な衛星測位システムが知られている。
【０００３】
このような衛星測位システムにおける測位誤差の大きな要因の一つとして、マルチパスがある。マルチパスは、衛星信号の受信信号として、建物や地面への反射や回折等による衛星信号の間接波信号が強く含まれて受信される現象である。そこで、マルチパスによる測位誤差を低減させるための技術の一例として、レプリカコードの一部、詳細にはビット遷移の近傍以外を無効値（ゼロ）とし、ビット遷移近傍のコード値の正負を入れ替えたコードを相関用コードとすることで、間接波信号に係る相関値を低減する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−１４２５０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の特許文献１に記載の技術では、レプリカコードの一部を無効値（ゼロ）とした相関用コードを利用して相関演算をしているため、得られる相関値が小さくなる。この結果、相関値のピークが検出し難くなり、受信感度が劣化するという問題がある。
【０００６】
本発明は、上記事情に鑑みてなされたものであり、その目的とするところは、マルチパスの影響を軽減させる新たな手法を提案することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するための第１の形態は、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成することと、測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行うことと、を含む相関処理方法である。
【０００８】
また、他の形態として、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成する相関用コード生成部と、測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行う相関演算部と、を備えた相関処理回路を構成しても良い。
【０００９】
更なる他の形態として、コンピューターに、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間のコード値を所定値とする相関用コードを生成することと、測位用衛星からの受信信号を復調して得られた受信コード信号と、前記相関用コードとの相関演算を行うことと、を実行させるためのプログラムを構成しても良い。
【００１０】
この第１の形態等によれば、受信コード信号との相関演算を行う相関用コードとして、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間を所定値とした相関用コードが用いられる。これにより、マルチパスの影響を低減することが可能となる。
【００１１】
第２の形態として、第１の形態の相関処理方法であって、前記生成することは、前記チップ中央期間のコード値をゼロとして前記相関用コードを生成することを含む、相関処理方法を構成しても良い。
【００１２】
この第２の形態によれば、相関用コードのチップ中央期間のコード値がゼロとされる。つまり、チップ中央期間に相当する相関値はゼロとなり、チップ境界期間の相関値のみが有効となる。これにより、受信コード信号と相関用コードとの相関値に表れるマルチパスの影響を低減することができる。
【００１３】
第３の形態として、第１の形態の相関処理方法であって、前記生成することは、チップ中央期間のうち、少なくとも冒頭のコード値を、レプリカコードの値とゼロとの繰り返しとして前記相関用コードを生成することを含む、相関処理方法を構成しても良い。
【００１４】
この第３の形態によれば、相関用コードのチップ中央期間の少なくとも冒頭のコード値が、レプリカコードの値とゼロとの繰り返しとされる。これにより、相関用コードのチップ中央期間のコード値をゼロとする場合と比較して、得られる相関値の低減量を抑えることが可能となる。
【００１５】
第４の形態として、第３の形態の相関処理方法であって、前記生成することは、チップ中央期間のコード値を、レプリカコードの値とゼロとの繰り返しとして前記相関用コードを生成することを含む、相関処理方法を構成しても良い。
【００１６】
この第４の形態によれば、相関用コードのチップ中央期間のコード値が、レプリカコードの値とゼロとの繰り返しとされる。これにより、相関用コードのチップ中央期間のコード値をゼロとする場合と比較して、得られる相関値の低減量を抑えることが可能となる。
【００１７】
第５の形態として、第３の形態の相関処理方法であって、前記生成することは、チップ中央期間の前半のコード値を、レプリカコードの値とゼロとの繰り返しとし、後半のコード値をゼロとして前記相関用コードを生成することを含む、相関処理方法を構成しても良い。
【００１８】
この第５の形態によれば、相関用コードは、チップ中央期間の前半のコード値が、レプリカコードの値とゼロとの繰り返しとされ、後半のコード値がゼロとされる。間接波信号は直接波信号に対して遅れた信号となるため、マルチパス信号において、間接波信号の成分は各チップの後半期間に多く含まれる。このため、相関用コードのチップ中央期間の後半のコード値をゼロとすることで、受信コード信号と相関用コードとの相関値に表れるマルチパスの影響を効果的に低減することができる。
【図面の簡単な説明】
【００１９】
【図１】相関値のピーク検出の説明図。
【図２】マルチパス信号に対する相関値の一例。
【図３】各実施例の共通構成である携帯型電子機器の機能構成図。
【図４】第１実施例における相関用コードの説明図。
【図５】第１実施例におけるＧＰＳ受信機の機能構成図。
【図６】チップ期間設定データのデータ構成例。
【図７】第１実施例におけるベースバンド処理のフローチャート。
【図８】第２実施例における相関用コードの説明図。
【図９】第２実施例におけるＧＰＳ受信機の機能構成図。
【図１０】第２実施例におけるベースバンド処理のフローチャート。
【図１１】第３実施例における相関用コードの説明図。
【図１２】第３実施例におけるＧＰＳ受信機の機能構成図。
【図１３】第３実施例におけるベースバンド処理のフローチャート。
【図１４】直接波信号と相関用コードとの相関結果の一例。
【図１５】マルチパス信号と相関用コードとの相関結果の一例。
【図１６】第１実施例の相関用コードを用いた場合の位相誤差の一例。
【図１７】第２実施例の相関用コードを用いた場合の位相誤差の一例。
【図１８】第３実施例の相関用コードを用いた場合の位相誤差の一例。
【発明を実施するための形態】
【００２０】
以下、本発明を適用した実施形態の一例について説明する。本実施形態では、衛星測位システムとしてＧＰＳを例に挙げて説明するが、他の衛星測位システムに本発明を適用することとしてもよい。
【００２１】
［概要］
ＧＰＳ衛星から送出されるＧＰＳ衛星信号は、アルマナックやエフェメリス等の衛星軌道情報を含む航法メッセージを、拡散符号の一種であるＣ／Ａ（Coarse and Acquisition）コードによってスペクトラム拡散変調した信号であり、１．５７５４２［ＧＨｚ］の搬送波に重畳されている。Ｃ／Ａコードは、コード長１０２３チップを１ＰＮフレームとする繰り返し周期１ミリ秒の擬似ランダム雑音符号であり、各ＧＰＳ衛星に固有のコードである。
【００２２】
ＧＰＳ受信機は、ＧＰＳ衛星信号の受信信号と、受信機内部で発生させた擬似的なＣ／Ａコードであるレプリカコードとの相関演算を行うことでＧＰＳ衛星信号を捕捉し、捕捉したＧＰＳ衛星信号に重畳して搬送されている航法メッセージに基づいて、ＧＰＳ受信機の位置や時計誤差を求めている。
【００２３】
ＧＰＳ衛星がＧＰＳ衛星信号を送信する際の周波数（搬送周波数）は、１．５７５４２［ＧＨｚ］と予め規定されているが、ＧＰＳ衛星やＧＰＳ受信機の移動により生じるドップラーの影響等により、ＧＰＳ受信機がＧＰＳ衛星信号を受信する際の周波数である受信周波数は、必ずしも規定の搬送波周波数とは一致しない。このため、ＧＰＳ受信機は、レプリカコードの周波数及び位相を変化させながら受信信号とレプリカコードとの相関演算を行い、得られた相関値のピークを検出することで、受信周波数及びコード位相を特定する。
【００２４】
図１は、相関値がピークとなる位相（ピーク位相）の検出の説明図である。図１では、横軸をコード位相、縦軸を相関値として、Ｃ／Ａコードの自己相関値の一例を示している。自己相関値であるため、ＧＰＳ衛星信号の理想的な受信信号とレプリカコードとの相関値といえる。なお、相関値は、相関値の大きさ（絶対値）を意味することとする。
【００２５】
Ｃ／Ａコードの自己相関値は、例えば、ピーク値（最大値）を頂点とする左右対称の略三角形の形状で表される。つまり、ピーク位相から同じ量だけ位相が遅れた位相での相関値と、進んだ位相での相関値とは等しくなる。そのため、現在追跡しているコード位相（Ｐｕｎｃｔｕａｌ位相）に対して一定量だけ遅れた位相（Ｌａｔｅ位相）における相関値と、一定量だけ進んだ位相（Ｅａｒｌｙ位相）における相関値とを用いれば、コード位相を特定できる。つまり、Ｌａｔｅ位相の相関値（Ｌａｔｅ相関値）と、Ｅａｒｌｙ位相の相関値（Ｅａｒｌｙ相関値）とが等しくなる位相をサーチすることで、Ｐｕｎｃｔｕａｌ位相を、ピーク位相として検出することができる。
【００２６】
ところで、マルチパス環境では、ＧＰＳ衛星から送信されるＧＰＳ衛星信号である直接波信号に、建物や地面に反射した反射波や障害物を透過した透過波、障害物を回折した回折波等の間接波信号が重畳した信号（マルチパス信号）をＧＰＳ受信機が受信する。
【００２７】
図２は、マルチパス信号に対する相関結果の一例を示す図である。図２では、横軸をコード位相、縦軸を相関値として、直接波信号と、間接波信号と、この直接波信号と間接波信号とを合成した合成波信号（マルチパス信号）とのそれぞれに対する相関値のグラフの一例を示している。
【００２８】
間接波信号に対する相関値は、直接波信号に対する相関値と同様に略三角形状をなすが、そのピーク値（相関ピーク値）の大きさは直接波信号の相関ピーク値よりも小さく、また、ピーク位相は直接波のピーク位相よりも遅れている。これは、ＧＰＳ衛星から送出されたＧＰＳ衛星信号が建物や地面に反射したり障害物を透過すること等によって信号強度が弱められたり、伝搬距離が長くなることによるものである。
【００２９】
そして、マルチパス信号に対する相関値は、直接波信号の相関値と間接波信号の相関値との和となるため、そのピーク位相は直接波信号のピーク位相と一致するが、このピーク位相の左右で傾斜が異なる。具体的には、直接波信号の相関ピーク値に対して間接波信号の相関ピーク値が遅れているため、マルチパス信号に対する相関値は、Ｌａｔｅ位相側の傾きが変形し、その傾きのコード位相方向における長さが大きくなる。このため、マルチパス信号におけるＰｕｎｃｔｕａｌ位相は、ピーク位相に一致しない。つまり、マルチパス環境では、受信信号とレプリカコードとの相関値のピーク検出によるコード位相の特定では、特定されるコード位相に誤差が生じ得る。これがマルチパス環境の影響である。
【００３０】
そこで、本実施形態では、マルチパス環境の影響を軽減するため、捕捉対象のＧＰＳ衛星のレプリカコードに基づいて、相関用コードを新たに生成し、レプリカコードではなく、この相関用コードとＧＰＳ衛星からの受信信号との相関演算を行って、衛星信号を捕捉する。本実施形態には、この新たに生成する相関用コードの違いによる具体的な３つの実施例がある。
【００３１】
［実施例共通構成］
３つの実施例に共通する機器構成として、ＧＰＳ受信機能を備えた携帯型電子機器の例を説明する。携帯型電子機器は、例えばスマートフォンや携帯電話、ノートパソコン、腕時計型機器、スマートグラスなどとして構成することができる。また、携帯型のナビゲーション機器として構成することもできる。また、カーナビゲーションに応用することもできる。
【００３２】
図３は、ＧＰＳ受信機能を備えた携帯型電子機器１の機能構成図である。図３に示すように、携帯型電子機器１は、ＧＰＳ受信機１０と、メイン処理部２０と、操作部２１と、表示部２２と、音声出力部２３と、時計部２４と、通信部２５と、メイン記憶部２６と、を備えて構成される。
【００３３】
ＧＰＳ受信機１０は、ＧＰＳ衛星信号を受信し、受信したＧＰＳ衛星信号に重畳して搬送されているＧＰＳ衛星の軌道情報等の航法メッセージに基づいて、ＧＰＳ受信機１０の位置や時計誤差を算出する。ＧＰＳ受信機１０は、相関処理を行う相関処理回路として、ベースバンド処理回路部を有する。
【００３４】
また、ＧＰＳ受信機１０は、３つの実施例に対応して、ＧＰＳ受信機１０Ａ〜１０Ｃの構成を採用することができる。各実施例については詳細に後述する。
【００３５】
メイン処理部２０は、ＣＰＵ等のプロセッサーで構成される演算処理装置であり、メイン記憶部２６に記憶されたシステムプログラム等の各種プログラムに従って携帯型電子機器１の各部を統括的に制御する。また、ＧＰＳ受信機１０の測位結果に基づいて、各種の処理を実行する。例えば、現在位置を表示したり、時計部２４が算出する時刻を補正したり、現在位置に対応するタイムゾーンを判定して標準時からの時差を算出し、時計部２４が算出する時刻を現地に対応する時刻に補正したりすることができる。
【００３６】
操作部２１は、タッチパネルやボタンスイッチで構成される入力装置であり、ユーザーの操作に応じた操作信号をメイン処理部２０に出力する。表示部２２は、ＬＣＤ（Liquid Crystal Display）等で構成される表示装置であり、メイン処理部２０からの表示信号に基づく各種表示を行う。音声出力部２３は、スピーカー等で構成される音声出力装置であり、メイン処理部２０からの音信号に基づく各種音声出力を行う。
【００３７】
時計部２４は、内部時計であり、水晶発振器等を有する発振回路によって構成され、現在時刻や、指定されたタイミングからの経過時間を計測する。通信部２５は、無線ＬＡＮ（Local Area Network）やＢｌｕｅｔｏｏｔｈ（登録商標）等の無線通信装置であり、外部装置との通信を行う。
【００３８】
メイン記憶部２６は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）等で構成される記憶装置であり、メイン処理部２０が携帯型電子機器１の各種機能を実現するためのプログラムやデータを記憶するとともに、メイン処理部２０の作業領域として用いられ、メイン処理部２０の演算結果や、操作部２１からの操作データ等を一時的に格納する。
【００３９】
それでは、次に３つの実施例を説明する。各実施例の説明では、当該実施例に用いる相関用コードと、当該実施例に係るＧＰＳ受信機１０の構成及びベースバンド処理の流れについて説明する。３つの実施例を説明した後に、３つの実施例それぞれに対する実験結果を説明する。
【００４０】
［第１実施例］
先ず、第１実施例を説明する。
【００４１】
＜相関用コード＞
図４は、第１実施例における相関用コードを説明する図である。図３では、上側にレプリカコードの一例を示し、下側にこのレプリカコードに基づく相関用コードを示している。
【００４２】
レプリカコードは、各チップの値が「１」及び「−１」の何れかで構成される固有の系列（ゴールド符号）であり、ＧＰＳ衛星毎に決まっている。
【００４３】
第１実施例の相関用コードは、レプリカコードのチップ境界に係るチップ境界期間のコード値を、対応するレプリカコードの値そのものとし、チップ境界期間以外の期間であるチップ中央期間のコード値をゼロとする。例えば、レプリカコードのコード値が「−１」から「１」へ遷移するチップ境界では、相関用コードのコード値も「−１」から「１」へ変化する。また、レプリカコードのコード値が「−１」或いは「１」のままで遷移しないチップ境界では、相関用コードのコード値も、レプリカコードの値のまま変化しない。しかし、チップ境界の間のチップ中央期間のコード値はゼロ一定とする。言い換えれば、レプリカコードの各チップに対して、各チップの前部及び後部の短期間のみをレプリカコードのコード値そのままとし、それ以外の期間（各チップの中央期間）のコード値をゼロとしたコードが、第１実施例の相関用コードである。
【００４４】
チップ境界期間及びチップ中央期間の長さは適宜設定することができ、例えば、チップ境界期間を０．２チップ分の長さ、チップ中央期間を０．８チップ分の長さ、とすることができる。
【００４５】
＜構成＞
【００４６】
図５は、第１実施例におけるＧＰＳ受信機１０Ａの機能構成図である。図５によれば、ＧＰＳ受信機１０Ａは、ＧＰＳアンテナ１００と、ＲＦ受信回路部２００と、ベースバンド処理回路部３００Ａと、を備えて構成される。なお、ＲＦ受信回路部２００とベースバンド処理回路部３００Ａとは、それぞれ別のＬＳＩ（Large Scale Integration）として製造することも、１チップとして製造することも可能である。
【００４７】
ＧＰＳアンテナ１００は、ＧＰＳ衛星から送信されているＧＰＳ衛星信号を含むＲＦ（Radio Frequency）信号を受信するアンテナである。ＲＦ受信回路部２００は、ＧＰＳアンテナ１００によって受信されたＲＦ信号を中間周波数の信号にダウンコンバートし、増幅等した後、デジタル信号に変換して出力する。なお、中間周波数にダウンコンバートせず、直接ベースバンド信号に変換するダイレクトコンバージョン方式を採用することもできる。
【００４８】
ベースバンド処理回路部３００Ａは、ＢＢ処理部３１０Ａと、ＢＢ記憶部３３０Ａとを有し、ＲＦ受信回路部２００による受信信号のデータを用いて、ＧＰＳ衛星信号を捕捉し、捕捉したＧＰＳ衛星信号から取り出した時刻情報や衛星軌道情報等を用いて、ＧＰＳ受信機の位置や時計誤差を測位結果として算出する。このベースバンド処理回路部３００Ａが、相関処理回路に相当する。
【００４９】
ＢＢ処理部３１０Ａは、ＣＰＵやＤＳＰ等のプロセッサーで実現され、ベースバンド処理回路部３００Ａの各部を統括的に制御する。また、ＢＢ処理部３１０Ａは、レプリカコード生成部３１１と、相関用コード生成部３１２Ａと、相関演算部３１３と、衛星捕捉部３１４と、位置算出部３１５と、を有する。
【００５０】
レプリカコード生成部３１１は、衛星捕捉部３１４によって指定されたＰＲＮ（Pseudo Random Noise）番号（衛星番号）に対応するレプリカコードを生成する。なお、ＧＰＳ衛星信号を捕捉するために、従来と同じく、レプリカコードの周波数や移相量を変えてレプリカコードを生成するが、説明の簡明化のため、詳細な説明を省略する。
【００５１】
相関用コード生成部３１２Ａは、レプリカコード生成部３１１によって生成されたレプリカコードをもとに、相関用コードを生成する。具体的には、図４に示したように、チップ境界期間についてはレプリカコードの値をコード値とし、チップ中央期間についてはコード値をゼロとして、相関用コードを生成する。
【００５２】
ここで、チップ境界期間、及び、チップ中央期間それぞれの長さは、チップ期間設定データとして定められている。図６は、チップ期間設定データ３３２のデータ構成の一例を示す図である。図６によれば、チップ期間設定データ３３２は、チップ境界期間、及び、チップ中央期間の各期間それぞれについて、チップの開始時点を起点とし、チップ周期に対する比率として当該期間の長さを定めている。
【００５３】
なお、各期間の長さやタイミングの計時については、ＢＢ処理部３１０Ａの内部クロック信号を利用する。クロック信号の周期は一定であるため、クロック信号の信号変化をカウントすることで、各期間の長さや到来するタイミング（チップの開始時点など）を判定することができる。
【００５４】
相関演算部３１３は、受信信号を復調した受信コード信号と、相関用コード生成部３１２Ａによって生成された相関用コードとの相関演算を行う。
【００５５】
衛星捕捉部３１４は、ＧＰＳ衛星を捕捉する。具体的には、レプリカコード生成部３１１に、捕捉対象のＧＰＳ衛星のＰＲＮ番号、周波数及び移相量を指定し、対応するレプリカコードを生成させ、相関用コード生成部３１２Ａに、このレプリカコードに応じた相関用コードを生成させ、相関演算部３１３に、この相関用コードと受信信号との相関演算を行わせる。この一連の処理を、レプリカコード生成部３１１に生成させるレプリカコードの周波数及び移相量を変化させながら繰り返し、相関演算部３１３による相関演算結果である相関値のピークが閾値以上であるか否かによって、ＧＰＳ衛星信号を捕捉したかを判定する。ＧＰＳ衛星を捕捉したと判定したならば、相関値のピークを検出した周波数及び位相それぞれを、捕捉したＧＰＳ衛星信号の受信周波数及びコード位相とする。
【００５６】
位置算出部３１５は、衛星捕捉部３１４によって捕捉されたＧＰＳ衛星信号から衛星軌道データ３３３を取得したり、捕捉したＧＰＳ衛星信号の受信周波数及びコード位相を含むメジャメントデータ３３４を用いた位置算出処理を行って、ＧＰＳ受信機１０の位置や時計誤差（クロックバイアス）を算出する。位置算出処理としては、例えば、最小二乗法やカルマンフィルター等の公知の手法を適用することができる。
【００５７】
位置算出部３１５によって算出された位置や時計誤差は、位置算出結果データ３３５として蓄積記憶される。また、衛星軌道データ３３３は、アルマナックやエフェメリス等のデータであり、受信したＧＰＳ衛星信号をデコードすることで取得される。メジャメントデータ３３４は、受信したＧＰＳ衛星信号の受信周波数やコード位相、ドップラー周波数のデータであり、相関演算部３１３による相関演算結果に基づいて取得される。
【００５８】
ＢＢ記憶部３３０Ａは、ＲＯＭやＲＡＭ等の記憶装置で実現され、ＢＢ処理部３１０Ａがベースバンド処理回路部３００Ａを統括的に制御するためのシステムプログラムや、各種機能を実現するためのプログラムやデータ等を記憶するとともに、ＢＢ処理部３１０Ａの作業領域として用いられ、ＢＢ処理部３１０Ａの演算結果等が一時的に格納される。また、ＢＢ処理部３１０Ａには、ベースバンドプログラム３３１Ａと、チップ期間設定データ３３２と、衛星軌道データ３３３と、メジャメントデータ３３４と、位置算出結果データ３３５と、が記憶される。
【００５９】
＜処理の流れ＞
図７は、第１実施例におけるベースバンド処理の流れを説明するフローチャートである。この処理は、ＢＢ処理部３１０Ａが、ベースバンドプログラム３３１Ａに従って実行する処理である。
【００６０】
先ず、ＢＢ処理部３１０Ａは、捕捉対象のＧＰＳ衛星（捕捉対象衛星）を選定する（ステップＡ１）。そして、選定した捕捉対象衛星それぞれを対象としたループＡの処理を行う。ループＡでは、所定期間（例えば、Ｃ／Ａコード数周期分）の間、所定のサンプリング期間間隔で、ループＢの処理を繰り返す。ここで、サンプリング間隔は、ＢＢ処理部３１０Ａのクロック信号をカウントして計時する。例えば、１チップの１０２３分の１の時間間隔とすることができる。以下では、ループＢの処理のタイミングを「サンプルタイミング」と称して説明する。
【００６１】
ループＢでは、先ず、レプリカコード生成部３１１が、捕捉対象衛星のＰＲＮ番号に対応するレプリカコードの値を生成する（ステップＡ３）。次いで、相関用コード生成部３１２Ａが、サンプルタイミングが、チップ境界期間であるかチップ中央期間であるかを判定し、判定した期間に応じて相関用コード値を生成する。すなわち、チップ境界期間ならば（ステップＡ５：ＹＥＳ）、レプリカコードの値を相関用コードのコード値とする（ステップＡ７）。一方、サンプルタイミングがチップ境界期間でない、つまりチップ中央期間ならば（ステップＡ５：ＮＯ）、ゼロを相関用コードのコード値とする（ステップＡ９）。そして、相関演算部が、受信コード信号と、生成された相関用コード値との相関演算を行い、得られた相関値を積算する（ステップＡ１１）。ループＢはこのように行われる。
【００６２】
所定期間に亘るループＢの処理が終了すると、衛星捕捉部３１４は、得られた相関値のピークを検出することで、対象の捕捉対象衛星を捕捉できたかを判定する（ステップＡ１３）。ループＡはこのように行われる。
【００６３】
全ての捕捉対象衛星を対象としたループＡの処理を終了すると、位置算出部３１５が、捕捉できたＧＰＳ衛星それぞれについて取得された衛星軌道データやメジャメントデータを用いた位置算出処理を行って、ＧＰＳ受信機１０Ａの位置や時計誤差（クロックバイアス）を算出する（ステップＡ１５）。以上の処理を行うと、ＢＢ処理部３１０Ａは、ベースバンド処理を終了する。
【００６４】
［第２実施例］
次に、第２実施例を説明する。なお、以下において、上述の第１実施例と同一の構成要素については同符号を付し、詳細な説明を省略或いは簡略する。
【００６５】
＜相関用コード＞
図８は、第２実施例における相関用コードを説明する図である。図８では、上側にレプリカコードの一例を示し、下側にこのレプリカコードに基づく相関用コードを示している。
【００６６】
第２実施例の相関用コードは、レプリカコードのチップ境界に係るチップ境界期間のコード値を、対応するレプリカコードの値そのものとする。そして、チップ中央期間のコード値を、対応するレプリカコードの値と、ゼロとの繰り返しとする。
【００６７】
＜構成＞
図９は、第２実施例におけるＧＰＳ受信機１０Ｂの機能構成図である。
【００６８】
相関用コード生成部３１２Ｂは、レプリカコード生成部３１１によって生成されたレプリカコードをもとに、相関用コードを生成する。具体的には、図８に示したように、チップ境界期間についてはレプリカコードの値をコード値とし、チップ中央期間については、所定のサンプリング時間間隔でレプリカコードの値とゼロとを繰り返すようにコード値を定めて、相関用コードを生成する。サンプリング時間間隔は、第１実施例と同様、クロック信号から定めることができ、例えばクロックタイミングの到来時間間隔をサンプリング時間間隔とすることができる。
【００６９】
＜処理の流れ＞
図１０は、第２実施例におけるベースバンド処理の流れを説明するフローチャートである。この処理は、ＢＢ処理部３１０Ｂが、ベースバンドプログラム３３１Ｂに従って実行する処理である。
【００７０】
先ず、ベースバンド処理回路部３００ＢのＢＢ処理部３１０Ｂは、捕捉対象のＧＰＳ衛星（捕捉対象衛星）を選定する（ステップＡ１）。そして、選定した捕捉対象衛星それぞれを対象としたループＣの処理を行う。ループＣでは、所定期間（例えば、Ｃ／Ａコード数周期分）の間、所定のサンプリング時間間隔で、ループＤの処理を繰り返す。ここで、サンプリング時間は、第１実施例と同様、クロック信号をカウントして計時する。例えば、１チップの１０２３分の１の時間間隔とすることができる。以下では、ループＤの処理のタイミングを「サンプルタイミング」と称して説明する。
【００７１】
ループＤでは、先ず、レプリカコード生成部３１１が、捕捉対象衛星のＰＲＮ番号に対応するレプリカコードの値を生成する（ステップＡ３）。次いで、相関用コード生成部３１２Ｂが、サンプルタイミングが、チップ境界期間であるかクロック中央期間であるかを判定し、判定した期間に応じて相関用コード値を生成する。
【００７２】
すなわち、サンプルタイミングがチップ境界期間ならば（ステップＡ５：ＹＥＳ）、レプリカコードの値を、相関用コードのコード値とする（ステップＡ７）。一方、チップ境界期間でない、つまりチップ中央期間ならば（ステップＡ５：ＮＯ）、前回の相関用コード値に応じて今回の相関用コード値を決定する。すなわち、前回の相関用コード値が「０」ならば（ステップＢ９：ＹＥＳ）、レプリカコードの値を相関用コードのコード値とし（ステップＢ１１）、前回の相関用コード値が「０」でないならば（ステップＢ９：ＮＯ）、ゼロを相関用コードのコード値とする（ステップＢ１３）。これにより、チップ中央期間のコード値が、所定のサンプリング時間間隔でレプリカコードの値とゼロとを繰り返す相関用コードを生成することができる。そして、相関演算部３１３が、受信コード信号と、生成された相関用コード値との相関演算を行い、得られた相関値を積算する（ステップＡ１１）。ループＤはこのように行われる。
【００７３】
所定期間に亘るループＤの処理が終了すると、衛星捕捉部３１４は、得られた相関値のピークを検出することで、対象の捕捉対象衛星を捕捉できたかを判定する（ステップＡ１３）。ループＣはこのように行われる。
【００７４】
全ての捕捉対象衛星を対象としたループＣの処理を終了すると、位置算出部３１５が、捕捉できたＧＰＳ衛星それぞれについて取得された衛星軌道データやメジャメントデータを用いた位置算出処理を行って、ＧＰＳ受信機１０Ｂの位置や時計誤差（クロックバイアス）を算出する（ステップＡ１５）。以上の処理を行うと、ＢＢ処理部３１０Ｂは、ベースバンド処理を終了する。
【００７５】
［第３実施例］
次に、第３実施例を説明する。なお、以下において、上述の第１実施例及び第２実施例と同一の構成要素については同符号を付し、詳細な説明を省略する。
【００７６】
＜相関用コード＞
図１１は、第３実施例における相関用コードを説明する図である。図１１では、上側にレプリカコードの一例を示し、下側にこのレプリカコードに基づく相関用コードを示している。
【００７７】
第３実施例の相関用コードは、レプリカコードのチップ境界に係るチップ境界期間のコード値を、対応するレプリカコードの値そのものとする。そして、チップ中央期間については、チップ中央期間の前半期間（チップ境界を起点として０．５チップの経過時点であるチップ中央時点までの期間：冒頭期間）のコード値を、レプリカコードの値と、ゼロとの繰り返しとし、チップ中央機関の後半期間のコード値をゼロとする。
【００７８】
＜構成＞
図１２は、第３実施例におけるＧＰＳ受信機１０Ｃの機能構成図である。
【００７９】
相関用コード生成部３１２Ｃは、レプリカコード生成部３１１によって生成されたレプリカコードをもとに、相関用コードを生成する。具体的には、図１１に示したように、チップ境界期間についてはレプリカコードの値をコード値とする。また、チップ中央期間については、前半期間を所定のサンプリング時間間隔でレプリカコードの値とゼロとの繰り返しとし、後半期間をゼロとして、相関用コードを生成する。サンプリング時間間隔は、第１実施例と同様、クロック信号から定めることができ、例えばクロックタイミングの到来時間間隔をサンプリング時間間隔とすることができる。
【００８０】
＜処理の流れ＞
図１３は、第３実施例におけるベースバンド処理の流れを説明するフローチャートである。この処理は、ＢＢ処理部３１０Ｃが、ベースバンドプログラム３３１Ｃに従って実行する処理である。
【００８１】
先ず、ベースバンド処理回路部３００ＣのＢＢ処理部３１０Ｃは、捕捉対象のＧＰＳ衛星（捕捉対象衛星）を選定する（ステップＡ１）。そして、選定した捕捉対象衛星それぞれを対象としたループＥの処理を行う。ループＥでは、所定期間（例えば、Ｃ／Ａコード数周期分）の間、所定のサンプリング時間間隔で、ループＦの処理を繰り返す。ここで、サンプリング時間は、第１実施例と同様、クロック信号をカウントして計時する。例えば、１チップの１０２３分の１の時間間隔とすることができる。以下では、ループＥの処理のタイミングを「サンプルタイミング」と称して説明する。
【００８２】
ループＦでは、先ず、レプリカコード生成部３１１が、捕捉対象衛星のＰＲＮ番号に対応するレプリカコードの値を生成する（ステップＡ３）。次いで、相関用コード生成部３１２Ｃが、サンプルタイミングが、チップ境界期間であるかクロック中央期間であるかを判定し、判定した期間に応じて相関用コード値を生成する。
【００８３】
すなわち、サンプルタイミングがチップ境界期間ならば（ステップＡ５：ＹＥＳ）、レプリカコードの値を、相関用コードのコード値とする（ステップＡ７）。一方、チップ境界期間でない、つまりチップ中央期間ならば（ステップＡ５：ＮＯ）、更に、サンプルタイミングがチップ中央期間の前半期間であるか後半期間であるかを判定する。前半期間ならば（ステップＣ９：ＹＥＳ）、前回の相関用コード値に応じて今回の相関用コード値を決定する。すなわち、前回の相関用コード値が「０」ならば（ステップＣ１１：ＹＥＳ）、レプリカコードの値を相関用コードのコード値とし（ステップＣ１３）、前回の相関用コード値が「０」でないならば（ステップＣ１１：ＮＯ）、ゼロを相関用コードのコード値とする（ステップＣ１５）。これにより、チップ中央期間の前半期間のコード値が、所定のサンプリング時間間隔でレプリカコードの値とゼロとを繰り返す相関用コードを生成することができる。一方、サンプルタイミングがチップ中央期間の前半期間でないならば（ステップＣ９：ＮＯ）、ゼロを相関用コードのコード値とする（ステップＣ１５）。そして、相関演算部３１３が、受信コード信号と、生成された相関用コード値との相関演算を行い、得られた相関値を積算する（ステップＡ１１）。ループＦは、このように行われる。
【００８４】
所定期間に亘るループＦの処理が終了すると、衛星捕捉部３１４は、得られた相関値のピークを検出することで、対象の捕捉対象衛星を捕捉できたかを判定する（ステップＡ１３）。ループＥはこのように行われる。
【００８５】
全ての捕捉対象衛星を対象としたループＥの処理を終了すると、位置算出部３１５が、捕捉できたＧＰＳ衛星それぞれについて取得された衛星軌道データやメジャメントデータを用いた位置算出処理を行って、ＧＰＳ受信機１０Ｃの位置や時計誤差（クロックバイアス）を算出する（ステップＡ１５）。以上の処理を行うと、ＢＢ処理部３１０Ｃは、ベースバンド処理Ｃを終了する。
【００８６】
［実験結果］
続いて、第１〜第３実施例それぞれの実験結果を説明する。この実験では、直接波信号及びマルチパス信号のそれぞれを受信信号とした場合について、第１〜第３実施例それぞれの相関用コードとの相関演算を行った。図１４は直接波信号に対する相関結果を示し、図１５はマルチパス信号に対する相関結果を示している。図１４，図１５では、何れも、横軸を位相（コード位相）、縦軸を相関値として、従来と同じくレプリカコードそのもので相関値を算出した場合のグラフと、第１〜第３実施例それぞれの相関用コードで相関値を算出した場合のグラフとの計４つのグラフを示している。
【００８７】
図１４に示すように、直接波信号に対する相関値は、相関用のコードとしてレプリカコードを用いた場合も、第１〜第３実施例の相関用コードを用いた場合も、何れも、ピーク位相はほぼ一致している。また、何れのグラフも、ピーク部分の形状は、ピーク位相を頂点とする略二等辺三角形状となっており、ピーク値の左右の相関値の傾きはほぼ一致している。このため、ピーク位相の検出は、第１〜第３実施例の何れの相関用コードを用いても、正確になされる。ただし、ピーク値の大きさは、レプリカコード、第２実施例の相関用コード、第３実施例の相関用コード、第１実施例の相関用コード、の順に大きい。これは、各チップのコード値がゼロをとった時間（サンプルタイミングでいえば回数）の違いによる。
【００８８】
図１５に示すように、マルチパス信号に対する相関結果は、何れのグラフも、ピーク位相自体はほぼ一致している。また、何れのグラフも、ピーク位相から遅れた位相には、マルチパス信号に含まれる間接波信号の影響が表れている。ただし、ピーク部分の形状が大きく異なる。まず、レプリカコードを用いた相関値のグラフでは、ピーク位相の左右（前後）において相関値の傾きが大きく異なっている。これに比較して、第１〜第３実施例の相関用コードを用いた相関値のグラフでは、ピーク位相の左右（前後）における相関値の傾きの違いが小さく、略二等辺三角形状に近い形状となっており、レプリカコードの場合に比べて改善していることが分かる。これにより、第１〜第３実施例の相関用コードを用いることで、ピーク位相の検出精度が改善されることがわかる。
【００８９】
ピーク部分の形状について、更に詳細に第１〜第３実施例それぞれの相関用コードを用いた相関値を比べてみると、第１実施例の相関用コードを用いた相関値は、ピーク位相の左右の相関値の傾きの違いが最も小さいが、相関値の大きさが最も小さい。逆に、第２実施例の相関用コードを用いた相関値は、ピーク位相の左右の相関値の傾きの違いがこの３つの実施例の中で最も大きいが、相関値の大きさは最も大きい。つまり、第１〜第３実施例の相関用コードのうちから、検出可能な相関値の大きさや求められるピーク位相の検出精度（マルチパスの影響低減効果）を考慮して、適切な相関用コードを選ぶことができる。但し、相関値のピーク値が小さくなることで受信感度が劣化する場合もあるため、この点を考慮する必要もある。
【００９０】
図１６〜図１８は、相関値から得られたコード位相の誤差（位相誤差）の時間的変化を示す図である。図１６は、第１実施例の相関用コードを用いた場合の位相誤差を示し、図１７は、第２実施例の相関用コードを用いた場合の位相誤差を示し、図１８は、第３実施例の相関用コードを用いた場合の位相誤差を示している。図１６〜図１８では、何れも、横軸を時刻、縦軸を位相誤差として、マルチパス信号と相関用コードとの相関結果から得られたコード位相の位相誤差と、マルチパス信号とレプリカコードとの相関結果から得られたコード位相の位相誤差と、直接波信号と相関用コードとの相関結果から得られたコード位相の位相誤差と、直接波信号とレプリカコードとの相関結果から得られたコード位相の位相誤差と、の４つのグラフを示している。
【００９１】
図１６〜図１８に示すように、直接波信号に対する位相誤差は、レプリカコード及び相関用コードの何れを用いた場合も小さく、位相誤差の時間的変化も小さい。両者の間に大きな差は見られない。一方、マルチパス信号に対する位相誤差を比較すると、レプリカコードを用いた場合に比較して相関用コードを用いた場合の位相誤差が小さく、且つ、位相誤差の時間的変化も小さくなっており、コード位相の検出精度が向上していることがわかる。詳細には、第１実施例の相関用コード、第３実施例の相関用コード、第２実施例の相関用コードの順に、位相誤差が小さくなっている。これは、図１５に示したように、ピーク位相の左右の相関値の傾きの違い、つまりピーク位相の検出精度の違いに起因する。
【００９２】
［作用効果］
このように、本実施形態のＧＰＳ受信機１０（１０Ａ〜１０Ｃ）では、ＧＰＳ衛星信号の捕捉の際に、受信コード信号との相関演算を行う相関用コードとして、チップ境界期間のコード値をレプリカコードの値とし、チップ境界期間以外のチップ中央期間を所定値とした相関用コードが用いられる。具体的には、第１実施例では、チップ中央期間のコード値をゼロとした相関用コードが用いられ、第２実施例では、チップ中央期間のコード値を、レプリカコードの値とゼロとの繰り返しとした相関用コードが用いられ、第３実施例では、チップ中央期間のうち、前半期間のコード値をレプリカコードの値とゼロとの繰り返しとし、後半期間のコード値をゼロとした相関用コードが用いられる。
【００９３】
間接波信号は直接波信号に対して遅れた信号となるため、マルチパス信号において、間接波信号の成分は各チップの後半期間に多く含まれる。このため、相関用コードのチップ中央期間においてコード値がゼロとなる期間を含むようにすることで、受信コード信号と相関用コードとの相関値に表れるマルチパスの影響を低減することができる。その結果、マルチパス環境におけるコード位相の検出精度を向上させることが可能となる。
【００９４】
また、チップ中央期間のコード値をゼロ一定とするのではなく、間欠的にレプリカコードの値としたことで、相関演算の結果得られる相関値の大きさを大きくすることができる。これは、チップ中央期間のコード値をゼロ一定とした場合に比べて、相関ピーク値を高くすることができるため、受信感度の劣化を抑制する効果となって表れる。
【００９５】
［変形例］
なお、本発明の適用可能な実施形態は上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。
【００９６】
例えば、第２，第３実施例において、相関用コードのチップ中央期間のコード値を、所定のサンプリング時間間隔でレプリカコードの値とゼロとの繰り返しとした。つまり、この繰り返し期間において、レプリカコードの値を取る時間（回数ともいえる）とゼロを取る時間（回数ともいえる）との割合を等しくした。しかし、この割合を０．２５対０．７５や、逆に０．７５対０．２５といった異なる割合としてもよい。例えば、サンプルタイミング４回に１回の割合でレプリカコードの値を相関用コードのコード値として採用し、残りの３回ではゼロをコード値として採用する。或いは、これを逆に採用することで実現できる。
【００９７】
また、第３実施例において相関用コードのチップ中央期間を二分した前半期間について、レプリカコード値とゼロとを繰り返すようにしたが、二分ではなく、例えば、チップ境界から１／３チップの時点までの期間（冒頭期間）を、レプリカコードの値とゼロとを繰り返す期間としても良い。
【００９８】
また、上述の実施形態では、衛星測位システムとしてＧＰＳを例に挙げて説明したが、ＷＡＡＳ（Wide Area Augmentation System）、ＱＺＳＳ（Quasi Zenith Satellite System）、ＧＬＯＮＡＳＳ（GLObal NAvigation Satellite System）、ＧＡＬＩＬＥＯ、ＢｅｉＤｏｕ（BeiDou Navigation Satellite System）等の他の衛星測位システムであってもよい。
【００９９】
また、本発明を適用可能な携帯型電子機器１としては、例えば、ランナーズウォッチ、携帯型ナビゲーション装置、パソコン、ＰＤＡ（Personal Digital Assistant）、携帯電話、腕時計、スマートグラスといった種々の電子機器について適用することが可能である。
【符号の説明】
【０１００】
１  携帯型電子機器、１０（１０Ａ，１０Ｂ，１０Ｃ）  ＧＰＳ受信機、１００  ＧＰＳアンテナ、２００  ＲＦ受信回路部、３００Ａ，３００Ｂ，３０Ｃ  ベースバンド処理回路部、３１０Ａ，３１０Ｂ，３１０Ｃ  ＢＢ処理部、３１１  レプリカコード生成部、３１２Ａ，３１２Ｂ，３１２Ｃ  相関用コード生成部、３１３  相関演算部、３１４  衛星捕捉部、３１５  位置算出部、３３０Ａ，３３０Ｂ，３３０Ｃ  ＢＢ記憶部、３３１Ａ，３３１Ｂ，３３１Ｃ  ベースバンドプログラム、３３２  チップ期間設定データ、３３３  衛星軌道データ、３３４  メジャメントデータ、３３５  位置算出結果データ、２０  メイン処理部、２１  操作部、２２  表示部、２３  音声出力部、２４  時計部、２５  通信部、２６  メイン記憶部
【図１】
2016148594.tif 000003
【図２】
2016148594.tif 000004
【図３】
2016148594.tif 000005
【図４】
2016148594.tif 000006
【図５】
2016148594.tif 000007
【図６】
2016148594.tif 000008
【図７】
2016148594.tif 000009
【図８】
2016148594.tif 000010
【図９】
2016148594.tif 000011
【図１０】
2016148594.tif 000012
【図１１】
2016148594.tif 000013
【図１２】
2016148594.tif 000014
【図１３】
2016148594.tif 000015
【図１４】
2016148594.tif 000016
【図１５】
2016148594.tif 000017
【図１６】
2016148594.tif 000018
【図１７】
2016148594.tif 000019
【図１８】
2016148594.tif 000020