JP3906913B2 - スペクトラム拡散信号復調方法および装置 - Google Patents
スペクトラム拡散信号復調方法および装置 Download PDFInfo
- Publication number
- JP3906913B2 JP3906913B2 JP2002181546A JP2002181546A JP3906913B2 JP 3906913 B2 JP3906913 B2 JP 3906913B2 JP 2002181546 A JP2002181546 A JP 2002181546A JP 2002181546 A JP2002181546 A JP 2002181546A JP 3906913 B2 JP3906913 B2 JP 3906913B2
- Authority
- JP
- Japan
- Prior art keywords
- fast fourier
- received signal
- fourier transform
- memory
- signal
- 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 - Lifetime
Links
Images
Description
【発明の属する技術分野】
この発明は、例えばGPS(Global Positioning System)衛星信号などのスペクトラム拡散信号の復調方法および装置に関する。
【0002】
【従来の技術】
人工衛星(GPS衛星)を利用して移動体の位置を測定するGPSシステムにおいて、GSP受信機は、4個以上のGPS衛星からの信号を受信し、その受信信号から受信機の位置を計算し、ユーザに知らせることが基本機能である。
【0003】
GPS受信機は、GPS衛星からの信号を復調してGPS衛星の軌道データを獲得し、GPS衛星の軌道および時間情報と受信信号の遅延時間から、自受信機の3次元位置を連立方程式により導き出す。受信信号を得るGPS衛星が4個必要となるのは、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系列の符号が、図21(A)に示すように、1023チップを1周期(したがって、1周期=1ミリ秒)として、繰り返すものとなっている。
【0006】
このC/AコードのPN系列の符号は、GPS衛星ごとに異なっているが、どのGPS衛星が、どのPN系列の符号を用いているかは、予めGPS受信機で検知できるようにされている。また、後述するような航法メッセージによって、GPS受信機では、どのGPS衛星からの信号を、その地点およびその時点で受信できるかが判るようになっている。したがって、GPS受信機では、例えば3次元測位であれば、その地点およびその時点で取得できる4個以上のGPS衛星からの電波を受信して、スペクトラム逆拡散し、測位演算を行って、自分の位置を求めるようにする。
【0007】
そして、図21(B)に示すように、衛星信号データの1ビットは、PN系列の符号の20周期分、つまり、20ミリ秒単位として伝送される。つまり、データ伝送速度は、50bpsである。PN系列の符号の1周期分の1023チップは、ビットが“1”のときと、“0”のときとでは、反転したものとなる。
【0008】
図21(C)に示すように、GPSでは、30ビット(600ミリ秒)で1ワードが形成される。そして、図21(D)に示すように、10ワードで、1サブフレーム(6秒)が形成される。図21(E)に示すように、1サブフレームの先頭のワードには、データが更新されたときであっても常に規定のビットパターンとされるプリアンブルが挿入され、このプリアンブルの後にデータが伝送されてくる。
【0009】
さらに、5サブフレームで、1フレーム(30秒)が形成される。そして、航法メッセージは、この1フレームのデータ単位で伝送されてくる。この1フレームのデータのうちの始めの3個のサブフレームは、エフェメリス情報と呼ばれる衛星固有の情報である。このエフェメリス情報は、1メインフレーム単位(30秒)で繰り返し送られるものであり、その情報を送信してくる衛星の軌道を求めるためのパラメータと、衛星からの信号の送出時刻とを含む。
【0010】
GPS衛星のすべては、原子時計を備え、共通の時刻情報を用いており、GPS衛星からの信号の送出時刻は、原子時計に同期したものとされている。上記の2つの時刻データを受信することにより絶対時刻を求める。6秒以下の値は、衛星の電波に同期ロックする過程で、そのGPS受信機が備える基準発振器の精度で、衛星の時刻に同期するようにする。
【0011】
また、各GPS衛星のPN系列の符号は、原子時計に同期したものとして生成される。また、このエフェメリス情報から、GPS受信機における測位計算の際に用いられる衛星の位置および衛星の速度が求められる。
【0012】
エフェメリス情報は、地上の管制局からの制御により比較的頻繁に更新される精度の高い暦である。GPS受信機では、このエフェメリス情報をメモリに保持しておくことにより、当該エフェメリス情報を測位計算に使用することができる。しかし、その精度上、使用可能な寿命は、通常、2時間程度とされており、GPS受信機では、エフェメリス情報をメモリに記憶した時点からの時間経過を監視して、その寿命を超えたときには、メモリのエフェメリス情報を更新して書き換えるようにしている。
【0013】
1フレームのデータの残りの2サブフレームの航法メッセージは、アルマナック情報と呼ばれる全ての衛星から共通に送信される情報である。このアルマナック情報は、全情報を取得するために25フレーム分必要となるもので、各GPS衛星のおおよその位置情報や、どのGPS衛星が使用可能かを示す情報などからなる。
【0014】
このアルマナック情報も、地上の制御局からの制御により数日ごとに更新される。このアルマナック情報も、これをGPS受信機のメモリに保持して使用することができるが、その寿命は、数か月とされており、通常は、数ヶ月毎に、メモリのアルマナック情報は、GPS衛星から取得した新しい情報に更新される。GPS受信機のメモリに、このアルマナック情報を蓄えておけば、電源投入後、どのチャンネルにどの衛星を割り当てればよいかを計算することができる。
【0015】
GPS受信機で、GPS衛星信号を受信して、上述のデータを得るためには、まず、キャリアを除去した後、GPS受信機に用意される受信しようとするGPS衛星で用いられているC/Aコードと同じPN系列の符号(以下、PN系列の符号をPN符号という)を用いて、そのGPS衛星からの信号について、C/Aコードの位相同期を取ることによりGPS衛星からの信号を捕捉し、スペクトラム逆拡散を行う。C/Aコードとの位相同期が取れて、逆拡散が行われると、ビットが検出されて、GPS衛星からの信号から時刻情報等を含む航法メッセージを取得することが可能になる。
【0016】
GPS衛星からの信号の捕捉は、C/Aコードの位相同期検索により行われるが、この位相同期検索においては、GPS受信機のPN符号とGPS衛星からの受信信号のPN符号との相関を検出し、例えば、その相関検出結果の相関値が予め定めた値よりも大きい時に、両者が同期していると判定する。そして、同期が取れていないと判別されたときには、何らかの同期手法を用いて、GPS受信機のPN符号の位相を制御して、受信信号のPN符号と同期させるようにしている。
【0017】
ところで、上述したように、GPS衛星信号は、データを拡散符号で拡散した信号によりキャリアをBPSK変調した信号であるので、当該GPS衛星信号をGPS受信機が受信するには、拡散符号のみでなく、キャリアおよびデータの同期をとる必要があるが、拡散符号とキャリアの同期は独立に行うことはできない。
【0018】
そして、GPS受信機では、受信信号は、そのキャリア周波数を数MHz以内の中間周波数に変換して、その中間周波数信号で、上述の同期検出処理するのが普通である。この中間周波数信号におけるキャリアには、主にGPS衛星の移動速度に応じたドップラーシフトによる周波数誤差と、受信信号を中間周波数信号に変換する際に、GPS受信機内部で発生させる局部発振器の周波数誤差分が含まれる。
【0019】
したがって、これらの周波数誤差要因により、中間周波数信号におけるキャリア周波数は未知であり、その周波数サーチが必要となる。また、拡散符号の1周期内での同期点(同期位相)は、GPS受信機とGPS衛星との位置関係に依存するのでこれも未知であるから、上述のように、何らかの同期手法が必要となる。
【0020】
従来のGPS受信機では、キャリアについての周波数サーチと、スライディング相関器+DLL(Delay Locked Loop)+コスタスループによる同期手法を用いている。これについて、以下に説明を加える。
【0021】
GPS受信機のPN符号の発生器を駆動するクロックは、GPS受信機に用意される基準周波数発振器を分周したものが、一般に用いられている。この基準周波数発振器としては、高精度の水晶発振器が用いられており、この基準周波数発振器の出力から、GPS衛星からの受信信号を中間周波数信号に変換するのに用いる局部発振信号を生成する。
【0022】
図22は、この周波数サーチを説明するための図である。すなわち、GPS受信機のPN符号の発生器を駆動するクロック信号の周波数が、ある周波数f1であるときに、PN符号についての位相同期検索、つまり、PN符号の位相を1チップずつ順次ずらして、それぞれのチップ位相のときのGPS受信信号とPN符号との相関を検出し、相関のピーク値を検出することにより、同期が取れる位相を検出するようにする。
【0023】
前記クロック信号の周波数がf1のときにおいて、1023チップ分の位相検索の全てで同期する位相が存在しなければ、例えば基準周波数発振器に対する分周比を変えて、前記駆動クロック信号の周波数を周波数f2に変更し、同様に1023チップ分の位相検索を行う。これを、図22のように、前記駆動クロック信号の周波数をステップ的に変更して繰り返す。以上の動作が周波数サーチである。
【0024】
そして、この周波数サーチにより、同期可能とされる駆動クロック信号の周波数が検出されると、そのクロック周波数で最終的なPN符号の位相同期が行われる。これにより、水晶周波数発振器の発振周波数ずれがあっても、衛星信号を捕捉することが可能になる。
【0025】
【発明が解決しようとする課題】
しかしながら、同期方法として上述したような従来からの手法を用いたのでは、原理的に高速同期には不向きで、実際の受信機においては、それを補うため、多チャンネル化してパラレルに同期点を探索する必要が生じる。そして、上記のように拡散符号およびキャリアの同期に時間を要すると、GPS受信機の反応が遅くなり、使用上において不便を生ずる。
【0026】
拡散符号の位相同期に関しては、上述のようなスライディング相関の手法を用いることなく、高速フーリエ変換(以下、FFT(Fast Fourier Transform)という)処理を用いたデジタルマッチドフィルタにより、符号同期を高速に行う手法が、DSP(Digital Signal Processor)に代表されるハードウエアの能力の向上によって実現している。
【0027】
しかしながら、このデジタルマッチドフィルタを用いる場合は、受信信号のキャリアとの同期を取ってキャリア成分をキャンセルする必要がある。従来は、このキャリア成分のキャンセルは、例えば無線回線等を通じて他からキャリア周波数に関する情報を得て、その情報に基づいて、可変周波数発振器の発振周波数を制御し、FFTを行う前の時間領域において、受信信号と、当該可変周波数発振器の発振出力とを乗算することで行っている。
【0028】
このため、中間周波数信号への変換のための乗算器のほかに、さらに乗算器が必要になり、受信信号についての同期のための構成が複雑になる問題があった。
【0029】
この発明は、以上の点にかんがみ、GPS衛星信号などのスペクトラム拡散信号についての拡散符号同期捕捉およびキャリア同期捕捉を、比較的簡単な構成で、FFTを利用して高速に行うことができる方法およびその方法を適用した装置を提供することを目的とする。
【0030】
【課題を解決するための手段】
前記課題を解決するため、請求項1の発明によるスペクトラム拡散信号復調方法は、
拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換して第1のメモリに書き込む工程と、
前記第1のメモリに書き込まれた前記受信信号の高速フーリエ変換結果と、第2のメモリに書き込まれている拡散符号の高速フーリエ変換結果とを、それぞれ読み出して乗算することにより、前記受信信号と前記拡散符号の相関を検出する工程であって、前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方については、前記受信信号の搬送波周波数に応じた分だけ読み出しアドレスをシフトして前記第1のメモリまたは前記第2のメモリから読み出して、前記受信信号の搬送波成分を除去するようにする工程と、
前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関点を検出する工程と、
を備えることを特徴とする。
【0032】
また、請求項3の発明のスペクトラム拡散信号復調方法は、
拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換して第1のメモリに書き込む工程と、
前記第1のメモリから読み出された前記受信信号の高速フーリエ変換結果と、第2のメモリから読み出された拡散符号の高速フーリエ変換結果とを乗算する工程と、
前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関検出出力を得る工程と、
前記相関検出出力に基づいて、前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方の前記第1のメモリまたは前記第2のメモリからの読み出しアドレスをシフト制御しながら、前記相関のピークを判別して、前記受信信号と前記拡散符号との相関点を検出する工程と、
を備え、
前記受信信号の高速フーリエ変換および前記拡散符号の高速フーリエ変換は、前記拡散符号のM周期(Mは2以上の2のべき乗)を単位として行う
ことを特徴とする。
【0034】
また、請求項4の発明は、請求項3に記載のスペクトラム拡散信号復調方法において、
前記受信信号のFFTは、その全周波数成分を一括して計算せず、高速フーリエ変換の計算構造として、同じ計算構造となる単位で、L回(Lは2以上の整数)に分けて、前記受信信号の1/Lずつの高速フーリエ変換を行うことを特徴とする。
【0035】
後述するように、例えば、受信信号とキャリア信号との乗算結果をFFTしたものは、受信信号のFFT結果を、離散周波数についてキャリア周波数分だけシフトしたものに等しくなる。
【0036】
このFFTの性質を利用して、請求項1の発明においては、受信信号のFFT結果、または、拡散符号のFFT結果のいずれか一方は、受信信号のキャリア周波数に応じた分だけシフトして、メモリから読み出すようにする。このようにシフトして読み出したものは、キャリア成分を除去したものに等しくなる。
【0037】
したがって、これらのメモリから読み出した受信信号のFFT結果と拡散符号のFFT結果とを乗算し、その乗算結果を逆FFTして、両者の相関を求めと、キャリアの周波数サーチを行うことなく、相関のピーク値が得られ、拡散符号の同期検出ができる。すなわち、請求項1の発明によれば、キャリア除去用の乗算器を用いることなく、拡散符号の同期およびキャリア同期を取ることができる。
【0038】
上記の請求項1の発明は、キャリア周波数が既知である場合に、非常に有効である。例えばドップラーシフト量が正確に見積もられ、かつ、GPS受信機内部の発振周波数および時間情報が正確であれば、キャリア周波数が既知となるので、その既知のキャリア周波数を用いて、メモリの読み出しアドレスのシフトを行うことにより、キャリア同期ができるものである。
【0039】
請求項3の発明も基本的には、請求項1の発明と同様に、FFT結果の読み出しアドレスを制御することにより、キャリアの同期を取るものであるが、この請求項3は、キャリア周波数が未知である場合に有効なものである。
【0040】
すなわち、この請求項3の発明においては、逆FFTの結果の相関検出出力に基づいて、受信信号のFFT結果または拡散符号のFFT結果のいずれか一方の読み出しアドレスのシフト量を変更しながら、受信信号と拡散符号との相関点を検索する。そして、相関検出出力のピーク値を検出することにより、相関点を検出する。この相関検出出力がピークを取るときのシフト位相によりキャリア周波数が検出できる。
【0041】
また、請求項2または請求項3の発明によれば、受信信号のFFTは、拡散符号の1周期分単位で行うのではなく、拡散符号の複数周期単位で行われる。このように、FFTを拡散符号の複数周期単位で行うと、1周期分のFFT結果が複数周期分累積されると共に、統計的にランダムに分布するノイズ成分は減少することにより、相関検出結果のC/Nが向上する。
【0042】
請求項2または請求項3のように拡散符号の複数周期単位でFFTが行われると、メモリとして容量の大きなものが必要となるが、請求項4の発明においては、FFT計算の流れを考慮して、同じ計算構造となる単位で、L回(Lは2以上の整数)に分けて、前記受信信号の1/LずつのFFTを行うことにより、メモリとしては、それぞれの回のFFT計算に必要な容量でよくなる。
【0043】
【発明の実施の形態】
以下、この発明によるスペクトラム拡散信号復調方法の実施の形態を、上述したGPS受信機に適用した場合について、図を参照しながら説明する。
【0044】
[第1の実施の形態]
図1は、スペクトラム拡散信号復調装置の第1の実施の形態としてのGPS受信機の構成例を示すブロック図である。この図1に示すように、アンテナ11にて受信されたGPS衛星からの受信信号(スペクトラム拡散信号)は、高周波増幅回路12を通じて中間周波変換回路13に供給される。また、水晶発振器からなる基準発振器14の出力が局部発振回路15に供給され、これより基準発振器の出力周波数と周波数比が固定された局部発振出力が得られる。
【0045】
そして、この局部発振出力が中間周波変換回路13に供給されて、衛星信号が中間周波数1.023MHzの中間周波信号に低域変換される。この中間周波信号は、増幅回路16で増幅され、バンドパスフィルタ17で帯域制限された後、DSP(Digital Signal Processor)100に供給される。
【0046】
図1の点線で囲んだ部分のブロック図は、DSP100で実行される機能をハードウエア的に示したものである。もっとも、これらのブロックをディスクリートの回路によりハードウエアとして構成することも勿論できる。この図1のDSP100の構成は、デジタルマッチドフィルタの構成を示すものである。
【0047】
DSP100に供給された信号は、まず、A/D変換器101でデジタル信号に変換されて、バッファメモリ102に書き込まれる。このバッファメモリ102に書き込まれた信号は、拡散符号の1周期分(1023チップ分)ずつ、読み出されてFFT処理部103でFFT処理され、そのFFT結果がメモリ104に書き込まれる。メモリ104から読み出された受信信号のFFT結果は、乗算部105に供給される。
【0048】
一方、拡散符号発生部106からは、そのときにDSP100で処理対象となっている衛星からの受信信号に使用されている拡散符号と同じ系列の拡散符号が発生する。この拡散符号発生部106からの1周期分(1023チップ)の拡散符号は、FFT処理部107に供給されてFFT処理され、さらにその複素共役が計算され、その処理結果が拡散符号のFFT結果としてメモリ108に供給される。このメモリ108からは、通常の場合と同様に、FFT結果が低い周波数から順に読み出されて乗算部105に供給される。
【0049】
乗算部105では、メモリ104からの受信信号のFFT結果と、メモリ108からの拡散符号のFFT結果とが乗算され、周波数領域における受信信号と拡散符号との相関の度合いが演算される。そして、その乗算結果は逆FFT処理部109に供給されて、周波数領域の信号が時間領域の信号に戻される。
【0050】
逆FFT処理部109から得られる逆FFT結果は、受信信号と拡散符号との時間領域における相関検出信号となっており、この相関検出信号は、相関点検出部110に供給される。相関点検出部110では、受信信号と拡散符号との同期が取れたかどうかを検出し、同期が取れたと検出した場合には、前記ピーク値の位相を相関点として検知する。
【0051】
この相関検出信号は、拡散符号の1周期分の各チップ位相における相関値を示すものとなっており、受信信号中の拡散符号と、拡散符号発生部106からの拡散符号とが同期している場合には、図2に示すように、1023チップのうちのある一つの位相での相関値が、予め定められるスレッショールド値を超えるようなピーク値を示す相関波形が得られる。このピーク値の立つチップ位相が、相関点の位相となる。
【0052】
一方、受信信号中の拡散符号と、拡散符号発生部106からの拡散符号とが同期していない場合には、図2のようなピーク値が立つ相関波形は得られず、いずれのチップ位相においても、予め定められるスレッショールド値を超えるようなピークは立たない。
【0053】
相関点検出部110は、例えば、予め定めた値を超えるピーク値が、この相関点検出部110に供給される相関検出信号に存在するかどうかにより、受信信号と拡散符号との同期が取れたかどうかを検出し、同期が取れたと検出した場合には、前記ピーク値の位相を相関点として検知する。
【0054】
以上の説明では、受信信号のキャリアについては考慮していないが、実際には、受信信号r(n)は、図23の式(3)に示すようにキャリアを含んでいる。この式(3)において、Aは振幅、d(n)はデータ、foは中間周波信号におけるキャリア角周波数、n(n)はノイズを表している。
【0055】
A/D変換部101でのサンプリング周波数をfs 、サンプリング数をN(したがって、0≦n<N、0≦k<N)とすると、離散フーリエ変換後の離散周波数kと実周波数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では循環性を示す。
【0056】
そして、受信信号r(n)から、データd(n)を得るためには、拡散符号c(n)とキャリアcos2πnf0との同期をとってキャリア成分を除去する必要がある。すなわち、後述する図23の式(2)で、R(k)のみにキャリア成分が含まれている場合には、図2のような相関波形が得られない。
【0057】
この実施の形態では、FFTによる周波数領域での処理のみの簡単な構成により、拡散符号c(n)とキャリアcos2πnf0との同期をとってキャリア成分を除去することができるようにしている。
【0058】
すなわち、FFT処理部103から得られるGPS衛星からの受信信号のFFT結果は、通常は、受信信号の周波数成分の周波数が低いものから順にメモリ104から読み出されて、乗算部105に供給されるが、この実施の形態では、メモリ104からは、読み出しアドレス制御部111からの制御に従って、読み出しアドレスがシフト制御されて、順次、受信信号のFFT結果が読み出される。
【0059】
読み出しアドレス制御部111には、受信信号を得たGPS衛星についてのドップラーシフト量を正確に見積もり、かつ、GPS受信機内部の発振周波数および時間情報を正確に校正することに基づいて検出した受信信号のキャリア周波数の情報が供給される。このキャリア周波数の情報は、GPS受信機内部でのみ作成することもできるが、通常は、外部から取得するようにする。
【0060】
そして、読み出しアドレス制御部111は、この取得したキャリア周波数の情報に基づいて、そのキャリア周波数分だけ、読み出しアドレスをシフトして、メモリ104から受信信号のFFT結果を、順次、読み出し、乗算部105に供給するようにする。
【0061】
このように受信信号r(n)のFFT結果を、メモリ104から、受信信号のキャリア周波数分だけシフトして読み出すことにより、後述するように、キャリア成分を除去した受信信号のFFT結果と等価なFFT結果を得ることができ、そのキャリア成分を除去したFFT結果と、拡散符号の1周期分のFFT結果との乗算結果を逆拡散することにより、確実に図2のように相関点でピークを生じる相関検出出力が得られる。
【0062】
なお、後述もするように、メモリ104からのFFT結果の読み出しアドレスを制御するのではなく、メモリ108からの拡散符号のFFT結果の読み出しアドレスを制御することにより、拡散符号のFFT結果に、受信信号r(n)のキャリア分を加え、乗算部105での乗算によって、実質的によりキャリア成分の除去を行うようにすることもできる。
【0063】
以下に、メモリ104または108からの読み出しアドレスの制御によって、受信信号のキャリアと拡散符号との同期によるキャリア成分の除去について、DSP100でのデジタルマッチドフィルタの処理の動作説明と共に、さらに詳細に説明する。
【0064】
この実施の形態において、DSP100では、デジタルマッチドフィルタの処理が行われるものであるが、このデジタルマッチドフィルタの処理の原理は、図23の式(1)に示すように、時間領域での畳み込みのフーリエ変換が周波数領域では乗算になるという定理に基づくものである。
【0065】
この式(1)において、r(n)は時間領域の受信信号、R(k)はその離散フーリエ変換を表す。また、c(n)は拡散符号発生部からの拡散符号、C(k)はその離散フーリエ変換を表す。nは離散時間、kは離散周波数である。そして、F[]は、フーリエ変換を表している。
【0066】
2つの信号r(n)、c(n)の相関関数を改めてf(n)と定義すると、f(n)の離散フーリエ変換F(k)は、図23の式(2)のような関係になる。したがって、r(n)を図1のA/D変換部101からの信号とし、c(n)を拡散符号発生部106からの拡散符号とすれば、r(n)とc(n)の相関関数f(n)は、通常の定義式によらず、前記式(2)により以下の手順で計算できる。
【0067】
なお、以下の説明において、離散フーリエ変換C(k)の複素共役は、図面においては、C(k)にオーバーバーを付加して示すが、明細書中においては、便宜上、記号「!」を付加した!C(k)と記載することにする。
【0068】
・受信信号r(n)の離散フーリエ変換R(k)を計算する。
【0069】
・拡散符号c(n)の離散フーリエ変換の複素共役!C(k)を計算する。
【0070】
・R(k)、C(k)の複素共役!C(k)より、式(2)のF(k)を計算する。
【0071】
・F(k)の逆離散フーリエ変換により相関関数f(n)を計算する。
【0072】
ところで、前述したように、受信信号r(n)に含まれる拡散符号が、拡散符号発生部106からの拡散符号c(n)と一致していれば、上記手順により計算した相関関数f(n)は、図2のように相関点でピークを生ずる時間波形となる。上述したように、この実施の形態では、離散フーリエ変換および逆フーリエ変換に、FFTおよび逆FFTの高速化アルゴリズムを適用したので、定義に基づいて相関を計算するより、かなり高速に計算を行うことができる。
【0073】
次に、受信信号r(n)に含まれるキャリアと拡散符号との同期について説明する。
【0074】
前述したように、受信信号r(n)は、図23の式(3)に示すようにキャリアを含んでいる。受信信号r(n)から、データd(n)を得るためには、拡散符号c(n)とキャリアcos2πnf0との同期をとって除去する必要がある。すなわち、前述の図23の式(2)で、R(k)のみにキャリアが含まれている場合には、図2のような相関波形が得られない。
【0075】
ドップラーシフト量が正確に見積もられ、かつ、GPS受信機内部の発振周波数および時間情報が正確であれば、受信信号r(n)のキャリア周波数f0が既知となる。その場合には、図3に示すように、FFT処理部103の前段に乗算部121を設け、この乗算部121において受信信号r(n)と信号発生部122からの周波数f0のキャリアとを乗算して周波数変換することにより、FFTを行う前に受信信号r(n)からキャリア成分を除くことができる。
【0076】
その場合には、メモリ104からは、そのキャリア成分が除去された受信信号r(n)のFFT結果が得られ、このFFT結果と、拡散符号c(n)のFFT結果とが乗算部105で乗算されるので、逆FFT処理部109の出力としては、図2のように相関点にピークを生じる時間波形が確実に得られる。
【0077】
なお、図3で括弧内に記載したように、受信信号r(n)からキャリア成分を除去するのではなく、拡散符号c(n)についてのFFT処理部107の前段に乗算部121を設けて、この乗算部121において拡散符号c(n)と信号発生部122からの周波数f0のキャリアとを乗算して周波数変換することにより、拡散符号にキャリア成分を加えるようにしても同様である。
【0078】
すなわち、その場合には、メモリ104から読み出した受信信号のFFT結果に含まれるキャリア成分と、メモリ108から読み出した拡散符号のFFT結果に含まれる、加えられたキャリア成分とが同期しているため、逆FFT処理部109からは、図2のように相関点でピークを生じる相関検出出力が得られる。
【0079】
しかし、以上説明したような図3のように時間領域の信号にキャリア周波数の信号を乗算する方法による場合には、キャリア成分を除くための乗算部が特に必要になり、構成が複雑になると共に、その乗算演算の分だけ、処理速度が遅くなるという不利益がある。
【0080】
ところで、FFTの性質として、上述のような周波数乗算は、図23の式(4)のように表すことができる。この式(4)で、F[]は離散フーリエ変換、φ0 はキャリアとの位相差、k0 はf0 に対応するkであって、f0 =k0 ・fs /Nである。この式(4)より、受信信号r(n)を図3のように周波数変換した信号のFFTは、r(n)のFFTであるR(k)を、キャリア周波数分k0だけシフトした形になる。
【0081】
以上のことから、図3の構成は、図4のような構成に置換可能となる。すなわち、受信信号r(n)や拡散符号c(n)にキャリア周波数を乗算する代わりに、受信信号のFFT結果または拡散符号のFFT結果をメモリ104またはメモリ108からの読み出す際の読み出しアドレスを、キャリア周波数分だけシフトするようにするものである。
【0082】
この場合に、図4で、受信信号r(n)をシフトする場合はダウンコンバージョンで、k0 >0とし、また、拡散符号c(n)をシフトする場合はアップコンバージョンで、k0 <0とする。
【0083】
以上説明したように、式(4)に示したFFTの性質を利用すれば、図3の信号発生器122は不要になり、図4のように、FFT結果のメモリからの読み出しアドレス位相をシフトするだけでよくなり、構成が簡単になると共に、処理の高速化に繋がる。
【0084】
なお、前述の式(4)における位相差φ0 は未知であるため、図4では無視しているが、例えば、図23の式(5)により計算されるF’(k)の逆FFTの演算結果として得られる相関関数f’(n)(0≦n<N)は複素数となり、その実部をfR’(n)、虚部をfI’(n)とすると、相関ピークの振幅|f’(n)|は、図23の式(6)に示すようにして得られ、位相差φ0は、図23の式(7)に示すようにして得られるので、式(4)の右辺のexp(jφ0 )の乗算は省略してよい。なお、位相差φ0 は、式(3)のデータd(n)の符号に対応したπだけ異なる2つの値となる。
【0085】
以上説明したような第1の実施の形態の処理動作を図1のブロック図に反映させた構成図を図5に示す。この図5の各ブロックの出力には、上述したような信号出力r(n)、c(n)および演算結果R(k)、!C(k)、f'(n)が示されている。
【0086】
以上のように、第1の実施の形態の方法によれば、GPS受信機において、FFTを利用してデジタルマッチドフィルタを構成する場合に、図5のように受信信号のFFT結果を、キャリア周波数分だけメモリのアドレスをシフトして、拡散符号と乗算する構成によって、相関点np が、例えば図5に示すような波形で得られ、4個のGPS衛星、つまり4種類の拡散符号c(n)について、相関点np が判れば、GPS受信機位置の計算が可能になる。
【0087】
すなわち、第1の実施の形態によれば、FFTを利用したデジタルマッチドフィルタ処理を行う場合において、受信信号のキャリアと拡散符号との同期を取るために、時間領域で乗算を行うことなく、受信信号のFFT結果と拡散符号のFFT結果同士の周波数領域での乗算の際に、受信信号のFFT結果と拡散符号のFFT結果のうちの一方のFFT結果をシフトするという簡便な方法により、受信信号のキャリア成分を除去することができる。
【0088】
なお、図5の例では、受信信号のFFT結果R(k)の方の、メモリの読み出しアドレスをシフトさせたが、拡散符号のFFT結果!C(k)の方のメモリの読み出しアドレスを、受信信号のFFT結果R(k)の場合とは逆方向にシフト(乗算器でのアップコンバージョンの形になる)しても良い。
【0089】
また、上述の実施の形態の説明においては、拡散符号発生器106とFFT処理部107とを別々に設けるようにしたが、それぞれのGPS衛星に対応する拡散符号をあらかじめFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0090】
[第2の実施の形態]
上述の第1の実施の形態は、GPS衛星からの受信信号のキャリア周波数が既知である場合であったが、この第2の実施の形態は、キャリア周波数が未知である場合である。図6は、第2の実施の形態としてのGPS受信機の構成例を示すブロック図である。この図6において、前述した第1の実施の形態として示した図1のGPS受信機と同一部分には、同一番号を付してある。
【0091】
この第2の実施の形態では、図6に示すように、相関点検出部110の相関検出出力を、読み出しアドレス制御部112に供給する。読み出しアドレス制御部112は、受信信号r(n)のFFT結果のメモリ104からの読み出しアドレスの前記シフト量を、過去のデータから決定した予測アドレスを中心に、相関点検出部110の相関検出出力に基づいて変更制御して、相関点検出部110で図2に示したようなピークが得られるようにする。相関点検出部110で図2に示したようなピークが得られたときには、読み出しアドレス制御部112は、読み出しアドレスのシフト制御を、そのときのシフト量で停止する。
【0092】
この第2の実施の形態におけるDSP100での処理の流れを、図7および図8のフローチャートを参照しながら説明する。なお、この図7および図8のフローチャートは、DSP100でのソフトウエア処理に対応するものである。
【0093】
まず、A/D変換部101にてデジタル信号に変換された受信信号を信号r(n)としてメモリ102に取り込む(ステップS1)。次に、この信号r(n)をFFT処理部103でFFTし、そのFFT結果R(k)をメモリ104に書き込む(ステップS2)。次に、信号を受信したGPS衛星に対応する拡散符号のFFT結果!C(k)をメモリ108にセットする(ステップS3)。
【0094】
次に、受信信号r(n)のFFT結果R(k)のメモリ104からの読み出しアドレスのシフト量の初期値k0’を、過去のデータから決定する(ステップS4)。そして、決定した初期値k0’を、メモリ104からのFFT結果の読み出しアドレスのシフト量k'として設定すると共に、シフト制御の変更回数mを初期値m=0にセットする(ステップS5)。
【0095】
次に、メモリ104から、受信信号r(n)のFFT結果R(k)を、読み出しアドレスを、k'だけシフトして読み出す(ステップS6)。そして、読み出したFFT結果R(k−k')と、拡散符号のFFT結果とを乗算して相関関数F’(k)を求める(ステップS7)。
【0096】
次に、この相関関数F’(k)の逆FFTを行って時間領域の関数f’(n)を求める(ステップS8)。そして、この関数f’(n)について、ピーク値f’(np)を求め(ステップS9)、そのピーク値f’(np)が予め設定されているスレッショールド値fthより大きいかどうか判別する(ステップS11)。
【0097】
ステップS11での判別の結果、ピーク値f’(np)が、予め設定されているスレッショールド値fth以下であるときには、相関点が検出できなかったとして、シフト制御の変更回数mが予め設定された最大値mmaxよりも小さいかどうか判別する(ステップS16)。そして、シフト制御の変更回数mが予め設定された最大値mmaxよりも小さいと判別したときには、シフト制御の変更回数mを1だけインクリメント(m=m+1)すると共に、新たなシフト量k'を、
k'=k'+(−1)m×m
として設定し(ステップS17)、その後、ステップS6に戻る。そして、上述したステップS6以降の処理を繰り返す。
【0098】
また、ステップS16で、シフト制御の変更回数mが、予め設定された最大値mmax以上であると判別したときには、すべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS14)、すべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、サーチ動作を終了する(ステップS18)。
【0099】
また、ステップS14で、拡散符号同期サーチが終了していない衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS15)。そして、ステップS3に戻り、上述したステップS3以降の処理を実行する。
【0100】
また、ステップS11において、ピーク値f’(np)が、予め設定されているスレッショールド値fthより大きいと判別したときには、そのピーク値f’(np)を取る離散時間(拡散符号の位相)npを相関点として検出すると共に、前記FFT結果R(k)のメモリ104からの読み出しアドレスのシフト量の初期値k0’を、そのときのシフト量k'に設定し直す(ステップS12)。
【0101】
そして、検出した相関点npが、4個目であるか否か判別し(ステップS13)、4個目であると判別したときには、受信機位置計算処理および同期保持処理へ移行する。なお、ステップS12で検出した相関点npが得られるときの読み出しアドレスシフト量k'から、当該受信中のGPS衛星についてのドップラーシフト量およびGPS受信機の発振周波数の誤差を推定することができる。すなわち、受信信号のキャリア周波数を検知することができる。
【0102】
ステップS13で、検出した相関点npが、4個目未満であると判別したときには、すべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS14)、すべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、サーチ動作を終了する(ステップS18)。
【0103】
また、ステップS14で、拡散符号同期サーチが終了していない衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS15)。そして、ステップS3に戻り、上述したステップS3以降の処理を実行する。
【0104】
以上説明したような第2の実施の形態の処理動作を図6のDSP100の内部構成のブロック図に反映させた構成図を図8に示す。この図8の各ブロックの出力には、上述したような信号出力および演算結果が示されている。
【0105】
以上のようにして、この第2の実施の形態によれば、GPS衛星からの受信信号のキャリア周波数が未知であっても、FFTによる周波数領域での処理を積極的に用いて、受信信号のキャリアと拡散符号との同期検出を行って、キャリア成分を除去することができる。したがって、FFTを利用したデジタルマッチドフィルタによるGPS受信信号と拡散符号との相関点の検出を、高速、かつ簡単な構成で実現することができる。
【0106】
なお、この第2の実施の形態の場合においても、それぞれの衛星に対応する拡散符号をあらかじめFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0107】
[第3の実施の形態]
上述したように、デジタルマッチドフィルタによって受信信号と拡散符号の相関点を検出する場合には、その相関点を検出する単位データ長は、拡散符号の1周期長とするのが通常である。
【0108】
しかし、GPS衛星からの受信信号では、前述したように、データの1ビットは、拡散符号の20周期分であり、この20周期分では、すべて同じパターンの符号となっている。この第3の実施の形態では、この特質を生かして、デジタルマッチドフィルタによって受信信号と拡散符号の相関点を検出する単位データ長は、拡散符号の複数周期長とする。
【0109】
このように、受信信号について、拡散符号の複数周期分単位でFFT演算処理をすることにより、この第3の実施の形態によれば、受信感度が向上し、同じ時間領域の信号を累積加算する方法に比べてキャリア周波数のサーチがし易くなる。以下、この第3の実施の形態を、さらに説明する。
【0110】
時間領域において、拡散符号のM周期(Mは2以上の整数)に渡って累積加算を行った1周期長のデータに対して相関点を検出する先行例がある(例えば米国特許4998111号明細書または「An Introduction to Snap TrackTM Server−Aided GPS Technology, ION GPS−98 Proceedings」参照)。
【0111】
すなわち、図10に示すように、この先行例の方法においては、受信信号r(n)について、拡散符号との乗算結果を、M周期分に渡って累積加算するものである。この先行例の方法は、GPS衛星からの受信信号の周期性とノイズの統計的な性質とを利用してC/Nを高めるもので、受信信号のキャリアと拡散符号の同期が事前にとれている状態であれば、C/NがM倍に改善され、したがって受信感度(相関点の検出感度)はM倍に向上する。
【0112】
しかし、受信信号のキャリアと拡散符号との同期がとれていないと位相の異なるM個のキャリアが加算合成されてしまい、累積加算した結果においては肝心のGPS信号が相殺されてしまって相関ピークは検出できなくなる。
【0113】
このため、受信信号のキャリア周波数が未知の場合には、キャリア周波数をサーチする必要があり、サーチする各々の周波数毎に累計加算を行うといった効率の悪い操作を行わざるを得なくなる。
【0114】
これに対して、上述した第1および第2の実施の形態では、上述したようにして周波数領域において、FFT結果のメモリからの読み出しアドレスをシフトするという簡便な方法により、受信信号のキャリアと拡散符号との同期がとれるので、累積加算の効果を最大限に発揮させることができる。
【0115】
この第3の実施の形態では、第2の実施の形態と同様に、GPS衛星からの受信信号のキャリア周波数は未知として、キャリア周波数のサーチを行うのであるが、その場合に、受信信号r(n)については、拡散符号のM周期分毎にFFTを行うようにする。そして、この拡散符号のM周期分毎に、受信信号のFFT結果のメモリからの読み出しアドレスのシフト量の制御による受信信号のキャリア周波数のサーチを行う。
【0116】
前述した図23の式(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倍になる。
【0117】
しかし、拡散符号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としたときのスペクトラム例を図11に示す。
【0118】
図11の例では、信号のスペクトラムが4個おきにあり、それらの間には信号成分はない。N個の点以外では、拡散符号c(n)の周波数成分は0になる。一方、ノイズn(n)は、多くの場合、非周期信号であるから、MN個の全周波数成分にエネルギーが分散される。したがって、受信信号r(n)のFFT結果R(K)中における拡散符号c(n)のN個の周波数成分の総和において、時間領域での累積加算と同様に、C/NがM倍向上することになる。
【0119】
受信信号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 だけ循環的にシフトするようにする。
【0120】
以上説明した第3の実施の形態の全体の構成は、図6に示した第2の実施の形態の場合と同様となるが、メモリ102の容量は、拡散符号のM周期分とされ、DSP23では、この拡散符号のM周期分のデータ単位で処理動作を行なう。上述の処理動作を、そのDSP100の内部構成に反映させた構成図を図12に示す。
【0121】
すなわち、FFT処理部103からは、FFT演算処理単位を拡散符号のM周期とするFFT結果R(K)が得られ、メモリ104に書き込まれる。図12では、0≦k<N、0≦K<MNとしている。
【0122】
そして、このメモリ104から、読み出しアドレスがシフト制御されてFFT結果が読み出されて乗算部105に供給され、メモリ108からの拡散符号c(n)のFFT結果C(k)の複素共役!C(k)と乗算される。
【0123】
この第3の実施の形態の場合、この乗算部105から得られる相関関数F(k)は、図23の式(8)に示すようなものとなるようにされる。なお、k0 については、f0 =k0 ・fs /MNである。
【0124】
このとき、図12において、逆FFT処理部109から得られる相関関数f’(n)のピークは、R(K)がM周期の拡散符号を含むので、0≦n<MNの範囲においてM個現れることになる。しかし、相関点の検出は、拡散符号の1周期についての1個でよいので、逆FFT処理部109での計算は、前述の第1および第2の実施の形態の場合と同様に、0≦n<Nの範囲だけで済み、N≦n<MNにおける計算は必要ない。
【0125】
以上のようにして、この第3の実施の形態によれば、受信信号r(n)のFFTを拡散符号の1周期のM倍とすることにより、相関点の検出感度、したがって、受信感度を向上させることができる。
【0126】
なお、この第3の実施の形態の場合においても、それぞれの衛星に対応する拡散符号をあらかじめFFTしておいたものをメモリに記憶させておくことで、衛星信号の受信時における拡散符号c(n)のFFT計算を省略することができる。
【0127】
[第4の実施の形態]
前述の第3の実施の形態では、拡散符号のM周期(M>1)分を含む受信信号r(n)をFFT処理することで、未知のキャリア周波数のサーチを可能にすると共に、受信感度の向上を図ることができるものであるが、データサンプルの数が、拡散符号1周期分の場合のN個からM倍のMN個になるため、FFTの計算時間および図12におけるメモリ104の容量が大きくなる。第4の実施の形態は、このメモリ容量の問題を改善したものである。
【0128】
図11の例のように、拡散符号のM周期(M>1)をFFT処理単位とした場合のFFT結果R(K)中の周波数成分はM個おきにしか存在しないので、それらのM個おきの周波数成分の間の成分は不要である。
【0129】
ここで、FFT結果R(K)(ただし、0≦K<MN)を、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)(0≦i<N)のM組に分ける。M=4組に分けた場合の、それぞれの組の分割スペクトラムの例を図13〜図16に示す。キャリア周波数は未知であるが、M組のうちの1組に、相関を検出する対象となるGPS信号のエネルギーがある。図13〜図16の例では、図13のR(i×M)の組に、受信信号r(n)の周波数成分が含まれ、それ以外の3つの分割スペクトラムにはノイズしかない状態を表している。
【0130】
なお、実際の信号ではキャリア周波数k0は、正確にはk'=k0でないため、例えばk0がk0’とk0’+1との間にあったとすると、k'=k0’とk'=k0’+1との両方で相関が検出され、k0に近い方が大きな相関を示す。
【0131】
FFT結果R(K)を前記のようにM組に分割した場合、Mが2のべき乗であれば、FFT計算手順の性質から、各組は、それぞれ独立に計算できる。
【0132】
図17は、8個のデータg(0)〜g(7)のFFT計算の信号の流れ図である。図17の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))に注目すると、図18に示す部分だけの計算でよいことが判る。そして、この計算の構造は、他の組(G(1),G(5))、(G(2),G(6))、(G(3),G(7))においても同様となるものである。
【0133】
この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計算をした場合とでは同じになる。
【0134】
上記の例と同様のことが、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処理して検出するより、処理時間が短くなると期待できる。
【0135】
以上説明した第4の実施の形態の場合の拡散符号およびキャリア同期のフローチャートを、図19および図20に示す。図19および図20の例ではFFTの回数を最小にするため、キャリア周波数のサーチを、各FFTの組毎に、対象とする衛星すべてについて相関検出を行うようにしている。なお、この図19および図20のフローチャートは、DSP100でのソフトウエア処理に対応するものである。
【0136】
まず、R(K)(0≦K<MNであり、K=i×M+j)の分割組数についての変数j(0≦j<M)を初期化し(ステップS21)、次に、A/D変換部101にてデジタル信号に変換された受信信号を信号r(n)(ただし、0≦n≦MN)としてメモリ102に取り込む(ステップS22)。次に、この信号r(n)をFFT処理部103でFFTし、そのFFT結果R(K)をメモリ104に書き込む(ステップS23)。次に、信号を受信したGPS衛星に対応する拡散符号のFFT結果C(k)をメモリ108にセットする(ステップS24)。
【0137】
次に、受信信号r(n)のFFT結果R(K)のメモリ104からの読み出しアドレスのシフト量の初期値k0’を、例えば過去のデータから決定する(ステップS25)。そして、決定した初期値k0’を、メモリ104からのFFT結果の読み出しアドレスのシフト量k'として設定すると共に、シフト制御の変更回数mを、初期値m=0にセットする(ステップS26)。
【0138】
次に、メモリ104から、受信信号r(n)のFFT結果R(K)を、その読み出しアドレスを、k'だけシフトして読み出す(ステップS27)。そして、読み出したFFT結果R(K−k')と、拡散符号のFFT結果とを乗算して相関関数F’(k)を求める(ステップS28)。
【0139】
次に、この相関関数F’(k)の逆FFTを行って時間領域の関数f’(n)を求める(ステップS29)。そして、この関数f’(n)について、ピーク値f’(np)を求め(ステップS30)、そのピーク値f’(np)が予め設定されているスレッショールド値fthより大きいかどうか判別する(ステップS31)。
【0140】
ステップS31での判別の結果、ピーク値f’(np)が、予め設定されているスレッショールド値fth以下であるときには、相関点が検出できなかったとして、シフト制御の変更回数mが予め設定された最大値mmaxよりも小さいかどうか判別する(ステップS32)。そして、シフト制御の変更回数mが予め設定された最大値mmaxよりも小さいと判別したときには、シフト制御の変更回数mを1だけインクリメント(m=m+1)すると共に、新たなシフト量k'を、
k'=k'+(−1)m×m
として(ステップS33)、ステップS27に戻る。そして、上述したステップS27以降の処理を繰り返す。
【0141】
また、ステップS32で、シフト制御の変更回数mが、予め設定された最大値mmax以上であると判別したときには、すべての衛星について、上述の拡散符号同期サーチ処理が終了したか否か判別し(ステップS36)、すべての衛星についての拡散符号同期サーチ処理が終了したと判別したときには、変数jがその最大値Mより小さいかどうか判別し(ステップS38)、小さいときには、変数jをインクリメントし(ステップS39)、その後、ステップS23に戻り、このステップS23以降の処理を繰り返す。
【0142】
また、ステップS38で、変数jが最大値Mに等しいあるいは最大値Mより大きいと判別したときには、サーチ動作を終了する(ステップS40)。
【0143】
また、ステップS36で、拡散符号同期サーチが終了していない衛星があると判別したときには、次に拡散符号同期サーチを行う衛星を選択し、その選択した衛星が用いる拡散符号c(n)に拡散符号を変更する(ステップS37)。そして、ステップS24に戻り、上述したステップS24以降の処理を実行する。
【0144】
また、ステップS31において、ピーク値f’(np)が、予め設定されているスレッショールド値fthより大きいと判別したときには、そのピーク値f’(np)を取る離散時間(拡散符号の位相)npを相関点として検出すると共に、前記FFT結果R(k)のメモリ104からの読み出しアドレスのシフト量の初期値k0’を、そのときのシフト量k'に設定し直す(ステップS34)。
【0145】
そして、検出した相関点npが、4個目であるか否か判別し(ステップS35)、4個目であると判別したときには、受信機位置計算処理および同期保持処理へ移行する。なお、ステップS34で検出した相関点npが得られるときのシフト量k'から、当該受信中のGPS衛星についてのドップラーシフト量およびGPS受信機の発振周波数の誤差が推定することができる。
【0146】
ステップS35で、検出した相関点npが、4個目未満であると判別したときには、ステップS36に進み、上述したステップS36以降の処理を実行する。
【0147】
なお、第1の実施の形態の場合のように、キャリア周波数が既知である場合には、R(i×M)、R(i×M+1)、R(i×M+2)、・・・、R(i×M+M−1)の中で該当するものだけを計算すれば、拡散符号の多周期分を含む時間分を単位として受信信号をFFTする方法は、同様に適用できる。
【0148】
以上説明した第1〜第4の実施の形態のGPS受信機の拡散符号およびキャリアの同期捕捉方法は、従来の手法であるスライディング相関器が原理的に時間を要するのに対し、高速なDSP等の活用で処理時間の大幅な短縮が期待できる。
【0149】
なお、以上の実施の形態の説明では、GPS衛星からの受信信号の場合に、この発明を適用したが、この発明は、GPS衛星からの信号に限らず、拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号の拡散符号およびキャリアの同期捕捉を行う場合のすべてに適用可能である。
【0150】
【発明の効果】
以上説明したように、この発明によれば、FFTを利用したデジタルマッチドフィルタ処理において、時間領域で発振器との乗算を行うことなく、受信信号と拡散符号のFFT結果同士の乗算において、一方のFFT結果をシフトするという簡単な方法によりキャリア成分を除くことができる。
【0151】
また、拡散符号の複数周期を処理単位として受信信号のFFTを行う方法をとることにより、受信感度が向上し、同じ目的のために時間領域で信号を累積加算する方法に比べてキャリア周波数のサーチがし易いというメリットがある。そして、受信感度の向上により、アンテナの小型化、受信エリアの拡大等が期待できる。
【0152】
また、この発明によれば、従来の手法であるスライディング相関器が同期するまで原理的に時間を要するのに対し、高速なDSP等の活用による処理時間の大幅な短縮により、GPS受信機としての反応が速くなるという効果が得られる。
【図面の簡単な説明】
【図1】この発明によるスペクトラム拡散信号復調装置の第1の実施の形態としてのGPS受信機の構成を示すブロック図である。
【図2】相関検出出力のスペクトラムの例を示す図である。
【図3】受信信号のキャリアと拡散符号との同期を取る方法の一般的な例を説明するための図である。
【図4】この発明の実施の形態において、受信信号のキャリアと拡散符号との同期を取る方法を説明するための図である。
【図5】第1の実施の形態において、動作を考慮した要部の構成を示す図である。
【図6】この発明によるスペクトラム拡散信号復調装置の第2の実施の形態としてのGPS受信機の構成を示すブロック図である。
【図7】第2の実施の形態における動作を説明するためのフローチャートの一部である。
【図8】第2の実施の形態における動作を説明するためのフローチャートの一部である。
【図9】第2の実施の形態において、動作を考慮した要部の構成を示す図である。
【図10】この発明によるスペクトラム拡散信号復調装置の第3の実施の形態を説明するための図である。
【図11】この発明によるスペクトラム拡散信号復調装置の第3の実施の形態を説明するための図である。
【図12】第3の実施の形態において、動作を考慮した要部の構成を示す図である。
【図13】この発明によるスペクトラム拡散信号復調装置の第4の実施の形態を説明するための図である。
【図14】この発明によるスペクトラム拡散信号復調装置の第4の実施の形態を説明するための図である。
【図15】この発明によるスペクトラム拡散信号復調装置の第4の実施の形態を説明するための図である。
【図16】この発明によるスペクトラム拡散信号復調装置の第4の実施の形態を説明するための図である。
【図17】第4の実施の形態の要部の説明に用いる図である。
【図18】第4の実施の形態の要部の説明に用いる図である。
【図19】第4の実施の形態における動作を説明するためのフローチャートの一部である。
【図20】第4の実施の形態における動作を説明するためのフローチャートの一部である。
【図21】GPS衛星からの信号の構成を示す図である。
【図22】従来のキャリアおよび拡散符号の同期処理を説明するための図である。
【図23】この発明の実施の形態の説明に用いる図である。
【符号の説明】
13…中間周波変換回路、100…DSP、103…FFT処理部、104…メモリ、105…乗算部、106…拡散符号発生部、107…FFT処理部、108…メモリ、109…逆FFT処理部、110…相関点検出部、111,112…読み出しアドレス制御部
Claims (8)
- 拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換して第1のメモリに書き込む工程と、
前記第1のメモリに書き込まれた前記受信信号の高速フーリエ変換結果と、第2のメモリに書き込まれている拡散符号の高速フーリエ変換結果とを、それぞれ読み出して乗算することにより、前記受信信号と前記拡散符号の相関を検出する工程であって、前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方については、前記受信信号の搬送波周波数に応じた分だけ読み出しアドレスをシフトして前記第1のメモリまたは前記第2のメモリから読み出して、前記受信信号の搬送波成分を除去するようにする工程と、
前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関点を検出する工程と、
を備えることを特徴とするスペクトラム拡散信号復調方法。 - 請求項1に記載のスペクトラム拡散信号復調方法において、
前記受信信号の高速フーリエ変換および前記拡散符号の高速フーリエ変換は、前記拡散符号のM周期(Mは2以上の2のべき乗)を単位として行う
ことを特徴とするスペクトラム拡散信号復調方法。 - 拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換して第1のメモリに書き込む工程と、
前記第1のメモリから読み出された前記受信信号の高速フーリエ変換結果と、第2のメモリから読み出された拡散符号の高速フーリエ変換結果とを乗算する工程と、
前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関検出出力を得る工程と、
前記相関検出出力に基づいて、前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方の前記第1のメモリまたは前記第2のメモリからの読み出しアドレスをシフト制御しながら、前記相関のピークを判別して、前記受信信号と前記拡散符号との相関点を検出する工程と、
を備え、
前記受信信号の高速フーリエ変換および前記拡散符号の高速フーリエ変換は、前記拡散符号のM周期(Mは2以上の2のべき乗)を単位として行う
ことを特徴とするスペクトラム拡散信号復調方法。 - 請求項3に記載のスペクトラム拡散信号復調方法において、
前記受信信号の高速フーリエ変換は、その全周波数成分を一括して計算せず、高速フーリエ変換の計算構造として、同じ計算構造となる単位で、L回(Lは2以上の整数)に分けて、前記受信信号の1/Lずつの高速フーリエ変換を行うことを特徴とするスペクトラム拡散信号復調方法。 - 拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換する高速フーリエ変換手段と、
前記高速フーリエ変換手段からの前記受信信号の高速フーリエ変換結果が書き込まれる第1のメモリと、
前記受信信号で使用される前記拡散符号の高速フーリエ変換結果が書き込まれている第2のメモリと、
前記第1のメモリから読み出された前記受信信号の高速フーリエ変換結果と、前記第2のメモリから読み出された前記拡散符号の高速フーリエ変換結果とを乗算する乗算手段と、
前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方については、前記受信信号の搬送波周波数に応じた分だけ読み出しアドレスをシフトして、前記第1のメモリまたは前記第2のメモリから読み出して、前記受信信号の搬送波成分を除去するようにするメモリ制御手段と、
前記乗算手段からの前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関検出出力を得る逆高速フーリエ変換手段と、
前記逆高速フーリエ変換手段からの前記相関検出出力に基づいて前記受信信号と前記拡散符号との相関のピークを検索して、前記受信信号と前記拡散符号との相関点を検出する手段と、
を備えることを特徴とするスペクトラム拡散信号復調装置。 - 請求項5に記載のスペクトラム拡散信号復調装置において、
前記受信信号の高速フーリエ変換および前記拡散符号の高速フーリエ変換は、前記拡散符号のM周期(Mは2以上の2のべき乗)を単位として行う
ことを特徴とするスペクトラム拡散信号復調装置。 - 拡散符号でデータをスペクトラム拡散した信号により搬送波が変調されている受信信号を高速フーリエ変換する高速フーリエ変換手段と、
前記高速フーリエ変換手段からの前記受信信号の高速フーリエ変換結果が書き込まれる第1のメモリと、
前記受信信号で使用される前記拡散符号の高速フーリエ変換結果が書き込まれている第2のメモリと、
前記第1のメモリから読み出された前記受信信号の高速フーリエ変換結果と、前記第2のメモリから読み出された前記拡散符号の高速フーリエ変換結果とを乗算する乗算手段と、
前記乗算手段からの前記乗算の結果を逆高速フーリエ変換して、前記受信信号と前記拡散符号との相関検出出力を得る逆高速フーリエ変換手段と、
前記逆高速フーリエ変換手段からの前記相関検出出力に基づいて、前記受信信号の高速フーリエ変換結果または前記拡散符号の高速フーリエ変換結果のいずれか一方の前記第1のメモリまたは前記第2のメモリからの読み出しアドレスをシフト制御しながら、前記相関のピークを判別して、前記受信信号と前記拡散符号との相関点を検出する手段と、
を備え、
前記受信信号の高速フーリエ変換および前記拡散符号の高速フーリエ変換は、前記拡散符号のM周期(Mは2以上の2のべき乗)を単位として行う
ことを特徴とするスペクトラム拡散信号復調装置。 - 請求項6または請求項7に記載のスペクトラム拡散信号復調装置において、
前記受信信号の高速フーリエ変換は、高速フーリエ変換の計算構造として、同じ計算構造となる単位で、L回(Lは2以上の整数)に分けて、前記受信信号の1/Lずつの高速フーリエ変換を行うことを特徴とするスペクトラム拡散信号復調装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002181546A JP3906913B2 (ja) | 2001-06-25 | 2002-06-21 | スペクトラム拡散信号復調方法および装置 |
US12/586,496 US7995860B2 (en) | 2001-06-25 | 2009-09-23 | Spectrum spreading signal demodulation method and apparatus |
US12/586,531 US8005315B2 (en) | 2001-06-25 | 2009-09-23 | Spectrum spreading signal demodulation method and apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001-190658 | 2001-06-25 | ||
JP2001190658 | 2001-06-25 | ||
JP2002181546A JP3906913B2 (ja) | 2001-06-25 | 2002-06-21 | スペクトラム拡散信号復調方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003087222A JP2003087222A (ja) | 2003-03-20 |
JP3906913B2 true JP3906913B2 (ja) | 2007-04-18 |
Family
ID=26617465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002181546A Expired - Lifetime JP3906913B2 (ja) | 2001-06-25 | 2002-06-21 | スペクトラム拡散信号復調方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3906913B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2239593A1 (en) | 2009-04-10 | 2010-10-13 | Sony Corporation | Communication system, signal processing method, signal processing device, and movable body |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004279264A (ja) * | 2003-03-17 | 2004-10-07 | Kanazawa Univ Tlo Inc | スペクトル拡散方式の受信機および受信信号処理方法 |
KR20070019940A (ko) * | 2003-09-02 | 2007-02-16 | 서프 테크놀러지, 인코포레이티드 | 위성 위치결정 시스템 수신기에 대한 제어 및 특징들 |
JP4588579B2 (ja) * | 2005-08-25 | 2010-12-01 | 株式会社日立国際電気 | 同期検出装置 |
JP4842172B2 (ja) * | 2007-02-28 | 2011-12-21 | 三菱電機株式会社 | スペクトル拡散用受信機 |
JP5942561B2 (ja) * | 2012-04-18 | 2016-06-29 | アイコム株式会社 | 通信機および通信方法 |
JP2016046618A (ja) * | 2014-08-21 | 2016-04-04 | ソニー株式会社 | 信号処理装置および方法、並びに、プログラム |
-
2002
- 2002-06-21 JP JP2002181546A patent/JP3906913B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2239593A1 (en) | 2009-04-10 | 2010-10-13 | Sony Corporation | Communication system, signal processing method, signal processing device, and movable body |
Also Published As
Publication number | Publication date |
---|---|
JP2003087222A (ja) | 2003-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7609903B2 (en) | Spread spectrum signal demodulating method and apparatus | |
US7876811B2 (en) | Method and apparatus for detecting spreading-code synchronization for spectrum spreading signals | |
US6772065B2 (en) | GPS receiver and receiving method | |
US7053827B2 (en) | GPS reception method and GPS receiver | |
US7693211B2 (en) | Fast fourier transform based phase locked loop for navigational receivers | |
US6907346B2 (en) | GPS receiver apparatus and receiving method | |
JP4306693B2 (ja) | 相関検出装置、相関検出方法並びに受信装置 | |
JP3906913B2 (ja) | スペクトラム拡散信号復調方法および装置 | |
JP2001223672A (ja) | 受信装置の同期方法、測位システム、受信装置および電子装置 | |
JP3956722B2 (ja) | マッチドフィルタ装置及び相関検出方法並びに受信装置 | |
US7203250B2 (en) | Frequency analysis method and apparatus, and spectrum spreading demodulation method and apparatus | |
JP3826808B2 (ja) | 復調装置及び受信装置 | |
JP3738766B2 (ja) | 通信装置 | |
JP3864807B2 (ja) | 相関検出装置及び相関検出方法並びに受信装置 | |
JP2003258681A (ja) | マッチドフィルタ装置及び相関検出方法並びに受信装置 | |
JP2003316763A (ja) | 周波数分析方法および装置並びにスペクトラム拡散復調方法および装置 | |
JP2006234847A (ja) | Gps受信機およびgps受信機の測位方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060726 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061011 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061130 |
|
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: 20061227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070109 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3906913 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100126 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120126 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120126 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130126 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140126 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |