JPH0934876A - フーリエ変換装置 - Google Patents

フーリエ変換装置

Info

Publication number
JPH0934876A
JPH0934876A JP7203817A JP20381795A JPH0934876A JP H0934876 A JPH0934876 A JP H0934876A JP 7203817 A JP7203817 A JP 7203817A JP 20381795 A JP20381795 A JP 20381795A JP H0934876 A JPH0934876 A JP H0934876A
Authority
JP
Japan
Prior art keywords
fourier transform
long
data
intermediate buffer
buffer memory
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.)
Granted
Application number
JP7203817A
Other languages
English (en)
Other versions
JP3839504B2 (ja
Inventor
Hisaaki Satou
弥章 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Steel Corp
Original Assignee
Nippon Steel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Steel Corp filed Critical Nippon Steel Corp
Priority to JP20381795A priority Critical patent/JP3839504B2/ja
Publication of JPH0934876A publication Critical patent/JPH0934876A/ja
Application granted granted Critical
Publication of JP3839504B2 publication Critical patent/JP3839504B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 フーリエ変換の処理時間を短くできるように
するとともに、その処理の際に使用する中間バッファメ
モリの容量を小さくできるようにする。 【解決手段】 横方向に周期n1 、縦方向に周期n2
2次元状に配置された周期N(=n1 ×n2 )の時間成
分の信号に対して、縦方向に対する周期n2 のフーリエ
変換をn1 回行うn2 長フーリエ変換手段2と、上記n
2 長フーリエ変換手段2による変換結果に対して回転演
算を施す回転演算手段3と、上記回転演算手段3による
演算結果に対して、横方向に対する周期n1 のフーリエ
変換をn2回行うn1 長フーリエ変換手段5とを設け、
周期Nの時間成分の信号の周波数解析を、上記周期Nよ
りも小さな周期n1 ,n2 のフーリエ変換の組み合わせ
によって行うようにすることにより、周期Nの信号を周
期Nのフーリエ変換によって一度に周波数変換するよう
になされた従来のDFTよりも演算量を少なくすること
ができるようにする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フーリエ変換装置
に関するものである。
【0002】
【従来の技術】従来、時間成分の信号を周波数成分の信
号に変換するための手法の1つに、DFT(離散的フー
リエ変換)と呼ばれる手法がある。N点の信号(周期が
Nであることを示す)を周波数変換するためのDFTの
一般式は、時間成分の信号値をSi 、周波数成分の信号
値をSk とすると、次の(式1)のように表せる。
【0003】
【数1】
【0004】この(式1)の演算を行うためには、乗算
を4N2 回、加減算を2N2 +2N(N−1)回行う必
要がある。すなわち、(式1)から分かるように、DF
Tは複素演算を行うものであるから、実際には次の(式
2)で示される回転演算を引数k,iの各値について行
っている。
【0005】
【数2】
【0006】(式2)において、周波数成分の信号値S
k [real](実部)、Sk [imag](虚部)を求めるために
は、時間成分の信号値Si [real]と cosθ、信号値Si
[real]と sinθ、信号値Si [imag]と sinθ、信号値S
i [imag]と cosθとの乗算をそれぞれiについてN回、
それを更にkについてN回、2重のループで計算するか
ら、全部で4N2 回の乗算が必要になる。
【0007】さらに、上述の乗算により得られる信号値
i [real] cosθと信号値Si [imag] sinθとの減算、
信号値Si [real] sinθと信号値Si [imag] cosθとの
加算をそれぞれiについてN回、それを更にkについて
N回、2重のループで計算するから、全部で2N2 +2
N(N−1)回の加減算が必要になる。
【0008】
【発明が解決しようとする課題】以上のように、従来の
DFTでは、数多くの乗算および加減算を行う必要があ
った。このため、処理に膨大な時間がかかってしまうと
いう問題があった。そこで、従来、上記DFTの処理時
間をできるだけ短くすることができるようにするため
に、FFT(高速フーリエ変換)と呼ばれる手法が開発
され、デジタル信号処理の分野で多く用いられてきた。
【0009】このFFTは、バタフライ演算と呼ばれる
基本演算を数段階に渡って繰り返して行うことにより、
DFTの演算量を削減できるようにしたものである。つ
まり、FFTにおいて周期Nのフーリエ変換を実施する
場合には、上記周期Nを所定の基数ごとに数段階に分け
て、各基数のバタフライ演算をそれぞれ行うことで周波
数解析を行っていた。
【0010】このFFTでは、数段階のバタフライ演算
をパイプライン処理で並列に行うことが可能である。そ
の場合には、数段階に渡って演算した結果をそれぞれ一
時記憶しておくための中間バッファメモリが必要にな
る。しかしながら、従来のFFTでは、各中間バッファ
メモリの全メモリ容量が非常に大きくなってしまうとい
う問題があった。
【0011】すなわち、FFTを構成する各バタフライ
演算の性質上、その基数は比較的小さいものしか選択す
ることができないため、バタフライ演算の段数が多くな
ってしまう。そのため、各バタフライ演算の結果を一時
記憶しておくための中間バッファメモリの数が多くなる
とともに、個々の中間バッファメモリの容量も大きくな
ってしまい、その結果、全メモリ容量が非常に大きくな
ってしまっていた。
【0012】本発明は、このような問題を解決するため
に成されたものであり、デジタル信号処理においてフー
リエ変換を行うための処理時間を短くすることができる
ようにするとともに、その処理の際に使用する中間バッ
ファメモリの容量を小さくすることができるようにする
ことを目的とする。
【0013】
【課題を解決するための手段】本発明のフーリエ変換装
置は、横方向に周期n1 、縦方向に周期n2 の2次元状
に配置された周期N(=n1 ×n2 )の時間成分の信号
に対して、縦方向に対する周期n2 のフーリエ変換をn
1 回行うn2 長フーリエ変換手段と、上記n2長フーリ
エ変換手段による変換結果を一時記憶するための中間バ
ッファメモリと、上記中間バッファメモリに記憶された
データに対して回転演算を施す回転演算手段と、上記回
転演算手段による演算結果に対して、横方向に対する周
期n1 のフーリエ変換をn2 回行うn1 長フーリエ変換
手段とを具備する。
【0014】本発明の他の特徴とするところは、周期N
の時間成分の信号を周波数解析することにより周波数成
分の信号に変換するためのN長フーリエ変換装置におい
て、上記周期Nの時間成分の信号を横方向に周期n1
縦方向に周期n2 (N=n1×n2 )の2次元状に配置
する並べ替え手段と、上記並べ替え手段により配置され
た2次元状の時間成分の信号に対して、縦方向に対する
周期n2 のフーリエ変換をn1 回行うn2 長フーリエ変
換手段と、上記n2 長フーリエ変換手段による変換結果
を一時記憶するための中間バッファメモリと、上記中間
バッファメモリに記憶されたデータに対して回転演算を
施す回転演算手段と、上記回転演算手段による演算結果
に対して、横方向に対する周期n1 のフーリエ変換をn
2 回行うn1 長フーリエ変換手段とを具備する。
【0015】本発明のその他の特徴とするところは、上
記n1 長フーリエ変換手段による変換結果を1次元状の
データに再配列する第2の並べ替え手段を更に具備する
ことを特徴とする。
【0016】本発明のその他の特徴とするところは、上
記n2 長フーリエ変換手段を複数個設け、上記n1 回の
2 長フーリエ変換処理を上記複数個のn2 長フーリエ
変換手段を用いて並列に行うようにしたことを特徴とす
る。
【0017】本発明のその他の特徴とするところは、上
記n1 長フーリエ変換手段を複数個設け、上記n2 回の
1 長フーリエ変換処理を上記複数個のn1 長フーリエ
変換手段を用いて並列に行うようにしたことを特徴とす
る。
【0018】本発明のその他の特徴とするところは、請
求項1に記載のフーリエ変換装置を2個と、上記2個の
フーリエ変換装置の間に直列に設けられる回転演算装置
とを組み合わせてN2 長フーリエ変換装置を構成し、さ
らに、上記N2 長フーリエ変換装置と請求項1に記載の
フーリエ変換装置とそれらの間に直列に設けられる回転
演算装置とを組み合わせてN3 長フーリエ変換装置を構
成するというように、請求項1に記載のフーリエ変換装
置を複数個用いてそれらを上記回転演算装置を介してツ
リー構造となるように接続したことを特徴とする。
【0019】本発明のその他の特徴とするところは、請
求項1に記載のフーリエ変換装置と、上記フーリエ変換
装置の前段に設けられ、与える係数を変えることにより
窓かけ演算および回転演算の何れかを行う窓かけ回転演
算装置と、上記フーリエ変換装置の出力結果を一時記憶
するための中間バッファメモリとを具備し、上記中間バ
ッファメモリの記憶内容を上記窓かけ回転演算装置に供
給して上記窓かけ回転演算装置および上記フーリエ変換
装置による処理を時分割で繰り返して行うようにしたこ
とを特徴とする。
【0020】本発明のその他の特徴とするところは、上
記中間バッファメモリを高速ページモードを持つメモリ
を用いて構成したフーリエ変換装置であって、上記高速
ページモードを持つメモリ上において所定ワード分の中
間バッファメモリを縦横のブロック状に順次配置するよ
うにしたことを特徴とする。
【0021】本発明のその他の特徴とするところは、上
記n2 長フーリエ変換手段と上記n1 長フーリエ変換手
段とを並列に動作させるようにしたフーリエ変換装置に
おいて、上記n2 長フーリエ変換手段によりフーリエ変
換されたデータを上記中間バッファメモリに記憶する際
に、最初にn1 回のフーリエ変換が完了するまでは、上
記n1 長フーリエ変換手段で使用するために読み出され
て空きにされた横方向の領域に上記データを書き込み、
次にn1 回のフーリエ変換が完了するまでは、同様にし
て空にされた縦方向の領域に上記データを書き込むとい
うように、データの書き込み方向を縦と横とで交互に変
換するようにするとともに、上記n1 長フーリエ変換手
段において上記中間バッファメモリに記憶されたデータ
を使用する際に、最初にn2 回のフーリエ変換が完了す
るまでは横方向に上記データを読み出し、次にn2 回の
フーリエ変換が完了するまでは縦方向に上記データを読
み出すというようにデータの読み出し方向を縦と横とで
交互に変換するようにするアドレッシング手段を設けた
ことを特徴とする。
【0022】本発明のその他の特徴とするところは、上
記n2 長フーリエ変換手段と上記n1 長フーリエ変換手
段とをそれぞれ複数個ずつ設け、上記n1 回のn2 長フ
ーリエ変換処理を上記複数個のn2 長フーリエ変換手段
を用いて並列に行うとともに、上記n2 回のn1 長フー
リエ変換処理を上記複数個のn1 長フーリエ変換手段を
用いて並列に行うようにしたフーリエ変換装置におい
て、上記中間バッファメモリを上記複数個のn2 長フー
リエ変換手段および上記複数個のn1 長フーリエ変換手
段と同じ数だけ設けるとともに、上記複数個のn2 長フ
ーリエ変換手段により同時に求められた複数個のデータ
を上記複数個の中間バッファメモリに1個ずつ振り分け
て記憶するようにするデータ振り分け手段を設けたこと
を特徴とする。
【0023】本発明のその他の特徴とするところは、上
記データ振り分け手段は、同じn2長フーリエ変換手段
により求められたデータが同じ中間バッファメモリ内に
記憶されることがないように順次得られるデータを振り
分けて記憶するようにすることを特徴とする。
【0024】
【作用】本発明は上記技術手段より成るので、請求項1
〜3に記載の発明によれば、周期Nの時間成分の信号が
周期Nのフーリエ変換によって一度に周波数変換される
のではなく、上記周期Nよりも小さな周期n1 、n2
フーリエ変換の組み合わせによって周波数変換されるこ
ととなるので、フーリエ変換演算の性質上、上記小さな
周期n1 、n2 のフーリエ変換でそれぞれ行われる演算
量は、上記周期Nのフーリエ変換で行われる演算量に比
べて格段に少ないものとなり、上記小さな周期n1 、n
2 のフーリエ変換で行われる各演算量と回転演算で行わ
れる演算量とを合計しても、上記周期Nのフーリエ変換
によって一度に周波数変換を行うようになされた従来の
DFTの演算量よりも演算量が少なくなる。
【0025】請求項4に記載の発明によれば、複数のn
2 長フーリエ変換処理を複数のn2長フーリエ変換手段
を用いて同時に行うことができるようになり、また、請
求項5に記載の発明によれば、複数のn1 長フーリエ変
換処理を複数のn1 長フーリエ変換手段を用いて同時に
行うことができるようになる。
【0026】請求項6に記載の発明によれば、請求項1
〜3に記載の発明と同様に、小さな周期のフーリエ変換
の組み合わせによって、より大きな周期のフーリエ変換
を実施することが可能となるので、大きな周期のフーリ
エ変換を一度に行う場合の演算量に比べて演算量を格段
に少なくすることが可能となる。しかも、上記小さな周
期として任意の周期を選択することが可能であり、ツリ
ー構造のルート付近では、ある程度大きな周期を選択す
ることが可能であるので、各フーリエ変換の結果を一時
記憶しておくための中間バッファメモリの数が従来のF
FTにおけるバタフライ演算を並列化動作させる場合に
比べて少なくて済むとともに、個々の中間バッファメモ
リの容量もそれほど大きくしなくても済む。
【0027】請求項7に記載の発明によれば、請求項1
〜3に記載の発明と同様に、小さな周期のフーリエ変換
の組み合わせによって、より大きな周期のフーリエ変換
を実施することが可能となるので、大きな周期のフーリ
エ変換を一度に行う場合の演算量に比べて演算量を格段
に少なくすることが可能となる。また、フーリエ変換さ
れたデータが再び同じ装置に入力されて更に大きな周期
のフーリエ変換が行われていくこととなるので、請求項
6に記載の発明に比べて更に少ない数のフーリエ変換装
置と回転演算装置とによって、より大きな周期のフーリ
エ変換を行うことが可能となる。
【0028】請求項8に記載の発明によれば、ブロック
状に配置された中間バッファメモリの縦方向に対してデ
ータの読み書きを行うときには高速ページモードを使っ
て高速に読み書きをすることが可能となるので、縦方向
に対しても横方向に対してもメモリアクセスを高速に行
うことが可能となる。これにより、ストライプ状に配置
した場合に、縦横の一方の方向に対するデータの読み書
きは速いが、他方の方向に対するデータの読み書きが非
常に遅くなり、その結果、縦方向と横方向とのそれぞれ
に対してフーリエ変換を行う際に必要なデータを読み書
きするのにかかる時間が長くなってしまうという不都合
を防止することが可能となる。
【0029】請求項9に記載の発明によれば、n1 長フ
ーリエ変換手段で使用するためにデータが読み出される
ことによって順次空きにされた領域に、n2 長フーリエ
変換手段でフーリエ変換されたデータが順次記憶されて
いくこととなり、データの読み出しによって空にされた
領域を有効に使って、1つの中間バッファメモリをn2
長フーリエ変換用とn1 長フーリエ変換用とで共用する
ことが可能となる。
【0030】請求項10に記載の発明によれば、複数の
フーリエ変換手段により同時に求められた複数のデータ
が複数のバッファメモリに同時に記憶されるようにな
る。
【0031】請求項11に記載の発明によれば、複数の
1 長フーリエ変換手段で同時に使用されるデータが複
数のバッファメモリに1個ずつ分散して記憶されること
となるので、それらのデータの読み出しを同時に行うこ
とが可能となる。
【0032】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。時間成分の信号を周波数成分の信号に周期Nで
変換するための処理、すなわちN点DFTの処理を、従
来は図2(0)に示すようにN長フーリエ変換で一度に
行っていた。これに対し、本実施例のフーリエ変換装置
では、図2(a)〜(e)に示すように第1〜第5のフ
ェーズに分けて行っている。
【0033】すなわち、第1のフェーズでは、図2
(a)に示すように、入力される1次元状のN個のデジ
タル信号を横n1 個×縦n2 個の2次元状の配置に並べ
替える。第2のフェーズでは、図2(b)に示すよう
に、上記並べ替えた2次元状のデータ配置において、縦
方向に対するn2 個のデータを用いてn2 長DFT処理
を横方向の数n1 だけ行う。
【0034】次に、第3のフェーズでは、図2(c)に
示すように、上記n2 長DFT処理で得られた結果に対
して回転演算を施す。第4のフェーズでは、図2(d)
に示すように、上記回転演算の結果に対して、横方向に
対するn1 個のデータを用いてn1 長DFT処理を縦方
向の数n2 だけ行う。最後に、第5のフェーズでは、図
2(e)に示すように、上記n1 長DFT処理で得られ
た結果を1次元状のデータ配置に並べ替える。
【0035】図1は、本実施例によるフーリエ変換装置
の構成を示す図であって、図2に示した5つのフェーズ
の処理を行うための構成を示す図である。図1におい
て、1は第1の並べ替え手段であり、上記第1のフェー
ズの処理を行う。この第1の並べ替え手段1は、例え
ば、メモリとアドレッシング装置とにより簡単に構成す
ることが可能である。この並べ替え処理を式で表すと、
次の(式3)のようになる。
【0036】
【数3】
【0037】2はn2 長フーリエ変換手段であり、次の
(式4)に従って上記第2のフェーズの処理を行う。す
なわち、上記第1の並べ替え手段1で並べ替えられた2
次元状のデータ配置において、縦方向に対するn2 長の
DFT処理をn1 回行う。
【0038】
【数4】
【0039】3は回転演算手段であり、次に示す(式
5)に従って上記第3のフェーズの処理を行う。すなわ
ち、上記n2 長フーリエ変換手段2による演算処理の結
果得られたデータに対して回転演算を施す。
【0040】
【数5】
【0041】4は中間バッファメモリであり、上記n2
長フーリエ変換手段2によりフーリエ変換されたデータ
を一時記憶する。上述の回転演算手段3は、この中間バ
ッファメモリ4に記憶されたデータに対して回転演算を
行い、その演算結果をn1 長フーリエ変換手段5に供給
するようになされている。
【0042】上記n1 長フーリエ変換手段5は、上記回
転演算手段3による回転演算の結果得られるデータを用
いて、次の(式6)に従って上記第4のフェーズの処理
を行う。すなわち、上記並べ替えられた2次元状のデー
タ配置において、横方向に対するn1 長のDFT処理を
2 回行う。
【0043】
【数6】
【0044】6は第2の並べ替え手段であり、上記第5
のフェーズの処理を行う。すなわち、上記n1 長フーリ
エ変換手段5により求められたデータを次の(式7)に
従って再び1次元状に並べ替えることにより、周波数成
分の信号Sk を得る。なお、この第2の並べ替え手段6
は、上記第1の並べ替え手段1と同様に、メモリとアド
レッシング装置とにより構成することが可能である。
【0045】
【数7】
【0046】上記(式3)〜(式7)に示した5つのフ
ェーズに分けて行っている本実施例のDFT処理は、従
来の(式1)で行っているDFT処理と等価であり、同
じ演算結果(同じ周波数成分の信号Sk )を得ることが
できる。一方、その演算結果を得るまでの演算量は、従
来に比べて本実施例の方が少なくなっている。このこと
を以下に説明する。
【0047】本実施例のDFT処理における第1のフェ
ーズと第5のフェーズの処理は、単なるデータの並べ替
え処理(メモリアドレッシング処理)であるから、演算
は行っていない。そこで、本実施例における総演算量
は、第2〜第4のフェーズにおける各処理の演算量を合
計したものとなる。次に示す表1は、その演算量を示し
たものである。
【0048】
【表1】
【0049】この表1から明らかなように、本実施例の
DFT処理で行う乗算の回数は、4n1 2 (n1 +n
2 +1)回であり、加減算を行う回数は、2n1
2 (2n1 +2n2 +1)回である。一方、従来例のと
ころで述べたように、従来のDFT処理で行う乗算の回
数は、4N2 =4n1 22 2回である。また、加減算を行
う回数は、2N2 +2N(N−1)=4n1 22 2−2n
1 2 回であり、2n1 2 は殆ど無視できるほど小さ
いと考えてよいから、結局4n1 22 2回である。
【0050】乗算を行う回数および加減算を行う回数を
それぞれ本実施例と従来とで比較してみれば分かるよう
に、n1 とn2 の値を共に3以上とすれば、本実施例の
DFT処理における演算量を従来のDFT処理における
演算量よりも確実に少なくすることができる。
【0051】次に、本実施例のDFT処理と従来のFF
T処理とを比較してみると、従来のFFTは、本実施例
のDFTの特別な例であると言える。すなわち、本実施
例のDFTでは、実演算を第2〜第4のフェーズの3段
に分離して行っている。これに対し、従来のFFTは、
第2のフェーズと第3のフェーズまたは第3のフェーズ
と第4のフェーズとを一まとめにして演算の流れを再配
置し、バタフライ演算という形にまとめて行うものであ
る。
【0052】このため、演算量の観点からすれば、本実
施例のDFTと従来のFFTとで差ほど変わりはないと
言える。ところが、各フェーズの処理をパイプライン化
して並列に行う場合に必要な中間バッファメモリの容量
という観点からすると、本実施例のDFTでは、従来の
FFTよりも格段に小さいメモリ容量で済むというメリ
ットがある。
【0053】すなわち、本実施例の場合、上記中間バッ
ファメモリ4に必要なメモリ容量はn1 ×n2 ワード分
である。さらに、第2のフェーズにおけるn1 長DFT
処理の周期n1 を更に細かく分離して横方向n11、縦方
向n12(n1 =n11×n12)として処理することとすれ
ば、その中間部にn11×n12ワード分のメモリが必要に
なる。また、第4のフェーズにおけるn2 長DFT処理
の周期n2 を更に細かく分離して横方向n21、縦方向n
22(n2 =n21×n22)として処理することとすれば、
その中間部にn21×n22ワード分のメモリが必要にな
る。
【0054】以下同様にして、更に細かく周期を分離し
て縦方向のDFT処理と横方向のDFT処理とを行うよ
うにすれば、例えばN=216点の周波数解析を行う場
合、各中間バッファメモリで必要なメモリ容量は、図3
(a)の各四角の中に示す数字のようになる。したがっ
て、中間バッファメモリの全メモリ容量は、各中間バッ
ファメモリのメモリ容量を合計して、66176ワード
分となる。
【0055】もちろん、図3(a)に示したように周期
が最も小さくなるまで細分化する必要は必ずしもなく、
その場合に必要なメモリ容量は、上記66176ワード
よりも小さくなる。
【0056】一方、従来のFFTでは、数段階のバタフ
ライ演算によって周波数解析を実施しているが、上述し
たように各バタフライ演算の基数は小さい値しかとるこ
とができない。そこで、基数を2とした場合に各中間バ
ッファメモリとして必要なメモリ容量を、図3(b)に
示した。この図3(b)から、中間バッファメモリとし
て必要な全メモリ容量は、131102ワード分である
ことが分かる。
【0057】図3(a)と図3(b)とを比較すれば明
らかなように、本実施例のDFT処理によれば、各フェ
ーズの処理を並列化動作させる場合に必要な中間バッフ
ァメモリのメモリ容量を、従来のFFTで各バタフライ
演算を並列化動作させる場合に必要なメモリ容量よりも
小さくすることができる。
【0058】以上説明したように、本実施例のフーリエ
変換装置によれば、一連のフーリエ変換処理にかかる演
算量を少なくすることができ、しかも、各フェーズを並
列化動作させた場合に使用する中間バッファメモリの全
メモリ容量を小さくすることもできるようになる。
【0059】なお、以上の実施例では、第1の並べ替え
手段1と第2の並べ替え手段6とを含めたものを1つの
フーリエ変換装置として扱っているが、このようなデー
タの並べ替えを行う手段が外部に存在すれば、これらの
手段はフーリエ変換装置内に必ずしも設ける必要はな
い。
【0060】以上のような本実施例のフーリエ変換装置
を利用して、以下に述べる幾つかの応用例を実現するこ
とができる。
【0061】まず第1番目の例は、ある小さな周期のフ
ーリエ変換装置を2個直列に設けるとともに、その間に
小規模の回転演算装置を付加することにより、より大き
な周期のフーリエ変換装置を構成したものである。
【0062】例えば、図4に示すように、n2 長DFT
装置11とn1 長DFT装置14とを直列に設けるとと
もに、その間に回転演算装置12と(n1 ×n2 )ワー
ド分の容量を持つ中間バッファメモリ13とを付加する
ことにより、N=n1 ×n2長の大きな周期のDFT装
置を構成する。そして、n2 長DFTとn1 長DFTと
をパイプライン処理することにより、N点の周波数解析
を実施する。
【0063】上述したように、大きな周期Nの周波数解
析を1個のDFT装置で一度に行うのは演算負荷が非常
に大きいのに対して、小さな周期n1 、n2 の組み合わ
せで周波数解析を行うのは演算負荷が小さい。したがっ
て、本装置によれば、全体としての処理速度を高速にす
ることができるというメリットがある。
【0064】第2番目の例は、第2のフェーズにおける
2 長DFT処理と第4のフェーズにおけるn1 長DF
T処理とがそれぞれ独立性が高いことを利用して、上記
2長DFT処理を行う装置と上記n1 長DFT処理を
行う装置とをそれぞれ複数個ずつ設けて1つのフーリエ
変換装置を構成したものである。
【0065】例えば、図5に示すように、m1(ワード/
秒) の演算能力を持つn2 長DFT装置21a,21
b,…,21cをl1 個設けてn2 長DFT装置群21
を構成するとともに、m2(ワード/秒) の演算能力を持
つn1 長DFT装置24a,24b,…,24cをl2
個設けてn1 長DFT装置群24を構成する。
【0066】そして、上記n2 長DFT装置群21と上
記n1 長DFT装置群24との間にm3(ワード/秒) の
演算能力を持つ回転演算装置22と(n1 ×n2 )ワー
ド分の容量を持つ中間バッファメモリ23とを設けるこ
とにより、1つのフーリエ変換装置を構成する。
【0067】既に説明したように、第2のフェーズでは
2 長DFT処理をn1 回行う必要がある。そこで、n
2 長DFT装置群21を構成するn2 長DFT装置21
a,21b,…,21cをn1 個、あるいは適当な数で
割った個数だけ設けることにより、n1 回のn2 長DF
T処理を並列に行うようにする。これにより、n2 長D
FT処理をより短時間で行うようにすることができる。
【0068】例えば、n1 =4の場合、先に示した図4
の例のように、1個のn2 長DFT装置11でn1 回の
2 長DFT処理を行うのでは4サイクルかかっていた
のに対し、n2 長DFT装置を2個設ければ2サイクル
で行うことができる。また、n2 長DFT装置を4個設
ければ、1サイクルで行うことができる。
【0069】また、第4のフェーズについても同様に、
1 長DFT装置群24を構成するn1 長DFT装置2
4a,24b,…,24cをn2 個、あるいは適当な数
で割った個数だけ設けることにより、n2 回のn1 長D
FT処理を行う際の演算サイクル数を少なくすることが
できる。これにより、より高速なフーリエ変換装置を得
ることができる。
【0070】なお、上記n2 長DFT装置群21の全体
としての演算能力はl1 ×m1(ワード/秒) であり、上
記n1 長DFT装置群24の全体としての演算能力はl
2 ×m2(ワード/秒) である。ここで、m3 ≦l1 ×m
1 あるいはm3 ≦l2 ×m2が成立すると、上記n2
DFT装置群21およびn1 長DFT装置群24は、m
3(ワード/秒) の演算能力に制限される。
【0071】第3番目の例は、ある小さな周期のフーリ
エ変換装置を複数個用い、それらを回転演算装置を介し
て積み重ねるようにして接続する(イメージとしては、
図3(a)に示したツリー構造となるように接続する)
ことにより、より大きな周期のフーリエ変換装置を構成
したものである。
【0072】例えば、複数個の4点フーリエ変換装置を
用いて、より大きな周期の4096点フーリエ変換装置
を構成する場合について考える。この場合、図6に示す
ように、4096点フーリエ変換装置は、大きく分けて
16点フーリエ変換装置31と、4096点回転演算装
置32と、4096ワード分の容量を持つ4096点バ
ッファメモリ33と、256点フーリエ変換装置34と
により構成される。
【0073】そして、上記16点フーリエ変換装置31
は、2つの4点フーリエ変換装置31a,31dと、1
6点回転演算装置31bと、16ワード分の容量を持つ
16点バッファメモリ31cとにより構成される。ま
た、上記256点フーリエ変換装置34は、2つの16
点フーリエ変換装置34a,34dと、256点回転演
算装置34bと、256ワード分の容量を持つ256点
バッファメモリ34cとにより構成される。
【0074】さらに、上記256点フーリエ変換装置3
4内にある一方の16点フーリエ変換装置34aは、上
記16点フーリエ変換装置31と同様に、2つの4点フ
ーリエ変換装置34a1 ,34a4 と、16点回転演算
装置34a2 と、16ワード分の容量を持つ16点バッ
ファメモリ34a3 とにより構成される。
【0075】他方の16点フーリエ変換装置34dにつ
いても上記16点フーリエ変換装置31と同様に、2つ
の4点フーリエ変換装置34d1 ,34d4 と、16点
回転演算装置34d2 と、16ワード分の容量を持つ1
6点バッファメモリ34d3とにより構成される。
【0076】このように、小さな周期の4点フーリエ変
換装置を複数個用い、それらを回転演算装置を介してツ
リー構造となるように接続することにより、より大きな
周期の4096点フーリエ変換装置を構成している。な
お、本装置において用いられている各回転演算装置は、
ツリーの枝を結ぶ乗算の役目を果たしている。
【0077】つまり、この図6に示した装置では、40
96点の周波数解析を、縦16点×横256点に分割し
て行う。そして、縦16点の周波数解析を行う際には、
更に縦4点×横4点に分割して行う。また、横256点
の周波数解析を行う場合も同様にして、縦4点×横4点
のフーリエ変換にまで細分化して行う。
【0078】4096点の周波数解析を1個の4096
点フーリエ変換装置で一度に行うのは演算負荷が非常に
大きいが、小さな周期の4点フーリエ変換装置の組み合
わせで周波数解析を行うのは演算負荷が小さいことは上
述した通りである。したがって、本装置によれば、全体
としての演算負荷を小さくして処理速度を高速にするこ
とができる。
【0079】また、本装置において用いている中間バッ
ファメモリの総メモリ容量は、4096+16+256 +16+16
=4440ワードである。これに対して、従来のFFTによ
り4096点フーリエ変換装置を構成すると、各バタフ
ライ演算の基数を4とした場合でも、バッファメモリの
総メモリ容量は、4096+1024+256 +64+16+4 ×6=5
480ワードである。
【0080】以上のことから明らかなように、図6の装
置によれば、4096点のDFT処理にかかる演算量を
少なくしてFFTと同程度にまで処理時間を短くするこ
とができるだけでなく、演算の過程で使用する中間バッ
ファメモリのメモリ容量を、FFTを行う場合に比べて
小さくすることもできている。
【0081】第4番目の例は、図6に示した第3番目の
例を応用した例である。すなわち、窓かけ演算にも流用
できるようにした回転演算装置と16点フーリエ変換装
置とを用いて1つのフーリエ変換装置を構成する。そし
て、これをタイムシェアリング(時分割)で用いること
により、より大きな周期(4096点)の周波数解析を
行うことができるようにしたものである。
【0082】フーリエ変換は、数学上の話では本来は無
限長の周期で行うものである。しかし、これを実際に行
うのは現実問題として無理である。そこで、実際には、
周期Nで一定区間を区切り、その端点をつなげることに
よって無限長とみなして周波数解析を行っている。とこ
ろが、この場合に、端点に不連続点が存在すると、正常
でない周波数成分、すなわち、周波数もれ成分が生じる
ことがある。
【0083】上述した窓かけ演算は、この端点の不連続
点をなくし、周波数もれ成分を少なくすることを目的と
して行われるものであり、次の(式8)に示す演算式に
よって行われる。なお、(式8)中のSk はフーリエ解
析するデータ、w(k) は窓関数、Sk ' は実サンプルデ
ータを示している。
【0084】
【数8】
【0085】ところで、この窓かけ演算は、精密ではな
いが、次の(式9)に示す回転演算とほぼ同じと考える
ことができる。したがって、係数をうまく与えれば、回
転演算装置を用いて窓かけ演算を行うことが可能であ
る。そこで、この第4番目の例では、回転演算装置を窓
かけ演算にも流用できるようにしている。
【0086】
【数9】
【0087】図7は、この第4番目の例を実現するため
の装置の構成を示す図である。図7に示したように、本
装置は、窓かけ演算にも流用可能な窓かけ/回転演算装
置41と、16点フーリエ変換装置42と、4096ワ
ード分の容量を持つ4096点バッファメモリ43と、
256ワード分の容量を持つ256点バッファメモリ4
4と、データ入力部45と、データ出力部46とにより
構成されている。
【0088】上記回転演算装置41は、窓かけ演算を行
う際に適当な係数を与える手段を具備している。また、
上記16点フーリエ変換装置42は、図6中に示した各
16点フーリエ変換装置と同様に、2つの4点フーリエ
変換装置42a,42dと、16点回転演算装置42b
と、16点バッファメモリ42cとにより構成されてい
る。
【0089】このように構成したフーリエ変換装置は、
図6中にα、β、γで示した部分(何れの部分も16点
フーリエ変換装置と回転演算装置、あるいは16点フー
リエ変換装置と窓かけ演算装置とを含んでいる)の処理
を時分割で行うことにより、4096点の周波数解析を
実施する。
【0090】すなわち、図8に示すように、まず最初
に、データ入力部45を介して入力されるデータを用い
て、図6中のαの部分に相当する演算が行われる。この
とき、窓かけ/回転演算装置41では、適当な係数が与
えられることにより窓かけ演算が行われる。このαの部
分の演算結果は、データ出力部46を介して4096点
バッファメモリ43に順次格納される。
【0091】そして、この4096点バッファメモリ4
3にデータがたまると、次にそのデータがデータ入力部
45を介して入力され、図6中のβに相当する演算が行
われる。このβの部分の演算結果は、データ出力部46
を介して256点バッファメモリ44に順次格納され
る。次に、この256点バッファメモリ44にデータが
たまると、そのデータがデータ入力部45を介して入力
され、図6中のγに相当する演算が行われる。
【0092】このように、図7の装置によれば、小さな
周期のフーリエ変換の組み合わせによって大きな周期の
フーリエ変換を行っているので、4096点のDFT処
理にかかる演算量を少なくして処理時間を短くすること
ができる。さらに、図6の装置と異なり、同じ装置を時
分割で何度も用いているので、図6の装置に比べて、4
点フーリエ変換装置や中間バッファメモリの使用数を減
らすことができ、装置全体の規模を小さくすることがで
きる。
【0093】第5番目の例は、高速ページモードを持つ
メモリを用いて中間バッファメモリを構成し、その高速
ページモードを持つメモリに中間バッファメモリを配置
するときに、ストライプ状に配置するのではなく、縦横
のブロック状に配置することにより、メモリアクセスタ
イムを短くできるようにしたものである。
【0094】一般に、高速ページモードを持つICメモ
リは、2次元マトリクス状に作製される。そして、その
行(カラム)と列(ロウ)とで位置を指定することによ
り所望のデータを得るようになされている。この場合、
DRAMに代表されるメモリでは、その機構上の特徴に
より、先にロウアドレスを指定し、次にカラムアドレス
を指定するようになっている。
【0095】そして、高速ページモードでは、同じロウ
アドレスについてカラムアドレスを連続して指定する場
合には、異なるロウアドレスについてカラムアドレスを
指定する場合に比べて高速にアクセスすることができる
ようになっている。このような高速ページモードを持つ
メモリの一例として、日立製のメモリ(HM511OOOA-6)
がある。
【0096】ところで、上述したように、本実施例のフ
ーリエ変換装置では、第2のフェーズで縦方向に対する
DFT処理を行い、第4のフェーズで横方向に対するD
FT処理を行っている。このため、2次元状に作られた
中間バッファメモリの縦方向と横方向に対してそれぞれ
データの読み書きを行っている。
【0097】ここで、中間バッファメモリ4を横方向に
ストライプ状に配置した場合には、縦方向に対する高速
ページモードが使えないので、横方向に対するメモリア
クセスタイムは速いが、縦方向に対するメモリアクセス
タイムが遅くなってしまう。一方、ブロック状に配置す
れば、縦方向に対するデータの読み書き時に高速ページ
モードが使えるので、横方向に対するアクセスタイムも
縦方向に対するアクセスタイムも共に速くすることがで
きるようになる。
【0098】図9は、上記した日立製のメモリのアクセ
スタイムの様子を示すタイムチャートである。この図9
の例では、同じロウアドレスについて2つのカラムアド
レスを連続して指定した場合について示している。
【0099】すなわち、通常、1ワードのアクセスを行
うのにかかる時間(サイクルタイム)は120nsec
であるのに対して、高速ページモードにおいて2ワード
のアクセスを行うのにかかる時間は155(=60+4
5+50)nsecである。つまり、1ワード当たりで
は、77.5nsecと通常時よりもアクセス時間が短
くなっていることが図9から読み取れる。
【0100】このような日立製のメモリを中間バッファ
メモリとして用いた場合の具体例を次に示す。なお、こ
こでは、中間バッファメモリの全メモリ容量は218ワー
ド(縦29 ワード×横29 ワード)であるとする。
【0101】まず、図10に示すように、中間バッファ
メモリを29 ワード分ずつ横方向にストライプ状に配置
する場合について考える。この場合、第2のフェーズで
求められたデータを中間バッファメモリに縦方向に書き
込む際には、高速ページモードが使えないので、縦方向
に対して1ワード当たり120nsecの時間がかか
る。
【0102】また、第4のフェーズにおいて上記中間バ
ッファメモリからデータを読み出す際に、横方向に対し
て1ワード当たりにかかるアクセス時間は、(60+4
5×(29 −1)+50)/29 ≒45.13nsec
である。よって、メモリアクセスに関するデータレート
の上限は、120+45.13=165.13nsec
/ワードとなる。
【0103】次に、図11に示すように、中間バッファ
メモリを29 ワード分ずつブロック状(縦24 個×横2
5 個)に配置する場合について考える。この場合、縦方
向に対するメモリアクセス時に高速ページモードを使う
ことが可能であるので、第2のフェーズで求められたデ
ータを中間バッファメモリに書き込む際にかかる時間
は、縦方向に対して1ワード当たり(60+45×15
+50)/16≒49.06nsecである。
【0104】また、第4のフェーズにおいて上記中間バ
ッファメモリからデータを読み出す際に、横方向に対し
て1ワード当たりにかかるアクセス時間は、(60+4
5×31+50)/32≒47.03nsecである。
よって、メモリアクセスに関するデータレートの上限
は、49.06+47.03=96.09nsec/ワ
ードとなる。
【0105】以上の計算結果から明らかなように、中間
バッファメモリをブロック状に配置することにより、ス
トライプ状に配置する場合に比べてメモリアクセス時間
を短くすることができる。これにより、上述したように
フーリエ変換処理を行う際の演算量を減らすことができ
るだけでなく、処理の過程で使用する中間バッファメモ
リへのアクセス時間を削減することもできるようにな
り、全体としての処理時間を更に短くすることができ
る。
【0106】第6番目の例は、第2のフェーズの処理と
第4のフェーズの処理とを並列に動作させる場合に、中
間バッファメモリにデータを読み書きする際のアドレッ
シング動作を工夫することにより、中間バッファメモリ
を1ページ分だけ用意すれば済むようにしたものであ
る。
【0107】第4のフェーズの処理を行う際には、第2
のフェーズで求められたデータを用いるため、第2のフ
ェーズの処理が終わらなければ第4のフェーズの処理は
行うことができない。したがって、第2のフェーズの処
理と第4のフェーズの処理とを並列に動作させる場合
は、通常は、図12に示すように、第2のフェーズ用と
第4のフェーズ用との2ページ分の中間バッファメモリ
が必要になる。
【0108】すなわち、第2のフェーズと第4のフェー
ズとを並列動作させる場合には、図12(a)に示すよ
うに、第2のフェーズにおける縦方向のDFT処理で求
められるデータを縦方向に順次記憶していくと同時に、
図12(b)に示すように、既に求められたデータを第
4のフェーズにおいて横方向に読み出して横方向のDF
T処理を順次行っていく必要がある。
【0109】したがって、第2のフェーズで求められる
データを縦方向に順次記憶していくためのページと、第
4のフェーズでデータを横方向に読み出して使用するた
めのページとの2ページが中間バッファメモリとして必
要になる。しかし、このように中間バッファメモリを2
ページも用意したのでは、メモリ容量が非常に大きくな
ってしまう。
【0110】そこで、この第6番目の例では、今までの
ように第2のフェーズで求められたデータは縦方向に書
き込み、第4のフェーズの処理ではデータを横方向に読
み出すというように一定としないで、図13に示すよう
に、1回目に行う第2、第4のフェーズではデータを縦
方向に読み書きする。2回目に行う第2、第4のフェー
ズではデータを横方向に読み書きするというように、ア
ドレッシングの方向を縦と横で交互に切り換えていくよ
うにする。
【0111】すなわち、図13(a)において、1回目
に行う第4のフェーズの処理では、中間バッファメモリ
に既に記憶されているデータ(この第4のフェーズの処
理よりも前に行われた0回目の第2のフェーズの処理で
求められたデータ)が縦方向に順次読み出される。
【0112】そして、この第4のフェーズの処理と同時
に行われている1回目の第2のフェーズの処理で求めら
れたデータが、上記読み出しによって空になった縦方向
の領域に順次書き込まれる。すると、最終的には、中間
バッファメモリの全ての領域に、1回目の第2のフェー
ズの処理で求められたデータが記憶される。
【0113】次に、図13(b)において、2回目に行
う第4のフェーズの処理では、中間バッファメモリに記
憶されているデータ(上記1回目の第2のフェーズの処
理で求められたデータ)が横方向に順次読み出される。
【0114】そして、この第4のフェーズの処理と同時
に行われている2回目の第2のフェーズの処理で求めら
れたデータが、上記読み出しによって空になった横方向
の領域に順次書き込まれる。すると、最終的には、中間
バッファメモリの全ての領域に、2回目の第2のフェー
ズの処理で求められたデータが記憶される。この後は、
再び図13(a)に示す処理が行われる。
【0115】以上のように、アドレッシングの方向を交
互に切り換えてデータの読み書きを行うようにすれば、
データを読み出して空きになった領域を有効に活用し
て、1つの中間バッファメモリを第2のフェーズ用と第
4のフェーズ用とで共用することができ、中間バッファ
メモリを1ページ分だけ用意すれば済むようになる。
【0116】第7番目の例は、図5に示した第2番目の
例を応用した例である。図5に示したように複数のDF
T装置を用いて処理を並列化させた場合には、中間バッ
ファメモリ23へのアクセスが非常に多くなる。そこ
で、この第7番目の例は、上記中間バッファメモリ23
を複数のメモリに分割して用意するとともに、クロスバ
スイッチなどのデータ振り分け装置を用いることによ
り、メモリアクセス時における並列動作性を高めること
ができるようにしたものである。
【0117】図14は、この第7番目の例を実現するた
めの装置の構成を示す図である。なお、この図14に示
す装置は、図5に示した装置を変形したものであり、図
5中に示した周期n1 、n2 の値をそれぞれ4とし、n
1 長DFT処理を行う装置の数l1 、n2 長DFT処理
を行う装置の数l2 をそれぞれ4個とした場合について
示したものである。
【0118】すなわち、本装置は、第2のフェーズの処
理を行う4個の4点フーリエ変換装置51a,51b,
51c,51dと、データ振り分け装置52と、並列動
作可能な4個の中間バッファメモリ53a,53b,5
3c,53dと、第4のフェーズの処理を行う4個の4
点フーリエ変換装置54a,54b,54c,54dと
により構成される。なお、ここでは、説明の簡略化のた
め、回転演算装置は図示を省略している。
【0119】次に、上記のように構成した装置の動作
を、図15に示す中間データの配置図を参照しながら説
明する。本装置では、第2のフェーズで縦方向に4点フ
ーリエ変換を行い、第4のフェーズで横方向に4点フー
リエ変換を行うことにより、第1〜第16ワード(図1
5に丸付の数字で示している)の16点周波数解析を実
行する。
【0120】このとき、上述した第2のフェーズの処理
を行う4個の4点フーリエ変換装置51a,51b,5
1c,51dは、それぞれ図15の縦方向に対するデー
タを用いてフーリエ変換を同時に行う。これにより、第
1サイクルでは、第1、第2、第3、第4ワードについ
てフーリエ変換されたデータが同時に得られる。
【0121】このようにして同時に得られた4個のデー
タは、データ振り分け装置52により4個の中間バッフ
ァメモリ53a,53b,53c,53dに1ワードず
つ振り分けられて記憶される。ここで、各ワードのデー
タが記憶される中間バッファメモリ53a,53b,5
3c,53dの種類を、それぞれA〜Dの符号を付して
示した。
【0122】通常、4個のデータを1個の中間バッファ
メモリに書き込むためには、4サイクル必要であるが、
本実施例では、4個のデータを4個の中間バッファメモ
リ53a,53b,53c,53dに振り分けて書き込
むようにしているので、1サイクルで書き込みを行うこ
とができる。
【0123】また、第2サイクル〜第4サイクルの各サ
イクルで同時にフーリエ変換されたデータについても同
様に、データ振り分け装置52により4個の中間バッフ
ァメモリ53a,53b,53c,53dに1ワードず
つ振り分けられて記憶される。このとき、同じフーリエ
変換装置で変換されたデータが同じ中間バッファメモリ
内に記憶されないように振り分けが行われる。
【0124】以上のような書き込み動作により、4個の
中間バッファメモリ53a,53b,53c,53dに
は、図15に示すような関係で各ワードのデータが記憶
されることになる。すなわち、第1の中間バッファメモ
リ53aには、第1、第6、第11、第16ワードのデ
ータが記憶され、第2の中間バッファメモリ53bに
は、第5、第10、第15、第4ワードのデータが記憶
される。
【0125】また、第3の中間バッファメモリ53cに
は、第9、第14、第3、第8ワードのデータが記憶さ
れ、第4の中間バッファメモリ53dには、第13、第
2、第7、第12ワードのデータが記憶される。
【0126】次に、第4のフェーズの処理を行う際に
は、上述した第4のフェーズの処理を行う4個の4点フ
ーリエ変換装置54a,54b,54c,54dは、そ
れぞれ図15の横方向に対するデータを用いてフーリエ
変換を同時に行う。すなわち、第1サイクルでは、上記
4個の4点フーリエ変換装置54a,54b,54c,
54dは、それぞれ第1、第5、第9、第13ワードの
データを読み出してフーリエ変換を同時に行う。
【0127】この場合、図15から明らかなように、各
4点フーリエ変換装置54a,54b,54c,54d
で同時に使用する4個のデータは、上記4個の中間バッ
ファメモリ53a,53b,53c,53dに1ワード
ずつ分散して記憶されている。したがって、1個の中間
バッファメモリに上記4個のデータが全て記憶されてい
たとしたなら読み出しに4サイクルかかるところを、本
実施例では、1サイクルで読み出すことができる。
【0128】以上説明したように、図14に示した第7
番目の例の装置によれば、複数のフーリエ変換装置を用
いてDFT処理を並列化動作させた場合に、中間バッフ
ァメモリへのアクセスも効率よく並列化させることがで
き、装置全体の並列動作性を向上させることができる。
なお、参考のために、上述したデータの読み書きの手順
を、図16に示しておく。
【0129】
【発明の効果】本発明は上述したように、請求項1〜3
に記載の発明によれば、周期N(=n1 ×n2 )の時間
成分の信号の周波数解析を、上記周期Nよりも小さな周
期である横方向に対する周期n1 のフーリエ変換と縦方
向に対する周期n2 のフーリエ変換との組み合わせによ
って行うようにしたので、周期Nの信号を周期Nのフー
リエ変換によって一度に周波数変換するようになされた
従来のDFTに比べて演算量を少なくすることができる
ようになり、これにより、フーリエ変換の処理速度を高
速にすることができる。
【0130】請求項4に記載の発明によれば、n2 長フ
ーリエ変換手段を複数個設け、n1回のn2 長フーリエ
変換処理を上記複数個のn2 長フーリエ変換手段を用い
て並列に行うようにしたので、複数のn2 長フーリエ変
換処理を同時に行うことができるようになる。
【0131】請求項5に記載の発明によれば、n1 長フ
ーリエ変換手段を複数個設け、n2回のn1 長フーリエ
変換処理を上記複数個のn1 長フーリエ変換手段を用い
て並列に行うようにしたので、複数のn1 長フーリエ変
換処理を同時に行うことができるようになる。したがっ
て、それぞれのフーリエ変換処理を1回ずつ順番に行う
場合に比べて処理時間を短くすることができるようにな
る。
【0132】請求項6に記載の発明によれば、小さな周
期のフーリエ変換装置を複数個用いてそれらを回転演算
装置を介してツリー構造となるように接続することによ
ってより大きな周期のフーリエ変換装置を構成したの
で、請求項1〜3に記載の発明と同様に、大きな周期の
フーリエ変換を一度に行う場合の演算量に比べて演算量
を格段に少なくすることができ、処理を高速化すること
ができる。しかも、上記小さな周期として任意の周期を
選択することが可能であるので、各フーリエ変換の結果
を一時記憶しておくための中間バッファメモリの数を従
来のFFTにおけるバタフライ演算を並列化動作させる
場合に比べて少なくすることができるとともに、個々の
中間バッファメモリの容量を小さくすることができるよ
うになり、全体としての中間バッファメモリの容量を格
段に小さくすることができる。
【0133】請求項7に記載の発明によれば、与える係
数を変えることにより窓かけ演算および回転演算の何れ
かを行う窓かけ回転演算装置と、この窓かけ回転演算装
置の出力結果に対してフーリエ変換を行う小さな周期の
フーリエ変換装置とを設け、このフーリエ変換装置の出
力結果を上記窓かけ回転演算装置に供給して上記窓かけ
回転演算装置および上記フーリエ変換装置による処理を
時分割で繰り返して行うようにしたので、請求項1〜3
に記載の発明と同様に、小さな周期のフーリエ変換の組
み合わせによってより大きな周期のフーリエ変換を実施
することができるようになり、大きな周期のフーリエ変
換を一度に行う場合の演算量に比べて演算量を格段に少
なくすることができる。しかも、請求項6に記載の発明
に比べて少ない数のフーリエ変換装置と回転演算装置と
によってフーリエ変換を行うことができるので、装置の
規模が大きくならないようにすることができる。
【0134】請求項8に記載の発明によれば、高速ペー
ジモードを持つメモリ上において所定ワード分の中間バ
ッファメモリを縦横のブロック状に順次配置するように
して中間バッファメモリを構成したので、ブロック状に
配置された中間バッファメモリの縦方向に対してデータ
の読み書きを行うときには高速ページモードを使って高
速に読み書きをすることが可能となり、縦方向に対して
も横方向に対してもメモリアクセスを高速に行うことが
できるようになる。したがって、演算量の削減によって
フーリエ変換の処理速度を速くすることができるだけで
なく、メモリアクセス時間の削減によっても処理速度を
速くすることができ、より高速にフーリエ変換を行うこ
とができるようになる。
【0135】請求項9に記載の発明によれば、n2 長フ
ーリエ変換手段によりフーリエ変換されたデータを中間
バッファメモリに書き込む際、およびn1 長フーリエ変
換手段において中間バッファメモリに記憶されたデータ
を読み出す際に、データの読み書きの方向を縦と横とで
交互に変換するようにし、n1 長フーリエ変換手段で使
用するためにデータが読み出されることによって順次空
きにされた領域に、n2 長フーリエ変換手段でフーリエ
変換されたデータを順次記憶していくようにしたので、
データの読み出しによって空にされた領域を有効に使っ
て、1つの中間バッファメモリをn2 長フーリエ変換用
とn1 長フーリエ変換用とで共用するようにすることが
でき、1ページ分の中間バッファメモリを用意するだけ
でn2 長フーリエ変換処理とn1 長フーリエ変換処理と
を並列に動作させることができるようになる。
【0136】請求項10に記載の発明によれば、複数個
のn2 長フーリエ変換手段および複数個のn1 長フーリ
エ変換手段と同じ数だけ中間バッファメモリを設けると
ともに、複数個のn2 長フーリエ変換手段により同時に
求められる複数個のデータを上記複数個の中間バッファ
メモリに1個ずつ振り分けて記憶するように構成したの
で、複数のフーリエ変換手段により同時に求められた複
数のデータを複数のバッファメモリに同時に記憶するよ
うにすることができる。したがって、n2 長フーリエ変
換手段とn1 長フーリエ変換手段とをそれぞれ複数個ず
つ設けて各処理を並列に行うようにしたにもかかわらず
メモリアクセスを並列に行うことができないという不都
合をなくすことができ、処理の並列動作性を高めること
ができる。
【0137】請求項11に記載の発明によれば、上記デ
ータの振り分けの際に、同じn2 長フーリエ変換手段に
より求められたデータが同じ中間バッファメモリ内に記
憶されることがないようにして順次得られるデータを振
り分けるようにしたので、複数のn1 長フーリエ変換手
段で同時に使用するデータを複数のバッファメモリに1
個ずつ分散して記憶するようにすることができ、それら
のデータの読み出しを同時に行うことができるようにな
る。したがって、処理の並列動作性を更に高めることが
できる。
【図面の簡単な説明】
【図1】本発明の一実施例であるフーリエ変換装置の構
成を示すブロック図である。
【図2】図1のフーリエ変換装置によって行われる第1
〜第5のフェーズの処理内容を説明するための図であ
る。
【図3】本実施例のフーリエ変換装置をツリー構造にし
た場合に必要な中間バッファメモリの容量を、FFTの
各バタフライ演算を並列化動作させた場合に必要な中間
バッファメモリの容量と比較するための図である。
【図4】第1番目の応用例による装置の構成を示す図で
ある。
【図5】第2番目の応用例による装置の構成を示す図で
ある。
【図6】第3番目の応用例による装置の構成を示す図で
ある。
【図7】第4番目の応用例による装置の構成を示す図で
ある。
【図8】図7に示した装置によって行われる時分割処理
の様子を説明するための図である。
【図9】第5番目の応用例で使用される高速ページモー
ドを持つ中間バッファメモリのアクセスタイムの様子を
示すタイムチャートである。
【図10】中間バッファメモリをストライプ状に配置し
た様子を示す図である。
【図11】中間バッファメモリをブロック状に配置した
様子を示す図である。
【図12】2ページ分の中間バッファメモリを用いてデ
ータの読み書きを行う様子を説明するための図である。
【図13】第6番目の応用例によるデータの読み書きの
様子を説明するための図であり、1ページ分の中間バッ
ファメモリを用いてデータの読み書きを行う様子を説明
するための図である。
【図14】第7番目の応用例による装置の構成を示す図
である。
【図15】複数の中間バッファメモリとそれに記憶され
るデータとの関係を説明するための図である。
【図16】第7番目の応用例によるデータの読み書きの
手順を示す図である。
【符号の説明】
1 第1の並べ替え手段 2 n2 長フーリエ変換手段 3 回転演算手段 4 中間バッファメモリ 5 n1 長フーリエ変換手段 6 第2の並べ替え手段

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 横方向に周期n1 、縦方向に周期n2
    2次元状に配置された周期N(=n1 ×n2 )の時間成
    分の信号に対して、縦方向に対する周期n2のフーリエ
    変換をn1 回行うn2 長フーリエ変換手段と、 上記n2 長フーリエ変換手段による変換結果を一時記憶
    するための中間バッファメモリと、 上記中間バッファメモリに記憶されたデータに対して回
    転演算を施す回転演算手段と、 上記回転演算手段による演算結果に対して、横方向に対
    する周期n1 のフーリエ変換をn2 回行うn1 長フーリ
    エ変換手段とを具備することを特徴とするフーリエ変換
    装置。
  2. 【請求項2】 周期Nの時間成分の信号を周波数解析す
    ることにより周波数成分の信号に変換するためのN長フ
    ーリエ変換装置において、 上記周期Nの時間成分の信号を横方向に周期n1 、縦方
    向に周期n2 (N=n1 ×n2 )の2次元状に配置する
    並べ替え手段と、 上記並べ替え手段により配置された2次元状の時間成分
    の信号に対して、縦方向に対する周期n2 のフーリエ変
    換をn1 回行うn2 長フーリエ変換手段と、 上記n2 長フーリエ変換手段による変換結果を一時記憶
    するための中間バッファメモリと、 上記中間バッファメモリに記憶されたデータに対して回
    転演算を施す回転演算手段と、 上記回転演算手段による演算結果に対して、横方向に対
    する周期n1 のフーリエ変換をn2 回行うn1 長フーリ
    エ変換手段とを具備することを特徴とするフーリエ変換
    装置。
  3. 【請求項3】 上記n1 長フーリエ変換手段による変換
    結果を1次元状のデータに再配列する第2の並べ替え手
    段を更に具備することを特徴とする請求項1または2に
    記載のフーリエ変換装置。
  4. 【請求項4】 上記n2 長フーリエ変換手段を複数個設
    け、上記n1 回のn2 長フーリエ変換処理を上記複数個
    のn2 長フーリエ変換手段を用いて並列に行うようにし
    たことを特徴とする請求項1〜3の何れか1項に記載の
    フーリエ変換装置。
  5. 【請求項5】 上記n1 長フーリエ変換手段を複数個設
    け、上記n2 回のn1 長フーリエ変換処理を上記複数個
    のn1 長フーリエ変換手段を用いて並列に行うようにし
    たことを特徴とする請求項1〜3の何れか1項に記載の
    フーリエ変換装置。
  6. 【請求項6】 請求項1に記載のフーリエ変換装置を2
    個と、上記2個のフーリエ変換装置の間に直列に設けら
    れる回転演算装置とを組み合わせてN2 長フーリエ変換
    装置を構成し、さらに、上記N2 長フーリエ変換装置と
    請求項1に記載のフーリエ変換装置とそれらの間に直列
    に設けられる回転演算装置とを組み合わせてN3 長フー
    リエ変換装置を構成するというように、請求項1に記載
    のフーリエ変換装置を複数個用いてそれらを上記回転演
    算装置を介してツリー構造となるように接続したことを
    特徴とするフーリエ変換装置。
  7. 【請求項7】 請求項1に記載のフーリエ変換装置と、 上記フーリエ変換装置の前段に設けられ、与える係数を
    変えることにより窓かけ演算および回転演算の何れかを
    行う窓かけ回転演算装置と、 上記フーリエ変換装置の出力結果を一時記憶するための
    中間バッファメモリとを具備し、 上記中間バッファメモリの記憶内容を上記窓かけ回転演
    算装置に供給して上記窓かけ回転演算装置および上記フ
    ーリエ変換装置による処理を時分割で繰り返して行うよ
    うにしたことを特徴とするフーリエ変換装置。
  8. 【請求項8】 上記中間バッファメモリを高速ページモ
    ードを持つメモリを用いて構成したフーリエ変換装置で
    あって、 上記高速ページモードを持つメモリ上において所定ワー
    ド分の中間バッファメモリを縦横のブロック状に順次配
    置するようにしたことを特徴とする請求項1〜7の何れ
    か1項に記載のフーリエ変換装置。
  9. 【請求項9】 上記n2 長フーリエ変換手段と上記n1
    長フーリエ変換手段とを並列に動作させるようにしたフ
    ーリエ変換装置において、 上記n2 長フーリエ変換手段によりフーリエ変換された
    データを上記中間バッファメモリに記憶する際に、最初
    にn1 回のフーリエ変換が完了するまでは、上記n1
    フーリエ変換手段で使用するために読み出されて空きに
    された横方向の領域に上記データを書き込み、次にn1
    回のフーリエ変換が完了するまでは、同様にして空にさ
    れた縦方向の領域に上記データを書き込むというよう
    に、データの書き込み方向を縦と横とで交互に変換する
    ようにするとともに、 上記n1 長フーリエ変換手段において上記中間バッファ
    メモリに記憶されたデータを使用する際に、最初にn2
    回のフーリエ変換が完了するまでは横方向に上記データ
    を読み出し、次にn2 回のフーリエ変換が完了するまで
    は縦方向に上記データを読み出すというようにデータの
    読み出し方向を縦と横とで交互に変換するようにするア
    ドレッシング手段を設けたことを特徴とする請求項1〜
    7の何れか1項に記載のフーリエ変換装置。
  10. 【請求項10】 上記n2 長フーリエ変換手段と上記n
    1 長フーリエ変換手段とをそれぞれ複数個ずつ設け、上
    記n1 回のn2 長フーリエ変換処理を上記複数個のn2
    長フーリエ変換手段を用いて並列に行うとともに、上記
    2 回のn1長フーリエ変換処理を上記複数個のn1
    フーリエ変換手段を用いて並列に行うようにしたフーリ
    エ変換装置において、 上記中間バッファメモリを上記複数個のn2 長フーリエ
    変換手段および上記複数個のn1 長フーリエ変換手段と
    同じ数だけ設けるとともに、 上記複数個のn2 長フーリエ変換手段により同時に求め
    られた複数個のデータを上記複数個の中間バッファメモ
    リに1個ずつ振り分けて記憶するようにするデータ振り
    分け手段を設けたことを特徴とする請求項1〜3の何れ
    か1項に記載のフーリエ変換装置。
  11. 【請求項11】 上記データ振り分け手段は、同じn2
    長フーリエ変換手段により求められたデータが同じ中間
    バッファメモリ内に記憶されることがないように順次得
    られるデータを振り分けて記憶するようにすることを特
    徴とする請求項10に記載のフーリエ変換装置。
JP20381795A 1995-07-18 1995-07-18 フーリエ変換装置 Expired - Lifetime JP3839504B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20381795A JP3839504B2 (ja) 1995-07-18 1995-07-18 フーリエ変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20381795A JP3839504B2 (ja) 1995-07-18 1995-07-18 フーリエ変換装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2006033084A Division JP3950466B2 (ja) 2006-02-09 2006-02-09 フーリエ変換装置

Publications (2)

Publication Number Publication Date
JPH0934876A true JPH0934876A (ja) 1997-02-07
JP3839504B2 JP3839504B2 (ja) 2006-11-01

Family

ID=16480216

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20381795A Expired - Lifetime JP3839504B2 (ja) 1995-07-18 1995-07-18 フーリエ変換装置

Country Status (1)

Country Link
JP (1) JP3839504B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002069182A1 (fr) * 2001-02-28 2002-09-06 Fujitsu Limited Dispositif a transformee de fourrier

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002069182A1 (fr) * 2001-02-28 2002-09-06 Fujitsu Limited Dispositif a transformee de fourrier
US7461114B2 (en) 2001-02-28 2008-12-02 Fujitsu Limited Fourier transform apparatus

Also Published As

Publication number Publication date
JP3839504B2 (ja) 2006-11-01

Similar Documents

Publication Publication Date Title
US7464127B2 (en) Fast fourier transform apparatus
US20140149480A1 (en) System, method, and computer program product for transposing a matrix
JP3749022B2 (ja) 高速フーリエ変換を用いて短い待ち時間でアレイ処理を行う並列システム
US5293330A (en) Pipeline processor for mixed-size FFTs
US4821224A (en) Method and apparatus for processing multi-dimensional data to obtain a Fourier transform
US5313413A (en) Apparatus and method for preventing I/O bandwidth limitations in fast fourier transform processors
JP2002518730A (ja) 単一命令複数データシステムに使用するレジスタにアクセスするレジスタおよびアクセス方法
JP2690932B2 (ja) ディジタル信号処理プロセッサおよびディシタル信号処理プロセッサシステム
JPH0795320B2 (ja) 大容量高速フーリエ変換装置
JPH11203272A (ja) 高速フーリエ変換処理装置、高速フーリエ変換処理システムおよび高速フーリエ変換処理方法
US20050289207A1 (en) Fast fourier transform processor, dynamic scaling method and fast Fourier transform with radix-8 algorithm
US8209485B2 (en) Digital signal processing apparatus
US6728742B1 (en) Data storage patterns for fast fourier transforms
JP3950466B2 (ja) フーリエ変換装置
EP2144173A1 (en) Hardware architecture to compute different sizes of DFT
EP2144174A1 (en) Parallelized hardware architecture to compute different sizes of DFT
JPH0934876A (ja) フーリエ変換装置
JPH07271744A (ja) 並列計算機
US6438568B1 (en) Method and apparatus for optimizing conversion of input data to output data
US6772183B1 (en) Device for converting input data to output data using plural converters
JP3709291B2 (ja) 高速複素フーリエ変換方法及び装置
US8572148B1 (en) Data reorganizer for fourier transformation of parallel data streams
CN114116012B (zh) 基于混洗操作的fft码位反序算法向量化实现方法及装置
Du Pont et al. Hardware Acceleration of the Prime-Factor and Rader NTT for BGV Fully Homomorphic Encryption
JP2580501B2 (ja) 並列デ−タ処理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050809

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051109

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060725

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060803

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100811

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130811

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term