JP2005101695A - 相関検出装置 - Google Patents
相関検出装置 Download PDFInfo
- Publication number
- JP2005101695A JP2005101695A JP2003329522A JP2003329522A JP2005101695A JP 2005101695 A JP2005101695 A JP 2005101695A JP 2003329522 A JP2003329522 A JP 2003329522A JP 2003329522 A JP2003329522 A JP 2003329522A JP 2005101695 A JP2005101695 A JP 2005101695A
- Authority
- JP
- Japan
- Prior art keywords
- fft
- ifft
- processing
- data
- delay profile
- 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.)
- Pending
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
【課題】 FFT・IFFTを用いて受信信号と符号との相関を、高速に、しかも確実に検出する。
【解決手段】 遅延プロファイル算出制御部260は、A/D202におけるサンプリング方法、符号長、FFT部3およびIFFT部4のFFT・IFFTサイズおよびFFT・IFFT処理の態様を、拡散ゲインが許容範囲になるように、また、FFT・IFFT処理時間が最短になるように求めて、A/D202および遅延プロファイル検出部22に対して設定する。A/D202および遅延プロファイル検出部22は、設定されたこれらの値に従って、受信データと符号との相関関係を検出し、遅延プロファイルを求める。
【選択図】 図7
【解決手段】 遅延プロファイル算出制御部260は、A/D202におけるサンプリング方法、符号長、FFT部3およびIFFT部4のFFT・IFFTサイズおよびFFT・IFFT処理の態様を、拡散ゲインが許容範囲になるように、また、FFT・IFFT処理時間が最短になるように求めて、A/D202および遅延プロファイル検出部22に対して設定する。A/D202および遅延プロファイル検出部22は、設定されたこれらの値に従って、受信データと符号との相関関係を検出し、遅延プロファイルを求める。
【選択図】 図7
Description
本発明は、受信データと符号との相関を検出する相関検出装置に関する。
例えば、特許文献1は、高速フーリエ変換(FFT)を用いて、CDMA通信方式などの受信データと符号との相関を検出する方法を開示する。
しかしながら、特許文献1に開示された方法は、処理速度の向上について特に工夫がなされていない。
特開2002−232503号公報
しかしながら、特許文献1に開示された方法は、処理速度の向上について特に工夫がなされていない。
本発明は、上述した背景からなされたものであり、FFT・IFFTを用いて受信信号と符号との相関を、高速に、しかも確実に検出することができる相関検出装置を提供することを目的とする。
上記目的を達成するために、本発明に係る相関検出装置は、所定の符号を含む時間領域の第1のデータと、前記第1の信号と前記所定の符号との相関を検出する相関検出装置であって、1回に変換処理するデータ数の設定を受けて、所定数の前記時間領域の第1のデータを、前記設定されたデータ数ずつ1回以上の変換処理を行って、周波数領域に変換する変換手段と、前記所定の符号の長さを示す符号長の設定を受けて、前記設定された符号長の符号を生成する符号生成手段と、周波数領域に変換された前記符号と、前記周波数領域に変換された第1のデータとの相関を示す相関データを生成する相関データ生成手段と、1回に変換処理するデータ数の設定を受けて、前記生成された相関データを、前記設定されたデータ数ずつ1回以上の逆変換処理を行って、時間領域のデータに逆変換して、前記第1のデータと前記所定の符号との相関を検出する相関検出手段と、前記データ数、前記変換処理の回数、前記逆変換処理の回数、および、前記符号長を、前記符号と前記第1のデータとの相関に対して規定される利得と、前記変換処理および前記逆変換処理の処理時間とに基づいて設定する設定手段とを有する。
好適には、前記設定手段は、前記利得が所定の条件を満たすように、前記データ数、前記変換処理の回数、前記逆変換処理の回数、および、前記符号長を設定する。
好適には、前記設定手段は、前記変換処理および前記逆変換処理に要する時間が所定の条件を満たすように、前記データ数、前記変換処理の回数、前記逆変換処理の回数、および、前記符号長を設定する。
本発明にかかる相関検出装置によれば、FFT・IFFTを用いて受信信号と符号との相関を、高速に、しかも確実に検出することができる。
[本発明の背景]
本発明の実施例の説明に先立ち、その理解を助けるために、本発明がなされるに至った背景を説明する。
図1は、W−CDMA方式の移動体通信システム1を例示する図である。
既に述べたように、例えば、図1に示すようなW−CDMA方式の移動体通信システム1において、拡散処理された信号を逆拡散処理(相関検出処理)するためには、従来、ハードウェア的に構成されたマッチトフィルタ・スライディングコリレータなどが用いられてきた。
移動体通信システム1において、ネットワーク10を介して接続された基地局2−1〜2−3それぞれが受け持つセルの半径は、一定とは限らないので、基地局2−1〜2−3と移動局12との間で伝送される拡散信号は、セルそれぞれの半径に応じて異なる遅延を受ける。
本発明の実施例の説明に先立ち、その理解を助けるために、本発明がなされるに至った背景を説明する。
図1は、W−CDMA方式の移動体通信システム1を例示する図である。
既に述べたように、例えば、図1に示すようなW−CDMA方式の移動体通信システム1において、拡散処理された信号を逆拡散処理(相関検出処理)するためには、従来、ハードウェア的に構成されたマッチトフィルタ・スライディングコリレータなどが用いられてきた。
移動体通信システム1において、ネットワーク10を介して接続された基地局2−1〜2−3それぞれが受け持つセルの半径は、一定とは限らないので、基地局2−1〜2−3と移動局12との間で伝送される拡散信号は、セルそれぞれの半径に応じて異なる遅延を受ける。
このような遅延の差異を吸収可能なほどにタップ数を多すると、マッチトフィルタの回路規模が非常に大きくなる。
例えば、移動局12よりも大きな拡散利得が要求される基地局2−1〜2−3において、1024chipsの拡散利得を、マッチトフィルタを用いて得ようとすると、1chipにつき4回ずつオーバーサンプリングした信号を処理するために、そのタップ数は4096にもなってしまう。
また、例えば、セル半径が50kmである場合には、基地局2〜移動局12の間の伝送距離は往復で最長100kmにもなり、信号が100km伝送される間には2560chips(約666μs)分の遅延が加わる。
このような遅延が加わったW−CDMA信号を、マッチトフィルタを用いて逆拡散しようとすると、そのタップ数は14336(=(2560+1024)×4(4はオーバーサンプリング))にもなる。
このように多数のタップを含むマッチトフィルタをハードウェア的に実現することは、現状、かなりの困難を伴う。
例えば、移動局12よりも大きな拡散利得が要求される基地局2−1〜2−3において、1024chipsの拡散利得を、マッチトフィルタを用いて得ようとすると、1chipにつき4回ずつオーバーサンプリングした信号を処理するために、そのタップ数は4096にもなってしまう。
また、例えば、セル半径が50kmである場合には、基地局2〜移動局12の間の伝送距離は往復で最長100kmにもなり、信号が100km伝送される間には2560chips(約666μs)分の遅延が加わる。
このような遅延が加わったW−CDMA信号を、マッチトフィルタを用いて逆拡散しようとすると、そのタップ数は14336(=(2560+1024)×4(4はオーバーサンプリング))にもなる。
このように多数のタップを含むマッチトフィルタをハードウェア的に実現することは、現状、かなりの困難を伴う。
一方、例えば、DSPなどによるマッチトフィルタのソフトウェア的な実現は、演算量が非常に多いので、困難である。
本発明は、ソフトウェア的にマッチトフィルタの演算を行う代わりに、高速フーリエ変換(FFT)および逆高速フーリエ変換(IFFT)の演算を行うことにより演算量を減らし、DSPなどを用いたソフトウェア的な逆拡散処理(相関検出処理)を可能にし、基地局2の「ソフトラジオ化」を可能にした。
また、本発明は、FFT・IFFTのさらなる高速化、および、セルの半径に応じたFFT・IFFTのサイズなどの最適化により、逆拡散処理に要する時間を短くし、ソフトウェア的な逆拡散処理の実現を容易にしている。
本発明は、ソフトウェア的にマッチトフィルタの演算を行う代わりに、高速フーリエ変換(FFT)および逆高速フーリエ変換(IFFT)の演算を行うことにより演算量を減らし、DSPなどを用いたソフトウェア的な逆拡散処理(相関検出処理)を可能にし、基地局2の「ソフトラジオ化」を可能にした。
また、本発明は、FFT・IFFTのさらなる高速化、および、セルの半径に応じたFFT・IFFTのサイズなどの最適化により、逆拡散処理に要する時間を短くし、ソフトウェア的な逆拡散処理の実現を容易にしている。
[FFTを用いた逆拡散処理]
まず、FFT・IFFTによる逆拡散処理について説明する。
マッチトフィルタを用いて行う逆拡散処理は、下式1により表される。
なお、下式1において、nは、chipまたはサンプルを示し、mは、受信データとコードとのタイミング差を示し、ymは、逆拡散結果を示し、χnは、受信データを示し、γn+mは、拡散コードの共役をとった数を示す。
まず、FFT・IFFTによる逆拡散処理について説明する。
マッチトフィルタを用いて行う逆拡散処理は、下式1により表される。
なお、下式1において、nは、chipまたはサンプルを示し、mは、受信データとコードとのタイミング差を示し、ymは、逆拡散結果を示し、χnは、受信データを示し、γn+mは、拡散コードの共役をとった数を示す。
ym=Σχnγn+m・・・(式1)、但し、Σはn=0〜N−1までの総和を示す。
これに対し、式1に示したyn,χn,γnをFFT処理した値を、それぞれYk,Χk,Vkと表すと、FFT処理における畳み込み演算は、下式2に示すように、単純なかけ算になる。
なお、下式2は、上式1を一般化したものであって、下式2におけるn,kは、ある特定の値を示さない。
なお、下式2は、上式1を一般化したものであって、下式2におけるn,kは、ある特定の値を示さない。
Yk=Χk×Vk・・・(式2)
式2に示したYkをIFFT処理することにより、式1に示したymを求めることができる。
受信信号を逆拡散処理して電力化し、時間軸上にプロットすると、遅延プロファイルが得られる。
なお、上記「電力化」とは、電圧で検出された信号を、相互に90°位相が異なるI,Qの2つの信号とし、電力の次元のI2+Q2を求めることを意味する。
W−CDMA方式においては、遅延を受けた信号波を有効に利用するためにRAKE合成が行われ、このRAKE合成のためには、プリアンブル(例えば、ランダムアクセスチャネル(RACH)のRACHプリアンブル)から得られる遅延プロファイルが用いられる。
以上の説明したように、RACHプリアンブルを逆拡散処理して遅延プロファイルを得るためには、RACHの受信信号をFFT処理して得られるFFT結果と、RACHプリアンブルのコードをFFTして得られるFFT結果とを乗算し、さらに、IFFT処理すればよい。
なお、上記「電力化」とは、電圧で検出された信号を、相互に90°位相が異なるI,Qの2つの信号とし、電力の次元のI2+Q2を求めることを意味する。
W−CDMA方式においては、遅延を受けた信号波を有効に利用するためにRAKE合成が行われ、このRAKE合成のためには、プリアンブル(例えば、ランダムアクセスチャネル(RACH)のRACHプリアンブル)から得られる遅延プロファイルが用いられる。
以上の説明したように、RACHプリアンブルを逆拡散処理して遅延プロファイルを得るためには、RACHの受信信号をFFT処理して得られるFFT結果と、RACHプリアンブルのコードをFFTして得られるFFT結果とを乗算し、さらに、IFFT処理すればよい。
このように、マッチトフィルタをFFT・IFFTに置換すると、逆拡散処理の演算量を、数十分の一〜数百分の1(タップ数などにより異なる)とすることができ、DSPを用いたソフトウェア的な逆拡散処理が実現可能となる。
以下の説明においては、W−CDMA方式のRACHプリアンブルの検出を行う場合を具体例とする。
以下の説明においては、W−CDMA方式のRACHプリアンブルの検出を行う場合を具体例とする。
[FFT・IFFTの高速化]
以上説明したように、FFT・IFFT処理を用いることにより、ソフトウェア的な逆拡散処理が可能になる。
しかしながら、さらに、FFT・IFFT処理の高速化を図ることができれば、ハードウェアに要求される性能を軽減することができ、より、システム構成に柔軟性を持たせることができる。
ここでは、本発明におけるFFT・IFFTの高速化の手法を説明する。
以上説明したように、FFT・IFFT処理を用いることにより、ソフトウェア的な逆拡散処理が可能になる。
しかしながら、さらに、FFT・IFFT処理の高速化を図ることができれば、ハードウェアに要求される性能を軽減することができ、より、システム構成に柔軟性を持たせることができる。
ここでは、本発明におけるFFT・IFFTの高速化の手法を説明する。
図2は、一般的なFFT処理を示すフローチャートである。
図3は、一般的なFFT処理におけるデータの並びの変遷を示す変遷図である。
本発明にかかるFFT処理の基数は4に限定されず、また、段数も3に限定されないが、図示および説明の簡略化・具体化のために、以下の説明においては、基数4、3段のバタフライ演算を行うFFT・IFFT処理を具体例とする。
図3は、一般的なFFT処理におけるデータの並びの変遷を示す変遷図である。
本発明にかかるFFT処理の基数は4に限定されず、また、段数も3に限定されないが、図示および説明の簡略化・具体化のために、以下の説明においては、基数4、3段のバタフライ演算を行うFFT・IFFT処理を具体例とする。
図2に示すように、一般的なFFT処理においては、まず、ビットリバース処理が実行されて、処理の対象となる時間領域の入力データが並び替えられる。
並び替えられた入力データに対して、3段のバタフライ演算が実行され、図3に示すように、この結果として得られる周波数領域の出力データは、正しい順番になる。
しかしながら、一般的なFFT処理においては、データの並びの変遷が複雑なので、DSPのレジスタ〜メモリ間のデータ転送は1ワード単位で行われなければならない。
並び替えられた入力データに対して、3段のバタフライ演算が実行され、図3に示すように、この結果として得られる周波数領域の出力データは、正しい順番になる。
しかしながら、一般的なFFT処理においては、データの並びの変遷が複雑なので、DSPのレジスタ〜メモリ間のデータ転送は1ワード単位で行われなければならない。
図4は、本発明にかかるFFT処理を示す図である。
図5は、基数4のバタフライ演算を示す図である。
図6は、本発明にかかるFFT処理におけるデータの並びの変遷を示す変遷図である。
図4に示すように、FFT処理における演算は、時間領域におけるビットを、図5に示すバタフライ演算により、周波数領域におけるビットに置き換えてゆく処理である。
ここで、DSPによる処理の特性として、メモリ〜DSPのレジスタ間で、1ワード単位のデータ転送を行うよりも、これらの間で、バタフライ演算の単位である4ワード単位のデータ転送を行う方が、全体として処理時間を大幅に短くすることができる。
図5は、基数4のバタフライ演算を示す図である。
図6は、本発明にかかるFFT処理におけるデータの並びの変遷を示す変遷図である。
図4に示すように、FFT処理における演算は、時間領域におけるビットを、図5に示すバタフライ演算により、周波数領域におけるビットに置き換えてゆく処理である。
ここで、DSPによる処理の特性として、メモリ〜DSPのレジスタ間で、1ワード単位のデータ転送を行うよりも、これらの間で、バタフライ演算の単位である4ワード単位のデータ転送を行う方が、全体として処理時間を大幅に短くすることができる。
基数4のFFT処理においては、64個の記憶領域に記憶された64個のデータに対して3段のバタフライ演算が行われる。
上記64個の記憶領域が16個ずつ4つの領域に分けて用いられ、1段目および2段目のバタフライ演算の4つの結果それぞれは、これら4つの領域において、4個ずつ離れた記憶領域に記憶される。
上記64個の記憶領域が16個ずつ4つの領域に分けて用いられ、1段目および2段目のバタフライ演算の4つの結果それぞれは、これら4つの領域において、4個ずつ離れた記憶領域に記憶される。
また、最終段(ここで示す例においては3段目)のバタフライ演算の結果は、LSBが入れ替えられずに並び替えられる。
つまり、最終段(3段目)のバタフライ演算の結果は、最下位ビットを除くビットでの展開になっている。
このように、バタフライ演算の結果を並び替えることにより、FFT・IFFT処理におけるビットリバース処理を省略することができ、しかも、バタフライ演算において、メモリ〜DSPのレジスタ間のデータ転送を、1ワード単位ではなく、4ワード単位で行うことができるので、FFT・IFFT処理に要する時間が大幅(数分の1)に短くなる。
つまり、最終段(3段目)のバタフライ演算の結果は、最下位ビットを除くビットでの展開になっている。
このように、バタフライ演算の結果を並び替えることにより、FFT・IFFT処理におけるビットリバース処理を省略することができ、しかも、バタフライ演算において、メモリ〜DSPのレジスタ間のデータ転送を、1ワード単位ではなく、4ワード単位で行うことができるので、FFT・IFFT処理に要する時間が大幅(数分の1)に短くなる。
なお、例えば、基数2のFFT処理に、本発明にかかるFFT処理・IFFT処理の高速化を適用する場合には、記憶領域を2分割して、2つのバタフライ演算結果それぞれが、2つの記憶領域それぞれにおいて、2つずつ離れた領域記憶されるようにすればよい。
また、例えば、基数8のFFT処理に、本発明にかかるFFT処理・IFFT処理の高速化を適用する場合には、記憶領域を8分割して、8つのバタフライ演算結果それぞれが、8つの記憶領域それぞれにおいて、8つずつ離れた領域記憶されるようにすればよい。
また、例えば、基数8のFFT処理に、本発明にかかるFFT処理・IFFT処理の高速化を適用する場合には、記憶領域を8分割して、8つのバタフライ演算結果それぞれが、8つの記憶領域それぞれにおいて、8つずつ離れた領域記憶されるようにすればよい。
具体的には、基数4のFFT処理における3段のバタフライ演算に先だって、処理の対象となる64個の入力データD(0)〜D(63)それぞれは、下式3に示す順序で64個の記憶領域M(0)〜M(63)それぞれに記憶される。
D(I)→R(MN-1([I/M0]modM)+MN-2([I/M1]modM)+...+M0([I/MN-1]modM)・・・(式3)、但し、N=1,2,3・・・、基数4のFFTの場合、M=4、I=0〜MN−1であって、[X]はXを超えない整数、YmodZは整数Yの整数Zに対する剰余系である(以下同じ)。
また、基数4のFFT処理における1段目および2段目のバタフライ演算それぞれの4つの結果R(0)〜R(3),・・・,R(60)〜R(63)それぞれは、下式4に示す順序で64個のメモリ領域0〜63に記憶される。
B(MJ+H)→R(MN-1H+MN-2([J/M1]modM)+・・・+M0([J/MN-1]modM))・・・(式4)、但し、基数4のFFTの場合、J=0〜MN-1−1、H=0〜3である(以下同じ)。
また、基数4のFFT処理における最終段(3段目)のバタフライ演算それぞれの4つの結果R(0)〜R(3),・・・,R(60)〜R(63)それぞれは、下式5に示す順序で64個のメモリ領域R(0)〜R(63)に記憶される。
B(MJ+H)→R(MN-1([J/M1]modM)+...+M0([J/MN-1]modM)+H)・・・(式5)
また、基数4のIFFT処理における3段のバタフライ演算に先だって、処理の対象となる64個の入力データD(0)〜D(63)それぞれは、下式6に示す順序に並び替えられ、64個の記憶領域R(0)〜R(63)それぞれに記憶される。
なお、下に述べる実施例においては、FFT結果の並び順が、IFFT処理の対象となるデータの並び順に適合しているので、この並び替えは行われない。
つまり、式5に示した処理が行われる場合には、下式6に示す処理は省略される。
なお、下に述べる実施例においては、FFT結果の並び順が、IFFT処理の対象となるデータの並び順に適合しているので、この並び替えは行われない。
つまり、式5に示した処理が行われる場合には、下式6に示す処理は省略される。
D(I)→R(MN-1({I/M0]modM)+MN-2([I/M1]modM)+...+M0([I/MN-1]modM)・・・(式6)
また、基数4のIFFT処理における1段目〜最終段(3段目)のバタフライ演算それぞれの4つの結果B(0)〜B(3),・・・,B(60)〜B(63)それぞれは、下式7に示す順序で64個のメモリ領域0〜63に記憶される。
D(NJ+H)→R(MN-1H+MN-2([J/M1]modM)+...M0([J/MN-1]modM))・・・(式7)
[実施例]
以下、FFT・IFFTを用いた逆拡散処理、および、FFT・IFFTの高速化を説明する。
図7は、図1に示した基地局2のハードウェアおよびソフトウェア構成を示す図である。
図7に示すように、移動体通信システム1(図1)の基地局2は、受信部20および送信部210を含む。
受信部20は、受信回路200、アナログ/デジタル変換回路(A/D)202、遅延プロファイル検出部22、データ復号部250および遅延プロファイル算出制御部260から構成される。
以下、FFT・IFFTを用いた逆拡散処理、および、FFT・IFFTの高速化を説明する。
図7は、図1に示した基地局2のハードウェアおよびソフトウェア構成を示す図である。
図7に示すように、移動体通信システム1(図1)の基地局2は、受信部20および送信部210を含む。
受信部20は、受信回路200、アナログ/デジタル変換回路(A/D)202、遅延プロファイル検出部22、データ復号部250および遅延プロファイル算出制御部260から構成される。
図8は、図7に示した受信部20のハードウェア構成を示す図である。
なお、遅延プロファイル検出部22(図7)および遅延プロファイル算出制御部260は、例えば、受信部20のDSP回路26(図8)のROM264に記憶され、DSP262により実行されるソフトウェアとして実現される。
また、受信回路200、A/D202およびデータ復号部250は、専用のハードウェアおよびDSP回路26により実行されるソフトウェアまたはこれらのいずれかにより、適宜、実現される。
なお、遅延プロファイル検出部22(図7)および遅延プロファイル算出制御部260は、例えば、受信部20のDSP回路26(図8)のROM264に記憶され、DSP262により実行されるソフトウェアとして実現される。
また、受信回路200、A/D202およびデータ復号部250は、専用のハードウェアおよびDSP回路26により実行されるソフトウェアまたはこれらのいずれかにより、適宜、実現される。
遅延プロファイル検出部22は、第1の高速フーリエ変換部(FFT部)3−1、逆高速フーリエ変換部(IFFT部)4、乗算部220およびコード発生部24から構成される。
コード発生部24は、単にRACHプリアンブルのコードをFFT処理して得られるFFT結果を、ROM264またはRAM266に記憶することにより実現してもよいが、以下の説明においては、RACHコード記憶部240および第2のFFT部3−2を含む場合を具体例とする。
遅延プロファイル検出部22の各構成部分は、例えば、それぞれ独立したソフトウェアモジュールとして作成され、必要に応じて、適宜、追加あるいは削除されうるようになっており、OS(図示せず)などにより、任意のタイミングで起動されうる。
コード発生部24は、単にRACHプリアンブルのコードをFFT処理して得られるFFT結果を、ROM264またはRAM266に記憶することにより実現してもよいが、以下の説明においては、RACHコード記憶部240および第2のFFT部3−2を含む場合を具体例とする。
遅延プロファイル検出部22の各構成部分は、例えば、それぞれ独立したソフトウェアモジュールとして作成され、必要に応じて、適宜、追加あるいは削除されうるようになっており、OS(図示せず)などにより、任意のタイミングで起動されうる。
[送信部210]
送信部210(図7)は、ネットワーク10(図1)などから供給される送信データを送信する。
送信部210(図7)は、ネットワーク10(図1)などから供給される送信データを送信する。
[受信回路200]
受信回路200(図7,図8)は、移動局12から信号を受信し、ベースバンドの信号に復調してA/D202に対して出力する。
受信回路200(図7,図8)は、移動局12から信号を受信し、ベースバンドの信号に復調してA/D202に対して出力する。
[遅延プロファイル算出制御部260]
遅延プロファイル算出制御部260は、A/D202におけるサンプリングレート、および、遅延プロファイル検出部22によるFFT・IFFT処理のサイズ、符号長などを設定し、遅延プロファイル算出処理を制御する。
なお、遅延プロファイル算出制御部260の制御の詳細は、図13以下を参照して後述する。
遅延プロファイル算出制御部260は、A/D202におけるサンプリングレート、および、遅延プロファイル検出部22によるFFT・IFFT処理のサイズ、符号長などを設定し、遅延プロファイル算出処理を制御する。
なお、遅延プロファイル算出制御部260の制御の詳細は、図13以下を参照して後述する。
[A/D202]
A/D202は、遅延プロファイル算出制御部260の制御に従って、受信回路200から入力されたアナログ形式のベースバンド信号を、オーバーサンプリングし、あるいは、オーバーサンプリングせずにデジタル形式の受信データに変換し、遅延プロファイル検出部22のFFT部3−1およびデータ復号部250に対して出力する。
A/D202は、遅延プロファイル算出制御部260の制御に従って、受信回路200から入力されたアナログ形式のベースバンド信号を、オーバーサンプリングし、あるいは、オーバーサンプリングせずにデジタル形式の受信データに変換し、遅延プロファイル検出部22のFFT部3−1およびデータ復号部250に対して出力する。
[データ復号部250]
データ復号部250は、遅延プロファイル検出部22から入力される遅延プロファイルを用いて受信データを復号し、復号データとしてネットワーク10(図1)などに対して出力する。
データ復号部250は、遅延プロファイル検出部22から入力される遅延プロファイルを用いて受信データを復号し、復号データとしてネットワーク10(図1)などに対して出力する。
[遅延プロファイル検出部22]
遅延プロファイル検出部22は、遅延プロファイル算出制御部260の制御に従って、A/D202から入力される受信データに含まれるRACHのRACHプリアンブルを、図2〜6を参照して上述したように、FFT・IFFT処理を用いて逆拡散し、遅延プロファイルを生成してデータ復号部250に対して出力する。
以下、遅延プロファイル検出部22の各構成部分をさらに説明する。
遅延プロファイル検出部22は、遅延プロファイル算出制御部260の制御に従って、A/D202から入力される受信データに含まれるRACHのRACHプリアンブルを、図2〜6を参照して上述したように、FFT・IFFT処理を用いて逆拡散し、遅延プロファイルを生成してデータ復号部250に対して出力する。
以下、遅延プロファイル検出部22の各構成部分をさらに説明する。
[FFT部3−1]
図9は、図7に示した第1のFFT部3−1の処理およびデータの並びの変遷を示す図である。
FFT部3−1のFFTサイズは、遅延プロファイル算出制御部260の設定に応じて様々な値を採りうるが、ここでは、説明の具体化および明確化のために、FFT部3−1のFFTサイズが64である場合を具体例として説明する。
第1のFFT部3−1は、A/D202から入力される64ポイントの受信データに対して、順次、基数4・3段のバタフライ演算を実行してFFT変換処理を行い、FFT変換処理の結果として得られたFFT結果Aを、乗算部220に対して出力する。
以下、FFT部3−1の処理を段階ごとに、さらに詳しく説明する。
図9は、図7に示した第1のFFT部3−1の処理およびデータの並びの変遷を示す図である。
FFT部3−1のFFTサイズは、遅延プロファイル算出制御部260の設定に応じて様々な値を採りうるが、ここでは、説明の具体化および明確化のために、FFT部3−1のFFTサイズが64である場合を具体例として説明する。
第1のFFT部3−1は、A/D202から入力される64ポイントの受信データに対して、順次、基数4・3段のバタフライ演算を実行してFFT変換処理を行い、FFT変換処理の結果として得られたFFT結果Aを、乗算部220に対して出力する。
以下、FFT部3−1の処理を段階ごとに、さらに詳しく説明する。
[受信データの記憶]
遅延プロファイル検出部22において、FFT部3−1は、A/D202から入力された64ポイントの受信データD(I;I=0〜63)を、式3を参照して上述した順番で、RAM266(図8)に受信データD(I)の数に応じて64個、連続した領域に設けられた記憶領域R(I’;I’=0〜63)に記憶する。
つまり、FFT部3−1は、受信データD(0)〜D(63)それぞれを、図9の左端に示すように、記憶領域R(0),R(16),R(32),R(48),R(1),・・・R(63)に記憶する。
この受信データ記憶処理により、受信データD(I)の順番は、図9の左端に示す通り、「ねじれた」状態になる。
以下、説明を具体化・明確化のために、FFT部3−1が処理するデータそれぞれが、DSP262にとって1ワードである場合を説明する。
遅延プロファイル検出部22において、FFT部3−1は、A/D202から入力された64ポイントの受信データD(I;I=0〜63)を、式3を参照して上述した順番で、RAM266(図8)に受信データD(I)の数に応じて64個、連続した領域に設けられた記憶領域R(I’;I’=0〜63)に記憶する。
つまり、FFT部3−1は、受信データD(0)〜D(63)それぞれを、図9の左端に示すように、記憶領域R(0),R(16),R(32),R(48),R(1),・・・R(63)に記憶する。
この受信データ記憶処理により、受信データD(I)の順番は、図9の左端に示す通り、「ねじれた」状態になる。
以下、説明を具体化・明確化のために、FFT部3−1が処理するデータそれぞれが、DSP262にとって1ワードである場合を説明する。
[第1段目のバタフライ演算]
図9の左端〜左から2番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R(0)〜R(3),R(4)〜R(7),・・・,R(60)〜R(63)それぞれに記憶された16×4個の受信データ[D(0),D(16),D(32),D(48)],[D(4),D(20),D(36),D(52)],・・・,[D(15),D(31),D(47),D(63)]それぞれを、4ワード単位で一度に読み出す。
図9の左端〜左から2番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R(0)〜R(3),R(4)〜R(7),・・・,R(60)〜R(63)それぞれに記憶された16×4個の受信データ[D(0),D(16),D(32),D(48)],[D(4),D(20),D(36),D(52)],・・・,[D(15),D(31),D(47),D(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図9の左端〜左から2番目の間に示したように、FFT部3−1は、読み出した16×4個の受信データ[D(0),D(16),D(32),D(48)],[D(4),D(20),D(36),D(52)],・・・,[D(15),D(31),D(47),D(63)]に対して、図5に示した第1段目のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)]それぞれを得る。
さらに、FFT部3−1は、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、式4を参照して上述した順番で、RAM266に設けられた64個の記憶領域R’(0)〜R’(63)それぞれに記憶する。
つまり、図9の2番目の間に示すように、FFT部3−1は、図9の左端〜左から2番目の間に示したように、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、記憶領域[R’(0),R’(16),R’(32),R’(48)],[R’(4),R’(20),R’(36),R’(52)],・・・,[R’(15),R’(31),R’(47),R’(63)]に記憶する。
つまり、図9の2番目の間に示すように、FFT部3−1は、図9の左端〜左から2番目の間に示したように、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、記憶領域[R’(0),R’(16),R’(32),R’(48)],[R’(4),R’(20),R’(36),R’(52)],・・・,[R’(15),R’(31),R’(47),R’(63)]に記憶する。
[第2段目のバタフライ演算]
図9の左から2〜3番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R’(0)〜R’(3),R’(4)〜R’(7),・・・,R’(60)〜R’(63)それぞれに記憶された16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]それぞれを、4ワード単位で一度に読み出す。
図9の左から2〜3番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R’(0)〜R’(3),R’(4)〜R’(7),・・・,R’(60)〜R’(63)それぞれに記憶された16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図9の左から2〜3番目の間に示したように、FFT部3−1は、読み出した16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]に対して、図5に示した第2段目のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)]それぞれを得る。
さらに、FFT部3−1は、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、式4を参照して上述した順番で、RAM266に設けられた64個の記憶領域R”(0)〜R”(63)それぞれに記憶する。
つまり、図9の左から2番目の間に示すように、FFT部3−1は、図9の左から3番目に示すように、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、記憶領域[R”(0),R”(16),R”(32),R”(48)],[R”(4),R”(20),R”(36),R”(52)],・・・,[R”(15),R”(31),R”(47),R”(63)]に記憶する。
つまり、図9の左から2番目の間に示すように、FFT部3−1は、図9の左から3番目に示すように、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、記憶領域[R”(0),R”(16),R”(32),R”(48)],[R”(4),R”(20),R”(36),R”(52)],・・・,[R”(15),R”(31),R”(47),R”(63)]に記憶する。
[最終段(第3段目)のバタフライ演算]
図9の左から3〜4番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R”(0)〜R”(3),R”(4)〜R”(7),・・・,R”(60)〜R”(63)それぞれに記憶された16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]それぞれを、4ワード単位で一度に読み出す。
図9の左から3〜4番目の間に示すように、FFT部3−1は、RAM266の連続する16×4個の記憶領域R”(0)〜R”(3),R”(4)〜R”(7),・・・,R”(60)〜R”(63)それぞれに記憶された16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図9の左から3番目〜4番目の間に示したように、FFT部3−1は、読み出した16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]に対して、図5に示した最終段(第3段目)のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)]それぞれを得る。
さらに、FFT部3−1は、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、式5を参照して上述した順番で、RAM266に設けられた64個の記憶領域R"'(0)〜R"'(63)それぞれに記憶する。
つまり、図9の左から4番目に示すように、FFT部3−1は、図9の左3〜4番目の間に示したように、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、記憶領域[R"'(0)〜B(3)],[R"'(16)〜(20),・・・,[R"'(60)〜R"'(63)]に記憶する。
このように、最終段(第3段目)のバタフライ演算の結果のみ、第2段目および最終段(第3段目)のバタフライ演算の結果とは異なる並び順でRAM266に記憶される理由は、FFT部3−1が出力するFFT結果の並び順を、IFFT部4の入力データとしての並び順に適合させるためである。
つまり、図9の左から4番目に示すように、FFT部3−1は、図9の左3〜4番目の間に示したように、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、記憶領域[R"'(0)〜B(3)],[R"'(16)〜(20),・・・,[R"'(60)〜R"'(63)]に記憶する。
このように、最終段(第3段目)のバタフライ演算の結果のみ、第2段目および最終段(第3段目)のバタフライ演算の結果とは異なる並び順でRAM266に記憶される理由は、FFT部3−1が出力するFFT結果の並び順を、IFFT部4の入力データとしての並び順に適合させるためである。
さらに、図10を参照して、第1のFFT部3−1(図7)による第1〜3段目(最終段)のバタフライ演算処理(図9)を説明する。
図10は、第1のFFT部3−1(図7)による第1〜3段目(最終段)のバタフライ演算処理(S10)を示すフローチャートである。
図10に示すように、図9の左端に示した受信データの記憶処理が終わると、ステップ100−1(S100−1)において、FFT部3−1は、第1段目のバタフライ演算を行う。
図10は、第1のFFT部3−1(図7)による第1〜3段目(最終段)のバタフライ演算処理(S10)を示すフローチャートである。
図10に示すように、図9の左端に示した受信データの記憶処理が終わると、ステップ100−1(S100−1)において、FFT部3−1は、第1段目のバタフライ演算を行う。
ステップ102(S102)において、FFT部3−1(図7)の処理を実行中のDSP262(図8)は、RAM266の連続した4ワードの記憶領域に記憶された受信データD(I)を、4ワード単位でレジスタに転送する。
ステップ104(S104)において、DSP262は、図5に示したバタフライ演算を行う。
ステップ106(S106)において、DSP262は、図9の左端〜左から2番目の間に示したように、バタフライ演算結果を、4ワード単位でレジスタからRAM266の記憶領域に転送し、記憶させる。
この4ワード単位の転送は、複数のバタフライ演算を同時に行うことにより、あるいは、結果をDSP262のレジスタにストックしておくことにより実現される。
この4ワード単位の転送は、複数のバタフライ演算を同時に行うことにより、あるいは、結果をDSP262のレジスタにストックしておくことにより実現される。
ステップ108(S108)において、DSP262は、受信データの全てのポイントについてS102〜S106の処理が終了したか否かを判断し、処理が終了した場合には次段のバタフライ演算処理に進み、これ以外の場合にはS102の処理に戻る。
ステップ100−2(S100−2)において、DSP262は、S100−1の処理と同様に、第2段目のバタフライ演算処理を行う。
、ステップ100−3(S100−3)において、DSP262は、最終段(第3段目)のバタフライ演算を行う。
ステップ112(S112)において、DSP262(図8)は、S102の処理においてと同様に、第2段目のバタフライ演算の結果B’を、4ワード単位でレジスタに転送する。
ステップ114(S114)において、DSP262は、S104の処理においてと同様に、図5に示したバタフライ演算を行う。
ステップ116(S116)において、DSP262は、図9の左から3〜4番目の間に示したように、バタフライ演算結果を、式5を参照して上述したように、4ワード単位でレジスタからRAM266の記憶領域に転送し、記憶させる。
ステップ118(S118)において、DSP262は、S108の処理においてと同様に、受信データの全てのポイントについてS102〜S106の処理が終了したか否かを判断し、処理が終了した場合には処理を終了し、これ以外の場合にはS112の処理に戻る。
[コード発生部24]
コード発生部24において、RACHコード記憶部240は、RACHプリアンブルのコードを記憶し、遅延プロファイル算出制御部260により設定された符号長のRACHプリアンブルのコードを、FFT部3−2に対して出力する。
FFT部3−2は、RACHコード記憶部240から入力されたRACHプリアンブルのコードをFFT処理し、FFT結果Bとして乗算部220に対して出力する。
コード発生部24において、RACHコード記憶部240は、RACHプリアンブルのコードを記憶し、遅延プロファイル算出制御部260により設定された符号長のRACHプリアンブルのコードを、FFT部3−2に対して出力する。
FFT部3−2は、RACHコード記憶部240から入力されたRACHプリアンブルのコードをFFT処理し、FFT結果Bとして乗算部220に対して出力する。
[乗算部220]
乗算部220は、FFT部3−1およびコード発生部24から入力されたFFT結果AとFFT結果Bとを乗算し、乗算結果として得られるをIFFT部4に対して出力する。
つまり、乗算部220は、FFT結果AとFFT結果Bとを乗算することにより、式2を参照して上述した畳み込み演算を実現する。
乗算部220は、FFT部3−1およびコード発生部24から入力されたFFT結果AとFFT結果Bとを乗算し、乗算結果として得られるをIFFT部4に対して出力する。
つまり、乗算部220は、FFT結果AとFFT結果Bとを乗算することにより、式2を参照して上述した畳み込み演算を実現する。
[IFFT部4]
図11は、図7に示した第1のIFFT部4の処理およびデータの並びの変遷を示す図である。
IFFT部4も、FFT部3と同様に、遅延プロファイル算出制御部260による設定に応じて様々なIFFTサイズを採りうるが、説明の具体化および明確化のために、ここでは、IFFTサイズが64ポイントの場合を説明する。
第1のIFFT部4は、乗算部220から入力される64ポイントの乗算結果に対して、順次、基数4・3段のバタフライ演算を実行してIFFT変換処理を行い、IFFT変換処理の結果として得られた遅延プロファイルを、データ復号部250に対して出力する。
図11は、図7に示した第1のIFFT部4の処理およびデータの並びの変遷を示す図である。
IFFT部4も、FFT部3と同様に、遅延プロファイル算出制御部260による設定に応じて様々なIFFTサイズを採りうるが、説明の具体化および明確化のために、ここでは、IFFTサイズが64ポイントの場合を説明する。
第1のIFFT部4は、乗算部220から入力される64ポイントの乗算結果に対して、順次、基数4・3段のバタフライ演算を実行してIFFT変換処理を行い、IFFT変換処理の結果として得られた遅延プロファイルを、データ復号部250に対して出力する。
以下、IFFT部4の処理を段階ごとに、さらに詳しく説明する。
上述したように、FFT部3−1,3−2(図7)が出力するFFT結果AおよびFFT結果Bの並び順(図9の左から4番目(右端))と、IFFT部4に入力されるデータの並び順(図11左端)と同じである。
従って、遅延プロファイル検出部22においては、式6を参照して上述したIFFT部4のデータの並び替え処理は、FFT部3−1,3−2によるS116(図10)で代用されている。
従って、IFFT部4においては、FFT部3−1,3−2の処理におけるような、データの並び替えは必要とされない。
上述したように、FFT部3−1,3−2(図7)が出力するFFT結果AおよびFFT結果Bの並び順(図9の左から4番目(右端))と、IFFT部4に入力されるデータの並び順(図11左端)と同じである。
従って、遅延プロファイル検出部22においては、式6を参照して上述したIFFT部4のデータの並び替え処理は、FFT部3−1,3−2によるS116(図10)で代用されている。
従って、IFFT部4においては、FFT部3−1,3−2の処理におけるような、データの並び替えは必要とされない。
[第1段目のバタフライ演算]
図11の左端〜左から2番目の間に示すように、IFFT部4は、乗算部220から入力される16×4個の乗算結果データ[P(0),P(16),P(32),P(48)],[P(4),P(20),P(36),P(52)],・・・,[P(15),P(31),P(47),P(63)]それぞれを、4ワード単位で一度に読み出す。
図11の左端〜左から2番目の間に示すように、IFFT部4は、乗算部220から入力される16×4個の乗算結果データ[P(0),P(16),P(32),P(48)],[P(4),P(20),P(36),P(52)],・・・,[P(15),P(31),P(47),P(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図11の左端〜左から2番目の間に示したように、IFFT部4は、読み出した16×4個の受信データ[P(0),P(16),P(32),P(48)],[P(4),P(20),P(36),P(52)],・・・,[P(15),P(31),P(47),P(63)]に対して、図5に示した第1段目のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)]それぞれを得る。
さらに、IFFT部4は、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、式7を参照して上述した順番で、RAM266に設けられた64個の記憶領域R’(0)〜R’(63)それぞれに記憶する。
つまり、図11の2番目の間に示すように、IFFT部4は、図11の左端〜左から2番目の間に示したように、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、記憶領域[R’(0),R’(16),R’(32),R’(48)],[R’(4),R’(20),R’(36),R’(52)],・・・,[R’(15),R’(31),R’(47),R’(63)]に記憶する。
つまり、図11の2番目の間に示すように、IFFT部4は、図11の左端〜左から2番目の間に示したように、16×4個の演算結果[B(0)〜B(3)],[B(4)〜B(7)],・・・,[B(60)〜B(63)それぞれを、記憶領域[R’(0),R’(16),R’(32),R’(48)],[R’(4),R’(20),R’(36),R’(52)],・・・,[R’(15),R’(31),R’(47),R’(63)]に記憶する。
[第2段目のバタフライ演算]
図11の左から2〜3番目の間に示すように、IFFT部4は、RAM266の連続する16×4個の記憶領域R’(0)〜R’(3),R’(4)〜R’(7),・・・,R’(60)〜R’(63)それぞれに記憶された16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]それぞれを、4ワード単位で一度に読み出す。
図11の左から2〜3番目の間に示すように、IFFT部4は、RAM266の連続する16×4個の記憶領域R’(0)〜R’(3),R’(4)〜R’(7),・・・,R’(60)〜R’(63)それぞれに記憶された16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図11の左から2〜3番目の間に示したように、IFFT部4は、読み出した16×4個のバタフライ演算結果[B(0),B(16),B(32),B(48)],[B(4),B(20),B(36),B(52)],・・・,[B(15),B(31),B(47),B(63)]に対して、図5に示した第2段目のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)]それぞれを得る。
さらに、IFFT部4は、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、式7を参照して上述した順番で、RAM266に設けられた64個の記憶領域R”(0)〜R”(63)それぞれに記憶する。
つまり、図11の左から2番目の間に示すように、IFFT部4は、図11の左から3番目に示すように、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、記憶領域[R”(0),R”(16),R”(32),R”(48)],[R”(4),R”(20),R”(36),R”(52)],・・・,[R”(15),R”(31),R”(47),R”(63)]に記憶する。
つまり、図11の左から2番目の間に示すように、IFFT部4は、図11の左から3番目に示すように、16×4個の演算結果[B’(0)〜B’(3)],[B’(4)〜B’(7)],・・・,[B’(60)〜B’(63)それぞれを、記憶領域[R”(0),R”(16),R”(32),R”(48)],[R”(4),R”(20),R”(36),R”(52)],・・・,[R”(15),R”(31),R”(47),R”(63)]に記憶する。
[最終段(第3段目)のバタフライ演算]
図11の左から3〜4番目の間に示すように、IFFT部4は、RAM266の連続する16×4個の記憶領域R”(0)〜R”(3),R”(4)〜R”(7),・・・,R”(60)〜R”(63)それぞれに記憶された16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]それぞれを、4ワード単位で一度に読み出す。
図11の左から3〜4番目の間に示すように、IFFT部4は、RAM266の連続する16×4個の記憶領域R”(0)〜R”(3),R”(4)〜R”(7),・・・,R”(60)〜R”(63)それぞれに記憶された16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]それぞれを、4ワード単位で一度に読み出す。
さらに、図11の左から3番目〜4番目の間に示したように、IFFT部4は、読み出した16×4個のバタフライ演算結果[B’(0),B’(16),B’(32),B’(48)],[B’(4),B’(20),B’(36),B’(52)],・・・,[B’(15),B’(31),B’(47),B’(63)]に対して、図5に示した最終段(第3段目)のバタフライ演算を行い、それぞれの演算の結果として、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)]それぞれを得る。
さらに、IFFT部4は、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、式7を参照して上述した順番で、RAM266に設けられた64個の記憶領域R"'(0)〜R"'(63)それぞれに記憶する。
つまり、図11の左から4番目に示すように、IFFT部4は、図11の左から3〜4番目の間に示したように、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、記憶領域[R"'(0),R"'(16),R"'(32),R"'(48)],[R"'(4),R"'(20),R"'(36),R"'(52)],・・・,[R"'(15),R"'(31),R"'(47),R"'(63)]に記憶する。
FFT部3−1,3−2の処理においてとは異なり、IFFT部4の処理において、最終段(第3段目)のバタフライ演算の結果を、第1段目および第2段目と同じに並び替える理由は、この並び替えにより、図11の左から4番目(右端)に示すように、IFFTの結果として得られる遅延プロファイルが正しい順番となるからである。
つまり、図11の左から4番目に示すように、IFFT部4は、図11の左から3〜4番目の間に示したように、16×4個の演算結果[B”(0)〜B”(3)],[B”(4)〜B”(7)],・・・,[B”(60)〜B”(63)それぞれを、記憶領域[R"'(0),R"'(16),R"'(32),R"'(48)],[R"'(4),R"'(20),R"'(36),R"'(52)],・・・,[R"'(15),R"'(31),R"'(47),R"'(63)]に記憶する。
FFT部3−1,3−2の処理においてとは異なり、IFFT部4の処理において、最終段(第3段目)のバタフライ演算の結果を、第1段目および第2段目と同じに並び替える理由は、この並び替えにより、図11の左から4番目(右端)に示すように、IFFTの結果として得られる遅延プロファイルが正しい順番となるからである。
さらに、図12を参照して、第1のIFFT部4(図7)による第1〜3段目(最終段)のバタフライ演算処理(図11)を説明する。
図12は、第1のIFFT部4(図7)による第1〜3段目(最終段)のバタフライ演算処理を示すフローチャートである。
図12に示すように、図11の左端に示した受信データの記憶処理が終わると、ステップ120−1(S120−1)において、S100−1(図10)の処理においてと同様に、IFFT部4は、第1段目のバタフライ演算を行う。
図12は、第1のIFFT部4(図7)による第1〜3段目(最終段)のバタフライ演算処理を示すフローチャートである。
図12に示すように、図11の左端に示した受信データの記憶処理が終わると、ステップ120−1(S120−1)において、S100−1(図10)の処理においてと同様に、IFFT部4は、第1段目のバタフライ演算を行う。
ステップ122(S122)において、S102の処理においてと同様に、IFFT部4(図7)の処理を実行中のDSP262(図8)は、RAM266の連続した4ワードの記憶領域に記憶された受信データD(I)を、4ワード単位でレジスタに転送する。
ステップ124(S124)において、S104の処理においてと同様に、DSP262は、図5に示したバタフライ演算を行う。
ステップ126(S126)において、S106の処理においてと同様に、DSP262は、図11の左端〜左から2番目の間に示したように、バタフライ演算結果を、4ワード単位でレジスタからRAM266の記憶領域に転送し、記憶させる。
この4ワード単位の転送は、S106の処理においてと同様に実現される。
この4ワード単位の転送は、S106の処理においてと同様に実現される。
ステップ128(S128)において、S108の処理においてと同様に、DSP262は、受信データの全てのポイントについてS122〜S126の処理が終了したか否かを判断し、処理が終了した場合には次段のバタフライ演算処理に進み、これ以外の場合にはS122の処理に戻る。
ステップ120−2(S120−2)において、DSP262は、S120−1の処理と同様に、第2段目のバタフライ演算処理を行う。
、ステップ120−3(S120−3)において、DSP262は、S120−1の処理と同様に、第3段目(最終段)のバタフライ演算処理を行う。
[遅延プロファイル算出の最適化]
以下、遅延プロファイル算出制御部260(図7)による遅延プロファイル算出処理の最適化について説明する。
図13は、受信データ長および符号長と拡散ゲインとの関係を例示する図であって、(A)は、受信データ長が符号長の2倍の場合の拡散ゲインを示し、(B)は、受信データ長と符号長とが同じ場合の拡散ゲインを示す。
既に述べたように、移動体通信システム1の基地局2それぞれのセル(図1)の半径に対応して、基地局2が受信する信号に遅延が生じる。
以下、遅延プロファイル算出制御部260(図7)による遅延プロファイル算出処理の最適化について説明する。
図13は、受信データ長および符号長と拡散ゲインとの関係を例示する図であって、(A)は、受信データ長が符号長の2倍の場合の拡散ゲインを示し、(B)は、受信データ長と符号長とが同じ場合の拡散ゲインを示す。
既に述べたように、移動体通信システム1の基地局2それぞれのセル(図1)の半径に対応して、基地局2が受信する信号に遅延が生じる。
従って、FFTを用いた畳み込み演算による遅延プロファイルの算出を行うときには、例えば、図13(B)に示すように、受信データ長と符号長とを同じにすると、遅延時間の影響により、拡散ゲインが低下する。
これに対して、例えば、図13(A)に示すように、符号長を受信データ長の1/2程度にすると、遅延時間の影響を排除でき、拡散ゲインが低下しない。
つまり、遅延プロファイルの算出における拡散ゲインの低下を防止するためには、符号長を受信データ長に対して充分に短くすればよい。
これに対して、例えば、図13(A)に示すように、符号長を受信データ長の1/2程度にすると、遅延時間の影響を排除でき、拡散ゲインが低下しない。
つまり、遅延プロファイルの算出における拡散ゲインの低下を防止するためには、符号長を受信データ長に対して充分に短くすればよい。
図14は、DFT(離散的フーリエ変換)において生じる近似の影響を例示する図である。
FFTは、受信データを有限の信号の繰り返しであると近似して高速にDFTを行うための手法であるが、実際には、受信データは有限の信号の繰り返しではありえないない。
従って、図13(B)に示したように、受信データ長と符号長とを同じにすると、遅延プロファイルに、DFT(FFT)処理の対象となる受信データの前後の部分の影響が生じる。
FFTは、受信データを有限の信号の繰り返しであると近似して高速にDFTを行うための手法であるが、実際には、受信データは有限の信号の繰り返しではありえないない。
従って、図13(B)に示したように、受信データ長と符号長とを同じにすると、遅延プロファイルに、DFT(FFT)処理の対象となる受信データの前後の部分の影響が生じる。
このように、DFT(FFT)が前提とする近似の影響を排除するという観点からも、FFTを用いた畳み込み演算による遅延プロファイルの算出においては、符号長および遅延プロファイルの長さを、受信データ長に対して充分に短くすることが望ましい。
つまり、基地局2それぞれのセル(図1)の半径、および、拡散利得に許容される損失量に応じて、オーバサンプリングを行うか否かと、符号長とを調整し、最も高速に遅延プロファイルを算出することができるように、FFT処理のポイント数を設定することが望ましい。
つまり、基地局2それぞれのセル(図1)の半径、および、拡散利得に許容される損失量に応じて、オーバサンプリングを行うか否かと、符号長とを調整し、最も高速に遅延プロファイルを算出することができるように、FFT処理のポイント数を設定することが望ましい。
例えば、オーバーサンプリングにより得られた受信データに対して、サイズ(ポイント数)を一定としてFFT・IFFT処理を行って得られる遅延プロファイルの長さは短くなる。
反対に、オーバーサンプリングを行なわずに得られた受信データに対して一定のサイズのFFT・IFFT処理を行うと、FFT・IFFT処理の繰り返し回数が増える。
一方、例えば、符号長を短くすると、拡散ゲインの低下(拡散損失)を小さくすることができるが、一方、元々の拡散ゲイン自体が小さくなるので、FFT・IFFTの繰り返し回数を増やす必要がある。
つまり、符号長による拡散ゲインの変化と、繰り返し回数の増減によるFFT・IFFT処理時間の変化との兼ね合いにより、遅延プロファイルの算出処理を最適化する必要がある。
反対に、オーバーサンプリングを行なわずに得られた受信データに対して一定のサイズのFFT・IFFT処理を行うと、FFT・IFFT処理の繰り返し回数が増える。
一方、例えば、符号長を短くすると、拡散ゲインの低下(拡散損失)を小さくすることができるが、一方、元々の拡散ゲイン自体が小さくなるので、FFT・IFFTの繰り返し回数を増やす必要がある。
つまり、符号長による拡散ゲインの変化と、繰り返し回数の増減によるFFT・IFFT処理時間の変化との兼ね合いにより、遅延プロファイルの算出処理を最適化する必要がある。
図15は、FFTのポイント数を1024、セル(図1)の半径を15kmとしたときの遅延プロファイルの算出における拡散損失および処理時間を例示する図であって、(A)は、オーバサンプリングを行わずに、符号長を受信データの3/4とした場合を例示し、(B)は、オーバサンプリングを行って符号長を受信データ長の1/4とした場合を例示する。
例えば、図15(A)に示すように、FFTのポイント数を1024、セル(図1)の半径を15kmし、オーバーサンプリングを行わずに符号長を受信データの3/4とすると、15km地点での拡散損失は−0.8dB程度となり、遅延プロファイルの算出処理に要する時間は0.95msとなる。
例えば、図15(A)に示すように、FFTのポイント数を1024、セル(図1)の半径を15kmし、オーバーサンプリングを行わずに符号長を受信データの3/4とすると、15km地点での拡散損失は−0.8dB程度となり、遅延プロファイルの算出処理に要する時間は0.95msとなる。
一方、例えば、図15(B)に示すように、図15(A)と同じ条件で、オーバーサンプリングを行って符号長を受信データの1/4とすると、15km地点での拡散損失は生じず(0dB)、遅延プロファイルの算出処理に要する時間は1.7msとなる。
つまり、拡散損失を−1dBまで許容できるときには、高速性を優先させて、図15(A)に示したように、オーバーサンプリングを行わずに符号長を受信データの3/4とすることにより、遅延プロファイルの算出を最適化できる。
一方、拡散損失が全く許容できないるときには、図15(B)に示したように、オーバーサンプリングを行って符号長を受信データの1/4とすることにより、遅延プロファイルの算出を最適化できる。
つまり、拡散損失を−1dBまで許容できるときには、高速性を優先させて、図15(A)に示したように、オーバーサンプリングを行わずに符号長を受信データの3/4とすることにより、遅延プロファイルの算出を最適化できる。
一方、拡散損失が全く許容できないるときには、図15(B)に示したように、オーバーサンプリングを行って符号長を受信データの1/4とすることにより、遅延プロファイルの算出を最適化できる。
[符号長の最適化]
基地局2それぞれのセル(図1)の半径に応じて、最適な符号長(パターン)が選択され、最適化される。
つまり、セルの半径より受信データに生じる遅延時間が定まり、この遅延時間に応じて、最適な長さのパターンが一意に求められる。
基地局2それぞれのセル(図1)の半径に応じて、最適な符号長(パターン)が選択され、最適化される。
つまり、セルの半径より受信データに生じる遅延時間が定まり、この遅延時間に応じて、最適な長さのパターンが一意に求められる。
[FFT・IFFTサイズの最適化]
FFT・IFFTサイズの最適化は、以下の3つの手法により行われる。
(1)遅延プロファイルの算出を、1回あるいは複数回のFFT・IFFT処理により行う。
(2)受信データ長よりも短い長さの符号を用いて遅延プロファイルを算出する。
(3)オーバーサンプリングしている点を、例えば奇数番目のサンプリング点と偶数番目のサンプリング点とに分割してFFT・IFFT処理を行う。
FFT・IFFTサイズの最適化は、以下の3つの手法により行われる。
(1)遅延プロファイルの算出を、1回あるいは複数回のFFT・IFFT処理により行う。
(2)受信データ長よりも短い長さの符号を用いて遅延プロファイルを算出する。
(3)オーバーサンプリングしている点を、例えば奇数番目のサンプリング点と偶数番目のサンプリング点とに分割してFFT・IFFT処理を行う。
まず、(1)遅延プロファイルの算出を、1回または複数回のFFT・IFFT処理により行う手法について説明する。
FFT・IFFTサイズを大きくして、全てのサンプリング点を1回のFFT・IFFT処理して遅延プロファイルを求めるよりも、FFT・IFFTサイズを小さくして、FFT・IFFT処理を複数回、繰り返して遅延プロファイルを求める方が、複数回のFFT・IFFT処理それぞれに要する時間は短くなる。
しかしながら、サイズが小さく、処理時間が短いFFT・IFFT処理を繰り返すと、サイズが大きいFFT・IFFT処理を1回、行うよりも、全体としての処理時間が長くなってしまう可能性がある。
つまり、FFT・IFFTサイズと繰り返し回数との間には、全体としての処理時間を最短にするための最適値が存在する。
FFT・IFFTサイズを大きくして、全てのサンプリング点を1回のFFT・IFFT処理して遅延プロファイルを求めるよりも、FFT・IFFTサイズを小さくして、FFT・IFFT処理を複数回、繰り返して遅延プロファイルを求める方が、複数回のFFT・IFFT処理それぞれに要する時間は短くなる。
しかしながら、サイズが小さく、処理時間が短いFFT・IFFT処理を繰り返すと、サイズが大きいFFT・IFFT処理を1回、行うよりも、全体としての処理時間が長くなってしまう可能性がある。
つまり、FFT・IFFTサイズと繰り返し回数との間には、全体としての処理時間を最短にするための最適値が存在する。
次に(2)受信データ長よりも短い長さの符号を用いて遅延プロファイルを算出する手法を説明する。
図13(B)に示したように、受信データ長と符号長とを同じにして遅延プロファイルを求めると、受信データに生じている遅延により、拡散ゲインが平坦にならない。
これに対し、図13(A)に示したように、符号長を受信データ長の1/2程度として遅延プロファイルを求めると、拡散ゲインが平坦になる。
図13(B)に示したように、受信データ長と符号長とを同じにして遅延プロファイルを求めると、受信データに生じている遅延により、拡散ゲインが平坦にならない。
これに対し、図13(A)に示したように、符号長を受信データ長の1/2程度として遅延プロファイルを求めると、拡散ゲインが平坦になる。
しかしながら、符号長を短くすると、拡散ゲイン自体が低下するので、これを補うために、サイズを小さくしたFFT・IFFT処理を複数回、繰り返す必要があるので、上記(1)について説明したように、FFT・IFFT処理に要する時間が長くなる可能性がある。
つまり、符号長に従って変化する拡散ゲインおよびその平坦さと、FFT・IFFT処理の高速性との兼ね合いにより、受信データ長に対する符号長の最適値が存在する。
つまり、符号長に従って変化する拡散ゲインおよびその平坦さと、FFT・IFFT処理の高速性との兼ね合いにより、受信データ長に対する符号長の最適値が存在する。
次に、(3)オーバーサンプリングにより得られた受信データを分割してFFT・IFFT処理する手法について説明する。
例えば、CDMA方式においては、チップレートと呼ばれる拡散周期ごとに、受信データから遅延プロファイルが算出される。
従って、原理的には、受信信号を、チップレートに従ってサンプリングして得られた受信データを処理することにより、遅延プロファイルを算出することができる。
例えば、CDMA方式においては、チップレートと呼ばれる拡散周期ごとに、受信データから遅延プロファイルが算出される。
従って、原理的には、受信信号を、チップレートに従ってサンプリングして得られた受信データを処理することにより、遅延プロファイルを算出することができる。
しかしながら、一般的には、遅延プロファイル算出のタイミングの精度を高めるために、受信信号を、チップレートより短い周期(例えば、チップレートの整数分の1の周期)でサンプリングして受信データとし、この受信データから遅延プロファイルを求める手法(オーバーサンプリング)が採られることが多い。
このオーバーサンプリングの周期は、一般的には、チップレートの1/2(2倍オーバーサンプリング)あるいは1/4(4倍オーバーサンプリング)の周期とされることが多い。
このオーバーサンプリングの周期は、一般的には、チップレートの1/2(2倍オーバーサンプリング)あるいは1/4(4倍オーバーサンプリング)の周期とされることが多い。
例えば、チップレートが、受信信号1シンボル分当たり256回の周期であるときに、2倍のオーバーサンプリングを行うと、1シンボル当たり512サンプル分の受信データが得られる。
この2倍のオーバーサンプリングにより得られた1シンボル当たり512サンプルの全てに対してFFT・IFFT処理を1回で行って遅延プロファイルを算出する場合と、偶数番目の256個のサンプルと、奇数番目の256個のサンプルとに分けて、分けたサンプルそれぞれに対してFFT・IFFT処理を2回に分けて行って遅延プロファイルを算出する場合を考える。
この2倍のオーバーサンプリングにより得られた1シンボル当たり512サンプルの全てに対してFFT・IFFT処理を1回で行って遅延プロファイルを算出する場合と、偶数番目の256個のサンプルと、奇数番目の256個のサンプルとに分けて、分けたサンプルそれぞれに対してFFT・IFFT処理を2回に分けて行って遅延プロファイルを算出する場合を考える。
この場合、前者の(FFT/IFFT処理を1シンボル当たり1回、行う)場合に比べ、後者の(FFT/IFFT処理を1シンボル当たり2回、行う)場合には、FFT・IFFTのサイズは1/2となり、1回ごとのFFT・IFFTに要する処理時間は短縮される。
一方、1回ごとのFFT・IFFTの処理時間が短くなっても、FFT・IFFTを2回の繰り返すことに伴い、後者の処理、全体としては、前者の処理よりも、却って処理時間が長くなる可能性がある。
一方、1回ごとのFFT・IFFTの処理時間が短くなっても、FFT・IFFTを2回の繰り返すことに伴い、後者の処理、全体としては、前者の処理よりも、却って処理時間が長くなる可能性がある。
具体例を挙げてさらに説明する。
図16は、FFT・IFFT処理を複数回、行い、受信データ長よりも符号長を短くして遅延プロファイルを算出する方法を例示する図である。
図17は、オーバーサンプリングして得られた受信データを2つに分割してFFT・IFFT処理して、遅延プロファイルを方法する処理を例示する図である。
例えば、図16に示すように、上記(1),(2)の手法が採用されるときには、16シンボル分の受信データに対する符号長は4シンボル分とされる。
また、16シンボル分の受信データに対する1回のFFT・IFFT処理ではなく、4シンボル分ずつの受信データに対する4回のFFT・IFFT処理により遅延プロファイルが算出される。
この手法が、例えば、基地局2のセル半径が40kmの移動体通信システム1(図1)に適応されるときには、40km以上の遅延時間に対応する遅延プロファイルを無視することにより、上述したDFT処理(FFT・IFFT処理)における近似の悪影響を排除することができる。
図16は、FFT・IFFT処理を複数回、行い、受信データ長よりも符号長を短くして遅延プロファイルを算出する方法を例示する図である。
図17は、オーバーサンプリングして得られた受信データを2つに分割してFFT・IFFT処理して、遅延プロファイルを方法する処理を例示する図である。
例えば、図16に示すように、上記(1),(2)の手法が採用されるときには、16シンボル分の受信データに対する符号長は4シンボル分とされる。
また、16シンボル分の受信データに対する1回のFFT・IFFT処理ではなく、4シンボル分ずつの受信データに対する4回のFFT・IFFT処理により遅延プロファイルが算出される。
この手法が、例えば、基地局2のセル半径が40kmの移動体通信システム1(図1)に適応されるときには、40km以上の遅延時間に対応する遅延プロファイルを無視することにより、上述したDFT処理(FFT・IFFT処理)における近似の悪影響を排除することができる。
また、例えば、例えば、図17に示すように、上記(1),(3)の手法が採用されるときには、受信信号に対して2倍のオーバーサンプリングが行われ、1シンボル分の受信データに対する符号長は1シンボル分とされる。
り遅延プロファイルが算出される。
また、2倍のオーバーサンプリングにより得られた受信データは、奇数番目と偶数番目に分けられ、2つに分けられた受信データそれぞれに対してFFT・IFFT処理が行われ、高速化が図られる。
この手法が、例えば、基地局2のセル半径が1kmの移動体通信システム1(図1)に適応されるときには、受信信号に生じた1km分の遅延により生じる相関ゲインの低下は許容範囲内なので、1km以上の遅延時間に対応する遅延プロファイルを無視することにより、上述したDFT処理(FFT・IFFT処理)における近似の悪影響を排除することができる。
り遅延プロファイルが算出される。
また、2倍のオーバーサンプリングにより得られた受信データは、奇数番目と偶数番目に分けられ、2つに分けられた受信データそれぞれに対してFFT・IFFT処理が行われ、高速化が図られる。
この手法が、例えば、基地局2のセル半径が1kmの移動体通信システム1(図1)に適応されるときには、受信信号に生じた1km分の遅延により生じる相関ゲインの低下は許容範囲内なので、1km以上の遅延時間に対応する遅延プロファイルを無視することにより、上述したDFT処理(FFT・IFFT処理)における近似の悪影響を排除することができる。
以下、遅延プロファイル算出制御部260によるFFT・IFFT処理の最適化を、フローチャートを参照してさらに説明する。
図18,図21〜図24は、それぞれ、図7に示した遅延プロファイル算出制御部260(図7)によるFFT・IFFT処理の最適化処理(S10〜S18)を示す第1〜第5のフローチャートである。
図18,図21〜図24は、それぞれ、図7に示した遅延プロファイル算出制御部260(図7)によるFFT・IFFT処理の最適化処理(S10〜S18)を示す第1〜第5のフローチャートである。
図18に示すように、遅延プロファイル算出制御部260(図7)は、ステップ100(S100)において、遅延プロファイル検出部22(図8)に設けられた入出力装置(図示せず)を介して入力され、あるいは、ROM264に記憶された状態で入力された基地局2(図1)のセルの半径P、相関処理データQ、符号長Rおよびオーバーサンプリングの倍数Sを受け入れる。
図19は、セル半径とFFT・IFFTサイズとを対応付けるFFTサイズテーブルを例示する図である。
遅延プロファイル検出部22のROM264には、図19に示すように、基地局2のセルの半径Pと、セル半径Pに応じて一意に定められたFFT・IFFTのポイント数とがテーブル形式に対応付けられたFFTサイズテーブルが記憶されている。
ステップ102,104(S102,S104)において、遅延プロファイル算出制御部260は、図19に示したFFTサイズテーブルを参照し、S100の処理により受け入れられたセル半径Pに対応するFFT・IFFTのサイズ(ポイント数)、および、FFTサイズに対応するシンボル数Tとを求める。
さらに、遅延プロファイル算出制御部260は、図21〜図24にそれぞれ示すケース1〜4の処理(S12〜S18)の内、まだ実行されていないいずれかの処理を実行する。
遅延プロファイル検出部22のROM264には、図19に示すように、基地局2のセルの半径Pと、セル半径Pに応じて一意に定められたFFT・IFFTのポイント数とがテーブル形式に対応付けられたFFTサイズテーブルが記憶されている。
ステップ102,104(S102,S104)において、遅延プロファイル算出制御部260は、図19に示したFFTサイズテーブルを参照し、S100の処理により受け入れられたセル半径Pに対応するFFT・IFFTのサイズ(ポイント数)、および、FFTサイズに対応するシンボル数Tとを求める。
さらに、遅延プロファイル算出制御部260は、図21〜図24にそれぞれ示すケース1〜4の処理(S12〜S18)の内、まだ実行されていないいずれかの処理を実行する。
ステップ110(S110)において、遅延プロファイル算出制御部260は、図21〜図24に示すケース1〜4の処理(S12〜S18)の全てを終了したか否かを判断する。
遅延プロファイル算出制御部260は、ケース1〜4の処理を終了した場合にはS112の処理に進み、これ以外の場合には、まだケース1〜4の処理(S12〜S18)の内、まだ実行されていないいずれかの処理に進む。
遅延プロファイル算出制御部260は、ケース1〜4の処理を終了した場合にはS112の処理に進み、これ以外の場合には、まだケース1〜4の処理(S12〜S18)の内、まだ実行されていないいずれかの処理に進む。
図20は、FFT・IFFTサイズと、処理量と、処理速度とを対応付けて示す処理スピードテーブルを例示する図である。
遅延プロファイル検出部22のROM264には、図20に示すように、FFT・IFFTサイズと、処理量と、処理速度とがテーブル形式に対応付けられた処理スピードテーブルが記憶されている。
なお、図20に示した処理量α〜γは、FFTサイズとは比例せず、FFTサイズの対数値に比例し、処理スピードA〜Cは、処理量α〜γに反比例する。
ステップ112(S112)において、遅延プロファイル算出制御部260は、ケース1〜4の処理(S12〜S18)により得られたケース1〜4の処理量を用いて、図20に示した処理スピードテーブルを参照し、ケース1〜4の内、最も処理スピードが早いケースを選択し、遅延プロファイルの算出処理を最適化する。
遅延プロファイル検出部22のROM264には、図20に示すように、FFT・IFFTサイズと、処理量と、処理速度とがテーブル形式に対応付けられた処理スピードテーブルが記憶されている。
なお、図20に示した処理量α〜γは、FFTサイズとは比例せず、FFTサイズの対数値に比例し、処理スピードA〜Cは、処理量α〜γに反比例する。
ステップ112(S112)において、遅延プロファイル算出制御部260は、ケース1〜4の処理(S12〜S18)により得られたケース1〜4の処理量を用いて、図20に示した処理スピードテーブルを参照し、ケース1〜4の内、最も処理スピードが早いケースを選択し、遅延プロファイルの算出処理を最適化する。
図21に示すように、ケース1の処理(S12)のステップ120〜124(S120〜S124)において、遅延プロファイル算出制御部260(図7)は、受信データ長より符号長を短くし(受信データ長>符号長)、オーバーサンプリングにより得られた受信データを分割して複数回FFT・IFFT処理することにより遅延プロファイルを求める手法(上記(1)〜(3)の全てを含む手法;図16に示した手法に対応)を仮定する。
ステップ126(S126)において、遅延プロファイル算出制御部260は、分割数Uを求める。
ステップ128(S128)において、遅延プロファイル算出制御部260は、S104(図18)の処理により、図19に示したFFTサイズテーブルから得られたシンボル数Tと、S126の処理により得られた分割数Uと、1シンボル当たりのチップ数(256チップ)との積(チップ数×U×T)と、FFT・IFFTサイズ(ポイント数)とが等しいか否かを判断する。
遅延プロファイル算出制御部260は、チップ数×U×T=FFTポイント数であるときにはS130の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
遅延プロファイル算出制御部260は、チップ数×U×T=FFTポイント数であるときにはS130の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ130(S130)において、遅延プロファイル算出制御部260は、S128の処理における条件(チップ数×U×T=FFTポイント数)を満たすFFT・IFFT処理の処理量を算出する。
つまり、拡散ゲイン取得回数(Q/T(S100,S104;図18))と、S130の処理において求められたFFTポイント数(=チップ数×U×T)とから、S120〜S124の仮定に従った遅延プロファイル算出処理(ケース1)の全処理量(=FFTポイント数×拡散ゲイン取得回数×S(S100;図18))を算出し、S10のS110の処理に戻る。
つまり、拡散ゲイン取得回数(Q/T(S100,S104;図18))と、S130の処理において求められたFFTポイント数(=チップ数×U×T)とから、S120〜S124の仮定に従った遅延プロファイル算出処理(ケース1)の全処理量(=FFTポイント数×拡散ゲイン取得回数×S(S100;図18))を算出し、S10のS110の処理に戻る。
また、図22に示すように、ステップ14(S14;ケース2)のステップ140(S140)処理において、遅延プロファイル算出制御部260(図7)は、受信データ長と符号長とを同じにし(受信データ長=符号長)、オーバーサンプリングにより得られた受信データを分割して複数回FFT・IFFT処理することにより遅延プロファイルを求める手法(上記(1),(3)を含む手法;図18に示した手法に対応)を仮定する。
ステップ142(S142)において、遅延プロファイル算出制御部260は、図21に示したS128の処理と同様に、S104(図18)の処理により得られたシンボル数Tと、1シンボル当たりのチップ数(256チップ)との積(チップ数×T)と、FFT・IFFTサイズ(ポイント数)とが等しいか否かを判断する。
遅延プロファイル算出制御部260は、チップ数×T=FFTポイント数であるときにはS144の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ144(S144)において、遅延プロファイル算出制御部260は、S142の処理における条件(チップ数×T=FFTポイント数)を満たすFFT・IFFT処理の処理量を算出する。
遅延プロファイル算出制御部260は、チップ数×T=FFTポイント数であるときにはS144の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ144(S144)において、遅延プロファイル算出制御部260は、S142の処理における条件(チップ数×T=FFTポイント数)を満たすFFT・IFFT処理の処理量を算出する。
つまり、拡散ゲイン取得回数(Q/T(S100,S104;図18))と、S130の処理において求められたFFTポイント数(=チップ数×T)とから、S120〜S124の仮定に従った遅延プロファイル算出処理(ケース2)の全処理量(=FFTポイント数×拡散ゲイン取得回数×S(S100;図18))を算出し、S10のS110の処理に戻る。
例えば、図18に示した場合においては、P=1km,Q=12シンボル、R=256チップ(1シンボル),S=2倍,T=1シンボルなので、S14の処理により、FFTポイント数=256、拡散ゲイン取得回数Q/T=12であり、従って、全処理量は256×12×2=6144と求められる。
例えば、図18に示した場合においては、P=1km,Q=12シンボル、R=256チップ(1シンボル),S=2倍,T=1シンボルなので、S14の処理により、FFTポイント数=256、拡散ゲイン取得回数Q/T=12であり、従って、全処理量は256×12×2=6144と求められる。
また、図23に示すように、ステップ16(S16;ケース3)のステップ160(S160)処理において、遅延プロファイル算出制御部260(図7)は、符号長を受信データ長より短くし(受信データ長>符号長)、オーバーサンプリングにより得られた受信データを分割せずにFFT・IFFT処理を1回実行することにより遅延プロファイルを求める手法(上記(1),(2)を含む手法;図17に示した手法に対応)を仮定する。
ステップ162(S162)において、遅延プロファイル算出制御部260は、遅延プロファイル算出制御部260は、分割数Uを求める。
ステップ164(S164)において、遅延プロファイル算出制御部260は、S104(図18)の処理により得られたシンボル数Tと、S126の処理により得られた分割数Uと、1シンボル当たりのチップ数(256チップ)との積(チップ数×U×T)と、FFT・IFFTサイズ(ポイント数)とが等しいか否かを判断する。
遅延プロファイル算出制御部260は、チップ数×U×T=FFTポイント数であるときにはS164の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
遅延プロファイル算出制御部260は、チップ数×U×T=FFTポイント数であるときにはS164の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ166(S166)において、遅延プロファイル算出制御部260は、S164の処理における条件を満たすFFT・IFFT処理の処理量を算出する。
つまり、拡散ゲイン取得回数と、S130の処理において求められたFFTポイント数とから、S160の仮定に従った遅延プロファイル算出処理(ケース3)の全処理量(=FFTポイント数×拡散ゲイン取得回数×S)を算出し、S10のS110の処理に戻る。
つまり、拡散ゲイン取得回数と、S130の処理において求められたFFTポイント数とから、S160の仮定に従った遅延プロファイル算出処理(ケース3)の全処理量(=FFTポイント数×拡散ゲイン取得回数×S)を算出し、S10のS110の処理に戻る。
つまり、図17に示した場合においては、P=40km,Q=16シンボル、R=1024チップ(4シンボルに対応),S=2倍,T=4シンボルなので、FFTサイズは4096ポイント(図19参照)であり、Uを2とすると、FFTポイント数=256×U(=2)×T(=4)×S(=2)が満たされる。
従って、拡散ゲイン取得回数=Q/T=4であり、全処理量は4096×4=16384と求められる。
従って、拡散ゲイン取得回数=Q/T=4であり、全処理量は4096×4=16384と求められる。
また、図24に示すように、ステップ18(S18;ケース4)においては、遅延プロファイル算出制御部260(図7)は、上述した(1)の手法のみを用いる場合、つまり、(2)受信データ長と符号長途を等しくし、オーバーサンプリングしている点を分割することなくFFT・IFFTする場合を仮定する。
ステップ180(S180)において、遅延プロファイル算出制御部260は、S104(図18)の処理により得られたシンボル数Tと、オーバーサンプリングの倍数Sと、1シンボル当たりのチップ数(256チップ)との積(チップ数×T×S)と、FFT・IFFTサイズ(ポイント数)とが等しいか否かを判断する。
遅延プロファイル算出制御部260は、チップ数×T×S=FFTポイント数であるときにはS182の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ180(S180)において、遅延プロファイル算出制御部260は、S104(図18)の処理により得られたシンボル数Tと、オーバーサンプリングの倍数Sと、1シンボル当たりのチップ数(256チップ)との積(チップ数×T×S)と、FFT・IFFTサイズ(ポイント数)とが等しいか否かを判断する。
遅延プロファイル算出制御部260は、チップ数×T×S=FFTポイント数であるときにはS182の処理に進み、これ以外のときにはS10のS110(図18)の処理に戻る。
ステップ182(S182)において、遅延プロファイル算出制御部260は、S142の処理における条件(チップ数×T×S=FFTポイント数)を満たすFFT・IFFT処理の処理量を算出する。
つまり、拡散ゲイン取得回数(Q/T(S100,S104;図18))と、S130の処理において求められたFFTポイント数(=チップ数×T×S)とから、遅延プロファイル算出処理(ケース4)の全処理量(=FFTポイント数×拡散ゲイン取得回数)を算出し、S10のS110の処理に戻る。
つまり、拡散ゲイン取得回数(Q/T(S100,S104;図18))と、S130の処理において求められたFFTポイント数(=チップ数×T×S)とから、遅延プロファイル算出処理(ケース4)の全処理量(=FFTポイント数×拡散ゲイン取得回数)を算出し、S10のS110の処理に戻る。
[全体動作]
以下、基地局2(図1,図7,図8)の受信部20の全体的な動作を説明する。
遅延プロファイル算出制御部260(図7)は、図13〜図24を参照して説明したように、A/D202におけるサンプリング方法、符号長、FFT部3およびIFFT部4のFFT・IFFTサイズおよびFFT・IFFT処理の態様(受信データを分割して処理するか、何回FFT・IFFT処理を行うかなど)を求めて、A/D202および遅延プロファイル検出部22に対して設定する。
基地局2の受信部20(図7,図8)の受信回路200が移動局12(図1)からのRACHプリアンブルを受信し、ベースバンド信号としてA/D202に対して出力すると、A/D202は、遅延プロファイル算出制御部260からの設定に従って、ベースバンド信号をデジタル形式の受信データに変換して遅延プロファイル検出部22に対して出力する。
以下、基地局2(図1,図7,図8)の受信部20の全体的な動作を説明する。
遅延プロファイル算出制御部260(図7)は、図13〜図24を参照して説明したように、A/D202におけるサンプリング方法、符号長、FFT部3およびIFFT部4のFFT・IFFTサイズおよびFFT・IFFT処理の態様(受信データを分割して処理するか、何回FFT・IFFT処理を行うかなど)を求めて、A/D202および遅延プロファイル検出部22に対して設定する。
基地局2の受信部20(図7,図8)の受信回路200が移動局12(図1)からのRACHプリアンブルを受信し、ベースバンド信号としてA/D202に対して出力すると、A/D202は、遅延プロファイル算出制御部260からの設定に従って、ベースバンド信号をデジタル形式の受信データに変換して遅延プロファイル検出部22に対して出力する。
遅延プロファイル検出部22において、FFT部3−1は、遅延プロファイル算出制御部260による設定に従って、受信データをFFT処理し、FFT結果Aとして乗算部220に対して出力する。
コード発生部24において、RACHコード記憶部240は、遅延プロファイル算出制御部260の設定に従った符号長で、記憶したRACHプリアンブルのコードをFFT部3−2に対して出力し、FFT部3−2は、RACHプリアンブルのコードをFFT処理し、FFT結果Bとして乗算部220に対して出力する。
コード発生部24において、RACHコード記憶部240は、遅延プロファイル算出制御部260の設定に従った符号長で、記憶したRACHプリアンブルのコードをFFT部3−2に対して出力し、FFT部3−2は、RACHプリアンブルのコードをFFT処理し、FFT結果Bとして乗算部220に対して出力する。
乗算部220は、FFT部3−1から入力されたFFT結果Aと、コード発生部24のFFT部3−2から入力されたFFT結果Bとを乗算し、乗算結果をIFFT部4に対して出力する。
IFFT部4は、遅延プロファイル算出制御部260による制御に従って、乗算部220から入力された乗算結果をIFFT処理し、遅延プロファイルとしてデータ復号部250に対して出力する。
データ復号部250は、IFFT部4から入力された遅延プロファイルを用いて、A/D202から入力された受信データを復号し、復号データとしてネットワーク10(図1)などに対して出力する。
IFFT部4は、遅延プロファイル算出制御部260による制御に従って、乗算部220から入力された乗算結果をIFFT処理し、遅延プロファイルとしてデータ復号部250に対して出力する。
データ復号部250は、IFFT部4から入力された遅延プロファイルを用いて、A/D202から入力された受信データを復号し、復号データとしてネットワーク10(図1)などに対して出力する。
本発明は、FFT・IFFTを用いて受信信号と符号との相関検出のために利用可能である。
1・・・移動体通信システム
10・・・ネットワーク、
12・・セル、
2・・・基地局、
210・・・送信部
20・・・受信部、
200・・・受信回路、
202・・・A/D、
22・・・遅延プロファイル検出部、
3・・・FFT部、
24・・・コード発生部、
240・・・RACHコード記憶部、
4・・・IFFT部
26・・・DSP回路部、
262・・・DSP、
264・・・ROM、
266・・・RAM、
250・・・データ復号部
10・・・ネットワーク、
12・・セル、
2・・・基地局、
210・・・送信部
20・・・受信部、
200・・・受信回路、
202・・・A/D、
22・・・遅延プロファイル検出部、
3・・・FFT部、
24・・・コード発生部、
240・・・RACHコード記憶部、
4・・・IFFT部
26・・・DSP回路部、
262・・・DSP、
264・・・ROM、
266・・・RAM、
250・・・データ復号部
Claims (1)
- 所定の符号を含む時間領域の第1のデータと、前記第1の信号と前記所定の符号との相関を検出する相関検出装置であって、
1回に変換処理するデータ数の設定を受けて、所定数の前記時間領域の第1のデータを、前記設定されたデータ数ずつ1回以上の変換処理を行って、周波数領域に変換する変換手段と、
前記所定の符号の長さを示す符号長の設定を受けて、前記設定された符号長の符号を生成する符号生成手段と、
周波数領域に変換された前記符号と、前記周波数領域に変換された第1のデータとの相関を示す相関データを生成する相関データ生成手段と、
1回に変換処理するデータ数の設定を受けて、前記生成された相関データを、前記設定されたデータ数ずつ1回以上の逆変換処理を行って、時間領域のデータに逆変換して、前記第1のデータと前記所定の符号との相関を検出する相関検出手段と、
前記データ数、前記変換処理の回数、前記逆変換処理の回数、および、前記符号長を、前記符号と前記第1のデータとの相関に対して規定される利得と、前記変換処理および前記逆変換処理の処理時間とに基づいて設定する設定手段と
を有する相関検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003329522A JP2005101695A (ja) | 2003-09-22 | 2003-09-22 | 相関検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003329522A JP2005101695A (ja) | 2003-09-22 | 2003-09-22 | 相関検出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005101695A true JP2005101695A (ja) | 2005-04-14 |
Family
ID=34458744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003329522A Pending JP2005101695A (ja) | 2003-09-22 | 2003-09-22 | 相関検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005101695A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007060358A (ja) * | 2005-08-25 | 2007-03-08 | Hitachi Kokusai Electric Inc | 同期検出装置 |
JP2008186396A (ja) * | 2007-01-31 | 2008-08-14 | Mitsubishi Electric Corp | 高速フーリエ変換装置 |
CN102105859A (zh) * | 2008-07-25 | 2011-06-22 | 高通股份有限公司 | 用于计算恒幅零自相关序列的装置和方法 |
US9952648B2 (en) | 2013-09-24 | 2018-04-24 | Nec Corporation | Digital filtering device, digital filtering method, and storage media storing program |
US10853445B2 (en) | 2016-04-19 | 2020-12-01 | Nec Corporation | Digital filter device, digital filtering method, and program recording medium |
-
2003
- 2003-09-22 JP JP2003329522A patent/JP2005101695A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007060358A (ja) * | 2005-08-25 | 2007-03-08 | Hitachi Kokusai Electric Inc | 同期検出装置 |
JP4588579B2 (ja) * | 2005-08-25 | 2010-12-01 | 株式会社日立国際電気 | 同期検出装置 |
JP2008186396A (ja) * | 2007-01-31 | 2008-08-14 | Mitsubishi Electric Corp | 高速フーリエ変換装置 |
JP4755610B2 (ja) * | 2007-01-31 | 2011-08-24 | 三菱電機株式会社 | 高速フーリエ変換装置 |
CN102105859A (zh) * | 2008-07-25 | 2011-06-22 | 高通股份有限公司 | 用于计算恒幅零自相关序列的装置和方法 |
JP2011529227A (ja) * | 2008-07-25 | 2011-12-01 | クゥアルコム・インコーポレイテッド | 一定幅零自己相関シーケンスを計算するための装置および方法 |
US8594250B2 (en) | 2008-07-25 | 2013-11-26 | Qualcomm Incorporated | Apparatus and methods for computing constant amplitude zero auto-correlation sequences |
CN102105859B (zh) * | 2008-07-25 | 2014-04-23 | 高通股份有限公司 | 用于计算恒幅零自相关序列的装置和方法 |
US9952648B2 (en) | 2013-09-24 | 2018-04-24 | Nec Corporation | Digital filtering device, digital filtering method, and storage media storing program |
US10853445B2 (en) | 2016-04-19 | 2020-12-01 | Nec Corporation | Digital filter device, digital filtering method, and program recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0855657B1 (en) | Fast fourier transforming apparatus and method | |
JP4317427B2 (ja) | 高速フーリエ変換プロセッサと、これを用いた高速フーリエ変換方法及びこれを有する直交周波数分割多重変調(ofdm)方式の受信装置 | |
JP2001136103A (ja) | 固定パターン検出装置 | |
KR101412646B1 (ko) | 고속 푸리에 변환 회로 및 고속 푸리에 변환 방법 | |
US9727531B2 (en) | Fast fourier transform circuit, fast fourier transform processing method, and program recording medium | |
JP2004032568A (ja) | 相関検出装置およびフーリエ変換装置 | |
JP2005101695A (ja) | 相関検出装置 | |
KR20080005906A (ko) | Cdma 시스템 전송 매트릭스 계수 계산을 행하는 사용자장치 | |
JP2955576B1 (ja) | ディジタル通信システムとその送信装置および受信装置、ならびにフレーム同期検出回路 | |
US20060072689A1 (en) | Matched filter and cross correlation method | |
JP2000286754A (ja) | 通信システムにおいて長い数列に同期させるための相関処理 | |
US7830949B2 (en) | Cross correlation circuits and methods | |
KR100720949B1 (ko) | 직교 주파수 분할 다중화 시스템에서의 고속 푸리에 변환프로세서 및 그 변환 방법 | |
US7352828B2 (en) | Receiving apparatus and receiving method | |
CN102474360A (zh) | 无线通信装置和信号检测方法 | |
JP3156783B2 (ja) | スペクトラム拡散通信システムにおける同期捕捉装置および同期捕捉方法 | |
KR100577005B1 (ko) | 고속 하다마드 변환 및 고속 푸리에 변환의 선택적 수행장치 및 방법 | |
US20100166121A1 (en) | Methods and apparatus for receiver having fast walsh transform | |
US8572149B2 (en) | Apparatus and methods for dynamic data-based scaling of data such as staged fast fourier transform (FFT) while enhancing performance | |
CN1148017C (zh) | 利用训练序列快速进行信道估计的方法和装置 | |
JPH0690221A (ja) | スペクトル拡散通信用受信装置のサーチャーレシーバ | |
US6418134B1 (en) | Finite impulse response filter for multi-code CDMA signals | |
US7424050B2 (en) | Matched filter circuit and correlation calculation method | |
CN113556301B (zh) | 一种信号处理方法及装置 | |
US8832172B1 (en) | Optimal FPGA based hadamard detection |