JP2001056806A - 高速フーリエ変換装置 - Google Patents
高速フーリエ変換装置Info
- Publication number
- JP2001056806A JP2001056806A JP2000171643A JP2000171643A JP2001056806A JP 2001056806 A JP2001056806 A JP 2001056806A JP 2000171643 A JP2000171643 A JP 2000171643A JP 2000171643 A JP2000171643 A JP 2000171643A JP 2001056806 A JP2001056806 A JP 2001056806A
- Authority
- JP
- Japan
- Prior art keywords
- address
- fourier transform
- fast fourier
- bank
- data
- 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
Landscapes
- Complex Calculations (AREA)
Abstract
Mに格納する高速フーリエ変換装置を高速化する。 【解決手段】 第1及び第2のRAM111,112
は、高速フーリエ変換装置の入出力データ及びバタフラ
イ演算時の中間データを格納する。アドレス生成部10
1は、バタフライ演算に必要となるデータの順を考慮し
てアドレスADを規則的に生成する。アドレス変換部1
02は、アドレスADを、第1及び第2のRAM11
1,112のいずれかを選択するバンク選択信号BK
と、RAM内のデータに対応したバンクアドレスBAD
とに変換する。バタフライ演算部104は、基数2のバ
タフライ演算を行う際に、第1及び第2のRAM11
1,112との間で並列にデータの読み出し、書き込み
を行う。
Description
装置に関し、特に入出力データ及び演算時の中間データ
をメモリに格納して行う高速フーリエ変換処理の高速化
に関する。
術の進歩に伴い、テレビ、ラジオ放送のデジタル化が進
められている。地上波を用いたデジタル放送では、多く
の場合、変復調方式にOFDM(Orthogonal Frequency
Division Multiplex:直交周波数分割多重)が採用さ
れている。OFDMは、多くの情報を限られた周波数帯
域の中で効率よく伝送する方式であり、マルチパス妨害
に強いという地上波放送に適した特徴を持つ。
ンプルの大規模な高速フーリエ変換を行う必要があり、
送信機及び受信機においては高速フーリエ変換装置が主
要なブロックとなる。送信機及び受信機における高速フ
ーリエ変換装置は、周波数解析等を行う測定器に用いら
れる高速フーリエ変換装置とは異なり、連続して送信又
は受信される信号をリアルタイムで高速に処理する必要
がある。
装置では、演算部とRAM(Random-Access Memory)を
備える構成が一般的である。図19は従来の高速フーリ
エ変換装置の構成を示すブロック図である。図19の高
速フーリエ変換装置は、アドレスを生成するアドレス生
成部501、バタフライ演算部504、入出力データ及
び演算時の中間データを格納するRAM511を備えて
いる。サンプル数Nの高速フーリエ変換を行う場合、R
AM511の容量はNワードである。
生成部501が出力するアドレスADに従って、バタフ
ライ演算部504はRAM511に格納された複数のデ
ータを順次読み出し、高速フーリエ変換における基本演
算であるバタフライ演算を行う。バタフライ演算部50
4は演算で得られた複数のデータをRAM511に順次
格納する。このようなバタフライ演算をすべてのサンプ
ルデータに対して繰り返し行うことで、高速フーリエ変
換を行うことができる。
して、特開昭58−219669号公報に開示されたも
のがある。この第1の従来例では、内部処理(高速フー
リエ変換処理)と外部処理(データ入出力処理)とを並
列に行うため、2つのRAMを備えているが、高速フー
リエ変換処理に着目すると、RAMとバタフライ演算部
との関係は図19の高速フーリエ変換装置と同様の構成
であるといえる。
又は出力データに対してデータの順序の並び替え処理を
行う必要がある。第1の従来例をOFDM方式による変
復調に用いるには、高速フーリエ変換を並び替え処理の
ために中断することなく連続して行う必要があるため、
少なくとも1つの並び替え処理用のRAMを更に備える
必要があった。
して、特開平11−110370号公報に開示されたも
のがある。この第2の従来例では、アドレスの変換処理
(ビットリバース処理)を行うことにより、並び替え処
理用のRAMを用いることなく、入力データ又は出力デ
ータの並び替え処理を実現している。この第2の従来例
においても、内部処理(高速フーリエ変換処理)と外部
処理(データ入出力処理)とを並列に行うため、2つの
RAMを備えている。しかし、高速フーリエ変換処理に
着目すると、RAMとバタフライ演算部との関係につい
ては図19の高速フーリエ変換装置と同様の構成であ
る。
バタフライ演算のパイプライン処理や並列処理等の手法
が一般的に用いられている。
は、バタフライ演算を繰り返し行うため、RAMへの多
くのアクセスを必要とする。しかしながら、従来の高速
フーリエ変換装置の構成では、バタフライ演算前に複数
のデータをRAMから順次読み出し、バタフライ演算後
に複数の演算結果のデータをRAMに順次格納するた
め、RAMアクセスがバタフライ演算部の動作速度を制
限することになり、高速フーリエ変換装置を高速化する
際の妨げになるという問題点があった。
複数データへの同時アクセスが可能な多ポートRAMを
用いる手法がある。しかし、多ポートRAMは、メモリ
セルの面積増大に伴い回路規模が増大するという問題点
と、メモリセルの容量増大に伴い速度低下が生じ、複数
データへの同時アクセスによる高速化のメリットが生き
てこないという問題点を有していた。
RAMへのアクセスの高速化を図り、多ポートRAMを
用いることなく、より高速な高速フーリエ変換装置を提
供することを課題とする。
め、請求項1の発明が講じた手段は、高速フーリエ変換
装置として、入出力データ及び演算時の中間データを格
納する第1及び第2の2つのRAMと、アドレスを生成
するアドレス生成部と、前記アドレスに基づいて、バン
ク選択信号とバンクアドレスとを生成して出力するアド
レス変換部と、前記バンク選択信号の値に応じて、前記
バンクアドレスを前記第1及び第2のRAMのうちのい
ずれかへ供給するアドレス選択部と、前記第1及び第2
のRAMが格納する、前記バンクアドレスで指定される
データを対象にして、基数2のバタフライ演算を行うバ
タフライ演算部とを備えたものである。
換装置は独立してアクセス可能な2つのRAMを有して
いるため、バタフライ演算の際に入力データを2つのR
AMから同時に並列して読み出し、演算結果を2つのR
AMへ同時に並列して書き込むことができ、RAMアク
セスを高速化できる。
換装置として、入出力データ及び演算時の中間データを
格納する第1及び第2の2つのRAMと、アドレスを生
成するアドレス生成部と、前記アドレスに基づいて、バ
ンク選択信号とバンクアドレスとを生成して出力するア
ドレス変換部と、前記バンク選択信号の値に応じて、前
記バンクアドレスを前記第1及び第2のRAMのうちの
いずれかへ供給するアドレス選択部と、前記第1及び第
2のRAMが格納する、前記バンクアドレスで指定され
るデータを対象にして、基数4のバタフライ演算を行う
バタフライ演算部とを備えたものである。
換装置は独立してアクセス可能な2つのRAMを有して
いるため、2つのRAMに並列してアクセスすることが
でき、基数4のバタフライ演算を行う場合でも、RAM
アクセスを高速化できる。
は2に記載の高速フーリエ変換装置において、前記アド
レス変換部は、前記アドレスの各ビット間の排他的論理
和をバンク選択信号として出力し、前記アドレスを1ビ
ットだけ下位へビットシフトしたものをバンクアドレス
として出力するものである。
り、バタフライ演算時に2つのRAMに並列にアクセス
するための、バンク選択信号とバンクアドレスとを生成
することができる。
換装置として、入出力データ及び演算時の中間データを
格納する第1〜第4の4つのRAMと、アドレスを生成
するアドレス生成部と、前記アドレスに基づいて、バン
ク選択信号とバンクアドレスとを生成して出力するアド
レス変換部と、前記バンク選択信号の値に応じて、前記
バンクアドレスを前記第1〜第4のRAMのうちのいず
れかへ供給するアドレス選択部と、前記第1〜第4のR
AMが格納する、前記バンクアドレスで指定されるデー
タを対象にして、基数4のバタフライ演算を行うバタフ
ライ演算部とを備えたものである。
換装置は独立してアクセス可能な4つのRAMを有して
いるため、基数4のバタフライ演算の際に入力データを
4つのRAMから同時に並列して読み出し、演算結果を
4つのRAMへ同時に並列して書き込むことができ、R
AMアクセスを高速化できる。
記載の高速フーリエ変換装置において、前記アドレス変
換部は、前記アドレスの最下位ビットから順に2ビット
ずつを組とし、各組の値の総計の最下位ビットから2ビ
ットをバンク選択信号として出力し、前記アドレスを2
ビットだけ下位へビットシフトしたものをバンクアドレ
スとして出力するものである。
り、バタフライ演算時に4つのRAMに並列にアクセス
するための、バンク選択信号とバンクアドレスとを生成
することができる。
換装置として、入出力データ及び演算時の中間データを
格納する第1及び第2の2つのRAMと、第1のアドレ
スを生成するアドレス生成部と、前記第1のアドレス
を、そのビットの位置を入れ換えるビットリバース処理
を行うことにより、第2のアドレスに変換して出力する
ビットリバース部と、前記第2のアドレスに基づいて、
バンク選択信号とバンクアドレスとを生成して出力する
アドレス変換部と、前記バンク選択信号の値に応じて、
前記バンクアドレスを前記第1及び第2のRAMのうち
のいずれかへ供給するアドレス選択部と、前記第1及び
第2のRAMが格納する、前記バンクアドレスで指定さ
れるデータを対象にして、バタフライ演算を行うバタフ
ライ演算部とを備えたものである。
換装置は独立してアクセス可能な2つのRAMを有して
いるため、バタフライ演算の際に入力データを2つのR
AMから同時に並列して読み出し、演算結果を2つのR
AMへ同時に並列して書き込むことができ、RAMアク
セスを高速化できる。また、ビットリバース処理を行う
ことにより、第1及び第2のRAMにおけるデータのア
クセス順を変更することができる。
載の高速フーリエ変換装置において、前記アドレス変換
部は、前記第2のアドレスの各ビット間の排他的論理和
をバンク選択信号として出力し、前記第2のアドレスを
1ビットだけ下位へビットシフトしたものをバンクアド
レスとして出力するものである。
り、バタフライ演算時に2つのRAMに並列にアクセス
するための、バンク選択信号とバンクアドレスとを生成
することができる。
7に記載の高速フーリエ変換装置において、前記ビット
リバース部は、高速フーリエ変換処理後の出力データ
と、次の高速フーリエ変換処理の入力データとに対する
前記第2のアドレスが、シンボル内のデータの順序を表
すインデックスが同一の場合は同一となるように、前記
第1のアドレスにビットリバース処理を行うことを特徴
とする。
換処理によって得られたデータの順序を、次の高速フー
リエ変換を行うために並べ替える必要がない。このた
め、並び替え用のRAMを備える必要がなくなる。
のいずれかに記載の高速フーリエ変換装置において、前
記ビットリバース部は、前記第1のアドレスを1以上の
ビットを含むグループに分割し、グループ単位で位置を
入れ換えるビットリバース処理を行うことを特徴とす
る。
バタフライ演算を行う場合において、高速フーリエ変換
処理によって得られたデータの順序を、次の高速フーリ
エ変換を行うために並べ替える必要がない。このため、
並び替え用のRAMを備える必要がなくなる。
9のいずれかに記載の高速フーリエ変換装置において、
前記バタフライ演算部は、基数2又は基数4のバタフラ
イ演算を行うことを特徴とする。
算部を比較的簡単に実現することができる。
速フーリエ変換装置について、図面を参照しながら説明
する。
実施形態に係る高速フーリエ変換装置の構成を示すブロ
ック図である。図1の高速フーリエ変換装置は、アドレ
ス生成部101と、アドレス変換部102と、アドレス
選択部103と、バタフライ演算部104と、第1のR
AM111と、第2のRAM112とを備えている。第
1及び第2のRAM111,112は、高速フーリエ変
換装置の入出力データ及びバタフライ演算時の中間デー
タを格納する。サンプル数Nの高速フーリエ変換を行う
場合、第1及び第2のRAM111,112の容量は、
ともにN/2ワードである。
て説明する。ここでは例として、サンプル数Nが8であ
り、基数2のバタフライ演算を3段繰り返して高速フー
リエ変換を行う場合について説明する。
は、第1及び第2のRAM111,112に格納され
る。アドレス生成部101は、バタフライ演算に必要と
なるデータの順を考慮してアドレスADを規則的に生成
し、アドレス変換部102に出力する。アドレスAD
は、従来のようにRAMを1つしか備えない高速フーリ
エ変換装置の場合と同じ順に生成される。アドレス変換
部102は、アドレスADをバンク選択信号BKとバン
クアドレスBADとに変換してアドレス選択部103に
出力する。バンク選択信号BKは、同時に出力されたバ
ンクアドレスBADが、第1又は第2のRAM111,
112のいずれにアクセスするためのアドレスであるか
を示す信号である。バンクアドレスBADは、バンク選
択信号BKで示された第1又は第2のRAM111,1
12にアクセスするためのアドレスである。
BKの値に応じて、バンクアドレスBADをバンクアド
レスBAD0として第1のRAM111に、又はバンク
アドレスBADをバンクアドレスBAD1として第2の
RAM112に出力する。バタフライ演算部104は、
第1及び第2のRAM111,112のそれぞれのバン
クアドレスBAD0,BAD1に対応したデータDO
0,DO1を並列に読み出し、これらを対象として基数
2のバタフライ演算を行い、演算結果であるデータDI
0,DI1をそれぞれ第1及び第2のRAM111,1
12に並列に書き込む。
レス変換方法について説明する。以下では、nビットの
幅を持つデータSの最下位ビットをS[0]、データSの
最下位ビットの隣から上位ビットに向かって数えてi番
目のビットをS[i](0≦i≦n-1)と表し、データSの下
位kビットをS[k-1:0]と表すこととする。
ビット間の排他的論理和である。すなわち、アドレスA
Dがmビット(mは自然数)の幅を持つデータであると
して、バンク選択信号BKは、 という式で求められる。^は排他的論理和を表す。ま
た、バンクアドレスBADは、アドレスADを1ビット
だけ下位へビットシフトしたものである。すなわち、バ
ンクアドレスBADは、 BAD[m-2:0]=AD[m-1:0]>>1 …(2) という式で求められる。>>は右シフト演算である。例
えば、サンプル数Nが8とすれば、mの値は3である。
成を示すブロック図である。アドレス生成部101は、
タイミングカウンタ161と、ビット位置変換部162
とを備えている。このアドレス生成部101は、基数2
のバタフライ演算を行うためのアドレスを生成する。
CNTをビット位置変換部162に出力する。サンプル
数がNの場合、カウント値CNTは0〜N−1の整数値
を巡回する値であって、順に1ずつ値が増加し、値がN
−1に達した後は0に変化する。ビット位置変換部16
2は、何段目のバタフライ演算を行っているかに応じ
て、カウント値CNTをアドレスADに変換して出力す
る。
動作についての説明図である。図3(a)は第1段のバ
タフライ演算の場合、図3(b)は第2段のバタフライ
演算の場合、図3(c)は第3段のバタフライ演算の場
合について示している。
ル数Nが8であるので、カウント値CNT及びアドレス
ADは3ビットで表されている。カウント値CNTの各
ビットの値を、最下位ビット(LSB)から最上位ビッ
ト(MSB)に向かって順にb0,b1及びb2で表す
こととする。また、図3では、0から7まで順に変化す
るカウント値CNTと、各値に対応するアドレスADの
値を表に2進数で表示している。
ット位置変換部162は、図3(a)のように、アドレ
スADとしてカウント値CNTをそのまま出力する。し
たがって、アドレスADは、0,1,2,3,4,5,
6,7の順で出力される。
ット位置変換部162は、図3(b)のように、カウン
ト値CNTの最下位ビットb0と最下位ビットから2番
目のビットb1とを入れ換え、アドレスADとして出力
する。したがって、アドレスADは、0,2,1,3,
4,6,5,7の順で出力される。
ット位置変換部162は、図3(c)のように、カウン
ト値CNTの最下位ビットb0をアドレスADの最上位
ビットにし、カウント値CNTの最下位ビットから2番
目のビットb1及び最上位ビットb2をそれぞれアドレ
スADの最下位ビット及び最下位ビットから2番目のビ
ットとする。したがって、アドレスADは、0,4,
1,5,2,6,3,7の順で出力される。
選択部103の具体的な構成の例を示す回路図である。
図4のアドレス変換部102は、排他的論理和ゲート1
21と、1ビット右シフト回路122とを備えている。
アドレス選択部103は、イネーブル付きDフリップフ
ロップ131,132と、Dフリップフロップ133,
134と、選択回路135,136と、論理否定ゲート
137とを備えている。
において、サイクルは、第1及び第2のRAM111,
112の読み出し、書き込みのサイクルを示す。
ように、入力されたアドレスADの各ビット間の排他的
論理和をバンク選択信号BKとして求め、イネーブル付
きDフリップフロップ132に出力するとともに、イネ
ーブル付きDフリップフロップ131には論理否定ゲー
ト137を介して出力する。1ビット右シフト回路12
2は、式(2)のように、アドレスADを1ビットだけ
右にシフトしてバンクアドレスBADを求め、イネーブ
ル付きDフリップフロップ131,132に出力する。
は、バンク選択信号BKの信号レベルが論理的に低電位
(以下では“L”と表記する)のとき(バンク選択信号
BKの値が0のとき)にバンクアドレスBADを格納す
る一方、イネーブル付きDフリップフロップ132は、
バンク選択信号BKの信号レベルが論理的に高電位(以
下では“H”と表記する)のとき(バンク選択信号BK
の値が1のとき)にバンクアドレスBADを格納する。
は、格納しているバンクアドレスBADをバンクアドレ
スBAD0RとしてDフリップフロップ133及び選択
回路135に出力する。イネーブル付きDフリップフロ
ップ132は、格納しているバンクアドレスBADをバ
ンクアドレスBAD1RとしてDフリップフロップ13
4及び選択回路136に出力する。
バンクアドレスBAD0Rを次のサイクルにおいてバン
クアドレスBAD0Wとして選択回路135に出力す
る。Dフリップフロップ134は、入力されたバンクア
ドレスBAD1Rを次のサイクルにおいてバンクアドレ
スBAD1Wとして選択回路136に出力する。
111,112に対して、読み出し又は書き込みのいず
れを行うかを選択する信号であって、選択回路135,
136に入力される。選択回路135,136は、選択
信号NWEの信号レベルが“H”のとき、読み出し用の
バンクアドレスBAD0R,BAD1Rをそれぞれバン
クアドレスBAD0,BAD1として出力し、選択信号
NWEの信号レベルが“L”のとき、書き込み用のバン
クアドレスBAD0W,BAD1Wをそれぞれバンクア
ドレスBAD0,BAD1として出力する。
るバタフライ演算動作を説明するシグナルフローグラフ
である。高速フーリエ変換では、バタフライ演算と呼ば
れる基本演算を繰り返し行う。複数のバタフライ演算の
流れを時間軸に沿って表示した図5のようなグラフをシ
グナルフローグラフと呼び、シグナルフローグラフ中の
丸がバタフライ演算を示している。図5は、2個のデー
タを入力として2個のデータを出力する基数2のバタフ
ライ演算を繰り返すことにより、サンプル数Nが8の高
速フーリエ変換を行う場合の例である。この場合、3段
の演算過程が必要であり、各段ではバタフライ演算が4
回行われる。第1段の演算結果は中間データ1として、
第2段の演算結果は中間データ2として、第1又は第2
のRAM111,112に一時保存される。
ラフ中の各データが格納される場所が第1又は第2のR
AM111,112のいずれであるかを示すとともに、
そのデータに対するアドレスAD、バンクアドレスBA
D、バンク選択信号BKの値を示している。図5の表の
各段は、それぞれシグナルフローグラフ中の同じ段の各
データに対応している。
に格納される第1又は第2のRAM111,112のア
ドレスは、バンクアドレスBAD0,BAD1そのもの
であってもよいし、バンクアドレスBAD0,BAD1
に対応したアドレスであってもよい。
て、基数2の場合と基数4の場合のバタフライ演算につ
いて示している。
タイミングチャートである。カウント値CNTは、0,
1,2,…,7,0,1,2,…の順に値が変化するこ
とを繰り返す。ビット位置変換部162は、図3におい
て説明したように、第1段から第3段のうち、何段目の
バタフライ演算を行っているかに応じて、カウント値C
NTをアドレスADに変換して出力する。
を示すタイミングチャートである。図8において、アド
レスAD、バンクアドレスBAD、バンク選択信号B
K、バンクアドレスBAD0R,BAD1R,BAD
0,BAD1、データDO0,DO1,DI0,DI1
は、図1〜図5,図7で示したものである。信号Rea
d/Writeは、その値が“R”のときには第1又は
第2のRAM111,112からの読み出しを、その値
が“W”のときには第1又は第2のRAM111,11
2への書き込みをするべきことを示すものである。信号
Read/Writeの値“R”及び“W”は、選択信
号NWEの信号レベル“H”及び“L”にそれぞれ対応
している。データDO0,DO1はバタフライ演算部1
04の入力、データDI0,DI1はバタフライ演算部
104の出力であり、BTFLY−iはi番目のバタフ
ライ演算の入出力データである。
タフライ演算の対象となるデータの流れの例について、
図8を参照しながら説明する。
7は、図5のシグナルフローグラフに示すように格納さ
れる。各入力データx0〜x7は、図5の表の同一の段
に示されたように、第1又は第2のRAM111,11
2内のバンクアドレスBADに対応したアドレスに格納
される。
が順に行えるようにアドレスADを規則的に生成する。
第1段のバタフライ演算では、アドレス生成部101
は、アドレスADとしてまず0を生成する。
に基づき、式(1)及び式(2)に従って、バンク選択
信号BKとして0、バンクアドレスBADとして0を出
力する。このため、アドレス選択部103の内部では、
図4のイネーブル付きDフリップフロップ131がバン
クアドレスBAD0Rとして0を次のサイクルで出力す
る。
は、次のアドレスADとして1を発生する。アドレス変
換部102では、アドレスADに基づき、バンク選択信
号BKとして1、バンクアドレスBADとして0を出力
する。このため、アドレス選択部103の内部では、図
4のイネーブル付きDフリップフロップ132がバンク
アドレスBAD1Rとして0を次のサイクルで出力す
る。
が“R”、すなわち、選択信号NWEの信号レベルが
“H”となり、選択回路135,136において、バン
クアドレスBAD0,BAD1としてバンクアドレスB
AD0R,BAD1Rがそれぞれ選択される。したがっ
て、選択回路135,136はともに0を出力する。
クアドレスBAD0を用いて第1のRAM111からデ
ータI0−0を、バンクアドレスBAD1を用いて第2
のRAM112からデータI1−0を同時に並列に読み
出し、これらのデータを対象にして基数2のバタフライ
演算を行う。
eの値が“W”、すなわち、選択信号NWEの信号レベ
ルが“L”となり、選択回路135,136において、
バンクアドレスBAD0,BAD1としてバンクアドレ
スBAD0W,BAD1Wがそれぞれ選択される。バン
クアドレスBAD0W,BAD1Wの値は、1サイクル
前のバンクアドレスBAD0R,BAD1Rと同じなの
で、選択回路135,136は出力を変えず、ともに0
を出力する。
第1及び第2のRAM111,112内の読み出したデ
ータが格納されていたのと同じ場所に、演算結果である
2個のデータを中間データ1として1個ずつ同時に並列
に書き込む。
スADを図8に示すように2,3,4,5,6,7の順
に生成する。バタフライ演算部104は、同様に第1及
び第2のRAM111,112からデータを1個ずつ並
列に読み出してバタフライ演算を行って、読み出したデ
ータが格納されていた場所に、演算結果である2個のデ
ータを中間データ1として並列に書き込むことを繰り返
す。すべての入力データx0〜x7についてバタフライ
演算が行われると、高速フーリエ変換の第1段の演算が
終了する。
演算を行う。アドレス生成部101は、アドレスADを
図8に示すように0,2,1,3,4,6,5,7の順
に生成する。バタフライ演算部104は、第1及び第2
のRAM111,112から中間データ1を1個ずつ並
列に読み出してバタフライ演算を行い、読み出したデー
タが格納されていた場所に、演算結果である2個のデー
タを中間データ2として並列に書き込む。
を行う。アドレス生成部101は、アドレスADを図8
に示すように0,4,1,5,2,6,3,7の順に生
成する。バタフライ演算部104は、第1及び第2のR
AM111,112から中間データ2を1個ずつ並列に
読み出してバタフライ演算を行い、読み出したデータが
格納されていた場所に、演算結果である2個のデータを
出力データX0〜X7として並列に書き込む。
及び第2のRAM111,112にデータX0〜X7と
して得られる。
変換装置は、第1及び第2の2つのRAM111,11
2を備えたことにより、バタフライ演算における2個の
入力データを常に異なるRAMから1個ずつ並列に読み
出し、2個の出力データも常に異なるRAMに1個ずつ
並列に書き込むため、RAMアクセスを実質的に高速化
することができる。
1,112の総容量は、従来のようにRAMを1つしか
備えない場合と同じでよい。
な簡単な演算によって、アドレスADをバンク選択信号
BKとバンクアドレスBADとに変換するため、第1及
び第2の2つのRAM111,112へ並列にアクセス
することを簡単に行うことができる。
装置の変形例の構成を示すブロック図である。この変形
例は、図1の高速フーリエ変換装置において、基数2の
バタフライ演算部104の代わりに基数4のバタフライ
演算部204を用い、アドレス生成部101をアドレス
生成部201で置き換えたものである。本変形例では、
サンプル数Nが16であり、基数4のバタフライ演算を
2段繰り返して高速フーリエ変換を行う場合について説
明する。
エ変換は、基数2のバタフライ演算による高速フーリエ
変換に比べて演算量が少ない。このため、大規模な高速
フーリエ変換装置では、基数4のバタフライ演算がよく
行われている。
構成を示すブロック図である。アドレス生成部201
は、タイミングカウンタ261と、ビット位置変換部2
62とを備えている。このアドレス生成部201は、基
数4のバタフライ演算を行うためのアドレスを生成す
る。
CNTをビット位置変換部262に出力する。サンプル
数がNの場合、カウント値CNTは0〜N−1の整数値
を巡回する値であって、順に1ずつ値が増加し、値がN
−1に達した後は0に変化する。ビット位置変換部26
2は、何段目のバタフライ演算を行っているかに応じ
て、カウント値CNTをアドレスADに変換して出力す
る。
2の動作についての説明図である。図11(a)は第1
段のバタフライ演算の場合、図11(b)は第2段のバ
タフライ演算の場合について示している。
プル数Nが16であるので、カウント値CNT及びアド
レスADは4ビットで表されている。カウント値CNT
の各ビットの値を、最下位ビットから最上位ビットに向
かって順にb0,b1,b2及びb3で表すこととす
る。また、図11では、0から15まで順に変化するカ
ウント値CNTと、各値に対応するアドレスADの値を
表に2進数で表示している。
ット位置変換部262は、図11(a)のように、アド
レスADとしてカウント値CNTをそのまま出力する。
したがって、アドレスADは、0,1,2,…,15の
順で出力される。
ット位置変換部262は、カウント値CNTの最下位ビ
ットb0と最下位ビットから2番目のビットb1とを組
にする一方、最下位ビットから3番目のビットb2と最
上位ビットb3とを組にし、図11(b)のように、2
つの組の位置を入れ換えて得た値をアドレスADとして
出力する。したがって、アドレスADは、0,4,8,
12,1,5,9,13,2,6,10,14,3,
7,11,15の順で出力される。
けるバタフライ演算動作を説明するシグナルフローグラ
フである。図12は、4個のデータを入力として4個の
データを出力する基数4のバタフライ演算を繰り返すこ
とにより、サンプル数Nが16の高速フーリエ変換を行
う場合の例である。この場合、2段の演算過程が必要で
あり、各段ではバタフライ演算が4回行われる。第1段
の演算結果は中間データとして第1又は第2のRAM1
11,112に一時保存される。
グラフ中の各データが格納される場所が第1又は第2の
RAM111,112のいずれであるかを示すととも
に、そのデータに対するアドレスAD、バンクアドレス
BAD、バンク選択信号BKの値を示している。図12
の表の各段は、それぞれシグナルフローグラフ中の同じ
段の各データに対応している。
タフライ演算の対象となるデータの流れについて説明す
る。
15は、図12のシグナルフローグラフに示すように格
納される。各データは、図12の表の同一の段に示され
たように、第1又は第2のRAM111,112に格納
される。
たように、第1段のバタフライ演算に必要となるデータ
の順を考慮してアドレスADを規則的に生成する。図1
の回路と同様に、アドレス変換部102は、式(1)及
び式(2)に従ってバンク選択信号BK及びバンクアド
レスBADを生成し、アドレス選択部103はバンクア
ドレスBAD0及びBAD1をそれぞれ第1及び第2の
RAM111,112に与える。
のRAM111,112からそれぞれデータを2個ずつ
読み出し、これらのデータを対象にして基数4のバタフ
ライ演算を行って、読み出したデータが格納されていた
場所に、演算結果である4個のデータを中間データとし
て書き込むことを繰り返す。第1及び第2のRAM11
1,112へのアクセスは並列に行われる。すべての入
力データx0〜x15についてバタフライ演算が行われ
ると、高速フーリエ変換の第1段の演算が終了する。
演算を行う。アドレス生成部201は、図11で説明し
たように、第2段のバタフライ演算に必要となるデータ
の順を考慮してアドレスADを規則的に生成する。バタ
フライ演算部204は、第1及び第2のRAM111,
112から中間データを2個ずつ読み出してバタフライ
演算を行い、読み出したデータが格納されていた場所
に、演算結果である4個のデータを出力データX0〜X
15として書き込む。
及び第2のRAM111,112にデータX0〜X15
として得られる。
のバタフライ演算部204を用いた高速フーリエ変換装
置においても、第1及び第2の2つのRAM111,1
12を備えたことにより、バタフライ演算における4個
の入力データを2つの異なるRAMから2個ずつ並列に
読み出し、また、4個の出力データも2つの異なるRA
Mに2個ずつ並列に書き込むため、RAMアクセスを実
質的に高速化することができる。
の実施形態に係る高速フーリエ変換装置の構成を示すブ
ロック図である。これは、図9の高速フーリエ変換装置
において、第1のRAM111と、第2のRAM112
との代わりに、第1のRAM311と、第2のRAM3
12と、第3のRAM313と、第4のRAM314と
を用いたものである。サンプル数Nの高速フーリエ変換
を行う場合、第1〜第4のRAM311〜314の容量
は、それぞれN/4ワードである。また、アドレス生成
部201は図9〜11において説明したものと同じであ
る。
いて説明する。
は、第1〜第4のRAM311〜314に格納される。
アドレス生成部201は、図11で説明したように、バ
タフライ演算に必要となるデータの順を考慮してアドレ
スADを規則的に生成し、アドレス変換部302に出力
する。アドレスADは、従来のようにRAMを1つしか
備えない高速フーリエ変換装置の場合と同じ順に生成さ
れる。アドレス変換部302は、アドレスADをバンク
選択信号BKとバンクアドレスBADとに変換してアド
レス選択部303に出力する。バンク選択信号BKは、
同時に出力されたバンクアドレスBADが、第1〜第4
の4つのRAM311〜314のいずれにアクセスする
ためのアドレスであるかを示す2ビットの信号である。
バンクアドレスBADは、バンク選択信号BKで示され
た第1〜第4のRAM311〜314のいずれかにアク
セスするためのアドレスである。
BKの値に応じて、第1〜第4の4つのRAM311〜
314のうちの1つに、バンクアドレスBADをバンク
アドレスBAD0〜BAD3として出力する。バタフラ
イ演算部304は、第1〜第4の4つのRAM311〜
314のそれぞれのバンクアドレスBAD0〜BAD3
に対応したデータDO0〜DO3を並列に読み出し、こ
れらを対象として基数4のバタフライ演算を行い、演算
結果であるデータDI0〜DI3をそれぞれ第1〜第4
の4つのRAM311〜314に並列に書き込む。
レス変換方法について説明する。
下位ビットから順に2ビットずつを組とし、各組の値の
総計の最下位ビットから2ビットを取り出したものであ
る。すなわち、アドレスADがmビットの幅を持つデー
タであるとして、バンク選択信号BKは、 という式で求められる。また、バンクアドレスBAD
は、アドレスADを2ビットだけ下位へビットシフトし
たものである。すなわち、バンクアドレスBADは、 BAD[m-3:0]=AD[m-1:0]>>2 …(4) という式で求められる。例えば、サンプル数Nが16と
すれば、mの値は4である。
おけるバタフライ演算動作を説明するシグナルフローグ
ラフである。図14は、4個のデータを入力として4個
のデータを出力する基数4のバタフライ演算を繰り返す
ことにより、サンプル数Nが16の高速フーリエ変換を
行う場合の例である。この場合、2段の演算過程が必要
であり、各段ではバタフライ演算が4回行われる。第1
段の演算結果は中間データとして第1〜第4のRAM3
11〜314に一時保存される。
グラフ中の各データが格納される場所が第1〜第4の4
つのRAM311〜314のいずれであるかを示すとと
もに、そのデータに対するアドレスAD、バンクアドレ
スBAD、バンク選択信号BKの値を示している。図1
4の表の各段は、それぞれシグナルフローグラフ中の同
じ段の各データに対応している。
バタフライ演算の対象となるデータの流れについて説明
する。
15は、図14のシグナルフローグラフに示すように格
納される。各データは、図14の表の同一の段に示され
たように、第1〜第4の4つのRAM311〜314に
格納される。
たように、第1段のバタフライ演算に必要となるデータ
の順を考慮してアドレスADを規則的に生成する。アド
レス変換部302は、式(3)及び式(4)に従ってバ
ンク選択信号BK及びバンクアドレスBADを生成し、
アドレス選択部303は、バンクアドレスBAD0〜B
AD3をそれぞれ第1〜第4の4つのRAM311〜3
14に与える。
RAM311〜314からそれぞれデータを1個ずつ読
み出し、これらのデータを対象にして基数4のバタフラ
イ演算を行って、読み出したデータが格納されていた場
所に、演算結果である4個のデータを中間データとして
書き込むことを繰り返す。第1〜第4のRAM311〜
314へのアクセスは並列に行われる。すべての入力デ
ータx0〜x15についてバタフライ演算が行われる
と、高速フーリエ変換の第1段の演算が終了する。
演算を行う。アドレス生成部201は、図11で説明し
たように、第2段のバタフライ演算に必要となるデータ
の順を考慮してアドレスADを規則的に生成する。バタ
フライ演算部304は、第1〜第4のRAM311〜3
14から中間データを1個ずつ読み出してバタフライ演
算を行い、読み出したデータが格納されていた場所に、
演算結果である4個のデータを出力データX0〜X15
として書き込む。
〜第4のRAM311〜314にデータX0〜X15と
して得られる。
な高速フーリエ変換装置で一般的な基数4のバタフライ
演算を行う高速フーリエ変換装置において、第1〜第4
の4つのRAM311〜314を備えたことにより、バ
タフライ演算における4個の入力データを第1〜第4の
4つのRAM311〜314から並列に読み出して演算
を行い、演算後の4個の出力データを第1〜第4の4つ
のRAM311〜314に並列に書き込むので、RAM
アクセスを実質的に高速化することができ、より高速な
高速フーリエ変換装置を実現することができる。
314の総容量は、従来のようにRAMを1つしか備え
ない場合と同じでよい。
な簡単な演算によって、アドレスADをバンク選択信号
BKとバンクアドレスBADとに変換するため、第1〜
第4の4つのRAM311〜314へ並列にアクセスす
ることを簡単に行うことができる。
イ演算の際に、4つの入力データを得るための同一のR
AMに対する読み出し、書き込みは1回ずつでよく、図
9の高速フーリエ変換装置のように、読み出し、書き込
みを2回ずつ行う必要がないため、基数4のバタフライ
演算を行う際のRAMアクセスをより高速に行うことが
できる。
従来例に開示された発明と、本発明の第1の実施形態で
示したような、高速フーリエ変換処理に複数のRAMを
用いる高速フーリエ変換装置とを組み合わせたものであ
る。
速フーリエ変換装置の構成を示すブロック図である。こ
れは、図1の高速フーリエ変換装置において、ビットリ
バース部605を更に備えたものである。また、アドレ
ス生成部101は図1〜3において説明したものと同じ
である。本実施形態では、アドレス生成部101の出力
を第1のアドレスADと称する。
スADを入力とし、これを第2のアドレスADRに変換
してアドレス変換部102に出力する。ビットリバース
部605は、第1のアドレスADを、各ビットの位置を
必要に応じて入れ換える処理を行って第2のアドレスA
DRに変換する。ここでは、この処理の例として、ビッ
トリバースと呼ばれる処理を行う。
ビットリバース処理についての説明図である。図16
(a)は奇数回目の高速フーリエ変換におけるビットリ
バース処理について、図16(b)は偶数回目の高速フ
ーリエ変換におけるビットリバース処理について説明す
る図である。
Nが8であるとし、図16において、第1及び第2のア
ドレスAD及びADRは3ビットで表されている。第1
のアドレスADの各ビットの値を、最下位ビットから最
上位ビットに向かって順にa0,a1及びa2で表すこ
ととする。また、図16では、第1のアドレスADと第
2のアドレスADRとの対応を表に2進数で表示してい
る。
は、ビットリバース部605は、図16(a)のよう
に、第1のアドレスADをそのまま第2のアドレスAD
Rとして出力する。
は、ビットリバース部605は、図16(b)のよう
に、各ビットa0〜a2の位置を入れ換える。すなわ
ち、最下位ビットから最上位ビットに向かって、第1の
アドレスADにおいてはa0,a1,a2の順であった
ものを、第2のアドレスADRにおいてはa2,a1,
a0のように逆の順になるようにビットの位置を入れ換
える。
におけるバタフライ演算動作を説明するシグナルフロー
グラフである。図17は、基数2のバタフライ演算を繰
り返すことにより、サンプル数Nが8の高速フーリエ変
換を複数回行う場合について示している。この場合、1
回の高速フーリエ変換において3段の演算過程が必要で
あり、各段ではバタフライ演算が4回行われる。第1段
の演算結果は中間データ1として、第2段の演算結果は
中間データ2として、第1又は第2のRAM111,1
12に一時保存される。
グラフ中の各データが格納される場所が第1又は第2の
RAM111,112のいずれであるかを示すととも
に、そのデータに対する第2のアドレスADR、バンク
アドレスBAD、バンク選択信号BKの値を示してい
る。図17の表の各段は、それぞれシグナルフローグラ
フ中の同じ段の各データに対応している。
ンプルのデータを1シンボルといい、シンボル内のデー
タの順序はインデックスで表される。1回目の高速フー
リエ変換において、入力データx0〜x7はそれぞれイ
ンデックスが0〜7であり、出力データX0〜X7は、
それぞれインデックスが0〜7である。
と同一のインデックスを持つ出力データは異なる場所に
格納される。図17の第1回目の高速フーリエ変換にお
いて、入力データのインデックスが上から0,4,2,
6,1,5,3,7の順であるのに対し、出力データの
インデックスは上から0,1,2,3,4,5,6,7
の順となる。
は、一般に、この出力データのインデックスの順を再び
入力データのインデックスの順と同じにする必要があ
る。このため、データ並び替え用のRAMを用いて、出
力データの並び替えを行っていた。
1のアドレスADを第2のアドレスADRにビットリバ
ース処理を行って変換するため、出力データの並び替え
を行う必要がなく、出力データX0〜X7はそれぞれ次
回の高速フーリエ変換の入力データx0〜x7として用
いられる。
見ると、1回目の高速フーリエ変換において第2のアド
レスADRは0,1,2,3,4,5,6,7の順に変
化し、2回目の高速フーリエ変換において第2のアドレ
スADRは0,4,2,6,1,5,3,7の順に変化
する。したがって、いずれの高速フーリエ変換において
も、入力データx0とx4との組、入力データx2とx
6との組、入力データx1とx5との組、及び入力デー
タx3とx7との組を入力とするバタフライ演算が行わ
れる。第2段、第3段のバタフライ演算についても同様
に、1回目及び2回目の高速フーリエ変換において、同
じインデックスの入力データから得られた中間データを
対象にしたバタフライ演算が行われる。
ータは、インデックスの順序が1回目の高速フーリエ変
換の入力データと同じになる。その後、奇数回目の高速
フーリエ変換では1回目の高速フーリエ変換と同様の処
理を行い、偶数回目の高速フーリエ変換では2回目の高
速フーリエ変換と同様の処理を行う。
換装置によると、出力データと次回の高速フーリエ変換
における入力データとでインデックスの順序を同一のも
のとすることができるので、出力データを並び替える必
要がなく、データの並び替えを行うためのRAMを用い
る必要がなくなる。また、データ出力と次回の高速フー
リエ変換のデータ入力とをオーバーラップして行うこと
ができるため、連続した高速フーリエ変換処理が可能に
なる。
形態と同様に、基数2のバタフライ演算における2個の
入力データを常に異なるRAMから1個ずつ並列に読み
出し、2個の出力データも常に異なるRAMに1個ずつ
並列に書き込むため、RAMアクセスを実質的に高速化
することができる。
合の、ビットリバース部におけるビットリバース処理に
ついての説明図である。このビットリバース部は、図1
5において、バタフライ演算部104に代えて基数4の
バタフライ演算部204を用いる場合に、ビットリバー
ス部605に代えて用いられるものである。図18
(a)は奇数回目の高速フーリエ変換におけるビットリ
バース処理について、図18(b)は偶数回目の高速フ
ーリエ変換におけるビットリバース処理について説明す
る図である。
Nが16であるとし、図18において、第1及び第2の
アドレスAD及びADRは4ビットで表されている。第
1のアドレスADの各ビットの値を、最下位ビットから
最上位ビットに向かって順にa0,a1,a2及びa3
で表すこととする。
は、ビットリバース部は、図18(a)のように、第1
のアドレスADをそのまま第2のアドレスADRとして
出力する。
は、ビットリバース部は、図18(b)のように、各ビ
ットa0〜a3の位置を入れ換える。すなわち、最下位
ビットから順に2ビットずつをグループにして、最下位
のグループから最上位のグループに向かってのグループ
の順序が逆の順序になるように、各グループの位置を入
れ換える。
より、基数4のバタフライ演算を行う場合においても、
基数2のバタフライ演算を行う場合と同様に、出力デー
タを並べ替える必要がなくなる。また、第2の実施形態
のように、第1〜第4の4つのRAMを備えるようにし
てもよい。
バタフライ演算とを組み合わせて高速フーリエ変換を行
う場合も同様である。この場合、ビットリバース部にお
いて、第1のアドレスADを1ビット又は2ビットずつ
グループにしたものに対して、何回目の高速フーリエ変
換であるかに応じた回数(0回を含む)のビットリバー
ス処理を行う。1ビットのグループ数又は2ビットのグ
ループ数は、1回の高速フーリエ変換において、それぞ
れ基数2又は基数4のバタフライ演算を行う段数に応じ
た数である。
は、第2の従来例(特開平11−110370号公報)
に開示されている。
1ビットを単位としてビットリバースを行う。式(1)
で求められるバンク選択信号BKは、値が“1”である
ビットの数によって決まるので、バンク選択信号BKの
値はビットリバースを行っても変わらない。基数4のバ
タフライ演算を行う場合には、2ビットを1グループに
してグループ単位でビットリバースを行う。式(3)で
求められるバンク選択信号BKは、2ビットを1グルー
プにした後に加算して求められるので、バンク選択信号
BKの値はビットリバースを行っても変わらない。した
がって、ビットリバースを行う場合においても、ビット
リバースを行わない場合と同様に、複数のRAMに同時
にアクセスしてRAMアクセスを実質的に高速化するこ
とができる。
位置変換部161,261におけるビットを入れ換える
操作についても同様のことが言える。すなわち、ビット
位置変換部161においては1ビットを単位としてビッ
トの位置を入れ換え、ビット位置変換部261において
は2ビットを1グループにしたものの位置を入れ換える
ため、これらの操作はバンク選択信号BKの値に影響し
ない。したがって、各段のバタフライ演算において、複
数のRAMに同時にアクセスすることができる。
エ変換は、広義の高速フーリエ変換であり、時間領域か
ら周波数領域への変換である狭義の高速フーリエ変換ば
かりではなく、周波数領域から時間領域への変換である
逆高速フーリエ変換をも含む。したがって、狭義の高速
フーリエ変換及び逆高速フーリエ変換のいずれにおいて
も、本発明を適用することができる。
引き方法による高速フーリエ変換を行う場合について説
明したが、周波数間引き方法による高速フーリエ変換を
行う場合に本発明を適用することも同様に可能である。
おいて、フーリエ変換の入出力データ及びバタフライ演
算時の中間データを格納するRAMを複数備えているた
め、複数のRAMに対して並列に読み出し、書き込みを
することができる。このため、多ポートRAMを用いる
ことなく、複数のデータに同時に並列してアクセスを行
うことができ、RAMアクセスを高速化することができ
る。したがって、高速フーリエ変換装置をより高速化す
ることが可能となる。
換装置の構成を示すブロック図である。
である。
図である。
構成の例を示す回路図である。
イ演算動作を説明するシグナルフローグラフである。
トである。
ミングチャートである。
示すブロック図である。
図である。
説明図である。
ライ演算動作を説明するシグナルフローグラフである。
変換装置の構成を示すブロック図である。
フライ演算動作を説明するシグナルフローグラフであ
る。
変換装置の構成を示すブロック図である。
理についての説明図である。
フライ演算動作を説明するシグナルフローグラフであ
る。
トリバース部におけるビットリバース処理についての説
明図である。
ロック図である。
AD0,BAD1 バンクアドレス CNT カウント値 DO0,DO1,DI0,DI1 データ NWE 選択信号
Claims (10)
- 【請求項1】 入出力データ及び演算時の中間データを
格納する第1及び第2の2つのRAM(Random-Access
Memory)と、 アドレスを生成するアドレス生成部と、 前記アドレスに基づいて、バンク選択信号とバンクアド
レスとを生成して出力するアドレス変換部と、 前記バンク選択信号の値に応じて、前記バンクアドレス
を前記第1及び第2のRAMのうちのいずれかへ供給す
るアドレス選択部と、 前記第1及び第2のRAMが格納する、前記バンクアド
レスで指定されるデータを対象にして、基数2のバタフ
ライ演算を行うバタフライ演算部とを備えた高速フーリ
エ変換装置。 - 【請求項2】 入出力データ及び演算時の中間データを
格納する第1及び第2の2つのRAMと、 アドレスを生成するアドレス生成部と、 前記アドレスに基づいて、バンク選択信号とバンクアド
レスとを生成して出力するアドレス変換部と、 前記バンク選択信号の値に応じて、前記バンクアドレス
を前記第1及び第2のRAMのうちのいずれかへ供給す
るアドレス選択部と、 前記第1及び第2のRAMが格納する、前記バンクアド
レスで指定されるデータを対象にして、基数4のバタフ
ライ演算を行うバタフライ演算部とを備えた高速フーリ
エ変換装置。 - 【請求項3】 請求項1又は2に記載の高速フーリエ変
換装置において、 前記アドレス変換部は、 前記アドレスの各ビット間の排他的論理和をバンク選択
信号として出力し、 前記アドレスを1ビットだけ下位へビットシフトしたも
のをバンクアドレスとして出力するものであることを特
徴とする高速フーリエ変換装置。 - 【請求項4】 入出力データ及び演算時の中間データを
格納する第1〜第4の4つのRAMと、 アドレスを生成するアドレス生成部と、 前記アドレスに基づいて、バンク選択信号とバンクアド
レスとを生成して出力するアドレス変換部と、 前記バンク選択信号の値に応じて、前記バンクアドレス
を前記第1〜第4のRAMのうちのいずれかへ供給する
アドレス選択部と、 前記第1〜第4のRAMが格納する、前記バンクアドレ
スで指定されるデータを対象にして、基数4のバタフラ
イ演算を行うバタフライ演算部とを備えた高速フーリエ
変換装置。 - 【請求項5】 請求項4に記載の高速フーリエ変換装置
において、 前記アドレス変換部は、 前記アドレスの最下位ビットから順に2ビットずつを組
とし、各組の値の総計の最下位ビットから2ビットをバ
ンク選択信号として出力し、 前記アドレスを2ビットだけ下位へビットシフトしたも
のをバンクアドレスとして出力するものであることを特
徴とする高速フーリエ変換装置。 - 【請求項6】 入出力データ及び演算時の中間データを
格納する第1及び第2の2つのRAMと、 第1のアドレスを生成するアドレス生成部と、 前記第1のアドレスを、そのビットの位置を入れ換える
ビットリバース処理を行うことにより、第2のアドレス
に変換して出力するビットリバース部と、 前記第2のアドレスに基づいて、バンク選択信号とバン
クアドレスとを生成して出力するアドレス変換部と、 前記バンク選択信号の値に応じて、前記バンクアドレス
を前記第1及び第2のRAMのうちのいずれかへ供給す
るアドレス選択部と、 前記第1及び第2のRAMが格納する、前記バンクアド
レスで指定されるデータを対象にして、バタフライ演算
を行うバタフライ演算部とを備えた高速フーリエ変換装
置。 - 【請求項7】 請求項6に記載の高速フーリエ変換装置
において、 前記アドレス変換部は、 前記第2のアドレスの各ビット間の排他的論理和をバン
ク選択信号として出力し、 前記第2のアドレスを1ビットだけ下位へビットシフト
したものをバンクアドレスとして出力するものであるこ
とを特徴とする高速フーリエ変換装置。 - 【請求項8】 請求項6又は7に記載の高速フーリエ変
換装置において、 前記ビットリバース部は、 高速フーリエ変換処理後の出力データと、次の高速フー
リエ変換処理の入力データとに対する前記第2のアドレ
スが、シンボル内のデータの順序を表すインデックスが
同一の場合は同一となるように、前記第1のアドレスに
ビットリバース処理を行うことを特徴とする高速フーリ
エ変換装置。 - 【請求項9】 請求項6〜8のいずれかに記載の高速フ
ーリエ変換装置において、 前記ビットリバース部は、 前記第1のアドレスを1以上のビットを含むグループに
分割し、グループ単位で位置を入れ換えるビットリバー
ス処理を行うことを特徴とする高速フーリエ変換装置。 - 【請求項10】 請求項6〜9のいずれかに記載の高速
フーリエ変換装置において、 前記バタフライ演算部は、 基数2又は基数4のバタフライ演算を行うことを特徴と
する高速フーリエ変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000171643A JP2001056806A (ja) | 1999-06-10 | 2000-06-08 | 高速フーリエ変換装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11-163257 | 1999-06-10 | ||
JP16325799 | 1999-06-10 | ||
JP2000171643A JP2001056806A (ja) | 1999-06-10 | 2000-06-08 | 高速フーリエ変換装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001056806A true JP2001056806A (ja) | 2001-02-27 |
Family
ID=26488760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000171643A Pending JP2001056806A (ja) | 1999-06-10 | 2000-06-08 | 高速フーリエ変換装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001056806A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100836050B1 (ko) * | 2001-05-23 | 2008-06-09 | 엘지전자 주식회사 | 고속 푸리에 변환 연산 장치 |
US9785614B2 (en) | 2013-01-23 | 2017-10-10 | Nec Corporation | Fast Fourier transform device, fast Fourier transform method, and recording medium storing fast Fourier transform program |
US9880975B2 (en) | 2013-12-13 | 2018-01-30 | Nec Corporation | Digital filter device, digital filter processing method, and storage medium having digital filter program stored thereon |
US9934199B2 (en) | 2013-07-23 | 2018-04-03 | Nec Corporation | Digital filter device, digital filtering method, and storage medium having digital filter program stored thereon |
US9952648B2 (en) | 2013-09-24 | 2018-04-24 | Nec Corporation | Digital filtering device, digital filtering method, and storage media storing program |
WO2019031418A1 (ja) | 2017-08-07 | 2019-02-14 | 日本電気株式会社 | 高速フーリエ変換装置、データ並べ替え処理装置、高速フーリエ変換処理方法およびプログラム記録媒体 |
US10853445B2 (en) | 2016-04-19 | 2020-12-01 | Nec Corporation | Digital filter device, digital filtering method, and program recording medium |
US11604852B2 (en) | 2017-12-27 | 2023-03-14 | Nec Corporation | Signal processing apparatus, method, program, and recording medium |
-
2000
- 2000-06-08 JP JP2000171643A patent/JP2001056806A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100836050B1 (ko) * | 2001-05-23 | 2008-06-09 | 엘지전자 주식회사 | 고속 푸리에 변환 연산 장치 |
US9785614B2 (en) | 2013-01-23 | 2017-10-10 | Nec Corporation | Fast Fourier transform device, fast Fourier transform method, and recording medium storing fast Fourier transform program |
US9934199B2 (en) | 2013-07-23 | 2018-04-03 | Nec Corporation | Digital filter device, digital filtering method, and storage medium having digital filter program stored thereon |
US9952648B2 (en) | 2013-09-24 | 2018-04-24 | Nec Corporation | Digital filtering device, digital filtering method, and storage media storing program |
US9880975B2 (en) | 2013-12-13 | 2018-01-30 | Nec Corporation | Digital filter device, digital filter processing method, and storage medium having digital filter program stored thereon |
US10853445B2 (en) | 2016-04-19 | 2020-12-01 | Nec Corporation | Digital filter device, digital filtering method, and program recording medium |
WO2019031418A1 (ja) | 2017-08-07 | 2019-02-14 | 日本電気株式会社 | 高速フーリエ変換装置、データ並べ替え処理装置、高速フーリエ変換処理方法およびプログラム記録媒体 |
US11604852B2 (en) | 2017-12-27 | 2023-03-14 | Nec Corporation | Signal processing apparatus, method, program, and recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6115728A (en) | Fast fourier transforming apparatus and method, variable bit reverse circuit, inverse fast fourier transforming apparatus and method, and OFDM receiver and transmitter | |
US7233968B2 (en) | Fast fourier transform apparatus | |
US7164723B2 (en) | Modulation apparatus using mixed-radix fast fourier transform | |
JP2950703B2 (ja) | 高速フーリエ変換用ディジット反転のためのアドレス発生器及び反転フィールドシーケンス発生器並びにディジット反転シーケンス信号発生方法 | |
KR100836050B1 (ko) | 고속 푸리에 변환 연산 장치 | |
IT8322620A1 (it) | Circuito di verifica di ridondanza ciclica in parallelo | |
JP2001056806A (ja) | 高速フーリエ変換装置 | |
JP2002351858A (ja) | 処理装置 | |
EP0936564A2 (en) | Bit and digit reversal methods | |
JP2008186396A (ja) | 高速フーリエ変換装置 | |
EP1481319B1 (en) | Method and apparatus for parallel access to multiple memory modules | |
US7979485B2 (en) | Circuit for fast fourier transform operation | |
US20200334321A1 (en) | Signal processing apparatus, method, program, and recording medium | |
JP3065979B2 (ja) | 高速フーリエ変換装置および方法、可変ビットリバース回路、逆高速フーリエ変換装置および方法、並びにofdm受信および送信装置 | |
JPS63244245A (ja) | 並列アクセス可能な多次元メモリ装置 | |
CN1601913B (zh) | 平行化循环冗余码计算方法及系统 | |
US6789097B2 (en) | Real-time method for bit-reversal of large size arrays | |
JP4159761B2 (ja) | Fftのためのインプレイスメモリ管理 | |
US20210342102A1 (en) | Signal processing apparatus, method, program, and recording medium | |
KR100484418B1 (ko) | 고속푸리에변환장치및방법,가변비트리버스회로,역고속푸리에변환장치및방법과직교주파수분할다중수신및송신장치 | |
US8572148B1 (en) | Data reorganizer for fourier transformation of parallel data streams | |
EP4325726A1 (en) | Interleave circuit and communication device | |
JP2009140040A (ja) | データ処理装置 | |
JPH05266059A (ja) | アドレス発生回路 | |
JP2022152001A (ja) | 高速フーリエ変換装置及びデジタルフィルタ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050502 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050920 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051118 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20051129 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20051228 |