[go: up one dir, main page]

JP2000040080A - 高速フーリエ変換回路 - Google Patents

高速フーリエ変換回路

Info

Publication number
JP2000040080A
JP2000040080A JP10205975A JP20597598A JP2000040080A JP 2000040080 A JP2000040080 A JP 2000040080A JP 10205975 A JP10205975 A JP 10205975A JP 20597598 A JP20597598 A JP 20597598A JP 2000040080 A JP2000040080 A JP 2000040080A
Authority
JP
Japan
Prior art keywords
input
data
processing
input data
output
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.)
Withdrawn
Application number
JP10205975A
Other languages
English (en)
Inventor
Hideo Mizutani
秀夫 水谷
Kenichi Tsuchida
健一 土田
Shigeki Moriyama
繁樹 森山
Toru Kuroda
徹 黒田
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.)
Oki Electric Industry Co Ltd
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Oki Electric Industry Co Ltd
Japan Broadcasting 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 Hoso Kyokai NHK, Oki Electric Industry Co Ltd, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP10205975A priority Critical patent/JP2000040080A/ja
Publication of JP2000040080A publication Critical patent/JP2000040080A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 通常のサンプル数の1/2または1/4でF
FT処理を行う場合に、作業用メモリをデータ入力と演
算処置等で並行使用し、処理効率を向上させる。 【解決手段】 複素数入力データII,IQがマルチプ
レクサ41を介して作業用メモリ42,43のセグメン
ト42a,43aに入力されている間、セグメント42
b,43b内のデータはマルチプレクサ44,41を介
してデータパス70A,70Bに接続されてFFT演算
処理が施され、演算結果はレジスタ91,92を介して
出力データOI,OQとして出力される。セグメント4
2b,43b内のデータの演算処理が終了すると、マル
チプレクサ41,44が切り替えられ、セグメント42
a,43aに入力さた入力データII,IQの演算処理
が行われる。一方、セグメント42b,43bには、次
の周期の入力データII,IQが入力される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、周期的に与えられ
る離散的な時系列信号の周期性を利用して周波数成分に
変換する高速フーリエ変換(以下、FFTという)回
路、特に入力信号のサンプル点数が可変のFFT回路、
または逆に離散的な周波数成分を時系列信号に変換する
逆変換回路に関するものである。
【0002】
【従来の技術】図2は、従来のFFT回路の一例を示す
構成図である。このFFT回路は、時系列的に与えられ
る複素数入力データII,IQを、それぞれ一旦保持す
るためのレジスタ11,12を有している。レジスタ1
1,12の出力側は、ぞれぞれセレクタ13,14の第
1の入力側に接続されている。セレクタ13,14の出
力側は、作業用メモリ15のデータ入力端子に接続され
ている。作業用メモリ15は、入力データII,IQ
や、演算途中の中間結果を一時的に格納するためのもの
である。作業用メモリ15のデータ出力端子は、FFT
演算処理を行うデータパス16,17の入力側に接続さ
れている。データパス16,17には、またFFT演算
処理で用いる係数が予め記憶されている係数用メモリ1
8の出力側が接続されている。
【0003】データパス16,17は、作業用メモリ1
5及び係数用メモリ18から与えられたデータを、FF
Tアルゴリズムに従って計算するものである。データパ
ス16,17の出力側は、それぞれセレクタ13,14
の第2の入力側に接続されるとともに、レジスタ19,
20の入力側に接続されている。レジスタ19,20
は、データパス16,17による繰り返し演算によって
最終的に得られた複素数出力データOI,OQを出力す
るために保持するものである。
【0004】更に、FFT回路は、動作の基準となるク
ロック信号を生成するクロック生成部21と、このクロ
ック信号に基づいて各部の動作シーケンスを制御するシ
ーケンス制御部22と、アドレス生成部23とを備えて
いる。アドレス生成部23は、動作シーケンスに応じて
作業用メモリ15に対する読み書きアドレスと、係数用
メモリ18に対する読み出しアドレスとを生成するもの
である。このようなFFT回路において、例えばFFT
処理の1周期のサンプル点数を1024として処理する
場合、まず、セレクタ13,14の第1の入力側が選択
される。そして、レジスタ11,12を介して離散的に
入力された複素数入力データII,IQは、サンプル点
数(即ち、1024点)だけ作業用メモリ15に順次格
納される。1024点の複素数入力データII,IQが
作業用メモリ15に格納された後、セレクタ13,14
は第2の入力側に切り替えられる。
【0005】次に、作業用メモリ15及び係数用メモリ
18から、FFTアルゴリズムに基づいて所定のアドレ
スに格納されたデータが読み出され、データパス16,
17の入力側に与えられる。これにより、データパス1
6,17の出力側には、読み出されたデータに応じた中
間結果が出力される。データパス16,17から出力さ
れた中間結果は、セレクタ13,14を介して再び作業
用メモリ15の同一アドレスに書き込まれる。作業用メ
モリ15及び係数用メモリ18に対するアドレスは順次
シフトされ、これらの作業用メモリ15及び係数用メモ
リ18のデータがデータパス16,17によって演算さ
れてFFT処理が行われる。データパス16,17によ
るFFT処理の中間結果は、逐次更新されて作業用メモ
リ15に書き込まれる。そして、最終的な演算結果が得
られた時点で、データパス16,17の出力データが、
レジスタ19,20に格納され、複素数出力データO
I,OQとして出力される。
【0006】
【発明が解決しようとする課題】しかしながら、従来の
FFT回路では、次のような課題があった。例えば、F
FT処理の1周期のサンプル点数を1024の1/2の
512として処理する場合、作業用メモリ15を半分し
か使用せず、残りの半分は未使用の状態となり、作業用
メモリ15の有効利用が図られていない。このため、複
素数入力データII,IQの格納領域と、中間結果の格
納領域とが同一の領域を交互に使用することとなり、F
FT処理を複数周期にわたって連続して行う場合に、デ
ータ入力と演算処理等とを並行して行うことができず、
処理効率の向上が困難であるという課題があった。本発
明は、前記従来技術が持っていた課題を解決し、サンプ
ル点数を1/2等に減少させた時に、データ入力と演算
処理等との並行処理を行うことにより、処理効率の向上
が可能なFFT回路を提供するものである。
【0007】
【課題を解決するための手段】前記課題を解決するため
に、本発明の内の第1の発明は、一定周期でサンプリン
グされた離散的な入力データを入力する入力手段と、前
記入力手段から逐次入力されたN(但し、Nは2の冪乗
の値)サンプル分の前記入力データを処理するための記
憶容量を有する作業用記憶手段と、前記入力手段から入
力された入力データの周波数成分を算出するための捻り
係数を予め記憶した係数用記憶手段と、前記捻り係数及
び前記作業用記憶手段に格納された前記入力データに基
づいて中間結果を算出して該作業用記憶手段に再格納す
る演算処理を、所定の手順に従って繰り返えすことによ
り、該入力データの周波数成分を算出する周波数分析手
段とを備えたFFT回路において、作業用記憶手段を、
それぞれN/2サンプル分の前記入力データを処理する
ための記憶領域を有する2個のセグメントで構成してい
る。
【0008】更に、前記2個のセグメントを、それぞれ
前記入力手段から前記入力データを格納する入力処理、
及び前記入力処理によってそのセグメントに格納された
前記入力データに基づいて前記周波数分析手段によって
周波数成分を算出して出力する算出処理に、順次並行し
て使用するための入力制御部及び出力制御部を設けてい
る。第1の発明によれば、以上のようにFFT回路を構
成したので、次のような作用が行われる。入力手段から
作業用記憶手段の一方のセグメントにN/2サンプル分
の入力データが入力されると、このセグメントに入力さ
れた入力データは、係数用記憶手段に記憶された捻り係
数とともに周波数分析手段に与えられて周波数成分の算
出処理が行われる。このセグメントの算出処理が行われ
ている間には、並行して他のセグメントに対するN/2
サンプル分の入力データの入力処理が行われる。
【0009】第2の発明は、第1の発明と同様のFFT
回路において、作業用記憶手段を、それぞれN/4サン
プル分の前記入力データを処理するための記憶領域を有
する4個のセグメントで構成している。更に、前記4個
のセグメントを、それぞれ前記入力手段から前記入力デ
ータを格納する入力処理、前記入力処理によってそのセ
グメントに格納された前記入力データに基づいて前記周
波数分析手段によって周波数成分を計算する計算処理、
及び前記計算処理による計算結果を出力する出力処理
に、順次並行して使用するための入力制御部及び出力制
御部を設けている。第2の発明によれば、次のような作
用が行われる。入力手段から作業用記憶手段の4個のセ
グメントに、順次N/4サンプル分の入力データが入力
される。入力処理の完了したセグメントの入力データ
は、係数用記憶手段に記憶された捻り係数とともに周波
数分析手段に与えられて周波数成分の計算処理が行われ
る。更に、計算処理の完了したセグメントに格納された
計算結果は、順次読み出されて出力される。4個のセグ
メントにおけるこれらの入力処理、計算処理、及び出力
処理は、それぞれ入力制御部及び出力制御部の制御に基
づいて、順次並行して行われる。
【0010】第3の発明は、第1及び第2の発明のFF
T回路において、前記周波数分析手段における演算処理
毎に、その演算処理で使用されるデータの指数を共通に
して該周波数分析手段に与えるブロック浮動小数点処理
手段を設けている。第3の発明によれば、次のような作
用が行われる。入力手段から入力された各入力データ
は、ブロック浮動小数点処理手段による演算処理におい
て、その演算処理で使用されるデータの指数が共通にさ
れて周波数分析手段に与えられる。
【0011】
【発明の実施の形態】第1の実施形態 図1は、本発明の第1の実施形態を示すFFT回路の構
成図である。このFFT回路は、実数部及び虚数部で構
成される時系列的な複素数入力データII,IQをそれ
ぞれ一旦保持するための入力手段(例えば、レジスタ)
31,32と、演算の中間結果等を格納するための作業
用記憶手段(例えば、データ記憶部)40を有してい
る。データ記憶部40は、入力側の入力制御部(例え
ば、マルチプレクサ)41、2つの作業用メモリ42,
43、及び出力側の出力制御部(例えば、マルチプレク
サ)44で構成されている。レジスタ31,32の出力
側は、マルチプレクサ41の入力側に接続されており、
このマルチプレクサ41の出力側には、作業用メモリ4
2,43のデータ入力端子が接続されている。マルチプ
レクサ41は、レジスタ31,32から与えられる入力
データや演算の中間結果を、所定の作業用メモリ42,
43に書き込むために切り替えて接続する機能を有する
ものである。また、作業用メモリ42,43は1周期の
サンプル点数N(例えば、N=1024=210)に対応
する記憶領域を有しており、それぞれ入力データII,
IQや、演算途中の複素数データの実数部及び虚数部を
一時的に格納するためのものである。作業用メモリ4
2,43のデータ出力端子は、マルチプレクサ44の入
力側に接続されている。
【0012】マルチプレクサ44は、作業用メモリ4
2,43から読み出されたデータを、FFT演算処理ま
たは最終結果出力のために切り替えて接続する機能を有
するものである。このFFT回路は、係数用記憶手段
(例えば、係数用メモリ)50、及びブロック浮動小数
点処理手段(例えば、ブロック浮動小数点処理部)60
を有している。係数用メモリ50は、FFT演算処理で
用いる正弦関数及び余弦関数に基づく捻り係数W1i,
W2i,W3i,W4i(但し、i=1〜256)を、
予め記憶した読み出し専用のメモリである。ブロック浮
動小数点処理部60は、各入力データに対して共通な指
数を検出処理するものである。即ち、データが入力され
る毎に、それらの数値の大小を比較し、既に作業用メモ
リ42,43に格納されている値よりも大きな数値が入
力されたときには、新しい方の数値に書き換えるように
なっている。また、作業用メモリ42,43に格納され
ている値よりも小さな数値が入力されたときには、その
ままの値を残すことにより、最終的に最大値を求めるよ
うになっている。そして、その最大値の指数をそのグル
ープに共通な指数として、計算処理時のシフトデータS
ETとして用いるものである。
【0013】マルチプレクサ44、係数用メモリ50、
及び浮動小数点処理部60の出力側は、周波数分析手段
(例えば、データパス)70A,70Bの入力側に接続
されている。データパス70A,70Bは、データ記憶
部40及び係数用メモリ50から与えられた捻り係数W
1i〜W4iと、浮動小数点処理部60から与えられた
シフトデータSFTを用い、FFTアルゴリズムに従っ
て繰り返し演算処理を行うことによって入力データの周
波数成分を算出するものである。データパス70A,7
0Bの出力側は、データ記憶部40のマルチプレクサ4
1の入力側に接続されている。マルチプレクサ44の出
力側には、更に、データパス70A,70Bによる繰り
返し演算によって最終的に得られた複素数出力データO
I,OQを出力するために保持するレジスタ91,92
が接続されている。また、このFFT回路は、動作の基
準となるクロック信号CLKを生成するクロック生成部
93と、このクロック信号CLKに基づいて各部の動作
シーケンスを制御するシーケンス制御部94と、動作シ
ーケンスに応じてデータ記憶部40及びブロック浮動小
数点処理部60に対する読み書きアドレス、並びに係数
用メモリ50に対する読み出しアドレスを生成するアド
レス生成部95とを備えている。
【0014】図3は、図1中のデータ記憶部40の構成
図である。このデータ記憶部40のマルチプレクサ41
は、4個のセレクタ41a,41b,41c,41dで
構成されている。作業用メモリ42,43は、それぞれ
2つに分けられたサンプル点数N/2(=512)に対
応するセグメント42a,42b、及びセグメント43
a,43bの記憶領域を有している。また、マルチプレ
クサ44は、2つのセレクタ44a,44bで構成され
ている。セレクタ41aの第1の入力側と、セレクタ4
1bの第3の入力側には、レジスタ31からのデータI
Ik(但し、k=1〜512)が与えられるようになっ
ている。同様に、セレクタ41cの第1の入力側とセレ
クタ41dの第2の入力側には、レジスタ32からのデ
ータIQkが与えられるようになっている。
【0015】また、セレクタ41aの第3の入力側、セ
レクタ41bの第2の入力側、セレクタ41cの第3の
入力側、及びセレクタ41dの第3の入力側には、デー
タパス70Aからのデータai,ci(但し、i=1〜
128)が与えられる。セレクタ41aの第2の入力
側、セレクタ41bの第1の入力側、セレクタ41cの
第2の入力側、及びセレクタ41dの第1の入力側に
は、データパス70Bからのデータbi,diが与えら
れるようになっている。そして、セレクタ41a,41
bの出力側は、作業用メモリ42のセグメント42a,
42bのデータ入力端子にそれぞれ接続されている。作
業用メモリ42のセグメント42a,42bのデータ出
力端子は、セレクタ44aの第1及び第2の入力側にそ
れぞれ接続され、このセレクタ44aの出力側から複素
数データAi〜Diの実数部が出力されるようになって
いる。一方、セレクタ41c,41dの出力側は、作業
用メモリ43のセグメント43a,43bのデータ入力
端子にそれぞれ接続されている。作業用メモリ43のセ
グメント43a,43bのデータ出力端子は、セレクタ
44bの第1及び第2の入力側にそれぞれ接続され、こ
のセレクタ44bの出力側から複素数データAi〜Di
の虚数部が出力されるようになっている。
【0016】図4は、図1中のデータパス70A,70
Bの構成図である。データパス70Aは、データ記憶部
40から出力されたデータAi〜Diを演算のために一
旦保持するレジスタ71を有している。レジスタ71の
出力側には、シフタ72が接続されている。シフタ72
は、ブロック浮動小数点処理部60から与えられるシフ
トデータSFTに基づいて、レジスタ71に保持された
データAi〜Diを指定された桁数だけシフトするもの
である。シフタ72の出力側は、加算器73Aとセレク
タ74の第1の入力側に接続されている。加算器73A
の出力側は、セレクタ74の第2の入力側に接続され、
このセレクタ74の出力側がレジスタ75の入力側に接
続されている。レジスタ75の出力側は加減算器76の
入力側に接続され、この加減算器76の出力側がレジス
タ77,78の入力側に接続されている。
【0017】データパス70Aは、係数用メモリ50か
ら与えられる捻り係数W1i,W3iを演算のために、
それぞれ一旦保持するためのレジスタ79,80を有し
ている。そして、レジスタ77,79の出力側は乗算器
81の入力側に接続され、この乗算器81の出力側にレ
ジスタ82が接続されている。また、レジスタ78,8
0の出力側は乗算器83の入力側に接続され、この乗算
器83の出力側にレジスタ84が接続されている。レジ
スタ82,84の出力側は加減算器85に接続され、こ
の加減算器85の出力側に、レジスタ86が接続されて
いる。そして、レジスタ86に一旦格納された演算結果
が、データai,ciとして出力されるようになってい
る。データパス70Bの構成は、データパス70Aとほ
ぼ同様である。但し、データパス70Aにおける加算器
73Aに代えて、減算器73Bが設けられている。その
他の構成は、データパス70Aと同様であり、レジスタ
86に一旦格納された演算結果が、データbi,diと
して出力されるようになっている。
【0018】このようなデータパス70A,70Bは、
セレクタ74の切り替えにより、基数4及び基数2につ
いてのFFT演算処理が可能な機能を有している。即
ち、基数4のFFT演算処理を行う場合には、データパ
ス70A,70Bのレジスタ71に、データ記憶部40
から読み出された複素数データAi〜Diを格納する。
そして、データパス70Aのセレクタ74で加算器73
Aの出力側を、データパス70Bのセレクタ74で減算
器73Bの出力側をそれぞれ選択する。更に、データパ
ス70Aのレジスタ79,80には、係数用メモリ50
から読み出された捻り係数W1i,W3iをそれぞれ格
納する。一方、データパス70Bのレジスタ79,80
には、係数用メモリ50から読み出された捻り係数W2
i,W4iをそれぞれ格納する。
【0019】これにより、データパス70A,70Bの
出力側には、次の式(1)〜(4)に従って算出された
出力信号ai,ci、及び出力信号bi,diが、それ
ぞれ出力されるようになっている。 ai={(Ai+Ci)+(Bi+Di)}×W1i ・・・(1) ci={(Ai+Ci)−(Bi+Di)}×W3i ・・・(2) bi={(Ai−Ci)−j(Bi−Di)}×W2i ・・・(3) di={(Ai−Ci)+j(Bi−Di)}×W4i ・・・(4) 一方、基数2のFFT演算処理を行う場合には、データ
パス70A,70Bのレジスタ71に、データ記憶部4
0から読み出された複素数データAi〜Diを格納する
とともに、データパス70Aのセレクタ74で加算器7
3Aの入力側を、データパス70Bのセレクタ74で減
算器73Bの入力側を選択する。そして、データパス7
0Aのレジスタ79,80には、係数用メモリ50から
読み出された捻り係数W1i,W3iは、位相0゜に対
応する捻り係数W0(=1+j0)を交互に格納する。
一方、データパス70Bのレジスタ79,80には、係
数用メモリ50から読み出された捻り係数W2,W4
は、同様に捻り係数W0を交互に格納する。
【0020】これにより、データパス70Aの出力側に
は、前記式(1),(2)、または次の式(5),
(6)に従って算出された出力信号ai,biが交互に
出力されるようになっている。 ai=Ai+Bi ・・・(5) bi=Ai−Bi ・・・(6) また、データパス70Bの出力側には、前記式(3),
(4)、または次の式(7),(8)に従って算出され
た出力信号ci,diが交互に出力されるようになって
いる。 ci=Ci+Di ・・・(7) di=Ci−Di ・・・(8)
【0021】図5は、図1のFFT回路の動作シーケン
スを示す図である。次に、図3〜図5を参照しつつ、図
1のFFT回路におけるサンプル点数512での動作を
説明する。先ず、図5の周期T1において、図3のデー
タ記憶部40のマルチプレクサ41a〜41dは第1の
入力側に切り替えられる。これにより、セグメント42
aには、外部からの第1周期の複素数入力データの実数
部IIがレジスタ31を介して書き込まれる。また、セ
グメント43aには、外部からの第1周期の複素数入力
データの虚数部IQがレジスタ32を介して書き込まれ
る。
【0022】次に、周期T2において、マルチプレクサ
41a〜41dは第2、第3の入力側に切り替えられ、
また、マルチプレクサ44a,44bは第2の入力側に
切り替えられる。これにより、セグメント42b,43
bには、外部からの第2周期の複素数入力データII,
IQがレジスタ31,32を介して書き込まれる。一
方、セグメント42a,43aに格納された第1周期の
入力データは、マルチプレクサ44a,44bを介して
出力される。そして、データパス70A,70Bの演算
結果がマルチプレクサ41a,41cを介して、セグメ
ント42a,43aに入力され、これらのセグメント4
2a,43aの内容は、演算途中データで順次置き換え
られる。演算がすべて終了し、演算途中データが最終結
果に置き換えられると、この最終結果は、クロック信号
CLK3に同期して出力される。
【0023】更に、周期T3において、マルチプレクサ
41a〜41dは、再び第1の入力側に切り替えられ、
マルチプレクサ44a,44bも第1の入力側に切り替
えられる。これにより、セグメント42a,43aに
は、外部からの第3周期の複素数入力データII,IQ
がレジスタ31,32を介して書き込まれる。一方、セ
グメント42b,43bに格納された第2周期の入力デ
ータは、マルチプレクサ44a,44bを介して出力さ
れる。そして、データパス70A,70Bの演算結果が
マルチプレクサ41b,41dを介して、セグメント4
2b,43bに入力され、これらのセグメント42b,
43bの内容は、演算途中データで順次置き換えられ
る。
【0024】図5中の周期T3に詳細を例示したよう
に、各周期において、複素数入力データ(II1,IQ
1),(II2,IQ2),…,(II512,IQ5
12)は、データ入力用のクロック信号CLK1に同期
して順次入力される。そして、入力された実数部の入力
データII1,II2,…,II512は、データ記憶
部40のセグメント42aに、データA1〜D1,A2
〜D2,…,A128〜D128の実数部データとして
順次記憶される。また、虚数部の入力データIQ1,I
Q2,…,IQ512は、データ記憶部40のセグメン
ト43aに、データA1〜D1,A2〜D2,…,A1
28〜D128の虚数部データとして順次記憶される。
一方、データ記憶部40のセグメント42b,43bに
一旦格納されたデータは、演算用のクロック信号CLK
2に同期して読み出され、データパス70A,70Bに
おいてFFT演算処理が行われ、その中間結果は演算途
中データとして、再びセグメント42b,43bの同じ
記憶領域に再格納される。更に、再格納された中間結果
に所定の手順によるFFT演算処理が繰り返し施され、
その最終結果はセグメント42b,43bの同じ記憶領
域に格納される。そして、最終結果は、出力用のクロッ
ク信号CLK3に同期して実数成分の出力データOI
1,OI2,…,OI512、及び虚数成分の出力デー
タOQ1,OQ2,…,OQ512として、それぞれレ
ジスタ91,92を介して出力される。
【0025】以上のように、この第1の実施形態のFF
T回路は、それぞれ2つのセグメント42a,42b、
及びセグメント43a,43bに分割された作業用メモ
リ42,43と、一方のセグメントに外部からのデータ
を入力しているときには、他方のセグメントに格納され
たデータを読み出してFFT演算処理を行うように切り
替えるためのマルチプレクサ41,44を有している。
これにより、サンプル点数を1/2に減じてFFT処理
を行う場合に、作業用メモリ42,43の有効利用によ
り、データ入力と演算処理等との並行処理が可能にな
り、処理性能の向上が可能になる。
【0026】第2の実施形態 図6は、本発明の第2の実施形態を示すデータ記憶部4
0Aの構成図である。このデータ記憶部40Aは、図1
中のデータ記憶部40に代えて設けられるものであり、
入力側の入力制御部(例えば、マルチプレクサ)45
a,45b、作業用メモリ46,47、及び出力側の出
力制御部(例えば、マルチプレクサ)48a,48bで
構成されている。マルチプレクサ45aは、3個の入力
側と、4個の出力側とを備え、図示しない制御信号に従
って、入力側と出力側との接続を行うものである。マル
チプレクサ45aの入力側に、レジスタ31からの実数
部の入力データIIk(但し、k=1〜256)及びデ
ータパス70A,70Bからのデータai〜di(但
し、i=1〜64)が与えられるようになっている。作
業用メモリ46は、それぞれサンプル点数256の入力
データIIkに対応する記憶領域を有する4個のセグメ
ント46a,46b,46c,46dで構成されてい
る。そして、これらの各セグメント46a〜46dの入
力側が、マルチプレクサ45aの4個の出力側にそれぞ
れ接続されている。各セグメント46a〜46dの出力
側は、4入力2出力のマルチプレクサ48aの入力側に
それぞれ接続されている。マルチプレクサ48aは、図
示しない制御信号に従って、入力側と出力側との接続を
行うものである。
【0027】同様に、マルチプレクサ45bは、3個の
入力側と、4個の出力側とを備え、図示しない制御信号
に従って、入力側と出力側との接続を行うものである。
マルチプレクサ45bの入力側に、レジスタ32からの
虚数部の入力データIQk(但し、k=1〜256)及
びデータパス70A,70Bからのデータai〜di
(但し、i=1〜64)が与えられるようになってい
る。作業用メモリ47は、それぞれサンプル点数256
の入力データIQkに対応する記憶領域を有する4個の
セグメント47a,47b,47c,47dで構成され
ている。そして、これらの各セグメント47a〜47d
の入力側が、マルチプレクサ45bの4個の出力側にそ
れぞれ接続されている。各セグメント47a〜47dの
出力側は、4入力2出力のマルチプレクサ48bの入力
側にそれぞれ接続されている。マルチプレクサ48b
は、図示しない制御信号に従って、入力側と出力側との
接続を行うものである。
【0028】図7は、図6のデータ記憶部40Aの動作
シーケンスを示す図である。次に、図7を参照しつつ、
図6のデータ記憶部40Aにおけるサンプル点数256
での動作を説明する。先ず、図7の周期T1において、
図6中のマルチプレクサ45a,45bの第1の入力側
は、それぞれ第1の出力側に接続される。これにより、
セグメント46a,47aには、第1周期の入力データ
II,IQがそれぞれ格納される。次に、周期T2にお
いて、各マルチプレクサ45a,45bの第1の入力側
は第2の出力側に接続され、第2の入力側は第1の出力
側に接続される。更に、マルチプレクサ48a,48b
の第1の入力側は第1の出力側に接続される。これによ
り、セグメント46b,47bに、第2周期の入力デー
タII,IQがそれぞれ格納される。一方、セグメント
46a,47aに格納された第1周期の入力データI
I,IQは、それぞれデータパス70A,70Bに与え
られ、FFT演算処理が行われて最終的な演算結果に書
き替えられる。
【0029】周期T3において、各マルチプレクサ45
a,45bの第1の入力側は第3の出力側に接続され、
第2及び第3の入力側は第2の出力側に接続される。更
に、マルチプレクサ48a,48bの第1の入力側は第
2の出力側に接続され、第2及び第3の入力側は第1の
出力側に接続される。これにより、セグメント46c,
47cに,第3周期の入力データII,IQがそれぞれ
格納される。一方、セグメント46b,47bに格納さ
れた第2周期のデータII,IQは、それぞれデータパ
ス70A,70Bに与えられ、FFT演算処理が行われ
て最終的な演算結果に書き替えられる。更に、セグメン
ト46a,47aに格納された第1周期の入力データI
I,IQに対応するFFT演算結果は、それぞれレジス
タ91,92を介して出力データOI,OQとして出力
される。
【0030】例えば周期T4に例示したように、各周期
において、複素数入力データ(II1,IQ1),(I
I2,IQ2),…,(II256,IQ256)は、
データ入力用のクロック信号CLK1に同期して順次入
力される。そして、入力された実数部の入力データII
1,II2,…,II256は、データ記憶部40のセ
グメント46d等に、データA1〜D1,A2〜D2,
…,A64〜D64の実数部として順次記憶される。ま
た、虚数部の入力データIQ1,IQ2,…,IQ25
6は、データ記憶部40のセグメント47d等に、デー
タA1〜D1,A2〜D2,…,A64〜D64の虚数
部として順次記憶される。一方、セグメント46c,4
7c等に一旦格納されたデータは、演算用のクロック信
号CLK2に同期して読み出され、データパス70A,
70BにおいてFFT演算処理が行われ、その中間結果
は演算途中データとして、再びセグメント46c,47
c等の同じ記憶領域に再格納される。更に、再格納され
た中間結果に所定の手順によるFFT演算処理が繰り返
し施され、その最終結果はセグメント46c,47c等
の同じ記憶領域に格納される。
【0031】また、セグメント46b,47b等に格納
された最終結果は、出力用のクロック信号CLK3に同
期して実数部の出力データOI1,OI2,…,OI2
56、及び虚数部の出力データOQ1,OQ2,…,O
Q256として、それぞれレジスタ91,92を介して
出力される。以上のように、この第2の実施形態のデー
タ記憶部は、それぞれ4つのセグメント46a〜46
d、及びセグメント47a〜47dに分割された作業用
メモリ46,47と、1つのセグメントに外部からの入
力データを入力しているときには、その前のセグメント
に格納されたデータを読み出してFFT演算処理を行
い、更にその前のセグメントに格納された演算結果を出
力するように切り替えるためのマルチプレクサ45a,
45b,48a,48bを有している。これにより、サ
ンプル点数を1/4に減じてFFT処理を行う場合に、
作業用メモリ46,47の有効利用により、データ入
力、演算処理、及びデータ出力の並行処理が可能にな
り、処理性能の向上が可能になる。
【0032】なお、本発明は、上記実施形態に限定され
ず、種々の変形が可能である。この変形例としては、例
えば、次の(a)〜(d)のようなものがある。 (a) データ記憶部40,40Aは、最大サンプル点
数1024に対応する記憶領域を有しているが、最大サ
ンプル点数は1024に限定されず、必要な処理精度に
応じたサンプル点数に対応するものであれば良い。 (b) データパス70A,70Bの構成は、図4の構
成に限定されず、FFT演算処理を行うことができるも
のであれば、どのような構成でも適用可能である。 (c) 図1のFFT回路は、ブロック浮動小数点処理
部60を備えているが、演算処理精度よりも回路の簡素
化を重視する場合には、省略しても良い。 (d) 図6のデータ記憶部40Aでは、4個のセグメ
ントを順次周期的に入力、演算、出力、無使用の順に割
り当てているが、3個のセグメントを周期的に入力、演
算、出力の順に割り当て、残りの1個のセグメントを無
使用またはその他の目的に使用するように割り当てるこ
ともできる。
【0033】
【発明の効果】以上詳細に説明したように、第1の発明
によれば、作業用記憶手段をN/2サンプル分を処理す
るための2つのセグメントに分割するとともに、これら
のセグメントを、入力データの入力処理と、入力された
データから周波数成分を算出する算出処理に並行して使
用するための入力制御部及び出力制御部を設けている。
このため、通常の1/2のサンプル数でFFT演算を行
う場合に、作業用記憶手段の有効利用が可能になり、処
理効率を向上することができるという効果がある。
【0034】第2の発明によれば、作業用記憶手段をN
/4サンプル分を処理するための4つのセグメントに分
割するとともに、これらのセグメントを、入力データの
入力処理と、入力されたデータから周波数成分を計算す
る計算処理と、計算結果を出力する出力処理とに並行し
て使用するための入力制御部及び出力制御部を設けてい
る。このため、通常の1/4のサンプル数でFFT演算
を行う場合に、作業用記憶手段の有効利用が可能にな
り、更に処理効率を向上することができるという効果が
ある。第3の発明によれば、第1及び第2の発明に、ブ
ロック浮動小数点処理手段を設けている。これにより、
入力データの有効桁数を最大にして演算処理を行うこと
が可能になり、第1及び第2の発明の効果に加えて、演
算精度の向上が可能になるという効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示すFFT回路の構
成図である。
【図2】従来のFFT回路の一例を示す構成図である。
【図3】図1中のデータ記憶部40の構成図である。
【図4】図1中のデータパス70A,70Bの構成図で
ある。
【図5】図1のFFT回路の動作シーケンスを示す図で
ある。
【図6】本発明の第2の実施形態を示すデータ記憶部4
0Aの構成図である。
【図7】図6のデータ記憶部40Aの動作シーケンスを
示す図である。
【符号の説明】
40,40A データ記憶部 41,44,45a,45b,48a,48b マル
チプレクサ 41a〜41d,44a,44b セレクタ 42,43 作業用メモリ 42a,42b,43a,43b,46a〜46d,4
7a〜47d セグメント 50 係数用メモリ 60 ブロック浮動小数点処理部 70A,70B データパス 93 クロック生成部 94 シーケンス制御部 95 アドレス生成部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 土田 健一 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 (72)発明者 森山 繁樹 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 (72)発明者 黒田 徹 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 Fターム(参考) 5B056 AA00 BB13 CC01 CC03 FF05 FF06 FF07 GG00

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 一定周期でサンプリングされた離散的な
    入力データを入力する入力手段と、 前記入力手段から逐次入力されたN(但し、Nは2の冪
    乗の値)サンプル分の前記入力データを処理するための
    記憶容量を有する作業用記憶手段と、 前記入力手段から入力された入力データの周波数成分を
    算出するための捻り係数を予め記憶した係数用記憶手段
    と、 前記捻り係数及び前記作業用記憶手段に格納された前記
    入力データに基づいて中間結果を算出して該作業用記憶
    手段に再格納する演算処理を、所定の手順に従って繰り
    返えすことにより、該入力データの周波数成分を算出す
    る周波数分析手段とを備えた高速フーリエ変換回路にお
    いて、 前記作業用記憶手段を、それぞれN/2サンプル分の前
    記入力データを処理するための記憶領域を有する2個の
    セグメントで構成し、 前記2個のセグメントを、それぞれ前記入力手段から前
    記入力データを格納する入力処理、及び前記入力処理に
    よってそのセグメントに格納された前記入力データに基
    づいて前記周波数分析手段によって周波数成分を算出し
    て出力する算出処理に、順次並行して使用するための入
    力制御部及び出力制御部を設けたことを特徴とする高速
    フーリエ変換回路。
  2. 【請求項2】 一定周期でサンプリングされた離散的な
    入力データを入力する入力手段と、 前記入力手段から逐次入力されたN(但し、Nは2の冪
    乗の値)サンプル分の前記入力データを処理するための
    記憶容量を有する作業用記憶手段と、 前記入力手段から入力された入力データの周波数成分を
    算出するための捻り係数を予め記憶した係数用記憶手段
    と、 前記捻り係数及び前記作業用記憶手段に格納された前記
    入力データに基づいて中間結果を算出して該作業用記憶
    手段に再格納する演算処理を、所定の手順に従って繰り
    返えすことにより、該入力データの周波数成分を算出す
    る周波数分析手段とを備えた高速フーリエ変換回路にお
    いて、 前記作業用記憶手段を、それぞれN/4サンプル分の前
    記入力データを処理するための記憶領域を有する4個の
    セグメントで構成し、 前記4個のセグメントを、それぞれ前記入力手段から前
    記入力データを格納する入力処理、前記入力処理によっ
    てそのセグメントに格納された前記入力データに基づい
    て前記周波数分析手段によって周波数成分を計算する計
    算処理、及び前記計算処理による計算結果を出力する出
    力処理に、順次並行して使用するための入力制御部及び
    出力制御部を設けたことを特徴とする高速フーリエ変換
    回路。
  3. 【請求項3】 前記周波数分析手段における演算処理毎
    に、その演算処理で使用されるデータの指数を共通にし
    て該周波数分析手段に与えるブロック浮動小数点処理手
    段を設けたことを特徴とする請求項1または2記載の高
    速フーリエ変換回路。
