(57)【要約】［課題］回路規模の増大をできるだけ抑制しつつ、高速フーリエ変換により得たデータを所望の順番で出力する。［解決手段］本発明の信号受信装置は、2N個の入力値に対し段階的にバタフライ演算を施す第1〜第pのステージ演算部と、前記第p-1のステージ演算部により得られた値を格納する2N個のレジスタとを備え、前記第pのステージ演算部は、（a）2M個の入力ポートに与えられた値に基づきバタフライ演算して得た値をそれぞれ対応する2M個の出力ポートから送出する、2L個のバタフライ演算回路と、（b）前記バタフライ演算回路に対応配置され、それぞれ2L個のBFInOrder_i(j,t) （ただしBFInOrder_i(j,t) は、H進数で表現されたBFOutOrder_i(j,t) = t + j*2(N-M) + i*2(N-(M+L) 、または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)を2011013251.tif 000018の2M進数に変換し、2M進数に変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値を示す）のうちいずれか異なる１つに応じたレジスタの値を与える、2L個の選択回路とを有する。
2011013251.tif 000002
【特許請求の範囲】
【請求項１】
2（N-（M+L））*2k  （Nは2以上の整数、Mは2N/2M が整数となる1以上の整数、LはMが1のときは1以上かつ（N-M-1）以下の整数、Mが1より大きいときは0以上かつ（N-M-1）以下の整数、kは、1≦k≦2（M+L-1）-1を満たす整数）個のデータサブキャリアと、2N-｛2（N-（M+L））*2k｝個のヌルサブキャリアとを含む2N個のサブキャリアを用いる直交周波数分割多重方式の信号受信装置であって、
2N個のFFT（Fast Fourier Transform:高速フーリエ変換）ポイントに対応する2N個の入力値に対し段階的にバタフライ演算を施す第0〜第p-1（pは
【数１】
2011013251.tif 000015
に等しい値）のステージ演算部と、
前記2N個のFFTポイントに対応配置され、前記第p-1のステージ演算部による前記バタフライ演算により得られた値を格納する2N個のレジスタと、
（a）それぞれ2M個の入力ポートと2M個の出力ポートを有し、前記入力ポートに与えられた値に基づきバタフライ演算を行い、前記バタフライ演算により得られた値をそれぞれ対応する前記出力ポートから送出する、2L個のバタフライ演算回路と、
（b）前記バタフライ演算回路に対応配置され、それぞれ対応するバタフライ演算回路のj(0 ≦ j ≦ 2M-1)番目の入力ポートに、2L個のBFInOrder_i(j,t) （BFInOrder_i(j,t) は、H（Hは1より大きい整数）進数で表現されたBFOutOrder_i(j,t)（BFOutOrder_i(j,t)は t + j*2(N-M) + i*2(N-(M+L) または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)、tは0 以上2 (N-(M+L) -1以下の演算時間を表す整数、iは0以上2L-1以下の整数）を
【数２】
2011013251.tif 000016
の2M進数に変換し、変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値）のうちいずれか異なる１つに応じたレジスタの値を読み出して与える、2L個の選択回路と、
を有する第pステージ演算部と、
各前記バタフライ演算回路の各前記出力ポートのそれぞれから送出される前記値のうち前記データサブキャリアに対応する値を選択的に出力する出力制御部と、
を備えたことを特徴とする信号受信装置。
【請求項２】
各前記バタフライ演算回路の各前記出力ポートはそれぞれ、
前記データサブキャリアに対応する値のみを送出するポートA、
前記ヌルサブキャリアに対応する値のみを送出するポートB、
前記ヌルサブキャリアのうちDCキャリアに対応する値と、前記データサブキャリアに対応する値とを送出するポートC、
1つの前記データサブキャリアに対応する値と、前記ヌルサブキャリアに対応する値とを送出するポートD
のいずれかであり、
前記第Cポートから送出される前記DCキャリアに対応する値と、前記第Dポートから送出される前記1つのデータサブキャリアに対応する値はそれぞれ同じ演算時間に異なるバタフライ演算回路で計算され、
前記出力制御部は、
前記ポートAから送出される値を出力する第1信号線と、
前記ポートBから送出される値を終端する第1終端部と、
前記ポートCから送出される値を出力する第2信号線と、
前記ポートDから送出される値を終端する第2終端部と、
前記第Cポートから送出される前記DCキャリアに対応する値と前記第Dポートから送出される前記1つのデータサブキャリアに対応する値とを入れ替えることにより、前記DCキャリアに対応する値を前記第2終端部によって終端し、前記1つのデータサブキャリアに対応する値を前記第2信号線から出力する、セレクタと、
を備えた請求項1に記載の信号受信装置。
【請求項３】
2（N-（M+L））*2k  （Nは2以上の整数、Mは2N/2Mが整数となる1以上の整数、LはMが1のときは1以上かつ（N-M-1）以下の整数、Mが1より大きいときは0以上かつ（N-M-1）以下の整数、kは、1≦k≦2（M+L-1）-1を満たす整数）個のデータサブキャリアと、2N-｛2（N-（M+L））*2k｝個のヌルサブキャリアとを含む2N個のサブキャリアを用いる直交周波数分割多重方式の通信システムであって、
（A）送信データを変調して変調データを生成する変調部と、
前記変調データを前記データサブキャリアにマッピングし、ヌルデータを前記ヌルサブキャリアにマッピングすることによりマッピングデータを生成するマッピング部と、
前記マッピングデータを逆高速フーリエ変換（FFT:Fast Fourier Transform）することにより逆高速フーリエ変換信号を生成する逆高速フーリエ変換部と、
前記逆高速フーリエ変換信号にガードインターバルを付加するガードインターバル付加部と、  
前記ガードインターバルが付加された前記逆高速フーリエ変換信号を送信する送信部と、
を有する信号送信装置と、
（B）前記ガードインターバルが付加された前記逆高速フーリエ変換信号を受信する受信部と、
前記ガードインターバルが付加された前記逆高速フーリエ変換信号から前記ガードインターバルを除去するガードインターバル除去部と、
前記ガードインターバルが除去された後の前記逆高速フーリエ変換信号における2N個のFFTポイントの値に対し段階的にバタフライ演算を施す第0〜第p-1（pは（log2M2N）-1に等しい値）のステージ演算部と、
前記2N個のFFTポイントに対応配置され、前記第pのステージ演算部による前記バタフライ演算により得られた値を格納する2N個のレジスタと、
（a）それぞれ2M個の入力ポートと2M個の出力ポートを有し、前記入力ポートに与えられた値に基づきバタフライ演算を行い、前記バタフライ演算により得られた値をそれぞれ対応する前記出力ポートから送出する、2L個のバタフライ演算回路と、
（b）前記バタフライ演算回路に対応配置され、それぞれ2L個のBFInOrder_i(j,t)（BFInOrder_i(j,t) は、H（Hは1より大きい整数）進数で表現されたBFOutOrder_i(j,t)（BFOutOrder_i(j,t)は t + j*2(N-M) + i*2(N-(M+L) または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)、tは0 以上2 (N-(M+L) -1以下の演算時間を表す整数、iは0以上2L-1以下の整数）を
【数３】
2011013251.tif 000017
の2M進数に変換し、変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値）のうちいずれか異なる１つに応じたレジスタの値を読み出して与える、2L個の選択回路と、
を有する第pステージ演算部と、
各前記バタフライ演算回路の各前記出力ポートのそれぞれから送出される前記値のうち前記データサブキャリアに対応する値を選択的に出力する出力制御部と、
を有する信号受信装置と
を備えたことを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、信号受信装置および通信システムに関する。
【背景技術】
【０００２】
高速フーリエ変換(FFT:Fast Fourier Transform)部の後段回路の消費電力削減のため、FFT部の出力データを当該後段回路に適した並び順に変更する技術がある。特開平11-298436号公報では、FFT回路の出力データに対しデインターリーブ処理を行うことで、後段の復調処理に適した並び順になるよう該出力データの順番を変える方法を開示している。しかし、デインターリーブ処理を行う処理ブロックでは、出力データの値を保持するレジスタや、セレクタを多く必要とするため、回路規模が増大する問題がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平11-298436号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この発明は、回路規模の増大を抑制しつつ、高速フーリエ変換により得たデータを所望の順番で出力することを可能とした信号受信装置および通信システムを提供する。
【課題を解決するための手段】
【０００５】
本発明の一態様としての信号受信装置は、2(N-(M+L))*2k  （Nは2以上の整数、Mは2N/2Mが整数となる1以上の整数、LはMが1のときは1以上かつ(N-M-1)以下の整数、Mが1より大きいときは0以上かつ(N-M-1)以下の整数、kは、1≦k≦2(M+L-1)-1を満たす整数）個のデータサブキャリアと、2N-{2(N-(M+L))*2k}個のヌルサブキャリアとを含む2N個のサブキャリアを用いる直交周波数分割多重方式の信号受信装置であって、2N個のFFT（Fast Fourier Transform:高速フーリエ変換）ポイントに対応する2N個の入力値に対し段階的にバタフライ演算を施す第0〜第p-1（pは
【数１】
2011013251.tif 000003
に等しい値）のステージ演算部と、前記2N個のFFTポイントに対応配置され、前記第p-1のステージ演算部による前記バタフライ演算の演算値を格納する2N個のレジスタと、（a）それぞれ2M個の入力ポートと2M個の出力ポートを有し、前記入力ポートに与えられた値に基づきバタフライ演算して得た値をそれぞれ対応する前記出力ポートから送出する、2L個のバタフライ演算回路と、（b）前記バタフライ演算回路に対応配置され、それぞれ2L個のBFInOrder_i(j,t)（BFInOrder_i(j,t) は、H進数で表現されたBFOutOrder_i(j,t)（BFOutOrder_i(j,t)は t + j*2(N-M) + i*2(N-(M+L) または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)、tは0 以上2 (N-(M+L) -1以下の演算時間を表す整数、iは0以上2L-1以下の整数）を
【数２】
2011013251.tif 000004
の2M進数に変換し、変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値）のうちいずれか異なる１つに応じたレジスタの値を読み出して与える、2L個の選択回路と、を有する第pステージ演算部と、各前記バタフライ演算回路の各前記出力ポートのそれぞれから送出される前記値のうち前記データサブキャリアに対応する値を選択的に出力する出力制御部と、を備えたことを特徴とする。
【発明の効果】
【０００６】
本発明により、回路規模の増大を抑制しつつ、高速フーリエ変換により得たデータを所望の順番で出力することができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の信号送信装置の構成を示すブロック図。
【図２】第1実施形態の信号フォーマット(キャリア配置)を示す図。
【図３】本発明の信号受信装置の構成を示すブロック図。
【図４】第1実施形態のFFT部の構成を示す図。
【図５】第1実施形態の最終ステージ演算部の構成を示す図。
【図６】第1実施形態の最終ステージ演算部以外のステージ演算部の構成を示す図。
【図７】第1実施形態のBFInOrder_i(j, t)関数を示す図。
【図８】第1実施形態のBFOutOrder_i(j, t)関数を示す図。
【図９】第1実施形態のバタフライ演算回路の出力順を示す図。
【図１０】第1実施形態の出力制御部の構成を示す図。
【図１１】第1実施形態のFFT部の出力順を示す図。
【図１２】第1実施形態のBFInOrder_i(j, t)関数の別の例を示す図。
【図１３】第1実施形態のBFOutOrder_i(j, t)関数の別の例を示す図。
【図１４】第1実施形態のバタフライ演算回路の出力順の別の例を示す図。
【図１５】第1実施形態のFFT部の出力順の別の例を示す図。
【図１６】第2実施形態の信号フォーマット(キャリア配置) を示す図。
【図１７】第2実施形態の最終ステージ演算部の構成を示す図。
【図１８】第2実施形態のBFInOrder_i(j, t)関数を示す図。
【図１９】第2実施形態のBFOutOrder_i(j, t)関数を示す図。
【図２０】第2実施形態のバタフライ演算回路の出力順を示す図。
【図２１】第2実施形態の出力制御部の構成を示す図。
【図２２】第2実施形態のFFT部の出力順を示す図。
【図２３】第3実施形態の信号フォーマット(キャリア配置) を示す図。
【図２４】第3実施形態のバタフライ演算回路の出力順を示す図。
【図２５】第3実施形態の出力制御部の構成を示す図。
【図２６】第3実施形態のFFT部の出力順を示す図。
【図２７】第4実施形態の信号フォーマット(キャリア配置)を示す図。
【図２８】第4実施形態のFFT部の構成を示す図。
【図２９】第4実施形態の最終ステージ演算部の構成を示す図。
【図３０】第4実施形態の最終ステージ演算部以外のステージ演算部の構成を示す図。
【図３１】第4実施形態のBFInOrder_i(j, t)関数を示す図。
【図３２】第4実施形態のBFOutOrder_i(j, t)関数を示す図。
【図３３】第4実施形態のバタフライ演算回路の出力順を示す図。
【図３４】第4実施形態の出力制御部の構成を示す図。
【図３５】第4実施形態のFFT部の出力順を示す図。
【図３６】第5実施形態の信号フォーマット(キャリア配置) を示す図。
【図３７】第5実施形態の最終ステージ演算部の構成を示す図。
【図３８】第5実施形態のBFInOrder_i(j, t)関数を示す図。
【図３９】第5実施形態のBFOutOrder_i(j, t)関数を示す図。
【図４０】第5実施形態のバタフライ演算回路の出力順を示す図。
【図４１】第5実施形態の出力制御部の構成を示す図。
【図４２】第5実施形態のFFT部の出力順を示す図。
【発明を実施するための形態】
【０００８】
（第1実施形態）
図1に、本発明の第1実施形態に係る信号送信装置の構成を示す。
【０００９】
図1の信号送信装置100は、変調部101、サブキャリアマッピング部102、逆高速フーリエ変換(IFFT: Inverse Fast Fourier Transform)部103、ガードインターバル（GI:Guard Interval）付加部104、デジタルアナログ変換（DAC:Digital Analog Conversion）部105、周波数変換部106、アンテナ107を備える。
【００１０】
入力されたデータは変調部101において、例えばBPSK(Binary Phase Shift Keying）、QPSK(Quadrature Phase Shift Keying)、16QAM（Quadrature Amplitude Modulation）、又は64QAMなどの変調処理が施される。変調処理されたデータはサブキャリアマッピング部102において、周波数領域のサブキャリアに割り当てられる。変調処理されたデータが周波数領域のサブキャリアに割り当てられた後のサブキャリア配置を図2に示す。データキャリアには、中心周波数を基準として左右対称にデータがマッピングされる。ヌルキャリアにはヌルデータがマッピングされる。
【００１１】
本実施形態ではデータキャリア数、ヌルキャリア数をそれぞれ32としているが、次式を満足する限り、データキャリア数、ヌルキャリア数は任意でよい。
データキャリア数=2（N-（M+L））*2k  （kは1≦k≦2（M+L-1）-1を満たす整数）・・・式（1）
ヌルキャリア数=2N―データキャリア数・・・式（2）
【００１２】
ただし、N，M，Lは、後述する信号受信装置（図3参照）の高速フーリエ変換(FFT:Fast Fourier Transform)部の構成を示すパラメータであり、これらのパラメータにより、FFT部のポイント数は2N（Nは2以上の整数）、FFT部をなす各ステージ演算部に設けられるバタフライ演算回路の基数は2M（M: 2N/2Mが整数となる1以上の整数）、最終ステージ演算部のバタフライ演算回路の並列数は2Lである。ここでLは、M=1のときは、1，2，・・・（N-M-1）のうちのいずれかの整数、M＞1のときは、0，1，・・・（N-M-1）のうちのいずれかの整数である。
【００１３】
以降では、N=6、M=1、L=1、k=1として説明を行う。即ち信号受信装置におけるFFT部のポイント数は64（N=6）、バタフライ演算回路の基数は2（M=1）、最終ステージ演算部のバタフライ演算回路の並列数は2（L=1）である。
【００１４】
図1に戻る。周波数領域のサブキャリアへマッピングされたデータ（マッピングデータ）は、IFFT部103において時間軸上のOFDM（Orthogonal Frequency Division Multiplexing:直交周波数分割多重）信号に変換される。GI付加部104では、OFDM信号の末尾の一部分と同一データを、ガードインターバルとしてOFDM信号の先頭に挿入（付加）する。
【００１５】
GI付加部104によりガードインターバルが挿入された信号は、DAC部105でデジタル信号からアナログ信号に変換され、周波数変換器106でRF（Radio Frequency）信号に変換される。該RF信号は、アンテナ107から大気中に電波として送信（放射）される。
【００１６】
図3に、本実施形態に係わる信号受信装置の構成を示す。図3の信号受信装置と図1の信号送信装置との組は通信システムをなす。
【００１７】
図3の信号受信装置200は、アンテナ201、周波数変換部202、アナログデジタル変換（ADC:Analog Digital Conversion）部203、ガードインターバル（GI）除去部204、FFT部205、時間同期推定部206、伝搬路推定部207、伝搬路補償部208、復調部209を備える。
【００１８】
アンテナ201で受信されたRF信号は、周波数変換器202でベースバンド信号に変換され、ADC部203でアナログ信号からデジタル信号に変換される。GI除去部204では該デジタル信号からGIが除去される。
【００１９】
GIが除去された信号は、FFT部205において、後述する時間同期推定部206からのFFTスタートタイミング信号に従って、FFTスタートタイミング信号から2NサンプルについてFFT処理が施され、周波数軸上の信号に変換される。本実施形態のFFT部205では、時間同期推定部206での演算処理を簡易にするため、周波数的に隣接するデータサブキャリアを連続して出力するよう制御される。FFT部205の詳細については後に図4〜図8を用いて述べる。
【００２０】
時間同期推定部206では、OFDM信号の有効シンボル期間の開始位置を示すFFTスタートタイミング信号を検出し、FFTスタートタイミング検出信号を出力する。OFDM信号の有効シンボル期間の開始位置を検出する方法には様々な方法が知られているが、本実施形態では、周波数領域において隣接するサブキャリア間の位相差を用いて有効シンボル期間の開始位置検出を行うものとする。
【００２１】
図3に戻る。FFT部205で得られた周波数軸上の信号は、伝搬路補償部208において、伝搬路で発生したマルチパスに起因する信号歪みが補償される。この歪み補償処理は、伝搬路推定部207で算出する伝搬路推定値に基づいて行われる。伝搬路推定部207は、既知の方法により、パイロット信号に基づき伝搬路推定を行うことで伝搬路推定値を算出する。
【００２２】
信号歪みが補償された信号は、復調部209で、例えばBPSK(Binary Phase Shift Keying）、QPSK(Quadrature Phase Shift Keying)、16QAM（Quadrature Amplitude Modulation）、又は64QAMなどの復調処理が施され、データに復元される。
【００２３】
以下、信号受信装置200のFFT部205の詳細について図4〜図8を用いて説明する。なお、本実施形態では、内部演算処理速度を向上させるため、FFT部205及びこの後段の時間同期推定部206が、それぞれ並列回路構造を有することを前提とする。また、前述の通り、本実施形態では、FFT部205のポイント数を64（N=6）、バタフライ演算回路の基数を2（M=1）として説明を行う。
【００２４】
以下では、まず、図4〜図6を用いてFFT部205の全体構成を説明した後に動作について説明する。
【００２５】
図4に第1実施形態に係るFFT部205の構成を示す。FFT部205は、複数の順次のステージ演算部#0〜#5と、FFT部205への入力値又は各ステージ演算部の出力値を一時的に格納する、FFT部のポイント数（本実施形態では64）分のレジスタ#0〜#63からなるレジスタ群R0〜R5と、ステージ演算部#5（最終ステージ演算部）により得られた値（各サブキャリアに対応するデータ）の出力制御を行う出力制御部11とを備えている。
【００２６】
一般に、FFT部のステージ演算部数は、次式で決定される。  
ステージ演算部数=logバタフライ演算回路の基数  （FFT部のポイント数）
本実施形態でもこの式に従って、ステージ演算部数は、log264=6となる。
【００２７】
図5にステージ演算部#5（最終ステージ演算部）の構成を示す。
【００２８】
ステージ演算部#5（最終ステージ演算部）は、複数個のバタフライ演算回路#5_0、#5_1と、バタフライ演算回路と同数個の第1選択回路#5_0、#5_1（本発明の選択回路に対応）とを備える。
【００２９】
図6にステージ演算部#5（最終ステージ演算部）以外のステージ演算部#0〜#4の構成を示す。
【００３０】
ステージ演算部#0〜#4は、1つ乃至、複数個のバタフライ演算回路と、バタフライ演算回路と同数個の第1選択回路と、バタフライ演算回路と同数個の第2選択回路とを備える。本実施形態では、ステージ演算部#0〜#4のバタフライ演算回路の並列数を、ステージ演算部#5（最終ステージ演算部）のバタフライ演算回路の並列数と同じ2としているが、ステージ演算部#5（最終ステージ演算部）と異なる値でもよい。
【００３１】
本実施形態では、説明の簡単化のため、各ステージ演算部#0〜#5においてそれぞれ個別にバタフライ演算回路を備えているが、各ステージ演算部間でバタフライ演算回路を共有してもよい。また、本実施形態では、各ステージ演算部毎にレジスタ群を設けているが、1つまたは複数のレジスタ群をステージ演算部#0〜#5間で共有してもよい。
【００３２】
次に、図4〜図8を用いてFFT部205の動作について説明する。
【００３３】
まず、FFT部205の入力信号x(a)（0≦ a ≦ 2N-1）が、レジスタ群R0における、レジスタ #a = x(a) (0≦ a ≦ 63)で決定されるレジスタにそれぞれ格納される。
【００３４】
入力信号x(0),x(1),x(2),…,x(63)は、有効シンボル期間の先頭側から順に配置された64個の各FFTポイントの値に対応する。レジスタには、#0〜#63の番号（インデックス）が付与されており、各入力信号x(0),x(1),x(2),…,x(63)は、同じインデックスをもつレジスタ#0〜#63に格納される。インデックスはここでは10進数で表現されているとするが異なる進数で表現されていてもよい。なおここでは、入力信号は一致するインデックスをもつレジスタに格納されているが、対応付けが明確に定義されていれば、入力信号が、異なるインデックスをもつレジスタに格納されても問題ない。
【００３５】
レジスタ群R0の各レジスタ#0〜#63に格納された信号はステージ演算部#0に入力される。より詳細には、図6に示した第1選択回路#p_0、#p_1（ここではp=0）はそれぞれ2個のレジスタを同時に選択し、対応するバタフライ演算回路#p_0、#p_1に入力する。第1選択回路#p_0で選択されたレジスタ値は、図6中Bp,0(0)、Bp,0(1)によって表され、第1選択回路#p_1で選択されたレジスタ値は、図6中Bp,1(0)、Bp,1(1)によって表される。
【００３６】
第1選択回路#p_0、#p_1で選択するレジスタ、つまり、バタフライ演算回路の#p_0、#p_1入力値は、次式で示すFFTアルゴリズム(本実施形態では基数2のFFTアルゴリズム)の秩序を壊さない限り任意でよい。
【数３】
2011013251.tif 000005
ただし、WNは回転因子、N’はFFTのポイント数であり、次式で定義される。
【数４】
2011013251.tif 000006
【００３７】
バタフライ演算回路#p_0、#p_1に入力された値は、上式の基数2のFFTアルゴリズムに基づき、次式で示すバタフライ演算が施される。
【数５】
2011013251.tif 000007
ただし、Bp,q(j)はバタフライ演算回路の入力値、B’p,q(j)はバタフライ演算回路の出力値、jは各バタフライ演算回路の入力／出力ポート番号(0 ≦ j ≦ 2M-1)、pはステージ演算部番号
【数６】
2011013251.tif 000008
、qはバタフライ回路番号(0 ≦ q ≦ 2L-1 )である。
【００３８】
バタフライ演算回路#p_0、#p_1の演算値（出力B’p,q(j)）は、対応する第2選択回路#p_0、#p_1に入力される。第2選択回路#p_0、#p_1は、該出力（B’p,q(j)）に対して、対応する値Bp,q(j)が読み出されたレジスタと同じ番号のレジスタをレジスタ群R1の中から選択し（つまり第1選択回路と同じアルゴリズムでレジスタ選択を行い）、選択したレジスタに出力B’p,q(j)を格納する。例えばBp,0(0)が読み出されるレジスタ番号と、B’p,0(0)が格納されるレジスタ番号とは同一であり、またBp,0(1)が読み出されるレジスタ番号と、B’p,0(1)が格納されるレジスタ番号とは同一である。
【００３９】
ステージ演算部#1〜#4の処理は、ステージ演算部#0と同様であるため、詳細な説明は省略する。
【００４０】
次に、図5、図7、図8を用いて、本実施形態の1つ目のポイントであるステージ演算部#5（最終ステージ演算部）の動作を説明する。
【００４１】
これまでのステージ演算部#0〜#4と同様、まず、第1選択回路#5_0、#5_1は、レジスタを選択し、選択したレジスタの信号を、対応するバタフライ演算回路#5_0、#5_1に入力する。
【００４２】
この際、最終ステージ演算部の第1選択回路は、以下のようにしてレジスタの選択順番、つまりバタフライ演算回路への入力順を決定する。即ち2L個（本実施形態では2個）ある各第1選択回路のうち、ある第1選択回路が時間tに選択するレジスタ番号BFInOrder_i(j,t)（ただし0 ≦ i≦ 2L-1）は次式で決定される。  
BFInOrder_i(j,t) = F(BFOutOrder_i(j,t))    
BFOutOrder_i(j,t) = t + j*2(N-M) + i*2 (N-(M+L))
・・・式（5）
BFOutOrder_i(j,t)はバタフライ演算回路の該当する出力ポートから出力させたいレジスタの番号を示し、BFInOrder_i(j,t)はこのような番号のレジスタ出力を実現するために必要なバタフライ演算回路への入力レジスタの番号を示す。
【００４３】
上記式において、j(0 ≦ j ≦ 2M-1)はバタフライ演算回路の入力ポート番号、t(0 ≦ t ≦ 2 (N-(M+L)) -1)は時間を表す。
【００４４】
また、F(x)（ただし0≦ x ≦ 2N-1）は次の手順で定義される関数である。  
1:  xを
【数７】
2011013251.tif 000009
の2M進数に変換する（本実施形態では、M=1のため、2進数に変換）。  
2:  2M進数に変換された値をy（y=(A0,A1,…,Ar-1)）とすると、yをz=(Ar-1,…,A1,A0)へワードリバースする。  
3:  ワードリバースされた値z=(Ar-1,…,A1,A0)を10進数に変換する。ただしxが10進数と異なる進数であるときは、zを当該異なる進数に変換すればよい。即ちxがH（Hは1より大きい整数）進数で表現されているときは、zをH進数に変換すればよい。
【００４５】
ステージ演算部#5（最終ステージ演算部）の第1選択回路#5_0、#5_1は、それぞれ重複しないよう、BFInOrder_0(j,t)、BFInOrder_1(j,t)のいずれか異なる1つを選択する。例えば第1選択回路#5_0はBFInOrder_0(j,t)のレジスタを選択し、第1選択回路#5_1は、BFInOrder_1(j,t)のレジスタを選択する。
【００４６】
具体例として、第1選択回路#5_1がBFInOrder_1(j,t)を選択する場合に、時間t=5において、バタフライ演算回路#5_1の入力ポート番号j=1に入力するレジスタ番号BFInOrder_1(1,5)を導出する例を示す。  
まず、BFOutOrder_1（1,5）を算出する。  
BFOutOrder_1（1,5） = 5 + 1*2 (6-1) + 1*2 (6-(1+1))=53
【００４７】
次に、BFInOrder_1(1,5) = F(BFOutOrder_1(1,5))であることから、F（53）を算出する。53を2進数に変換すると「110101」であり、ワードリバースを行うと「101011」となる。ワードリバースされた値を10進数に変換すると43となる。従って、BFInOrder_1(1,5)=43となり、時間t=5において、バタフライ演算回路#5_1の入力ポート番号j=1に入力されるレジスタ番号は43となる。
【００４８】
図7に同様の手順で算出したBFInOrder_0(j,t)、BFInOrder_1(j,t)を、図8に対応するBFOutOrder_0(j,t)、BFOutOrder_1(j,t)を示す。前述の通り、2個の第1選択回路は、それぞれ重複しないよう、BFInOrder_0(j,t)、BFInOrder_1(j,t)のいずれか1つを選択する。
【００４９】
上記では、BFOutOrder_i(j,t)を関数F（）に入力することでBFInOrder_i(j,t)を求めたが、別の第1方法として、テーブルを用いて求めるてもよい。即ち、BFOutOrder_i(j,t)の値と、BFInOrder_i(j,t)の値とを対応付けた第1テーブルを予め用意しておく。そして、BFOutOrder_i(j,t)を上記式に従って計算し、この計算値に対応するBFInOrder_i(j,t)をこの第1テーブルを参照することで求める。
【００５０】
また、上記ではt + j*2(N-M) + i*2 (N-(M+L))を実際に計算することでBFOutOrder_i(j,t)を求めたが、別の第2方法として、テーブルを利用して求めてもよい。即ち時間tに応じて各ポートjのBFOutOrder_i(j,t)の値を格納した第2テーブルをi毎に用意しておき、この第2テーブルを参照して時間t毎に各ポートjの値BFOutOrder_i(j,t)を求める。例えば第1選択回路#5_0はj=0の第2テーブル、第1選択回路#5_1はj=1の第2テーブルを参照する。
【００５１】
また、第3方法として、BFOutOrder_i(j,t)の計算を省略し、BFInOrder_i(j,t)の値を直接求める方法もある。即ち、時間tに応じて各ポートjのBFInOrder_i(j,t)の値を格納した第3テーブルをi毎に用意しておき、この第3テーブルを参照して時間t毎に各ポートjの値BFInOrder_i(j,t)を求める。例えば第1選択回路#5_0はj=0の第3テーブル、第1選択回路#5_1はj=1の第3テーブルを参照する。
【００５２】
ここで述べた第1〜第3方法は、後述する他の実施形態でも同様に有効である。
【００５３】
次に、バタフライ演算回路#5_0、#5_1が、各々に入力された値に対して、次式で示す基数2（M=1）のバタフライ演算を施す。
【数８】
2011013251.tif 000010
【００５４】
第1選択回路#5_1がBFInOrder_1(j,t)を選択したと仮定すると、時間t=5では、図7からB5,1(0)は42番目のレジスタに格納されている値、B5,1(1)は43番目のレジスタに格納されている値となり、これらの値を用いて式（6）に従いバタフライ演算を行う。
【００５５】
図9に、第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)を選択した場合における、バタフライ演算回路#5_0とバタフライ演算回路#5_1の出力結果を示す。図9において、0〜63の数字は図2記載のサブキャリア番号を表しており、ハッチングの施された番号はヌルキャリアを表す（図8と同じ並び順である）。
【００５６】
図9から理解されるように、最終ステージ演算部の第1選択回路がレジスタの選択順番BFInOrder_i(j,t)を式（5）で決定することで、ヌルキャリアを含めた全サブキャリアにおいて、最終ステージ演算部の各バタフライ演算回路から時間軸に沿って並列に隣接サブキャリアが順次出力される。
【００５７】
次に、図10を用いて、本実施形態の2つ目のポイントである出力制御部11の動作について説明する。
【００５８】
図10に、最終ステージ演算部の第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)を選択する場合の出力制御部11の構成を示す。
【００５９】
出力制御部11は2つのセレクタ12a、12bと終端ポート13a、13bを備える。
【００６０】
バタフライ演算回路#5_0の0番の出力ポート（上側のポート）のデータB’5,0(0)はセレクタ12a、12bの両方に入力され、1番の出力ポート（下側のポート）のデータB’5,0(1)は終端部13aに入力される。終端ポート13aは、入力されたデータ（即ちヌルサブキャリアのデータ）を廃棄する。
【００６１】
バタフライ演算回路#5_1の0番の出力ポート（上側のポート）のデータB’5,1(0)はセレクタ12b、12aの両方に入力され、1番の出力ポート（下側のポート）のデータB’5,1(1)は信号線S1を介して外部（時間同期推定部206、伝搬路補償部208等）に出力される。
【００６２】
セレクタ12aで選択されたデータは信号線S0を介して外部に出力され、セレクタ12bで選択されたデータは終端ポート13bに入力される。終端ポート13bは、入力されたデータ（即ちヌルサブキャリアのデータ）を廃棄する。セレクタ12a、12bは高速フーリエ変換を制御する制御部からの選択信号SELに応じて選択動作を行う。
【００６３】
より詳細に、セレクタ12a、12bは、最終ステージ演算部の出力がDCキャリア（0番目のキャリア）である時間（ここではt=0）のみ、信号帯域の右端キャリア（本実施形態では16番目のサブキャリア）とDCキャリアとの出力位置を交換するよう動作する。
【００６４】
つまり、セレクタ12aは、時間t=0のみ、両バタフライ演算回路からの入力データのうちバタフライ演算回路#5_1からのデータを選択して出力し、それ以外の時間（t=1〜15）ではバタフライ演算回路#5_0からのデータを選択して出力する。一方、セレクタ12bは、時間t=0のみ、両バタフライ演算回路からの入力データのうちバタフライ演算回路#5_0からのデータを選択して終端ポート13bに入力し、それ以外の時間（t=1〜15）ではバタフライ演算回路#5_1からのデータを選択して終端ポート13bに入力する。
【００６５】
図11に出力制御部11の出力、即ち、FFT部205の出力を示す。
【００６６】
セレクタ12a、12bの動作により、信号帯域の右端のデータキャリア（16番目のサブキャリア）以外は、並列かつ連続して隣接するデータサブキャリアが出力されていることが理解される。即ち、バタフライ演算回路#5_0からはセレクタ12aを介して16，1，2，3，・・・14，15と、16番目のサブキャリア以外は隣接するデータサブキャリアが順次出力され、バタフライ演算回路#5_1からはセレクタ12bを介して48，49，50，51，・・・62，63と、隣接するデータサブキャリアが順次出力される。
【００６７】
このように、出力制御部11は、バタフライ演算回路の各出力ポートのそれぞれから送出される値（出力）から、データサブキャリアに対応する値を選択的に出力し、ヌルサブキャリアに対応する値を廃棄する。また、出力制御部11はバタフライ演算回路の出力（DCキャリアと、DCキャリアと同時間における最も高い周波数のデータキャリア）をバタフライ演算回路間で入れ替え、入れ替えられたDCキャリアは廃棄し、入れ替えられたデータキャリアは信号線から外部に出力される。
【００６８】
ここで図10におけるバタフライ演算回路#5_1の1番出力ポートは、データサブキャリアに対応する値のみを送出するポートAに対応する。バタフライ演算回路#5_0の1番出力ポートは、ヌルサブキャリアに対応する値のみを送出するポートBに対応する。バタフライ演算回路#5_0の0番ポートは、ヌルサブキャリアのうちDCキャリアに対応する値と、データサブキャリアに対応する値とを送出するポートCに対応する。バタフライ演算回路#5_1の0番ポートは、1つのデータサブキャリアに対応する値と、ヌルサブキャリアに対応する値とを送出するポートDに対応する。なお上述した説明から分かるように、バタフライ演算回路#5_0の0番ポート（第Cポート）から送出されるDCキャリアに対応する値と、バタフライ演算回路#5_1の0番ポート（第Dポート）から送出される当該1つのデータサブキャリアに対応する値はそれぞれ同じ演算時間に異なるバタフライ演算回路（ここでは#5_0と#5_1）で計算される。
【００６９】
また信号線S1はポートAから送出される値を出力する第1信号線に相当し、信号線S0はポートCから送出される値を出力する第2信号線に相当する。また終端部13aは、ポートBから送出される値を終端する第1終端部に相当し、終端部13bはポートDから送出される値を終端する第2終端部に相当する。
【００７０】
またセレクタ12a、12bは、ポートCから送出されるDCキャリアに対応する値と第Dポートから送出される当該1つのデータサブキャリアに対応する値とを入れ替えることで、DCキャリアに対応する値を第2終端部（ここで終端部13b）によって終端し、1つのデータサブキャリアに対応する値を第2信号線（ここでは信号線S0）から出力する。
【００７１】
上記実施形態では、BFOutOrder_i(j,t)をt + j*2(N-M) + i*2 (N-(M+L))として定義したが、これに代えて以下の式
(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)
によって定義してもよい。即ち、上記式（5）に代えて、以下の式を用いてもよい。  
BFInOrder_i(j,t) = F(BFOutOrder_i(j,t))    
BFOutOrder_i(j,t) = (2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)
・・・  式（5-1）
【００７２】
この式5-1を用いた場合のBFInOrder_0(j,t)、BFInOrder_1(j,t)を図12に、対応するBFOutOrder_0、BFOutOrder_1を図13に示す。また図14に、第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)を選択した場合における、バタフライ演算回路#5_0とバタフライ演算回路#5_1の出力結果を示す。図15に出力制御部11の出力、即ちFFT部205の出力を示す。上記新たな式を用いた場合の出力制御部の構成は図10と同じである。図12〜図15と、図7、図8、図9、図11とを対比すると、出力の順序がすべて逆になっており、t=15でキャリアの入れ替えが行われていることが分かる。
【００７３】
以上、第1実施形態によれば、最終ステージ演算部のバタフライ演算回路への入力値(レジスタ番号)を式（5）または式（5-1）に従って選択することで、FFT部の回路規模の増大を抑制しつつ、FFT部の出力順を制御できる。即ち、後段の時間同期推定部の処理に合わせて、周波数的に隣接する順序でデータサブキャリアを出力することができる。
【００７４】
またバタフライ演算回路の出力（DCキャリアと、DCキャリアと同時間における最も高い周波数のデータキャリア）をバタフライ演算回路間で入れ替えることで、回路規模の増大を一層に抑制することができる。キャリア入替を行わない場合、キャリアを出力する信号線の本数が増えるとともに、後段回路に対する制御線が複雑になるが、上記のキャリア入替を行うことで、これらの問題を抑え回路規模のさらなる縮小が可能となる。
【００７５】
（第2実施形態）
第2実施形態では、第1実施形態で用いたパラメータN，M，L、kをN=6、M=1、L=2、k=3とした場合、つまり、FFT部205のポイント数を64、バタフライ演算回路の基数を2、最終ステージ演算部のバタフライ演算回路の並列数を4、データキャリア数を48とする。本実施形態では、信号送信装置から送信される信号フォーマットとFFT部205の構成及び動作が第1実施形態と異なる。
【００７６】
図16に本実施形態における信号送信装置から送信される信号のフォーマットを示す。
【００７７】
データキャリア数48、ヌルキャリア数16である。
【００７８】
本実施形態に係るFFT部205のブロック図は、第1実施形態と同様図4である。ただし、ステージ演算部#5（最終ステージ演算部）と出力制御部11の構成及び動作が第1実施形態と異なる。
【００７９】
図17に本実施形態のステージ演算部#5（最終ステージ演算部）の構成を示す。
【００８０】
最終ステージ演算部は、1乃至、複数個のバタフライ演算回路と、バタフライ演算回路個数と同数個の第1選択回路とを備える。本実施形態では、前述の通り最終ステージ演算部のバタフライ演算回路の並列数を4（L=2）としており、バタフライ演算回路#5_0〜#5_3と第1選択回路#5_0〜#5_3とを備えている。
【００８１】
図17乃至図19を用いて、本実施形態のポイントであるステージ演算部#5（最終ステージ演算部）の動作について説明する。
【００８２】
第1実施形態同様、まず、第1選択回路#5_0〜#5_3によりレジスタが選択され、選択されたレジスタに格納された信号が、対応するバタフライ演算回路#5_0〜#5_3に入力される。各第1選択回路で選択されるレジスタの順番、つまり、バタフライ演算回路への入力順は、第1実施形態で示した式（5）または式（5-1）で決定される。以下では説明の簡単のため式（5）を想定する。
【００８３】
図18に、第1実施形態と同様の手順で算出した、BFInOrder_0(j,t)、BFInOrder_1(j,t)、BFInOrder_2(j,t)、BFInOrder_3(j,t)を示す。また、図19に、図18に対応する、BFOutOrder_0、BFOutOrder_1、BFOutOrder_2、BFOutOrder_3を示す。
【００８４】
4個ある第1選択回路は、それぞれ重複しないよう、BFInOrder_0(j,t)、BFInOrder_1(j,t)、BFInOrder_2(j,t)、BFInOrder_3(j,t)のいずれか1つを選択する。
【００８５】
次に、バタフライ演算回路#5_0〜#5_3は、第1実施形態同様、各々に入力された値に対し、式（6）で示した基数2（M=1）のバタフライ演算を施す。第1選択回路#5_1がBFInOrder_1(j,t)を選択したと仮定すると、時間t=5では、図18からB5,1(0)は44番目のレジスタに格納されている値、B5,1(1)は45番目のレジスタに格納されている値となり、これらの値を用いてバタフライ演算が行われる。
【００８６】
図20に、第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)、第1選択回路#5_2がBFInOrder_2(j,t)、第1選択回路#5_3がBFInOrder_3(j,t)を選択した場合における、バタフライ演算回路#5_0、バタフライ演算回路#5_1、バタフライ演算回路#5_2、バタフライ演算回路#5_3の出力結果を示す。
【００８７】
図20から分かるように最終ステージ演算部の各バタフライ演算回路からは、ヌルキャリアを含めた全サブキャリアにおいて、時間軸方向にそれぞれ並列に隣接サブキャリアが順次出力される。
【００８８】
次に、図21を用いて、本実施形態の2つ目のポイントである出力制御部11の動作について説明する。
【００８９】
図21に最終ステージ演算部の第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)、第1選択回路#5_2がBFInOrder_2(j,t)、第1選択回路#5_3がBFInOrder_3(j,t)を選択する場合の出力制御部11の構成を示す。
【００９０】
図21の出力制御部11は2つのセレクタ22a、22bと、2つの終端ポート23a、23bを備える。信号線S0はセレクタ22aで選択されたデータを外部に出力し、信号線S1〜S5はそれぞれ接続された出力ポートからのデータを外部に出力する。終端ポート23a、23bはそれぞれ接続された出力ポートまたはセレクタからのデータを廃棄する。
【００９１】
2つのセレクタ22a、22bは、最終ステージ演算部の出力がDCキャリア（0番目のキャリア）である時間（ここではt=0）のみ、信号帯域の右端キャリア（本実施形態では24番目のキャリア）とDCキャリアの出力位置を交換するよう動作する。即ち、t=0で、バタフライ#5_0の0番出力ポートとバタフライ#5_3の0番出力ポート間で出力を交換するようにセレクタ22a、22bが外部からの選択信号SELに応じて動作する。
【００９２】
なお図21におけるバタフライ演算回路#5-1の2つの出力ポート、バタフライ演算回路#5_2の2つの出力ポート、バタフライ演算回路#5_3の1番出力ポートは、ポートAに対応する。バタフライ演算回路#5_0の1番出力ポートはポートBに対応し、バタフライ演算回路#5_0の0番出力ポートはポートCに対応し、バタフライ演算回路#5_3の0番出力ポートはポートDに対応する。信号線S1〜S5は第1信号線、信号線S0は第2信号線、終端部23aは第1終端部、終端部23bは第2終端部に相当する。
【００９３】
図22に出力制御部11の出力順、即ち、FFT部205の出力順を示す。
【００９４】
信号帯域の右端のデータキャリア（24番目のキャリア）以外は、並列に、かつ連続で隣接するデータサブキャリアが出力されることが分かる。
【００９５】
以上、第2実施形態によれば、N=6、M=1、L=2、k=3とした場合であっても、第1実施形態と同様の効果を得ることができる。
【００９６】
（第3実施形態）
第3実施形態では、第1実施形態で用いたパラメータN，M，L、kをN=6、M=1、L=2、k=2とした場合、つまり、FFT部のポイント数を64、バタフライ演算回路の基数を2、最終ステージ演算部のバタフライ演算回路の並列数を4、データキャリア数を32とする。本実施形態では、信号送信装置から送信される信号フォーマットとFFT部の構成及び動作が第1実施形態と異なる。
【００９７】
図23に本実施形態における信号送信装置から送信される信号のフォーマットを示す。データキャリア数32、ヌルキャリア数32である。
【００９８】
本実施形態に係わるFFT部205のブロック図は、第2実施形態と同様図4である。ただし、出力制御部11の構成及び動作が第2実施形態と異なる。
【００９９】
図24にステージ演算部#5（最終ステージ演算部）の出力結果、つまり、出力制御部11の入力を示す。
【０１００】
第2実施形態同様、ステージ演算部#5（最終ステージ演算部）の第1選択回路#5_0がBFInOrder_0(j,t)、第1選択回路#5_1がBFInOrder_1(j,t)、第1選択回路#5_2がBFInOrder_2(j,t)、第1選択回路#5_3がBFInOrder_3(j,t)を選択した場合における、バタフライ演算回路#5_0、バタフライ演算回路#5_1、バタフライ演算回路#5_2、バタフライ演算回路#5_3の出力結果が示される。
【０１０１】
図25に本実施形態の出力制御部11の詳細構成を示す。
【０１０２】
図25の出力制御部11は2つのセレクタ32a、32bと、4つの終端ポート33a〜33dを備える。信号線S0はセレクタ32aで選択されたデータを外部に出力し、信号線S1〜S3はそれぞれ接続された出力ポートからのデータを外部に出力する。終端ポート33a、33b、33c、33dはそれぞれ接続された出力ポートまたはセレクタからのデータを廃棄する。
【０１０３】
2つのセレクタ32a、32bは、ステージ演算部#5（最終ステージ演算部）の出力がDCキャリア（0番目のキャリア）である時間（ここではt=0）のみ、信号帯域の右端キャリア（本実施形態では16番目のキャリア）とDCキャリアの出力位置を交換するよう動作する。即ち、t=0で、バタフライ#5_0の0番ポートとバタフライ#5_2の0番ポート間で、出力を交換するようにセレクタ32a、32bが外部からの選択信号SELに応じて動作する。
【０１０４】
なお図25におけるバタフライ演算回路#5-1の0番出力ポート、バタフライ演算回路#5_2、#5-3のそれぞれの1番出力ポートは、ポートAに対応する。バタフライ演算回路#5_0と#5_1のそれぞれの1番出力ポートと、バタフライ演算回路#5_3の0番出力ポートは、ポートBに対応する。バタフライ演算回路#5_0の0番出力ポートはポートCに対応する。バタフライ演算回路#5_2の0番出力ポートはポートDに対応する。信号線S1〜S3は第1信号線、信号線S0は第2信号線、終端部33a、33b、33dは第1終端部、終端部33cは第2終端部に相当する。
【０１０５】
図26に出力制御部の出力順、即ち、FFT部205の出力順を示す。
【０１０６】
信号帯域の右端のデータキャリア（16番目のキャリア）以外は、並列に、かつ連続で隣接するデータサブキャリアが出力される。
【０１０７】
以上、第3実施の形態によれば、N=6、M=1、L=2、k=2とした場合であっても、第1実施形態と同様の効果を得ることができる。
【０１０８】
（第4実施形態）
第4実施形態では、第1実施形態で用いたパラメータN，M，L、kをN=6、M=2、L=1、k=3とした場合、つまり、FFT部のポイント数を64、バタフライ演算回路の基数を4、最終ステージ演算部のバタフライ演算回路の並列数を2、データキャリア数を48とする。本実施形態では、信号送信装置から送信される信号フォーマットとFFT部の構成及び動作が第1実施形態と異なる。
【０１０９】
図27に第4実施形態における信号送信装置から送信される信号のフォーマットを示す。データキャリア数48、ヌルキャリア数16である。
【０１１０】
図28に第4実施形態に係わるFFT部205の構成を示す。
【０１１１】
図28のFFT部205は、複数の順次のステージ演算部#0〜#2と、FFT部の入力値もしくは、前述の各ステージ演算部の出力値を一時的に格納する、FFT部のポイント数（本実施形態では64）分のレジスタ#0〜#63からなるレジスタ群R0〜R2と、最終ステージ演算部#2の出力順を変更する出力制御部11を備える。
【０１１２】
本実施形態では、ステージ演算部数=log バタフライ演算回路の基数  （FFT部のポイント数）=log464=3となる。
【０１１３】
図29に最終ステージ演算部#2の構成を示す。
【０１１４】
最終ステージ演算部#2は、1つ乃至、複数個のバタフライ演算回路と、バタフライ演算回路と同数個の第1選択回路を備える。
【０１１５】
図30に最終ステージ演算部以外のステージ演算部#0、#1の構成を示す。
【０１１６】
ステージ演算部#0、#1は、1つ乃至、複数個のバタフライ演算回路と、バタフライ演算回路と同数個の第1選択回路と、バタフライ演算回路と同等個の第2選択回路を備えている。
【０１１７】
本実施形態では、ステージ演算部#0、#1のバタフライ演算回路の並列数を最終ステージ演算部のバタフライ演算回路の並列数と同じ2としているが、任意の値でよい。
【０１１８】
以下、図28〜図32を用いて、FFT部205の動作について説明する。
【０１１９】
まず、FFT部205の入力信号x(a)（0≦ a ≦ 2N-1）が、第1実施形態と同様、レジスタ群R0における、式レジスタ #a = x(a) (0≦ a ≦ 63)で決定されるレジスタにそれぞれ格納される。
【０１２０】
レジスタ群R0の各レジスタ#0〜#63に格納された信号はステージ演算部#0に入力される。図30の第1選択回路#p_0、#p_1（ここではp=0）はそれぞれ4個のレジスタを同時に選択して、対応するバタフライ演算回路#p_0、#p_1に入力する。第1選択回路#p_0で選択されたレジスタ値は、図中Bp,0(0)、Bp,0(1)、Bp,0(2)、Bp,0(3)により表され、第1選択回路#p_1で選択されたレジスタ値は、図中Bp,1(0)、Bp,1(1)、Bp,1(2)、Bp,1(3)により表される。
【０１２１】
なお本実施形態では、第1選択回路#p_0、#p_1にて選択するレジスタ、つまり、バタフライ演算回路#p_0、#p_1の入力値は、次式で示すFFTアルゴリズム(本実施形態では基数4のFFTアルゴリズム)の秩序を壊さない限り任意でよい。
【数９】
2011013251.tif 000011
ただし、WNは回転因子であり、次式で定義される。
【数１０】
2011013251.tif 000012
【０１２２】
バタフライ演算回路#p_0、#p_1に入力された値は、上式の基数4のFFTアルゴリズムに基づき、次式で示すバタフライ演算が施される。
【数１１】
2011013251.tif 000013
【０１２３】
バタフライ演算回路#p_0、#p_1の演算値（出力B’p,q(j)）は、対応する第2選択回路#p_0、#p_1により、第1実施形態と同様、対応する値Bp,q(j)が読み出されたレジスタと同じ番号のレジスタがレジスタ群R1の中から選択され、選択されたレジスタに格納される。
【０１２４】
ステージ演算部#1の処理は、ステージ演算部#0と同様であるため、詳細な説明は省略する。
【０１２５】
次に、図29、図31、図32を用いて、本実施形態のポイントである最終ステージ演算部#2の動作について説明する。
【０１２６】
第1実施形態と同様、まず、第1選択回路#2_0、#2_1にて選択されたレジスタに格納された信号が、対応するバタフライ演算回路#2_0、#2_1に入力される。
【０１２７】
最終ステージ演算部の第1選択回路#2_0、#2_1は、第1実施形態と同様、前述の式（5）または式（5-1）に従って、レジスタの選択を行う（バタフライ演算回路への入力順を決定する）。以下では式（5）を用いる場合を想定する。
【０１２８】
図31に、第1実施形態と同様の手順で算出した、BFInOrder_0(j,t)、BFInOrder_1(j,t)を、図32に、図31に対応するBFOutOrder_0(j,t)、BFOutOrder_1(j,t)を示す。2個ある第1選択回路は、それぞれ重複しないよう、BFInOrder_0(j,t)、BFInOrder_1(j,t)のいずれか1つを選択する。
【０１２９】
次に、バタフライ演算回路#2_0、#2_1に入力された値は、次式で示す、基数4（M=2）のバタフライ演算が施される。
【数１２】
2011013251.tif 000014
【０１３０】
第1選択回路#2_1がBFInOrder_1(j,t)を選択したと仮定すると、時間t=5では、図31からB2,1(0)は28番目のレジスタに格納されている値、B2,1(1)は29番目のレジスタに格納されている値、B2,1(2)は30番目のレジスタに格納されている値、B2,1(3)は31番目のレジスタに格納されている値となり、これらの値に基づいてバタフライ演算が行われる。
【０１３１】
図33に第1選択回路#2_0がBFInOrder_0(j,t)、第1選択回路#2_1がBFInOrder_1(j,t)を選択した場合における、バタフライ演算回路#2_0、バタフライ演算回路#2_1の出力結果を示す。
【０１３２】
図33から理解されるように、ヌルキャリアを含めた全サブキャリアにおいて、最終ステージ演算部の各バタフライ演算回路からは、並列に時間軸方向に隣接サブキャリアが順次出力される。
【０１３３】
次に図34を用いて、本実施形態の2つ目のポイントである出力制御部11の動作について説明する。
【０１３４】
図34に最終ステージの第1選択回路#2_0がBFInOrder_0(j,t)、第1選択回路#2_1がBFInOrder_1(j,t)を選択する場合の出力制御部の構成を示す。
【０１３５】
図34の出力制御部11は2つのセレクタ42a、42bと、2つの終端ポート43a、43bを備える。信号線S0はセレクタ42aで選択されたデータを外部に出力し、信号線S1〜S5はそれぞれ接続された出力ポートまたはセレクタからのデータを外部に出力する。終端ポート43a、43bはそれぞれ接続された出力ポートからのデータを廃棄する。
【０１３６】
2つのセレクタ42a、42bは、最終ステージ演算部の出力がDCキャリア（0番目のキャリア）である時間（ここではt=0）のみ、信号帯域の右端キャリア（本実施形態では24番目のキャリア）とDCキャリアの出力位置を交換するよう動作する。即ち、t=0で、バタフライ#2_0の0番ポートとバタフライ#2_1の1番ポート間で、出力を交換するようにセレクタ42a、42bが外部からの選択信号SELに応じて動作する。
【０１３７】
なお図34におけるバタフライ演算回路#2_0の1、3番目の出力ポート、バタフライ演算回路#2_1の0、2、3番目の出力ポートは、ポートAに対応する。バタフライ演算回路#2_0の2番出力ポートはポートBに対応する。バタフライ演算回路#2_0の0番出力ポートはポートCに対応する。バタフライ演算回路#2_1の1番出力ポートはポートDに対応する。信号線S1〜S5は第1信号線、信号線S0は第2信号線、終端部43aは第1終端部、終端部43bは第2終端部に相当する。
【０１３８】
図35に出力制御部11の出力順、即ち、FFT部205の出力順を示す。信号帯域の右端のデータキャリア（24番目のキャリア）以外は、並列に、かつ連続で隣接するデータサブキャリアが出力される。
【０１３９】
以上、第4実施形態によれば、N=6、M=2、L=1、k=3とした場合であっても、第1実施形態と同様の効果を得ることができる。
【０１４０】
（第5実施形態）
第5実施形態では、第1実施形態で用いたパラメータN，M，L、kをN=6、M=2、L=2、k=7とした場合、つまり、FFT部のポイント数を64、バタフライ演算回路の基数を4、最終ステージ演算部のバタフライ演算回路の並列数を4、データキャリア数を56とする。本実施形態では、信号送信装置から送信される信号フォーマットとFFT部の構成及び動作が第1実施形態と異なる。
【０１４１】
図36に本実施形態における信号送信装置から送信される信号フォーマットを示す。データキャリア数56、ヌルキャリア数8である。
【０１４２】
本実施形態に係わるFFT部205のブロック図は、第4実施形態と同様図28である。ただし、最終ステージ演算部#2と出力制御部11の構成及び動作が第4実施形態と異なる。
【０１４３】
図37に本実施形態の最終ステージ演算部#2の構成を示す。
【０１４４】
最終ステージ演算部#2は、複数個のバタフライ演算回路#2_0〜#2_3と、バタフライ演算回路と同数個の第1選択回路#2_0〜#2_3を備える。本実施形態では、最終ステージ演算部のバタフライ演算回路の個数（並列数）を4（L=2）としている。
【０１４５】
以下、図37〜図39を用いて本実施形態のポイントである最終ステージ演算部#2の動作について説明する。
【０１４６】
第1実施形態同様、まず、第1選択回路#2_0〜#2_3の各々により4つのレジスタが同時に選択され、選択されたレジスタに格納された信号が、対応するバタフライ演算回路#2_0〜#2_3に入力される。最終ステージ演算部の第1選択回路は、第1実施形態同様、式（5）または式（5-1）に従って、レジスタの選択順番、つまり、バタフライ演算回路への入力順を決定する。以下では式（5）を用いる場合を想定する。
【０１４７】
図38に第1実施形態と同様の手順で算出した、BFInOrder_0(j,t)、BFInOrder_1(j,t)、BFInOrder_2(j,t)、BFInOrder_3(j,t)を示す。図39に、図38に対応するBFOutOrder_0(j,t)、BFOutOrder_1(j,t)、BFOutOrder_2(j,t)、BFOutOrder_3(j,t)を示す。
【０１４８】
4個ある第1選択回路は、それぞれ重複しないよう、BFInOrder_0(j,t)、BFInOrder_1(j,t)、BFInOrder_2(j,t)、BFInOrder_3(j,t)のいずれか1つを選択する。
【０１４９】
次に、バタフライ演算回路#2_0〜#2_3に入力された値は、式（9）に従って、基数4（M=2）のバタフライ演算が施される。
【０１５０】
例えば第1選択回路#2_1がBFInOrder_1(j,t)を選択したと仮定すると、時間t=2では、図38からB2,1(0)は36番目のレジスタに格納されている値、B2,1(1)は37番目のレジスタに格納されている値、B2,1(2)は38番目のレジスタに格納されている値、B2,1(3)は39番目のレジスタに格納されている値となり、これらの値がバタフライ演算回路#2_1に入力されて基数4（M=2）のバタフライ演算が施される。
【０１５１】
図40に、第1選択回路#2_0がBFInOrder_0(j,t)、第1選択回路#2_1がBFInOrder_1(j,t)、第1選択回路#2_2がBFInOrder_2(j,t)、第1選択回路#2_3がBFInOrder_3(j,t)を選択した場合における、バタフライ演算回路#2_0、バタフライ演算回路#2_1、バタフライ演算回路#2_2、バタフライ演算回路#2_3の出力結果を示す。
【０１５２】
図40から理解されるように、最終ステージ演算部の各バタフライ演算回路からは、ヌルキャリアを含めた全サブキャリアにおいて、時間軸に沿って並列に隣接サブキャリアが順次出力される。
【０１５３】
次に図41を用いて、本実施形態の2つ目のポイントである出力制御部11の動作について説明する。
【０１５４】
図41に最終ステージ演算部#2の第1選択回路#2_0がBFInOrder_0(j,t)、第1選択回路#2_1がBFInOrder_1(j,t)、第1選択回路#2_2がBFInOrder_2(j,t)、第1選択回路#2_3がBFInOrder_3(j,t)を選択する場合の出力制御部の構成を示す。
【０１５５】
図41の出力制御部11は2つのセレクタ52a、52bと、2つの終端ポート53a、53bを備える。信号線S0はセレクタ52aで選択されたデータを外部に出力し、信号線S1〜S13はそれぞれ接続された出力ポートからのデータを外部に出力する。終端ポート53a、53bはそれぞれ接続された出力ポートまたはセレクタからのデータを廃棄する。
【０１５６】
2つのセレクタ52a、52bは、最終ステージ演算部#2の出力がDCキャリア（0番目のキャリア）である時間（ここではt=0）のみ、信号帯域の右端キャリア（本実施形態では28番目のキャリア）とDCキャリアの出力位置を交換するよう動作する。即ち、t=0において、バタフライ#2_0の0番出力ポートとバタフライ#2_3の1番出力ポート間で、出力を交換するようにセレクタ52a、52bが外部からの選択信号SELに応じて動作する。
【０１５７】
なお図41におけるバタフライ演算回路#2_0の1、3番目の出力ポート、バタフライ演算回路#2_1、#2_2のすべての出力ポート、バタフライ演算回路#2_3の0，2，3番目の出力ポートは、ポートAに対応する。バタフライ演算回路#2_0の2番出力ポートはポートBに対応する。バタフライ演算回路#2_0の0番出力ポートはポートCに対応する。バタフライ演算回路#2_3の1番出力ポートはポートDに対応する。信号線S1〜S13は第1信号線、信号線S0は第2信号線、終端部53aは第1終端部、終端部53bは第2終端部に相当する。
【０１５８】
図42に出力制御部11の出力順、即ち、FFT部205の出力順を示す。
【０１５９】
2つのセレクタ52a、52bの上記動作により、信号帯域の右端のデータキャリア（28番目のキャリア）以外は、並列に、かつ連続で隣接するデータサブキャリアが出力される。
【０１６０】
以上、第5実施形態によれば、N=6、M=2、L=2、k=7とした場合であっても、第1実施形態と同様の効果を得ることができる。
【０１６１】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【産業上の利用可能性】
【０１６２】
本願発明は、OFDM信号を受信する信号受信装置以外にも、FFT部を備える種々の装置に対して適用することが可能である。
【図１】
2011013251.tif 000019
【図２】
2011013251.tif 000020
【図３】
2011013251.tif 000021
【図４】
2011013251.tif 000022
【図５】
2011013251.tif 000023
【図６】
2011013251.tif 000024
【図７】
2011013251.tif 000025
【図８】
2011013251.tif 000026
【図９】
2011013251.tif 000027
【図１０】
2011013251.tif 000028
【図１１】
2011013251.tif 000029
【図１２】
2011013251.tif 000030
【図１３】
2011013251.tif 000031
【図１４】
2011013251.tif 000032
【図１５】
2011013251.tif 000033
【図１６】
2011013251.tif 000034
【図１７】
2011013251.tif 000035
【図１８】
2011013251.tif 000036
【図１９】
2011013251.tif 000037
【図２０】
2011013251.tif 000038
【図２１】
2011013251.tif 000039
【図２２】
2011013251.tif 000040
【図２３】
2011013251.tif 000041
【図２４】
2011013251.tif 000042
【図２５】
2011013251.tif 000043
【図２６】
2011013251.tif 000044
【図２７】
2011013251.tif 000045
【図２８】
2011013251.tif 000046
【図２９】
2011013251.tif 000047
【図３０】
2011013251.tif 000048
【図３１】
2011013251.tif 000049
【図３２】
2011013251.tif 000050
【図３３】
2011013251.tif 000051
【図３４】
2011013251.tif 000052
【図３５】
2011013251.tif 000053
【図３６】
2011013251.tif 000054
【図３７】
2011013251.tif 000055
【図３８】
2011013251.tif 000056
【図３９】
2011013251.tif 000057
【図４０】
2011013251.tif 000058
【図４１】
2011013251.tif 000059
【図４２】
2011013251.tif 000060
【手続補正書】
【提出日】平成24年3月15日(2012.3.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
2（N-（M+L））*2k  （Nは2以上の整数、Mは2N/2M が整数となる1以上の整数、LはMが1のときは1以上かつ（N-M-1）以下の整数、Mが1より大きいときは0以上かつ（N-M-1）以下の整数、kは、1≦k≦2（M+L-1）-1を満たす整数）個のデータサブキャリアと、2N-｛2（N-（M+L））*2k｝個のヌルサブキャリアとを含む2N個のサブキャリアを用いる直交周波数分割多重方式の信号受信装置であって、
2N個のFFT（Fast Fourier Transform:高速フーリエ変換）ポイントに対応する2N個の入力値に対し段階的にバタフライ演算を施す第0〜第p-1（pは
2011013251.tif 000061
に等しい値）のステージ演算部と、
前記2N個のFFTポイントに対応配置され、前記第p-1のステージ演算部による前記バタフライ演算により得られた値を格納する2N個のレジスタと、
（a）それぞれ2M個の入力ポートと2M個の出力ポートを有し、前記入力ポートに与えられた値に基づきバタフライ演算を行い、前記バタフライ演算により得られた値をそれぞれ対応する前記出力ポートから送出する、2L個のバタフライ演算回路と、
（b）前記バタフライ演算回路に対応配置され、それぞれ対応するバタフライ演算回路のj(0 ≦ j ≦ 2M-1)番目の入力ポートに、2L個のBFInOrder_i(j,t) （BFInOrder_i(j,t) は、H（Hは1より大きい整数）進数で表現されたBFOutOrder_i(j,t)（BFOutOrder_i(j,t)は t + j*2(N-M) + i*2(N-(M+L) または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)、tは0 以上2 (N-(M+L) -1以下の演算時間を表す整数、iは0以上2L-1以下の整数）を
2011013251.tif 000062
の2M進数に変換し、変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値）のうちいずれか異なる１つに応じたレジスタの値を読み出して与える、2L個の選択回路と、
を有する第pステージ演算部と、
各前記バタフライ演算回路の各前記出力ポートのそれぞれから送出される前記値のうち前記データサブキャリアに対応する値を選択的に出力する出力制御部と、
を備えたことを特徴とする信号受信装置。
【請求項２】
各前記バタフライ演算回路の各前記出力ポートはそれぞれ、
前記データサブキャリアに対応する値のみを送出するポートA、
前記ヌルサブキャリアに対応する値のみを送出するポートB、
前記ヌルサブキャリアのうちDCキャリアに対応する値と、前記データサブキャリアに対応する値とを送出するポートC、
1つの前記データサブキャリアに対応する値と、前記ヌルサブキャリアに対応する値とを送出するポートD
のいずれかであり、
前記第Cポートから送出される前記DCキャリアに対応する値と、前記第Dポートから送出される前記1つのデータサブキャリアに対応する値はそれぞれ同じ演算時間に異なるバタフライ演算回路で計算され、
前記出力制御部は、
前記ポートAから送出される値を出力する第1信号線と、
前記ポートBから送出される値を終端する第1終端部と、
前記ポートCから送出される値を出力する第2信号線と、
前記ポートDから送出される値を終端する第2終端部と、
前記第Cポートから送出される前記DCキャリアに対応する値と前記第Dポートから送出される前記1つのデータサブキャリアに対応する値とを入れ替えることにより、前記DCキャリアに対応する値を前記第2終端部によって終端し、前記1つのデータサブキャリアに対応する値を前記第2信号線から出力する、セレクタと、
を備えた請求項1に記載の信号受信装置。
【請求項３】
2（N-（M+L））*2k  （Nは2以上の整数、Mは2N/2Mが整数となる1以上の整数、LはMが1のときは1以上かつ（N-M-1）以下の整数、Mが1より大きいときは0以上かつ（N-M-1）以下の整数、kは、1≦k≦2（M+L-1）-1を満たす整数）個のデータサブキャリアと、2N-｛2（N-（M+L））*2k｝個のヌルサブキャリアとを含む2N個のサブキャリアを用いる直交周波数分割多重方式の通信システムであって、
（A）送信データを変調して変調データを生成する変調部と、
前記変調データを前記データサブキャリアにマッピングし、ヌルデータを前記ヌルサブキャリアにマッピングすることによりマッピングデータを生成するマッピング部と、
前記マッピングデータを逆高速フーリエ変換（FFT:Fast Fourier Transform）することにより逆高速フーリエ変換信号を生成する逆高速フーリエ変換部と、
前記逆高速フーリエ変換信号にガードインターバルを付加するガードインターバル付加部と、
前記ガードインターバルが付加された前記逆高速フーリエ変換信号を送信する送信部と、
を有する信号送信装置と、
（B）前記ガードインターバルが付加された前記逆高速フーリエ変換信号を受信する受信部と、
前記ガードインターバルが付加された前記逆高速フーリエ変換信号から前記ガードインターバルを除去するガードインターバル除去部と、
前記ガードインターバルが除去された後の前記逆高速フーリエ変換信号における2N個のFFTポイントの値に対し段階的にバタフライ演算を施す第0〜第p-1（pは
2011013251.tif 000063
に等しい値）のステージ演算部と、
前記2N個のFFTポイントに対応配置され、前記第pのステージ演算部による前記バタフライ演算により得られた値を格納する2N個のレジスタと、
（a）それぞれ2M個の入力ポートと2M個の出力ポートを有し、前記入力ポートに与えられた値に基づきバタフライ演算を行い、前記バタフライ演算により得られた値をそれぞれ対応する前記出力ポートから送出する、2L個のバタフライ演算回路と、
（b）前記バタフライ演算回路に対応配置され、それぞれ2L個のBFInOrder_i(j,t)（BFInOrder_i(j,t) は、H（Hは1より大きい整数）進数で表現されたBFOutOrder_i(j,t)（BFOutOrder_i(j,t)は t + j*2(N-M) + i*2(N-(M+L) または(2(N-(M+L))-1-t)+ j*2(N-M) + i*2(N-(M+L)、tは0 以上2 (N-(M+L) -1以下の演算時間を表す整数、iは0以上2L-1以下の整数）を
2011013251.tif 000064
の2M進数に変換し、変換された値をワードリバースし、ワードリバースされた値を前記H進数に変換した値）のうちいずれか異なる１つに応じたレジスタの値を読み出して与える、2L個の選択回路と、
を有する第pステージ演算部と、
各前記バタフライ演算回路の各前記出力ポートのそれぞれから送出される前記値のうち前記データサブキャリアに対応する値を選択的に出力する出力制御部と、
を有する信号受信装置と
を備えたことを特徴とする通信システム。
【国際調査報告】
2011013251.tif 000065
2011013251.tif 000066
2011013251.tif 000067