(57)【特許請求の範囲】
【請求項１】
２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、
２Ｍ（Ｍは自然数、但し、Ｍ≦Ｎ）個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、
前記第１のバッファから出力されたデジタル信号に対して、２Ｍ−１個ずつ（Ｍ−１）段の第１のバタフライ演算処理を行い、前記第２のバッファから出力されたデジタル信号に対して、２Ｍ−１個ずつ（Ｍ−１）段の第２のバタフライ演算処理を行う第１の高速フーリエ変換処理部と、
前記第１のバタフライ演算処理後のデジタル信号に対して、２Ｎ個ずつ（Ｎ−Ｍ＋１）段のバタフライ演算処理を行う第２の高速フーリエ変換処理部と、
前記第２のバタフライ演算処理後のデジタル信号に対して、２Ｍ個ずつ１段のバタフライ演算処理を行う第３の高速フーリエ変換処理部と、
を有する高速フーリエ変換回路。
【請求項２】
前記第１の高速フーリエ変換処理部は、
前記第１のバタフライ演算処理および前記第２のバタフライ演算処理に使用する係数を共用する、
請求項１記載の高速フーリエ変換回路。
【請求項３】
２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、
２Ｍ（Ｍは自然数、但し、Ｍ≦Ｎ）個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、
前記第１のバッファから出力されたデジタル信号に対して、２Ｍ−１個ずつ（Ｍ−１）段の第１のバタフライ演算処理を行い、前記第２のバッファから出力されたデジタル信号に対して、２Ｍ−１個ずつ（Ｍ−１）段の第２のバタフライ演算処理を行う第１の高速フーリエ変換処理部と、
前記第１のバタフライ演算処理後のデジタル信号に対して、２Ｍ個ずつ１段の第３のバタフライ演算処理を行い、前記第２のバタフライ演算処理後のデジタル信号に対して、２Ｍ個ずつ１段の第４のバタフライ演算処理を行う第２の高速フーリエ変換処理部と、
前記第３のバタフライ演算処理後のデジタル信号に対して、２Ｎ個ずつ（Ｎ−Ｍ）段のバタフライ演算処理を行う第３の高速フーリエ変換処理部と、
を有する高速フーリエ変換回路。
【請求項４】
前記第１の高速フーリエ変換処理部は、
前記第１のバタフライ演算処理および前記第２のバタフライ演算処理に使用する係数を共用し、
前記第２の高速フーリエ変換処理部は、
前記第３のバタフライ演算処理および前記第４のバタフライ演算処理に使用する係数を共用する、
請求項３記載の高速フーリエ変換回路。
【請求項５】
前記第２の高速フーリエ変換処理部で行われるバタフライ演算処理は、パイプライン型である、請求項１記載の高速フーリエ変換回路。
【請求項６】
前記第２の高速フーリエ変換処理部で行われるバタフライ演算処理は、メモリベース型である、請求項１記載の高速フーリエ変換回路。
【請求項７】
前記第３の高速フーリエ変換処理部で行われるバタフライ演算処理は、パイプライン型である、請求項３記載の高速フーリエ変換回路。
【請求項８】
前記第３の高速フーリエ変換処理部で行われるバタフライ演算処理は、メモリベース型である、請求項３記載の高速フーリエ変換回路。
【請求項９】
前記第１の高速フーリエ変換処理部は、
前記第１のバタフライ演算処理および前記第２のバタフライ演算処理に供給するバッファ出力を切り替えるスイッチを有し、
前記スイッチを切り替えて、前記第１のバッファおよび前記第２のバッファのいずれか一方のバッファから出力されたデジタル信号に対して、前記第１のバタフライ演算処理および前記第２のバタフライ演算処理を行う、
請求項１または請求項３記載の高速フーリエ変換回路。
【請求項１０】
２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、
２Ｎ−１個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、
前記第１のバッファの後段側に接続され、デジタル信号を蓄積するＮ個のデータ蓄積部と、
前記第２のバッファの後段側に接続され、デジタル信号を蓄積する（Ｎ−１）個のデータ蓄積部と、
前記Ｎ個のデータ蓄積部に蓄積されたデジタル信号に対する１段目からＮ段目のバタフライ演算処理と、前記（Ｎ−１）個のデータ蓄積部に蓄積されたデジタル信号に対する１段目から（Ｎ−１）段目のバタフライ演算処理とを行うＮ個のバタフライ演算部と、
前記第１のバッファまたは前記第２のバッファから入力されたデジタル信号の出力先を次段のデータ蓄積部または次段のスイッチに切り替える第１のスイッチと、前段のスイッチまたは前段のバタフライ演算部から入力されたデジタル信号の出力先を次段のデータ蓄積部または次段のスイッチに切り替える第２ないし第ＮのスイッチとからなるＮ個のスイッチと、を有し、
前記Ｎ個のスイッチは、それぞれ、
入力したデジタル信号を設定に応じて次段のデータ蓄積部または次段のスイッチに出力する、
高速フーリエ変換回路。
【請求項１１】
請求項１から請求項１０のいずれかに記載の高速フーリエ変換回路を有する通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高速フーリエ変換回路に関する。
【背景技術】
【０００２】
従来、複数の通信方式に対応可能な高速フーリエ変換回路（以下「マルチモード高速フーリエ変換回路」という）としては、例えば、特許文献１に記載されているものがある。
【０００３】
図１１は、特許文献１に記載された従来のマルチモード高速フーリエ変換回路の構成を示すブロック図である。
【０００４】
図１１に示すマルチモード高速フーリエ変換回路１は、直列並列変換回路１１、直列並列変換回路１２、スイッチ１３、ＦＦＴ（Fast Fourier Transform：高速フーリエ変換）回路１４、並列直列変換回路１５、間引き回路１６、振幅調整回路１７、ゼロ信号生成回路１８、直列並列変換回路１９、および合成器２０を有する。
【０００５】
この回路１においては、Ｐ（＝２０４８）ポイントのＦＦＴ処理を必要とするＯＦＤＭ（Orthogonal Frequency Division Multiplexing：直交周波数分割多重）方式と、Ｑ（＝６４）ポイントのＦＦＴ処理を必要とするＯＦＤＭ方式とに対応する場合、いずれもＰポイントのＦＦＴ処理を行う。ここで、ＱポイントのＦＦＴ処理を必要とするＯＦＤＭ方式の信号を受信する場合には、合成器２０において受信信号とゼロ信号生成回路１８から出力されるゼロ値のデータとを合成することにより、Ｑ本のパラレルデータをＰ本のパラレルデータに変換することによって、ＰポイントのＦＦＴ処理を行う。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記した従来のマルチモード高速フーリエ変換回路においては、Ｑ（＜Ｐ）ポイントのＦＦＴ処理を必要とするＯＦＤＭ方式の信号を受信する場合にもＰポイントのＦＦＴ処理を行うため、余分な演算を行うことになり、演算リソースの最適化が図れていないという問題がある。
【０００７】
なお、近年は、テレビの受信機能を有する通信装置の需要が高まっており、通信中でもテレビを受信できるよう、任意の複数の通信方式（ＯＦＤＭ方式に限定されない）に対して、同時にＦＦＴ処理を行うことができるマルチモード高速フーリエ変換回路が求められている。このようなマルチモード高速フーリエ変換回路において、複数のＦＦＴ処理を効率化するべく、演算リソースの最適化を図ることは、回路の小型化と省電力化につながり、極めて有益である。
【０００８】
本発明は、かかる点に鑑みてなされたものであり、複数の通信方式に対応しつつ、演算リソースの最適化を図ることができる高速フーリエ変換回路を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の高速フーリエ変換回路は、２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、２Ｍ（Ｍは自然数、但し、Ｍ≦Ｎ）個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、前記第１のバッファから出力されたデジタル信号に対する第１のバタフライ演算処理と、前記第２のバッファから出力されたデジタル信号に対する第２のバタフライ演算処理とを行う第１の高速フーリエ変換処理部と、前記第１のバタフライ演算処理後のデジタル信号に対して、バタフライ演算処理を行う第２の高速フーリエ変換処理部と、前記第２のバタフライ演算処理後のデジタル信号に対して、バタフライ演算処理を行う第３の高速フーリエ変換処理部と、を有する構成を採る。
【００１０】
また、本発明の高速フーリエ変換回路は、２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、２Ｍ（Ｍは自然数、但し、Ｍ≦Ｎ）個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、前記第１のバッファから出力されたデジタル信号に対する第１のバタフライ演算処理と、前記第２のバッファから出力されたデジタル信号に対する第２のバタフライ演算処理とを行う第１の高速フーリエ変換処理部と、前記第１のバタフライ演算処理後のデジタル信号に対する第３のバタフライ演算処理と、前記第２のバタフライ演算処理後のデジタル信号に対する第４のバタフライ演算処理とを行う第２の高速フーリエ変換処理部と、前記第３のバタフライ演算処理後のデジタル信号に対して、バタフライ演算処理を行う第３の高速フーリエ変換処理部と、を有する構成を採る。
【００１１】
また、本発明の高速フーリエ変換回路は、２Ｎ（Ｎは自然数）個のデジタル信号を蓄積し、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えたデジタル信号を出力する第１のバッファと、２Ｎ−１個のデジタル信号を蓄積し、ビットリバーサルの位置に並び替えたデジタル信号を出力する第２のバッファと、前記第１のバッファの後段側に接続され、デジタル信号を蓄積するＮ個のデータ蓄積部と、前記第２のバッファの後段側に接続され、デジタル信号を蓄積する（Ｎ−１）個のデータ蓄積部と、前記Ｎ個のデータ蓄積部に蓄積されたデジタル信号に対する１段目からＮ段目のバタフライ演算処理と、前記（Ｎ−１）個のデータ蓄積部に蓄積されたデジタル信号に対する１段目から（Ｎ−１）段目のバタフライ演算処理とを行うＮ個のバタフライ演算部と、前記第１のバッファまたは前記第２のバッファならびに前記Ｎ個のバタフライ演算部から入力したデジタル信号の出力先を切り替えるＮ個のスイッチと、を有し、前記Ｎ個のスイッチは、それぞれ、入力したデジタル信号を設定に応じて次段のデータ蓄積部または次段のスイッチに出力する、構成を採る。
【発明の効果】
【００１２】
本発明によれば、複数の通信方式に対応しつつ、演算リソースの最適化を図ることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１４】
（実施の形態１）
図１は、本発明の実施の形態１に係る高速フーリエ変換回路の構成を示すブロック図である。
【００１５】
図１に示す高速フーリエ変換回路（以下「ＦＦＴ回路」という）１００は、複数の通信方式に対応可能なマルチモード高速フーリエ変換回路である。ここでは、２Ｎポイント（Ｎは自然数）のＦＦＴ処理を必要とする通信方式と、２Ｍポイント（Ｍは自然数、但し、Ｍ≦Ｎとする）のＦＦＴ処理を必要とする通信方式とを同時処理する場合について説明する。２ＮポイントのＦＦＴ処理を行う場合は、基数２のバタフライ演算処理をＮ段行う必要があり、２ＭポイントのＦＦＴ処理を行う場合は、基数２のバタフライ演算処理をＭ段行う必要がある。
【００１６】
図１に示すＦＦＴ回路１００は、第１のＦＦＴ処理部１１０、第２のＦＦＴ処理部１２０、第３のＦＦＴ処理部１３０、係数蓄積部１４０、および制御部１５０を有する。
【００１７】
第１のＦＦＴ処理部１１０は、第１のバッファ１１１と、第１−１から第１−（Ｍ−１）までの（Ｍ−１）個のデータ蓄積部１１２−１〜１１２−（Ｍ−１）と、第２のバッファ１１３と、第２−１から第２−（Ｍ−１）までの（Ｍ−１）個のデータ蓄積部１１４−１〜１１４−（Ｍ−１）と、第１から第（Ｍ−１）までの（Ｍ−１）個のバタフライ演算部１１５−１〜１１５−（Ｍ−１）とを有し、第１のバッファ１１１および第２のバッファ１１３に入力されたデジタル信号に対して、（Ｍ−１）段（つまり、１段目から（Ｍ−１）段目まで）のＦＦＴ処理を行う。
【００１８】
第２のＦＦＴ処理部１２０は、第１−Ｍから第１−Ｎまでの（Ｎ−Ｍ＋１）個のデータ蓄積部１２１―Ｍ〜１２１―Ｎと、第Ｍから第Ｎまでの（Ｎ−Ｍ＋１）個のバタフライ演算部１２２−Ｍ〜１２２−Ｎとを有し、第１のバッファ１１１に入力され第１のＦＦＴ処理部１１０でＦＦＴ処理されたデジタル信号に対して、（Ｎ−Ｍ＋１）段（つまり、Ｍ段目からＮ段目まで）のＦＦＴ処理を行う。
【００１９】
第３のＦＦＴ処理部１３０は、第２−Ｍのデータ蓄積部１３１と、第２−Ｍのバタフライ演算部１３２とを有し、第２のバッファ１１３に入力され第１のＦＦＴ処理部１１０でＦＦＴ処理されたデジタル信号に対して、１段（つまり、Ｍ段目）のＦＦＴ処理を行う。
【００２０】
第１のバッファ１１１は、２Ｎ個のデジタル信号を蓄積し、制御部１５０の制御により、蓄積されたデジタル信号を第１−１のデータ蓄積部１１２−１に出力する。このとき、第１のバッファ１１１に入力されたデジタル信号は、各ビットの並び順を逆転させたビットリバーサルの位置に並び替えられて出力される。例えば、図２に示すように、入力されたデジタル信号は、０、１、…、２Ｎ−２、２Ｎ−１という並びを、ビットリバーサルの位置に並び替えた０、２Ｎ−１、…、２Ｎ−１−１、２Ｎ−１という並びに変換して出力される。
【００２１】
第２のバッファ１１３は、２Ｍ個のデジタル信号を蓄積し、制御部１５０の制御により、蓄積されたデジタル信号を第２−１のデータ蓄積部１１４−１に出力する。このとき、第２のバッファ１１３に入力されたデジタル信号は、第１のバッファ１１１と同様、ビットリバーサルの位置に並び替えられて出力される。例えば、図２に示すように、入力されたデジタル信号は、０、１、…、２Ｍ−２、２Ｍ−１という並びを、ビットリバーサルの位置に並び替えた０、２Ｍ−１、…、２Ｍ−１−１、２Ｍ−１という並びに変換して出力される。
【００２２】
なお、本実施の形態では、第１のバッファ１１１および第２のバッファ１１３は、それぞれ第１のＦＦＴ処理部１１０に含まれているが、もちろん、これに限定されるわけではなく、第１のＦＦＴ処理部１１０の外に配置されていてもよい。この場合、第１のＦＦＴ処理部は、（Ｍ−１）個のデータ蓄積部１１２−１〜１１２−（Ｍ−１）と、（Ｍ−１）個のデータ蓄積部１１４−１〜１１４−（Ｍ−１）と、（Ｍ−１）個のバタフライ演算部１１５−１〜１１５−（Ｍ−１）とで構成されることになる。
【００２３】
第１−１のデータ蓄積部１１２−１および第２−１のデータ蓄積部１１４−１は、それぞれ、２Ｍ−１個のデジタル信号を蓄積する。第１−１のデータ蓄積部１１２−１または第２−１のデータ蓄積部１１４−１に、２Ｍ−１個のデジタル信号が蓄積されると、第１のバタフライ演算部１１５−１において、２Ｍ−１個の蓄積されたデジタル信号に対して第１段目の基数２のバタフライ演算が実行される。このとき、第１−１のデータ蓄積部１１２−１に蓄積されたデジタル信号に対するバタフライ演算の結果は、第１−２のデータ蓄積部１１２−２に出力され、第２−１のデータ蓄積部１１４−１に蓄積されたデジタル信号に対するバタフライ演算の結果は、第２−２のデータ蓄積部１１４−２に出力される。
【００２４】
第１のバタフライ演算部１１５−１は、図２に示すように、第１−１のデータ蓄積部１１２−１または第２−１のデータ蓄積部１１４−１に蓄積された２Ｍ−１個のデジタル信号の１番目と２番目、３番目と４番目、…、（２Ｍ−１−１）番目と２Ｍ−１番目に対して、それぞれ、係数蓄積部１４０から入力された係数を用いて、１段目の基数２のバタフライ演算を実行する。
【００２５】
第１−１のデータ蓄積部１１２−１に蓄積されたデジタル信号をｆ１（１、ｎ）、入力された係数をＷ１（１、ｎ）とすると、出力されるデジタル信号は、次の（式１）および（式２）で表される。
ｆ１（２、ｎ）＝ｆ１（１、ｎ）＋Ｗ１（１、ｎ）×ｆ１（１、ｎ＋１）…（式１）
ｆ１（２、ｎ＋１）＝ｆ１（１、ｎ）−Ｗ１（１、ｎ）×ｆ１（１、ｎ＋１）…（式２)
【００２６】
また、第２−１のデータ蓄積部１１４−１に蓄積されたデジタル信号をｆ２（１、ｎ）、入力された係数をＷ２（１、ｎ）とすると、出力されるデジタル信号は、次の（式３）および（式４）で表される。
ｆ２（２、ｎ）＝ｆ２（１、ｎ）＋Ｗ２（１、ｎ）×ｆ２（１、ｎ＋１）…（式３）
ｆ２（２、ｎ＋１）＝ｆ２（１、ｎ）−Ｗ２（１、ｎ）×ｆ２（１、ｎ＋１）…(式４）
【００２７】
ここで、係数Ｗ１（１、ｎ）は、次の（式５）で表される。
Ｗ１（１、ｎ）＝ｅｘｐ（−ｊ２πｋ１（１、ｎ）／２Ｎ）  …（式５）
また、係数Ｗ２（１、ｎ）は、次の（式６）で表される。
Ｗ２（１、ｎ）＝ｅｘｐ（−ｊ２πｋ２（１、ｎ）／２Ｍ）  …（式６）
【００２８】
このとき、ｋ１（１、ｎ）＝０または２Ｎ−１、ｋ２（１、ｎ）＝０または２Ｍ−１であるため、（式５）と（式６）は、Ｗ１（１、ｎ）＝Ｗ２（１、ｎ）＝１または−１となる。
【００２９】
すなわち、第１のバタフライ演算部１１５−１で使用する係数は、第１−１のデータ蓄積部１１２−１に蓄積されたデジタル信号および第２−１のデータ蓄積部１１４−１に蓄積されたデジタル信号に対して、共用可能である。
【００３０】
図３は、基数２のバタフライ演算を実行する第１のバタフライ演算部１１５−１の構成を示すブロック図である。
【００３１】
第１のバタフライ演算部１１５−１は、４個のスイッチ１６１、１６２，１６３、１６４と、加算器１６５と、減算器１６６と、乗算器１６７とを有し、図１に示すように、制御部１５０によって制御される。各スイッチ１６１〜１６４は、制御部１５０によってＨまたはＬの位置に制御される。各スイッチ１６１〜１６４の位置がＨのとき、第１−１のデータ蓄積部１１２−１に蓄積されたデジタル信号に対するバタフライ演算結果として、スイッチ１６３から（式１）で示すデジタル信号が、スイッチ１６４から（式２）で示すデジタル信号がそれぞれ出力される。一方、各スイッチ１６１〜１６４の位置がＬのとき、第２−１のデータ蓄積部１１４−１に蓄積されたデジタル信号に対するバタフライ演算結果として、スイッチ１６３から（式３）で示すデジタル信号が、スイッチ１６４から（式４）で示すデジタル信号がそれぞれ出力される。
【００３２】
その後、データ蓄積部へのデジタル信号の蓄積と、蓄積されたデジタル信号に対するバタフライ演算とを繰り返し、第（Ｍ−１）のバタフライ演算部１１５−（Ｍ−１）は、図２に示すように、第１−（Ｍ−１）のデータ蓄積部１１２−（Ｍ−１）または第２−（Ｍ−１）のデータ蓄積部１１４−（Ｍ−１）に蓄積された２Ｍ−１個のデジタル信号に対して、係数蓄積部１４０から入力された係数を用いて、（Ｍ−１）段目の基数２のバタフライ演算を実行する。
【００３３】
第１−（Ｍ−１）のデータ蓄積部１１２−（Ｍ−１）に蓄積されたデジタル信号をｆ１（Ｍ−１、ｎ）、入力された係数をＷ１（Ｍ−１、ｎ）とすると、出力されるデジタル信号は、次の（式７）および（式８）で表される。
ｆ１（Ｍ、ｎ）
＝ｆ１（Ｍ−１、ｎ）＋Ｗ１（Ｍ−１、ｎ）×ｆ１（Ｍ−１、ｎ＋２Ｍ−２）…（式７）
ｆ１（Ｍ、ｎ＋２Ｍ−２）
＝ｆ１（Ｍ−１、ｎ）−Ｗ１（Ｍ−１、ｎ）×ｆ１（Ｍ−１、ｎ＋２Ｍ−２）…（式８）
【００３４】
また、第２−（Ｍ−１）のデータ蓄積部１１４−（Ｍ−１）に蓄積されたデジタル信号をｆ２（Ｍ−１、ｎ）、入力された係数をＷ２（Ｍ−１、ｎ）とすると、出力されるデジ
タル信号は、次の（式９）および（式１０）で表される。
ｆ２（Ｍ、ｎ）
＝ｆ２（Ｍ−１、ｎ）＋Ｗ２（Ｍ−１、ｎ）×ｆ２（Ｍ−１、ｎ＋２Ｍ−２）…（式９）
ｆ２（Ｍ、ｎ＋２Ｍ−２）
＝ｆ２（Ｍ−１、ｎ）−Ｗ２（Ｍ−１、ｎ）×ｆ２（Ｍ−１、ｎ＋２Ｍ−２）…(式１０)
【００３５】
ここで、係数Ｗ１（Ｍ−１、ｎ）は、次の（式１１）で表される。
Ｗ１（Ｍ−１、ｎ）＝ｅｘｐ（−ｊ２πｋ１（Ｍ−１、ｎ）／２Ｎ）  …（式１１）
また、係数Ｗ２（Ｍ−１、ｎ）は、次の（式１２）で表される。
Ｗ２（Ｍ−１、ｎ）＝ｅｘｐ（−ｊ２πｋ２（Ｍ−１、ｎ）／２Ｍ）  …（式１２）
【００３６】
このとき、ｋ１（Ｍ−１、ｎ）＝２Ｎ−（Ｍ−１）×（０、１、…、２Ｍ−１−２、２Ｍ−１−１）、ｋ２（Ｍ−１、ｎ）＝２Ｍ−（Ｍ−１）×（０、１、…、２Ｍ−１−２、２Ｍ−１−１）であるため、（式１１）と（式１２）は、Ｗ１（Ｍ−１、ｎ）＝Ｗ２（Ｍ−１、ｎ）＝ｅｘｐ（−ｊ２π／２Ｍ−１×（０、１、…、２Ｍ−１−２、２Ｍ−１−１））となる。
【００３７】
すなわち、第（Ｍ−１）のバタフライ演算部１１５−（Ｍ−１）で使用する係数は、第１−（Ｍ−１）のデータ蓄積部１１２−（Ｍ−１）に蓄積されたデジタル信号および第２−（Ｍ−１）のデータ蓄積部１１４−（Ｍ−１）に蓄積されたデジタル信号に対して、共用可能である。
【００３８】
第１−（Ｍ−１）のデータ蓄積部１１２−（Ｍ−１）に蓄積されたデジタル信号のバタフライ演算結果は、第２のＦＦＴ処理部１２０における第１−Ｍのデータ蓄積部１２１−Ｍに出力され、第２−（Ｍ−１）のデータ蓄積部１１４−（Ｍ−１）に蓄積されたデジタル信号のバタフライ演算結果は、第３のＦＦＴ処理部１３０における第２−Ｍのデータ蓄積部１３１に出力される。
【００３９】
第１−Ｍのデータ蓄積部１２１−Ｍは、２Ｎ個のデジタル信号を蓄積する。第（Ｍ−１）のバタフライ演算部１１５−（Ｍ−１）から入力される２Ｍ−１個のデジタル信号が、２Ｎ−Ｍ＋１回分（＝２Ｎ個）蓄積されると、第Ｍのバタフライ演算部１２２−Ｍにおいて、２Ｎ個の蓄積されたデジタル信号に対して、係数蓄積部１４０から入力された係数を用いて、Ｍ段目の基数２のバタフライ演算が実行される。
【００４０】
その後、データ蓄積部へのデジタル信号の蓄積と、蓄積されたデジタル信号に対するバタフライ演算とを繰り返し、第Ｎのバタフライ演算部１２２−Ｎは、第１−Ｎのデータ蓄積部１２１−Ｎに蓄積された２Ｎ個のデジタル信号に対して、係数蓄積部１４０から入力された係数を用いて、Ｎ段目の基数２のバタフライ演算を実行する。
【００４１】
第１−Ｎのデータ蓄積部１２１−Ｎに蓄積されたデジタル信号をｆ１（Ｎ、ｎ）、入力された係数をＷ１（Ｎ、ｎ）とすると、出力されるデジタル信号は、次の（式１３）および（式１４）で表され、第１のバッファ１１１に入力されたデジタル信号の最終ＦＦＴ処理結果としてＦＦＴ回路１００から出力される。
ｆ１（Ｎ＋１、ｎ）
＝ｆ１（Ｎ、ｎ）＋Ｗ１（Ｎ、ｎ）×ｆ１（Ｎ、ｎ＋２Ｎ−１）  …（式１３）
ｆ１（Ｎ＋１、ｎ＋２Ｎ−１）
＝ｆ１（Ｎ、ｎ）−Ｗ１（Ｎ、ｎ）×ｆ１（Ｎ、ｎ＋２Ｎ−１）  …（式１４）
【００４２】
このとき、係数Ｗ１（Ｎ、ｎ）は、次の（式１５）で表される。
Ｗ１（Ｎ、ｎ）＝ｅｘｐ（−ｊ２πｋ１（Ｎ、ｎ）／２Ｎ）  …（式１５）
【００４３】
ここで、ｋ１（Ｎ、ｎ）＝２Ｎ−Ｎ×（０、１、…、２Ｎ−２、２Ｎ−１）であるため、（式１５）は、次の（式１６）で表される。
Ｗ１（Ｎ、ｎ）
＝ｅｘｐ（−ｊ２π／２Ｎ×（０、１、…、２Ｎ−２、２Ｎ−１））  …（式１６）
【００４４】
一方、第２−Ｍのデータ蓄積部１３１は、２Ｍ個のデジタル信号を蓄積する。第（Ｍ−１）のバタフライ演算部１１５−（Ｍ−１）から入力される２Ｍ−１個のデジタル信号が２回分（＝２Ｍ個）蓄積されると、バタフライ演算部１３２において、２Ｍ個の蓄積されたデジタル信号に対して、係数蓄積部１４０から入力された係数を用いて、Ｍ段目の基数２のバタフライ演算が実行される。
【００４５】
第２−Ｍのデータ蓄積部１３１に蓄積されたデジタル信号をｆ２（Ｍ、ｎ）とし、入力された係数をＷ２（Ｍ、ｎ）とすると、出力されるデジタル信号は、次の（式１７）および（式１８）で表され、第２のバッファ１１３に入力されたデジタル信号の最終ＦＦＴ処理結果としてＦＦＴ回路１００から出力される。
ｆ２（Ｍ＋１、ｎ）
＝ｆ２（Ｍ、ｎ）＋Ｗ２（Ｍ、ｎ）×ｆ２（Ｍ、ｎ＋２Ｍ−１）  …（式１７）
ｆ２（Ｍ＋１、ｎ＋２Ｍ−１）
＝ｆ２（Ｍ、ｎ）−Ｗ２（Ｍ、ｎ）×ｆ２（Ｍ、ｎ＋２Ｍ−１）  …（式１８）
【００４６】
このとき、係数Ｗ２（Ｍ、ｎ）は、次の（式１９）で表される。
Ｗ２（Ｍ、ｎ）＝ｅｘｐ（−ｊ２πｋ２（Ｍ、ｎ）／２Ｍ）  …（式１９）
【００４７】
ここで、（式１９）は、ｋ２（Ｍ、ｎ）＝２Ｍ−Ｍ×（０、１、…、２Ｍ−２、２Ｍ−１）であるため、次の（式２０）で表される。
Ｗ２（Ｍ、ｎ）
＝ｅｘｐ（−ｊ２π／２Ｍ×（０、１、…、２Ｍ−２、２Ｍ−１））  …（式２０）
【００４８】
このように、本実施の形態によれば、複数の通信方式（２ＮポイントのＦＦＴ処理を必要とする通信方式と、２ＭポイントのＦＦＴ処理を必要とする通信方式）に対して、バッファを設け、蓄積されたデジタル信号の並び順を変更することにより、一部のバラフライ演算部１１５−１〜１１５−（Ｍ−１）を共用することが可能となり、複数の通信方式に対応しつつ、演算リソースの最適化を図ることができる。しかも、共用される各バラフライ演算部１１５−１〜１１５−（Ｍ−１）では、使用する係数も共用することができるため、演算リソースの最適化をより一層図ることができる。
【００４９】
なお、本実施の形態では、基数２のバタフライ演算を例にとって説明したが、バタフライ演算の基数は２に限定されない。基数２の代わりに、基数４や基数８など、異なる基数でバタフライ演算を行うことにより、バタフライ演算の段数を減らす構成も可能である。
【００５０】
また、本実施の形態は、いろいろ変更することができる。以下、いくつかの変更例について説明する。
【００５１】
図４は、本実施の形態の一変更例を示すブロック図である。
【００５２】
本変更例は、第Ｍのバタフライ演算部を共用する場合である。すなわち、図４に示すＦＦＴ回路１００ａは、第２のＦＦＴ処理部１２０ａと、第３のＦＦＴ処理部１３０ａとを有する。第２のＦＦＴ処理部１２０ａは、図１に示す実施の形態１における第２のＦＦＴ処理部１２０から、第１−Ｍのデータ蓄積部１２１−Ｍと、第Ｍのバタフライ演算部１２２−Ｍとを削除した構成を有する。また、第３のＦＦＴ処理部１３０ａは、図１に示す実施の形態１における第３のＦＦＴ処理部１３０から、バタフライ演算部１３２を削除するとともに、第１−Ｍのデータ蓄積部１７１と、第Ｍのバタフライ演算部１７２とを追加した構成を有する。
【００５３】
この場合、第１−Ｍのデータ蓄積部１７１は、２Ｍ個のデジタル信号を蓄積し、第１−Ｍのデータ蓄積部１７１および第２−Ｍのデータ蓄積部１３１にそれぞれ蓄積されたデジタル信号に対して、第Ｍのバタフライ演算部１７２を共用することが可能となる。
【００５４】
第１−Ｍのデータ蓄積部１７１に蓄積されたデジタル信号のバラフライ演算結果は、第２のＦＦＴ処理部１２０ａにおける第１−（Ｍ＋１）のデータ蓄積部１２１−（Ｍ＋１）に出力され、第２−Ｍのデータ蓄積部１３１に蓄積されたデジタル信号のバタフライ演算結果は、第２のバッファ１１３に入力されたデジタル信号の最終ＦＦＴ処理結果としてＦＦＴ回路１００から出力される。
【００５５】
図５は、本実施の形態の他の変更例を示すブロック図である。
【００５６】
本変更例は、図１および図４に示すＦＦＴ回路１００、１００ａでは、第２のＦＦＴ処理部１２０、１２０ａがパイプライン型のＦＦＴ処理を行うのに対して、メモリベース型のＦＦＴ処理を行う場合である。すなわち、図５に示すＦＦＴ回路１００ｂは、それぞれ１個のデータ蓄積部１８１およびバタフライ演算部１８２を有する。このように、図５に示すＦＦＴ回路１００ｂは、データ蓄積部１８１およびバタフライ演算部１８２を、それぞれ１個しか有していない点で、図１および図４に示すＦＦＴ回路１００、１００ａと異なる。
【００５７】
図５に示すＦＦＴ回路１００ｂ（第２のＦＦＴ処理部１２０ｂ）において、データ蓄積部１８１は、２Ｎ個のデジタル信号を蓄積する。例えば、図５の構成を図１の構成に適用した場合、第Ｍ−１のバタフライ演算部１１５−（Ｍ−１）から入力される２Ｍ−１個のデジタル信号が２Ｎ−Ｍ＋１回分（＝２Ｎ個）蓄積されると、バタフライ演算部１８２は、２Ｎ個の蓄積されたデジタル信号に対して、係数蓄積部１４０から入力された係数を用いて、Ｍ段目の基数２のバタフライ演算を実行する。このバタフライ演算の結果は、随時、データ蓄積部１８１のデータに上書きされる。その後、データ蓄積部１８１のデータの上書きと、上書きされたデジタル信号に対するバタフライ演算とを繰り返し、Ｎ段目の基数２のバタフライ演算が実行されると、データ蓄積部１８１から出力されるデジタル信号は、第１のバッファ１１１に入力されたデジタル信号のＦＦＴ処理結果として、ＦＦＴ処理部１００ｂから出力される。なお、図５の構成を図４の構成に適用する場合は、Ｍ＋１段目の基数２のバタフライ演算から実行することになる。
【００５８】
本変更例によれば、図１および図４に示すパイプライン型の構成に比べて、第２のＦＦＴ処理部１２０ｂに複数のデータ蓄積部および複数のバタフライ演算部を設ける必要がなく、それぞれ１個のデータ蓄積部１８１およびバタフライ演算部１８２を設けるだけで済むため、ＦＦＴ回路の小型化を図ることができる。
【００５９】
図６は、本実施の形態のさらに他の変更例を示すブロック図である。
【００６０】
本変更例は、第１のＦＦＴ処理部がスイッチを有する場合である。すなわち、図６に示すＦＦＴ回路１００ｃは、第１のＦＦＴ処理部（例えば、図１に示す第１のＦＦＴ処理部１１０）が２個のスイッチ１９１、１９２をさらに有する。この場合、例えば、２つの通信方式のうち、いずれか一方の通信方式で通信を行っていないとき、スイッチ１９１を切り替えることで、第１のバッファ１１１から第１−１のデータ蓄積部１１２−１と第２−１のデータ蓄積部１１４−１との両方に、それぞれ２Ｍ−１個ずつデジタル信号を蓄積し、第１−１のデータ蓄積部１１２−１と第２−１のデータ蓄積部１１４−１とを、１つの２Ｍ個のデジタル信号を蓄積するデータ蓄積部とみなすことができ、高速にＦＦＴ処理を行うことができる。
【００６１】
換言すれば、ＦＦＴ処理を１系統しか行う必要がない場合は、第１のＦＦＴ処理部が２Ｍ個ずつ（Ｍ−１）段のバタフライ演算処理を行う。すなわち、第１のＦＦＴ処理部におけるバタフライ演算に対して、２倍のデータ領域を割り当てることができるため、ＦＦＴ回路における演算の高速化が可能になる。
【００６２】
（実施の形態２）
図７は、本発明の実施の形態２に係る高速フーリエ変換回路の構成を示すブロック図である。なお、図７の高速フーリエ変換回路（ＦＦＴ回路）２００は、図１に示すＦＦＴ回路１００と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
【００６３】
本実施の形態の特徴は、最大２Ｎポイントと２Ｎ−１ポイントで、任意のポイント数のＦＦＴ処理を行うことができる構成を有することである。
【００６４】
そのため、図７に示すＦＦＴ回路２００は、第１のバッファ２１１と、第１−１から第１−ＮまでのＮ個のデータ蓄積部２１２−１〜２１２−Ｎと、第２のバッファ２１３と、第２−１から第２−（Ｎ−１）までの（Ｎ−１）個のデータ蓄積部２１４−１〜２１４−（Ｎ−１）と、第１から第ＮのＮ個のバタフライ演算部２１５−１〜２１５−Ｎと、第１から第（Ｎ＋１）までの（Ｎ＋１）個のスイッチ２１６−１〜２１６−（Ｎ＋１）と、係数蓄積部１４０ａと、制御部１５０ａとを有する。
【００６５】
第１のバッファ２１１は、最大で２Ｎ個のデジタル信号を蓄積し、制御部１５０ａの制御により、蓄積されたデジタル信号を第１のスイッチ２１６−１に出力する。このとき、入力されたデジタル信号は、実施の形態１における第１のバッファ１１１と同様に、図２に示すように、０、１、…、２Ｎ−２、２Ｎ−１という並びを、ビットリバーサルの位置に並び替えた０、２Ｎ−１、…、２Ｎ−１−１、２Ｎ−１という並びに変換して出力される。
【００６６】
第２のバッファ２１３は、最大で２Ｎ−１個のデジタル信号を蓄積し、制御部１５０ａの制御により、蓄積されたデジタル信号を第１のスイッチ２１６−１に出力する。このとき、入力されたデジタル信号は、実施の形態１における第２のバッファ１１３と同様に、図２に示すように、０、１、…、２Ｎ−１−２、２Ｎ−１−１という並びを、ビットリバーサルの位置に並び替えた０、２Ｎ−２、…、２Ｎ−２−１、２Ｎ−１−１という並びに変換して出力される。
【００６７】
第１のスイッチ２１６−１は、図８に示すように、２個のスイッチ２２１、２２２を有し、制御部１５０ａによって制御される。すなわち、各スイッチ２２１、２２２は、制御部１５０ａによってＨまたはＬの位置に制御される。第１のバッファ２１１からの入力信号は、スイッチ２２１の位置がＬのとき、第１−１のデータ蓄積部２１２−１に出力され、スイッチ２２１の位置がＨのとき、第２のスイッチ２１６−２に出力される。また、第２のバッファ２１３からの入力信号は、スイッチ２２２の位置がＬのとき、第２−１のデータ蓄積部２１４−１に出力され、スイッチ２２２の位置がＨのとき、第２のスイッチ２１６−２に出力される。
【００６８】
第１−１から第１−Ｎのデータ蓄積部２１２−１〜２１２−Ｎは、２１〜２Ｎ個のデジタルデータを蓄積する。第１−１から第１−Ｎのデータ蓄積部２１２−１〜２１２−Ｎに２１〜２Ｎ個のデジタル信号が蓄積されると、第１から第Ｎのバタフライ演算部２１５−１〜２１５−Ｎにおいて、２１〜２Ｎ個の蓄積されたデジタル信号に対して、係数蓄積部１４０ａから入力された係数を用いて、１段目からＮ段目までの基数２のバタフライ演算がそれぞれ実行される。
【００６９】
第２−１から第２−（Ｎ−１）のデータ蓄積部２１４−１〜２１４−（Ｎ−１）は、２１〜２Ｎ−１個のデジタルデータを蓄積する。第２−１から第２−（Ｎ−１）のデータ蓄積部２１４−１〜２１４−（Ｎ−１）に２１〜２Ｎ−１個のデジタル信号が蓄積されると、第１から第（Ｎ−１）のバタフライ演算部２１５−１〜２１５−（Ｎ−１）において、それぞれ、２１〜２Ｎ−１個の蓄積されたデジタル信号に対して、係数蓄積部１４０ａから入力された係数を用いて、１段目から（Ｎ−１）段目までの基数２のバタフライ演算がそれぞれ実行される。
【００７０】
第１から第Ｎのバタフライ演算部２１５−１〜２１５−Ｎは、実施の形態１におけるバタフライ演算部と同様に、図２および図３に示すように、第１−１から第１−Ｎのデータ蓄積部２１２−１〜２１２−Ｎまたは第２−１から第２−（Ｎ−１）のデータ蓄積部２１４−１〜２１４−（Ｎ−１）に蓄積された２１〜２Ｎ個のデジタル信号に対して、係数蓄積部１４０ａから入力された係数を用いて、１段目からＮ段目までの基数２のバタフライ演算をそれぞれ実行する。
【００７１】
第２から第（Ｎ−１）のスイッチ２１６−２〜２１６−（Ｎ−１）は、４個のスイッチを有する。ここでは、第２のスイッチ２１６−２を例にとって説明する。第２のスイッチ２１６−２は、図８に示すように、４個のスイッチ２３１、２３２、２３３、２３４を有し、制御部１５０ａによって制御される。すなわち、各スイッチ２３１〜２３４は、制御部１５０ａによってＨまたはＬの位置に制御される。
【００７２】
具体的には、スイッチ２３１の位置がＬの場合、第１のバタフライ演算部２１５−１における第１−１のデータ蓄積部２１２−１に蓄積されたデジタル信号に対する１段目のバタフライ演算の結果は、スイッチ２３２の位置がＬのとき、第１−２のデータ蓄積部２１２−２に出力され、スイッチ２３２の位置がＨのとき、第３のスイッチ２１６−３に出力される。
【００７３】
また、スイッチ２３３の位置がＬの場合、第１のバタフライ演算部２１５−１における第２−１のデータ蓄積部２１４−１に蓄積されたデジタル信号に対する１段目のバタフライ演算の結果は、スイッチ２３４の位置がＬのとき、第２−２のデータ蓄積部２１４−２に出力され、スイッチ２３４の位置がＨのとき、第３のスイッチ２１６−３に出力される。
【００７４】
また、スイッチ２３１の位置がＨの場合、第１のスイッチ２１６−１からの入力信号は、スイッチ２３２の位置がＬのとき、第１−２のデータ蓄積部２１２−２に出力され、スイッチ２３２の位置がＨのとき、第３のスイッチ２１６−３に出力される。
【００７５】
また、スイッチ２３３の位置がＨの場合、第１のスイッチ２１６−１からの入力信号は、スイッチ２３４の位置がＬのとき、第２−２のデータ蓄積部２１４−２に出力され、スイッチ２３４の位置がＨのとき、第３のスイッチ２１６−３に出力される。
【００７６】
なお、第３から第（Ｎ−１）のスイッチ２１６−３〜２１６−（Ｎ−１）の構成および動作は、第２のスイッチ２１６−２と同様であるため、その説明を省略する。
【００７７】
第Ｎのスイッチ２１６−Ｎは、図９に示すように、３個のスイッチ２４１、２４２、２４３を有し、制御部１５０ａによって制御される。すなわち、各スイッチ２４１〜２４３は、制御部１５０ａによってＨまたはＬの位置に制御される。
【００７８】
具体的には、スイッチ２４１の位置がＬの場合、第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第１−（Ｎ−１）のデータ蓄積部２１２−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算の結果は、スイッチ２４２の位置がＬのとき、第１−Ｎのデータ蓄積部２１２−Ｎに出力され、スイッチ２４２の位置がＨのとき、第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）に出力される。
【００７９】
また、スイッチ２４１の位置がＨの場合、第（Ｎ−１）のスイッチ２１６−（Ｎ−１）からの入力信号は、スイッチ２４２の位置がＬのとき、第１−Ｎのデータ蓄積部２１２−Ｎに出力され、スイッチ２４２の位置がＨのとき、第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）に出力される。
【００８０】
また、スイッチ２４３の位置がＬの場合は、第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第２−（Ｎ−１）のデータ蓄積部２１４−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算の結果が、ＦＦＴ回路２００のＦＦＴ処理結果として出力され、スイッチ２４３の位置がＨの場合は、第（Ｎ−１）のスイッチ２１６−（Ｎ−１）からの入力信号が、ＦＦＴ回路２００のＦＦＴ処理結果として出力される。
【００８１】
第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）は、図９に示すように、１個のスイッチ２５１を有し、制御部１５０ａによって制御される。すなわち、スイッチ２５１は、制御部１５０ａによってＨまたはＬの位置に制御される。スイッチ２５１の位置がＬの場合は、第Ｎのバタフライ演算部２１５−Ｎにおける第１−Ｎのデータ蓄積部２１２−Ｎに蓄積されたデジタル信号に対するＮ段目のバタフライ演算の結果が、ＦＦＴ回路２００のＦＦＴ処理結果として出力され、スイッチ２５１の位置がＨの場合は、第Ｎのスイッチ２１６−Ｎからの入力信号が、ＦＦＴ回路２００のＦＦＴ処理結果として出力される。
【００８２】
次いで、具体的な動作例を説明する。
【００８３】
まず、例えば、２Ｎポイントと２Ｎ−１ポイントとのＦＦＴ処理を行う場合について説明する。
【００８４】
この場合、第１のスイッチ２１６−１は、内蔵する２個のスイッチ２２１、２２２をすべてＬの位置に設定し、もって、（１）第１のバッファ２１１からの入力信号を第１−１のデータ蓄積部２１２−１に出力し、（２）第２のバッファ２１３からの入力信号を第２−１のデータ蓄積部２１４−１に出力するように、制御される。
【００８５】
また、第２から第（Ｎ−１）のスイッチ２１６−２〜２１６−（Ｎ−１）は、それぞれ、内蔵する４個のスイッチ２３１〜２３４をすべてＬの位置に設定し、もって、（１）第１から第（Ｎ−２）のバタフライ演算部２１５−１〜２１５−（Ｎ−２）における第１−１から第１−（Ｎ−２）のデータ蓄積部２１２−１〜２１２−（Ｎ−２）に蓄積されたデジタル信号に対する１段目から（Ｎ−２）段目のバタフライ演算の結果を、第１−２から第１−（Ｎ−１）のデータ蓄積部２１２−２〜２１２−（Ｎ−１）に出力し、（２）第１から第（Ｎ−２）のバタフライ演算部２１５−１〜２１５−（Ｎ−２）における第２−１から第２−（Ｎ−２）のデータ蓄積部２１４−１〜２１４−（Ｎ−２）に蓄積されたデジタル信号に対する１段目から（Ｎ−２）段目のバタフライ演算の結果を、第２−２から第２−（Ｎ−１）のデータ蓄積部２１４−２〜２１４−（Ｎ−１）に出力するように、制御される。
【００８６】
また、第Ｎのスイッチ２１６−Ｎは、内蔵する３個のスイッチ２４１〜２４３をすべてＬの位置に設定し、もって、（１）第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第１−（Ｎ−１）のデータ蓄積部２１２−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算の結果を、第１−Ｎのデータ蓄積部２１２−Ｎに出力し、（２）第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第２−（Ｎ−１）のデータ蓄積部２１４−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算の結果を、ＦＦＴ回路２００のＦＦＴ処理結果として出力するように、制御される。
【００８７】
また、第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）は、内蔵する１個のスイッチ２５１をＬの位置に設定し、もって、第Ｎのバタフライ演算部２１５−Ｎにおける第１−Ｎのデータ蓄積部２１２−Ｎに蓄積されたデジタル信号に対するＮ段目のバタフライ演算の結果を、ＦＦＴ回路２００のＦＦＴ処理結果として出力するように、制御される。
【００８８】
次に、例えば、２Ｎ−１ポイントと２５ポイントとのＦＦＴ処理を行う場合について説明する。
【００８９】
この場合、第１のスイッチ２１６−１は、内蔵する２個のスイッチ２２１、２２２をすべてＬの位置に設定し、もって、（１）第１のバッファ２１１からの入力信号を第１−１のデータ蓄積部２１２−１に出力し、（２）第２のバッファ２１３からの入力信号を第２−１のデータ蓄積部２１４−１に出力するように、制御される。
【００９０】
また、第２から第（Ｎ−１）のスイッチ２１６−２〜２１６−（Ｎ−１）は、それぞれ内蔵する４個のスイッチのうち、（i）スイッチ２３１およびスイッチ２３２については、すべてＬの位置に設定し、（ii）スイッチ２３３については、第２から第６のスイッチ２１６−２〜２１６−６の場合はＬの位置に、第７から第（Ｎ−１）のスイッチ２１６−７〜２１６−（Ｎ−１）の場合はＨの位置にそれぞれ設定し、（iii）スイッチ２３４については、第２から第５のスイッチ２１６−２〜２１６−５の場合はＬの位置に、第６から第（Ｎ−１）のスイッチ２１６−６〜２１６−（Ｎ−１）の場合はＨの位置にそれぞれ設定し、もって、（１）第１から第（Ｎ−２）のバタフライ演算部２１５−１〜２１５−（Ｎ−２）における第１−１から第１−（Ｎ−２）のデータ蓄積部２１２−１〜２１２−（Ｎ−２）に蓄積されたデジタル信号に対する１段目から（Ｎ−２）段目のバタフライ演算の結果を、第１−２から第１−（Ｎ−１）のデータ蓄積部２１２−２〜２１２−（Ｎ−１）に出力し、（２）第１から第４のバタフライ演算部２１５−１〜２１５−４における第２−１から第２−４のデータ蓄積部２１４−１〜２１４−４に蓄積されたデジタル信号に対する１段目から４段目のバタフライ演算の結果を、第２−２から第２−５のデータ蓄積部２１４−２〜２１４−５に出力し、（３）第５のバタフライ演算部２１５−５における第２−５のデータ蓄積部２１４−５に蓄積されたデジタル信号に対する５段目のバタフライ演算の結果を、第Ｎのスイッチ２１６−Ｎに出力するように、制御される。
【００９１】
また、第Ｎのスイッチ２１６−Ｎは、内蔵する３個のスイッチのうち、スイッチ２４１をＬの位置に、スイッチ２４２をＨの位置に、スイッチ２４３をＨの位置に、それぞれ設定し、もって、（１）第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第１−（Ｎ−１）のデータ蓄積部２１２−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算の結果を、第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）に出力し、（２）第５のバタフライ演算部２１５−５における第２−５のデータ蓄積部２１４−５に蓄積されたデジタル信号に対する５段目のバタフライ演算の結果を、ＦＦＴ回路２００のＦＦＴ処理結果として出力するように、制御される。
【００９２】
また、第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）は、内蔵する１個のスイッチ２５１をＨの位置に設定し、もって、第（Ｎ−１）のバタフライ演算部２１５−（Ｎ−１）における第１−（Ｎ−１）のデータ蓄積部２１２−（Ｎ−１）に蓄積されたデジタル信号に対する（Ｎ−１）段目のバタフライ演算結果を、ＦＦＴ回路２００のＦＦＴ処理結果として出力するように、制御される。
【００９３】
次に、例えば、第２のバタフライ演算部２１５−２において、基数４のバタフライ演算を実行する場合について説明する。
【００９４】
この場合、第１のスイッチ２１６−１における２個のスイッチ２２１、２２２をすべてＨの位置に設定し、第２のスイッチ２１６−２における４個のスイッチのうち、スイッチ２３１とスイッチ２３３をＨの位置に、スイッチ２３２とスイッチ２３４をＬの位置に、それぞれ設定する。そして、第１−２のデータ蓄積部２１２−２に蓄積されたデジタル信号に対して、係数蓄積部１４０ａから入力された係数を用いて、基数４のバタフライ演算を実行し、演算結果を第１−３のデータ蓄積部２１２−３に出力する。また、第２−２のデータ蓄積部２１４−２に蓄積されたデジタル信号に対して、係数蓄積部１４０ａから入力された係数を用いて、基数４のバタフライ演算を実行し、演算結果を第２−３のデータ蓄積部２１４−３に出力する。このように、スイッチを用いて使用するバタフライ演算の段数を変えることにより、異なる基数でバタフライ演算を行うことができる。
【００９５】
このように、本実施の形態によれば、実施の形態１の効果に加えて、スイッチを用いてＦＦＴ処理のポイント数を任意に切り替えるため、複数の任意のポイント数のＦＦＴ処理を同時に実行することができ、複数の通信方式に柔軟に対応することができる。
【００９６】
（実施の形態３）
図１０は、本発明の実施の形態３に係る通信装置の構成を示すブロック図である。なお、ここでは、実施の形態１のＦＦＴ回路１００を通信装置に適用した場合について説明する。
【００９７】
図１０に示す通信装置３００は、図１に示す実施の形態１のＦＦＴ回路１００に加えて、第１のアンテナ３１０、第２のアンテナ３１２、第１の受信部３２０、第２の受信部３２２、第１のベースバンド信号処理部３３０、および第２のベースバンド信号処理部３３２を有する。
【００９８】
第１の受信部３２０は、第１のアンテナ３１０で受信された第１の無線システムの無線周波数信号をデジタル信号に変換して出力する。また、第２の受信部３２２は、第２のアンテナ３１２で受信された第２の無線システムの無線周波数信号をデジタル信号に変換して出力する。
【００９９】
ここでは、一例として、第１の無線システムがＤＶＢ−Ｈ（Digital Video Broadcasting）方式であり、第２の無線システムがＩＥＥＥ８０２.１１ａ方式である場合を例にとって説明する。
【０１００】
ＤＶＢ−Ｈ方式は、４０９６（＝２１２）ポイントのＦＦＴ処理が必要であり、ＩＥＥＥ８０２.１１ａ方式は、６４（＝２６）ポイントのＦＦＴ処理が必要であるため、ＦＦＴ回路１００は、実施の形態１においてＮ＝１２、Ｍ＝６とした場合のＦＦＴ処理を行う。
【０１０１】
すなわち、第１のバッファ１１１は、４０９６個のデジタル信号を蓄積し、第２のバッファ１１３は、６４個のデジタル信号を蓄積する。第１のＦＦＴ処理部１１０は、第１−１から第１−５のデータ蓄積部１１２−１〜１１２−５と、第２−１から第２−５のデータ蓄積部１１４−１〜１１４−５と、第１から第５のバタフライ演算部１１５−１〜１１５−５とを有する。また、第２のＦＦＴ処理部１２０は、第６から第１２のデータ蓄積部１２１−６〜１２１−１２と、第６から第１２のバタフライ演算部１２２−６〜１２２−１２とを有する。また、第３のＦＦＴ処理部１３０は、第２−６のデータ蓄積部１３１と、バタフライ演算部１３２とを有する。
【０１０２】
また、上記のように、ＦＦＴ回路１００が、更にスイッチ１９１、１９２を有する場合（図６のＦＦＴ回路１００ｃ参照）、例えば、ＩＥＥＥ８０２.１１ａ方式で通信を行っていないときは、スイッチ１９１を切り替えることで、第１のバッファ１１１から第１−１のデータ蓄積部１１２−１と第２−１のデータ蓄積部１１４−１とに、２５個ずつデジタル信号を蓄積し、第１−１のデータ蓄積部１１２−１と第２−１のデータ蓄積部１１４−１とを、１つの２６個のデジタル信号を蓄積するデータ蓄積部とみなすことができ、高速にＦＦＴ処理を行うことができる。
【０１０３】
また、通信装置３００が処理する通信方式が変更される場合は、実施の形態２におけるＦＦＴ回路２００を使用することが可能である。例えば、第２の受信部３２２および第２のベースバンド信号処理部３３２が処理する通信方式が、ＩＥＥＥ８０２.１１ａからＩＥＥＥ８０２.１１ｂに変更される場合は、第１のスイッチ２１６−１におけるスイッチ２２２をＨの位置に、第２から第（Ｎ−１）のスイッチ２１６−２〜２１６−（Ｎ−１）におけるスイッチ２３３およびスイッチ２３４をすべてＨの位置に、第Ｎのスイッチ２１６−Ｎにおけるスイッチ２４３をＨの位置に、それぞれ設定することで、第２のバッファ２１３に蓄積されたデジタル信号を、直接ＦＦＴ回路２００から出力することができ、ＦＦＴ処理を必要としない通信方式にも柔軟に対応することができる。
【０１０４】
例えば、第１の受信部３２０および第１のベースバンド信号処理部３３０が処理する通信方式が、ＤＶＢ−Ｈ方式からＤＶＢ−Ｔ方式の２Ｋ ｍｏｄｅに変更される場合、２０４８（＝２１１）ポイントのＦＦＴ処理が必要となる。ＦＦＴ回路２００が、Ｎ＝１２で構成される場合、第Ｎのスイッチ２１６−Ｎにおけるスイッチ２４２および第（Ｎ＋１）のスイッチ２１６−（Ｎ＋１）におけるスイッチ２５１の設定を、それぞれＬの位置からＨの位置に変更することで、ＦＦＴ処理のポイント数を４０９６から２０４８に変更することが可能である。
【０１０５】
これにより、演算リソースを最適化するとともに、複数のＦＦＴ処理を必要とする通信方式に柔軟に対応することができる通信装置を提供することが可能になる。
【産業上の利用可能性】
【０１０６】
本発明は、複数の通信方式に対応しつつ、演算リソースの最適化を図ることができるという効果を有し、複数の通信方式に対応するマルチモード通信装置に有用であり、装置の小型化と省電力化に適している。
【図面の簡単な説明】
【０１０７】
【図１】本発明の実施の形態１に係る高速フーリエ変換回路の構成を示すブロック図
【図２】実施の形態１におけるデジタル信号の並び替えおよびバタフライ演算の様子を示す図
【図３】実施の形態１におけるバタフライ演算部の構成を示すブロック図
【図４】実施の形態１の一変更例を示すブロック図
【図５】実施の形態１の他の変更例を示すブロック図
【図６】実施の形態１のさらに他の変更例を示すブロック図
【図７】本発明の実施の形態２に係る高速フーリエ変換回路の構成を示すブロック図
【図８】実施の形態２におけるスイッチの構成を示すブロック図
【図９】実施の形態２における他のスイッチの構成を示すブロック図
【図１０】本発明の実施の形態３に係る通信装置の構成を示すブロック図
【図１１】従来のマルチモード高速フーリエ変換回路の一例を示すブロック図
【符号の説明】
【０１０８】
１００、１００ａ、１００ｂ、１００ｃ、２００  ＦＦＴ回路
１１０  第１のＦＦＴ処理部
１１１、２１１  第１のバッファ
１１２、１１４、１２１、１３１、１７１、１８１、２１２、２１４  データ蓄積部
１１５、１２２、１３２、１７２、１８２、２１５  バタフライ演算部
１１３、２１３  第２のバッファ
１２０、１２０ａ、１２０ｂ  第２のＦＦＴ処理部
１３０、１３０ａ  第３のＦＦＴ処理部
１４０、１４０ａ  係数蓄積部
１５０、１５０ａ  制御部
１９１、１９２、２１６  スイッチ
３００  通信回路
３１０、３１２  アンテナ
３２０、３２２  受信部
３３０、３３２  ベースバンド信号処理部
【図１】
0004698394.tif 000002
【図２】
0004698394.tif 000003
【図３】
0004698394.tif 000004
【図４】
0004698394.tif 000005
【図５】
0004698394.tif 000006
【図６】
0004698394.tif 000007
【図７】
0004698394.tif 000008
【図８】
0004698394.tif 000009
【図９】
0004698394.tif 000010
【図１０】
0004698394.tif 000011
【図１１】
0004698394.tif 000012