説明

受信機、復調方法およびプログラム

【課題】衛星信号の復調の高精度化を可能とする。
【解決手段】擬似雑音コードに対応するレプリカコードを生成するコード発生器321と、互いに異なる複数のコード位相制御量を設定する制御量設定部1323と、各コード位相制御量に基づいてレプリカコードと擬似雑音コードとの相関処理を行う相関処理部30と、各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出するコード位相差算出部1324とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、衛星から送出される衛星信号を復調するためのGNSS(Global Navigation Satellite System)受信機、復調方法およびプログラムに関する。
【背景技術】
【0002】
衛星から送出されるGPS信号(衛星信号)は、衛星に固有のC(Coarse)/A(Acquisition)コード等の擬似ランダム符号で位相変調が行われている。そのため、GPS受信機(GNSS受信機)では一般に、変調に用いられる擬似ランダム符号と同一の擬似ランダム符号(レプリカ)を生成し、そのレプリカでGPS信号を復調する処理を行っている。従来のGPS信号の復調処理として、非特許文献1に開示されたGPS受信機では、位相の異なる3種類のレプリカ(Early, Punctual, Late)を生成し、GPS信号と各レプリカとの相関に基づいて、GPS信号のトラッキング処理を行うようにしている。
【先行技術文献】
【特許文献】
【0003】
【非特許文献1】Elliott D.Kaplan, Understanding GPS PRINCIPLES AND APPLICATIONS, Artech House
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1に開示されたGPS受信機では、3ビットのシフトレジスタにクロックを与え、そのクロックに基づいて、シフトレジスタに取り込まれるレプリカのチップ列を1チップずつシフトして出力している。つまり、このGPS受信機では、クロックがシフトレジスタに入力されるタイミングでレプリカの先頭チップがシフトレジスタから出力されるため、生成される3種類のレプリカの間の位相差がクロック周波数によって決定される。しかしながら、マルチパス等の影響でGPS信号の位相が乱れる状況下では、レプリカと擬似ランダム符号との相関のピーク(追尾点)がずれて、GPS信号を高精度に復調することが難しいという問題があった。
【0005】
そこで本発明は、衛星信号の復調の高精度化を可能とする受信機、復調方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記の課題を解決するためのGNSS受信機は、擬似雑音コードによって変調された衛星信号を復調するためのGNSS受信機であって、前記擬似雑音コードに対応するレプリカコードを生成するレプリカコード生成部と、互いに異なる複数のコード位相制御量を設定する制御量設定部と、前記各コード位相制御量に基づいて前記レプリカコードと前記擬似雑音コードとの相関処理を行う少なくとも1つの相関処理部と、前記各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出するコード位相差算出部と、を備えるものである。
【0007】
このGNSS受信機によれば、相関処理部が相関処理を行う場合に、制御量設定部で設定されるすべてのコード位置制御量が異なる。そして、コード位相差は、各相関処理により得られた相関結果に基づいて算出される。
【0008】
上記の課題を解決するための復調方法は、擬似雑音コードによって変調された衛星信号を復調するための復調方法であって、互いに異なる複数のコード位相制御量を設定するステップと、前記擬似雑音コードに対応するレプリカコードを生成するステップと、前記各コード位相制御量に基づいて前記レプリカコードと前記擬似雑音コードとの相関処理を行うステップと、前記各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出するステップと、を備えるものである。
【発明の効果】
【0009】
本発明によれば、衛星信号の復調の高精度化を実現することができる。
【図面の簡単な説明】
【0010】
【図1】第1実施形態に係るGPS受信機を含むシステムの概略構成を示すブロック図である。
【図2】RF部の構成を示すブロック図である。
【図3】信号処理部の構成を示すブロック図である。
【図4】第1実施形態において、トラッキング処理時の各信号処理部およびプロセッサの動作を説明するための図である。
【図5】トラッキング処理における2種類のレプリカの一例について説明するための図である。
【図6】第1実施形態において、相関結果の合成処理の前後の相関結果の一例を説明するための図である。
【図7】ベースバンド部の動作を示すフローチャートである。
【図8】トラッキング処理時の各信号処理部およびプロセッサの動作を示すフローチャートである。
【図9】第2実施形態において、トラッキング処理時の各信号処理部およびプロセッサの動作を説明するための図である。
【図10】第2実施形態において、相関結果の合成処理の前後の相関結果の一例を説明するための図である。
【発明を実施するための形態】
【0011】
<第1実施形態>
以下、本発明のGNSS受信機の一実施形態を図面を参照して説明する。実施形態に係るGNSS受信機は、例えばGPS(Global Positioning System)に用いられるGPS受信機である。
【0012】
図1は、GPS受信機を含むシステムの概略構成を示すブロック図である。
図1に示すシステムでは、GPS受信機100は、アンテナ11、RF(Radio Frequency)部12およびベースバンド部13を備える。
【0013】
このGPS受信機100において、アンテナ11は、衛星300から送出される高周波信号(衛星信号)を受信する。この実施形態では、衛星300から送出される高周波信号は、L1帯(中心周波数1575.42Hz)でC/Aコード(第1コード)で変調されている場合について説明するが、L2帯(中心周波数1227.6Hz)等の周波数を有する高周波信号、または、Pコード等のコードで変調されている高周波信号の場合もGPS受信機100は同様の構成をとることが可能である。なお、図1では、説明の便宜上、1基の衛星のみを示している。
【0014】
RF部12は、アンテナ11から出力される高周波信号RFを取り込み、高周波信号RFを中間周波数にダウンコンバートして1ビット(2値)のデジタル信号に変換する。この実施形態では、一例として、RF部12が1ビットのデジタル信号に変換する場合について示しているが、2ビットなどのデジタル信号に変換する場合も同様の構成をとることが可能である。このRF部12は、変換された中間周波数信号(衛星信号)IFを後段のベースバンド部13へ出力する。さらに、RF部12は、ベースバンド部12のサンプリングクロック(以下、「クロックCLK」という。)を生成してベースバンド部12へ出力する。
【0015】
ベースバンド部13は、RF部12から出力される中間周波数信号IFを並列に相関処理する。図1では、ベースバンド部13は、中間周波数信号IFを受信するためのチャネル1,2,・・・,Nにそれぞれ対応した各信号処理部131、および、1つのプロセッサ132(制御部)を備える。この実施形態の説明では、一例として、チャネル数、すなわち上述したNの値を16とするが、チャネル数は、少なくとも2以上であればよい。16チャネルの各信号処理部131は、それぞれ同時に、RF部12から出力される中間周波数信号IFを受信して相関処理を行うことが可能である。この相関処理の処理については、後に詳細に説明する。
【0016】
プロセッサ132は、16チャネル内の各信号処理部131と通信可能に接続されている。プロセッサ132はさらに、情報端末200と接続されている。この実施形態では、情報端末200の一例としてパーソナルコンピュータを適用する場合について説明するが、上述したプロセッサ132からの信号を受信して測位制御可能な端末であれば、例えば、携帯電話、PDA(Personal Digital Assistant)などでもよい。この実施形態の情報端末200は、図示しないCPU、メモリ、表示装置および入力装置などのデバイスを備える。
図1では、プロセッサ132は、ROM1321およびRAM1322を備える。なお、ROM1321は、プロセッサ132とは別に構成し、プロセッサ132に外付けする構成も可能である。
【0017】
なお、この実施形態では、プロセッサ132を採用する構成について説明するが、例えばCPU等を採用するようにしてもよい。以下、図1に示したRF部12およびベースバンド部13について詳述する。
【0018】
[RF部12]
図2は、RF部12の構成を説明するためのブロック図である。
図2に示すように、RF部12は、高周波増幅部121、ミキサ122、AGC(Automatic Gain Control)123、A/D変換器124、基準周波数源125、周波数シンセサイザ126およびA/D変換器127を備える。高周波増幅器121は、高周波信号RFを受信して増幅する。
なお、図2には図示されていないが、高周波信号RFの雑音を少なくするために、高周波増幅器121の前段、または、アンテナ11内において、LNA(Low Noise Amplifier)を設けるようにしてもよい。
【0019】
ミキサ122は、高周波増幅部121の出力信号を周波数シンセサイザ126から出力されるローカル信号LOと混合し、高周波増幅部121の出力信号を中間周波数、または、ベースバンド周波数に変換する。この実施形態では、一例として、中間周波数を80MHz(1サイクルは12.5nsec)とする場合について説明する。図2の例では、1つのミキサ122が上述した中間周波数に変換する場合について示しているが、例えば、2段のミキサを設けておき、各ミキサが2回に分けて周波数をダウンコンバートすることで、上述した中間周波数を得る構成をとることも可能である。
【0020】
AGC123は、ミキサ122の出力信号が一定のレベルとなるようにミキサ122の利得を調整するように構成されている。この実施形態では、一例として、AGC123がミキサ122の利得を調整する場合について示しているが、高周波増幅部121の出力を調整する構成とすることも可能である。
A/D変換器124は、ミキサ122の出力信号を2値(1ビット)のデジタル信号に変換して中間周波数信号IFを出力する。この変換は、例えば、リミッタがミキサ122からの出力信号を2値に変換して行われるようにしてもよい。また、この実施形態では、一例として、1ビットのデジタル信号に変換する場合について説明するが、2ビットなどのデジタル信号に変換することも可能である。
【0021】
基準周波数源125は、基準となる周波数を周波数シンセサイザ126に供給する。GPS受信機では一般に高い周波数安定度が求められるため、基準周波数源125としては、例えば、TCXO(Temperature Compensated Crystal Oscillator)等が用いられる。
【0022】
周波数シンセサイザ126は、基準周波数源125から供給される周波数を有する信号から、上述したローカル信号LOおよびクロックを生成する。周波数シンセサイザ126としては、例えば、VCO(Voltage Controlled Oscillator)等を含むPLL(Phase Lock Loop)回路が用いられる。
【0023】
A/D変換器127は、周波数シンセサイザ126から出力されるアナログ信号のクロックをデジタル信号に変換して、上述したクロックCLKとして出力する。この変換も、例えば、リミッタを用いる構成をとることが可能である。
【0024】
[ベースバンド部13]
図3は、ベースバンド部13を構成する各信号処理部131およびプロセッサ132の構成を説明するためのブロック図である。なお、以下の説明において、各信号処理部131に共通の説明では単に各信号処理部が単に信号処理部131として参照される。信号処理部131は、ASIC(Application Specific Integrated Circuit)等のデジタル回路で実現することが可能である。
【0025】
信号処理部131では、中間周波数信号IFからその同相成分および直交成分を得て、後述する各成分の相関結果を得るための相関処理を行う。そのために信号処理部131において、図3に示すように、相関処理部30は、1対の乗算器301,302、SINマップ303、COSマップ304、搬送波NCO(Numerically Controlled Oscillator)305、14個の乗算器306〜319および14個の相関器323〜336を有する。各相関器は、例えば、積分及びダンプ(Dump)フィルタである。
さらに、信号処理部131は、レジスタ320、コード発生器(レプリカコード生成部)321およびコードNCO(Numerically Controlled Oscillator)322を備える。
【0026】
なお、図3の相関処理部30では、1対の乗算器301,302、SINマップ303、COSマップ304、搬送波NCO305、乗算器306〜319および相関器323〜336を有する場合について示しているが、1対の乗算器301,302、SINマップ303、COSマップ304および搬送波NCO305は、相関処理部30とは別に構成することも可能である。
【0027】
乗算器301は、中間周波数信号IFから同相成分の同相信号Iを抽出するために、中間周波数信号IFと、SINマップ303から出力されるサイン信号とを乗算する。サイン信号は、搬送波NCO305が生成する搬送波(以下、「レプリカ搬送波」という。)の同相成分の信号であり、SINマップ303は、レプリカ搬送波から同相成分のサイン信号を抽出するための公知の機能を備えており、この機能により抽出されたサイン信号を乗算器301へ出力する。
【0028】
搬送波NCO305は、プロセッサ132から、中間周波数信号IFとレプリカ搬送波との間の位相または周波数を一致させるためにレプリカ搬送波の位相または周波数を制御するためのキャリア位相制御量φ1を受信する。搬送波NCO305は、キャリア位相制御量φ1を受信すると、そのキャリア位相制御量φ1に基づいて決定されるレプリカ搬送波を生成して、SINマップ303およびCOSマップ304へ出力する。なお、搬送波NCO305のサンプリングクロックとしては、上述したクロックCLKが用いられる。
【0029】
COSマップ304は、レプリカ搬送波から直交成分のコサイン信号を抽出するための公知の機能を備えており、この機能により抽出されたコサイン信号を乗算器302へ出力する。
【0030】
乗算器302は、中間周波数信号IFから直交成分の直交信号Qを抽出するために、中間周波数信号IFと、COSマップ304から出力されるコサイン信号とを乗算する。
【0031】
各乗算器306,307,・・・,312は、乗算器301から出力される同相信号Iと、レジスタ319から出力される各C/Aコード(以下、「レプリカコード」という。)とを乗算する。レプリカコードは、中間周波数信号IFに含まれるC/Aコードのレプリカを意味する。また、各乗算器313,314,・・・,319は、乗算器302から出力される直交信号Qと、レジスタ320から出力される各レプリカコードとを乗算する。
【0032】
この実施形態では、レジスタ320は、一例として、7ビットのシフトレジスタである場合について説明するので、レジスタ320は、コード発生器321から出力される1つのレプリカコードをクロックCLKに同期して(応じて)ラッチして出力することで、全体として、7種類の位相を有するレプリカコードを出力することになる。すなわち、図3に示すように、レジスタ320は、位相の早い順にレプリカコードE1,E2,E3,P,L1,L2,L3を出力する。この場合、レプリカコードE1,E2,E3は位相の早いレプリカコードを指し、レプリカコードPは定時のレプリカコードを指し、レプリカコードL1,L2,L3は位相の遅いレプリカコードを指していることを意味する。この実施形態の説明では、一例として、7種類の各レプリカコード間の位相差(間隔)を0.012chip程度(12.5nsec)とする。
【0033】
レジスタ320に設けられる各出力ポートには、それぞれ一対の乗算器(同相信号I側の乗算器および直交信号Q側の乗算器)が接続されている。これにより、各レプリカコードE1,E2,・・・,L3が、対応する一対の乗算器に出力される。例えば、一対の乗算器306,313には、レプリカコードE1が出力される。
【0034】
ここで、コード発生器321は、コードNCO322の出力信号を入力したタイミングで1つのレプリカコードを生成してレジスタ320へ出力する。コードNCO322は、プロセッサ132から、中間周波数信号IFに含まれるC/Aコードとレプリカコードとの間の位相を一致させるためにレプリカコードの位相を制御するためのコード位相制御量φ2を受信する。コード位相制御量φ2としては、例えば、1クロック当たりの位相の増加分を示す値がある。コードNCO321は、コード位相制御量φ2を受信すると、そのコード位相制御量φ2に基づいて決定されるタイミングで、コード発生器320に対して信号を出力する。
【0035】
各相関器323,324,・・・,329は、乗算器306,307,・・・,312の各々から出力される信号を入力する。そして、各相関器323,324,・・・,329は、対応する乗算器の出力を1ビット分積分してプロセッサ132へ出力する。また、各相関器330,331,・・・,336は、乗算器313,314,・・・,319の各々から出力される信号を受信する。そして、各相関器330,331,・・・,336は、対応する乗算器の出力を1ビット分積分してプロセッサ132へ出力する。これにより、同相信号Iおよび直交信号Qの各々について、C/Aコードとレプリカコードとの相関結果が得られる。
【0036】
なお、レプリカコードの種類(すなわち、レジスタから出力されるレプリカコードの位相の数)は、上述した7つに限られず、2つ(例えば、Early,Late)、3つ(例えば、Early,Punctual,Late)、または、4つ以上となるように構成してもよい。
【0037】
次に、プロセッサ132について説明する。
プロセッサ132は、中間周波数信号(衛星信号)の捕捉およびトラッキングの処理のほか、後述するコード位相制御量の設定、コード位相差の算出、相関結果の合成処理等を実行する。そのために、この実施形態では、図3に示すように、プロセッサ132は、制御量設定部1323、コード位相差算出部1324および合成部1325を備える。これらの機能は、例えば、プロセッサ132がROM1321に記録されたプログラムを読み出し、そのプログラムに従って動作することで実現される。
制御量設定部1323は、互いに異なる複数のコード位相制御量の設定を行う。この設定の処理については、後で詳細に説明する。
【0038】
コード位相差算出部1324は、制御量設定部1323により設定された各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出する。この算出の処理についても、後で詳細に説明する。
なお、この実施形態では、制御量設定部1323およびコード位相差算出部1324は、中間周波数信号IFが捕捉され、捕捉された中間周波数信号IFのトラッキング処理時において動作する場合について説明する。
トラッキング処理は、中間周波数信号IFに追従しながら、相関のピーク(追尾点)を継続して追跡するための目的で行われる。トラッキング処理としては、C/Aコードのトラッキング処理と、搬送波周波数のトラッキング処理とがある。
【0039】
本実施形態のトラッキング処理は、複数のチャネル内の信号処理部131が並列処理を行うことで実現されるように構成されている。この実施形態では、一例として、2つのチャネル内の信号処理部131が動作する場合について、図4を参照して説明する。
【0040】
図4は、トラッキング処理時における2つの信号処理部およびプロセッサ132の動作を説明するための図である。なお、以下の説明では、理解の容易のために、あるチャネル(例えば、1チャネル)に設けられた信号処理部を信号処理部131A(第1信号処理部)とし、他のチャネル(例えば、2チャネル)に設けられた信号処理部を信号処理部131B(第2信号処理部)として参照されるが、各信号処理部131A,131Bの構成は、図3で示した信号処理部131と同一である。
【0041】
図4では、一例として、プロセッサ132(制御量設定部1323)が、信号処理部131Aから出力される相関結果(すなわち、14個の相関器323〜336の出力)に基づいて、2つの信号処理部131A,131Bの各々に対し、互いに異なる複数のコード位相制御量φ2,φ21を設定する場合の動作を表している。
【0042】
図4において、プロセッサ132(制御量設定部1323)は、図3で示したプロセッサ132と同様に、信号処理部131Aに対して、キャリア位相制御量φ1およびコード位相制御量φ2(第1コード位相制御量)を設定して出力する。この場合、図3で示した信号処理部131と同様に、信号処理部131A(相関処理部30)では、キャリア位相制御量φ1およびコード位相制御量φ2に基づく相関処理を行い、その相関結果(すなわち、14個の相関器323〜336の出力)をプロセッサ132へ出力する。なお、図4では、信号処理部131Aおよび信号処理部131Bともに、各相関器323〜336から出力される相関結果のデータフロー(信号処理部からプロセッサ132に至るフロー)を一部省略して示している。
【0043】
さらに、図4において、プロセッサ132(制御量設定部1323)は、信号処理部131Bに対しては、キャリア位相制御量φ1およびコード位相制御量φ21を設定して出力する。信号処理部131Bにキャリア位相制御量φ1が出力される点は、信号処理部131Aの場合と同様であるが、コード位相制御量φ21が出力される点は、信号処理部131Aの場合と異なる。この実施形態では、コード位相制御量φ21は、例えば、コード位相制御量φ2から所定量(例えば、α)をオフセットさせる制御量(例えば、(例えば、φ2+α)である。
【0044】
ここで、上述したオフセットさせる所定量(以下、オフセット値という)は、信号処理部131Aでコード位相制御量φ2に基づいて生成されるレプリカコード(上述したレプリカコードP)の先頭チップからの位相のずれを示す値、すなわち、C/Aコードの追尾点からの差(この実施形態では、例えば、遅延時間)で示される。オフセット値は、ROM1321に記録されている。
【0045】
この実施形態では、プロセッサ132(制御量設定部1323)は、中間周波数信号IFの周波数(=1/周期)、および、トラッキング処理時に用いられるチャネルの数(すなわち、信号処理部の数)に基づいて、オフセット値を決定するようにしている。この例では、オフセット値は、(中間周波数信号IFの周期)/(使用されるチャネルの数)で与えられる。チップ表示では、オフセット値は、(C/Aコードのチップレート)/{(中間周波数信号IFの周波数)×(使用されるチャネルの数)}で与えられる。これにより、中間周波数信号IFの周期(周波数)が考慮された上でオフセット値が設定されることが可能となる。
この実施形態では、C/Aコードのチップレートを1.023MHz、中間周波数信号IFの周波数を80MHzとし、使用されるチャネルの数を2つとした場合を例に説明するため、オフセット値αは、0.006チップ程度(=1.023/{80×2})(例えば、遅れ)となる。なお、αの値は、上述した例に限られず、指定される値に変更してもよいし、定期的に変更するようにしてもよい。
【0046】
オフセット値αが−0.006チップ程度の場合、図3を参照すると、信号処理部131Bでは、コードNCO322は、信号処理部131AのコードNCO322と異なり、コード位相制御量φ2よりオフセット値α(例えば、0.006チップ程度)だけ遅いタイミングで、コード発生器320に対して信号が出力される。従って、信号処理部131Bでは、コード発生器321がレジスタ320に対して先頭のレプリカコードを出力するタイミングは、信号処理部131Aのコード発生器320が先頭のレプリカコードを出力するタイミングよりα(例えば、0.006チップ程度)だけ遅れる。そのために、信号処理部131Bのレジスタ320から出力される7種類のレプリカコード(E1,E2,・・・,P,・・・,L3)の位相が、信号処理部131Aのレジスタ320から出力される7種類のレプリカコード(E1,E2,・・・,P,・・・,L3)よりαだけ遅れることになる。
【0047】
ここで、各信号処理部131A,131Bで生成されるレプリカコードPの一例について、図5を参照して説明する。
図5は、2つの信号処理部131A,131Bで生成されるレプリカコードの位相差tを説明するための図であって、(a)は受信されたC/Aコードの先頭チップ、(b)は信号処理部131Aで生成されるレプリカコードの先頭チップ、(c)は信号処理部131Bで生成されるレプリカコードの先頭チップのパターンを示すものである。
例えば(b)のレプリカコードは、(a)のC/Aコードと同じ位相となるが、(c)のレプリカコードの位相は、(b)のレプリカコードよりα(例えば、0.006チップ程度)だけ遅延する。
【0048】
このように、信号処理部131Bにおいて、コード発生器321は、トラッキング処理時において、信号処理部131Aで生成される各レプリカコードよりαだけ遅延した各レプリカコードを生成する。そして、この信号処理部131Bにおいて、相関処理部30は、各レプリカコードとC/Aコードとの相関処理を行い、その相関結果(すなわち、14個の相関器323〜336の出力)をプロセッサ132に対して出力する。
【0049】
再び図3を参照して、合成部1325について説明する。
合成部1325は、複数の信号処理部(この実施形態では、2つの信号処理部131A,131B)の各々が出力する相関結果を合成する。この合成例について、図6を参照して説明する。
【0050】
図6は、相関結果の合成処理の前後の相関結果の一例を説明するための図であって、(a)は信号処理部131Aが出力する相関結果、(b)は信号処理部131Bが出力する相関結果、(c)は合成処理後の合成例を示すものである。なお、図6では、同相信号Iについての相関結果(すなわち、図3の相関器323〜329の出力)を、丸印または三角印で示している。この図6において、横軸はコード位相差t(単位はチップ)、縦軸は相関値R(t)を表している。
【0051】
図6(a)では、7つの相関結果E1,E2,・・・,L3は、例えば2α(=0.012チップ程度)の間隔で示されている。この例では、相関結果E1,E2,・・・,L3のそれぞれが、相関器323,324,・・・,329の出力値、すなわち相関値R(t)として示されている。さらに、図6(b)では、7つの相関結果E1(α),E2(α),・・・,L3(α)が示されている。この例では、各相関結果の間隔が2αとなっている点は、(a)のものと同様であるが、各相関結果の位置が(a)に示すものよりα(遅れ)ずれている。
【0052】
図6(c)では、(a)および(b)の相関結果が組み合わされて(合成されて)、相関結果の数が全部で14となっている。そして、各相関結果の間隔は、αとなっている。そのため、相関の距離分解能が、(a)または(b)のものに比べて2倍になる。
【0053】
この実施形態において、コード位相差算出部1324は、合成部1325によって合成された相関結果に基づいてコード位相差を算出することが可能となる。図6(c)の例では、全部で14の相関結果が得られるので、コード位相差算出部1324は、それらの相関値R(t)を用いて外挿したり、各相関値R(t)を比較したりすることで相関カーブ(図6(c)の実線で示したもの)のピークを推定し、そのピークとなるコード位相差を求める。これにより、マルチパス等の影響で相関関係に歪みが生じる状況下にあっても、相関カーブのピークを正確に検出しやすくなる。これにより、測位誤差が抑制され、高精度の復調が可能となる。
また、コード位相差算出部1324は、上述の推定されたピークから、図6(a)の相関結果Pのコード位相差が上記ピークに近づくように図6(a)の相関結果Pのコード位相差を補正することも可能である。
【0054】
なお、この実施形態では、コード位相差算出部1324が合成部1325によって合成された相関結果に基づいてコード位相差を算出する場合について説明するが、相関結果を合成させなくても、コード位相差の算出は可能である。その場合には、コード位相差算出部1324は、各チャネルで得られた相関値R(t)(図6(a)および図6(b))を比較したりすることで相関のピークを推定し、そのピークとなるコード位相差を求める。
【0055】
[ベースバンド部の動作]
次に、本実施形態のGPS受信機100におけるベースバンド部13の動作について説明する。
図7は、ベースバンド部13の動作を示すフローチャートである。
図7において、例えば信号処理部131Aのベースバンド部13がRF部12からGPS信号、すなわち中間周波数信号IFを入力すると、プロセッサ132は、その中間周波数信号IF(同相信号Iおよび直交信号Q)に対する相関処理の相関結果(この実施形態では、信号処理部131Aの相関器323〜336の出力)に基づいて、中間周波数信号IFの捕捉処理を行う(ステップS101)。
【0056】
ステップS101の捕捉処理における相関処理は、図3に示した信号処理部131における相関処理と同様である。すなわち、プロセッサ132がキャリア位相制御量φ1(=初期設定値)およびコード位相制御量φ2(=初期設定値)を信号処理部131Aに対して出力することで、信号処理部131Aにおいて、キャリア位相制御量φ1およびコード位相制御量φ2に基づく相関処理が行われる。その結果、信号処理部131Aにおける相関結果(各相関器323〜336の出力値)が、プロセッサ132へ出力される。しかし、ステップS101の捕捉処理時においては、プロセッサ132は、それらの相関結果(相関器323〜336の出力値)を合計し、さらにその合計値とROM1321に予め設定されている閾値とを比較する。その結果、合計値が閾値を超えた場合には、プロセッサ132は、捕捉が成功したと判断する。これにより、中間周波数信号IFが捕捉される。
【0057】
逆に、合計値が閾値以下の場合には、プロセッサ132は、捕捉が失敗したと判断し、上述した相関結果(相関器323〜336の出力値)に基づいて、キャリア位相制御量φ1およびコード位相制御量φ2を更新して信号処理部131Aに出力する。そのため、合計値が閾値以下の場合には、信号処理部131Aでは、更新後のキャリア位相制御量φ1およびコード位相制御量φ2に基づく相関処理が繰り返し行われることになる。
【0058】
なお、上述した捕捉処理は例示に過ぎず、様々な観点から変更を行うことが可能である。例えば、プロセッサ132は、1種類のレプリカコードPとC/Aコードとの相関結果(例えば、相関器326,333の出力値)の合計値と閾値とを比較することで、捕捉の成否を判断することも可能である。
【0059】
中間周波数信号IFの捕捉後、プロセッサ132(制御量設定部1323)は、信号処理部131Aから出力される相関結果(相関器323〜336の出力値)に基づいて(この実施形態では、コード位相制御量φ2,φ21のうちのコード位相制御量φ2(第1コード位相制御量)に基づく相関処理により得られる相関結果に基づいて)、例えば、2つの信号処理部131A,131B(複数の信号処理部)に対して、互いに異なるコード位相制御量φ2,φ21(φ21=φ2+α)(図4参照)を設定しながら、捕捉された中間周波数信号IFのトラッキング処理を行う(ステップS102)。このトラッキング処理時の各信号処理部131A,131Bおよびプロセッサ132の動作について、図8を参照して具体的に説明する。
【0060】
図8は、トラッキング処理時の各信号処理部131A,131Bおよびプロセッサ132の動作を示すフローチャートである。
図8において、プロセッサ132(制御量設定部1323)では先ず、互いに異なる複数のコード位相制御量φ2,φ21(図4参照)を設定する(ステップS1021)。そして、各信号処理部131A,131Bでは、対応するコード位相制御量φ2またはφ21に基づいて複数のレプリカコードE1,E2,・・・,L3(全部で7種類)を生成し(ステップS1022)、各レプリカコードE1,E2,・・・,L3と、中間周波数信号IFに含まれるC/Aコードとの相関処理を行う(ステップS1023)。この場合、図3に示した信号処理部131と同様に、信号処理部131Aでは、ステップS1022において、コード位相制御量φ2に基づいて7種類のレプリカコードE1,E2,・・・,L3を生成し、次のステップS1023で、各レプリカコードE1,E2,・・・,L3とC/Aコードとの相関処理を行う。
【0061】
一方、信号処理部131Bに対してはすでに説明したように、この実施形態では、コード位相制御量φ21(φ2+α)が与えられるので、ステップS1022において生成される各レプリカコードの位相は、信号処理部131Aに生成される各レプリカコードよりα(=0.006チップ程度)遅れる(図5参照)。従って、ステップS1023における相関処理では、レプリカコードの位相が遅れることで、すべての相関結果の位置が、信号処理部131Aで得られる相関結果よりαだけ遅延する(図6(a)(b)参照)。
【0062】
相関処理後、プロセッサ132(制御量設定部1323)は、信号処理部131Aから出力される相関結果(相関器323〜336の出力値)に基づいて、2つの信号処理部131Aまたは131Bに対して、最新のコード位相制御量φ2またはφ21(φ21=φ2+α)(図4参照)を設定して、対応する信号処理部131Aまたは131Bに出力することで、信号処理部131Aまたは131Bが生成するレプリカコードの位相制御を行う(ステップS1024)。この場合、信号処理部131Aまたは131Bでは、図3に示した信号処理部131と同様に、コードNCO322が、φ2またはφ21に基づいてコード発生器321に対し信号を出力することになるので、レジスタ320から出力されるレプリカコードの位相がφ2またはφ21の値に基づいて制御されることになる。以上のトラッキング処理は所定の期間行われる。
【0063】
再び図7を参照して、ステップS103について説明する。
ステップS103において、プロセッサ132(合成部1325)は、2つの信号処理部131A,131Bの各々から出力される相関結果を合成する。図6(c)の合成例では、2つの信号処理部131A,131Bでの相関結果が組み合わされるため、各相関結果の間隔が2αからαとなる。そのため、合成後の相関の距離分解能が2倍になる。
【0064】
さらに、プロセッサ132(コード位相差算出部1324)は、各コード位相制御量φ2,φ21に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出する(ステップS104)。この実施形態では、コード位相差算出部1324は、上述の合成された相関結果に基づいてコード位相差を算出する。図6(c)を参照すると、コード位相差算出部1324は、14個の相関値R(t)を用いて外挿したり、各相関値R(t)を比較したりすることで相関カーブ(図6(c)の実線で示したもの)のピークを推定し、そのピークとなるコード位相差を求める。従って、マルチパス等の影響で相関関係に歪みが生じる状況下にあっても、相関カーブのピークとなるコード位相差を正確に検出しやすくなる。これにより、測位誤差が抑制され、高精度の復調が可能となる。
以上説明したように、本実施形態のGPS受信機100においては、チャネル毎に、互いに異なるコード位相制御量φ2,φ21に基づく相関処理を行い、各チャネルでの相関処理により得られた相関結果に基づいて、相関値のピークとなるコード位相差を得る。従って、マルチパス等による測位誤差が抑制され、高精度の復調が可能となる。
また、本実施形態では、レプリカコードをクロックCLKに応じて相関処理部30へ出力するレジスタ320が備えられる。これにより、同一のクロックでコード位相差が互いに異なる複数のレプリカコードが生成され、相関の距離分解能が向上することになる。従って、クロック周波数を変えることなく、衛星信号の復調の高精度化を行うことができる。
【0065】
<第2実施形態>
第1実施形態のGPS受信機では、トラッキング処理時において、2つの信号処理部を並列処理し、各信号処理部において相関処理を行う場合を例にしたが、これに限られない。3つ以上の信号処理部を並列処理させるようにしてもよい。
本実施形態では、一例として、トラッキング処理時において、4つの信号処理部が相関処理を行う場合について、図面を参照して説明する。本実施形態におけるシステムの全体の構成は、第1実施形態で説明したもの(図1〜図3)と同様であるが、3つの信号処理部内のコード位相制御量の値が第1実施形態のものと異なる。なお、以下の説明において、理解の容易のために、4つの信号処理部を、信号処理部131A、信号処理部131B、信号処理部131C、信号処理部131Dとして参照される。
以下では、本実施形態におけるトラッキング処理時の各信号処理部およびプロセッサ132の動作について、第1実施形態のものとの差異を中心に説明する。
【0066】
図9は、第2実施形態におけるトラッキング処理時の各信号処理部およびプロセッサ132の動作を説明するための図である。
図9では、一例として、プロセッサ132(制御量設定部1323)が、信号処理部131Aから出力される相関結果(すなわち、14個の相関器323〜336の出力)に基づいて、4つの信号処理部131A,131B,131C,131Dの各々に対し、キャリア位相制御量φ1、および、互いに異なる複数のコード位相制御量φ2,φ31(φ2+β),φ32(φ2+2β),φ33(φ2+3β)を設定する場合の動作を表している。なお、信号処理部131A,131B,131C,131Dに対してキャリア位相制御量φ1が設定されている点は、図4に示したプロセッサ132の場合と同様である。
【0067】
この実施形態では、使用されるチャネル数は4つであるため、オフセット値β(例えば、遅れ)は、(0.012チップ程度)/(4チャネル)で与えられることになる。そのため、φ31,φ32,φ33の値も、φ31=φ2+β、φ32=φ2+2β、φ33=φ2+3βから決められる。
【0068】
この場合、図3に示した信号処理部131Aと同様に、各信号処理部131A,131B,131C,131Dでは、対応するコード位相制御量(φ2,φ31,φ32,φ33)に基づいてレプリカコードを生成することになるので、3つの信号処理部131B,131C,131Dで生成されるレプリカコードの位相は、それぞれβ、2β、3βだけ遅れる。そのため、合成部1325が、4つの信号処理部131A,131B,131C,131Dにおける相関処理の相関結果を合成することで、各相関結果の間隔が理論上、0.012チップ程度→0.003程度(=0.012程度/4)チップ(すなわち、相関の距離分解能が4倍)になる。実際に4つの信号処理部131A〜131Dを並列処理してそれらの相関結果を合成した場合における合成処理の前後の相関結果(実測値)について、図10を参照して説明する。
【0069】
図10は、第2実施形態における合成処理の前後の相関結果を示す実測データの一例を説明するための図であって、(a)は信号処理部131Aが出力する相関結果の実測値、(b)は合成処理後の合成例を示すものである。なお、図10では、同相信号Iについての相関結果(すなわち、図3の相関器323〜329の出力)を、丸印または四角印で示している。
【0070】
図10(a)では、7つの相関結果(E1,E2,・・・,L3)が、例えば0.012チップ程度の間隔で示されている。図10(b)では、4つの信号処理部131A〜131Dにおける相関結果が組み合わされて(合成されて)、相関結果の数が全部で25となっている。そして、各相関結果のコード位相差t(chip)は、約0.003チップ程度となっている。そのため、距離分解能が、(a)のものに比べて約4倍になっている。そのため、図10(b)に示す相関カーブS´の精度が(a)に示す相関カーブSよりも高くなる。図10では、0チップ付近における相関カーブのピークP,P´(β)の推定の際に相関結果から推定される相関カーブの様子を、破線で示してある。
【0071】
コード位相差算出部1324は、上述の合成された相関結果に基づいてコード位相差を算出する。図10(b)を参照すると、コード位相差算出部1324は、複数の相関値R(t)を用いて外挿したり、各相関値R(t)を比較したりすることで相関カーブS´のピークP´(β)を推定し、そのピークとなるコード位相差T´を求める。図10の例では、(B)の相関カーブのピークP´(β)は、(a)に示すピークP´に比べて、コード位相差t(chip)が(T−T´)(遅れ)だけずれている。従って、距離分解能が向上することで、相関カーブの精度を高めることができる。また、マルチパスの推定や検出を正確に行うこともできる。さらに、擬似距離の誤差を小さくすることが可能となる。
【0072】
<第3実施形態>
次に、第3実施形態のGPS受信機について説明する。
上記各実施形態では、トラッキング処理時において、複数のチャネル内の信号処理部を並列処理した例について説明したが、この実施形態のGPS受信機では、1つのチャネル内の信号処理部を利用する。本実施形態に係るGPS受信機を含むシステムは、全体の構成は図1〜3に示した第1実施形態のものと同じであるが、プロセッサ132の制御量設定部1323、コード位相差算出部1324および合成部1325の機能が第1実施形態のものと異なる。
以下では、本実施形態における制御量設定部1323、コード位相差算出部1324および合成部1325の機能について、第1実施形態のものとの差異を中心に説明する。
【0073】
この実施形態の制御量設定部1323は、トラッキング処理時において、所定時間毎に、互いに異なる複数のコード位相制御量を設定する。その場合には、制御量設定部1323は、1つの信号処理部131に対し、所定時間毎のコード位相制御量を出力する。そして、その信号処理部131において、相関処理部30は、所定時間毎のコード位相制御量に基づく相関処理を行い、コード位相差算出部1324は、相関処理部30の出力(この実施形態では、所定時間毎のコード位相制御量に基づく相関処理により得られる相関結果)に基づいて相関のピークとなるコード位相差を算出する。例えば、最初の所定期間において設定されるコード位相制御量をφ2とし、次の所定期間において設定されるコード位相制御量をφ21(=φ2+α:図4参照)とした場合を例に説明すると、この実施形態の制御量設定部1323は先ず、コード位相制御量をφ2とし、所定期間が経過した場合に、φ21のコード位相制御量を設定する。これらのコード位相制御量は、1つの信号処理部131に出力される。なお、所定期間は、予め設定しておくようにすればよい。
【0074】
この場合には、1つの信号処理部131において先ず、相関処理部30は、コード位相制御量φ2に基づいて相関処理を行い(図6(a)に示した相関結果を得る)、所定期間が経過した場合に、コード位相制御量φ21に基づいて相関処理を行う(図6(b)に示した相関結果を得る)。この実施形態では、コード位相制御量φ21は、図4に示したコード位相制御量φ21と同様に、α2+αで示されているので、最後の所定期間において生成されるレプリカコードの位相は、最初の所定期間において生成されるレプリカコードよりαだけ遅延する。これにより、この実施形態のコード位相差算出部1324が、所定時間毎に得られた相関結果に基づいて相関のピークとなるコード位相差を算出する。コード位相差を算出するときの処理は、第1実施形態の場合と同じである。すなわち、コード位相差算出部1324は、所定時間毎の相関結果を比較したりすることで相関のピークを推定し、そのピークとなるコード位相差を求めるが、この処理は、本実施形態においても、合成部1322が所定時間毎に得られた相関結果を合成して図6(c)に示した相関結果を得るので、その合成例を用いることで容易に実行できる。従って、単一の信号処理部を用いてトラッキング処理を行う場合であっても、上述したような、所定期間毎のコード位相制御量に基づく相関処理を順次行うことによって上記各実施形態と同様の作用および効果を奏する。
【0075】
さらに、この実施形態では、トラッキング処理において1つのチャネルだけ利用すればよい。これにより、チャネルを有効活用することが可能となる。
【0076】
なお、本実施形態では、コード位相制御量を2回切り替える場合を例に説明したが、切り替える回数は、3回以上であってもよい。
【0077】
<実施形態の変更例>
上述した各実施形態に係るGPS受信機は例示に過ぎず、これに基づいて以下に示すような変更を行うことが可能である。
【0078】
上記各実施形態では、本発明のGNSS受信機の一例としてGPS受信機を適用した場合について説明したが、受信機の他の例として、測位システムからの衛星信号を利用可能な受信機であればよく、例えば、ガリレオ(Galileo Positioning System)に適用されるGNSS受信機などでもよい。
【0079】
上記各実施形態のGPS受信機では、レジスタ320を構成した例について示したが、互いに異なるコード位相差を有するレプリカコードを生成することができれば、レジスタを構成する必要はない。
【0080】
上記各実施形態のGPS受信機では、アンテナ11、RF部12およびベースバンド部13を備える形態について示しているが、ベースバンド部13のみをGPS受信機側に備えることで、GPS受信機が、上記各実施形態のベースバンド部12(GPS受信機)と同様の作用を実現することができるようになる。例えばベースバンド部112を含むGPS受信機の形態として、ベースバンド部12のみを備える形態(例えば、半導体、モジュール、チップ)、または、RF部12およびベースバンド部13のみを備える形態(例えば、半導体、チップ、モジュール)とすることも可能である。
【0081】
上記各実施形態のGPS受信機において、制御量設定部1323、コード位相差算出部1324および合成部1325は、トラッキング処理時に利用する例について示したが、これに限られない。中間周波数信号IFを捕捉するために、捕捉時も利用され得る。この場合には、コード位相差算出部1324により算出されたコード位相差を用いてC/Aコードをサーチすることになるため、C/Aコードのコードロックを高精度に行うことが可能となる。
例えば第1実施形態の場合には、図7を参照すると、ステップS101の捕捉処理において、図8の一連の処理が行われる。そして、合成部1325またはコード位相差算出部1324は、複数のチャネルで得られた相関結果に基づいてコード位相差を算出する処理(図7のステップS103またはS104に示した処理)を行う。
【0082】
上記各実施形態のGPS受信機では、複数のコード位相制御量のうちの1つ(φ2)を位相オフセットと対応付けない場合について説明したが、このような例に限られない。第2コードの位相を、各チャネルまたは各所定期間毎に変えることができれば、すべてのコード位相制御量を位相オフセットと対応付けて設定するようにしてもよい。
【0083】
上記各実施形態のGPS受信機では、ベースバンド部12の信号処理部131をハードウエア構成とした場合を例について示したが、ベースバンド部12の機能をソフトウエアによって実現するようにしてもよい。この場合には、ROM1321からプログラムを読み込んだプロセッサ132(制御部)が、各実施形態のベースバンド部12の機能(例えば、図7および図8に示した一連の処理等)を実現することが可能となる。
【符号の説明】
【0084】
11 アンテナ
12 RF部
13 ベースバンド部
100 GPS受信機
131 信号処理部
1323 制御量設定部
1324 コード位相差算出部
1325 合成部

【特許請求の範囲】
【請求項1】
擬似雑音コードによって変調された衛星信号を復調するためのGNSS受信機であって、
前記擬似雑音コードに対応するレプリカコードを生成するレプリカコード生成部と、
互いに異なる複数のコード位相制御量を設定する制御量設定部と、
前記各コード位相制御量に基づいて前記レプリカコードと前記擬似雑音コードとの相関処理を行う少なくとも1つの相関処理部と、
前記各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出するコード位相差算出部と、
を備えることを特徴とするGNSS受信機。
【請求項2】
請求項1に記載のGNSS受信機において、
前記制御量設定部は、前記複数のコード位相制御量のうち、第1コード位相制御量に基づいて相関処理された相関結果に基づいて、互いに異なる複数のコード位相制御量を設定する、GNSS受信機。
【請求項3】
請求項2に記載のGNSS受信機において、
前記制御量設定部は、前記相関処理により求められた相関値がピークとなる第1コード位相制御量から所定量をオフセットすることで、前記互いに異なる複数のコード位相制御量を設定する、GNSS受信機。
【請求項4】
請求項1乃至請求項3のいずれかに記載のGNSS受信機において、
前記コード位相差算出部は、前記相関処理により求められる相関値から得られる相関カーブに基づいてコード位相差を算出する、GNSS受信機。
【請求項5】
請求項1乃至請求項3のいずれかに記載のGNSS受信機において、
前記各コード位相制御量に基づく相関処理により得られる各相関結果を合成する合成部をさらに備え、
前記コード位相差算出部は、前記合成された相関結果に基づいてコード位相差を算出する、GNSS受信機。
【請求項6】
請求項1乃至請求項5のいずれかに記載のGNSS受信機において、
前記相関処理部は、複数チャネルの各々に対応して構成される、GNSS受信機。
【請求項7】
請求項1乃至請求項5のいずれかに記載のGNSS受信機において、
前記制御量設定部は、所定時間毎に、互いに異なる複数のコード位相制御量を設定し、
前記相関処理部は、前記所定時間毎の各コード位相制御量に基づいて相関処理を行う、GNSS受信機。
【請求項8】
請求項1乃至請求項7のいずれかに記載のGNSS受信機において、
前記生成されたレプリカコードをクロックに応じて前記相関処理部へ出力するレジスタをさらに備える、GNSS受信機。
【請求項9】
擬似雑音コードによって変調された衛星信号を復調するための復調方法であって、
互いに異なる複数のコード位相制御量を設定するステップと、
前記擬似雑音コードに対応するレプリカコードを生成するステップと、
前記各コード位相制御量に基づいて前記レプリカコードと前記擬似雑音コードとの相関処理を行うステップと、
前記各コード位相制御量に基づく相関処理により得られる各相関結果に基づいてコード位相差を算出するステップと、
を備えることを特徴とする復調方法。
【請求項10】
請求項9に記載の復調方法をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate