(57)【要約】【課題】簡単な構成により、ＧＰＳ衛星等の人工衛星からの受信信号の同期捕捉の精度を向上させる。【解決手段】ドップラシフト量算出部は、人工衛星から受信する受信信号のドップラシフト量を算出し、サンプリング間隔設定部は、算出されたドップラシフト量に基づいて、Ａ／Ｄ変換された受信信号をダウンサンプリングするサンプリング間隔を設定する。ダウンサンプリング部は、設定されたサンプリング間隔で、Ａ／Ｄ変換された受信信号をダウンサンプリングし、コヒーレント加算部は、ダウンサンプリングされた受信信号のコヒーレント加算を行う。ＰＮ生成部は、拡散符号を生成し、位相検出部は、コヒーレント加算の演算結果と生成された拡散符号との相関演算を行い、相関演算の結果に基づいて、受信信号の拡散符号の位相を検出する。本技術は、例えば、ＧＰＳの受信器に適用できる。【選択図】図２
2014120863.tif 000002
【特許請求の範囲】
【請求項１】
人工衛星から受信する受信信号であって、所定の拡散符号を用いてスペクトラム拡散した信号を所定の搬送波周波数で変調した信号である受信信号のドップラシフト量を算出するドップラシフト量算出部と、
算出された前記ドップラシフト量に基づいて、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするサンプリング間隔を設定するサンプリング間隔設定部と、
設定された前記サンプリング間隔で、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするダウンサンプリング部と、
ダウンサンプリングされた前記受信信号のコヒーレント加算を行うコヒーレント加算部と、
拡散符号を生成する拡散符号生成部と、
コヒーレント加算の演算結果と生成された前記拡散符号との相関演算を行い、相関演算の結果に基づいて、前記受信信号の前記拡散符号の位相を検出する位相検出部と
を備える通信装置。
【請求項２】
前記サンプリング間隔設定部は、前記サンプリング間隔の平均値を、ドップラシフトが発生していない場合のサンプリング間隔の（前記搬送波周波数÷（前記搬送波周波数＋前記ドップラシフト量））倍に設定する
請求項１に記載の通信装置。
【請求項３】
前記サンプリング間隔設定部は、（前記搬送波周波数＋前記ドップラシフト量）÷前記搬送波周波数にカウント幅を設定し、
前記ダウンサンプリング部は、前記受信信号の１サンプル毎に前記カウント幅だけカウント値を積算し、前記カウント値が所定の値以上になったとき、前記受信信号のサンプリングを行い、その後、前記カウント値から前記所定の値を引いた余りからカウントを開始する
請求項２に記載の通信装置。
【請求項４】
算出された前記ドップラシフト量に基づいて、前記受信信号の周波数をシフトする周波数シフト量を設定する周波数シフト量設定部と、
設定された前記周波数シフト量だけ前記受信信号の周波数をシフトする周波数変換部と
をさらに備え、
前記ダウンサンプリング部は、周波数がシフトされた前記受信信号のダウンサンプリングを行う
請求項１に記載の通信装置。
【請求項５】
前記受信信号をＡ／Ｄ変換するＡ／Ｄ変換部を
さらに備え、
前記周波数変換部は、Ａ／Ｄ変換された前記受信信号の周波数をシフトする
請求項４に記載の通信装置。
【請求項６】
前記受信信号の周波数を前記搬送波周波数から所定の中間周波数に変換する中間周波数変換部を
さらに備え、
前記Ａ／Ｄ変換部は、前記中間周波数に変換された前記受信信号のＡ／Ｄ変換を行い、
前記周波数変換部は、Ａ／Ｄ変換された前記受信信号の周波数を、前記中間周波数と前記ドップラシフト量を合わせた周波数だけシフトする
請求項５に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、通信装置に関し、特に、ＧＰＳ（Global Positioning System）等の衛星航法システムを利用する通信装置に関する。
【背景技術】
【０００２】
ＧＰＳ（Global Positioning System）では、人工衛星（以下、ＧＰＳ衛星と称する）、又は、ＧＰＳ衛星からの信号（以下、ＧＰＳ信号と称する）を受信する通信装置の移動に伴うドップラ効果により、通信装置が受信するＧＰＳ信号の周波数が変動するドップラシフトが発生する。このドップラシフトにより、通信装置が行うＧＰＳ信号の同期捕捉の精度が低下するおそれがある。
【０００３】
そこで、従来、ドップラシフト量や内部クロックの誤差を考慮して、ＧＰＳ信号をＡ／Ｄ変換するＡ／Ｄコンバータのサンプリング周波数を設定することにより、ＧＰＳ信号のスペクトラム拡散に用いられるＣ／Ａコードのチップレートのズレを補正することが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２０４０７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、Ａ／Ｄコンバータのサンプリング周波数を変更する場合、同期捕捉以外の処理を行う部分にも影響が及ぶため、装置の構成や処理が複雑になるおそれがある。
【０００６】
そこで、本技術は、簡単な構成により、ＧＰＳ衛星等の人工衛星からの受信信号の同期捕捉の精度を向上させるようにするものである。
【課題を解決するための手段】
【０００７】
本技術の一側面の通信装置は、人工衛星から受信する受信信号であって、所定の拡散符号を用いてスペクトラム拡散した信号を所定の搬送波周波数で変調した信号である受信信号のドップラシフト量を算出するドップラシフト量算出部と、算出された前記ドップラシフト量に基づいて、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするサンプリング間隔を設定するサンプリング間隔設定部と、設定された前記サンプリング間隔で、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするダウンサンプリング部と、ダウンサンプリングされた前記受信信号のコヒーレント加算を行うコヒーレント加算部と、拡散符号を生成する拡散符号生成部と、コヒーレント加算の演算結果と生成された前記拡散符号との相関演算を行い、相関演算の結果に基づいて、前記受信信号の前記拡散符号の位相を検出する位相検出部とを備える。
【０００８】
前記サンプリング間隔設定部には、前記サンプリング間隔の平均値を、ドップラシフトが発生していない場合のサンプリング間隔の（前記搬送波周波数÷（前記搬送波周波数＋前記ドップラシフト量））倍に設定させることができる。
【０００９】
前記サンプリング間隔設定部には、（前記搬送波周波数＋前記ドップラシフト量）÷前記搬送波周波数にカウント幅を設定させ、前記ダウンサンプリング部には、前記受信信号の１サンプル毎に前記カウント幅だけカウント値を積算させ、前記カウント値が所定の値以上になったとき、前記受信信号のサンプリングを行わせ、その後、前記カウント値から前記所定の値を引いた余りからカウントを開始させることができる。
【００１０】
算出された前記ドップラシフト量に基づいて、前記受信信号の周波数をシフトする周波数シフト量を設定する周波数シフト量設定部と、設定された前記周波数シフト量だけ前記受信信号の周波数をシフトする周波数変換部とをさらに設け、前記ダウンサンプリング部には、周波数がシフトされた前記受信信号のダウンサンプリングを行わせることができる。
【００１１】
前記受信信号をＡ／Ｄ変換するＡ／Ｄ変換部をさらに設け、前記周波数変換部には、Ａ／Ｄ変換された前記受信信号の周波数をシフトさせることができる。
【００１２】
前記受信信号の周波数を前記搬送波周波数から所定の中間周波数に変換する中間周波数変換部をさらに設け、前記Ａ／Ｄ変換部には、前記中間周波数に変換された前記受信信号のＡ／Ｄ変換を行わせ、前記周波数変換部には、Ａ／Ｄ変換された前記受信信号の周波数を、前記中間周波数と前記ドップラシフト量を合わせた周波数だけシフトさせることができる。
【００１３】
本技術の一側面においては、人工衛星から受信する受信信号であって、所定の拡散符号を用いてスペクトラム拡散した信号を所定の搬送波周波数で変調した信号である受信信号のドップラシフト量が算出され、算出された前記ドップラシフト量に基づいて、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするサンプリング間隔が設定され、設定された前記サンプリング間隔で、Ａ／Ｄ変換された前記受信信号がダウンサンプリングされ、ダウンサンプリングされた前記受信信号のコヒーレント加算が行われ、拡散符号が生成され、コヒーレント加算の演算結果と生成された前記拡散符号との相関演算が行われ、相関演算の結果に基づいて、前記受信信号の前記拡散符号の位相が検出される。
【発明の効果】
【００１４】
本技術の一側面によれば、簡単な構成により、ＧＰＳ衛星等の人工衛星からの受信信号の同期捕捉の精度を向上させることができる。
【図面の簡単な説明】
【００１５】
【図１】本技術を適用した通信装置の一実施の形態を示すブロック図である。
【図２】同期捕捉部の構成例を示すブロック図である。
【図３】周波数変換部の構成例を示すブロック図である。
【図４】ダウンサンプリング部の構成例を示すブロック図である。
【図５】同期捕捉処理を説明するためのフローチャートである。
【図６】ドップラシフトについて説明するための図である。
【図７】ドップラシフトについて説明するための図である。
【図８】ドップラシフト量の推移の例を示すグラフである。
【図９】ドップラシフトによるＧＰＳ信号の見かけのメッセージ長の変化について説明するための図である。
【図１０】ドップラシフトによるＧＰＳ信号の見かけのメッセージ長の変化について説明するための図である。
【図１１】ドップラシフト量とダウンサンプリングのサンプリング間隔との関係を説明するための図である。
【図１２】ドップラシフト量とダウンサンプリングのサンプリング間隔との関係を説明するための図である。
【図１３】ドップラシフト量とダウンサンプリングのサンプリング間隔との関係を説明するための図である。
【図１４】ドップラシフト量の変化の予測機能をオンに設定した場合とオフに設定した場合とで、相関ピーク値を比較したグラフである。
【図１５】コンピュータの構成の例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、本技術を実施するための形態（以下、実施の形態という）について説明する。なお、説明は以下の順序で行う。
１．実施の形態
２．変形例
【００１７】
＜１．実施の形態＞
図１は、本技術の一実施の形態に係る通信装置１０１の構成例を示すブロック図である。通信装置１０１は、通信アンテナ１１１、周波数変換部１１２、ノイズ除去部１１３、復調部１１４、ＸＯ（X'tal Oscillator；水晶発振器）１１５、及び、ＴＣＸＯ（Temperature Compensated X'tal Oscillator；温度補償型水晶発振器）１１６を備える。
【００１８】
通信アンテナ１１１は、ＧＰＳ衛星から送信されるＲＦ信号（以下、ＧＰＳ信号とも称する）を受信する。
【００１９】
ここで、ＧＰＳ信号は、航法メッセージ等の送信データを拡散符号によりスペクトラム拡散し、得られたスペクトラム拡散信号に搬送波を乗算し、ＢＰＳＫ（Binary Phase Shift Keying）変調した信号である。また、スペクトラム拡散に用いる拡散符号には、１０２３チップのＣ／Ａコードと呼ばれる擬似ランダム符号（ＰＮコード）が用いられ、ＧＰＳ衛星毎に異なるＣ／Ａコードが割り当てられている。
【００２０】
周波数変換部１１２は、通信アンテナ１１１が受信したＧＰＳ信号の周波数Ｆｒｆを、中間周波数Ｆｉｆにダウンコンバートすることにより、ＧＰＳ信号をＩＦ信号（中間周波数信号）に変換する。そして、周波数変換部１１２は、アナログのＩＦ信号に基づいて離散化し、離散化信号を出力する。以下、周波数変換部１１２の構成例について説明する。
【００２１】
［周波数変換部１１２の構成例］
周波数変換部１１２は、ＬＮＡ（ローノイズ・アンプ）１２１、中間周波数変換部１２２、増幅器１２３、ＢＰＦ（バンドパス・フィルタ）１２４、及び、Ａ／Ｄコンバータ１２５を備える。
【００２２】
ＬＮＡ１２１は、通信アンテナ１１１が受信したＧＰＳ信号を増幅する。
【００２３】
中間周波数変換部１２２は、ＬＮＡ１２１により増幅されたＧＰＳ信号の周波数を、デジタル信号処理が施しやすいように、例えば、４．０９２ＭＨｚや１．０２３ＭＨｚなどの搬送波周波数よりも低い中間周波数Ｆｉｆに変換（ダウンコンバート）する。ここで、中間周波数変換部１２２の構成例について説明する。
【００２４】
〔中間周波数変換部１２２の構成例〕
中間周波数変換部１２２は、ＢＰＦ（バンドパス・フィルタ）１３１、増幅器１３２、周波数シンセサイザ１３３、及び、ミキサ１３４を備える。
【００２５】
ＢＰＦ１３１は、ＬＮＡ１２１から出力される増幅されたＧＰＳ信号に対して、特定の周波数帯域の信号のみを通過させ、その他の帯域の信号を減衰させる。
【００２６】
増幅器１３２は、ＢＰＦ１３１から出力されるＧＰＳ信号を増幅する。ここで、増幅器１３２は、例えば、ＭＯＳＦＥＴ（Metal Oxide Semiconductor Field effect transistor）差動増幅器で構成することができるが、上記に限られない。
【００２７】
周波数シンセサイザ１３３は、ＴＣＸＯ１１６（後述する）から供給される発振信号に基づいて、所定の周波数を有する局部発振信号を生成する。ここで、周波数シンセサイザ１３３は、例えば、復調部１１４が備えるＭＰＵ１４３により制御されるが、上記に限られず、制御部（図示せず）により制御されてもよい。
【００２８】
ミキサ１３４は、増幅器１３２から出力される増幅されたＧＰＳ信号に対して、周波数シンセサイザ１３３から出力される局部発振信号を乗算する。ミキサ１３４がＧＰＳ信号と局部発振信号とを乗算することによって、局部発振信号に応じて、搬送波周波数よりも低い中間周波数ＦｉｆにダウンコンバートされたＩＦ信号を出力することができる。
【００２９】
中間周波数変換部１２２は、例えば上記のような構成によって、ＧＰＳ信号の周波数が中間周波数へダウンコンバートされたＩＦ信号を出力する。
【００３０】
増幅器１２３は、中間周波数変換部１２２から出力されたＩＦ信号を増幅する。ここで、増幅器１２３は、例えば、オペアンプで構成することができるが、上記に限られない。
【００３１】
ＢＰＦ１２４は、増幅器１２３から出力される増幅されたＩＦ信号に対して、特定の周波数帯域の信号のみを通過させ、その他の帯域の信号を減衰させる。なお、本技術の実施形態に係る通信装置は、ＢＰＦ１２４を、遮断周波数より大きな周波数の信号を減衰させるローパス・フィルタ（Low-Pass Filter）で構成することもできる。ここで、ＬＮＡ１２１〜ＢＰＦ１２４までに処理される信号は、アナログ信号である。
【００３２】
Ａ／Ｄコンバータ１２５は、ＢＰＦ１２４から出力されるアナログのＩＦ信号に基づいて離散化し、離散化信号を出力する。ここで、Ａ／Ｄコンバータ１２５は、例えば、Ｎビットの分解能を有するＡ／Ｄコンバータで構成され、定常的な熱雑音の平均振幅をＡ／Ｄコンバータ１２５の下位Ｍビットに設定する。したがって、Ａ／Ｄコンバータ１２５は、外来ノイズによるＡ／Ｄコンバータの出力スペクトラムの飽和を防止し、Ａ／Ｄコンバータ１２５の後段に備えられるノイズ除去部１１３において外来ノイズをより確実に除去させることができる。
【００３３】
周波数変換部１１２は、例えば上記のような構成によって、通信アンテナ１１１が受信したＧＰＳ信号の周波数Ｆｒｆを中間周波数ＦｉｆにダウンコンバートしたＩＦ信号に変換し、デジタル信号としての離散化信号を出力することができる。
【００３４】
ノイズ除去部１１３は、周波数変換部１１２から出力される離散化信号に基づいて、離散化信号に対する外来ノイズを検出して外来ノイズを除去する。
【００３５】
復調部１１４は、ノイズ除去部１１３から出力される離散化信号に基づいてスペクトラム拡散信号を検出し、検出されたスペクトラム拡散信号を復調する。以下、復調部１１４の構成例について説明する。
【００３６】
［復調部１１４の構成例］
復調部１１４は、同期捕捉部１４１、同期保持部１４２、ＭＰＵ１４３、ＲＴＣ（Real Time Clock）１４４、タイマ１４５、メモリ１４６、及び、逓倍／分周器１４７を備える。
【００３７】
同期捕捉部１４１は、ＭＰＵ１４３の制御の下、逓倍／分周器１４７から供給される逓倍又は分周された発振信号に基づいて、ノイズ除去部１１３から出力される離散化信号におけるＣ／Ａコードの同期捕捉を行う。また、同期捕捉部１４１は、Ｃ／Ａコードの同期捕捉と共に、ノイズ除去部１１３から出力される離散化信号における搬送波周波数（キャリア周波数）や、ＧＰＳ信号の送信元のＧＰＳ衛星を示す装置識別情報（例えば、ＧＰＳ衛星を識別する衛星番号など）を検出する。そして、同期捕捉部１４１は、検出したＣ／Ａコードの位相、搬送波周波数、装置識別情報を、同期保持部１４２及びＭＰＵ１４３に供給する。
【００３８】
同期保持部１４２は、ＭＰＵ１４３の制御の下、逓倍／分周器１４７から供給される逓倍又は分周された発振信号と、同期捕捉部１４１から伝達される各種情報（Ｃ／Ａコードの位相、搬送波周波数、及び装置識別情報）とに基づいて、ノイズ除去部１１３から出力される離散化信号におけるＣ／Ａコードと、搬送波（キャリア）との同期保持を行う。また、同期保持部１４２は、同期保持と共に、ノイズ除去部１１３から出力される離散化信号に含まれるデータを復調する。ここで、同期保持部１４２は、同期捕捉部１４１から伝達されるＣ／Ａコードの位相、搬送波周波数、及び装置識別情報を初期値として処理を開始する。
【００３９】
また、同期保持部１４２は、検出したＣ／Ａコードの位相、搬送波周波数、及び復調したデータを、ＭＰＵ１４３に伝達する。なお、同期保持部１４２は、複数のＧＰＳ衛星から送信された送信信号に対応する離散化信号それぞれに対して、同期保持を並列に行うことができる。また、同期保持部１４２としては、例えば、特開２００３−２３２８４４号公報に開示された技術を用いることが挙げられるが、上記に限られない。
【００４０】
ＭＰＵ１４３は、同期保持部１４２から伝達されるＣ／Ａコードの位相、搬送波周波数、及びデータに基づいて処理を行う。例えば、ＭＰＵ１４３は、通信装置１０１の位置及び速度を算出し、また、復調されたデータから得られる各ＧＰＳ衛星の時間情報に基づいて通信装置１０１の時間情報を補正するというような、ＧＰＳに関する各種演算処理を行う。
【００４１】
また、ＭＰＵ１４３は、通信装置１０１の各部の制御や、外部装置との入出力に関する制御などを行うこともできる。上記の場合には、ＭＰＵ１４３は、通信装置１０１における制御部（図示せず）として機能することとなる。
【００４２】
ＲＴＣ１４４は、ＸＯ１１５から供給される発振信号に基づいて時間を計測する。ＲＴＣ１４４によって計測される時間情報は、例えば、ＧＰＳ衛星の時間情報が得られるまでの間に代用されるものであり、ＧＰＳ衛星の時間情報が得られたときには、ＭＰＵ１４３がタイマ１４５を制御することによって適宜補正される。
【００４３】
タイマ１４５は、例えば、ＭＰＵ１４３における通信装置１０１の各部の動作を制御する各種タイミング信号の生成や、時間の参照に用いられる。
【００４４】
メモリ１４６は、例えば、ＲＯＭやＲＡＭで構成される。メモリ１４６を構成するＲＯＭには、ＭＰＵ１４３が使用するプログラムや演算パラメータなどの制御用データが記録される。また、ＲＡＭには、ＭＰＵ１４３により実行されるプログラムなどが一次記憶される。
【００４５】
逓倍／分周器１４７は、ＴＣＸＯ１１６から供給される発振信号を逓倍（multiply）又は分周（divide）する。
【００４６】
復調部１１４は、例えば上記のような構成によって、ノイズ除去部１１３から伝達される離散化信号に基づいてスペクトラム拡散信号を検出し、復調することができる。
【００４７】
ＸＯ１１５は、例えば３２．７６８ｋＨｚなどの所定の発振周波数を有する発振信号を生成する。そして、ＸＯ１１５は、生成した発振信号をＲＴＣ１４４に供給する。
【００４８】
ＴＣＸＯ１１６は、例えば１８．４１４ＭＨｚなど、ＸＯ１１５が生成する発振信号とは周波数が異なる発振信号を生成する。そして、ＴＣＸＯ１１６は、生成した発振信号を、逓倍／分周器１４７や周波数シンセサイザ１３３などに供給する。
【００４９】
［同期捕捉部１４１の構成例］
図２は、同期捕捉部１４１の構成例を示すブロック図である。同期捕捉部１４１は、同期捕捉処理部２０１及び制御部２０２を備える。ここで、同期捕捉処理部２０１の構成例について説明する。
【００５０】
〔同期捕捉処理部２０１の構成例〕
同期捕捉処理部２０１は、周波数変換部２１１、フィルタ２１２、ダウンサンプリング部２１３、コヒーレント加算部２１４、ＰＮ生成部２１５、及び、位相検出部２１６を備える。
【００５１】
周波数変換部２１１は、ノイズ除去部１１３から供給される離散化信号の周波数を、中心周波数がほぼ０Ｈｚになるようにダウンコンバートする。具体的には、周波数変換部２１１は、制御部２０２の周波数シフト量設定部２３２により設定される周波数シフト量Ｆｓｆｔだけ離散化信号の周波数をシフトする。周波数変換部２１１は、周波数を変換した離散化信号（以下、ベースバンド信号と称する）をフィルタ２１２に供給する。
【００５２】
フィルタ２１２は、例えば、ローパスフィルタにより構成され、ベースバンド信号の所定の周波数以上の高調波成分を除去し、ダウンサンプリング部２１３に供給する。
【００５３】
ダウンサンプリング部２１３は、制御部２０２のサンプリング間隔設定部２３３により設定されるサンプリング間隔Ｉｓで、ベースバンド信号のダウンサンプリングを行う。そして、ダウンサンプリング部２１３は、ダウンサンプリングしたベースバンド信号をコヒーレント加算部２１４に供給する。
【００５４】
コヒーレント加算部２１４は、ダウンサンプリングされたベースバンド信号のコヒーレント加算を行う。すなわち、コヒーレント加算部２１４は、ダウンサンプリングされたベースバンド信号を、Ｃ／Ａコードのチップ長（１０２３チップ）に対応する１０２３ビット単位で区切り、複数の区間のデータの値を対応するビット毎に積算する処理を行う。コヒーレント加算部２１４は、コヒーレント加算の演算結果を示すデータ（以下、コヒーレント加算データと称する）を相関演算部２２１に供給する。
【００５５】
ＰＮ生成部２１５は、各ＧＰＳ衛星のＣ／Ａコードを生成し、生成したＣ／Ａコードの位相をシフトさせながら相関演算部２２１に供給する。
【００５６】
位相検出部２１６は、ベースバンド信号におけるＣ／Ａコードの位相を検出する。位相検出部２１６は、相関演算部２２１及びピーク検出部２２２により構成される。
【００５７】
相関演算部２２１は、コヒーレント加算部２１４から供給されるコヒーレント加算データと、ＰＮ生成部から供給されるＣ／Ａコードとの相関演算を行い、得られた相関値をピーク検出部２２２に供給する。
【００５８】
ピーク検出部２２２は、相関値のピークを検出することにより、Ｃ／Ａコードの種類及び位相を検出する。すなわち、ピーク検出部２２２は、相関演算部２２１から供給される相関値が所定の閾値以上となるピークを検出し、そのときのＣ／Ａコードの種類及び位相を検出する。また、ピーク検出部２２２は、検出したＣ／Ａコードの種類から同期捕捉を行ったＧＰＳ信号の送信元のＧＰＳ衛星を検出する。そして、ピーク検出部２２２は、検出したＣ／Ａコードの位相、及び、検出したＧＰＳ衛星を示す装置識別情報を、同期保持部１４２及びＭＰＵ１４３に供給する。
【００５９】
制御部２０２は、同期捕捉処理部２０１の各部の処理を制御する。例えば、制御部２０２は、例えば、ＭＰＵ１４３により構成することも可能であるし、ＭＰＵ１４３とは別に構成することも可能である。ここで、制御部２０２の構成例について説明する。
【００６０】
〔制御部２０２の構成例〕
制御部２０２は、少なくともドップラシフト量算出部２３１、周波数シフト量設定部２３２、及び、サンプリング間隔設定部２３３を備える。
【００６１】
ドップラシフト量算出部２３１は、同期捕捉の対象となるＧＰＳ衛星からのＧＰＳ信号のドップラシフト量を算出する。より具体的には、ドップラシフト量算出部２３１は、当該ＧＰＳ衛星からのエフェメリスデータに基づいて、同期捕捉開始時の通信装置１０１の位置及び時刻におけるＧＰＳ信号のドップラシフト量及び単位時間あたりのドップラシフト量の変化量を算出する。そして、ドップラシフト量算出部２３１は、算出したドップラシフト量及び単位時間あたりのドップラシフト量の変化量を、周波数シフト量設定部２３２及びサンプリング間隔設定部２３３に供給する。
【００６２】
なお、以下、ドップラシフト量算出部２３１により算出される同期捕捉開始時のドップラシフト量を、初期ドップラシフト量Ｆｄｓ０と称し、単位時間あたりのドップラシフト量の変化量を、ドップラシフト変化量ΔＦｄｓと称する。
【００６３】
周波数シフト量設定部２３２は、所定のタイミングで、初期ドップラシフト量Ｆｄｓ０、ドップラシフト変化量ΔＦｄｓ、中間周波数Ｆｉｆ、Ａ／Ｄコンバータ１２５のサンプリング周波数Ｆｓｍｐ等を周波数変換部２１１に供給する。これにより、後述するように、周波数変換部２１１の周波数シフト量Ｆｓｆｔが設定される。
【００６４】
サンプリング間隔設定部２３３は、初期ドップラシフト量Ｆｄｓ０に基づいて、サンプリング間隔Ｉｓを設定するためのカウント幅ΔＣを算出する。そして、サンプリング間隔設定部２３３は、算出したカウント幅ΔＣ、及び、標準サンプリング間隔Ｉｓ０をダウンサンプリング部２１３に供給する。これにより、ダウンサンプリング部２１３のサンプリング間隔Ｉｓが設定される。
【００６５】
ここで、標準サンプリング間隔Ｉｓ０とは、ドップラシフトが発生していない場合のダウンサンプリング部２１３のサンプリング間隔のことである。例えば、Ａ／Ｄコンバータ１２５のサンプリング周波数Ｆｓｍｐが１６．３６８ギガサンプル／秒である場合、標準サンプリング間隔Ｉｓ０は、１６ビットに設定される。従って、この場合、標準サンプリング間隔Ｉｓ０でダウンサンプリングが行われたとき、ベースバンド信号は１０２３メガサンプル／秒にダウンサンプリングされる。
【００６６】
［周波数変換部２１１の構成例］
図３は、周波数変換部２１１の構成例を示すブロック図である。周波数変換部２１１は、ＮＣＯ（Numerical Controlled Oscillator）２５１及び複素乗算部２５２を備える。ここで、ＮＣＯ２５１の構成例について説明する。
【００６７】
〔ＮＣＯ２５１の構成例〕
ＮＣＯ２５１は、積分器２６１、加算部２６２、除算部２６３、乗算部２６４、位相アキュムレータ２６５、ｃｏｓ波生成部２６６、及び、ｓｉｎ波生成部２６７を備える。
【００６８】
積分器２６１は、周波数シフト量設定部２３２からドップラシフト変化量ΔＦｄｓが供給される毎に、ドップラシフト変化量ΔＦｄｓを積算する。そして、積分器２６１は、積算値を加算部２６２に供給する。従って、積分器２６１からは、ｎ×ΔＦｄｓ（ｎ＝０、１、２、３・・・）が出力される。
【００６９】
加算部２６２は、周波数シフト量設定部２３２から供給される中間周波数Ｆｉｆ、初期ドップラシフト量Ｆｄｓ０、及び、積分器２６１から供給される積分値を加算し、得られた加算値を除算部２６３に供給する。この加算値が、上述した周波数シフト量Ｆｓｆｔとなる。従って、周波数シフト量Ｆｓｆｔは、Ｆｉｆ＋Ｆｄｓ０＋ｎ×ΔＦｄｓ（ｎ＝０、１、２、３・・・）となる。
【００７０】
除算部２６３は、加算部２６２から供給される周波数シフト量Ｆｓｆｔを、周波数シフト量設定部２３２から供給されるサンプリング周波数Ｆｓｍｐで割り、得られた除算値を乗算部２６４に供給する。従って、除算部２６３からは、Ｆｓｆｔ／Ｆｓｍｐが出力される。
【００７１】
乗算部２６４は、除算部２６３から供給される除算値に、周波数シフト量設定部２３２から供給される定数である２πを乗じ、得られた乗算値を位相アキュムレータ２６５に供給する。なお、以下、この乗算値を位相幅Δθと称する。従って、位相幅Δθは、２π×Ｆｓｆｔ／Ｆｓｍｐとなる。この位相幅Δθは、ｃｏｓ波生成部２６６から出力されるｃｏｓ波、及び、ｓｉｎ波生成部２６７から出力されるｓｉｎ波の各サンプル間の位相差となる。
【００７２】
位相アキュムレータ２６５は、ｃｏｓ波生成部２６６及びｓｉｎ波生成部２６７からサンプル値が出力される毎に位相幅Δθを積算し、その積算値である位相θを、ｃｏｓ波生成部２６６及びｓｉｎ波生成部２６７に供給する。従って、位相θは、１サンプル毎に０、Δθ、２Δθ、３Δθ・・・のように増加する。
【００７３】
ｃｏｓ波生成部２６６は、位相アキュムレータ２６５から供給される位相θに対応する余弦値ｃｏｓθを出力する。従って、ｃｏｓ波生成部２６６からは、周波数が周波数シフト量Ｆｓｆｔ（＝Ｆｉｆ＋Ｆｄｓ０＋ｎ×ΔＦｄｓ）と一致するｃｏｓ波の離散化信号Ｉ１が出力される。
【００７４】
ｓｉｎ波生成部２６７は、位相アキュムレータ２６５から供給される位相θに対応する正弦値ｓｉｎθを出力する。従って、ｓｉｎ波生成部２６７からは、周波数が周波数シフト量Ｆｓｆｔ（＝Ｆｉｆ＋Ｆｄｓ０＋ｎ×ΔＦｄｓ）と一致するｓｉｎ波の離散化信号Ｑ１が出力される。
【００７５】
複素乗算部２５２は、ノイズ除去部１１３から供給される離散化信号と、ＮＣＯ２５１から供給される離散化信号の複素乗算を行う。具体的には、ノイズ除去部１１３から供給される離散化信号のＱ成分をＱ０とし、Ｉ成分をＩ０とした場合、複素乗算部２５２は、Ｉ０×Ｉ１＋Ｑ０×Ｑ１を算出し、算出値をＩ成分として出力し、Ｉ０×Ｑ１＋Ｉ１×Ｑ０を算出し、算出値をＱ成分として出力する。これにより、複素乗算部２５２からは、離散化信号の周波数を周波数シフト量Ｆｓｆｔだけシフトしたベースバンド信号が出力される。
【００７６】
［ダウンサンプリング部２１３の構成例］
図４は、ダウンサンプリング部２１３の構成例を示すブロック図である。ダウンサンプリング部２１３は、加算部３０１、減算部３０２、セレクタ３０４、バッファ３０５、及び、比較器３０３を備える。
【００７７】
加算部３０１は、バッファ３０５のバッファ値Ｂに、サンプリング間隔設定部２３３から供給されるカウント幅ΔＣを加算し、得られたカウント値Ｃを減算部３０２、比較器３０３、及び、セレクタ３０４に供給する。
【００７８】
減算部３０２は、サンプリング間隔設定部２３３から供給される標準サンプリング間隔Ｉｓ０をカウント値Ｃから引き、得られた減算値Ｃ−Ｉｓ０をセレクタ３０４に供給する。
【００７９】
比較器３０３は、カウント値Ｃと標準サンプリング間隔Ｉｓ０を比較する。そして、比較器３０３は、カウント値Ｃが標準サンプリング間隔Ｉｓ０以上の場合、イネーブル信号の値を１（Ｈｉｇｈレベル）に設定し、カウント値Ｃが標準サンプリング間隔Ｉｓ０未満の場合、イネーブル信号の値を０（Ｌｏｗレベル）に設定する。
【００８０】
セレクタ３０４は、比較器３０３から出力されるイネーブル信号が０の場合、加算部３０１から供給されるカウント値Ｃをバッファ３０５に供給し、イネーブル信号が１の場合、減算部３０２から供給される減算値Ｃ−Ｉｓ０をバッファ３０５に供給する。
【００８１】
バッファ３０５は、セレクタ３０４から供給される値の最新値を保持するとともに、保持しているバッファ値Ｂを加算部３０１に供給する。
【００８２】
サンプリング部３０６は、イネーブル信号が０のとき値を出力せず、イネーブル信号が１になったときのベースバンド信号の値を出力する。これにより、ベースバンド信号の値が間引きされる。すなわち、ベースバンド信号がダウンサンプリングされる。
【００８３】
［同期捕捉処理の詳細］
次に、図５のフローチャートを参照して、同期捕捉部１４１により実行される同期捕捉処理の詳細について説明する。
【００８４】
ステップＳ１において、ドップラシフト量算出部２３１は、ドップラシフト量の初期値及び変化量を求める。ここで、図６乃至図８を参照して、ドップラシフト量の時系列の推移について簡単に説明する。
【００８５】
図６に模式的に示すように、ＧＰＳ衛星４０１は準同期軌道をとっており、通信装置１０１から見て常に動いているように見える。また、図７に示すように、通信装置１０１に対するＧＰＳ衛星４０１の移動速度（相対速度）のうち、通信装置１０１とＧＰＳ衛星４０１を結ぶ視線方向の速度がドップラシフト量に影響する。
【００８６】
図８は、ドップラシフト量の時系列の推移の例を示している。図８の横軸は、通信装置１０１の存在する位置においてＧＰＳ衛星４０１が見え始める時刻からの経過時間（単位は秒）を示し、縦軸は、ドップラシフト量（単位はＨｚ）を示している。
【００８７】
上述したように、ＧＰＳ衛星４０１は、通信装置１０１から見て常に動いているため、図８に示されるように、ドップラシフト量は時々刻々と変化する。また、ドップラシフト量は、ＧＰＳ衛星４０１が日の出位置付近にいるときに最大となる。ここで、日の出位置とは、通信装置１０１の存在する位置からＧＰＳ衛星４０１が見え始める位置である。すなわち、日の出位置付近においては、ＧＰＳ衛星４０１の視線方向の速度が、通信装置１０１に近づく方向に最大となるため、ドップラシフト量は周波数が増大する方向（正の方向）に最大となる。従って、ＧＰＳ衛星４０１が日の出位置付近にいるとき、通信装置１０１が受信するＧＰＳ信号の見かけの周波数が最大となる。
【００８８】
一方、ドップラシフト量は、ＧＰＳ衛星４０１が日の入り位置付近にいるときに最小となる。ここで、日の入り位置とは、通信装置１０１の存在する場所からＧＰＳ衛星４０１が見えなくなる直前の位置である。すなわち、日の入り位置付近においては、ＧＰＳ衛星４０１の視線方向の速度が、通信装置１０１から遠ざかる方向に最大となるため、ドップラシフト量は周波数が減少する方向（負の方向）に最大となる。従って、ＧＰＳ衛星４０１が日の入り位置付近にいるとき、通信装置１０１が受信するＧＰＳ信号の見かけの周波数が最小となる。
【００８９】
また、ドップラシフト量は、ＧＰＳ衛星４０１が天頂付近にいるときに、ほぼ０となる。すなわち、天頂付近においては、ＧＰＳ衛星４０１の視線方向の速度が、ほぼ０となるため、ドップラシフト量もほぼ０となる。
【００９０】
ここで、図８に示されるＧＰＳ衛星４０１からのＧＰＳ信号のドップラシフト量の推移は、ＧＰＳ衛星４０１から送信されるエフェメリスデータに基づいて算出することが可能である。
【００９１】
そこで、ドップラシフト量算出部２３１は、同期捕捉を行う対象となるＧＰＳ衛星からのエフェメリスデータに基づいて、同期捕捉開始時の位置及び時刻における当該ＧＰＳ衛星からのＧＰＳ信号のドップラシフト量を、初期ドップラシフト量Ｆｄｓ０として求める。また、ドップラシフト量算出部２３１は、同期捕捉開始時の位置及び時刻におけるドップラシフト量の単位時間（例えば、１ミリ秒）あたりの変化量を、ドップラシフト変化量ΔＦｄｓとして求める。ドップラシフト変化量ΔＦｄｓは、例えば、図８のドップラシフト量の推移を示すグラフの傾きにより表される。
【００９２】
また、ドップラシフト量算出部２３１は、算出した初期ドップラシフト量Ｆｄｓ０及びドップラシフト変化量ΔＦｄｓを、周波数シフト量設定部２３２及びサンプリング間隔設定部２３３に供給する。
【００９３】
ステップＳ２において、周波数シフト量設定部２３２は、周波数シフト量Ｆｓｆｔを初期値に設定する。具体的には、周波数シフト量設定部２３２は、中間周波数Ｆｉｆ及び初期ドップラシフト量Ｆｄｓ０を周波数変換部２１１の加算部２６２に供給する。これにより、周波数シフト量Ｆｓｆｔが、Ｆｉｆ＋Ｆｄｓ０に設定される。また、周波数シフト量設定部２３２は、Ａ／Ｄコンバータ１２５のサンプリング周波数Ｆｓｍｐを周波数変換部２１１の除算部２６３に供給し、定数２πを周波数変換部２１１の乗算部２６４に供給する。
【００９４】
ステップＳ３において、周波数変換部２１１は、周波数変換を行う。すなわち、周波数変換部２１１は、図３を参照して上述した処理により、ノイズ除去部１１３から供給される離散化信号の周波数を周波数シフト量Ｆｓｆｔ（＝Ｆｉｆ＋Ｆｄｓ）だけシフトする。また、周波数変換部２１１は、周波数をシフトすることにより得られるベースバンド信号をフィルタ２１２に供給する。
【００９５】
これにより、ベースバンド信号の周波数は、元の離散化信号の周波数から、中間周波数Ｆｉｆと初期ドップラシフト量Ｆｄｓ０を合わせた周波数だけシフトした周波数となる。すなわち、周波数変換部２１１では、中間周波数Ｆｉｆ分の周波数シフトに加えて、ドップラシフトの補正が行われる。従って、このベースバンド信号は、ドップラシフト量の大きさに関わらず、スペクトラム拡散信号をＢＰＳＫ変調した信号であって、中心周波数がほぼ０Ｈｚの信号となる。
【００９６】
ステップＳ４において、フィルタ２１２は、フィルタリングを行う。すなわち、フィルタ２１２は、所定の周波数以上の高調波成分をベースバンド信号から除去し、高調波成分を除去したベースバンド信号をダウンサンプリング部２１３に供給する。
【００９７】
ステップＳ５において、同期捕捉部１４１は、ダウンサンプリングを行う。このダウンサンプリングの処理では、以下に述べる理由により、初期ドップラシフト量Ｆｄｓ０に基づいてサンプリング間隔Ｉｓが調整される。
【００９８】
具体的には、ドップラシフトによりＧＰＳ信号の見かけの周波数が変化すると、図９に示されるように、ＧＰＳ信号に含まれるメッセージの見かけの時間軸上の長さが変化する。すなわち、ドップラシフトによりＧＰＳ信号の見かけの周波数が高くなると、ＧＰＳ信号に含まれるメッセージの見かけの時間が短くなる。一方、Ａ／Ｄコンバータ１２５のサンプリング周波数Ｆｓｍｐは一定なので、メッセージに割り当てられるビット数が減少し、メッセージ長が短くなる。
【００９９】
逆に、ドップラシフトによりＧＰＳ信号の見かけの周波数が低くなると、ＧＰＳ信号に含まれるメッセージの見かけの時間が長くなる。一方、Ａ／Ｄコンバータ１２５のサンプリング周波数Ｆｓｍｐは一体なので、メッセージに割り当てられるビット数が増加し、メッセージ長が長くなる。
【０１００】
このように、ドップラシフトによりメッセージ長が変化するにも関わらず、常にサンプリング間隔を一定にしたのでは、ベースバンド信号を適切にダウンサンプリングすることができない。
【０１０１】
具体的には、図１０は、ドップラシフトが発生している場合と発生していない場合とで、同じメッセージを同じサンプリング間隔でダウンサンプリングした例を示している。図の上側が、ドップラシフト量が０Ｈｚ、すなわち、ドップラシフトが発生していない場合を示している。また、図の下側が、ドップラシフト量がＦｄｓＨｚ（＞０Ｈｚ）、すなわち、周波数が高くなる方向にドップラシフトが発生している場合を示している。
【０１０２】
ダウンサンプリング部２１３では、比較器３０３からのイネーブル信号がＨｉｇｈになるタイミングで、ベースバンド信号のサンプリングが行われる。そして、図１０に示されるように、ドップラシフトが発生している場合、ドップラシフトが発生していない場合と比較して、同じメッセージに対してサンプリングする回数が少なくなる。すなわち、ドップラシフトが発生していない場合と比較して、ダウンサンプリング後のメッセージに情報の漏れが生じ、メッセージ長が短くなる。
【０１０３】
一方、図示は省略するが、ドップラシフト量がＦｄｓＨｚ（＜０Ｈｚ）、すなわち、周波数が低くなる方向にドップラシフトが発生した場合、ドップラシフトが発生していない場合と比較して、同じメッセージに対してサンプリングする回数が多くなる。すなわち、ドップラシフトが発生していない場合と比較して、ダウンサンプリング後のメッセージに情報の冗長化が発生し、メッセージ長が長くなる。
【０１０４】
このように、ドップラシフトの影響により、ダウンサンプリング後のベースバンド信号に含まれるメッセージ長が変動する。当然、ベースバンド信号に含まれるＣ／Ａコードも同様に、ドップラシフトの影響により値の漏れや冗長化が発生し、長さが変動する。そして、後述する相関演算のピークが発生しにくくなり、同期捕捉の精度が低下する。
【０１０５】
そこで、まず、サンプリング間隔設定部２３３は、次式（１）により、カウント幅ΔＣを算出する。
【０１０６】
ΔＣ＝（Ｆｒｆ＋Ｆｄｓ０）／Ｆｒｆ  ・・・（１）
【０１０７】
式（１）から、初期ドップラシフト量Ｆｄｓ０が０Ｈｚの場合、カウント幅ΔＣは１に設定される。一方、初期ドップラシフト量Ｆｄｓ０＞０Ｈｚであり、ＧＰＳ信号の見かけの周波数が高くなっている場合、カウント幅ΔＣは１より大きな値に設定される。また、初期ドップラシフト量Ｆｄｓ０＜０Ｈｚであり、ＧＰＳ信号の見かけの周波数が低くなっている場合、カウント幅ΔＣは１より小さな値に設定される。
【０１０８】
そして、サンプリング間隔設定部２３３は、カウント幅ΔＣをダウンサンプリング部２１３の加算部３０１に供給し、標準サンプリング間隔Ｉｓ０をダウンサンプリング部２１３の減算部３０２に供給する。
【０１０９】
加算部３０１は、Ａ／Ｄコンバータ１２５のサンプリング周期と同期して、バッファ３０５のバッファ値Ｂとカウント幅ΔＣを加算したカウント値Ｃを、減算部３０２、比較器３０３、及び、セレクタ３０４に供給する。
【０１１０】
減算部３０２は、カウント値Ｃから標準サンプリング間隔Ｉｓ０を引き、得られた減算値Ｃ−Ｉｓ０をセレクタ３０４に供給する。
【０１１１】
比較器３０３は、カウント値Ｃが標準サンプリング間隔Ｉｓ０未満の場合、イネーブル信号の値を０に設定し、カウント値Ｃが標準サンプリング間隔Ｉｓ０以上の場合、イネーブル信号の値を１に設定する。
【０１１２】
セレクタ３０４は、イネーブル信号の値が０の場合、カウント値Ｃをバッファ３０５に供給し、バッファ３０５に保持させる。一方、セレクタ３０４は、イネーブル信号の値が１の場合、減算値Ｃ−Ｉｓ０をバッファ３０５に供給し、バッファ３０５に保持させる。
【０１１３】
サンプリング部３０６は、イネーブル信号が０のとき値を出力せず、イネーブル信号が１になったときのベースバンド信号の値を出力する。
【０１１４】
このようにして、ベースバンド信号のダウンサンプリングが行われる。
【０１１５】
ここで、標準サンプリング間隔Ｉｓ０＝１６ビットとした場合のドップラシフト量と実際のサンプリング間隔Ｉｓの関係を、図１１乃至図１３を参照して説明する。
【０１１６】
例えば、ドップラシフトが発生しておらず、カウント幅ΔＣが１に設定されている場合、図１１に示されるように、バッファ値Ｂが０にリセットされた後、ベースバンド信号が１ビット（１サンプル）進む毎に、バッファ値Ｂ及びカウント値Ｃが１ずつ増えていく。その後、ベースバンド信号が１６ビット目まで進んだ時点で、バッファ値Ｂが１５になる。そして、ベースバンド信号の１７ビット目で、カウント値Ｃが１６になり、イネーブル信号の値が１に設定される。これにより、ベースバンド信号の１７ビット目の値がサンプリングされる。
【０１１７】
その後、カウント値Ｃから１６（＝標準サンプリング間隔Ｉｓ０）を引いた値、すなわち０がバッファ３０５に供給され、バッファ値Ｂが０にリセットされる。以降、同様のループ処理が繰り返され、ベースバンド信号が、標準サンプリング間隔Ｉｓ０と同じ１６ビット間隔でサンプリングされる。従って、ダウンサンプリング後のベースバンド信号のサンプリング周波数は、Ｆｓｍｐ／Ｉｓ０（＝Ｆｓｍｐ／１６）となる。
【０１１８】
一方、初期ドップラシフト量Ｆｄｓ０＞０であり、カウント幅ΔＣが１より大きい値に設定されている場合、図１２に示されるように、バッファ値Ｂが０にリセットされた後、ベースバンド信号が１ビット（１サンプル）進む毎に、バッファ値Ｂ及びカウント値ＣがΔＣずつ増えていく。その後、ベースバンド信号が１６ビット目まで進んだ時点で、バッファ値Ｂが１５を超える。そして、ベースバンド信号の１７ビット目で、カウント値Ｃが１６を超え、イネーブル信号の値が１に設定される。これにより、ベースバンド信号の１７ビット目の値がサンプリングされる。
【０１１９】
その後、カウント値Ｃから１６（＝標準サンプリング間隔Ｉｓ０）を引いた余りＲがバッファ３０５に供給され、次のループ処理に持ち越される。すなわち、次のループ処理では、余りＲからカウントが開始される。従って、ベースバンド信号のサンプリングが行われる毎に、ループ処理のバッファ値Ｂの初期値が増えていき、サンプリング間隔が１５ビットに短縮される場合が発生する。その結果、サンプリング間隔Ｉｓの平均値は、１６ビットより短くなる。
【０１２０】
図１３は、初期ドップラシフト量Ｆｄｓ０＝０の場合と、初期ドップラシフト量Ｆｄｓ０＞０の場合のイネーブル信号の出力間隔を比較した模式図である。上述したように、初期ドップラシフト量Ｆｄｓ０＞０の場合、イネーブル信号の出力間隔が短くなり、その結果、サンプリング間隔Ｉｓが短くなる。
【０１２１】
逆に、図示は省略するが、初期ドップラシフト量Ｆｄｓ０＜０の場合、イネーブル信号の出力間隔が長くなり、その結果、サンプリング間隔Ｉｓが長くなる。
【０１２２】
そして、最終的にサンプリング間隔Ｉｓの平均値は、Ｉｓ０／ΔＣ（＝１６／ΔＣ）となる。すなわち、サンプリング間隔Ｉｓの平均値は、ドップラシフトが発生していない場合の標準サンプリング間隔Ｉｓ０の１／ΔＣ（＝Ｆｒｆ／（Ｆｒｆ＋Ｆｄｓ０））倍となる。また、ダウンサンプリング後のベースバンド信号のサンプリング周波数は、（Ｆｓｍｐ／Ｉｓ０）×ΔＣ（＝（Ｆｓｍｐ／１６）×ΔＣ）となる。すなわち、ダウンサンプリング後のベースバンド信号のサンプリング周波数は、ドップラシフトが発生していない場合のΔＣ倍となる。
【０１２３】
このように、初期ドップラシフト量Ｆｄｓ０に応じて、サンプリング間隔Ｉｓが調整されるため、ダウンサンプリング後のベースバンド信号に含まれるＣ／Ａコードの情報の漏れや冗長化の発生が防止される。
【０１２４】
図５に戻り、ステップＳ６において、コヒーレント加算部２１４は、コヒーレント加算を行う。具体的には、コヒーレント加算部２１４は、ダウンサンプリング後のベースバンド信号を１０２３ビット単位でコヒーレント加算する。すなわち、コヒーレント加算部２１４は、最初のステップＳ６の処理において、ダウンサンプリング部２１３から供給される１０２３ビットのベースバンド信号のデータをそのまま保持する。そして、コヒーレント加算部２１４は、２回目以降のステップＳ６の処理において、保持している１０２３ビットのデータに、ダウンサンプリング後のベースバンド信号の次の１０２３ビットのデータを対応するビット毎に加算する。これにより、後述する相関演算のピークの検出感度が上昇する。
【０１２５】
ステップＳ７において、制御部２０２は、コヒーレント加算を所定の回数行ったか否かを判定する。まだコヒーレント加算を所定の回数行なっていないと判定された場合、処理はステップＳ８に進む。
【０１２６】
ステップＳ８において、周波数シフト量設定部２３２、周波数シフト量Ｆｓｆｔを更新する。具体的には、周波数シフト量設定部２３２は、中間周波数Ｆｉｆ及び初期ドップラシフト量Ｆｄｓ０を周波数変換部２１１の加算部２６２に供給し、ドップラシフト変動量ΔＦｄｓを周波数変換部２１１の積分器２６１に供給する。
【０１２７】
これにより、１回目のステップＳ８の処理において、周波数シフト量Ｆｓｆｔは、Ｆｉｆ＋Ｆｄｓ０＋ΔＦｄｓに設定される。以降、同様に、ｎ回目のステップＳ８の処理において、周波数シフト量Ｆｓｆｔは、Ｆｉｆ＋Ｆｄｓ０＋ｎ×ΔＦｄｓに設定される。
【０１２８】
その後、処理はステップＳ３に戻り、ステップＳ７において、コヒーレント加算を所定の回数行ったと判定されるまで、ステップＳ３乃至Ｓ８の処理が繰り返し実行される。すなわち、周波数シフト量Ｆｓｆｔを更新しながら、離散化信号の周波数変換、周波数変換後のベースバンド信号のダウンサンプリング、及び、ダウンサンプリング後のベースバンド信号のコヒーレント加算が繰り返される。
【０１２９】
また、周波数シフト量Ｆｓｆｔは、コヒーレント加算が行われる毎に、ドップラシフト変化量ΔＦｄｓずつ増えるように更新される。換言すれば、初期ドップラシフト量Ｆｄｓ０及びドップラシフト変動量ΔＦｄｓに基づいて、同期捕捉処理の実行中のＧＰＳ衛星の動きに対するドップラシフト量の変化が予測され、その変化に追従するように、周波数シフト量Ｆｓｆｔが調整される。従って、同期捕捉開始時に、ドップラシフト量を固定する場合と比較して、より正確に離散化信号のドップラシフトの補正を実行することができる。
【０１３０】
一方、ステップＳ７において、コヒーレント加算を所定の回数行ったと判定された場合、処理はステップＳ９に進む。
【０１３１】
ステップＳ９において、位相検出部２１６は、Ｃ／Ａコードの位相を検出する。具体的には、コヒーレント加算部２１４は、コヒーレント加算により得られたコヒーレント加算データを相関演算部２２１に供給する。
【０１３２】
ＰＮ生成部２１５は、同期捕捉を行う対象となるＧＰＳ衛星のＣ／Ａコードを生成し、生成したＣ／Ａコードの位相を１チップ単位でシフトさせながら、各位相のＣ／Ａコードを相関演算部２２１に供給する。
【０１３３】
相関演算部２２１は、コヒーレント加算データと、各位相のＣ／Ａコードとの相関演算をそれぞれ行い、得られた相関値をピーク検出部２２２に供給する。
【０１３４】
ピーク検出部２２２は、相関値が所定の閾値以上となるピークを検出した場合、そのときのＣ／Ａコードの種類及び位相を検出する。また、ピーク検出部２２２は、検出したＣ／Ａコードの種類から同期捕捉したＧＰＳ信号の送信元のＧＰＳ衛星を検出する。そして、ピーク検出部２２２は、検出したＣ／Ａコードの位相、及び、検出したＧＰＳ衛星を示す装置識別情報、同期保持部１４２及びＭＰＵ１４３に供給する。
【０１３５】
一方、ピーク検出部２２２は、相関値が所定の閾値以上となるピークを検出しなかった場合、受信したＧＰＳ信号が同期捕捉の対象としているＧＰＳ衛星からのものでないと判定する。
【０１３６】
その後、同期捕捉処理は、終了する。なお、必要に応じて、他のＧＰＳ衛星を対象として、同期捕捉処理が継続される。
【０１３７】
以上のように、同期捕捉中のドップラシフト量の変化を予測し、その変化に追従して、ドップラシフトの補正量を調整するようにしたので、相関値のピークの検出精度が向上し、その結果、同期捕捉の精度が向上する。
【０１３８】
図１４は、同期捕捉中のドップラシフト量の変化の予測機能をオンに設定した場合と、オフに設定した場合の相関演算部２２１による相関値のピーク値（相関ピーク値）を比較したグラフである。横軸は、コヒーレント加算の回数を示し、縦軸は、相関ピーク値を示している。
【０１３９】
この図に示されるように、予測機能をオンにした方が、オフにした場合と比較して、相関ピーク値が大きくなっている。従って、予測機能をオンにした方が、より正確にＧＰＳ信号のＣ／Ａコードの位相を検出することができる。或いは、予測機能をオンにした方が、より少ないコヒーレント加算回数で、ＧＰＳ信号のＣ／Ａコードの位相を検出することができ、同期捕捉の所要時間を短縮することができる。
【０１４０】
また、初期ドップラシフト量Ｆｄｓ０に応じて、ダウンサンプリングのサンプリング周期Ｉｓを調整するようにしたので、相関値のピークの検出精度が向上し、その結果、同期捕捉の精度が向上する。或いは、より少ないコヒーレント加算回数で、ＧＰＳ信号のＣ／Ａコードの位相を検出することができ、同期捕捉の所要時間を短縮することができる。
【０１４１】
さらに、周波数シフト量Ｆｓｆｔ及びダウンサンプリングのサンプリング間隔Ｉｓの設定には、複雑な演算や処理を行う必要がない。従って、通信装置１０１の構成や処理を複雑化することなく、同期捕捉の精度を向上させることができる。
【０１４２】
＜２．変形例＞
以下、上述した本技術の実施の形態の変形例について説明する。
【０１４３】
例えば、中間周波数変換部１２２を省略して、ＧＰＳ信号を中間周波数に変換せずに、搬送波周波数のまま処理するようにすることも可能である。
【０１４４】
また、例えば、コヒーレント加算部２１４を省略して、ダウンサンプリングを行わずに、ベースバンド信号のコヒーレント加算を行うようにすることも可能である。
【０１４５】
さらに、例えば、同期捕捉部１４１の周波数変換部２１１を、Ａ／Ｄコンバータ１２５の前に配置するようにしてもよい。すなわち、Ａ／Ｄ変換する前のアナログ信号に対して、周波数シフト量設定部２３２により設定された周波数シフト量Ｆｓｆｔを用いて、ドップラシフトの補正を行うようにしてもよい。
【０１４６】
また、例えば、初期ドップラシフト量Ｆｄｓ０とドップラシフト変動量ΔＦｄｓに基づいて、ドップラシフト量の変化を予測する代わりに、周波数シフト量Ｆｓｆｔを更新するタイミングで、エフェメリスデータや、通信装置１０１の位置及び現在時刻等に基づいて、その都度最新のドップラシフト量を算出するようにしてもよい。
【０１４７】
さらに、以上の説明では、コヒーレント加算を１回行う毎に、周波数シフト量Ｆｓｆｔを更新する例を示したが、コヒーレント加算が開始されてから終了するまでの間に、他のタイミングで１回以上周波数シフト量Ｆｓｆｔを更新するようにしてもよい。例えば、コヒーレント加算が所定のｎ回行われる毎に周波数シフト量Ｆｓｆｔを更新したり、所定の時間が経過する毎に周波数シフト量Ｆｓｆｔを更新したりするようにしてもよい。
【０１４８】
また、以上の説明では、ダウンサンプリングのサンプリング周期Ｉｓを、１回の同期捕捉処理において１度だけ設定し、更新しない例を示したが、周波数シフト量Ｆｓｆｔと同様に、ドップラシフト量の変化に追従して、サンプリング周期Ｉｓを更新するようにしてもよい。
【０１４９】
また、本技術は、ＧＰＳを利用する通信装置単体のみでなく、ＧＰＳを利用する通信装置を搭載する各種の装置、例えば、ナビゲーションシステム、スマートフォン、携帯電話機等にも適用することができる。
【０１５０】
さらに、本技術は、ＧＰＳ以外の方式の衛星航法システム（例えば、GLONASS、Galileo、Compass等）を利用する通信装置や、当該通信装置を搭載する各種の装置にも適用することが可能である。
【０１５１】
また、本技術は、衛星航法システム以外にも、送信側と受信側の相対位置が変化することによりドップラシフトが発生し、かつ、受信側から送信側の相対位置の動きを予測することが可能なシステムを利用する通信装置、当該通信装置を搭載する各種の装置にも適用することが可能である。
【０１５２】
［コンピュータの構成例］
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１５３】
図１５は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１５４】
コンピュータにおいて、CPU（Central Processing Unit）５０１，ROM（Read Only Memory）５０２，RAM（Random Access Memory）５０３は、バス５０４により相互に接続されている。
【０１５５】
バス５０４には、さらに、入出力インタフェース５０５が接続されている。入出力インタフェース５０５には、入力部５０６、出力部５０７、記憶部５０８、通信部５０９、及びドライブ５１０が接続されている。
【０１５６】
入力部５０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部５０７は、ディスプレイ、スピーカなどよりなる。記憶部５０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部５０９は、ネットワークインタフェースなどよりなる。ドライブ５１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア５１１を駆動する。
【０１５７】
以上のように構成されるコンピュータでは、CPU５０１が、例えば、記憶部５０８に記憶されているプログラムを、入出力インタフェース５０５及びバス５０４を介して、RAM５０３にロードして実行することにより、上述した一連の処理が行われる。
【０１５８】
コンピュータ（CPU５０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア５１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することができる。
【０１５９】
コンピュータでは、プログラムは、リムーバブルメディア５１１をドライブ５１０に装着することにより、入出力インタフェース５０５を介して、記憶部５０８にインストールすることができる。また、プログラムは、有線又は無線の伝送媒体を介して、通信部５０９で受信し、記憶部５０８にインストールすることができる。その他、プログラムは、ROM５０２や記憶部５０８に、あらかじめインストールしておくことができる。
【０１６０】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１６１】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０１６２】
さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１６３】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１６４】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１６５】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１６６】
また、例えば、本技術は以下のような構成も取ることができる。
【０１６７】
（１）
人工衛星から受信する受信信号であって、所定の拡散符号を用いてスペクトラム拡散した信号を所定の搬送波周波数で変調した信号である受信信号のドップラシフト量を算出するドップラシフト量算出部と、
算出された前記ドップラシフト量に基づいて、Ａ／Ｄ変換された 前記受信信号をダウンサンプリングするサンプリング間隔を設定するサンプリング間隔設定部と、
設定された前記サンプリング間隔で、Ａ／Ｄ変換された前記受信信号をダウンサンプリングするダウンサンプリング部と、
ダウンサンプリングされた前記受信信号のコヒーレント加算を行うコヒーレント加算部と、
拡散符号を生成する拡散符号生成部と、
コヒーレント加算の演算結果と生成された前記拡散符号との相関演算を行い、相関演算の結果に基づいて、前記受信信号の前記拡散符号の位相を検出する位相検出部と
を備える通信装置。
（２）
前記サンプリング間隔設定部は、前記サンプリング間隔の平均値を、ドップラシフトが発生していない場合のサンプリング間隔の（前記搬送波周波数÷（前記搬送波周波数＋前記ドップラシフト量））倍に設定する
前記（１）に記載の通信装置。
（３） 
前記サンプリング間隔設定部は、（前記搬送波周波数＋前記ドップラシフト量）÷前記搬送波周波数にカウント幅を設定し、
前記ダウンサンプリング部は、前記受信信号の１サンプル毎に前記カウント幅だけカウント値を積算し、前記カウント値が所定の値以上になったとき、前記受信信号のサンプリングを行い、その後、前記カウント値から前記所定の値を引いた余りからカウントを開始する
前記（２）に記載の通信装置。
（４）
算出された前記ドップラシフト量に基づいて、前記受信信号の周波数をシフトする周波数シフト量を設定する周波数シフト量設定部と、
設定された前記周波数シフト量だけ前記受信信号の周波数をシフトする周波数変換部と
をさらに備え、
前記ダウンサンプリング部は、周波数がシフトされた前記受信信号のダウンサンプリングを行う
前記（１）乃至（３）のいずれかに記載の通信装置。
（５）
前記受信信号をＡ／Ｄ変換するＡ／Ｄ変換部 を
さらに備え、
前記周波数変換部は、Ａ／Ｄ変換された前記受信信号の周波数をシフトする
前記（４）に記載の通信装置。
（６） 
前記受信信号の周波数を前記搬送波周波数から所定の中間周波数に変換する中間周波数変換部を
さらに備え、
前記Ａ／Ｄ変換部は、前記中間周波数に変換された前記受信信号のＡ／Ｄ変換を行い、
前記周波数変換部は、Ａ／Ｄ変換された前記受信信号の周波数を、前記中間周波数と前記ドップラシフト量を合わせた周波数だけシフトする
前記（５）に記載の通信装置。
【符号の説明】
【０１６８】
１０１  通信装置,  １１１  通信アンテナ,  １１２  周波数変換部,  １１４  復調部,  １２２  中間周波数変換部,  １２５  Ａ／Ｄコンバータ,  １４１  同期捕捉部,  １４２  同期保持部,  １４３  ＭＰＵ,  ２０１  同期捕捉処理部,  ２０２  制御部,  ２１１  周波数変換部,  ２１３  ダウンサンプリング部,  ２１４  コヒーレント加算部,  ２１５  ＰＮ生成部,  ２１６  位相検出部,  ２２１  相関演算部,  ２２２  ピーク検出部,  ２３１  ドップラシフト量算出部,  ２３２  周波数シフト量設定部，  ２３３  サンプリング間隔設定部,  ２５１  ＮＣＯ,  ２５２  複素乗算部,  ２６１  積分器,  ２６２  加算部,  ２６３  除算部,  ２６４  乗算部,  ２６５  位相アキュムレータ,  ２６６  ｃｏｓ波生成部,  ２６７  ｓｉｎ波生成部,  ３０１  加算部，  ３０２  減算部,  ３０３  比較器,  ３０４  セレクタ,  ３０５  バッファ,  ３０６  サンプリング部,  ４０１  ＧＰＳ衛星
【図１】
2014120863.tif 000003
【図２】
2014120863.tif 000004
【図３】
2014120863.tif 000005
【図４】
2014120863.tif 000006
【図５】
2014120863.tif 000007
【図６】
2014120863.tif 000008
【図７】
2014120863.tif 000009
【図８】
2014120863.tif 000010
【図９】
2014120863.tif 000011
【図１０】
2014120863.tif 000012
【図１１】
2014120863.tif 000013
【図１２】
2014120863.tif 000014
【図１３】
2014120863.tif 000015
【図１４】
2014120863.tif 000016
【図１５】
2014120863.tif 000017