(57)【要約】【課題】  スペクトル拡散信号の相関値の演算時間を短縮する。【解決手段】  擬似乱数（ＰＮ信号）で拡散されたスペクトル拡散信号を受信側で復調する際に、擬似乱数の変調周期である１チップ分の積分演算を予め行って積分結果をメモリに格納しておく。この１チップ分の積分データをもとにＬチップ分（Ｌは複数）の擬似乱数との相関値を予備計算し、この予備計算されたＬチップ分の相関値をもとに受信信号と擬似乱数との相関値演算を行う。【選択図】  図１
2006108987.tif 000002
【特許請求の範囲】
【請求項１】
受信されたスペクトル拡散信号と擬似乱数との相関値を演算する相関器において、
受信した信号の１チップ期間の信号を積分する複数の１チップ累算手段と、
この累算手段それぞれの積分値を格納する１チップデータ用メモリと、
前記１チップデータ用メモリに格納されたデータに基づいてＬチップ（Ｌは複数）分の擬似乱数の組み合わせ値との積和演算を行うＬチップ予備計算手段と、
前記演算されたＬチップ予備計算結果を格納するＬチップデータ用メモリと、
前記Ｌチップデータ用メモリに格納されたＬチップ予備計算結果のデータに基づいてスペクトル拡散信号と擬似乱数との相関値を演算する相関計算手段と
を備えたことを特徴とする相関器。
【請求項２】
受信された信号をディジタル信号に変換するＡ／Ｄ変換器と、このＡ／Ｄ変換されたスペクトル拡散受信信号に搬送波信号と周波数および位相が一致する信号とを乗算し前記１チップ累算手段に入力する乗算器とを含む
請求項１記載の相関器。
【請求項３】
情報処理装置にインストールすることにより、当該情報処理装置に相関器の機能として、
ディジタル信号に変換されたスペクトル拡散受信信号に搬送波と周波数および位相が一致する信号を乗算する乗算機能と、
この乗算された信号の１チップ期間の信号を積分する複数の１チップ累算機能と、
前記積分された積分値を１チップデータ用メモリに格納する機能と、
前記１チップデータ用メモリに格納されたデータに基づいてＬチップ（Ｌは複数）分の擬似乱数の組み合わせ値との積和演算を行うＬチップ予備計算機能と、
前記演算されたＬチップ予備計算結果をＬチップデータ用メモリに格納する機能と、
前記Ｌチップデータ用メモリに格納されたＬチップ予備計算結果のデータに基づいてスペクトル拡散信号と擬似乱数との相関値を演算する相関演算機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はスペクトル拡散信号の検出・復調を行うに必要な相関器に関する。特に受信したスペクトル拡散信号に対する同期捕捉を行うための擬似乱数（ＰＮ符号）との相関値の演算を高速で行うことができ、回路規模が大きくならない相関器に関する。
【背景技術】
【０００２】
スペクトル拡散信号は、搬送波を擬似乱数によって拡散変調した信号であり、その例を図３に示す。この図３の例を式で表すと
【数１】
2006108987.tif 000003
Ｍ(t)は擬似乱数で＋１もしくは−１の値をとる。sinωtは搬送波を表す。ここではデータを送信することについては考えないので、送信データによる変調は含まれていない。
【数２】
2006108987.tif 000004
【０００３】
受信信号Ｒ(τ)の中から、このようなスペクトル拡散信号を検出するためには式２で表されるような逆拡散処理を行う。ｔは時刻を表し、ＴMは擬似乱数の１周期の時間を表す。この逆拡散処理は、検出の対象となる信号を作成した際に用いられるものと同じ擬似乱数Ｍ（τ＋ｐ）と搬送波sin(ωt＋φ)を用いて相関値を計算することである。sin(ωt＋φ)のφは検出したい信号に含まれる搬送波と位相を一致させるパラメータで、これを調整して位相を一致させる。なお、位相を一致させる方法は本願とは関係が小さいのでその説明は省略する。そして、この状態で擬似乱数の位相を制御するパラメータｐを変化させると、擬似乱数の位相が一致しているときだけ相関値が大きな値をとるので、それによってスペクトル拡散信号の検出を行うことができる。むしろ大きな相関値を検出することによってしかスペクトル拡散信号の検出ができないので、パラメータｐを変化させながら、その度に計算を行って、相関値の値を調べ直すことが要求され、信号の検出を素早く行うためには、相関値の計算をできるだけ高速に行うことが要求される。
【０００４】
相関値の計算は、受信信号をＡ／Ｄ変換によってディジタル値に変換し、これを積和演算をすることにより演算することができる。
【０００５】
このような積和演算を行うディジタル回路のもっとも単純な回路例を図４に示す。図４に示す相関器は、搬送波sin(ωt＋φ)の値を掛ける乗算器以外には、乗算器、加算器、レジスタ、それぞれ１個から構成されており、もっとも回路規模が小さいものである。計算に必要なクロック数は積和演算するデータの個数と同じであり、データの個数が増えるとそれに比例して計算時間が増大する。
【０００６】
一方、回路をパイプライン化することで高速に相関演算を行うことができる回路例を図５に示す。この回路を構成するレジスタの個数は積和演算するデータの個数の２倍程度、加算器の個数はデータの個数程度になる。そのためにデータの個数が増えるにつれて回路規模が膨大となる。一方、計算に要するクロック数は、加算処理の部分も含めてパイプライン化されているため、実質１クロックである。
【０００７】
【特許文献１】特開平１０−３１２３７３号公報
【非特許文献１】山根，伊与田，崔，久保田，渡辺：擬似乱数Ｍ系列によるスペクトル拡散音波の距離計測への応用，計測自動制御学会論文集，Vol.39 No.10, 879/885, 2003
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述の図４に示す回路は、回路規模を最小とするものであり、また図５の回路は計算時間を最小とする構成である。相関値を演算する場合には積和演算をするデータの個数と要求される計算時間は、目的・用途によってさまざまであるが、ここでは、データの個数が１〜２万個を前提に、その計算時間を数μｓ程度に収めることを目標に図４、５の回路について考察してみる。
【０００９】
図４の回路の場合、回路規模は大変に小さく、回路規模の面からいうと、その作成は容易である。しかし、計算時間はデータの個数に比例するので、計算時間を数μｓに抑えるには、動作クロックを少なくとも数ＧＨｚレベルにする必要がある。このような動作速度を実現するには最新の半導体技術を使って専用ＩＣを作成する必要があるが、コストは膨大なものとなり、実現は困難である。
【００１０】
図５のパイプライン化した回路の場合、データの個数にかかわらず、積和演算に要する時間は１クロックであるので、計算時間を数μｓに収めることは可能である。しかし、回路の規模はデータの個数に比例して増大するので、データが１〜２万個の場合には、レジスタを構成するＤ−ＦＦ（フリップフロップ）は十数万個から三十数万個となり、それに加えて、加算回路を構成するゲートを少なくとも数十万個が必要となる。このような規模になると、集積度が向上したとはいっても、大規模ＰＬＤ（プログラマブルロジックデバイス）を用いて回路を作製することは困難である。仮に実現できたとしてコストの高いものとなり、また専用ＩＣとすると、さらにコストが嵩むものとなる。
【００１１】
本発明はこのような問題を解決するもので、回路規模をできるだけ小さくし、かつ計算時間を短縮することができるスペクトル拡散信号の相関器を実現することを目的とする。本発明では無駄な再計算を減少して相関値を演算するときに必要なデータの個数を削減し、計算時間を短縮することができるスペクトル拡散信号の相関器を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、スペクトル拡散信号は擬似乱数Ｍ(t)で変調されているが、その変調の周期（1チップ）は搬送波の数周期分に相当し、その間は、Ｍ(t)の値は変化しないことに着目した。この１チップ間は、擬似乱数の値は変化しないから、１チップ分の信号は、ディジタル的には、Nc個のデータで表現されるので、このようなデータの足しあわせ（積分または累算）を予め行っておくことによって、相関値を計算する際のデータ量は１／Ncに削減される。この１チップ分のデータを足しあわせたものを１チップデータと呼ぶ。
【００１３】
次に、１チップデータをもとにして、予めＬチップ分の相関値を計算する（これを予備計算と呼ぶことにする）。Ｌは、複数であるが、上述の数万個のデータに比べるとその数は小さい。相関値を計算するためには計算で用いられる擬似乱数Ｍ(t)の値が決まっている必要があるが、予め計算する段階では決めることができない。そこで、考えられる擬似乱数Ｍ(t)の値すべてについて計算をすることにする。Ｌチップ分の相関値を計算する場合、Ｍ(t)の値は２Lとおり考えられるので、それらについてすべて計算を行い、その値（これをＬチップデータと呼ぶ）をメモリに記憶させておくようにする。ここで注意すべき点はＬの値が大きくなるとＭ(t)の値のパターンが文字どおり指数的に大きくなるので、計算時間とメモリのサイズが指数的に増大する。このため、Ｌの値はそれらを考慮しながら、決定する。
【００１４】
すなわち、本発明は、受信されたスペクトル拡散信号と擬似乱数との相関値を演算する相関器において、受信した信号の１チップ期間の信号を積分する複数の１チップ累算手段と、この累算手段それぞれの積分値を格納する１チップデータ用メモリと、前記１チップデータ用メモリに格納されたデータに基づいてＬチップ（Ｌは複数）分の擬似乱数の組み合わせ値との積和演算を行うＬチップ予備計算手段と、前記演算されたＬチップ予備計算結果を格納するＬチップデータ用メモリと、前記Ｌチップデータ用メモリに格納されたＬチップ予備計算結果のデータに基づいてスペクトル拡散信号と擬似乱数との相関値を演算する相関計算手段とを備えたことを特徴とする。
【００１５】
なお、受信された信号をディジタル信号に変換するＡ／Ｄ変換器と、このＡ／Ｄ変換されたスペクトル拡散受信信号に搬送波信号と周波数および位相が一致する信号とを乗算し前記１チップ累算手段に入力する乗算器とを含むことができる。
【００１６】
また、本発明は、ソフトウェアとして実現でき、情報処理装置にインストールすることにより、その情報処理装置を相関器の機能として、ディジタル信号に変換されたスペクトル拡散受信信号に搬送波と周波数および位相が一致する信号を乗算する乗算機能と、この乗算された信号の１チップ期間の信号を積分する複数の１チップ累算機能と、前記積分された積分値を１チップデータ用メモリに格納する機能と、前記１チップデータ用メモリに格納されたデータに基づいてＬチップ（Ｌは複数）分の擬似乱数の組み合わせ値との積和演算を行うＬチップ予備計算機能と、前記演算されたＬチップ予備計算結果をＬチップデータ用メモリに格納する機能と、前記Ｌチップデータ用メモリに格納されたＬチップ予備計算結果のデータに基づいてスペクトル拡散信号と擬似乱数との相関値を演算する相関演算機能とを実現させるところにある。
【発明の効果】
【００１７】
このように、予備計算によってＬチップ分の相関値を計算し、Ｌチップデータとしてメモリに記憶しておけば、実際に相関値の計算を行う場合にそれを用いることによって、取り扱うデータの個数は元のデータの個数の１／（Ｎｃ×Ｌ）になり、計算時間を大幅に削減することができる。これによって、回路を動作させるクロック信号の周波数を低くすることができる。また、相関値の計算に用いるデータを記憶するためにレジスタではなく、メモリ素子を用いるので、それ以外の計算処理などを行う部分のハードウエア規模を比較的小さくすることができ、小規模で入手な可能なＰＬＤ回路を用いてコストの安い相関器を実現することができる。
【発明を実施するための最良の形態】
【００１８】
図１に、本発明の実施例の相関器の回路例を示す。
【００１９】
本実施例は、Ａ／Ｄ変換器１、乗算器２、１チップ累算器３、１チップデータ用メモリ４、Ｌチップ予備計算器５、Ｌチップデータ用メモリ６、相関計算器７とが順次接続された構成である。
【００２０】
受信されたスペクトル拡散信号はＡ／Ｄ変換器１によりディジタルデータに変換される。このスペクトル拡散受信信号は、乗算器２によって検出したい信号に含まれる搬送波と位相・周波数が一致している信号sin(ωt＋φ)と掛け合わされる。このデータは、１チップ累算器３に入力されて、Ｎｃ個の累算器３１1〜３１Nc でそれぞれ１チップ分が足し合わされて１チップデータ用メモリ４に記憶される。検出したい信号において、擬似乱数Ｍ(t)による拡散変調の周期（１チップ）の区切りは既知ではないので、１チップ累算器３内の累算器３１は、１チップに含まれるデータの個数と同じＮｃ個用意し、各累算器３１の足しあわせ計算の開始タイミングをずらすことによって、チップの区切りがどのタイミングであっても対応できる。
【００２１】
さらに、１チップデータ用メモリ４に記憶されたデータは、Ｌチップ予備計算器５によって、Ｌ個分読み出され、Ｌ個のレジスタ５１1〜５１Lに入力され、Ｌ個の乗算器５２1〜５２LでＬ個の擬似乱数が設定されている記憶素子（レジスタ）５４1〜５４Lからの擬似乱数の値（Ｌ個の＋１もしくは−１の値）と掛け合わされ上で加算器５３で加算される。ここでは、Ｌ個の擬似乱数の値については考えられるすべてのパターンについて計算が行われるので、Ｌ個の１チップデータから得られるＬチップデータは２L個である。すなわち、ここではＬチップ予備計算器５は、図１に示すように、擬似乱数のＬ個の組み合わせに対して２L個並列に用意するか、あるいはひとつのＬチップ予備計算器５で擬似乱数の値を変えながら２L回積和計算を行うことになる。ただ、ひとつのＬチップ予備計算器５で２L回積和計算する方式であると、回路数は少なくなるが、Ｌチップ予備計算器５のクロック周波数を高速にする必要がある。このＬチップ予備計算器５で予備計算された２L個のデータは、Ｌチップデータ用メモリ６に記憶される。
【００２２】
相関計算器７は、擬似乱数の値と時刻に相当する値をＬチップデータ用メモリ６に与えることによって、それに対応するＬチップデータを即時に取り出して足しあわせていく。これにより、相関計算器７は、相関値の計算し出力する。この相関計算器７で用いる擬似乱数の値は任意に選ぶことができるので、必要に応じて擬似乱数の種類や位相を変えることで、検出したいスペクトル拡散信号に対応した相関値を計算することができる。
【００２３】
図２は、この図１に示す回路構成でのスペクトル拡散信号の相関計算を説明する図であり、上から、受信されたスペクトル拡散信号に、搬送波と周波数・位相が一致したsin(ωt＋φ)を乗算し、それを１チップデータを累算する。この１チップデータをＬ個（ここでは、Ｌ＝３である）取り出し、Ｌチップデータの予備計算を行う。３個の擬似乱数に対する組み合わせは、８通りあるので、予備計算は８通り行い、８個のＬチップデータの予備計算値をＬチップデータメモリに格納する。相関計算器７は、このうちの相関計算を行う擬似乱数と時刻に相当する値をＬチップデータメモリに入力することで、対応するＬチップデータを取り出して足しあわせることで、相関値を得ることができる。
【００２４】
なお、本発明は、情報処理装置にインストールすることにより、その情報処理装置をスペクトル拡散受信信号の相関演算を行うディジタル相関器として機能させるソフトウェアとしても実現することができる。すなわち、ディジタル相関器の機能として、ディジタル信号に変換されたスペクトル拡散受信信号に搬送波と周波数および位相が一致する信号を乗算する乗算機能と、この乗算された信号の１チップ期間の信号を積分する複数の１チップ累算機能と、前記積分された積分値を１チップデータ用メモリ４に格納する機能と、前記１チップデータ用メモリに格納されたデータに基づいてＬチップ（Ｌは複数）分の擬似乱数の組み合わせ値との積和演算を行うＬチップ予備計算機能と、前記演算されたＬチップ予備計算結果をＬチップデータ用メモリ６に格納する機能と、前記Ｌチップデータ用メモリに格納されたＬチップ予備計算結果のデータに基づいてスペクトル拡散信号と擬似乱数との相関値を演算する相関演算機能とを実現させるプログラムを情報処理装置にインストールすることによりディジタル相関器として実現することもできる。このプログラムは、記録媒体に記録し、あるいは通信回線を介して情報処理装置にインストールすることができる。
【産業上の利用可能性】
【００２５】
本発明では、ＧＰＳによる位置検出のようなスペクトル拡散信号を利用した位置検出において、高速でかつ小さな回路規模でスペクトル拡散信号に対する同期捕捉を行うことができるため、スペクトル拡散信号を用いた位置検出に利用することができる。特に、超音波を用いて建物内で自己の位置を知る必要がある自律走行型ロボットなどにおいて、その位置検出に利用することが可能である。
【図面の簡単な説明】
【００２６】
【図１】本発明実施例の相関器の構成を示すブロック図。
【図２】実施例による相関検出を説明する図。
【図３】スペクトル拡散を説明する図。
【図４】もっとも単純な相関器の回路例。
【図５】パイプライン構成の相関器の回路例。
【符号の説明】
【００２７】
１  Ａ／Ｄ変換器
２  乗算器
３  １チップ累算器
４  １チップデータ用メモリ
５  Ｌチップ予備計算器
６  Ｌチップデータ用メモリ
７  相関計算器
【図１】
2006108987.tif 000005
【図２】
2006108987.tif 000006
【図３】
2006108987.tif 000007
【図４】
2006108987.tif 000008
【図５】
2006108987.tif 000009