JP3858983B2 - Gps衛星信号の受信方法およびgps受信機 - Google Patents
Gps衛星信号の受信方法およびgps受信機 Download PDFInfo
- Publication number
- JP3858983B2 JP3858983B2 JP2002052731A JP2002052731A JP3858983B2 JP 3858983 B2 JP3858983 B2 JP 3858983B2 JP 2002052731 A JP2002052731 A JP 2002052731A JP 2002052731 A JP2002052731 A JP 2002052731A JP 3858983 B2 JP3858983 B2 JP 3858983B2
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- frequency
- gps satellite
- intermediate frequency
- gps
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Position Fixing By Use Of Radio Waves (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Description
【発明の属する技術分野】
この発明は、GPS(Global Positioning System)衛星信号の受信方法およびGPS受信機に関し、特に、GPS衛星からの受信信号についての拡散符号およびキャリア(搬送波)の同期に関する。
【0002】
【従来の技術】
人工衛星(GPS衛星)を利用して移動体の位置を測定するGPSシステムにおいて、GSP受信機は、4個以上のGPS衛星からの信号を受信し、その受信信号から受信機の位置を計算し、ユーザに知らせることが基本機能である。
【0003】
GPS受信機は、GPS衛星からの受信信号(以下、この信号をGPS衛星信号という)を復調してGPS衛星の軌道データを獲得し、GPS衛星の軌道および時間情報とGPS衛星信号の遅延時間から、自受信機の3次元位置を連立方程式により導き出す。測位演算のために4個のGPS衛星からの信号が必要となるのは、GPS受信機内部の時間と衛星の時間とで誤差があり、その誤差の影響を除去するためである。
【0004】
民生用GPS受信機の場合には、GPS衛星(Navstar)からのL1帯、C/A(Clear and Aquisition)コードと呼ばれるスペクトラム拡散信号電波を受信して、測位演算を行う。
【0005】
C/Aコードは、送信信号速度(チップレート)が1.023MHz、符号長が1023のPN(Pseudorandom Noise;擬似ランダム雑音)系列の符号、例えばGold符号で、50bpsのデータを拡散した信号により、周波数が1575.42MHzのキャリアをBPSK(Binary Phase Shift Keying)変調した信号である。この場合、符号長が1023であるので、C/Aコードは、PN系列の符号が、図38(A)に示すように、1023チップを1周期(したがって、1周期=1ミリ秒)として、繰り返すものとなっている。
【0006】
このC/AコードのPN系列の符号(拡散符号)は、GPS衛星ごとに異なっているが、どのGPS衛星が、どのPN系列の符号を用いているかは、予めGPS受信機で検知できるようにされている。また、後述するような航法メッセージによって、GPS受信機では、どのGPS衛星からの信号を、その地点およびその時点で受信できるかが判るようになっている。したがって、GPS受信機では、例えば3次元測位であれば、その地点およびその時点で取得できる4個以上のGPS衛星からの電波を受信して、スペクトラム逆拡散し、測位演算を行って、自分の位置を求めるようにする。
【0007】
そして、図38(B)に示すように、衛星信号データ(航法メッセージデータ)の1ビットは、PN系列の符号の20周期分、つまり、20ミリ秒単位として伝送される。つまり、データ伝送速度は、50bpsである。PN系列の符号の1周期分の1023チップは、ビットが“1”のときと、“0”のときとでは、反転したものとなる。
【0008】
図38(C)に示すように、GPSでは、30ビット(600ミリ秒)で1ワードが形成される。そして、図38(D)に示すように、10ワードで、1サブフレーム(6秒)が形成される。図38(E)に示すように、1サブフレームの先頭のワードには、データが更新されたときであっても常に規定のビットパターンとされるプリアンブルが挿入され、このプリアンブルの後にデータが伝送されてくる。
【0009】
さらに、5サブフレームで、1メインフレーム(30秒)が形成される。そして、航法メッセージは、この1メインフレームのデータ単位で伝送されてくる。この1メインフレームのデータのうちの始めの3個のサブフレームは、エフェメリス情報と呼ばれる衛星毎に固有の軌道情報である。このエフェメリス情報は、1メインフレーム単位(30秒)で繰り返し送られるものであり、その情報を送信してくる衛星の軌道を求めるためのパラメータと、衛星からの信号の送出時刻とを含む。
【0010】
すなわち、エフェメリス情報の3個のサブフレームの2番目のワードには、Week Numberと、TOW(Time Of Week)と呼ばれる時刻データが含まれる。Week Numberは、1980年1月6日(日曜日)を第0週として1週ごとにカウントアップする情報である。また、TOWは、日曜日の午前0時を0として6秒ごとにカウントアップ(サブフレームの周期でカウントアップ)する時間の情報である。
【0011】
GPS衛星のすべては、原子時計を備え、共通の時刻データを用いており、各GPS衛星からの信号の送出時刻は、原子時計に同期したものとされている。上記の2つの時刻データを受信することにより絶対時刻を求める。6秒以下の値は、衛星の電波に同期ロックする過程で、そのGPS受信機が備える基準発振器の精度で、衛星の時刻に同期するようにする。
【0012】
また、各GPS衛星のPN系列の符号も、原子時計に同期したものとして生成される。また、このエフェメリス情報から、GPS受信機における測位計算の際に用いられる衛星の位置および衛星の速度が求められる。
【0013】
エフェメリス情報は、地上の管制局からの制御により比較的頻繁に更新される精度の高い暦である。GPS受信機では、このエフェメリス情報をメモリに保持しておくことにより、当該エフェメリス情報を測位計算に使用することができる。しかし、その精度上、使用可能な寿命は、通常、2時間程度とされており、GPS受信機では、エフェメリス情報をメモリに記憶した時点からの時間経過を監視して、その寿命を超えたときには、メモリのエフェメリス情報を更新して書き換えるようにしている。
【0014】
なお、新しいエフェメリス情報をGPS受信機から取得して、その取得したエフェメリス情報にメモリの内容を更新するには、最低18秒(3サブフレーム分)が必要であり、サブフレームの途中からデータが取れたときには、連続30秒が必要となる。
【0015】
1メインフレームのデータの残りの2サブフレームの軌道情報は、アルマナック情報と呼ばれる全ての衛星から共通に送信される情報である。このアルマナック情報は、全情報を取得するために25フレーム分必要となるもので、各GPS衛星のおおよその位置情報や、どのGPS衛星が使用可能かを示す情報などからなる。
【0016】
このアルマナック情報も、地上の制御局からの制御により数日ごとに更新される。このアルマナック情報も、これをGPS受信機のメモリに保持して使用することができるが、その寿命は、数か月とされており、通常は、数ヶ月毎に、メモリのアルマナック情報は、GPS衛星から取得した新しい情報に更新される。GPS受信機のメモリに、このアルマナック情報を蓄えておけば、電源投入後、どのチャンネルにどの衛星を割り当てればよいかを計算することができる。
【0017】
GPS受信機で、GPS衛星信号を受信して、上述のデータを得るためには、GPS受信機に用意される受信しようとするGPS衛星で用いられているC/Aコードと同じPN系列の符号(以下、PN系列の符号をPN符号という)を用いて、そのGPS衛星信号について、C/Aコードの位相同期を取ることによりGPS衛星信号を捕捉し、スペクトラム逆拡散を行う。C/Aコードとの位相同期が取れて、逆拡散が行われると、ビットが検出されて、GPS衛星信号から時刻情報等を含む航法メッセージを取得することが可能になる。
【0018】
GPS衛星信号の捕捉は、C/Aコードの位相同期検索により行われるが、この位相同期検索においては、GPS受信機のPN符号(拡散符号)とGPS衛星からの受信信号のPN符号(拡散符号)との相関を検出し、例えば、その相関検出結果の相関値が予め定めた値よりも大きい時に、両者が同期していると判定する。そして、同期が取れていないと判別されたときには、何らかの同期手法を用いて、GPS受信機のPN符号の位相を制御して、受信信号のPN符号と同期させるようにしている。
【0019】
ところで、上述したように、GPS衛星信号は、データを拡散符号で拡散した信号によりキャリアをBPSK変調した信号であるので、当該GPS衛星信号をGPS受信機が受信するには、拡散符号のみでなく、キャリアおよびデータの同期をとる必要があるが、拡散符号とキャリアの同期は独立に行うことはできない。
【0020】
そして、GPS受信機では、受信信号は、そのキャリア周波数を数MHz以内の中間周波数に変換して、その中間周波数信号で、上述の同期検出処理するのが普通であるが、この中間周波数信号におけるキャリアには、主にGPS衛星の移動速度に応じたドップラーシフトによる周波数誤差と、受信信号を中間周波数信号に変換する際に、GPS受信機内部で発生させる局部発振器の周波数誤差分が含まれる。
【0021】
したがって、これらの周波数誤差要因により、中間周波数信号におけるキャリア周波数は未知であり、その周波数サーチが必要となる。また、拡散符号の1周期内での同期点(同期位相)は、GPS受信機とGPS衛星との位置関係に依存するのでこれも未知であるから、上述のように、何らかの同期手法が必要となる。
【0022】
従来のGPS受信機では、周波数サーチを伴なうスライディング相関によりキャリアおよび拡散符号についての同期検出を行うと同時に、DLL(DelayLocked Loop)とコスタスループとにより、同期捕捉および同期保持動作をするようにしている。これについて、以下に説明を加える。
【0023】
GPS受信機のPN符号の発生器を駆動するクロックは、GPS受信機に用意される基準周波数発振器を分周したものが、一般に用いられている。この基準周波数発振器としては、高精度の水晶発振器が用いられており、この基準周波数発振器の出力から、GPS衛星からの受信信号を中間周波数信号に変換するのに用いる局部発振信号を生成する。
【0024】
図39は、上述した周波数サーチを説明するための図である。すなわち、GPS受信機のPN符号の発生器を駆動するクロック信号の周波数が、ある周波数f1であるときに、PN符号についての位相同期検索、つまり、PN符号の位相を1チップずつ順次ずらして、それぞれのチップ位相のときのGPS受信信号とPN符号との相関を検出し、相関のピーク値を検出することにより、PN符号の同期が取れる位相(拡散符号の位相)を検出するようにする。
【0025】
前記クロック信号の周波数がf1のときにおいて、1023チップ分の位相検索の全てで同期する位相が存在しなければ、キャリア周波数の同期が取れていないので、例えば基準周波数発振器に対する分周比を変えて、前記駆動クロック信号の周波数を周波数f2に変更し、同様に1023チップ分の位相検索を行う。これを、図39のように、前記駆動クロック信号の周波数をステップ的に変更して繰り返す。以上の動作が周波数サーチである。
【0026】
そして、この周波数サーチにより、同期可能とされる駆動クロック信号の周波数が検出されると、そのクロック周波数で最終的なPN符号の同期捕捉が行われる。このときのクロック周波数からキャリア周波数が検出できる。これにより、水晶周波数発振器の発振周波数ずれがあっても、衛星信号を捕捉することが可能になる。
【0027】
【発明が解決しようとする課題】
ところで、GPS衛星からの信号が弱い状況下においては、キャリアの同期が不完全であるのにもかかわらず、GPS衛星信号の拡散符号と、GPS受信機の拡散符号との同期は保持されているという状態がしばしば発生する。これは、拡散符号の1周期は1ミリ秒であるのに対して、キャリア周波数は、高周波数であることから生じる。
【0028】
このようにキャリア周波数の同期が外れた状態になったGPS受信信号であっても、拡散符号の同期が保持されて、拡散符号の位相が既知となっていれば、GPS受信機の位置の導出は可能である。しかし、このような、拡散符号の同期は取れているがキャリア周波数の同期が取れていない状態が長く続くと、拡散符号の同期も外れてしまうという問題が生じる。
【0029】
すなわち、GPS衛星からの受信信号のキャリア周波数は、GPS受信機に対するGPS衛星の相対運動によるドップラーシフトのため、常に変化しつづけている。キャリア周波数の同期が取れている状態であれば、GPS受信機では、そのドップラーシフトによるキャリア周波数の変化に追従し、安定な同期保持ができる。
【0030】
しかし、キャリア周波数の同期が外れた状態になったGPS受信機では、ドップラーシフトにより変化してゆくキャリア周波数には追従しないので、ある程度キャリア周波数がずれたところで、GPS衛星信号の拡散符号と、GPS受信機の拡散符号との同期も保持できなくなる。
【0031】
このようにキャリア周波数と拡散符号の両方の同期が外れてしまうと、従来の場合には、上述したような手順により、その両方の同期が外れた状態から同期を確立する必要があるが、その際に、従来は、未知であるキャリア周波数の状態から、同期捕捉をするようにしているため、その同期確立までに時間がかかってしまうことになる。
【0032】
また、従来は、拡散符号についての同期が取れているかどうかと、キャリア周波数についての同期が取れているかどうかとを別々に判定していないため、上述のように、拡散符号の同期が取れている状態で、キャリア周波数の同期が不完全になったとしても、上述のように、拡散符号の同期も外れたところから、同期の再捕捉をする必要があるという問題もあった。
【0033】
この発明は、以上の点にかんがみ、キャリアの同期保持が困難な状況においても、拡散符号の同期保持を継続することができるようにしたGPS衛星信号の受信方法およびGPS受信機を提供することを目的とする。
【0034】
【課題を解決するための手段】
上記課題を解決するために、請求項1の発明によるGPS衛星信号の受信方法は、
GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、前記GPS衛星からの受信信号の拡散符号と受信側の拡散符号との同期および前記GPS衛星からの受信信号の中間周波キャリアの同期を取るようにするGPS衛星信号の受信方法において、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
GPS受信機において既知の情報を用いて、前記中間周波キャリアの周波数を予測し、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程を備える
ことを特徴とする。
【0035】
請求項2の発明は、請求項1に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記GPS衛星の位置と、前記GPS衛星の速度と、前記GPS衛星からの受信信号の受信周波数を前記中間周波数に周波数変換するための局部発振周波数の誤差であることを特徴とする。
【0036】
上記の構成の請求項1の発明によれば、例えば同期が外れたときには、その同期外れが生じる直前の、例えば請求項2のように、GPS受信機の位置と、GPS受信機の速度と、GPS衛星の位置と、GPS衛星の速度と、GPS衛星からの受信信号の受信周波数を中間周波数に周波数変換するための局部発振周波数の誤差から中間周波キャリアの周波数を予測し、その予測値あるいはその近傍の中間周波数を初期値として、少なくとも前記中間周波キャリアの同期の引き込みを行うようにする。この結果、同期引き込みまでの時間を早くすることができる。
【0037】
また、請求項3の発明は、
GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、前記GPS衛星からの受信信号の拡散符号と受信側の拡散符号との同期および前記GPS衛星からの受信信号の中間周波キャリアの同期を取るようにするGPS衛星信号の受信方法において、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
GPS受信機において既知の情報と、GPS受信機に記憶しているGPS衛星についての軌道情報から計算した情報とを用いて、前記中間周波キャリアの周波数を予測し、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程を備える
ことを特徴とする。
【0038】
そして、請求項4の発明は、請求項3に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記GPS衛星からの受信信号の拡散符号の位相であり、
前記同期引き込み工程では、前記GPS受信機が記憶するGPS衛星の軌道情報と、前記既知である拡散符号の位相の情報とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とする。
【0039】
また、請求項5の発明は、請求項3に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、現在時刻であり、前記同期引き込み工程では、前記GPS受信機が記憶する軌道情報と、前記現在時刻とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とする。
【0040】
上述の請求項3の発明によれば、例えば同期が外れたときには、その同期外れが生じる直前の、既知の情報と、記憶部に記憶されているGPS衛星の軌道情報とから、中間周波キャリアの周波数が予測し、その予測値あるいはその近傍の中間周波数を初期値として、中間周波キャリアの同期の引き込みが行われる。この結果、同期引き込みまでの時間を早くすることができる。
【0041】
そして、請求項4の発明の場合には、GPS衛星信号の拡散符号の位相が既知である場合に、GPS受信機が記憶するGPS衛星の軌道情報と、当該既知である拡散符号の位相の情報とから、GPS衛星の位置と、GPS衛星の速度とが計算され、それら計算された情報と、既知のGPS受信機の位置、GPS受信機の速度および中間周波数に周波数変換するための局部発振周波数の誤差とから、中間周波キャリア周波数が予測される。したがって、精度良く中間周波キャリア周波数を予測することができる。
【0042】
また、請求項5の発明の場合には、GPS衛星信号の拡散符号の位相が未知であったとしても、現在時刻の情報とGPS受信機が記憶するGPS衛星の軌道情報とから、GPS衛星の位置と、GPS衛星の速度とが計算され、それら計算された情報と、既知のGPS受信機の位置、GPS受信機の速度および中間周波数に周波数変換するための局部発振周波数の誤差とから、中間周波キャリア周波数が予測される。
【0044】
そして、請求項1または請求項3の発明によれば、拡散符号の同期は外れていないが、中間周波キャリア周波数の同期が外れている場合に、予測した中間周波キャリア周波数、あるいはその近傍の周波数から中間周波キャリアの同期の引き込みが行われるので、拡散符号の同期が外れる前に、中間周波キャリアの同期が引き込まれて、同期保持状態を維持することができるようになる。
【0045】
また、請求項6の発明は、請求項1または請求項3に記載のGPS衛星信号の受信方法において、
前記拡散符号の同期および前記中間周波キャリアの同期は、コスタスループと、DLL(Delay Locked Loop)とを用いるものであり、
前記同期引き込み工程では、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記コスタスループのループを開にしてから、前記予測された中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行い、前記中間周波キャリアの同期が取れた後に、前記コスタスループのループを閉じる
ことを特徴とする。
【0046】
この請求項6の発明によれば、拡散符号の同期は確保されているが、中間周波キャリアの同期が外れていると判別したときには、コスタスループのループを開にしてから、そのコスタスループにおいて、予測された中間周波キャリア周波数あるいはその近傍から中間周波キャリアの同期の引き込みが行われ、中間周波キャリアの同期が取れた後に、コスタスループのループが閉じられる。
【0047】
したがって、GPS衛星からの受信信号の信号強度が弱くなり、中間周波キャリアの同期保持が困難な状況においても、拡散符号の同期保持を継続することができるとともに、予測した中間周波キャリア周波数のところから中間周波キャリアの同期引き込みを行うので、GPS衛星信号の信号強度が再び強い状態になったときに、即座に中間周波キャリアの同期引き込みができるという効果がある。
【0048】
【発明の実施の形態】
以下、この発明によるGPS受信機の実施形態を、図を参照しながら説明する。
【0049】
以下に説明する実施形態のGPS受信機は、従来の周波数サーチを伴なうスライディング相関と、DLL(Delay Locked Loop)およびコスタスループとにより、キャリアおよび拡散符号についての同期捕捉を行うと同時に同期保持動作をする方法の欠点を改善した構成を備える。
【0050】
すなわち、周波数サーチを伴なうスライディング相関と、DLL(DelayLocked Loop)およびコスタスループとにより、キャリアおよび拡散符号についての同期捕捉を行うと同時に同期保持動作をするという、従来の手法では、周波数サーチを伴なうスライディング相関の方法が、上述したように、原理的に高速同期には不向きであって、拡散符号およびキャリアの同期に時間を要するという欠点があった。そして、このように拡散符号およびキャリアの同期に時間を要すると、GPS受信機の反応が遅くなり、使用上において不便を生ずる。
【0051】
従来、実際のGPS受信機においては、上記の欠点を改善するため、多チャンネル化してパラレルに同期点を探索する必要があり、従来方式のままで大幅なチャンネル増を行うとGPS受信機の構成が複雑となると共に、コスト高となり、また、多チャンネルでパラレルに同期点を検索するものであるため、消費電力も大きくなっていた。消費電力の問題は、携帯型のGPS受信機の場合には大きな問題である。
【0052】
また、上述の従来の場合には、拡散符号およびキャリアの同期捕捉と同期保持とは、周波数サーチを伴なうスライディング相関と、DLL(Delay Locked Loop)およびコスタスループとにより、一体的に行っているので、例えばGPS衛星からの信号が途切れたときには、同期捕捉および同期保持を、再度、一体的に行う必要があり、再同期捕捉および同期保持までの時間が長くなってしまうという問題もあった。
【0053】
さらに、上述の従来の場合には、拡散符号およびキャリアの同期捕捉と同期保持とは、周波数サーチを伴なうスライディング相関と、DLL(Delay Locked Loop)およびコスタスループとにより、一体的に行っているので、GPS受信機の感度を上げようとすると、原理的に同期捕捉および同期保持のための処理時間がかなり長くなってしまうことから、GPS受信機の感度を上げることが容易ではないという問題もあった。
【0054】
この実施形態のGPS受信機は、以上の問題点を解消できるように構成したものである。
【0055】
[実施形態のGPS受信機の全体構成]
図1は、この実施形態のGPS受信機の構成例を示すブロック図であり、周波数変換部10と、同期捕捉部20と、同期保持部30と、制御部40と、GPSアンテナ1と、温度補償付き水晶発振回路からなる基準発振回路2と、タイミング信号生成回路3と、水晶発振回路4とを備えて構成される。
【0056】
制御部40は、CPU(Central Processing Unit)41に対して、プログラムROM(Read Only Memory)42と、ワークエリア用のRAM(Random Access Memory)43と、実時間(RTC(Real Time Clock))を計測するための時計回路44と、タイマ45と、軌道情報用メモリ46とが接続されて構成されている。
【0057】
タイマ45は、各部の動作に必要な各種タイミング信号の生成および時間参照に使用される。軌道情報用メモリ46は、不揮発性メモリとされ、これにはGPS衛星信号から抽出したアルマナック情報およびエフェメリス情報からなる軌道情報が記憶される。軌道情報用メモリ46に対して、エフェメリス情報は、例えば2時間毎に更新され、また、アルマナック情報は、例えば数日あるいは数ヶ月毎に更新される。
【0058】
基準発振回路2からの基準クロック信号は、逓倍/分周回路3に供給されると共に、後述するように、周波数変換部10の周波数変換用の局部発振回路15に供給される。逓倍/分周回路3は、基準クロック信号を逓倍して、また、分周して、同期捕捉部20、同期保持部30および制御部40などに供給するクロック信号を生成する。逓倍/分周回路3は、制御部40のCPU41により逓倍比や分周比が制御される。
【0059】
なお、水晶発振回路4からのクロック信号は、制御部40の時計回路44用のものとされている。制御部40の時計回路44以外の部位のクロック信号は、逓倍/分周回路3からのクロック信号とされる。
【0060】
[周波数変換部10の構成]
GPS衛星信号は、前述もしたように、各GPS衛星から送信される信号であり、50bpsの送信データを、送信信号速度が1.023MHzで、符号長が1023であって、GPS衛星ごとに決められているパターンのPN符号(拡散符号)によりスペクトラム拡散した信号(C/Aコード)により、周波数が1575.42MHzのキャリア(搬送波)をBPSK変調したものである。
【0061】
アンテナ1にて受信された1575.42MHzのGPS衛星信号は、周波数変換部10に供給される。周波数変換部10では、アンテナ1にて受信されたGPS衛星信号が、低雑音増幅回路11にて増幅された後、バンドパスフィルタ12に供給されて、不要帯域成分が除去される。バンドパスフィルタ12からの信号は、高周波増幅回路13を通じて中間周波変換回路14に供給される。
【0062】
また、基準発振回路2の出力が、PLL(Phase Locked Loop)シンセサイザ方式の局部発振回路15に供給され、この局部発振回路15より基準発振器2の出力周波数に対して周波数比が固定された局部発振出力が得られる。そして、この局部発振出力が中間周波変換回路14に供給されて、GPS衛星信号が、信号処理し易い中間周波数、例えば1.023MHzの中間周波信号に低域変換される。
【0063】
中間周波変換回路14からの中間周波信号は、増幅回路16で増幅され、ローパスフィルタ17で帯域制限された後、A/D変換器18で、この例では、1ビットのデジタル信号(以下、この信号をIFデータという)に変換される。このIFデータは、同期捕捉部20および同期保持部30に供給される。なお、A/D変換器18では、その入力信号を、2ビット以上のデジタル信号に変換して出力するようにしてもよい。
【0064】
すなわち、この実施形態では、IFデータは、従来のスライディング相関およびコスタスループ+DLLのような同期捕捉・同期保持一体化回路に供給されるのではなく、機能的に分離された同期捕捉部20と、同期保持部30に供給される。
【0065】
この実施形態において、同期捕捉部20は、GPS衛星信号についての同期捕捉、つまり、GPS衛星信号の拡散符号の位相検出および中間周波信号の周波数(以下、IFキャリア周波数という)の検出を行う。同期保持部30は、同期捕捉部20で捕捉したGPS衛星信号の拡散符号とIFキャリアの同期保持を行う。
【0066】
[同期捕捉部20と同期保持部30の構成]
この実施形態では、後述するように、同期捕捉部20では、周波数変換部10からのIFデータの所定時間分をメモリに取り込み、このメモリに取り込んだIFデータについて、GPS衛星信号の拡散符号と、GPS受信機が持つ個々のGPS衛星の拡散符号に対応する拡散符号との相関演算を行って、拡散符号の位相同期捕捉を行う。
【0067】
拡散符号の位相同期捕捉に関しては、上述のようなスライディング相関の手法を用いることなく、スペクトラム拡散信号の同期捕捉を高速に行う方法として、マッチドフィルタを用いる方法がある。
【0068】
マッチドフィルタは、トランスバーサルフィルタにより、デジタル的に実現可能である。また、近年は、DSP(Digital Signal Processor)に代表されるハードウエアの能力の向上によって、高速フーリエ変換(以下、FFT(Fast Fourier Transform)という)処理を用いたデジタルマッチドフィルタにより、拡散符号の同期を高速に行う手法が実現している。ただし、デジタルマッチドフィルタそのものは、拡散符号の同期を保持する機能を有しない。
【0069】
後者のFFT処理を用いる方法は、古くから知られる相関計算の高速化方法に基づいており、受信機側の拡散符号と、受信信号の拡散符号との間に相関がある場合には、後述する図4に示すような相関のピークが検出され、ピークの位置が拡散符号の先頭の位相である。したがって、この相関のピークを検出することで、拡散符号の同期を捕捉、すなわち、受信信号における拡散符号の位相を検出することができる。
【0070】
受信信号のキャリア(中間周波数)は、FFTを利用した方法で、FFTの周波数領域での操作により、拡散符号の位相とともに検出することができる。拡散符号の位相は、疑似距離に換算され、4個以上の衛星が検出されれば、GPS受信機の位置を計算することができる。また、キャリア周波数が検出されると、ドップラーシフト量が判り、これにより、GPS受信機の速度が計算できる。
【0071】
以上のことから、この実施形態では、高速フーリエ変換(以下、FFT(Fast Fourier Transform)という)処理を用いたデジタルマッチドフィルタにより拡散符号についての相関計算を行い、その相関計算に基づいて同期捕捉処理を高速に行う。
【0072】
アンテナ1で受信されるGPS衛星信号には、複数のGPS衛星からの信号が含まれているが、同期捕捉部20では、すべてのGPS衛星についての拡散符号の情報を用意しており、その用意されている拡散符号の情報を用いて、その時点でGPS受信機が利用可能な複数個のGPS衛星信号の拡散符号との相関を計算することにより、それらの複数個のGPS衛星信号の同期捕捉をすることが可能である。
【0073】
同期捕捉部20では、いずれのGPS衛星用の拡散符号の情報を用いて同期捕捉したかにより、いずれのGPS衛星からの信号の同期捕捉をしたかを検知する。当該同期捕捉したGPS衛星の識別子としては、例えばGPS衛星番号が用いられる。
【0074】
そして、同期捕捉部20は、同期捕捉したGPS衛星の衛星番号の情報と、同期捕捉により検出した拡散符号の位相の情報と、IFキャリア周波数の情報と、また、必要に応じて、相関の度合いを示す相関検出信号からなる信号強度の情報を、同期保持部30に渡すようにする。
【0075】
同期捕捉部20で検出した衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報を、同期保持部30へ渡す方法としては、データのフォーマット、割り込みの方法等を決めた上で、同期捕捉部20から同期保持部30へ直接渡す方法と、制御部40を介して渡す方法とがある。
【0076】
前者の場合には、同期捕捉部20のDSP23で、同期保持部30に渡す情報を生成する。あるいは、同期保持部30に、例えばDSPで構成される制御部を設け、その制御部で、同期捕捉部20からの情報に基づいて、同期保持部30で必要な情報を生成する構成とする。
【0077】
また、後者の場合には、制御部40のCPU41が制御し、CPU41を介して情報の受け渡し、またCPU41から同期捕捉部20および同期保持部30の制御を行うことができるので、後述する拡散符号の位相補正や、同期捕捉部20と同期保持部30の状況に応じた多様な同期手順を設定しやすくなる。
【0078】
そこで、以下に説明する実施形態では、同期捕捉部20から、衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報を、同期保持部30へ渡す方法としては、制御部40を介して渡す方法を採用している。
【0079】
[同期捕捉部20の構成]
図2は、同期捕捉部20の構成例を示すものであって、この例では、サンプリング回路21と、データバッファ用のRAM(Random Access Memory)22と、DSP(Digital Signal Processor)23と、プログラムROM(Read Only Memory)と、ワークエリア用のRAMとからなるDSP23用のメモリ部24とを備えて構成される。DSP23およびDSP用のメモリ部24とは、制御部40のCPU41に接続されている。
【0080】
サンプリング回路21では、周波数変換部10からの1.023MHzのIFデータを、その2倍以上の所定の周波数でサンプリングし、各サンプリング値をRAM22に書き込む。RAM22は、所定時間長分のIFデータを記憶する容量を有する。DSP23では、このRAM22の容量分の時間長のIFデータ単位に同期捕捉処理を行う。
【0081】
すなわち、この例では、DSP23は、RAM22に取り込んだIFデータについて、高速フーリエ変換(以下、FFT(Fast Fourier Transform)という)処理を用いたデジタルマッチドフィルタにより、拡散符号の同期捕捉を高速に行う。そして、DSP23は、その同期捕捉の結果として、同期捕捉したGPS衛星番号と、同期捕捉したGPS衛星信号の拡散符号の位相およびそのIFキャリア周波数とを検出する。
【0082】
サンプリング回路21におけるサンプリング周波数により、拡散符号の位相の検出精度が決まる。このサンプリング周波数は、サンプリング定理からIF信号に含まれる最大周波数の2倍以上である必要があり、IFキャリア周波数の整数倍の周波数が望ましい。
【0083】
また、RAM22の容量により決まるDSP23での処理単位の時間長により、IFキャリア周波数の検出精度が決まる。このDSP23での処理単位の時間長は、拡散符号の1周期の整数倍、後述のように、特に2のべき乗倍が望ましい。
【0084】
ここで、サンプリング回路21でのサンプリング周波数を、拡散符号のチップレートのα倍、RAM22に取り込むIFデータの時間長を拡散符号の1周期のβ倍(βミリ秒)とすると、DSP23では、FFTの周波数領域での操作により、拡散符号の位相は1/αチップの精度で検出することができ、IFキャリア周波数は、1/βkHz(±1/2βkHz)の精度で検出することができる。
【0085】
次に、DSP23におけるFFTを用いたデジタルマッチドフィルタによる同期捕捉のいくつかの例について詳述する。
【0086】
〔デジタルマッチドフィルタによる同期捕捉の第1の例〕
この例においては、サンプリング回路21でのサンプリング周波数は、拡散符号のチップレートのほぼ4倍の4倍の4.096MHzとされる。そして、RAM22には、拡散符号の1周期分(1ミリ秒)である4096サンプル点のデータを記憶する。DSP23は、このRAM22に取り込まれた1ミリ秒単位のデータについて、GPS衛星信号の拡散符号とGPS受信機の拡散符号との相関を、FFTを用いた相関演算により計算して、同期捕捉を行う。拡散符号の1周期分は、1023チップであるから、1/4チップの精度で拡散符号の位相検出が可能となる。また、IFキャリア周波数の検出精度は、1ミリ秒単位のFFT処理であるので、1kHzである。
【0087】
この例では、図3に示すように、DSP23では、RAM22に書き込まれた1ミリ秒単位のIFデータを読み出して、FFT処理部101でFFT処理し、そのFFT結果をメモリ102に書き込む。そして、メモリ102から読み出した受信信号のFFT結果は、乗算部103に供給する。
【0088】
一方、拡散符号発生部104から、GPS衛星からの受信信号に使用されている拡散符号と同じ系列と考えられる拡散符号を発生させる。実際的には、拡散符号発生部104からは、予め用意されている複数個のGPS衛星の拡散符号が順次に切り換えられて出力されることになる。
【0089】
この拡散符号発生部104からの1周期分(1023チップ)の拡散符号は、FFT処理部105に供給されてFFT処理され、その処理結果がメモリ106に供給される。このメモリ106からは、通常の場合と同様に、FFT結果が低い周波数から順に読み出されて乗算部103に供給される。
【0090】
乗算部103では、メモリ102からの受信信号のFFT結果と、メモリ106からの拡散符号のFFT結果とが乗算され、周波数領域における受信信号と拡散符号との相関の度合いが演算される。ここで、乗算部103での乗算は、受信信号の離散フーリエ変換結果と、拡散符号の離散フーリエ変換結果とのどちらか一方の複素共役と他方とを乗算する演算となる。そして、その乗算結果は逆FFT処理部107に供給されて、周波数領域の信号が時間領域の信号に戻される。
【0091】
逆FFT処理部107から得られる逆FFT結果は、受信信号と拡散符号との時間領域における相関検出信号となっている。この相関検出信号は、相関点検出部108に供給される。
【0092】
この相関検出信号は、拡散符号の1周期分の各チップ位相における相関値を示すものとなっており、所定の強度以上である受信信号中の拡散符号と、拡散符号発生部104からの拡散符号とが同期している位相(拡散符号の1周期分単位の位相)においては、図4に示すように、1023チップのうちのある一つの位相での相関値が、予め定められるスレッショールド値を超えるようなピーク値を示す相関波形が得られる。このピーク値の立つチップ位相が、相関点の位相であり、GPS受信機側の拡散符号に対するGPS衛星信号の拡散符号の1周期の先頭の位相となる。
【0093】
一方、受信信号が所定の強度以下である場合、受信信号中の拡散符号と、拡散符号発生部104からの拡散符号とが同期しても、図4のようなピーク値が立つ相関波形は得られず、いずれのチップ位相においても、予め定められるスレッショールド値を超えるようなピークは立たない。
【0094】
相関点検出部108は、例えば、予め定めた値を超えるピーク値が、この相関点検出部108に供給される相関検出信号に存在するかどうかにより、受信信号と拡散符号との同期が取れたかどうかを検出する。
【0095】
相関点検出部108で同期が取れたことを検出した場合には、前記ピーク値の位相を相関点、つまり、GPS衛星信号の拡散符号の位相として検出する。そして、DSP23は、そのときの拡散符号発生部104からの拡散符号がいずれのGPS衛星用のものであるかにより、GPS衛星番号を認識する。
【0096】
また、図4に示した相関検出信号は時間領域のものであるが、後述する処理により中間周波受信信号におけるキャリア成分を正しく除去した場合にのみ相関のピークが検出される。
【0097】
そして、除去を行ったキャリア成分の周波数が、前記の予め定めた値を超えるピーク値が立つ相関点に対応する、ドップラーシフト分を含めたIFキャリア周波数となる。したがって、このドップラーシフト分を含めたIFキャリア周波数が、相関点検出の結果としてDSP23において、検出される。
【0098】
以上のようにして、一つのGPS衛星についての同期捕捉が完了すると、この例では、拡散符号発生部104から発生させる拡散符号を他のGPS衛星信号の拡散符号に対応するものに変更して、上記の処理を繰り返す。また、同期が取れなかった場合にも、DSP23では、拡散符号発生部104から発生させる拡散符号を他のGPS衛星信号の拡散符号に対応するものに変更して、上記の処理を繰り返す。
【0099】
そして、DSP23では、サーチすべき全GPS衛星についての同期捕捉処理が終了したとき、あるいは制御部40のCPU41からの情報により、例えば4個以上のGPS衛星についての拡散符号の同期が取れたときに、以上の同期捕捉処理を終了する。
【0100】
DSP23は、その同期捕捉の結果として検出した、同期捕捉したGPS衛星番号と、同期捕捉したGPS衛星信号の拡散符号の位相およびそのIFキャリア周波数とからなる情報を、制御部40に供給する。また、この例では、DSP23は、同期捕捉した各GPS衛星信号についての相関点のピーク値をも、制御部40に供給するようにしている。
【0101】
以上の説明では、受信信号のキャリアの処理を考慮していないが、実際には、受信信号r(n)は、図40の式(3)に示すようにキャリアを含んでいる。この式(3)において、Aは振幅、d(n)はデータ、foは中間周波信号におけるキャリア周波数、n(n)はノイズを表している。
【0102】
サンプリング部21でのサンプリング周波数をfs 、拡散符号の1周期分についてのサンプリング数をN(したがって、0≦n<N)とすると、離散フーリエ変換後の離散周波数k(0≦k<N)と実周波数fとの関係は、
0≦k≦N/2ではf=k・fs /N、
N/2<k<Nではf=(k−N)・fs /N(f<0)
である。なお、離散フーリエ変換の性質により、R(k)、C(k)は、k<0およびk≧Nでは循環性を示す。
【0103】
そして、受信信号r(n)から、データd(n)を得るためには、拡散符号c(n)とキャリアcos2πnf0との同期をとってキャリア成分を除去する必要がある。すなわち、後述する図40の式(2)で、R(k)のみにキャリア成分が含まれている場合には、図4のような相関波形が得られない。
【0104】
この実施の形態では、FFTによる周波数領域での処理のみの簡単な構成により、拡散符号c(n)とキャリアcos2πnf0との同期をとってキャリア成分を除去することができるようにしている。
【0105】
すなわち、FFT処理部101から得られるGPS衛星からの受信信号のFFT結果は、通常は、受信信号の周波数成分の周波数が低いものから順にメモリ102から読み出されて、乗算部103に供給されるが、この実施の形態では、メモリ102からは、読み出しアドレス制御部109からの制御に従って、読み出しアドレスがシフト制御されて、順次、受信信号のFFT結果が読み出される。
【0106】
読み出しアドレス制御部109には、受信信号を得たGPS衛星についてのドップラーシフト量を正確に見積もり、かつ、GPS受信機内部の発振周波数および時間情報を正確に校正することに基づいて検出した受信信号のキャリア周波数の情報が供給される。このキャリア周波数の情報は、GPS受信機内部でのみ生成することもできるが、外部から取得するようにすることもできる。
【0107】
そして、読み出しアドレス制御部109は、GPS受信機内部で生成した、あるいは外部から取得したキャリア周波数の情報に基づいて、そのキャリア周波数分だけ、読み出しアドレスをシフトして、メモリ102から受信信号のFFT結果を、順次、読み出し、乗算部103に供給するようにする。
【0108】
このように受信信号r(n)のFFT結果を、メモリ102から、受信信号のキャリア周波数分だけシフトして読み出すことにより、後述するように、キャリア成分を除去した受信信号のFFT結果と等価なFFT結果を得ることができ、そのキャリア成分を除去したFFT結果と、拡散符号の1周期分のFFT結果との乗算結果を逆拡散することにより、確実に図4のように相関点でピークを生じる相関検出出力が得られる。
【0109】
なお、後述もするように、メモリ102からのFFT結果の読み出しアドレスを制御するのではなく、メモリ106からの拡散符号のFFT結果の読み出しアドレスを制御することにより、拡散符号のFFT結果に、受信信号r(n)のキャリア分を加え、乗算部103での乗算によって、実質的によりキャリア成分の除去を行うようにすることもできる。
【0110】
以下に、メモリ102または106からの読み出しアドレスの制御によって、受信信号のキャリアと拡散符号との同期によるキャリア成分の除去について、DSP23でのデジタルマッチドフィルタの処理の動作説明と共に、さらに詳細に説明する。
【0111】
この実施の形態において、DSP23では、デジタルマッチドフィルタの処理が行われるものであるが、このデジタルマッチドフィルタの処理の原理は、図40の式(1)に示すように、時間領域での畳み込みのフーリエ変換が周波数領域では乗算になるという定理に基づくものである。
【0112】
この式(1)において、r(n)は時間領域の受信信号、R(k)はその離散フーリエ変換を表す。また、c(n)は拡散符号発生部からの拡散符号、C(k)はその離散フーリエ変換を表す。nは離散時間、kは離散周波数である。そして、F[]は、フーリエ変換を表している。
【0113】
2つの信号r(n)、c(n)の相関関数を改めてf(n)と定義すると、f(n)の離散フーリエ変換F(k)は、図40の式(2)のような関係になる。したがって、r(n)を周波数変換部10からの信号とし、c(n)を拡散符号発生部104からの拡散符号とすれば、r(n)とc(n)の相関関数f(n)は、通常の定義式によらず、前記式(2)により以下の手順で計算できる。
【0114】
・受信信号r(n)の離散フーリエ変換R(k)を計算する。
【0115】
・拡散符号c(n)の離散フーリエ変換C(k)の複素共役を計算する。
【0116】
・R(k)、C(k)の複素共役より、式(2)のF(k)を計算する。
【0117】
・F(k)の逆離散フーリエ変換により相関関数f(n)を計算する。
【0118】
ところで、前述したように、受信信号r(n)に含まれる拡散符号が、拡散符号発生部104からの拡散符号c(n)と一致していれば、上記手順により計算した相関関数f(n)は、図4のように相関点でピークを生ずる時間波形となる。上述したように、この実施の形態では、離散フーリエ変換および逆フーリエ変換に、FFTおよび逆FFTの高速化アルゴリズムを適用したので、定義に基づいて相関を計算するより、かなり高速に計算を行うことができる。
【0119】
次に、受信信号r(n)に含まれるキャリアと拡散符号との同期について説明する。
【0120】
前述したように、受信信号r(n)は、図40の式(3)に示すようにキャリアを含んでいる。受信信号r(n)から、データd(n)を得るためには、拡散符号c(n)とキャリアcos2πnf0との同期をとって除去する必要がある。すなわち、前述の図40の式(2)で、R(k)のみにキャリアが含まれている場合には、図4のような相関波形が得られない。
【0121】
ドップラーシフト量が正確に見積もられ、かつ、GPS受信機内部の発振周波数および時間情報が正確であれば、受信信号r(n)のキャリア周波数f0が既知となる。その場合には、図5に示すように、FFT処理部101の前段に乗算部121を設け、この乗算部121において受信信号r(n)と信号発生部122からの周波数f0のキャリアとを乗算して周波数変換することにより、FFTを行う前に受信信号r(n)からキャリア成分を除くことができる。
【0122】
その場合には、メモリ102からは、そのキャリア成分が除去された受信信号r(n)のFFT結果が得られ、このFFT結果と、拡散符号c(n)のFFT結果とが乗算部103で乗算されるので、逆FFT処理部107の出力としては、図4のように相関点にピークを生じる時間波形が確実に得られる。
【0123】
なお、図5で括弧内に記載したように、受信信号r(n)からキャリア成分を除去するのではなく、拡散符号c(n)についてのFFT処理部105の前段に乗算部121を設けて、この乗算部121において拡散符号c(n)と信号発生部122からの周波数f0のキャリアとを乗算して周波数変換することにより、拡散符号にキャリア成分を加えるようにしても同様である。
【0124】
すなわち、その場合には、メモリ102から読み出した受信信号のFFT結果に含まれるキャリア成分と、メモリ106から読み出した拡散符号のFFT結果に含まれる、加えられたキャリア成分とが同期しているため、逆FFT処理部107からは、図4のように相関点でピークを生じる相関検出出力が得られる。
【0125】
しかし、以上説明したような図5のように時間領域の信号にキャリア周波数の信号を乗算する方法による場合には、キャリア成分を除くための乗算部が特に必要になり、構成が複雑になると共に、その乗算演算の分だけ、処理速度が遅くなるという不利益がある。
【0126】
ところで、FFTの性質として、上述のような周波数乗算は、図40の式(4)のように表すことができる。この式(4)で、F[]は離散フーリエ変換、φ0 はキャリアとの位相差、k0 はf0 に対応するkであって、f0 =k0 ・fs /Nである。この式(4)より、受信信号r(n)を図5のように周波数変換した信号のFFTは、r(n)のFFTであるR(k)を、キャリア周波数分k0だけシフトした形になる。
【0127】
以上のことから、図5の構成は、図6のような構成に置換可能となる。すなわち、受信信号r(n)や拡散符号c(n)にキャリア周波数を乗算する代わりに、受信信号のFFT結果または拡散符号のFFT結果をメモリ102またはメモリ106からの読み出す際の読み出しアドレスを、キャリア周波数分だけシフトするようにするものである。
【0128】
この場合に、図6で、受信信号r(n)をシフトする場合はダウンコンバージョンで、k0 >0とし、また、拡散符号c(n)をシフトする場合はアップコンバージョンで、k0 <0とする。
【0129】
以上説明したように、式(4)に示したFFTの性質を利用すれば、図5の信号発生器122は不要になり、図6のように、FFT結果のメモリからの読み出しアドレス位相をシフトするだけでよくなり、構成が簡単になると共に、処理の高速化につながる。
【0130】
なお、前述の式(4)における位相差φ0 は未知であるため、図6では無視しているが、例えば、図40の式(5)により計算されるF’(k)の逆FFTの演算結果として得られる相関関数f’(n)(0≦n<N)は複素数となり、その実部をfR’(n)、虚部をfI’(n)とすると、相関ピークの振幅|f’(n)|は、図40の式(6)に示すようにして得られ、位相φは、図40の式(7)に示すようにして得られるので、式(4)の右辺のexp(jφ0 )の乗算は省略してよい。なお、位相φ は、式(3)のデータd(n)の符号に対応したπだけ異なる2つの値に式(7)のφ0が加わった値となる。
【0131】
以上説明したような、DSP23における同期捕捉処理の第1の例の動作を図3のブロック図に反映させた構成図を図7に示す。この図7の各ブロックの出力には、上述したような信号出力r(n)、c(n)および演算結果R(k)、C(k)、f'(n)が示されている。
【0132】
以上のように、DSP23での捕捉処理の第1の例によれば、GPS受信機において、FFTを利用してデジタルマッチドフィルタを構成する場合に、図7のように受信信号のFFT結果を、キャリア周波数分だけメモリのアドレスをシフトして、拡散符号と乗算する構成によって、相関点np が、例えば図4に示すような波形で得られ、4個のGPS衛星、つまり4種類の拡散符号c(n)について、相関点np が判れば、GPS受信機位置の計算が可能になる。
【0133】
すなわち、第1の例によれば、FFTを利用したデジタルマッチドフィルタ処理を行う場合において、受信信号のキャリアと拡散符号との同期を取るために、時間領域で乗算を行うことなく、受信信号のFFT結果と拡散符号のFFT結果同士の周波数領域での乗算の際に、受信信号のFFT結果と拡散符号のFFT結果のうちの一方のFFT結果をシフトするという簡便な方法により、受信信号のキャリア成分を除去することができる。
【0134】
なお、図7の例では、受信信号のFFT結果R(k)の方の、メモリの読み出しアドレスをシフトさせたが、拡散符号のFFT結果C(k)の方のメモリの読み出しアドレスを、受信信号のFFT結果R(k)の場合とは逆方向にシフト(乗算器でのアップコンバージョンの形になる)しても良い。
【0135】
また、上述の第1の例の説明においては、拡散符号発生器104とFFT処理部105とを別々に設けるようにしたが、それぞれのGPS衛星に対応する拡散符号を予めFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0136】
〔デジタルマッチドフィルタによる同期捕捉の第2の例〕
上述の同期捕捉の第1の例は、GPS衛星からの受信信号のキャリア周波数が既知である場合であったが、この同期捕捉の第2の例は、キャリア周波数が未知である場合である。第1の例と同様に、この第2の例においては、サンプリング回路21でのサンプリング周波数は、4.096MHzであり、RAM22の容量は、サンプリング回路21からのデータの1ミリ秒分の容量である。
【0137】
図8は、第2の例としてのDSP23の構成例を示すブロック図である。この図8において、前述した第1の例として示した図3のDSP23の構成例と同一部分には、同一番号を付してある。
【0138】
この同期捕捉の第2の例では、図8に示すように、相関点検出部108の相関検出出力を、読み出しアドレス制御部110に供給する。読み出しアドレス制御部110は、受信信号r(n)のFFT結果のメモリ102からの読み出しアドレスの前記シフト量を、過去のデータから決定した予測アドレスを中心に、相関点検出部108の相関検出出力に基づいて変更制御して、相関点検出部108で図4に示したようなピークが得られるようにする。相関点検出部108で図4に示したようなピークが得られたときには、読み出しアドレス制御部110は、読み出しアドレスのシフト制御を、そのときのシフト量で停止する。
【0139】
この同期捕捉の第2の例における同期捕捉部20での処理の流れを、図9および図10のフローチャートを参照しながら説明する。なお、この図9および図10のフローチャートは、主としてDSP23でのソフトウエア処理に対応するものである。
【0140】
まず、周波数変換部10からのIFデータをサンプリング回路21でサンプリングし、信号r(n)としてRAM22に取り込む(ステップS1)。次に、この信号r(n)をFFT処理部101でFFTし、そのFFT結果R(k)をメモリ102に書き込む(ステップS2)。次に、信号を受信したGPS衛星に対応する拡散符号のFFT結果C(k)をメモリ106にセットする(ステップS3)。
【0141】
次に、受信信号r(n)のFFT結果R(k)のメモリ102からの読み出しアドレスのシフト量の初期値k0’を、過去のデータから決定する(ステップS4)。そして、決定した初期値k0’を、メモリ102からのFFT結果の読み出しアドレスのシフト量k'として設定すると共に、シフト制御の変更回数vを初期値v=0にセットする(ステップS5)。
【0142】
次に、メモリ102から、受信信号r(n)のFFT結果R(k)を、読み出しアドレスを、k'だけシフトして読み出す(ステップS6)。そして、読み出したFFT結果R(k−k')と、拡散符号のFFT結果C(k)の複素共役とを乗算して相関関数F’(k)を求める(ステップS7)。
【0143】
次に、この相関関数F’(k)の逆FFTを行って時間領域の関数f’(n)を求める(ステップS8)。そして、この関数f’(n)について、ピーク値f’(np)を求め(ステップS9)、そのピーク値f’(np)が予め設定されているスレッショールド値fthより大きいかどうか判別する(図10のステップS11)。
【0144】
ステップS11での判別の結果、ピーク値f’(np)が、予め設定されているスレッショールド値fthより小さいときには、相関点が検出できなかったとして、シフト制御の変更回数vが予め設定された最大値vmaxよりも小さいかどうか判別する(ステップS16)。この最大値vmaxは、周波数に換算したときに、1kHzに相当する。
【0145】
そして、シフト制御の変更回数vが予め設定された前記最大値vmaxよりも小さいと判別したときには、シフト制御の変更回数vを1だけインクリメント(v=v+1)すると共に、新たなシフト量k'を、
k'=k'+(−1)v×v
として設定し(ステップS17)、その後、ステップS6に戻る。そして、上述したステップS6以降の処理を繰り返す。
【0146】
また、ステップS16で、シフト制御の変更回数vが、予め設定された前記最大値vmaxよりも大きいと判別したときには、そのように大きいと判別された回数が、現在のRAM22のデータに対して予め定められた所定回数以上となったか否か判別し(ステップS18)、前記所定回数以上でなければ、ステップS1に戻り、RAM22に新たなデータを取り込んで、以上の処理を繰り返す。
【0147】
また、ステップS18で、前記所定回数以上であると判別したときには、サーチすべきすべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS14)、すべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、サーチ動作を終了する(ステップS19)。
【0148】
また、ステップS14で、拡散符号同期サーチが終了していないサーチすべき衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS15)。そして、ステップS3に戻り、上述したステップS3以降の処理を実行する。
【0149】
また、ステップS11において、ピーク値f’(np)が、予め設定されているスレッショールド値fthより大きいと判別したときには、そのピーク値f’(np)を取る離散時間(拡散符号の位相)npを相関点として検出する(ステップS12)。
【0150】
そして、検出した相関点npが、4個目であるか否か判別し(ステップS13)、4個目であると判別したときには、受信機位置計算処理を開始し、同期保持部30における同期保持処理をする(ステップS20)。その後、ステップS14に移行する。ステップS20の処理は、4個目以降でも行うにようにしてもよい。
【0151】
なお、ステップS12で検出した相関点npが得られるときの読み出しアドレスシフト量k'から、当該受信中のGPS衛星についてのドップラーシフト量およびGPS受信機の発振周波数の誤差を推定することができる。すなわち、受信信号のキャリア周波数を検知することができる。
【0152】
ステップS13で、検出した相関点npが、4個目以外であると判別したときには、サーチすべきすべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS14)、サーチすべきすべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、サーチ動作を終了する(ステップS19)。
【0153】
また、ステップS14で、拡散符号同期サーチが終了していない衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS15)。そして、ステップS3に戻り、上述したステップS3以降の処理を実行する。
【0154】
以上説明したような同期捕捉の第2の例の処理動作を、図8のDSP23の内部構成のブロック図に反映させた構成図を図11に示す。この図11の各ブロックの出力には、上述したような信号出力および演算結果が示されている。
【0155】
以上のようにして、同期捕捉の第2の例によれば、GPS衛星からの受信信号のキャリア周波数が未知であっても、FFTによる周波数領域での処理を積極的に用いて、受信信号のキャリアと拡散符号との同期検出を行って、キャリア成分を除去することができる。したがって、FFTを利用したデジタルマッチドフィルタによるGPS受信信号と拡散符号との相関点の検出を、高速、かつ簡単な構成で実現することができる。そして、メモリ102の読み出しアドレスのシフト量から、IFキャリア周波数を検出することができる。
【0156】
なお、この第2の例の場合においても、それぞれの衛星に対応する拡散符号を予めFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0157】
〔デジタルマッチドフィルタによる同期捕捉の第3の例〕
上述したように、デジタルマッチドフィルタによって受信信号と拡散符号の相関点を検出する場合には、その相関点を検出する単位データ長は、拡散符号の1周期長とするのが通常である。
【0158】
しかし、GPS衛星からの受信信号では、前述したように、データの1ビットは、拡散符号の20周期分であり、この20周期分では、すべて同じパターンの符号となっている。この同期捕捉の第3の例では、この特質を生かして、デジタルマッチドフィルタによって受信信号と拡散符号の相関点を検出する単位データ長は、拡散符号の複数周期長とする。サンプリング回路21におけるサンプリング周波数は、前述の例と同様でよい。
【0159】
受信信号について、拡散符号の複数周期分単位でFFT演算処理をすることにより、この第3の例によれば、IFキャリア周波数の検出精度が高くなると共に、受信感度が向上し、同じ時間領域の信号を累積加算する方法に比べて、拡散符号の同期捕捉およびIFキャリア周波数のサーチがし易くなる。以下、この同期捕捉の第3の例を、さらに説明する。
【0160】
時間領域において、拡散符号のM周期(Mは2以上の整数)に渡って累積加算を行った1周期長のデータに対して相関点を検出する先行例がある(例えば米国特許4998111号明細書または「An Introduction to Snap TrackTM Server−Aided GPS Technology, ION GPS−98 Proceedings」参照)。
【0161】
すなわち、図12に示すように、この先行例の方法においては、受信信号r(n)について、拡散符号との乗算結果を、M周期分に渡って累積加算するものである。この先行例の方法は、GPS衛星からの受信信号の周期性とノイズの統計的な性質とを利用してC/Nを高めるもので、受信信号のキャリアと拡散符号の同期が事前にとれている状態であれば、C/NがM倍に改善され、したがって受信感度(相関点の検出感度)はM倍に向上する。そして、キャリア周波数の検出精度のM倍に向上する。
【0162】
しかし、受信信号のキャリアと拡散符号との同期がとれていないと位相の異なるM個のキャリアが加算合成されてしまい、累積加算した結果においては肝心のGPS信号が相殺されてしまって相関ピークは検出できなくなる。
【0163】
このため、受信信号のキャリア周波数が未知の場合には、キャリア周波数をサーチする必要があり、サーチする各々の周波数毎に累計加算を行うといった効率の悪い操作を行わざるを得なくなる。
【0164】
これに対して、上述した同期捕捉の第1および第2の例では、上述したようにして周波数領域において、FFT結果のメモリからの読み出しアドレスをシフトするという簡便な方法により、受信信号のキャリアと拡散符号との同期がとれるので、累積加算の効果を最大限に発揮させることができる。
【0165】
この同期捕捉の第3の例では、第2の例と同様に、GPS衛星からの受信信号のキャリア周波数は未知として、キャリア周波数のサーチを行うのであるが、その場合に、受信信号r(n)については、拡散符号のM周期分毎にFFTを行うようにする。そして、この拡散符号のM周期分毎に、受信信号のFFT結果のメモリからの読み出しアドレスのシフト量の制御による受信信号のキャリア周波数のサーチを行う。
【0166】
前述した図40の式(3)中のデータd(n)は、M≦20とすれば、拡散符号のM周期中では1または−1の固定値になるので無視できる。すると、式(3)は、
r(n)=A・c(n)cos2πnf0 +n(n)
となり、これをM周期長で離散フーリエ変換すると、データの数はM×N(Nは拡散符号の1周期分のデータ数)なので、離散フーリエ変換後のkと実周波数fの関係は、サンプリング周波数fs に対して
0≦k≦MN/2では、f=kfs /MN
となり、
MN/2<k<MNでは、f=(k−MN)fs /MN(ただしf<0)
となって、分解能がM倍になる。
【0167】
しかし、拡散符号c(n)は周期信号であり、その1周期長の時間をT(GPSのC/AコードではT=1ミリ秒)とすると、f=1/T以下の精度の周波数成分はない。したがって、受信信号r(n)の離散フーリエ変換後のFFT結果R(K)(ただし、0≦K<MN)中の拡散符号c(n)の周波数成分はM個おき、すなわち、MN個のデータのうちのN個の点に集中し、その振幅は、M周期分が累積加算されるため、1周期長での同じ周波数成分のM倍になる。説明の簡単のため、M=4としたときのスペクトラム例を図13に示す。
【0168】
図13の例では、信号のスペクトラムがM=4個おきにあり、それらの間には信号成分はない。N個の点以外では、拡散符号c(n)の周波数成分は0になる。一方、ノイズn(n)は、多くの場合、非周期信号であるから、MN個の全周波数成分にエネルギーが分散される。したがって、受信信号r(n)のFFT結果R(K)中における拡散符号c(n)のN個の周波数成分の総和において、時間領域での累積加算と同様に、C/NがM倍向上することになる。
【0169】
受信信号r(n)中に、式(3)に示したキャリア成分cos2πnf0がなければ、FFT結果R(k)中の拡散符号c(n)の周波数成分は、K=i×M(ただし、0≦i<N)に集中するが、キャリア成分が存在するので、この第3の例では、メモリからのFFT結果R(K)の読み出しアドレスを、拡散符号の1周期当たりについて、K=(i×M)−k0 として、キャリア周波数分のk0 だけ循環的にシフトするようにする。
【0170】
以上説明した第3の例のDSP23の構成は、図8に示した第2の例の場合と同様となるが、RAM22の容量は、拡散符号のM周期分、例えば16周期分(16ミリ秒)とされ、DSP23では、この拡散符号のM周期分のデータ単位で、捕捉処理動作を行う。上述の捕捉処理動作を、DSP23の内部構成に反映させた構成図を図14に示す。
【0171】
すなわち、FFT処理部101からは、FFT演算処理単位を拡散符号のM周期とするFFT結果R(K)が得られ、メモリ102に書き込まれる。この図14では、0≦k<N、0≦K<MNとしている。
【0172】
そして、このメモリ102から、読み出しアドレスがシフト制御されてFFT結果が読み出されて乗算部103に供給され、メモリ106からの拡散符号c(n)のFFT結果C(k)の複素共役と乗算される。
【0173】
この第3の例の場合、この乗算部103から得られる相関関数F(k)は、図40の式(8)に示すようなものとなるようにされる。なお、式(8)で、kは、拡散符号のFFT結果C(k)の複素共役におけるkであり、k0 については、f0 =k0 ・fs /MNである。
【0174】
このとき、図14において、逆FFT処理部107から得られる相関関数f’(n)のピークは、R(K)がM周期の拡散符号を含むので、0≦n<MNの範囲においてM個現れることになる。しかし、相関点の検出は、拡散符号の1周期についての1個でよいので、逆FFT処理部107での計算は、前述の第1および第2の実施の形態の場合と同様に、0≦n<Nの範囲だけで済み、N≦n<MNにおける計算は必要ない。
【0175】
以上のようにして、この第3の例によれば、受信信号r(n)のFFTを拡散符号の1周期のM倍とすることにより、相関点の検出感度、したがって、受信感度を向上させることができる。この場合に、Mが大きいほど、受信感度が高くなるものである。したがって、Mの値を制御することにより、受信感度を制御することが可能になる。
【0176】
なお、この第3の例の場合においても、それぞれの衛星に対応する拡散符号をあらかじめFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0177】
〔デジタルマッチドフィルタによる同期捕捉の第4の例〕
前述の第3の実施の形態では、拡散符号のM周期(M>1)分を含む受信信号r(n)をFFT処理することで、未知のキャリア周波数のサーチを可能にすると共に、受信感度の向上を図ることができるものであるが、データサンプルの数が、拡散符号1周期分の場合のN個からM倍のMN個になるため、FFTの計算時間が長くなると共に、メモリ102の容量が大きくなる。同期捕捉の第4の例は、この問題を改善したものである。
【0178】
図13に示したように、拡散符号のM周期(M>1)をFFT処理単位とした場合のFFT結果R(K)中の周波数成分はM個おきにしか存在しないので、それらのM個おきの周波数成分の間の成分は不要である。
【0179】
ここで、FFT結果R(K)(ただし、0≦K<NM)を、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)(0≦i<N)のM組に分ける。説明の簡単のため、M=4組に分けた場合の、それぞれの組の分割スペクトラムの例を図15〜図18に示す。キャリア周波数は未知であるが、M組のうちの1組に、相関を検出する対象となるGPS信号のエネルギーがある。図15〜図18の例では、図15のR(i×M)の組に、受信信号r(n)の周波数成分が含まれ、それ以外の3つの分割スペクトラムにはノイズしかない状態を表している。
【0180】
なお、実際の信号ではキャリア周波数k0は、正確にはk'=k0でないため、例えばk0がk0’とk0’+1との間、つまり、k0’≦k0<k0’+1であったとすると、k'=k0’と、k'=k0’+1との両方で相関が検出され、k0に近い方が大きな相関を示す。
【0181】
FFT結果R(K)を前記のようにM組に分割した場合、Mが2のべき乗であれば、FFT計算手順の性質から、各組は、それぞれ独立に計算できる。
【0182】
図19は、8個のデータg(0)〜g(7)のFFT計算の信号の流れ図である。図19のFFT結果G(K)を、4個おきのデータに分けるとすると、(G(0),G(4))、(G(1),G(5))、(G(2),G(6))、(G(3),G(7))の4組となる。この中の(G(0),G(4))に注目すると、図20に示す部分だけの計算でよいことが判る。そして、この計算の構造は、他の組(G(1),G(5))、(G(2),G(6))、(G(3),G(7))においても同様となるものである。
【0183】
この4組のデータを1組ずつ調べることにすると、まず、(G(0),G(4))を計算し、調べ終わったら(G(0),G(4))を格納したメモリを開放して次の組に進む。(G(1),G(5))、(G(2),G(6))、(G(3),G(7))と、順次計算して調べ終わったらメモリを開放するという操作を行うことにより、メモリは、G(0)〜G(7)を一括してFFTを求めるのに比べて、1/4のメモリ容量でよくなる。乗算回数は、M個に分割して計算した場合と全体を一括してFFT計算をした場合とでは同じになる。
【0184】
上記の例と同様のことが、Mを2のべき乗にすることで、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)に適用でき、FFT結果を格納するメモリの容量は、MNの1/M、すなわち、Nで済む。また、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)の順で相関を検出する際に、途中の組で相関点が検出できてしまえば、残る組については調べる必要がなくなるので、拡散符号のM周期毎の受信信号を一括してFFT処理して検出するより、処理時間が短くなると期待できる。
【0185】
以上説明した同期捕捉の第4の例における同期捕捉部20での処理の流れを、図21および図22のフローチャートを参照しながら説明する。図21および図22の例ではFFTの回数を最小にするため、キャリア周波数のサーチを、各FFTの組毎に、対象とする衛星すべてについて相関検出を行うようにしている。なお、この図21および図22のフローチャートは、主としてDSP23でのソフトウエア処理に対応するものである。
【0186】
まず、R(K)(ただし、0≦K<NMであり、K=i×M+u)の分割組数についての変数u(0≦u<M)を初期化し(ステップS21)、次に、周波数変換部10からのIFデータをサンプリング回路21でサンプリングし、そのサンプリングデータを、拡散符号のM周期分、例えば16周期分(16ミリ秒)、信号r(n)(ただし、0≦n≦MN)としてRAM22に取り込む(ステップS22)。次に、この信号r(n)をFFT処理部101でFFTし、そのFFT結果R(K)をメモリ102に書き込む(ステップS23)。次に、信号を受信したGPS衛星に対応する拡散符号のFFT結果C(k)をメモリ106にセットする(ステップS24)。
【0187】
次に、受信信号r(n)のFFT結果R(K)のメモリ102からの読み出しアドレスのシフト量の初期値k0’を、例えば過去のデータから決定する(ステップS25)。そして、決定した初期値k0’を、メモリ102からのFFT結果の読み出しアドレスのシフト量k'として設定すると共に、シフト制御の変更回数vを、初期値v=0にセットする(ステップS26)。
【0188】
次に、メモリ102から、受信信号r(n)のFFT結果R(K)を、その読み出しアドレスを、k'だけシフトして読み出す(ステップS27)。そして、読み出したFFT結果R(K−k')と、拡散符号のFFT結果C(k)の複素共役とを乗算して相関関数F’(k)を求める(ステップS28)。
【0189】
次に、この相関関数F’(k)の逆FFTを行って時間領域の関数f’(n)を求める(ステップS29)。そして、この関数f’(n)について、ピーク値f’(np)を求め(ステップS30)、そのピーク値f’(np)が予め設定されているスレッショールド値fthより大きいかどうか判別する(ステップS31)。
【0190】
ステップS31での判別の結果、ピーク値f’(np)が、予め設定されているスレッショールド値fthより小さいときには、相関点が検出できなかったとして、シフト制御の変更回数vが予め設定された最大値vmaxよりも小さいかどうか判別する(ステップS32)。この最大値vmaxは、周波数に換算したときに、1kHzに相当する。
【0191】
そして、シフト制御の変更回数vが予め設定された最大値vmaxよりも小さいと判別したときには、シフト制御の変更回数vを1だけインクリメント(v=v+1)すると共に、新たなシフト量k'を、
k'=k'+(−1)v×v
として(ステップS33)、ステップS27に戻る。そして、上述したステップS27以降の処理を繰り返す。
【0192】
また、ステップS32で、シフト制御の変更回数vが、予め設定された最大値mmaxよりも大きいと判別したときには、そのように大きいと判別された回数が、現在のRAM22のデータに対して予め定められた所定回数以上となったか否か判別し(ステップS41)、前記所定回数以上でなければ、ステップS22に戻り、RAM22に新たなデータを取り込んで、以上の処理を繰り返す。
【0193】
また、ステップS41で、前記所定回数以上であると判別したときには、すべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS36)、すべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、変数uがM−1より小さいかどうか判別し(ステップS38)、小さいときには、変数uをインクリメントし(ステップS39)、その後、ステップS23に戻り、このステップS23以降の処理を繰り返す。
【0194】
また、ステップS38で、変数uがM−1に等しいあるいはM−1より大きいと判別したときには、サーチ動作を終了する(ステップS40)。
【0195】
また、ステップS36で、拡散符号同期サーチが終了していない衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS37)。そして、ステップS24に戻り、上述したステップS24以降の処理を実行する。
【0196】
また、ステップS31において、ピーク値f’(np)が、予め設定されているスレッショールド値fthより大きいと判別したときには、そのピーク値f’(np)を取る離散時間(拡散符号の位相)npを相関点として検出する(ステップS34)。
【0197】
そして、検出した相関点npが、4個目であるか否か判別し(ステップS35)、4個目であると判別したときには、CPU41は、受信機位置計算処理を開始し、同期保持部30における同期保持処理をする(ステップS42)。その後、ステップS36に進む。ステップS42の処理は、4個目以降でも行うにようにしてもよい。
【0198】
なお、ステップS34で検出した相関点npが得られるときのシフト量k'とR(k)の分割組数についての変数uから、当該受信中のGPS衛星についてのドップラーシフト量およびGPS受信機の発振周波数の誤差が推定することができる。
【0199】
ステップS35で、検出した相関点npが、4個目以外であると判別したときには、ステップS36に進み、上述したステップS36以降の処理を実行する。
【0200】
なお、前述した同期捕捉の第1の例の場合のように、キャリア周波数が既知である場合には、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)の中で該当するものだけを計算すれば、拡散符号の多周期分を含む時間分を単位として受信信号をFFTする方法は、同様に適用できる。
【0201】
以上説明した第1〜第4の例の同期捕捉方法は、従来の手法であるスライディング相関器が原理的に時間を要するのに対し、FFTを用いたデジタルマッチドフィルタによる処理を高速なDSPで行うようにしたことにより、処理時間の大幅な短縮が期待できる。特に、第3の例および第4の例の場合には、拡散符号のM周期単位でFFT処理をするようにしたことにより、同期捕捉を高感度で行うことができる。
【0202】
さらに、第4の例の場合には、拡散符号のM周期単位でFFT処理を、より高速に行うようにすることができる。
【0203】
以上のような同期捕捉方法によって、同期捕捉部20で4個以上のGPS衛星からの信号の同期捕捉ができれば、GPS受信機としては、それらの拡散符号の位相とIFキャリア周波数とからGPS受信機の位置と速度を計算することが可能である。つまり、同期保持部30を設けなくても測位演算を行うことは可能である。
【0204】
しかし、GPS受信機として十分な高精度の測位および速度計算を行うためには、高精度で拡散符号の位相とIFキャリア周波数を検出する必要があり、そのためには、サンプリング回路21におけるサンプリング周波数を高くする、RAM22に取り込むIFデータの時間長を長くするといったことが必要になる。
【0205】
さらに、同期捕捉部20にデジタルマッチドフィルタを用いた構成とした場合には、デジタルマッチドフィルタ自身は、同期保持機能を有しないことをも考慮しなければならない。
【0206】
また、GPS受信機の外部から航法メッセージを取得しないとすると、同期捕捉部20は、4個以上のGPS衛星の航法メッセージを20ms毎に復調する必要があり、DSP23は常に同期の検出と航法メッセージの復調をかなり高速に行う必要がある。
【0207】
以上のように、同期捕捉部20のみにより、GPS受信機の位置計算および速度計算を十分な精度で行おうとすると、ハードウェアのサイズ増によるコストアップと消費電力増となり、GPS受信機を実際に製造する際の大きな問題となってしまう。
【0208】
そこで、この実施形態では、粗い精度での同期捕捉を専用の同期捕捉部20で行い、複数のGPS衛星信号の同期保持および航法メッセージの復調は同期保持部30で行うものとしている。そして、同期捕捉部20は、検出したGPS衛星番号と、その拡散符号の位相と、IFキャリア周波数と、相関検出信号からなる信号強度の情報を、制御部40を通じて同期保持部30にデータとして渡し、後述するように、同期保持部30は、そのデータを初期値として動作を開始するようにする。
【0209】
[同期保持部30の構成]
複数のGPS衛星信号の同期保持を並列して行うために、同期保持部30は、1つずつのGPS衛星信号を1チャンネルとして、複数チャンネル分を備える構成とされる。
【0210】
図23は、この実施形態における同期保持部30の構成例を示す。この同期保持部30は、nチャンネル分のチャンネル同期保持部30CH1、30CH2、・・・、30CHnと、コントロールレジスタ33とからなる。チャンネル同期保持部30CH1、30CH2、・・・、30CHnのそれぞれは、コスタスループ31とDLL(Delay Locked Loop)32とを備える。
【0211】
コントロールレジスタ33は、制御部40のCPU41に接続され、後述するように、コスタスループ31やDLL32のループフィルタのパラメータや、フィルタ特性を定めるためのデータを受け取り、CPU41により指示されるチャンネルの、CPU41により指示される部位に、そのデータを設定するようにする。また、コントロールレジスタ33は、コスタスループ31やDLL32のループフィルタからの相関値情報や周波数情報を受け取り、CPU41からのアクセスに応じてそれらの情報をCPU41に渡すようにする。
【0212】
〔コスタスループ31と、DLL32の構成〕
図24はコスタスループ31の構成例を示すブロック図であり、また、図25は、DLL32の構成例を示すブロック図である。
【0213】
コスタスループ31は、IFキャリア周波数の同期保持、送信データである航法メッセージの抽出を行う部分であり、DLL32は、GPS衛星信号の拡散符号の位相同期保持を行う部分である。そして、コスタスループ31とDLL32とが協働し、GPS衛星信号についてスペクトラム逆拡散を行って、スペクトラム拡散前の信号を得るとともに、このスペクトラム拡散前の信号を復調して航法メッセージを得て、制御部40のCPU41に供給する。以下、コスタスループ31とDLL32との動作について具体的に説明する。
【0214】
〔コスタスループ31について〕
周波数変換部10からのIFデータは、乗算器201に供給される。この乗算器201には、図25に示すDLL32の拡散符号発生器320からの拡散符号が供給される。
【0215】
DLL32の拡散符号発生部320からは、一致(プロンプト)拡散符号P、進み(アーリ)拡散符号E、遅れ(レート)拡散符号Lの、3つの位相の拡散符号が発生する。DLL32では、後述するように、進み拡散符号Eおよび遅れ拡散符号Lと、IFデータとの相関を計算し、それぞれの相関値が等しくなるように、拡散符号発生器320からの拡散符号の発生位相を制御し、これにより、一致拡散符号Pの位相が、GPS衛星信号の拡散符号の位相と一致するようにする。
【0216】
コスタスループ31の逆拡散用の乗算器201には、拡散符号発生器320からの一致拡散符号Pが供給されて、逆拡散される。この乗算器201からの逆拡散されたIFデータは、乗算器202および203に供給される。
【0217】
コスタスループ31は、図24に示すように、乗算器202および203と、ローパスフィルタ204,205と、位相検出器206と、ループフィルタ207と、NCO(Numerical Controlled Oscillator;数値制御型発振器)208と、相関検出器209と、2値化回路210と、拡散符号ロック判定部211と、スイッチ回路212と、IFキャリアロック判定部213とからなっている。
【0218】
ローパスフィルタ204,205のカットオフ周波数情報と、ループフィルタ207のフィルタ特性を定めるパラメータと、NCO208の発振中心周波数を定めるための周波数情報とは、後述するように、同期捕捉部20での同期捕捉結果に基づいて、CPU41からコントロールレジスタ33を通じて設定される。
【0219】
スイッチ回路212は、コスタスループ31のループを開閉制御するためのもので、CPU41からの切り換え制御信号によりオンオフされる。なお、同期保持動作がスタートする前の初期的な状態では、スイッチ回路212はオフとされ、ループ開の状態とされ、後述するように、同期保持動作がスタートして、コスタスループの相関検出器209の相関出力が有意なレベルとなったときに、このスイッチ回路212がオンとされて、ループ閉とされるようにされる。
【0220】
乗算器201において逆拡散された信号は、乗算器202、203に供給される。これら乗算器202,203には、制御部40のCPU41からの周波数情報により、ほぼIFキャリア周波数にされたNCO208からの、直交位相のI(Sine)信号と、Q(Cosine)信号とが供給される。
【0221】
これら乗算器202および203の乗算結果は、ローパスフィルタ204および205を通じて位相検出器206に供給される。ローパスフィルタ204および205は、制御部40のCPU41からのカットオフ周波数情報の供給を受け、これに供給された信号の帯域外ノイズを除去するものである。
【0222】
位相検出器206は、ローパスフィルタ204および205からの信号に基づいて、IFキャリアとNCO208からの周波数信号との位相誤差を検出し、この位相誤差をループフィルタ207を介してNCO208に供給する。これによりNCO208が制御されて、NCO208からの出力周波数信号の位相が、IFキャリア成分に同期するようにされる。
【0223】
なお、ループフィルタ207は、制御部40のCPU41から供給されるパラメータに応じて、位相検出器206からの位相誤差情報を積分して、NCO208を制御するNCO制御信号を形成するものである。NCO208は、ループフィルタ207からのNCO制御信号によって、前述したように、NCO208からの出力周波数信号の位相が、IFキャリア成分に同期するようにされる。
【0224】
また、コスタスループ31のローパスフィルタ204および205の出力は、相関検出器209に供給される。相関検出器209は、これに供給されるローパスフィルタ204および205の出力信号をそれぞれ自乗して加算して出力する。この相関検出器209の出力は、IFデータと拡散符号発生器320からの一致拡散符号Pとの相関値CV(P)示すものである。この相関値CV(P)は、コントロールレジスタ33を通じて制御部40のCPU41に渡される。
【0225】
そして、ローパスフィルタ204の出力信号は2値化回路210に供給されており、この2値化回路210より航法メッセージデータが出力される。
【0226】
また、相関検出器209からの相関値CV(P)出力は、拡散符号ロック判定部211に供給される。拡散符号ロック判定部211は、相関値CV(P)出力と、予め定められているスレッショールド値とを比較し、相関値CV(P)出力がスレッショールド値よりも大きいときには、同期保持がロック状態であることを示し、相関値CV(P)出力がスレッショールド値よりも小さいときには、同期保持がアンロック状態であることを示す拡散符号ロック判定出力を出力する。
【0227】
この実施形態では、この拡散符号ロック判定出力は制御部40のCPU41に送られ、CPU41は、この拡散符号ロック判定出力から、同期保持部30における拡散符号のロック状態、アンロック状態を認識するようにする。CPU41は、この拡散符号ロック判定出力からは、拡散符号の同期が保持されていることのみを判定する。したがって、CPU41は、この拡散符号ロック判定出力からでは、拡散符号の同期は取れているが、IFキャリアのロックが外れた状態の検知は行わない。CPU41は、IFキャリアロック判定部213の出力から、IFキャリアの周波数ロックは外れたか否かの判定を行う。
【0228】
IFキャリアロック判定部213には、ローパスフィルタ204および205の出力は供給される。このIFキャリアロック判定部213では、ローパスフィルタ204および205の出力の絶対値の比を求め、その比の値が予め定めたスレッショールド値以上であるときには、IFキャリアの同期がロック状態であることを示し、そうでなかったときには、IFキャリアの同期が外れた状態(アンロック状態)であることを示すIFキャリアロック判定出力を出力する。
【0229】
すなわち、IFキャリアロック判定出力は、ローパスフィルタ204の出力をIo、ローパスフィルタ205の出力をQoとし、前記スレッショールド値をthとしたとき、
|Io|/|Qo|>th
であるときにはロック状態、そうでなければ、アンロック状態を示すものとなる。
【0230】
この実施形態では、このIFキャリアロック判定出力は制御部40のCPU41に送られる。CPU41は、このIFキャリアロック判定出力から、IFキャリアについてのロック状態、アンロック状態を認識するようにする。
【0231】
〔DLL32について〕
図25に示すように、DLL32においては、周波数変換部10からのIFデータは、乗算器301および311に供給される。そして、乗算器301には、拡散符号発生器320からの進み拡散符号Eが供給され、また、乗算器311には、拡散符号発生器320からの遅れ拡散符号Lが供給される。
【0232】
乗算器301は、IFデータと進み拡散符号Eとを乗算することにより、スペクトラム逆拡散を行い、この逆拡散がなされた信号を乗算器302、303に供給する。そして、乗算器302には、前述のコスタスループ31のNCO208からのI信号が供給され、乗算器303には、NCO208からのQ信号が供給される。
【0233】
乗算器302は、逆拡散されたIFデータとNCO208からのI信号とを乗算し、その結果をローパスフィルタ304を通じて相関検出器306に供給する。同様に、乗算器303は、逆拡散されたIFデータとNCO208からのQ信号とを乗算し、その結果をローパスフィルタ305を通じて相関検出器306に供給する。
【0234】
なお、ローパスフィルタ304、305は、コスタスループ31のローパスフィルタ204,205と同様に、制御部40のCPU41からのカットオフ周波数情報の供給を受け、これに供給された信号の帯域外ノイズを除去するものである。
【0235】
相関検出器306は、これに供給されるローパスフィルタ304,305からの出力信号をそれぞれ自乗して加算して出力する。この相関検出器306からの出力は、IFデータと、拡散符号発生器320からの進み拡散符号Eとの相関値CV(E)示すものである。この相関値CV(E)は、位相検出器321に供給されるとともに、コントロールレジスタ33に格納され、制御部40のCPU41が用いることができるようにされる。
【0236】
同様に、乗算器311は、IFデータと遅れ拡散符号Lとを乗算することにより、スペクトラム逆拡散を行い、この逆拡散がなされた信号を乗算器312、313に供給する。乗算器312には、前述したように、NCO208からのI信号が供給され、乗算器313には、NCO208からのQ信号が供給される。
【0237】
乗算器312は、逆拡散されたIFデータとNCO208からのI信号とを乗算し、その結果をローパスフィルタ314を通じて相関検出器316に供給する。同様に、乗算器313は、逆拡散されたIFデータとNCO208からのQ信号とを乗算し、その結果をローパスフィルタ315を通じて相関検出器316に供給する。ローパスフィルタ314、315は、前述のローパスフィルタ304、305と同様に、制御部40のCPU41からのカットオフ周波数情報の供給を受け、これに供給された信号の帯域外ノイズを除去するものである。
【0238】
相関検出器316は、これに供給されるローパスフィルタ314,315からの出力信号をそれぞれ自乗して加算し、その演算結果を出力する。この相関検出器316からの出力は、IFデータと、拡散符号発生器320からの遅れ拡散符号Lとの相関値CV(L)を示すものである。この相関値CV(L)は、位相検出器321に供給されるとともに、コントロールレジスタ33に格納され、制御部40のCPU41が用いることができるようにされる。
【0239】
位相検出器321は、相関検出器306からの相関値CV(E)と、相関検出器316からの相関値CV(L)との差分として、一致拡散符号とGPS衛星信号の拡散符号との位相差を検出し、その位相差に応じた信号をループフィルタ322を介してNCO323の数値制御信号として供給する。
【0240】
拡散符号発生器320には、このNCO(Numerical Controlled Oscillator;数値制御型発振器)323の出力信号が供給されており、このNCO323の出力周波数が制御されることにより、拡散符号発生器320からの拡散符号の発生位相が制御される。
【0241】
なお、NCO323は、後述するように、同期捕捉部20の同期捕捉結果に応じた制御部40のCPU41からの初期発振周波数を制御する周波数情報の供給を受ける。
【0242】
以上のDLL32におけるループ制御により、NCO323が制御されて、拡散符号発生器320は、相関値CV(E)と相関値CV(L)とが同じレベルとなるように、拡散符号P、E,Lの発生位相を制御する。これにより、拡散符号発生器320から発生する一致拡散符号Pが、IFデータをスペクトラム拡散している拡散符号と位相同期するようにされ、この結果、一致拡散符号PによりIFデータが正確に逆スペクトラム拡散され、コスタスループ31において、2値化回路210から航法メッセージデータが復調されて出力される。
【0243】
そして、その航法メッセージデータの復調出力は、図示しないデータ復調回路に供給されて制御部40で使用可能なデータに復調された後、制御部40に供給される。制御部40では、航法メッセージデータは、測位計算に用いられ、また、適宜、軌道情報(アルマナック情報やエフェメリス情報)が抽出されて、軌道情報用メモリ46に格納される。
【0244】
なお、DLL32のループフィルタ322は、前述したコスタスループ31のループフィルタ207と同様に、制御部40のCPU41から供給されるパラメータに基づいて、位相検出器321からの位相誤差情報を積分して、NCO323を制御するNCO制御信号を形成するものである。
【0245】
DLL32においても、ループフィルタ322と、NCO323との間に、ループの開閉制御用のスイッチ回路324が設けられ、CPU41からの切り換え制御信号によりオンオフされる。
【0246】
なお、同期保持動作がスタートする前の初期的な状態では、スイッチ回路324はオフとされ、ループ開の状態とされ、後述するように、同期保持動作がスタートして、コスタスループの相関検出器209の相関出力が有意なレベルとなったときに、このスイッチ回路324がオンとされて、ループ閉とされるようにされる。
【0247】
[同期捕捉から同期保持への移行について]
この実施形態では、前述したように、同期捕捉部20は、検出したGPS衛星番号と、その拡散符号の位相と、IFキャリア周波数と、信号強度の情報とを、データとして制御部40のCPU41に渡す。なお、信号強度の情報は、同期保持処理への移行のための情報としては、必須のものではない。
【0248】
取得したデータに基づいて制御部40のCPU41は、同期保持部30に供給するデータを生成し、それを同期保持部30に渡す。同期保持部30はそのデータを初期値として同期保持動作を開始するようにする。
【0249】
制御部40のCPU41から同期保持部30に渡されるデータは、DLL32の拡散符号発生器320からの拡散符号の発生位相を制御するNCO323の初期発振周波数(発振中心周波数)を決定するための数値情報と、コスタスループ31のNCO208の初期発振周波数(発振中心周波数)を決定するための数値情報と、ループフィルタ207および322のフィルタ特性を決定するためのパラメータと、ローパスフィルタ204,205,304,305,314,315のカットオフ周波数を決定して、その周波数帯域の広狭を決定するための係数情報である。
【0250】
このとき、CPU41から同期保持部30に供給される情報は、同期保持部30で、拡散符号の同期保持およびIFキャリアの同期保持を開始する位相や周波数、また、フィルタ特性を定めるための初期値データであるが、CPU41は、同期捕捉部20で同期捕捉した結果として検出された拡散符号の位相およびIFキャリア周波数の近傍から同期保持を開始するように、前記初期値データを生成する。
【0251】
したがって、同期保持部30では、同期捕捉部20で検出された拡散符号の位相近傍および検出されたIFキャリア周波数の近傍から同期保持動作を開始して、迅速に同期保持のロック状態にすることができるようになる。
【0252】
ところで、GPS受信機が位置および速度を計算するためには、同期捕捉開始から4個以上のGPS衛星に対して同期を確立し、保持しなければならない。同期捕捉部20と同期保持部30および両者を制御するCPU41とによって、4個以上のGPS衛星からの信号の同期を保持するまでの過程(以下、この過程を同期捕捉・同期保持過程と呼ぶ)には複数の方法がある。同期捕捉・同期保持過程の幾つかの例を次に説明する。
【0253】
〔同期捕捉・同期保持過程の第1の例〕
この第1の例では、同期捕捉部20は、GPS衛星信号の一つを同期捕捉すると、すぐに、CPU41に、同期保持動作開始のための割り込み指示と、同期捕捉結果としてのGPS衛星番号、その拡散符号の位相、IFキャリア周波数、相関検出レベルを表わす信号強度を転送し、転送が終わると別のGPS衛星についての同期捕捉に移る。
【0254】
CPU41は、同期保持部20からの割り込み指示を受け取る毎に、同期保持部30に対して独立のチャンネルの割り当てを行うと共に、初期値の設定を行って、同期保持動作を開始させるようにする。
【0255】
図26は、この同期捕捉・同期保持過程の第1の例における同期捕捉部20での同期捕捉処理の流れを説明するためのフローチャートである。
【0256】
まず、同期捕捉のための初期設定を行う(ステップS71)。この初期設定においては、同期捕捉のためにサーチするGPS衛星およびそのサーチの順番を、GPS受信機が軌道情報用メモリ46に記憶している有効な軌道情報に基づいて設定する。また、その軌道情報から、ドップラーシフトを考慮したキャリア周波数を計算して、サーチするIFキャリア周波数の中心と範囲を設定するようにする。
【0257】
また、電源投入前の過去の動作で得た大体の発振器誤差が、GPS受信機で判明しているのであれば、GPS受信機位置を電源投入時に記憶されている位置、すなわち、前回電源を切る直前の位置と仮定して、軌道情報から計算したドップラーシフトに合わせて、サーチするIFキャリア周波数の中心と範囲を決めるようにすると、さらに同期保持に至るまでに要する時間を短縮できる。
【0258】
初期設定が終了したら、サーチの順番に従って、同期捕捉する一つのGPS衛星を設定する(ステップS72)。これにより、同期捕捉対象の衛星番号が決まり、また、相関を検出しようとする拡散符号が決まる。
【0259】
次に、同期捕捉部20では、RAM22に、サンプリング回路21でサンプリングしたIFデータの取り込みを開始し、この開始タイミングで、タイマをスタートさせる(ステップS73)。ここで、このタイマとしては、制御部40のタイマ45を用いるようにする。このタイマ45は、後述のように、同期保持処理スタートタイミングを設定する際にも用いられる。
【0260】
次に、DSP23において、前述したデジタルマッチドフィルタを用いた同期捕捉の例のいずれかを用いて、ステップS72で設定したGPS衛星信号の拡散符号について相関検出処理を行う(ステップS74)。
【0261】
そして、GPS衛星信号の拡散符号について相関が検出されたか否か、つまり、GPS衛星信号の同期捕捉ができたか否か判別し(ステップS75)、相関が検出できたときには、CPU41に対して割り込み指示を発生させると共に、同期捕捉の検出結果として、GPS衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報をCPU41に渡す(ステップS76)。
【0262】
そして、サーチすべきGPS衛星のすべてについての同期捕捉サーチが終了したか否か判別し(ステップS77)、未だサーチすべきGPS衛星が残っているときには、ステップS72に戻り、同期捕捉する次のGPS衛星を設定して、以上の同期捕捉処理を繰り返す。また、ステップS77で、サーチすべきすべてのGPS衛星についての同期捕捉が終了したと判別したときには、同期捕捉動作を終了して、同期捕捉部20を待機状態(スタンバイ状態)にする。
【0263】
また、ステップS75で相関が検出できないと判別したときには、その状態が予め定めた所定時間以上経過したか否か判別し(ステップS78)、所定時間経過していなければ、ステップS75に戻って、相関検出を継続する。
【0264】
ステップS78で、所定時間経過したと判別したときには、ステップS77に進み、サーチすべきGPS衛星のすべてについての同期捕捉サーチが終了したか否か判別し、未だサーチすべきGPS衛星が残っているときには、ステップS72に戻り、同期捕捉する次のGPS衛星を設定し、以上の同期捕捉処理を繰り返す。
【0265】
また、ステップS77で、サーチすべきすべてのGPS衛星についての同期捕捉が終了したと判別したときには、同期捕捉動作を終了して、同期捕捉部20を待機状態(スタンバイ状態)にする。
【0266】
この実施形態では、CPU41は、同期捕捉部20への電源供給のオンオフ制御、または、この同期捕捉部20に対する逓倍/分周回路3からの動作クロックの供給のオンオフ制御を行うことができるように構成されており、上記の同期捕捉部20のスタンバイ状態では、CPU41により、同期捕捉部20への電源の供給はオフ、または、動作クロックの供給が停止されて、不要な消費電力が抑えられている。
【0267】
同期捕捉部20を、上述のように、デジタルマッチドフィルタで構成すると、DSP23でのFFT計算を速くするためには高いクロックで動作させることが望ましく、したがって、動作時の消費電力が大きくなるが、同期捕捉部20において、初期設定したすべてのGPS衛星からの信号の同期捕捉検出が終わり、同期保持部30で4個以上の同期保持ができていれば、同期捕捉部20の役割は終了する。
【0268】
この実施形態では、上述のように、CPU41は、同期捕捉部20の役割終了後は、スタンバイ状態にしているので、同期捕捉部20における不要な消費電力が抑えられている。
【0269】
なお、上記の例では、初期設定したすべてのGPS衛星についての同期捕捉が完了した後、CPU41は、同期捕捉部20をスタンバイ状態に移行させるようにしたが、同期保持部30で同期保持できたGPS衛星が4個以上になったことを確認してから、CPU41が同期捕捉部20をスタンバイ状態に移行させるようにしてもよい。
【0270】
なお、CPU41は、一旦、スタンバイ状態になった同期捕捉部20を、再同期捕捉が必要な状態になったときに、動作状態に復帰させるようにすることができることは勿論である。
【0271】
次に、同期捕捉部20からの割り込み指示を受けたCPU41による同期保持部30の制御処理について、図27および図28のフローチャートを参照しながら説明する。
【0272】
図27は、CPU41が、同期捕捉部20から、割り込み指示および同期捕捉結果としての拡散符号の位相、IFキャリア周波数、GPS衛星番号、信号強度の情報を受け取ったときに、同期保持部30においてチャンネル割り当てし、同期保持スタートをさせるための処理である。また、図28は、CPU41が、同期保持スタートさせた同期保持部30の各1チャンネルにおいての同期保持処理制御のためのフローチャートである。まず、図27の同期保持スタート処理について説明する。
【0273】
まず、GPS受信機への電源投入時などにおいて、CPU41は、同期保持部30のNCO、ローパスフィルタ、ループフィルタなどへ定数の初期設定を行っておく(ステップS81)。なお、このとき、コスタスループ31およびDLL32は、いずれも初期状態はループ開とされる。
【0274】
次に、CPU41は、同期捕捉部20からの割り込み指示を監視し(ステップS82)、割り込み指示を検出したときには、同期捕捉部20から、GPS衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報を受け取ると共に、同期保持部30に対して、受け取ったGPS衛星番号に対して独立のチャンネルを割り当てるようにする設定する(ステップS83)。
【0275】
そして、CPU41は、同期捕捉部20から受け取った拡散符号の位相から、同期保持スタートタイミングを計算するとともに、同期保持部30の、割り当てられたチャンネル内の各部に供給する初期値を、同期捕捉部20から受け取ったIFキャリア周波数に基づいて生成する(ステップS84)。
【0276】
そして、CPU41は、生成した初期値を、コントロールレジスタ33を通じて同期保持部30の、ステップS83で割り当てられたチャンネル内の各部に送ると共に、同期保持部30の、ステップS83で割り当てられたチャンネル内の拡散符号発生器320からの一致拡散符号Pの発生位相を、前記同期保持スタートタイミングとするように制御して、同期保持動作をスタートさせる(ステップS85)。なお、このとき、コスタスループ31およびDLL32のループは開のままとする。
【0277】
以上のようにして、同期捕捉されたGPS衛星信号について、同期保持のためのチャンネルが割り当てられ、同期保持スタートを行ったら、ステップS82に戻り、次の割り込みを待つ。
【0278】
次に、以上のようにしてスタートしたチャンネル毎の同期保持処理を、図28のフローチャートについて説明する。
【0279】
CPU41は、まず、同期保持部30からの相関値CV(P)が有意なレベルになったか否か判別し(ステップS91)、相関値CV(P)が有意なレベルになったら、コスタスループ31およびDLL32のループを閉じて、同期保持動作を行う(ステップS92)。
【0280】
次に、CPU41は、同期保持部30のコスタスループ31のロック判定部211からのロック判定出力を監視し(ステップS93)、同期保持部30のロックを確認したときには、同期保持しているGPS衛星の数を1だけインクリメントし(ステップS94)、同期保持状態を継続する(ステップS95)。
【0281】
そして、CPU41は、この同期保持動作中において、コスタスループ31のロック判定部211からのロック判定出力を監視し(ステップS96)、同期保持のロックを確認したときには、ステップS95に戻って、同期保持状態を継続する。そして、ステップS96で同期保持のロックが外れたと判別したときには、同期保持しているGPS衛星の数を1だけデクリメントし(ステップS97)、同期保持が外れたときの処理を行うようにする。この同期保持が外れたときの処理については、後述する。
【0282】
CPU41は、同期保持部30で4個以上のGPS衛星信号の同期保持ができたと判別したときには、GPS受信機の位置の計算および速度の計算を行うようにする。
【0283】
ステップS91において、相関値CV(P)が有意なレベルにならないと判別したときには、その状態が予め定めた所定時間以上経過しかたどうか判別し(ステップS99)、所定時間以上経過したと判別したときには、図27のステップS83で割り当てた同期保持部30のチャンネルを空きチャンネルに戻し、当該チャンネルの同期保持を停止する(ステップS100)。
【0284】
また、ステップS93において、ロック判定出力によりロック状態が検出できなかったときには、その状態が予め定めた所定時間以上経過しかたどうか判別し(ステップS101)、所定時間以上経過したと判別したときには、ステップS83で割り当てた同期保持部30のチャンネルを空きチャンネルに戻し、当該チャンネルの同期保持を停止する(ステップS100)。
【0285】
ステップS99、ステップS101およびステップS100の部分は、次のような理由により設けられたものである。すなわち、同期捕捉部20が検出した相関が有意なレベルであっても、ノイズで偶々発生した偽の同期である場合もあり得る。突発的に生じたような持続性のない偽の同期に対しては、同期保持部30で同期が確立することはない。そこで、同期保持部30で一定のサーチ時間内に同期が確立できない場合には、同期保持動作を停止して、割り当てられたチャンネルを、空きチャンネルの状態に戻し、次の割り込みを待つようにしたものである。
【0286】
ところで、前述の図27のステップS84では、CPU41は、同期捕捉部20で検出した拡散符号の位相に、同期保持部30の拡散符号発生器320からの拡散符号の位相を合わせるように、同期保持部30の同期保持スタートタイミングを計算する必要があるが、その計算の際には、同期捕捉部20で、一つのGPS衛星信号についての同期捕捉が完了するまでに所定時間が経過しており、ドップラーシフトと、GPS受信機の基準発振器2の誤差の影響を受けることを考慮する必要がある。
【0287】
後者の問題は、IFキャリア周波数が、周波数変換部10からのIFデータのメモリに取り込むためのサンプリングクロックを生成している大元の基準発振器2の誤差を含むことによる。
【0288】
なお、この実施形態では、同期捕捉部20と同期保持部30とが同じ基準発振器2を発信源とするクロックで動作しているので、同期捕捉部20と同期保持部30とでは、全く同じ周波数誤差を持つことになる。したがって、IFキャリアの同期に関しては、同期保持部30が同期捕捉部20で検出したIFキャリア周波数を初期値として動作を開始することに関しては、全く問題ない。
【0289】
このステップS84における同期保持のスタートタイミングを決定する方法には幾つかの例がある。以下、その方法の例について説明する。
【0290】
〔同期保持のスタートタイミングを決定方法の第1の例〕
同期保持のスタートタイミングとしては、GPS受信機の基準発振器2の誤差の影響を受けるが、基本的には、拡散符号は1ミリ秒の周期で繰り返されるので、同期保持部30における拡散符号のスタートタイミングは、1ミリ秒の整数倍ずれていても問題はない。
【0291】
そこで、この第1の例では、同期捕捉部20が、IFデータをRAM22に取り込むタイミングでタイマ45をスタートさせていることを利用して、このRAM22に記憶しているIFデータについて、同期捕捉部20が拡散符号の位相差hを検出したとき、CPU41は、同じタイマ45を用いて、1ミリ秒の整数倍から、その検出位相差hだけずらした時点において、同期保持部30の拡散符号発生器320で生成する拡散符号をスタートさせることで、受信信号の拡散符号に位相を合わせるようにする。
【0292】
図29は、その状態を説明するための図である。図29(A)は、IFデータを示しており、PNは、その拡散符号を意味している。図29(B)に示すように、IFデータの拡散符号PNに対して、図のようにhだけ位相がずれたタイミングで、RAM22にIFデータを取り込んだ場合、DSP23では、その位相hを、拡散符号の位相の情報(DLL32の拡散符号発生器320をリセットする位相)として検出する。
【0293】
しかし、その位相差hを同期捕捉部20が検出した時点は、図29(C)に示すように、タイマ45をRAM22へのIFデータの取り込みタイミングでスタートさせた時点から、数ミリ秒経過した時点となっていたとする。
【0294】
CPU41は、同期捕捉部20から拡散符号についての位相差hを受け取った時点が、タイマ45で計測している時間の1ミリ秒単位の中間の時点であったときには、当該1ミリ秒単位の時間の経過を待ち、それに拡散符号についての位相差h分を加えた時点を同時保持スタートタイミングとして、同期保持部30の拡散符号発生器320の発生位相をリセットする。
【0295】
これにより、同期保持部30の拡散符号発生器320の発生位相を、同期捕捉部20で捕捉したGPS衛星信号の拡散符号の位相にほぼ合わせることができ、同期を確立するまでの時間を短時間にすることができる。
【0296】
従来のコスタスループ+DLLの役割においては、受信信号における拡散符号の位相がわからないため、DLLで生成するIFキャリア周波数と拡散符号の周期を少しずらし、IFデータの拡散符号に対して位相がスライドしていく中で有意な強度の相関が出る位相を、最悪の場合、数kHzの範囲のキャリア周波数と拡散符号の符号長1023におけるすべての位相に対して検出を行うため、同期を確立するまでにかなりの時間を要する。
【0297】
しかし、上述の実施形態においては、同期保持部30は、コスタスループ31およびDLLを用いる基本的な構成は従来と同じでありながら、同期保持部30が受け取った拡散符号の位相とIFキャリア周波数の初期値は、真値からわずかしかずれていないため、有意な強度の相関がある位相は誤差を含めても初期値の近辺に必ず存在する。
【0298】
そして、同期保持部30は、まず、スイッチ回路212およびスイッチ回路324をオフにして、コスタスループ31およびDLL32のNCO208および323を、ループフィルタ207および322からの制御を止めた状態、つまり、ループを開の状態にして、それぞれのNCO208および323を初期値付近で変えながら有意な強度の相関を探す。そして、相関を検出したら、スイッチ回路212および324をオンにして、DLL32とコスタスループ31のループフィルタ207および322からのループ制御に切り換えるようにしている。
【0299】
このため、DLL32における拡散符号の位相およびコスタスループ31におけるIFキャリアの位相の同期確立は極めて短時間に行われ、以降、同期を保持し続けることができる。
【0300】
この場合、IFキャリア周波数は、例えば数十Hzの精度で初期値が設定できるので、コスタスループ31およびDLL32のローパスフィルタおよびループフィルタの帯域幅は最初から狭くすることができ、S/Nが高い状態で同期を確立することができる。
【0301】
同期保持部30を、例えば1.023MHz×16=16.368MHzのクロックで動作させ、DLL32において、拡散符号の位相を1/16.368MHzの時間分解能で検出すれば、1/16チップの精度で拡散符号の位相から、GPS衛星とGPS受信機間の擬似距離を計算でき、また、コスタスループ31のNCO208を、1Hz単位で制御できる構成にすれば、IFキャリア周波数の分解能は1Hzとなり、DLL32とコスタスループ31は、その精度で同期を保持できる。
【0302】
〔同期保持のスタートタイミングの決定方法の第2の例〕
上述したように、同期捕捉部20で検出された拡散符号の位相、IFキャリア周波数を、同期保持部30における拡散符号の位相およびIFキャリアの初期値とすることで、同期保持部30は、その初期値の近辺で有意な相関が得られる位相を探すようにする。
【0303】
同期保持部30で、このようなサーチが必要となるのは、前述したように、GPS受信機に搭載されている基準発振器2が、公称周波数に対して誤差を持っていることが一つの理由である。
【0304】
前述のように、FFTを利用したデジタルマッチドフィルタで同期捕捉部20を構成した場合には、同期捕捉部20の検出結果は、IFデータをRAM22に記憶してから、DSPの処理時間分遅れて、同期保持部30に渡されることになる。
【0305】
このため、基準発振器2の発振周波数の公称発振周波数foscとの誤差をΔfosc、DSP23での同期捕捉処理時間をT秒とすると、同期保持部30に同期捕捉結果に応じたデータが渡る時には、T×Δfosc/fosc秒の誤差が生じる。例えば、T=3秒、Δfosc/foscが±3ppmの範囲内とすると、±9μs=約9チップ以内の誤差が生ずる。DSP23での同期捕捉処理時間が長くなると、その分、誤差は大きくなる。
【0306】
また、前述したように、GPS衛星とGPS受信機の移動によって生ずるキャリア周波数のドップラーシフトも誤差を生ずる要因である。
【0307】
GPS衛星信号のキャリア周波数をfrf(=1,575.42MHz)、受信信号のドップラーシフトをΔfdとすると、ドップラーシフトにより、受信信号の拡散符号の周期は、ほぼ(1−Δfd/frf)倍になり、例えば、+5〜−5kHzの範囲のドップラーシフトが生じている場合には、3秒間の間には約−9.5〜9.5μs=−9.5〜9.5チップ分の誤差が生ずる。
【0308】
上記の計算例は比較的現実に近い値であって、基準発振器2の誤差と、ドップラーシフトとの両方の要因を合わせると、±20チップ程度の範囲内で誤差が生ずることになる。
【0309】
この第2の例においては、CPU41は、同期保持部30で、この±20チップ程度の範囲だけをサーチして、相関を検出して同期保持させるように制御する。
【0310】
すなわち、CPU41は、例えば、同期捕捉部20で検出された拡散符号の位相より20チップ分早くDLL32で生成する拡散符号をスタートさせる。そして、そのときの拡散符号の周期を、DLL32のNCO323の周波数設定を(1+5/1,575,420)ミリ秒より長めに設定しておく。
【0311】
このようにすれば、同期保持部30においては、IFデータに含まれるGPS衛星信号の拡散符号に対するスライドが+20チップ分ずれたところから始まり、適当な時間の間、GPS衛星信号の拡散符号に対する、拡散符号発生器320からの拡散符号の位相がスライドしている状態で相関の有無をサーチできるようになる。
【0312】
従来方式がDLL+コスタスループにおいて、1023チップの範囲で、かつ、IFキャリア周波数も、ドップラーシフト+基準発振器2の誤差の範囲で変えながら相関検出を行っていたのに比べると、初期値のIFキャリア周波数は、例えば20チップという、わずかな誤差しかなく、相関を検出する範囲も数十分の一程度で済むので、同期保持部30における同期確立に要する時間は極めて短くなる。
【0313】
〔同期保持のスタートタイミングの決定方法の第3の例〕
以上のようにして、同期捕捉部20で、IFデータに含まれるGPS信号の拡散符号の位相およびIFキャリア周波数を高速に検出し、その検出結果により同期保持部30では速やかに同期保持に移行できる。
【0314】
しかし、IFデータ中の微弱な衛星の信号を検出するために処理シーケンスが増える場合、また、消費電力を抑えるため同期捕捉部20を低速のクロックで動作させている場合等では、同期捕捉部20での処理時間が長くなり、同期保持部30での同期確立までにサーチする範囲が広くなるので好ましくない。
【0315】
この第3の例においては、周波数変換部10と同期捕捉部20および同期保持部30の動作クロックの源発振となるのは、基準発振器2であって、共通化されていることを利用して、上記の問題を改善する。
【0316】
すなわち、この第3の例においては、同期捕捉部20で検出したIFキャリア周波数と基準発振器の公称値に基づく中間周波数Fif(例えば、1.023MHz)との差をΔFifとし、GPS信号のキャリア周波数をFrf(=1575.42MHz)とし、同期捕捉部20がIFデータをRAM22に取り込んでから同期捕捉処理に要した時間をT秒としたとき、図30に示すように、図29の第1の例の場合における位相差hは、位相差h+Δhに補正する。
【0317】
ここで、補正値Δhは、
Δh=T×ΔFif/Frf
により求められる。
【0318】
この補正値Δhは、CPU41において、同期捕捉部20からのIFキャリア周波数の情報と、タイマ45からのRAM22へのIFデータの取り込み時点から、同期捕捉部20からの割り込み指示があった時点までの時間Tとから計算される。CPU41は、その計算結果に基づいて、同期保持部30のDLL32の拡散符号発生器320からの拡散符号の位相を補正し、同期保持動作を開始させるようにする。
【0319】
例えば、ΔFif=+3kHz、T=10秒の場合、補正値Δhは、Δh=−19μs=約−19チップとなる。
【0320】
この補正により、基準発振器2の誤差とドップラーシフトとによって生ずる拡散符号の位相のずれは、かなり正確に補正でき、同期捕捉処理に時間を数十秒要した場合でも、ほぼ1チップ程度の範囲でのサーチで同期を確立できる。このような補正が可能なのは以下の理由による。
【0321】
周波数変換部10において、GPS衛星信号のキャリア周波数Frfを中間周波数Fif(以上は既知)に変換するために、公称発振周波数Foscの基準発振器2から局部発振周波数Flo=N×Fosc(Nは定数、N>>1)を生成し、Fif=Frf−Floとなるようにする。実際に受信するGPS衛星信号は、中間周波数Fifに対しドップラーシフトと基準発振器2の発振周波数誤差とによって生ずる誤差ΔFifが加わる。
【0322】
すなわち、ドップラーシフトをΔFd、基準発振器2の公称発振周波数との誤差をΔFoscとすると、
Fif+ΔFif=Frf+ΔFd−Flo=Frf+ΔFd−N×(Fosc+ΔFosc)
となる。したがって、同期捕捉部20が検出するIFキャリア周波数は、Fif+ΔFifとなる。ただし、ΔFif=ΔFd−N×ΔFoscである。
【0323】
ここで重要なことは、同期捕捉部20が検出できるのはΔFifだけで、ドップラーシフトΔFd、誤差ΔFoscは、最初の同期捕捉の段階では未知であるということである。
【0324】
拡散符号の1周期長である1ミリ秒を、基準発振器2からの、その公称発振周波数のクロックにより、タイマ45でカウントすると、誤差ΔFoscがあるために、実際は、
1×Fosc/(Fosc+ΔFosc)≒(1−ΔFosc/Fosc)(ミリ秒)
になる。
【0325】
一方、ドップラーシフトΔFdにより、GPS衛星からの受信信号における拡散符号の1周期長は、
1×Frf/(Frf+ΔFd)≒(1−ΔFd/Frf)(ミリ秒)
となる。
【0326】
受信信号における拡散符号の1周期長と、基準発振器2の公称発振周波数でカウントした1ミリ秒との比は、
(1−ΔFd/Frf)/(1−ΔFosc/Fosc)
≒1−ΔFd/Frf+ΔFosc/Fosc
となる。
【0327】
上式の右辺は、さらに変形すると、
1−ΔFif/Frf+(ΔFosc/Fosc)×(Fif/(N×Fosc))
≒1−ΔFif/Frf
となり、同期捕捉部20にとって未知のドップラーシフトΔFdと誤差ΔFoscとを含まない形で、かなり良い近似ができる。
【0328】
この結果により、同期捕捉部20がIFデータをRAM22に取り込んだ時点から同期捕捉処理を行い、同期保持部30に、検出した拡散符号の位相の情報hが渡されるまでの時間がT秒かかるとすると、T秒の間に同期捕捉部20が検出した拡散符号の位相から、−T×ΔFif/Frfだけずれることになる。
【0329】
したがって、同期保持部30は、図30(C)のように、同期捕捉部20から渡された拡散符号の位相の情報hに、補正値Δh=−T×ΔFif/Frfを加えたh+Δhによって、DLL32の拡散符号発生器320で生成する拡散符号のスタートタイミングを合わせることで、同期捕捉処理時間Tに生じた拡散符号の位相のずれを補正することができる。これによって同期保持部30は、ほぼ1チップ程度の範囲内において相関を検出して、極めて短時間で同期を確立できる。
【0330】
以上説明した第3の例においては、必要な情報は、同期捕捉部20が検出したIFキャリア周波数だけであり、ドップラーシフト量ΔFd、基準発振器2の誤差ΔFoscも情報としては必要ない。
【0331】
なお、IFキャリア周波数に依存せず、周波数変換部10における中間周波数Fifへの周波数変換を、Fif=Flo−Frfとなるように局部発振周波数を設定しても、ΔFifの符号を変えるだけで済む。
【0332】
〔同期捕捉部20からの信号強度の情報の同期保持処理における利用〕
同期捕捉部20は、前述したように、GPS信号の拡散符号の位相とIFキャリア周波数のほか、GPS衛星信号の拡散符号と、GPS受信機の拡散符号との相関値の大きさを信号強度として、その信号強度の情報もCPU41に供給するようにしている。この信号強度の情報を用いることにより、同期保持部30での感度および追従性の制御をすることができる。また、この信号強度と、同期保持部30での相関値とを用いることにより、拡散符号の誤相関を判定することができる。以下、これについて説明する。
【0333】
同期保持部30において同期を確立するときに、同期捕捉部20から渡された拡散符号の位相の近くに真ではない相関がある場合がある。特に、信号強度が強いGPS衛星からの信号に対しては、同じGPS衛星からの受信信号でも位相がずれたところに部分相関が発生する。また、異なるGPS衛星からの信号間でも同様の相関がある。このような場合、同期保持部30は誤って、そちらへ同期してしまう場合があり得る。
【0334】
しかし、同期捕捉部20が、正しく最大の相関を検出していて、その拡散符号の位相とIFキャリア周波数に加えて信号強度の情報を同期保持部30に渡すようにすれば、同期保持部30が検出した相関のレベルが、同期捕捉部20から渡された信号強度と同等とみなせないほど差があれば誤相関と判断して、別の位相のサーチに移ることで、偽の相関に誤同期する確率を下げることができる。
【0335】
また、同期保持部30のコスタスループ31のローパスフィルタとループフィルタおよびDLL32のローパスフィルタとループフィルタは、帯域を狭くすればS/Nが良くなるので感度が上がるが、応答は遅くなるために同期確立とその後の同期保持においてGPS受信機位置の急な変化に対する追従性は悪くなる。
【0336】
したがって、受信信号の信号強度が強いときには追従性を重視し、弱いときは感度を上げた方が良い。これらのフィルタの帯域は、同期捕捉部20から渡された信号強度に応じて、同期保持動作の初期段階で設定できる。
【0337】
以上のことを反映した、CPU41における同期保持スタート制御のためのフローチャートを図31に示し、また、チャンネル毎同期保持処理のフローチャートを図32に示す。なお、この図31のフローチャートは、図27のフローチャートの一部を変更したものであって、図27のフローチャートのステップと同一のステップ部分には、同一のステップ番号を付してある。また、同様に、図32のフローチャートは、図28のフローチャートの一部を変更したものであって、図28のフローチャートのステップと同一のステップ部分には、同一のステップ番号を付してある。以下、この図27、図28との変更点を中心に、図31、図32の処理動作の要点を説明する。
【0338】
まず、図31の同期保持スタート処理について説明する。CPU41は、ステップS83において、同期保持部30に対して、受け取ったGPS衛星番号に対して独立のチャンネルを割り当てるようにする設定した後、同期捕捉部20から受け取った信号強度の大きさを調べる(ステップS111)。
【0339】
そして、次のステップS112においては、CPU41は、同期捕捉部20から受け取った拡散符号の位相から、同期保持スタートタイミングを計算するとともに、同期保持部30の、割り当てられたチャンネル内の各部に供給する初期値を、同期捕捉部20から受け取ったIFキャリア周波数に基づいて生成するが、その際に、ステップS111で調べた信号強度に応じて、コスタスループ31およびDLL32のローパスフィルタ204,205および304,305,314,315とループフィルタ207,322の設定値を決定する。
【0340】
すなわち、ステップS111で調べた信号強度が弱いときには、感度を上げた方が良いので、コスタスループ31およびDLL32のローパスフィルタ204,205および304,305,314,315とループフィルタ207,322の設定値は、帯域を狭くするような値とする。また、ステップS111で調べた信号強度が強いときには、追従性を良くした方が良いので、コスタスループ31およびDLL32のローパスフィルタ204,205および304,305,314,315とループフィルタ207,322の設定値は、帯域を広くするような値とする。
【0341】
そして、CPU41は、次のステップS85に進んで、生成した初期値を、コントロールレジスタ33を通じて同期保持部30の、ステップS83で割り当てられたチャンネル内の各部に送ると共に、同期保持部30の、ステップS83で割り当てられたチャンネル内の拡散符号発生器320からの一致拡散符号Pの発生位相を、前記同期保持スタートタイミングとするように制御して、同期保持動作をスタートさせる。このとき、コスタスループ31およびDLL32のループは開のままとする。そして、ステップS82に戻り、次の割り込みの発生を待つ。
【0342】
次に、図32のチャンネル毎同期保持処理について説明する。まず、CPU41は、同期保持部30からの相関値CV(P)と、ステップS111で調べた信号強度(同期捕捉部20での相関検出信号のレベル)とを比較し(ステップS113)、両者が同等のものであるかどうか判別する(ステップS114)。
【0343】
そして、このステップS114での判別の結果、両者に同等と見なせないほどの差があると判別したときには、同期捕捉部20からの相関結果は、誤相関によるものと判断し、ステップS100に進み、ステップS83で割り当てた同期保持部30のチャンネルを空きチャンネルに戻し、このチャンネルにおける同期保持動作を終了する。
【0344】
また、ステップS114での判別の結果、同期保持部30からの相関値CV(P)と、ステップS111で調べた信号強度とが同等であると判別したときには、前述したステップS91以降の同期保持のステップを実行する。
【0345】
以上のようにして、この例においては、同期捕捉部20で検出した信号強度を用いて、誤相関を防止するとともに、信号強度に応じて、感度および追従性を制御することができる。
【0346】
〔同期捕捉・同期保持過程の第2の例〕
同期捕捉・同期保持過程の第1の例では、サーチ可能なすべてのGPS衛星からの受信信号を順次に同期捕捉し、同期捕捉できたら割り込みを発生させて、同期保持をスタートさせ、次のGPS衛星からの信号についての同期捕捉を開始するようにしたが、この第2の例では、制御部40の軌道情報用メモリ46に記憶されている軌道情報を用いることにより、同期が確立、つまり、4個以上のGPS衛星信号についての同期保持ができるまでの時間を短縮するようにする。
【0347】
図33は、この同期捕捉・同期保持過程の第2の例における同期捕捉部20での同期捕捉処理の流れを説明するためのフローチャートである。なお、以下に説明する処理は、GPS受信機に電源が投入されてから、同期捕捉部20で同期捕捉が開始され、同期保持に移行するまでの処理を説明するものである。
【0348】
まず、同期捕捉のための初期設定を行う(ステップS121)。この初期設定においては、同期捕捉のためにサーチするGPS衛星およびそのサーチの順番を、GPS受信機が記憶している有効な軌道情報に基づいて設定する。また、軌道情報から、ドップラーシフトを考慮したキャリア周波数を計算して、サーチするIFキャリア周波数の中心と範囲を設定するようにする。
【0349】
また、電源投入前の過去の動作で得た大体の基準発振器2の誤差が、GPS受信機で判明しているのであれば、GPS受信機位置を電源投入時に記憶されている位置、すなわち、前回電源を切る直前の位置と仮定して、軌道情報用メモリ46の軌道情報から計算したドップラーシフトに合わせて、サーチするIFキャリア周波数の中心と範囲を決めるようにすると、さらに同期保持に至るまでに要する時間を短縮できる。
【0350】
初期設定が終了したら、サーチの順番に従って、同期捕捉する一つのGPS衛星を設定する(ステップS122)。これにより、同期捕捉対象の衛星番号が決まり、また、相関を検出しようとする拡散符号が決まる。
【0351】
次に、同期捕捉部20では、RAM22に、サンプリング回路21でサンプリングしたIFデータの取り込みを開始し、この開始タイミングで、タイマ45をスタートさせる(ステップS123)。
【0352】
次に、DSP23において、前述したデジタルマッチドフィルタを用いた同期捕捉の例のいずれかを用いて、ステップS122で設定したGPS衛星信号の拡散符号について相関検出処理を行う(ステップS124)。
【0353】
そして、GPS衛星信号の拡散符号について相関が検出されたか否か、つまり、GPS衛星信号の同期捕捉ができたか否か判別し(ステップS125)、相関が検出できたときには、CPU41に対して割り込み指示を発生させると共に、同期捕捉の検出結果として、GPS衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報をCPU41に渡す(ステップS128)。
【0354】
また、ステップS125で相関が検出できないと判別したときには、その状態が予め定めた所定時間以上経過したか否か判別し(ステップS126)、所定時間経過していなければ、ステップS125に戻って、相関検出を継続する。
【0355】
ステップS126で、所定時間経過したと判別したときには、ステップS127に進み、サーチすべきGPS衛星のすべてについての同期捕捉サーチが終了したか否か判別し、未だサーチすべきGPS衛星が残っているときには、ステップS122に戻り、同期捕捉する次のGPS衛星を設定して、ステップS122以降の同期捕捉処理を繰り返す。
【0356】
ステップS127で、サーチすべきすべてのGPS衛星についての同期捕捉が終了したと判別したときには、同期捕捉動作を終了して、同期捕捉部20を待機状態(スタンバイ状態)にする。
【0357】
前述もしたように、この実施形態では、CPU41は、同期捕捉部20への電源供給のオンオフ制御、または、この同期捕捉部20に対する逓倍/分周回路3からの動作クロックの供給のオンオフ制御を行うことができるように構成されており、上記の同期捕捉部20のスタンバイ状態では、CPU41により、同期捕捉部20への電源の供給はオフ、または、動作クロックの供給が停止されて、不要な消費電力が抑えられている。
【0358】
以上のようにして、同期捕捉部20は、CPU41が軌道情報から決めたGPS衛星を検出していく順番に従って有意な相関をサーチする。そして、同期捕捉部41が確実な信号強度で最初の衛星を検出できたら、CPU41は、第1の例と同様に、同期保持部30の1つのチャンネルを割当て、検出された衛星番号と拡散符号の位相、IFキャリア周波数を設定して、同期保持動作を開始する。
【0359】
ただし、この第2の例では、同期捕捉部20では、一つのGPS衛星信号の同期捕捉が完了したら、スタンバイ状態になり、他のGPS衛星信号についての同期捕捉は行わない。
【0360】
この第2の例においては、CPU41は、電源投入時において、あるいは同期捕捉部20の動作開始時において、GPS受信機位置が、記憶されている位置であると仮定して、GPS衛星の軌道情報から、GPS受信機が捕捉可能な各GPS衛星について、大体の視線距離とドップラーシフト量を計算して推定しておくようにする。
【0361】
そして、同期捕捉部20で1個のGPS衛星について拡散符号の位相とIFキャリア周波数の検出ができたら、CPU41は、当該同期捕捉されたGPS衛星についての前記推定した視線距離とドップラーシフト量を基準として、その基準に対する、まだ同期捕捉部20では同期捕捉されていない他の各GPS衛星についての視線距離の差およびドップラーシフトの差(ドップラー周波数差)を計算する。視線距離の差は、光速で除算することで拡散符号の位相差に変換しておく。
【0362】
そして、上記のようにして計算した前記他の各衛星の拡散符号の位相差およびドップラー周波数差のそれぞれに、同期捕捉部20が検出した衛星の拡散符号の位相およびIFキャリア周波数をそれぞれ加えた値を、前記他の各衛星についての拡散符号の位相およびIFキャリア周波数として計算する。
【0363】
そして、同期捕捉部20で捕捉したGPS衛星について、同期保持部30のチャンネルを割り当てると共に、前記拡散符号の位相およびIFキャリア周波数を計算した前記他の各衛星についても、同期保持部30のチャンネルを割り当て、同期捕捉した結果および、前記計算した結果を初期値として各チャンネルにおいて同期保持動作を開始する。
【0364】
次に、この例の場合の同期保持スタートの処理のフローチャートを、図34に示す。
【0365】
この図34の同期保持処理スタート前に、GPS受信機への電源投入時などにおいて、CPU41は、GPS受信機が、現在、記憶されている位置であると仮定して、GPS衛星の軌道情報から、GPS受信機が捕捉可能な各GPS衛星について、大体の視線距離とドップラーシフト量を計算して推定しておく。
【0366】
そして、同期保持スタートに当たっては、CPU41は、同期保持部30のコスタスループ31およびDLL32のNCO208,323、ローパスフィルタ204,205,304,305,314,315、ループフィルタ207,322へ定数の初期設定を行う(ステップS131)。なお、このとき、コスタスループ31およびDLL32は、いずれも初期状態はループ開とされる。
【0367】
次に、CPU41は、同期捕捉部20からの割り込み指示を監視し(ステップS132)、割り込み指示を検出したときには、同期捕捉部20から、GPS衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報を受け取ると共に、同期保持部30に対して、受け取ったGPS衛星番号に対して独立のチャンネルを割り当てるようにする設定する(ステップS133)。
【0368】
そして、CPU41は、同期捕捉部20から受け取った拡散符号の位相から、同期保持スタートタイミングを計算するとともに、同期保持部30の、割り当てられたチャンネル内の各部に供給する初期値を、同期捕捉部20から受け取ったIFキャリア周波数に基づいて生成する(ステップS134)。
【0369】
そして、CPU41は、生成した初期値を、コントロールレジスタ33を通じて同期保持部30の、ステップS133で割り当てられたチャンネル内の各部に送ると共に、同期保持部30の拡散符号発生器320からの一致拡散符号Pの発生位相を、前記同期保持スタートタイミングとするように制御して、同期保持動作をスタートさせる(ステップS135)。なお、このとき、コスタスループ31およびDLL32のループは開のままとする。
【0370】
次に、CPU41は、当該同期捕捉されたGPS衛星についての前記推定した視線距離とドップラーシフト量を基準として、その基準に対する、まだ同期捕捉部20では同期捕捉されていない他の各GPS衛星についての視線距離の差およびドップラーシフトの差(ドップラー周波数差)を計算する。視線距離の差は、光速で除算することで拡散符号の位相差に変換しておく(ステップS136)。
【0371】
次に、CPU41は、ステップS136で計算した前記他の各衛星の拡散符号の位相差およびドップラー周波数差のそれぞれに、同期捕捉部20が検出した衛星の拡散符号の位相およびIFキャリア周波数をそれぞれ加えた値を、前記他の各衛星についての拡散符号の位相およびIFキャリア周波数とする計算を行う(ステップS137)。
【0372】
その後、CPU41は、前記他の各衛星について、同期保持部30のチャンネルを独立に割り当てる(ステップS138)。そして、CPU41は、ステップS137で計算した前記他の各衛星についての拡散符号の位相およびIFキャリア周波数に基づいて、それぞれの同期保持スタートタイミングを計算するとともに、同期保持部30の、割り当てられた各チャンネル内の各部に供給する初期値を生成する(ステップS139)。
【0373】
そして、CPU41は、生成した初期値を、コントロールレジスタ33を通じて同期保持部30の、ステップS138で割り当てられたそれぞれのチャンネル内の各部に送ると共に、同期保持部30の、前記各チャンネルの拡散符号発生器320からの一致拡散符号Pの発生位相を、前記各チャンネル毎に生成した同期保持スタートタイミングとするように制御して、同期保持動作をスタートさせる(ステップS140)。なお、このとき、各チャンネルでは、コスタスループ31およびDLL32のループは開のままとする。
【0374】
以上のようにしてスタートした各チャンネルの同期保持処理は、前述した図28のフローチャートと同様にして行われる。
【0375】
以上説明した同期捕捉・同期保持過程の第2の例によれば、同期捕捉部20で同期捕捉が開始されてから、同期保持部30で4個以上のGPS衛星信号の同期保持ができる同期確立までの時間を短縮することができる。
【0376】
この第2の例において、仮定したGPS受信機の位置は実際の位置と違うので、拡散符号の位相およびIFキャリア周波数とも、実際とずれているが、同期保持部30の各チャンネルは、初期値を中心にサーチすることで、短時間のうちに相関を検出し、同期を確立できる可能性が高い。
【0377】
例えば、GPS受信機に記憶されている位置から3km離れたところでGPS受信機の電源をONにした場合、仮に視線距離にして3kmの差が生じたとしても、その視線距離を光速で割った時間は、10μs=約10チップ相当のサーチ範囲内で済む。
【0378】
そして、この第2の例においては、同期保持部30の複数チャンネルが、複数の衛星に対して並列に処理を行うので、位置計算に必要な4個以上の衛星との同期を確立して位置を表示するまでの時間をかなり短縮できる。
【0379】
なお、図33のフローチャートの処理においては、同期捕捉部20は、1個のGPS衛星信号を同期捕捉して相関検出した時点で処理を終わっているが、1個のGPS衛星信号を同期捕捉を完了した後も、引き続き次の衛星の同期捕捉による相関検出に移行し、次の衛星を同期捕捉して相関検出したら、同期保持部30に検出結果を転送し、同期保持部30は、同期捕捉部20が検出した衛星の同期がまだ確立していない場合には、1個目のGPS衛星と同様に、独立の1つのチャンネルを割当て、検出された衛星番号、拡散符号の位相、IFキャリア周波数を設定して同期保持動作を開始するようにしてもよい。
【0380】
また、軌道情報からの各衛星の視線距離とドップラーシフト量の計算は、電源投入時のみではなく、CPU41が、同期捕捉部20が同期捕捉により相関検出するより前の段階で、軌道情報から予め計算しておき、同期捕捉部20が同期捕捉により相関検出後は、前述と同様に、同期捕捉されたGPS衛星と各衛星の拡散符号の位相差とドップラーシフト差のみを計算するようにしてもよい。
【0381】
なお、この同期捕捉・同期保持過程の第2の例において、同期保持のスタートタイミングの決定方法としては、前述した同期捕捉・同期保持過程の第1の例において説明した第1〜第3の例を用いることができることは言うまでもない。
【0382】
〔同期捕捉・同期保持過程の第3の例〕
この同期捕捉・同期保持過程の第3の例は、上述した第2の例におけるCPU41が推定した他の衛星との拡散符号の位相差とドップラーシフトの差を、同期捕捉・同期保持過程の第1の例における同期捕捉部20での2個目以降のGPS衛星信号の同期捕捉の検出に利用したものである。
【0383】
図35は、この同期捕捉・同期保持過程の第3の例における同期捕捉部20での同期捕捉処理の流れを説明するためのフローチャートである。
【0384】
まず、同期捕捉の処理のスタート前に、GPS受信機への電源投入時などにおいて、CPU41は、GPS受信機が、現在、記憶されている位置であると仮定して、GPS衛星の軌道情報から、GPS受信機が捕捉可能な各GPS衛星について、大体の視線距離とドップラーシフト量を計算して推定しておく(ステップS151)。
【0385】
次に、CPU41は、同期捕捉のための初期設定を行う(ステップS152)。この初期設定においては、同期捕捉のためにサーチするGPS衛星およびそのサーチの順番を、GPS受信機が記憶している有効な軌道情報に基づいて設定する。また、1個目のGPS衛星について、軌道情報から、ドップラーシフトを考慮したIFキャリア周波数を計算して、サーチするIFキャリア周波数の中心と範囲を設定するようにする。
【0386】
初期設定が終了したら、サーチの順番に従って、同期捕捉する一つのGPS衛星を設定する(ステップS153)。これにより、同期捕捉対象の衛星番号が決まり、また、相関を検出しようとする拡散符号が決まる。
【0387】
次に、同期捕捉部20のDSP23は、RAM22に、サンプリング回路21でサンプリングしたIFデータの取り込み開始を指示し、この開始タイミングで、CPU41に対してタイマをスタートさせるように指示する(ステップS154)。ここで、このタイマとしては、制御部40のタイマ45を用いるようにする。
【0388】
次に、DSP23において、前述したデジタルマッチドフィルタを用いた同期捕捉の例のいずれかを用いて、ステップS153で設定したGPS衛星信号の拡散符号について相関検出処理を行う(ステップS155)。
【0389】
そして、DSP23は、GPS衛星信号の拡散符号について相関が検出されたか否か、つまり、GPS衛星信号の同期捕捉ができたか否か判別し(ステップS156)、相関が検出できたときには、CPU41に対して割り込み指示を発生させると共に、同期捕捉の検出結果として、GPS衛星番号、拡散符号の位相、IFキャリア周波数、信号強度の情報をCPU41に渡す(ステップS157)。
【0390】
次に、CPU41は、当該同期捕捉されたGPS衛星についてのステップS151で推定した視線距離とドップラーシフト量を基準として、その基準に対する、次の順番のGPS衛星についての視線距離の差およびドップラーシフトの差(ドップラー周波数差)を計算する。視線距離の差は、光速で除算することで拡散符号の位相差に変換する。
【0391】
そして、CPU41は、計算した次の順番の衛星の拡散符号の位相差およびドップラー周波数差のそれぞれに、ステップS156で同期捕捉部20が検出した衛星の拡散符号の位相およびIFキャリア周波数のそれぞれを加えた値を、前記次の順番の衛星についての拡散符号の位相およびIFキャリア周波数とする計算し、その計算結果をDSP23に渡す(ステップS158)。
【0392】
DSP23は、CPU41からの次の順番の衛星についての拡散符号の位相およびIFキャリア周波数を受けて、次の順番の衛星についての同期捕捉における拡散符号の位相検出の範囲およびIFキャリア周波数のサーチ範囲を設定するようにする(ステップS159)。
【0393】
すなわち、2個目以降のGPS衛星信号についての同期捕捉の検出は、IFキャリア周波数検出については、1個前のGPS衛星信号の同期捕捉で検出したIFキャリア周波数に、CPU41から受け取ったドップラーシフトの差を加えた値とその近辺、例えば±200Hz以内とし、かつ、拡散符号の位相検出に関しては、1個前のGPS衛星信号の同期捕捉で検出した拡散符号の位相に、CPU41から受け取った拡散符号の位相差を足した部分の近辺、例えば±50チップの範囲内とする。これにより、次のGPS衛星について有意な相関サーチすることができるようにする。
【0394】
そして、サーチすべきGPS衛星のすべてについての同期捕捉サーチが終了したか否か判別し(ステップS160)、未だサーチすべきGPS衛星が残っているときには、ステップS153に戻り、同期捕捉する次のGPS衛星を設定し、サーチ範囲を前記ステップS159で設定された範囲で、以上の同期捕捉処理を繰り返す。
【0395】
また、ステップS160で、サーチすべきすべてのGPS衛星についての同期捕捉が終了したと判別したときには、同期捕捉動作を終了して、同期捕捉部20を待機状態(スタンバイ状態)にする。
【0396】
また、ステップS156で相関が検出できないと判別したときには、その状態が予め定めた所定時間以上経過したか否か判別し(ステップS161)、所定時間経過していなければ、ステップS156に戻って、相関検出を継続する。
【0397】
ステップS161で、所定時間経過したと判別したときには、ステップS160に進み、サーチすべきGPS衛星のすべてについての同期捕捉サーチが終了したか否か判別し、未だサーチすべきGPS衛星が残っているときには、ステップS153に戻り、同期捕捉する次のGPS衛星を設定し、以上の同期捕捉処理を繰り返す。このときには、例えば、初期設定で設定したサーチ範囲において、サーチを行うようにする。
【0398】
また、ステップS160で、サーチすべきすべてのGPS衛星についての同期捕捉が終了したと判別したときには、同期捕捉動作を終了して、同期捕捉部20を待機状態(スタンバイ状態)にする。
【0399】
このスタンバイ状態では、前述したように、CPU41により、同期捕捉部20への電源の供給はオフ、または、動作クロックの供給が停止されて、不要な消費電力が抑えられている。
【0400】
以上のようにして、この第3の例においては、2個目以降の同期捕捉処理の際には、IFキャリア周波数と拡散符号の位相のサーチ範囲がかなり限定され、1個目の衛星の検出に要した処理時間より大幅に短縮できる。
【0401】
また、1個目の衛星では、符号長1,023の位相すべてをサーチしなければならなかったが、2個目以降は、拡散符号の位相の範囲がかなり限定されることで、偽の相関を排除できる確率が高くなり、したがって、2個目以降の衛星は信号レベルが1個目より低くても検出できる可能性が高くなる。
【0402】
この第3の例の場合の同期保持部30に対する制御は、第1の例の場合と同様にして行える。
【0403】
また、同期捕捉部20と同期保持部30は独立に動作できるので、2個目以降の衛星についての同期捕捉部20での処理を、この第3の例で行い、また、同期保持部30についての同期処理を前述した第2の例として、同期捕捉部20と同期保持部30の処理を並行して行い、処理を高速化することも可能である。
【0404】
なお、この同期捕捉・同期保持過程の第3の例において、同期保持のスタートタイミングの決定方法としては、前述した同期捕捉・同期保持過程の第1の例において説明した第1〜第3の例を用いることができることは言うまでもない。
【0405】
[同期保持が外れたときの処理]
同期保持部30の各チャンネルは、GPS衛星からの信号が所定の信号強度で受信できている限り、同期を保持し続けることができるが、GPS受信機の受信状態は時々刻々変化する。
【0406】
そして、GPS衛星からの受信信号の信号強度が弱くなったときには、前述したように、IFキャリアの同期が不完全であるにもかかわらず、GPS衛星信号の拡散符号とGPS受信機の拡散符号との同期は保持されているという状態がしばしば生じる。
【0407】
同期保持部30で同期保持中のGPS衛星信号に関して、コスタスループ31において、拡散符号ロック判定部211からの拡散符号ロック判定出力と、IFキャリアロック判定部213のIFキャリアロック判定出力とから、拡散符号の同期ロックは保持されているが、IFキャリアの同期が失われたと判定された場合、CPU41は、当該IFキャリア同期が失われる直前のNCO208の周波数情報(ロック状態におけるIFキャリア周波数に対応)を認識して、その認識したIFキャリア周波数に、NCO208の出力信号の周波数を保持すれば、しばらくの間は、DLL32において、拡散符号の同期保持は可能である。
【0408】
しかし、GPS受信機に対するGPS衛星の相対運動によるドップラーシフトによって、GPS衛星からの受信信号のIFキャリア周波数は変化するため、コスタスループ31によるIFキャリアの同期が失われたままでは拡散符号の同期もいずれ失われることになる。
【0409】
そこで、この実施形態では、拡散符号の同期が確保されている状態で、IFキャリアの同期が失われたGPS衛星信号については、CPU41は、スイッチ回路212をオフにして、コスタスループ31のループを開にすると共に、IFキャリア周波数を予測し、NCO208に、その出力周波数が予測したIFキャリア周波数になるような周波数情報を設定する。
【0410】
この場合に、IFキャリアは、上述したように順次変化してゆくが、CPU41は、IFキャリア周波数の予測値も順次更新するようにする。これにより、IFキャリアの同期が失われた状態であっても、より長時間に渡る拡散符号の同期保持を可能としている。
【0411】
そして、IFキャリアの同期が取れた状態に復帰したときには、CPU41は、スイッチ回路212をオンにして、コスタスループ31のループを閉に状態に戻すようにする。
【0412】
ここで、IFキャリア周波数は、次のようにして、CPU41が予測演算する。
【0413】
[IFキャリア周波数の予測演算の第1の例]
IFキャリア周波数fIFは、衛星からの受信信号のキャリア周波数をfRF、局部発信周波数をfLOとすると
fIF=fRF−fLO
と表される。
【0414】
また、実際の受信信号のキャリア周波数f´RFは、GPS受信機に対するGPS衛星の相対運動によるドップラーシフト分Δfを含むため、
f´RF=f´RF+Δf
となる。
【0415】
また、実際の局部発振回路15からの局部発信周波数f´LOも誤差δを含むため、
f´LO=fLO+δ
となる。
【0416】
よって、実際のIFキャリア周波数f´IFは、
となる。
【0417】
上記式(10)において、キャリア周波数fRFは、1575.42MHzと定められており、fLOは、GPS受信機固有のパラメータであるため、いずれも既知である。
【0418】
局部発信回路15からの局部発振周波数の誤差δは、予め調べて既知としておくこともできるが、4個以上のGPS衛星からの受信信号を利用してGPS受信機の速度を求める際の4番目の未知数であるため、4個以上のGPS衛星からの受信信号によりGPS受信機速度を導出すれば得られる。
【0419】
Δfは、ドップラー効果によるキャリア周波数の変移量であり、真空中の光速をc、受信機に対する衛星の視線速度をνとすると、図41の式(10)に示すように表される。そして、この図41の式(10)において、視線速度νは、図41の式(11)に示すように表される。
【0420】
図41の式(11)において、文字上に矢印が付加されたXsおよびVsは、それぞれGPS衛星の位置および速度を表すベクトルであり、また、文字上に矢印が付加されたXoおよびVoは、それぞれGPS受信機の位置および速度を表すベクトルである。
【0421】
同期保持部30において、IFキャリアの同期が失われたチャンネル以外のチャンネルにより、4個以上のGPS衛星からの受信信号の拡散符号およびIFキャリアの同期が確立されているのであれば、それら4個以上のGPS衛星からの受信信号の拡散符号およびIFキャリアの同期が確立されてチャンネルの情報を用いることにより、上記のGPS受信機の位置ベクトルおよび速度ベクトル、GPS衛星の位置ベクトルおよび速度ベクトル、また、局部発振回路15からの局部発振周波数の誤差δは求められ、既知することができる。したがって、図41の式(11)により、視線速度νは、直ちに求まる。そして、視線速度νが求まれば、前述した図41の式(9)〜(10)により、IFキャリア周波数f´IFを予測値として求めることができる。
【0422】
[IFキャリア周波数の予測演算の第2の例]
IFキャリアの同期が失われても、拡散符号の同期が確保されていれば、当該チャンネルのGPS衛星信号の拡散符号の位相は既知となる。この拡散符号の位相と、軌道情報用メモリ46に記憶されている軌道情報のうちのエフェメリス情報とを用いることにより、GPS衛星の位置ベクトルと、速度ベクトルとは、精度良く求めることができる。
【0423】
GPS衛星の位置ベクトルは、GPS受信機の位置を導出する際にエフェメリスと拡散符号の位相を用いることにより求まる。また、GPS衛星の速度ベクトルは、GPS受信機の速度を導出する際にエフェメリスと拡散符号の位相を用いることにより求まる。ただし、IFキャリアが不完全な状況では、そのGPS衛星からの受信信号の同期保持チャンネルの情報は、GPS受信機の速度の導出に利用できないので、IFキャリア同期が取れている他の4個以上のGPS衛星についての同期保持チャンネルの情報を用いるようにする。
【0424】
エフェメリス情報は、従来の技術の欄でも説明したように、その基準時刻の前後2時間程度しか精度が保証されていないが、その期間内であれば、高い精度で衛星位置ベクトルと衛星速度ベクトルを求めることが可能となる。
【0425】
第2の例は、このように、既知である拡散符号の位相と、エフェメリス情報を用いて、GPS衛星の位置ベクトルと、速度ベクトルとを求める。そして、求めたGPS衛星の位置ベクトルおよび速度ベクトルと、他の必要な既知の情報、すなわち、GPS受信機の位置ベクトルおよび速度ベクトル、局部発振回路15からの局部発振周波数の誤差δとを元にして、前述の図41(9)〜(11)にしたがった計算をして、IFキャリア周波数の予測値を求める。
【0426】
この第2の例によれば、IFキャリア周波数の予測値の精度向上を期待することができる。
【0427】
[IFキャリア周波数の予測演算の第3の例]
IFキャリア同期が失われた同期保持チャンネルにおけるGPS衛星からの受信信号の拡散符号の位相が未知の場合であっても、その時点における現在時刻を知ることができれば、その現在時刻とエフェメリス情報とを用いることにより、当該GPS衛星の位置ベクトルおよび速度ベクトルを概算することが可能になる。
【0428】
例えば文献[James Bao-Yen Tsui, “Fundamentals of global positioning system receivers: a software Approach”, John Wiley & Sons, Inc., 2000.]などにも記載されているように、ドップラー効果による周波数変位量Δfの単位時間当たりの平均変化量は、0.54Hz/秒であり、衛星位置ベクトルおよび衛星速度ベクトルを求めるのに利用した時刻が、拡散符号の位相より求めた信号発信時刻に対して、仮に1秒ずれていたとしても、最終的に得られるIFキャリアの周波数予測値に対する影響は無視できる。
【0429】
現在時刻の情報を得る方法としては、GPS受信機の制御部40に設けられる時計回路44から得る方法と、GPS受信機位置を導出する際に求められる時刻情報から得る方法とがある。
【0430】
この第3の例によれば、IFキャリアの同期が不完全な状況において、信号の受信状況の変化などで拡散符号の同期が一時的に失われてしまったとしても、すなわち、拡散符号の位相情報が得られなくなったとしても、IFキャリア周波数を予測することが可能となり、信号の受信状況が回復した際の、拡散符号の同期再捕捉までの時間短縮に寄与する。
【0431】
〔同期保持外れ時の処理の第1の例〕
以上のことを考慮した同期保持外れ時の、CPU41の制御処理のフローチャートを図36に示す。この図36のフローチャートは、同期保持部30の1チャンネル分のものである。
【0432】
すなわち、まず、CPU41は、同期保持部30のコスタスループ31における拡散符号ロック判定部211およびIFキャリアロック判定部の出力を監視して、同期保持ロックの状態をチェックする(ステップS171)。
【0433】
このステップS171での同期保持ロック状態のチェックの結果、拡散符号の同期およびIFキャリアの同期が、共にロック状態であると判別されたときには、同期保持動作を継続し(ステップS172)、ステップS171に戻って、同期保持ロックの監視を続ける。
【0434】
ステップS171で、拡散符号の同期は維持されているが、IFキャリアの同期保持ロックが外れたと判別したときには、CPU41は、コスタスループ31のスイッチ回路212をオフにして、コスタスループ31をループ開の状態にして、フィードバック制御を停止させる(ステップS173)。
【0435】
そして、CPU41は、前述したIFキャリア予測演算の第1の例あるいは第2の例により、IFキャリア周波数の予測値を計算し(ステップ174)、求めたIFキャリア周波数の予測値にNCO208の出力周波数がなるように、NCO208を制御する(ステップS175)。
【0436】
次に、CPU41は、IFキャリアロック判定部213の出力により、IFキャリア同期が取れる状態になったか否か判別する(ステップS176)。そして、CPU41は、このステップS176で、IFキャリア同期が取れる状態になったと判別したときには、スイッチ回路212をオンにして、コスタスループ31のループを閉じ、フィードバック制御を再開する(ステップS177)。そして、ステップS171に戻り、同期状態を監視するようにする。
【0437】
ステップS176で、IFキャリア同期が取れる状態には復帰してはいないと判別したときには、CPU41は、拡散符号ロック判定部211の出力をチェックして、拡散符号の同期が外れていないかどうか判別する(ステップS178)。このステップS178で、拡散符号の同期が外れていないと判別したときには、ステップS174に戻って、前述した第1の例または第2の例を用いて、IFキャリア周波数の予測値を演算し、求めたIFキャリア予測値にNCO208の出力周波数がなるように、NCO208の制御値を変更する(ステップS175)。そして、このステップS175以降の処理ステップを繰り返す。
【0438】
また、CPU41は、ステップS178で拡散符号の同期も外れたと判別したときには、現在時刻と、軌道情報のエフェメリス情報とを用いてIFキャリア周波数を予測演算する前述の第3の例を行う(ステップS179)。そして、この予測したIFキャリア周波数と、同期外れを起こしたチャンネルに対応するGPS衛星番号と、拡散符号の位相の情報とを、同期捕捉サーチの初期値として、同期捕捉部20に渡して、前述したような同期捕捉処理を再開するように指示する(ステップS181)。
【0439】
ここで、CPU41は、ステップS179からステップS181に移行した場合には、ステップS178で拡散符号の位相が外れたと検出したときのDLL32のNCO323の周波数情報から、その拡散符号の同期が外れる直前の拡散符号の位相を検出し、当該同期外れが生じる直前の拡散符号の位相を同期捕捉部20に、拡散符号についての同期捕捉サーチの初期値として渡すようにする。
【0440】
このCPU41からの指示により、同期捕捉部20が同期捕捉処理を行う。すなわち、同期捕捉部20は、拡散符号の発生位相に基づき、RAM22にIFデータを、拡散符号の先頭位相に一致するタイミングで取り込み、同期捕捉処理を前述したようにして行う。そして、同期捕捉により有意な相関が検出されたか否か判別し、検出できたと判別したときには、同期捕捉部20のDSP23は、CPU41に、割り込み指示を渡すと共に、同期捕捉の検出結果である拡散符号の位相、IFキャリア周波数、信号強度、衛星番号を渡す。
【0441】
そこで、CPU41は、同期捕捉部20からの割り込みを監視し(ステップS182)、割り込みを検知したら、同期捕捉部20から、衛星番号、拡散符号の位相、IFキャリア周波数および信号強度を受け取って、前述したような同期保持スタート処理を開始する。
【0442】
ここで、同期捕捉部20では、一回のRAM22へのデータの取り込みで同期捕捉ができなかったとき、すなわち、同期捕捉による有意な相関結果が得られなかったときには、例えば1秒経過を待って、RAM22に前述と同様に、拡散符号の先頭位相に一致するタイミングで、IFデータを取り込み、同期捕捉動作を行う。そして、同期捕捉による有意な相関が検出されるまで、1秒経過待ち、RAM22へのデータの再取り込みの処理を繰り返す。
【0443】
この動作を繰り返すことで、信号強度が回復した時点で、同期捕捉部20は、GPS衛星の拡散符号の位相とIFキャリア周波数を検出でき、結果を同期保持部30に渡して、再び同期保持状態に戻すことができる。
【0444】
また、CPU41は、ステップS171で、拡散符号の同期と、IFキャリアの同期とが、共に失われていると判別したときには、この例の場合には、再同期捕捉が必要であると認識して、同期外れを生じた衛星番号と、同期外れを生じた時の拡散符号発生器320からの拡散符号の発生位相、IFキャリア周波数を、同期保持部30の当該チャンネルからの周波数情報などにより認識し(ステップS180)、同期捕捉部20に、それら衛星番号、拡散符号の発生位相(先頭位相)、IFキャリア周波数の情報を渡す(ステップS181)。
【0445】
このステップS181以降は、前述したステップS182以降を繰り返し、CPU41は、再同期捕捉を待って、再同期保持動作に移行するようにする。
【0446】
〔同期保持外れ時の処理の第2の例〕
移動している場合において、建物でGPS衛星からの電波が遮られたりすると、IFキャリアだけでなく、拡散符号の同期の保持もできなくなる。しかし、GPS衛星からの電波の遮断が極めて短時間の場合であれば、例えば、信号強度が所定のレベル以下になったところで、図24および図25のスイッチ回路212およびスイッチ回路324をオフにして、コスタスループ31およびDLL32のループ制御を停止すれば、拡散符号の位相とIFキャリア周波数は、短時間のうちには大きくずれないので、信号強度が回復した時点で、コスタスループ31およびDLL32の制御を再開すれば同期は瞬時に回復し、したがって、同期保持部30だけの制御で済む。この第2の例は、この点を考慮する。
【0447】
また、GPS衛星からの電波の遮断時間が長いと、信号強度が回復した時点での拡散符号の位相とIFキャリア周波数は大きく変わっているので、同期が保持されていた最後の拡散符号の位相とキャリア周波数に、時間経過の分の補正を加え、補正した拡散符号の位相およびIFキャリア周波数の近辺で同期保持動作を開始させるようにする方法が一般的である。
【0448】
これ対して、この第2の例では、拡散符号の位相に関しては、同期が保持されていた最後の拡散符号の位相に、時間経過の分の補正を加えたものを同期捕捉の初期値に使用するが、IFキャリア周波数に関しては、前述した、現在時刻とエフェメリスの情報とを用いて予測した予測値を、同期捕捉の初期値に使用するようにする。
【0449】
以上を考慮した同期保持外れ時の処理の第2の例のフローチャートを図37に示す。この図37のフローチャートも、同期保持部30の1チャンネル分のものであることは第1の例と同様であり、第1の例と同じ処理内容のステップには、同じステップ番号を示してある。
【0450】
この第2の例において、ステップS171で、拡散符号の同期およびIFキャリアの同期が、共にロック状態であると判別されたとき、また、拡散符号の同期は維持されているが、IFキャリアの同期保持ロックが外れたと判別したときの処理は、第1の例と同じであるので、その説明は、省略する。ただし、図37のフローチャートにおいては、ステップS178からステップS195に進む点が図36の場合とは異なっているが、その処理内容には、違いはない。
【0451】
この第2の例において、ステップS171で、拡散符号の同期およびIFキャリアの同期が、共に失われたと判別したときには、CPU41は、スイッチ回路212およびスイッチ回路324をオフにして、コスタスループ31およびDLL32のループを開にする(ステップS191)。
【0452】
前述したように、同期外れが短時間のものであれば、ループを開にすると相関値CV(P)は、有意なレベルにまで立ち上がる。そこで、CPU41は、次のステップS192において、相関値CV(P)が有意なレベルにまで立ち上がったか否か判別する。
【0453】
ステップS192で、相関値CV(P)が有意なレベルにまで立ち上がったと判別したときには、CPU41は、スイッチ回路212およびスイッチ回路324をオンにして、コスタスループ31およびDLL32のループを閉にする(ステップS193)。そして、拡散符号およびIFキャリアが共に同期保持ロック状態になったかどうか判別する(ステップS194)。ステップS194で、同期保持ロックが検出されれば、ステップS172に進み、同期保持状態を継続する。
【0454】
ステップS194で、同期保持ロックを検出できなかったとき、また、ステップS192で、相関値CV(P)が有意なレベルにまで復帰しなかったときには、CPU41は、再捕捉の必要があるとして、現在時刻と、軌道情報のエフェメリス情報とを用いてIFキャリア周波数を予測演算する前述の第3の例を行う(ステップS195)。
【0455】
そして、この予測したIFキャリア周波数と、同期外れを起こしたチャンネルに対応するGPS衛星番号と、拡散符号の位相の情報とを、同期捕捉サーチの初期値として、同期捕捉部20に渡して、前述したような同期捕捉処理を再開するように指示する(ステップS196)。
【0456】
このCPU41からの指示により、同期捕捉部20が同期捕捉処理を行う。すなわち、同期捕捉部20は、渡された拡散符号の位相に基づき、RAM22にIFデータを、拡散符号の先頭位相に一致するタイミングで取り込み、同期捕捉処理を前述したようにして行う。そして、同期捕捉により有意な相関が検出されたか否か判別し、検出できたと判別したときには、同期捕捉部20のDSP23は、CPU41に、割り込み指示を渡すと共に、同期捕捉の検出結果である拡散符号の位相、IFキャリア周波数、信号強度、衛星番号を渡す。
【0457】
そこで、CPU41は、同期捕捉部20からの割り込みを監視し(ステップS197)、割り込みを検知したら、同期捕捉部20から、衛星番号、拡散符号の位相、IFキャリア周波数および信号強度を受け取って、前述したような同期保持スタート処理を開始する。
【0458】
なお、同期捕捉部20では、一回のRAM22へのデータの取り込みでは、同期捕捉ができなかったときには、同期捕捉による有意な相関結果が得られなかったときには、例えば1秒経過を待って、RAM22に前述と同様に、拡散符号の先頭位相に一致するタイミングで、IFデータを取り込み、同期捕捉動作を行う。そして、同期捕捉による有意な相関が検出されるまで、1秒経過待ち、RAM22へのデータの再取り込みの処理を繰り返す。
【0459】
この動作を繰り返すことで、信号強度が回復した時点で、同期捕捉部20は、GPS衛星の拡散符号の位相とIFキャリア周波数を検出でき、結果を同期保持部30に渡して、再び同期保持状態に戻すことができる。
【0460】
このようにすることで、再捕捉したい拡散符号の位相は、RAM22が記憶するIFデータにおいては、ほぼRAM22にIFデータを取り込んだ時点の辺り、図4で言えば、ピークの位置が横軸の左端または右端付近に存在することになる。
【0461】
そして、再捕捉する衛星のIFキャリア周波数が上述のように設定される結果、同期捕捉部20は、その衛星について、IFキャリア周波数の近辺、例えば±51Hz、だけの相関検出処理を行うようにすることができる。その際、拡散符号の位相は、狭い範囲、例えば、±10チップの範囲内だけサーチすることで同期捕捉を取ることが可能になる。
【0462】
この方法により、信号強度が回復していれば、同期捕捉部20は、衛星の拡散符号の位相とIFキャリアの周波数を極めて短時間で検出できる。拡散符号の位相の範囲がかなり限定されることで、偽の相関を排除できる確率が高くなり、したがって、信号レベルが低くても検出できる可能性が高い。
【0463】
以上のようにして、この実施形態における同期保持外れ時処理によれば、拡散符号の同期が保持されている状態において、IFキャリアの同期が外れたときには、コスタスループ31を開にして、GPS衛星信号に追従させるフィードバックループは切断し、その代わりに、CPU41で、あたかもGPS衛星信号に追従させるようにするためのIFキャリア周波数を予測値を演算して、その演算した予測値によりコスタスループ31のNCO208の周波数を制御するようにしたことにより、IFキャリアの同期が失われた状態であっても、より長時間に渡る拡散符号の同期保持を確保することができる。
【0464】
[その他の実施形態]
以上の実施形態の説明では、同期捕捉部20からの検出結果は、CPU41を介して同期保持部30に渡すようにしたが、前述したように、同期捕捉部20から、同期保持部30に直接的に渡すように構成することができるものである。
【0465】
また、上述の例では、同期捕捉部20には、デジタルマッチドフィルタを用いた例としたが、この発明では、粗い精度の同期捕捉を同期捕捉部が行い、その結果を同期保持部に渡して、同期確立までを高速化することが目的であるので、同期捕捉部20は、デジタルマッチドフィルタを用いた例に限られるものではない。
【0466】
また、デジタルマッチドフィルタには、上述の例のようなFFTを用いた例のみではなく、前述したように、トランスバーサルフィルタを用いた構成とすることができるものである。
【0467】
また、以上の実施形態では、同期捕捉と、同期保持とを機能的に分離した場合であるが、この発明は、そのような場合に限られるものではなく、IFキャリアの同期が外れたことを検出することができる場合のすべてに適用可能である。例えば、同期捕捉と同期保持を一体的に行う従来のスライディング相関、コスタスループ+DLLによる同期捕捉・同期保持方式の場合においても、適用可能である。
【0468】
【発明の効果】
以上説明したように、この発明によれば、GPS衛星からの受信信号が弱まり、IFキャリアの同期保持が困難な状況においても、拡散符号の同期保持を継続することが可能になる。その結果、当該衛星からの受信信号を、GPS受信機の位置の導出に利用することが可能となり、GPS受信機の利用可能領域の拡大に寄与する。
【0469】
また、GPS衛星からの受信信号が弱まり、IFキャリアの同期保持が困難な状況においても、IFキャリア周波数を予測できるため、信号が再び強くなった場合に、IFキャリアの同期捕捉までの時間が短縮される。
【図面の簡単な説明】
【図1】この発明によるGPS受信機の構成例を示すブロック図である。
【図2】図1の一部である同期捕捉部の構成例を示すブロック図である。
【図3】図2の同期捕捉部の一部を構成するDSPの内部構成例を示すブロック図である。
【図4】デジタルマッチドフィルタを用いた拡散符号の相関結果の例を示す図である。
【図5】受信信号のキャリアと拡散符号との同期を取る方法の一般的な例を説明するための図である。
【図6】この発明の実施の形態において、同期捕捉方法の第1の例を説明するための図である。
【図7】同期捕捉方法の第1の例の動作を考慮した要部の構成を示す図である。
【図8】同期捕捉方法の第2の例を説明するための図である。
【図9】同期捕捉方法の第2の例の動作を説明するためのフローチャートの一部を示す図である。
【図10】同期捕捉方法の第2の例の動作を説明するためのフローチャートの一部を示す図である。
【図11】同期捕捉方法の第2の例の動作を考慮した要部の構成を示す図である。
【図12】同期捕捉方法の第3の例を説明するための図である。
【図13】同期捕捉方法の第3の例を説明するための図である。
【図14】同期捕捉方法の第3の例の動作を考慮した要部の構成を示す図である。
【図15】同期捕捉方法の第4の例を説明するための図である。
【図16】同期捕捉方法の第4の例を説明するための図である。
【図17】同期捕捉方法の第4の例を説明するための図である。
【図18】同期捕捉方法の第4の例を説明するための図である。
【図19】同期捕捉方法の第4の例を説明するための図である。
【図20】同期捕捉方法の第4の例を説明するための図である。
【図21】同期捕捉方法の第4の例の動作を説明するためのフローチャートの一部を示す図である。
【図22】同期捕捉方法の第4の例の動作を説明するためのフローチャートの一部を示す図である。
【図23】図1の一部である同期保持部の構成例を示すブロック図である。
【図24】図23の同期保持部の一部を構成するコスタスループの構成例を示すブロック図である。
【図25】図23の同期保持部の一部を構成するDLLの構成例を示すブロック図である。
【図26】同期捕捉処理の一例の流れを説明するためのフローチャートである。
【図27】同期保持スタート処理の流れを説明するためのフローチャートである。
【図28】チャンネル毎同期保持処理の流れを説明するためのフローチャートである。
【図29】実施形態における同期保持のスタートタイミングの決定方法の第1の例を説明するための図である。
【図30】実施形態における同期保持のスタートタイミングの決定方法の第3の例を説明するための図である。
【図31】実施形態における同期保持スタート処理の例を説明するためのフローチャートである。
【図32】実施形態におけるチャンネル毎同期保持処理の例を説明するためのフローチャートである。
【図33】同期捕捉処理の例を説明するためのフローチャートである。
【図34】実施形態における同期保持スタート処理の例を説明するためのフローチャートである。
【図35】同期捕捉処理の例を説明するためのフローチャートである。
【図36】同期外れ時処理の一例を説明するためのフローチャートを示す図である。
【図37】同期外れ時処理の他の一例を説明するためのフローチャートを示す図である。
【図38】GPS衛星からの信号の構成を示す図である。
【図39】従来のキャリアおよび拡散符号の同期処理を説明するための図である。
【図40】この発明の実施の形態の説明に用いる図である。
【図41】この発明の実施の形態の説明に用いる図である。
【符号の説明】
10…周波数変換部、20…同期捕捉部、21…サンプリング回路、22…RAM、23…DSP、24…DSP用メモリ、30…同期捕捉部、31…コスタスループ、32…DLL、33…コントロールレジスタ、40…制御部、41…CPU、44…時計回路、45…タイマ、46…軌道情報用メモリ、208、323…NCO、320…拡散符号発生器、212、324…スイッチ回路、211…拡散符号ロック判定部、213…IFキャリアロック判定部
Claims (26)
- GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、前記GPS衛星からの受信信号の拡散符号と受信側の拡散符号との同期および前記GPS衛星からの受信信号の中間周波キャリアの同期を取るようにするGPS衛星信号の受信方法において、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
GPS受信機において既知の情報を用いて、前記中間周波キャリアの周波数を予測し、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程を備える
ことを特徴とするGPS衛星信号の受信方法。 - 請求項1に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記GPS衛星の位置と、前記GPS衛星の速度と、前記GPS衛星からの受信信号の受信周波数を前記中間周波数に周波数変換するための局部発振周波数の誤差である
ことを特徴とするGPS衛星信号の受信方法。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、前記GPS衛星からの受信信号の拡散符号と受信側の拡散符号との同期および前記GPS衛星からの受信信号の中間周波キャリアの同期を取るようにするGPS衛星信号の受信方法において、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
GPS受信機において既知の情報と、GPS受信機に記憶しているGPS衛星についての軌道情報から計算した情報とを用いて、前記中間周波キャリアの周波数を予測し、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程を備える
ことを特徴とするGPS衛星信号の受信方法。 - 請求項3に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記GPS衛星からの受信信号の拡散符号の位相であり、
前記同期引き込み工程では、前記GPS受信機が記憶するGPS衛星の軌道情報と、前記既知である拡散符号の位相の情報とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS衛星信号の受信方法。 - 請求項3に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、現在時刻であり、
前記同期引き込み工程では、前記GPS受信機が記憶する軌道情報と、前記現在時刻とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS衛星信号の受信方法。 - 請求項1または請求項3に記載のGPS衛星信号の受信方法において、
前記拡散符号の同期および前記中間周波キャリアの同期は、コスタスループと、DLL(Delay Locked Loop)とを用いるものであり、
前記同期引き込み工程では、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記コスタスループのループを開にしてから、前記予測された中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行い、前記中間周波キャリアの同期が取れた後に、前記コスタスループのループを閉じる
ことを特徴とするGPS衛星信号の受信方法。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、受信側の拡散符号と前記受信信号の拡散符号との相関を検出することにより、前記受信信号の拡散符号の位相を検出して前記受信信号の拡散符号の同期捕捉を行うと共に、前記受信信号の拡散符号の同期捕捉が取れたときにおける中間周波キャリア周波数の検出を行う同期捕捉工程と、
前記同期捕捉工程で前記同期捕捉され、前記中間周波キャリア周波数が検出された前記GPS衛星毎に、異なるチャンネルが設定され、前記同期捕捉工程で検出された前記受信信号の拡散符号の位相および前記中間周波キャリア周波数に基づいて初期値が設定されて、前記GPS衛星からの受信信号について前記拡散符号および前記中間周波キャリアの同期保持を開始すると共に、前記GPS衛星からの受信信号の復調を行う同期保持工程と、
前記同期保持工程で同期保持される拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、GPS受信機において、既知の情報を用いて、前記中間周波キャリアの周波数を予測し、当該予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程と、
を備えることを特徴とするGPS衛星信号の受信方法。 - 請求項7に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記GPS衛星の位置と、前記GPS衛星の速度と、前記GPS衛星からの受信信号の受信周波数を前記中間周波数に周波数変換するための局部発振周波数の誤差である
ことを特徴とするGPS衛星信号の受信方法。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換し、この中間周波数において、受信側の拡散符号と前記受信信号の拡散符号との相関を検出することにより、前記受信信号の拡散符号の位相を検出して前記受信信号の拡散符号の同期捕捉を行うと共に、前記受信信号の拡散符号の同期捕捉が取れたときにおける中間周波キャリア周波数の検出を行う同期捕捉工程と、
前記同期捕捉工程で前記同期捕捉され、前記中間周波キャリア周波数が検出された前記GPS衛星毎に、異なるチャンネルが設定され、前記同期捕捉工程で検出された前記受信信号の拡散符号の位相および前記中間周波キャリア周波数に基づいて初期値が設定されて、前記GPS衛星からの受信信号について前記拡散符号および前記中間周波キャリアの同期保持を開始すると共に、前記GPS衛星からの受信信号の復調を行う同期保持工程と、
前記同期保持工程で同期保持される拡散符号および中間周波キャリアの同期状態を判別する同期状態判別工程と、
前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、GPS受信機において、既知の情報と、GPS受信機に記憶しているGPS衛星についての軌道情報から計算した情報を用いて、前記中間周波キャリアの周波数を予測し、当該予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み工程と、
を備えることを特徴とするGPS衛星信号の受信方法。 - 請求項9に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記GPS衛星からの受信信号の拡散符号の位相であり、
前記同期引き込み工程では、前記GPS受信機が記憶するGPS衛星の軌道情報と、前記既知である拡散符号の位相の情報とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS衛星信号の受信方法。 - 請求項9に記載のGPS衛星信号の受信方法において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、現在時刻であり、
前記同期引き込み工程では、前記GPS受信機が記憶する軌道情報と、前記現在時刻とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS衛星信号の受信方法。 - 請求項7または請求項9に記載のGPS衛星信号の受信方法において、
前記同期保持工程の同期保持には、コスタスループと、DLL(Delay Locked Loop)とを用いるものであり、
前記同期引き込み工程では、前記同期状態判別工程で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記コスタスループのループを開にしてから、前記コスタスループの可変周波数発振器の出力周波数を、前記予測した中間周波キャリア周波数に設定して前記中間周波キャリアの同期の検索を行い、前記中間周波キャリアの同期が取れた後に、前記コスタスループのループを閉じる
ことを特徴とするGPS衛星信号の受信方法。 - 請求項7または請求項9に記載のGPS衛星信号の受信方法において、
前記同期状態判別工程で、前記拡散符号の同期と、前記中間周波キャリアの同期との両方が外れていると判別したときには、前記同期捕捉工程を再度実行することを特徴とするGPS衛星信号の受信方法。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換する周波数変換部と、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別手段と、
既知の情報から、中間周波キャリア周波数を予測し、前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別されたときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み手段と、
を備えるGPS受信機。 - 請求項14に記載のGPS受信機において、
前記既知の情報は、自機の位置と、自機の速度と、前記GPS衛星の位置と、前記GPS衛星の速度と、前記GPS衛星からの受信信号の受信周波数を前記中間周波数に周波数変換するための局部発振周波数の誤差である
ことを特徴とするGPS受信機。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換する周波数変換部と、
拡散符号および中間周波キャリアの同期状態を判別する同期状態判別手段と、
GPS衛星の軌道情報を記憶する記憶部と、
既知の情報と、前記記憶部に記憶されている前記軌道情報から計算した情報とを用いて、中間周波キャリア周波数を予測し、前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別されたときに、前記予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み手段と、
を備えるGPS受信機。 - 請求項16に記載のGPS受信機において、
前記既知の情報は、自機の位置と、自機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記GPS衛星からの受信信号の拡散符号の位相であり、
前記同期引き込み手段では、前記記憶部に記憶されている前記軌道情報と、前記既知である拡散符号の位相の情報とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS受信機。 - 請求項16に記載のGPS受信機において、
前記既知の情報は、自機の位置と、自機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、現在時刻であり、
前記同期引き込み手段では、前記GPS受信機が記憶する軌道情報と、前記現在時刻とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS受信機。 - 請求項14または請求項16に記載のGPS受信機において、
前記拡散符号の同期および前記中間周波キャリアの同期は取るための手段は、コスタスループと、DLL(Delay Locked Loop)とを備え、
前記同期引き込み手段は、前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別されたときに、前記コスタスループのループを開にしてから、前記予測された中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行い、前記中間周波キャリアの同期が取れた後に、前記コスタスループのループを閉じる
ことを特徴とするGPS受信機。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換する周波数変換部と、
前記中間周波数において、受信側の拡散符号と前記受信信号の拡散符号との相関を検出することにより、前記受信信号の拡散符号の位相を検出して前記受信信号の拡散符号の同期捕捉を行うと共に、前記受信信号の拡散符号の同期捕捉が取れたときにおける前記受信信号の中間周波キャリア周波数の検出を行う同期捕捉部と、
複数チャンネル分を備え、前記同期捕捉部で前記同期捕捉され、前記中間周波キャリア周波数が検出された前記GPS衛星毎に、異なるチャンネルが設定され、前記同期捕捉部で検出された前記受信信号の拡散符号の位相および前記中間周波キャリア周波数に基づいて初期値が設定されて、前記GPS衛星からの信号について前記拡散符号および前記中間周波キャリア周波数の同期保持を開始すると共に、前記GPS衛星からの信号の復調を行う同期保持部と、
前記同期保持部における前記拡散符号および中間周波キャリアの同期状態を判別する同期状態判別手段と、
前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、GPS受信機において、既知の情報を用いて、前記中間周波キャリアの周波数を予測し、当該予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み手段と、
を備えることを特徴とするGPS受信機。 - 請求項20に記載のGPS受信機において、
前記既知の情報は、GPS受信機の位置と、前記GPS受信機の速度と、前記GPS衛星の位置と、前記GPS衛星の速度と、前記GPS衛星からの受信信号の受信周波数を前記中間周波数に周波数変換するための局部発振周波数の誤差である
ことを特徴とするGPS受信機。 - GPS衛星からの受信信号の受信周波数を中間周波数に変換する周波数変換部と、
GPS衛星の軌道情報を記憶する記憶部と、
前記中間周波数において、受信側の拡散符号と前記受信信号の拡散符号との相関を検出することにより、前記受信信号の拡散符号の位相を検出して前記受信信号の拡散符号の同期捕捉を行うと共に、前記受信信号の拡散符号の同期捕捉が取れたときにおける前記受信信号の中間周波キャリア周波数の検出を行う同期捕捉部と、
複数チャンネル分を備え、前記同期捕捉部で前記同期捕捉され、前記中間周波キャリア周波数が検出された前記GPS衛星毎に、異なるチャンネルが設定され、前記同期捕捉部で検出された前記受信信号の拡散符号の位相および前記中間周波キャリア周波数に基づいて初期値が設定されて、前記GPS衛星からの信号について前記拡散符号および前記中間周波キャリア周波数の同期保持を開始すると共に、前記GPS衛星からの信号の復調を行う同期保持部と、
前記同期保持部における前記拡散符号および中間周波キャリアの同期状態を判別する同期状態判別手段と、
前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、GPS受信機において既知の情報と、前記記憶部に記憶されている軌道情報とを用いて、前記中間周波キャリアの周波数を予測し、当該予測した中間周波キャリア周波数により、前記中間周波キャリアの同期の引き込みを行うようにする同期引き込み手段と、
を備えることを特徴とするGPS受信機。 - 請求項22に記載のGPS受信機において、
前記既知の情報は、自機の位置と、自機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記GPS衛星からの受信信号の拡散符号の位相であり、
前記同期引き込み手段では、前記記憶部に記憶されている前記軌道情報と、前記既知である拡散符号の位相の情報とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS受信機。 - 請求項22に記載のGPS受信機において、
前記既知の情報は、自機の位置と、自機の速度と、前記中間周波数に周波数変換するための局部発振周波数の誤差と、現在時刻であり、
前記同期引き込み手段では、前記GPS受信機が記憶する軌道情報と、前記現在時刻とから、前記GPS衛星の位置と、前記GPS衛星の速度とを計算し、前記既知のGPS受信機の位置、前記GPS受信機の速度および前記中間周波数に周波数変換するための局部発振周波数の誤差と、前記計算された前記GPS衛星の位置および前記GPS衛星の速度とから、前記中間周波キャリア周波数を予測する
ことを特徴とするGPS受信機。 - 請求項20または請求項22に記載のGPS受信機において、
前記同期保持部は、コスタスループと、DLL(Delay Locked Loop)とを備え、
前記同期引き込み手段は、前記同期状態判別手段で、前記拡散符号の同期は確保されているが、前記中間周波キャリアの同期が外れていると判別したときに、前記コスタスループのループを開にしてから、前記コスタスループの可変周波数発振器の出力周波数を、前記予測した中間周波キャリア周波数に設定して前記中間周波キャリアの同期の検索を行い、前記中間周波キャリアの同期が取れた後に、前記コスタスループのループを閉じる
ことを特徴とするGPS受信機。 - 請求項20または請求項22に記載のGPS受信機において、
前記同期状態判別手段で、前記拡散符号の同期と、前記中間周波キャリアの同期との両方が外れていると判別したときには、前記同期捕捉部により、再度、前記同期捕捉動作を実行する
ことを特徴とするGPS受信機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002052731A JP3858983B2 (ja) | 2002-02-28 | 2002-02-28 | Gps衛星信号の受信方法およびgps受信機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002052731A JP3858983B2 (ja) | 2002-02-28 | 2002-02-28 | Gps衛星信号の受信方法およびgps受信機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003258680A JP2003258680A (ja) | 2003-09-12 |
JP3858983B2 true JP3858983B2 (ja) | 2006-12-20 |
Family
ID=28664347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002052731A Expired - Fee Related JP3858983B2 (ja) | 2002-02-28 | 2002-02-28 | Gps衛星信号の受信方法およびgps受信機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3858983B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200371249A1 (en) * | 2017-02-13 | 2020-11-26 | Samsung Electronics Co., Ltd. | Method and apparatus for improving gnss accuracy via path identification |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4548158B2 (ja) * | 2005-03-10 | 2010-09-22 | 日本電気株式会社 | 受信方法及び受信装置 |
JP5412707B2 (ja) * | 2006-10-17 | 2014-02-12 | カシオ計算機株式会社 | Gps受信装置およびgps受信方法 |
JP6205188B2 (ja) | 2013-06-26 | 2017-09-27 | セイコークロック株式会社 | 電波時計 |
CN112910499B (zh) * | 2021-02-10 | 2022-04-01 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 扩频信号精确捕获系统 |
CN112953621B (zh) * | 2021-03-10 | 2023-03-07 | 广州海格通信集团股份有限公司 | 卫星导航通信方法、装置、北斗用户机和存储介质 |
CN114859114B (zh) * | 2022-07-06 | 2022-09-09 | 成都戎星科技有限公司 | 基于低轨监视卫星监视低轨空间目标的信号目标关联方法 |
CN116257730B (zh) * | 2023-05-08 | 2023-08-01 | 成都戎星科技有限公司 | 一种基于fpga实现频偏跟踪的方法 |
-
2002
- 2002-02-28 JP JP2002052731A patent/JP3858983B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200371249A1 (en) * | 2017-02-13 | 2020-11-26 | Samsung Electronics Co., Ltd. | Method and apparatus for improving gnss accuracy via path identification |
US11947018B2 (en) * | 2017-02-13 | 2024-04-02 | Samsung Electronics Co., Ltd. | Method and apparatus for improving GNSS accuracy via path identification |
Also Published As
Publication number | Publication date |
---|---|
JP2003258680A (ja) | 2003-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3726897B2 (ja) | Gps受信機およびgps衛星信号の受信方法 | |
US7053827B2 (en) | GPS reception method and GPS receiver | |
EP3092757B1 (en) | Method and receiver for receiving a composite signal | |
JP2003255040A (ja) | Gps受信機および受信方法 | |
JP4177585B2 (ja) | Gps受信機および受信方法 | |
US7053825B2 (en) | Communication device | |
JP3858983B2 (ja) | Gps衛星信号の受信方法およびgps受信機 | |
JP4359782B2 (ja) | 測位用衛星信号の受信機および測位用衛星信号の受信方法 | |
US20030108126A1 (en) | Method and apparatus for acquiring a ranging signal of a positioning system | |
JP3912511B2 (ja) | 測位用衛星信号の受信機および測位用衛星信号の受信方法 | |
JP3760993B2 (ja) | Gps測位方法およびgps測位装置 | |
JP3575220B2 (ja) | スペクトル拡散信号捕捉装置 | |
JP2003232844A (ja) | 受信装置 | |
JP3738766B2 (ja) | 通信装置 | |
JP3804618B2 (ja) | 通信装置 | |
JP2005331369A (ja) | Gps受信装置およびgps受信装置における同期保持方法 | |
JP2003532903A (ja) | 衛星ベース測位システムの微弱信号動作の受信機 | |
JP2005331368A (ja) | Gps受信装置およびgps受信装置における同期保持方法 | |
JP2006234847A (ja) | Gps受信機およびgps受信機の測位方法 | |
JPH10257023A (ja) | 擬似雑音符号発生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040727 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060111 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060207 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060912 |
|
LAPS | Cancellation because of no payment of annual fees |