JP10205975A 1998-07-22 1998-07-22 高速フーリエ変換回路 Withdrawn JP2000040080A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10205975A JP2000040080A (ja) 1998-07-22 1998-07-22 高速フーリエ変換回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10205975A JP2000040080A (ja) 1998-07-22 1998-07-22 高速フーリエ変換回路

Publications (1)

Publication Number Publication Date
JP2000040080A true JP2000040080A (ja) 2000-02-08

Family

ID=16515824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10205975A Withdrawn JP2000040080A (ja) 1998-07-22 1998-07-22 高速フーリエ変換回路

Country Status (1)

Country Link
JP (1) JP2000040080A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836050B1 (ko) * 2001-05-23 2008-06-09 엘지전자 주식회사 고속 푸리에 변환 연산 장치
JP2012022500A (ja) * 2010-07-14 2012-02-02 Mitsubishi Electric Corp Fft演算装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836050B1 (ko) * 2001-05-23 2008-06-09 엘지전자 주식회사 고속 푸리에 변환 연산 장치
JP2012022500A (ja) * 2010-07-14 2012-02-02 Mitsubishi Electric Corp Fft演算装置

Similar Documents

Publication Publication Date Title
US9792118B2 (en) Vector processing engines (VPEs) employing a tapped-delay line(s) for providing precision filter vector processing operations with reduced sample re-fetching and power consumption, and related vector processor systems and methods
US9684509B2 (en) Vector processing engines (VPEs) employing merging circuitry in data flow paths between execution units and vector data memory to provide in-flight merging of output vector data stored to vector data memory, and related vector processing instructions, systems, and methods
US4138730A (en) High speed FFT processor
EP0329023A2 (en) Apparatus for performing digital signal processing including fast fourier transform radix-4 butterfly computations
Doröz et al. Evaluating the hardware performance of a million-bit multiplier
CN114968173A (zh) 基于ntt和intt结构的多项式乘法运算方法和多项式乘法器
JP3740516B2 (ja) 共分散行列を生成する方法および装置
JP3938238B2 (ja) 高速フーリエ変換処理装置
KR100989797B1 (ko) Fft/ifft 연산코어
US20050114421A1 (en) Interleaving memory
JPS6125188B2 (ja)
US6463451B2 (en) High speed digital signal processor
JPH08320857A (ja) フーリエ変換演算装置および方法
US20100128818A1 (en) Fft processor
EP1436725A2 (en) Address generator for fast fourier transform processor
JP2008506191A (ja) 可変サイズの高速直交変換を実施する方法および機器
CN100594490C (zh) 存储器控制方法及运算装置
JP2000040080A (ja) 高速フーリエ変換回路
JPH09259115A (ja) ビット−シリアルマトリックス転置のための超大規模集積回路
EP0239634A1 (en) Multizone processor
JPH10307811A (ja) 演算装置および演算方法
JP3727406B2 (ja) 関数変換演算器
KR100444729B1 (ko) 레딕스-8 단일 경로 지연 전달 구조의 고속 퓨리에 변환장치 및 그 방법
JP2822684B2 (ja) 離散コサイン変換装置および逆離散コサイン変換装置
JP3019767B2 (ja) デジタル信号処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051004