JPH0619955A - Variable fast fourier transformation circuit - Google Patents
Variable fast fourier transformation circuitInfo
- Publication number
- JPH0619955A JPH0619955A JP4175838A JP17583892A JPH0619955A JP H0619955 A JPH0619955 A JP H0619955A JP 4175838 A JP4175838 A JP 4175838A JP 17583892 A JP17583892 A JP 17583892A JP H0619955 A JPH0619955 A JP H0619955A
- Authority
- JP
- Japan
- Prior art keywords
- data
- fourier transform
- fast fourier
- circuit
- input
- 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
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、信号処理、データ解
析、線型システム等に利用される高速フーリエ変換回路
に係り、特に、入力データ点数Nに対して、該入力デー
タがN/2,N/4,〜と減少しても、高速フーリエ変
換が行える高速フーリエ変換回路に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a fast Fourier transform circuit used in signal processing, data analysis, linear systems, etc., and in particular, for input data points N, the input data is N / 2 or N. The present invention relates to a fast Fourier transform circuit that can perform a fast Fourier transform even if it is reduced to / 4 or.
【0002】最近の、マイクロ波領域の固体素子の著し
い進歩に伴って、該マイクロ波領域電波天文学が進展し
ている。この場合、宇宙からの該マイクロ波領域の電波
を、専用のパラボラアンテナで受信した時系列のアナロ
グ信号を、所定のサンプリング数Nでサンプリングし、
それぞれのサンプリング位置での振幅を、高速フーリエ
変換による周波数分析を行うことにより、該受信した電
波の周波数成分を認識することができ、該電波の発信元
での元素を解析することができる。With the recent remarkable progress of solid-state devices in the microwave region, the microwave region radio astronomy is advancing. In this case, radio waves in the microwave region from space are sampled at a predetermined sampling number N of time-series analog signals received by a dedicated parabolic antenna,
By performing the frequency analysis by the fast Fourier transform on the amplitude at each sampling position, the frequency component of the received radio wave can be recognized, and the element at the source of the radio wave can be analyzed.
【0003】所が、各電波天文台によって、該宇宙から
の電波受信を受信する装置が異なり、上記サンプリング
数Nが異なる(例えば,16サンプリング数,8サンプ
リング数等)問題があり、該サンプリング数Nの異なる
マイクロ波を、効果的に高速フーリエ変換できる装置が
必要とされる。However, each radio observatory has a different device for receiving radio waves from the universe, and there is a problem in that the sampling number N is different (for example, 16 sampling numbers, 8 sampling numbers, etc.). What is needed is a device that can effectively perform fast Fourier transform of different microwaves.
【0004】該高速フーリエ変換とは、離散的フーリエ
変換の演算速度を高速化するために考えられたアルゴリ
ズムである。以下に入力データ数Nが2のべき乗を対象
とした基数2のアルゴリズムを一例として説明する。The fast Fourier transform is an algorithm designed to speed up the calculation speed of the discrete Fourier transform. A radix-2 algorithm for the case where the input data number N is a power of 2 will be described below as an example.
【0005】離散的フーリエ変換を計算する場合、まと
もに取り組んでは計算量が非常に膨大なものになる。そ
こで、考え出されたのが高速フーリエ変換のアルゴリズ
ムで、このアルゴリズムを用いることで計算量を大幅に
減少させる事ができる。When the discrete Fourier transform is calculated, the amount of calculation becomes very large if proper measures are taken. Then, the fast Fourier transform algorithm was conceived, and the calculation amount can be greatly reduced by using this algorithm.
【0006】図19は、従来の高速フーリエ変換回路を
説明する図である。N=8の場合のアルゴリズムを例
に、図19(a) に示す。ここで、Aは入力を、Dは出力
を、B、Cは中間結果を表している。FIG. 19 is a diagram for explaining a conventional fast Fourier transform circuit. An algorithm for N = 8 is shown in FIG. 19 (a) as an example. Here, A represents an input, D represents an output, and B and C represent intermediate results.
【0007】該高速フーリエ変換のアルゴリズムの説
明:図19(a) において、入力されたデータは、決めら
れた2つのデータ間でたすき掛け演算を行う。1段目で
は、 (A0,A4)、(A1,A5)、・・(A3,A7)の組でた
すき掛け演算を行い、2段目では、(B0,B2)、(B1,
B3)・・(B5,B7)の組で、3段めでは(C0,C1)、
(C2,C3)・・(C6,C7)の組で、それぞれ、たすき掛
け演算が行われる。Description of the fast Fourier transform algorithm: In FIG. 19 (a), the input data is subjected to a multiplication operation between two predetermined data. In the first stage, a crossing operation is performed with a set of (A 0 , A 4 ), (A 1 , A 5 ), ... (A 3 , A 7 ), and in the second stage, (B 0 , B 2). ), (B 1 ,
B 3 ) ... (B 5 , B 7 ), in the third stage (C 0 , C 1 ),
The crossing operation is performed on each of the pairs (C 2 , C 3 ) ·· (C 6 , C 7 ).
【0008】この組の決め方は、上記基数2の場合に
は、入力データ数Nに対して1段目では、N/2離れた
データ間で、2段目では、N/4離れたといった具合
に、最終的にお互いに1つ離れたデータ間でたすき掛け
演算が行われる様になるまで続けられる。In the case of the radix 2 described above, the number of input data is N, and the number of input data is N / 2 apart in the first stage and N / 4 is separated in the second stage. Then, the operation is continued until finally the data is interleaved by one and the data is interleaved.
【0009】従って、このたすき掛け演算が何回行われ
るかは、入力されるデータ数で決まり、このアルゴリズ
ムでは2のべき乗数だけ行うことになる。つまり8=2
3 なので、3回行えはよいことになる。又、たすき掛け
1回の演算を1段と呼ぶことにする。Therefore, the number of times the crossing operation is performed is determined by the number of input data, and in this algorithm, only a power of 2 is used. That is, 8 = 2
Since it is 3 , it is good to do it 3 times. In addition, one operation of crossing is called one step.
【0010】このアルゴリズムで用いられるたすき掛け
演算をバタフライ演算と呼び、図19(b) に示す様な演
算を行う。ここで、x、yは入力であり、X、Yは出力
を表す。また、Wはひねり係数といい次式で与えられ
る。The crossing operation used in this algorithm is called a butterfly operation, and the operation as shown in FIG. 19 (b) is performed. Here, x and y are inputs, and X and Y are outputs. W is a twist coefficient and is given by the following equation.
【0011】Wnk=exp(−2πnkj/N) 図19(b) において、たすき掛け演算はこのバタフライ
演算を決められたデータ間で行うことを表している。W nk = exp (−2πnkj / N) In FIG. 19 (b), the crossing operation indicates that the butterfly operation is performed between predetermined data.
【0012】上記高速フーリエ変換のアルゴリズムにつ
いては、文献“高速フーリエ変換入門",“高速フーリエ
変換(FFT) の使い方",安居院猛著, 廣済堂産報出版に詳
しく記載されているので、ここでは、その詳細は省略す
る。The algorithm of the fast Fourier transform is described in detail in the document "Introduction to the Fast Fourier Transform", "How to Use the Fast Fourier Transform (FFT)", Takeshi Yasuiin, Kosaido Kogyo Shuppan. The details are omitted.
【0013】通常、該高速フーリエ変換(FFT) 点数Nが
決まると、対応する高速フーリエ変換(FFT) 回路が構成
されるという形態が取られるため、前述のように、該高
速フーリエ変換(FFT) 点数Nが、N→N/2→N/4→
となると、専用の回路を予め用意しておく必要があり、
一つの高速フーリエ変換回路で、種々の点数の高速フー
リエ変換ができることが要求される。Usually, when the number N of the fast Fourier transform (FFT) is determined, a corresponding fast Fourier transform (FFT) circuit is constructed, and as described above, the fast Fourier transform (FFT). The score N is N → N / 2 → N / 4 →
In that case, it is necessary to prepare a dedicated circuit in advance,
It is required that one fast Fourier transform circuit can perform fast Fourier transform with various points.
【0014】[0014]
【従来の技術】前述の図19が、従来の高速フーリエ変
換回路を説明する図である。本図に示したように、従来
から、高速フーリエ変換を行う回路は存在しているが、
入力される高速フーリエ変換(FFT)点数Nと決めら
れているとき、N/2、N/4,・・・と入力データが
減少(即ち、前述のサンプリング数Nが減少)しても、
同じ回路で処理を行えるものは存在していない。2. Description of the Related Art FIG. 19 is a diagram for explaining a conventional fast Fourier transform circuit. As shown in this figure, conventionally, there is a circuit that performs a fast Fourier transform,
When it is determined that the number of input Fast Fourier Transform (FFT) points is N, even if the input data decreases to N / 2, N / 4, ... (that is, the above-mentioned sampling number N decreases),
Nothing can be processed in the same circuit.
【0015】[0015]
【発明が解決しようとする課題】前述のように、図19
で説明した、従来の高速フーリエ変換を行う回路では、
高速フーリエ変換(FFT)点数がNと決められると、
該入力データがN/2,N/4,・・・と減少していっ
たとき、同じ回路で、高速フーリエ変換を行う事ができ
ないという問題があった。As described above, as shown in FIG.
In the circuit that performs the conventional fast Fourier transform described in,
When the Fast Fourier Transform (FFT) score is determined to be N,
When the input data decreased to N / 2, N / 4, ..., There was a problem that the same circuit could not perform the fast Fourier transform.
【0016】即ち、入力データがN/2,N/4,・・
・に対応した、前述の高速フーリエ変換回路を別途用意
する必要があった。若し、該入力データNに対する高速
フーリエ変換を行う回路以外の回路が存在しない場合、
該N/2,N/4,・・・のデータが入手できたとして
も、該データを高速フーリエ変換をすることができない
という問題があった。That is, the input data is N / 2, N / 4, ...
It was necessary to separately prepare the above-mentioned fast Fourier transform circuit corresponding to. If there is no circuit other than the circuit that performs the fast Fourier transform on the input data N,
Even if the data of N / 2, N / 4, ... Can be obtained, there is a problem that the data cannot be subjected to the fast Fourier transform.
【0017】本発明は上記従来の欠点に鑑み、入力デー
タ点数Nに対して、該入力データがN/2,N/4,〜
と減少しても、高速フーリエ変換が行える回路を提供す
ることを目的とするものである。In the present invention, in view of the above-mentioned conventional drawbacks, the number of input data points is N / 2, N / 4, ...
It is an object of the present invention to provide a circuit capable of performing a fast Fourier transform even when the number of channels is reduced.
【0018】[0018]
【課題を解決するための手段】図1, 図2は、本発明の
原理説明図であり、図1(a) はデータ入力の概念を示
し、図1(b) は、本発明の基本回路の構成例を示し、図
2(c1),(c2) は、本発明のバイパス処理の概念を示し、
図2(d) はデータ並べ換え回路の一例を示している。上
記の問題点は下記の如くに構成した高速フーリエ変換回
路によって解決される。1 and 2 are explanatory views of the principle of the present invention. FIG. 1 (a) shows the concept of data input, and FIG. 1 (b) shows the basic circuit of the present invention. 2 (c1) and (c2) show the concept of bypass processing of the present invention,
FIG. 2D shows an example of the data rearrangement circuit. The above problems are solved by a fast Fourier transform circuit configured as follows.
【0019】(1) 処理する高速フーリエ変換(FFT)
点数Nについて、高速フーリエ変換を行う回路であっ
て、上記入力データ点数NをN/R分割(Rは、基数)
し、該分割された入力データ点数をシリアルに並べたR
入力のデータを、データ並べ回路部(1) と, ひねり係数
乗算部(2) と, バタフライ演算部(3) とから構成された
R入力の高速フーリエ変換の基本回路に入力し、該R入
力の高速フーリエ変換の基本回路を1段として、この段
をM個(M=logR N) 直列に並べて高速フーリエ変
換を行うように構成し、該データ並べ回路部(1) は、上
記入力データ点数Nに対して、上記1段目では、N/R
離れたデータ間で、2段目では、N/R2 離れたデータ
間で、3段目では、N/R3 離れたデータ間で、最終段
では、お互いに1つ離れたデータ間で、たすき掛け演算
を行い、該ひねり係数演算部(2) は、R入力の内のR−
1個の入力に対してひねり係数を乗算し、該バタフライ
演算部(3) は、上記ひねり係数を乗算されない入力と、
上記ひねり係数を乗算された入力とでたすき掛け演算を
行い、上記M段からなる高速フーリエ変換回路の入力部
分からK段(K<M)をバイパスすることによって、上
記高速フーリエ変換(FFT)点数がN/RK の高速フ
ーリエ変換を行うように構成する。(1) Fast Fourier transform (FFT) to be processed
A circuit that performs a fast Fourier transform on the number N, and divides the input data point N into N / R (R is a radix)
And serially arranging the divided input data points
The input data is input to the basic circuit of the fast Fourier transform of the R input, which is composed of the data arranging circuit unit (1), the twist coefficient multiplying unit (2), and the butterfly computing unit (3), and the R input as one stage basic circuit of the fast Fourier transform of, and configured to perform a fast Fourier transform by arranging this stage into M (M = log R N) in series, the data arranging circuit (1) is the input data For the point N, N / R
Between distant data, in the second row, between N / R 2 distant data, in the third row, between N / R 3 distant data, and in the last row, between 1 distant data, The cross coefficient calculation is performed, and the twist coefficient calculation unit (2) calculates R-
One input is multiplied by a twist coefficient, and the butterfly computing unit (3) inputs an input which is not multiplied by the twist coefficient,
The fast Fourier transform (FFT) score is obtained by performing a multiplication operation with the input multiplied by the twist coefficient and bypassing the K stage (K <M) from the input part of the fast Fourier transform circuit consisting of the M stages. Are configured to perform N / R K fast Fourier transforms.
【0020】(2) (1) 項に記載の可変高速フーリエ変換
回路におけるバイパス処理であって、上記1段目におい
て、N/R*2K 離れた、データの組を取り出してお
き、ある段では、データの並べ替え,ひねり係数乗算,
バタフライ演算を行わないで、K段バイパスすること
で、データ点列数がN/RK (Rは基数)になったとき
のフーリエ変換を、データ点列数Nのフーリエ変換回路
で行うように構成する。(2) By-pass processing in the variable fast Fourier transform circuit according to the item (1), wherein in the first stage, a data set N / R * 2 K apart is taken out and a certain stage is taken out. Then, rearrangement of data, twist coefficient multiplication,
By performing K stages of bypassing without performing the butterfly operation, the Fourier transform when the number of data point sequences becomes N / R K (R is the radix) is performed by the Fourier transform circuit with N number of data point sequences. Constitute.
【0021】(3) (1) 項に記載の可変高速フーリエ変換
回路におけるバイパス処理であって、ある段でデータの
並べ替えを行うが、必要とする組合わせになっていない
場合、通常のデータの並べ替えは行うが、ひねり係数乗
算,バタフライ演算を行わないバイパス処理をK段行
い、以降の段で、通常のデータの並べ替え,ひねり係数
乗算,バタフライ演算を行うことで、データ点列数がN
/RK (Rは基数)になったときのフーリエ変換を、該
データ点列数Nのフーリエ変換回路で行うように構成す
る。(3) By the bypass processing in the variable fast Fourier transform circuit according to the item (1), the data is rearranged at a certain stage, but when the required combination is not obtained, the normal data However, by performing K stages of bypass processing that does not perform twist coefficient multiplication and butterfly operation, normal data rearrangement, twist coefficient multiplication, and butterfly operation are performed in subsequent stages, and the number of data points Is N
The Fourier transform when the number becomes / R K (R is a radix) is configured to be performed by the Fourier transform circuit of the number N of data points.
【0022】(4) (1) 項に記載の可変高速フーリエ変換
回路におけるバイパス処理であって、ある段で、データ
の並べ替えを行い、必要な組ができているとき、ひねり
係数乗算,バタフライ演算を行い、以降の段で、データ
の並べ替え,ひねり係数乗算,バタフライ演算をK段バ
イパスすることで、データ点列数がN/RK (Rは基
数)になったときのフーリエ変換を、該データ点列数N
のフーリエ変換回路で行うように構成する。(4) Bypass processing in the variable fast Fourier transform circuit according to item (1), wherein data is rearranged at a certain stage, and when a necessary set is formed, twist coefficient multiplication, butterfly By performing calculations, and by rearranging the data, twist coefficient multiplication, and butterfly calculation by K stages in subsequent stages, the Fourier transform when the number of data points becomes N / R K (R is a radix) is performed. , The number of data points in the sequence N
Of the Fourier transform circuit.
【0023】(5) (1) 項に記載の可変高速フーリエ変換
回路におけるバイパス処理であって、ある段で、データ
の並べ替えを行い、必要な組ができているが、ひねり係
数乗算,バタフライ演算を行うことなく、次の段に流
し、データの並べ替えをバイパスして、ひねり係数乗
算,バタフライ演算のみを行い、以降の段で、データの
並べ替え,ひねり係数乗算,バタフライ演算をK−1段
バイパスすることで、データ点列数がN/RK (Rは基
数)になったときのフーリエ変換を、該データ点列数N
のフーリエ変換回路で行うように構成する。(5) By-pass processing in the variable fast Fourier transform circuit according to item (1), the data is rearranged at a certain stage to form a necessary set. Twist coefficient multiplication, butterfly Without performing the calculation, the data is sent to the next stage, the data rearrangement is bypassed, only the twist coefficient multiplication and the butterfly calculation are performed, and the data rearrangement, the twist coefficient multiplication, and the butterfly calculation are performed in the subsequent stages by K- By performing a one-stage bypass, the Fourier transform when the number of data points becomes N / R K (R is a radix)
Of the Fourier transform circuit.
【0024】(6) 上記データ並べ替え回路部 1として、
上記N/R分割されたシリアルな入力データを、R個の
先入れ先出しメモリ(#0,#2) 10,11 に、上記高速フーリ
エ変換(FFT)点数N/(Rの1/2)まで格納した
後、残りの高速フーリエ変換(FFT)点数N/(Rの
1/2)を、他のR個の先入れ先出しメモリ(#1,#3)12,
13 に格納し、該格納された高速フーリエ変換(FF
T)点数Nについて、1個の先入れ先出しメモリ(#0) 1
0 から1つのデータを取り出して、R出力の一方の出力
(A)に出力し、同時に、他の1個の先入れ先出しメモ
リ(#1) 12 から1つのデータを取り出して、R出力の他
方の出力(B)に出力し、続いて、1個の先入れ先出し
メモリ(#2) 11 から1つのデータを取り出して、R出力
の一方の出力(A)に出力し、同時に、他の1個の先入
れ先出しメモリ(#3) 13 から1つのデータを取り出し
て、R出力の他方の出力(B)に出力することを、交互
に繰り返して、高速フーリエ変換処理に必要とするデー
タの組を生成する回路とするように構成する。(6) As the data rearrangement circuit unit 1,
The N / R-divided serial input data was stored in the R first-in first-out memories (# 0, # 2) 10,11 up to the number of fast Fourier transform (FFT) points N / (1/2 of R). After that, the remaining number of fast Fourier transform (FFT) points N / (1/2 of R) is used for other R first-in first-out memories (# 1, # 3) 12,
13 and stores the stored fast Fourier transform (FF
T) For point N, 1 first-in first-out memory (# 0) 1
One data is taken out from 0 and outputted to one output (A) of the R output, at the same time, one data is taken out from another one of the first-in first-out memory (# 1) 12 and the other output of the R output is outputted. Output to (B), and then take out one data from one first-in first-out memory (# 2) 11 and output to one output (A) of R output, and at the same time, another one out first-in first-out memory. (# 3) Taking out one data from 13 and outputting it to the other output (B) of the R output is alternately repeated to make a circuit for generating a data set required for the fast Fourier transform processing. To configure.
【0025】[0025]
【作用】即ち、本発明においては、例えば、基数2の高
速フーリエ変換を行う場合、先ず、入力をN/2個に分
けて、該分割された、それぞれの入力データの点数をシ
リアルに並べたものを、2入力からなり、複数段の基本
回路からなる高速フーリエ変換回路に入力するように構
成する。That is, in the present invention, for example, when performing a radix-2 fast Fourier transform, first, the input is divided into N / 2 and the divided input data points are arranged serially. It is configured so as to be inputted to a fast Fourier transform circuit having two inputs and consisting of a plurality of stages of basic circuits.
【0026】このとき、入力するデータの順はどのよう
にするかは任意である。図1(a) の例では、入力の上側
(入力A)に偶数番目、下側(入力B)に奇数番目を入
力することにする。At this time, the order of the input data is arbitrary. In the example of FIG. 1A, the even number is input to the upper side (input A) and the odd number is input to the lower side (input B).
【0027】このとき入力されたデータは、バタフライ
演算を行う組どうしで、該バタフライ演算を行うように
する必要があるので、データを一旦蓄えておき、必要な
組どうしを選ぶ様にする。このための回路部分をデータ
並び替え回路 1と呼ぶことにする。Since the data input at this time need to be subjected to the butterfly operation between the groups performing the butterfly operation, the data is temporarily stored and the necessary groups are selected. The circuit part for this purpose is called data rearrangement circuit 1.
【0028】次に、図1(b) に示した様に、入力Bから
入力されたデータに、ひねり係数を掛ける必要がある。
このための回路部分をひねり係数乗算部 2と呼ぶことに
する。Next, as shown in FIG. 1B, it is necessary to multiply the data input from the input B by the twist coefficient.
The circuit portion for this purpose is called the twist coefficient multiplication unit 2.
【0029】最後に、上側(入力A)から入力されたデ
ータと,上記ひねり係数を掛けられたデータとで、図1
(b) に示したたすき掛け演算を行う必要がある。このた
めの回路部分を特にバタフライ演算部 3と呼ぶことにす
る。Finally, the data input from the upper side (input A) and the data multiplied by the above-mentioned twist coefficient are used in FIG.
It is necessary to perform the crossing calculation shown in (b). The circuit portion for this purpose will be particularly referred to as a butterfly computing unit 3.
【0030】従って、基数2のアルゴリズムで、1段分
の処理を行うための基本回路構成は図1(b) のようにな
る。入力されるデータNは2M 個であるから、この基本
回路をM個直列に組み合わせることで基数2の高速フー
リエ変換が行えることになる。Therefore, the basic circuit configuration for performing the processing for one stage by the radix-2 algorithm is as shown in FIG. 1 (b). Since the number of input data N is 2 M , it is possible to perform the radix-2 fast Fourier transform by combining M basic circuits in series.
【0031】上記のデータ並び換え回路 1には色々考え
られるが、ここでは、その一例として、例えば、以下の
具体例で示すものを用いる。この並べ換え手段は、あく
までも一例であって、これに限るものでないことはいう
迄もないことである。要は、高速フーリエ変換点数Nに
対して、図1(a) に示したデータどうしで、フーリエ変
換を行うことができるように、該シリアルに入力される
データを並べ換えることができればよい。There are various conceivable data rearrangement circuits 1, but here, for example, the one shown in the following specific example is used. It goes without saying that this rearrangement means is merely an example and is not limited to this. In short, with respect to the number N of fast Fourier transform points, it is sufficient that the data input to the serial can be rearranged so that the Fourier transform can be performed between the data shown in FIG.
【0032】この例では、データ記憶用素子として先入
れ先出しメモリ(RAM)(以下FIFOという)を用いて、
図2(d) のような回路構成をとる。この方法は、まず#
0、#2のFiFo 10,11に、シリアルな入力A、Bか
ら同時にデータを入力し、それぞれのFiFo 10,11
が、同時にFFT点数の1/4までデータ (高速フーリ
エ変換点数N=16の場合には、4データ)を格納した
のち、#1、#3のFiFo 12,13に、同様にして、該
FFT点数の1/4までデータを格納する。このときF
iFo 10 〜13全体で格納されるデータ数は、処理でき
る高速フーリエ変換(FFT)点数N(=16) に等しい様
にしてある。In this example, a first-in first-out memory (RAM) (hereinafter referred to as a FIFO) is used as a data storage element,
The circuit configuration is as shown in FIG. This method starts with #
Data is simultaneously input from serial inputs A and B to 0 and # 2 FiFo 10,11.
However, after simultaneously storing data up to 1/4 of the number of FFT points (4 data when the number of fast Fourier transform points N = 16), the FFTs of # 1 and # 3 are similarly stored in the FFTs 12 and 13. Stores data up to 1/4 of the score. At this time F
The number of data stored in the entire iFo 10 to 13 is set to be equal to the number of fast Fourier transform (FFT) points N (= 16) that can be processed.
【0033】次に、#0のFiFo 10 から1つデータ
を取り出して、出力Aへ送り、これと同時に#1のFi
Fo 12 からもデータを1つ取り出し、出力Bへ送る。
これがすむと、#2、#3のFiFo 11,13からも同様
の操作を行う。Next, one data is taken out from the FiFo 10 of # 0 and sent to the output A, and at the same time, the FiFo of # 1 is output.
One data is also taken out from Fo 12 and sent to the output B.
When this is completed, the same operation is performed from the FiFo 11, 13 of # 2 and # 3.
【0034】この動作を、交互に行うことにより必要と
するデータの組になるように並べ換えを行うことができ
る。以下、N=16を具体例として、本発明の高速フー
リエ変換処理過程について説明する。16=24 である
から、この場合、上記データ並べ換え回路 1, ひねり係
数乗算部 2, バタフライ演算部 3から構成される基本回
路を4段必要とする。By performing this operation alternately, rearrangement can be performed so as to obtain a required data set. Hereinafter, the fast Fourier transform processing process of the present invention will be described with N = 16 as a specific example. Since 16 = 2 4 , in this case, four stages of basic circuits composed of the data rearrangement circuit 1, the twist coefficient multiplication unit 2, and the butterfly operation unit 3 are required.
【0035】1段目で、入力されたシリアルデータは、
上記データ並び替え回路 1で、バタフライ演算を行う組
どうしに並べ替えられ、次に、ひねり係数乗算部 2で、
所定の入力データに対してひねり係数が掛けられる。こ
の後、バタフライ演算部に送られ、バタフライ演算を行
い、並び替えられた組どうしがそのまま1段目の出力に
あらわれる。以下順に2段、3段と処理していき、4段
目の出力が高速フーリエ変換された出力となる。At the first stage, the input serial data is
In the data rearrangement circuit 1, the data is rearranged into sets that perform butterfly operation, and then in the twist coefficient multiplication unit 2,
The given input data is multiplied by the twist coefficient. After that, it is sent to the butterfly operation unit, the butterfly operation is performed, and the rearranged groups appear as they are in the output of the first stage. After that, processing is performed in the order of 2 stages and 3 stages, and the output of the 4th stage becomes the output obtained by the fast Fourier transform.
【0036】ここまでは、通常の高速フーリエ変換処理
となる。次に、本発明の特徴となるデータがN/2、N
/4と減少しても処理出来るための手段を示す。N=8
と減少した場合は8=23 であるから、基本回路は3段
あればよいことになる。N=8をN=16の回路で処理
しようとするならば、1段目で、通常の処理を行わず、
2段目以降で処理を行えばよいことになる。この1段目
でデータ処理を行わないことを、バイパス処理と呼ぶに
ことする。このバイパス処理によって、データ数が減少
しても、正確な高速フーリエ変換が行えることが本発明
の特徴である。Up to this point, the normal fast Fourier transform processing is performed. Next, the data that characterizes the present invention are N / 2, N
The means for processing even if it decreases to / 4 is shown. N = 8
If it is decreased to 8 = 2 3, it is sufficient that the basic circuit has three stages. If N = 8 is to be processed by the circuit of N = 16, normal processing is not performed in the first stage,
It suffices to perform the processing in the second and subsequent stages. Not performing the data processing in the first stage will be referred to as bypass processing. It is a feature of the present invention that accurate fast Fourier transform can be performed by this bypass process even if the number of data is reduced.
【0037】図2(c1),(c2) は、このバイパス処理の原
理を示しており、N=8をN=16の回路で処理しよう
とするとき、1段目でデータ処理を行わない場合を示し
ている。このように構成することで、同じ高速フーリエ
変換回路で、入力部から所定の段数をバイパスすること
で、データ点数がNからN/2、N/4と減少しても、
同じ高速フーリエ変換回路で処理できることになる。FIGS. 2 (c1) and 2 (c2) show the principle of this bypass processing. When N = 8 is to be processed by the circuit of N = 16, data processing is not performed in the first stage. Is shown. With this configuration, even if the number of data points is reduced from N to N / 2 or N / 4 by bypassing a predetermined number of stages from the input section in the same fast Fourier transform circuit,
It can be processed by the same fast Fourier transform circuit.
【0038】又、データ並べ替え回路として、上記本発
明のデータ並べ替え回路部{図2(d) 参照}とは異なる
構成のものを用いてもよい。又、本発明の高速フーリエ
変換回路の、例えば、1段目に、上記本発明のデータ並
べ替え回路部を使用し、2段目以降には、上記他の構成
のデータ並べ替え回路を使用するようにしてもよい。Further, as the data rearrangement circuit, one having a structure different from that of the data rearrangement circuit section of the present invention (see FIG. 2 (d)) may be used. Further, in the fast Fourier transform circuit of the present invention, for example, the data rearrangement circuit section of the present invention is used in the first stage, and the data rearrangement circuit of another configuration is used in the second and subsequent stages. You may do it.
【0039】この場合、使用されるデータ並べ替え回路
の構成によって、出力側にはフーリエ変換で必要とする
順序のデータ列が得られている場合とか,該フーリエ変
換で必要とする順序のデータ列が得られていない場合等
が発生することがあるが、その態様に応じたバイパス処
理を施すことにより、データ点列数がN/R(Rは基
数)になったときのフーリエ変換処理を、データ点列数
Nのフーリエ変換回路で行うことができる。In this case, depending on the configuration of the data rearrangement circuit used, the case where the data sequence in the order required by the Fourier transform is obtained on the output side, or the data sequence in the order required by the Fourier transform is obtained. May occur, but the Fourier transform processing when the number of data points becomes N / R (R is a radix) is performed by performing the bypass processing according to the mode. This can be performed by a Fourier transform circuit having the number N of data points.
【0040】[0040]
【実施例】以下本発明の実施例を図面によって詳述す
る。前述の図1, 図2は、本発明の原理説明図であり、
図3〜図6は、本発明の一実施例を示した図であって、
図3は、データ並べ換え部での実際のデータの流れを示
し、図4、図5は、それぞれ、N=16,N/8=8の
場合のデータの流れの例を示し、図6は、バイパス処理
の一例を示しており、図7〜図14は、本発明の他の実
施例を示した図であって、図7,図8は、データ並べ替
え回路の他の構成例を示しており、図9は、該データ並
べ替え回路(並べ替え回路B)を用いて、高速フーリエ
変換を行うときのデータの流れを示し、図10は、図9
に示した高速フーリエ変換回路で、1段目に、図3に示
した、本発明のデータ並べ替え回路(並べ替え回路A)
を使用したときのデータの流れを示し、図11〜図14
は、上記該他の実施例で、幾つかのバイパス処理を行う
ときのデータの流れを示しており、図15〜図18は、
基数4の場合の構成例を示している。各図において、ア
ルファベットの添え数字はデータの順番を示しており、
アルファベットが変化しているのは、基本回路での処理
によりデータの数値が変化していることを表している。Embodiments of the present invention will be described in detail below with reference to the drawings. FIG. 1 and FIG. 2 described above are explanatory views of the principle of the present invention.
3 to 6 are views showing an embodiment of the present invention,
FIG. 3 shows an actual data flow in the data rearrangement section, FIGS. 4 and 5 show examples of the data flow when N = 16 and N / 8 = 8, and FIG. 6 shows FIG. 7 to FIG. 14 are diagrams showing another embodiment of the present invention, and FIG. 7 and FIG. 8 show other configuration examples of the data rearrangement circuit. FIG. 9 shows the flow of data when performing a fast Fourier transform using the data rearrangement circuit (rearrangement circuit B), and FIG.
In the fast Fourier transform circuit shown in FIG. 3, the data rearrangement circuit (rearrangement circuit A) of the present invention shown in FIG.
11 to 14 show the flow of data when using
Shows the flow of data when performing some bypass processing in the other embodiment described above, and FIGS.
An example of the configuration in the case of a radix-4 is shown. In each figure, the subscripts of the alphabet indicate the order of the data,
The change in the alphabet indicates that the numerical value of the data has changed due to the processing in the basic circuit.
【0041】本発明においては、処理するFFT点数が
Nである高速フーリエ変換を行う回路であって、入力デ
ータ点数NをN/R(但し、Rは基数)分割し、該分割
された入力データ点数をシリアルに並べて、R入力のデ
ータ並べ替え回路 1、ひねり係数乗算回路 2、バタフラ
イ演算回路 3からなる基本回路に入力し、該基本回路を
1段として、この段をM個(M=logR N)直列に並
べて、高速フーリエ変換を行うように構成し、入力部分
からK段(K<M)をバイパスすることによって、FF
T点数がN/R、N/R2 ・・・Rと減少させたとき
も、同じ回路で、FFT点数がN/RK の高速フーリエ
変換の処理を行う手段が、本発明を実施するのに必要な
手段である。尚、全図を通して同じ符号は同じ対象物を
示している。In the present invention, a circuit for performing a fast Fourier transform in which the number of FFT points to be processed is N, the number N of input data points is divided into N / R (where R is a radix), and the divided input data is divided. The points are serially arranged and input to a basic circuit composed of an R-input data rearrangement circuit 1, a twist coefficient multiplication circuit 2, and a butterfly operation circuit 3. The basic circuit is defined as one stage, and M stages (M = log R N) arranged in series, and configured to perform a fast Fourier transform, by bypassing K stages (K <M) from the input portion, FF
Even when the number of T points is reduced to N / R, N / R 2 ... R, the same circuit implements the present invention by means of the processing of the fast Fourier transform having the FFT points of N / R K. Is the means necessary for. The same reference numerals indicate the same objects throughout the drawings.
【0042】以下、図1,図2を参照しながら、図3〜
図18によって、本発明の高速フーリエ変換回路の構成
と動作を説明する。前述のように、1つのデータの並べ
換え回路 1は、例えば、図2(d) のようになっている。
この回路で、基数2の場合のFFT点数Nを2分割して
入力した場合の、実際のデータの流れを、図3によって
具体的に説明する。Hereinafter, referring to FIGS. 1 and 2, FIGS.
The configuration and operation of the fast Fourier transform circuit of the present invention will be described with reference to FIG. As described above, the one data rearrangement circuit 1 is, for example, as shown in FIG. 2 (d).
In this circuit, the actual data flow when the FFT score N in the case of the radix 2 is divided into two and input will be concretely described with reference to FIG.
【0043】本データ並べ換え動作は、図2(d) でも説
明したように、まず♯0、♯2のFiFo 10,11に、シ
リアルな入力A、Bから同時にデータを入力し、それぞ
れのFiFo 10,11が、同時にFFT点数の1/4まで
データ (高速フーリエ変換点数N=16の場合には、4
データ)を格納したのち、#1、#3のFiFo 12,13
に、同様にして、該FFT点数の1/4までデータを格
納する。このときFiFo 10 〜13全体で格納されるデ
ータ数は、処理できる高速フーリエ変換(FFT)点数
N(=16) に等しい様にしてある。In this data rearrangement operation, as described with reference to FIG. 2 (d), first, data is serially input from serial inputs A and B to the FiFo 10, 11 of # 0 and # 2, and the respective FiFo 10 are input. , 11 are data up to 1/4 of the number of FFT points at the same time (when the number of fast Fourier transform points N = 16,
Data) and then stores # 1 and # 3 FiFo 12,13
Similarly, data is stored up to ¼ of the number of FFT points. At this time, the number of data stored in the whole FiFo 10 to 13 is set to be equal to the number of fast Fourier transform (FFT) points N (= 16) that can be processed.
【0044】次に、#0のFiFo 10 から1つデータ
を取り出して、出力Aへ送り、これと同時に#1のFi
Fo 12 からもデータを1つ取り出し、出力Bへ送る。
これがすむと、#2、#3のFiFo 11,13からも同様
の操作を行う。Next, one data is taken out from the FiFo 10 of # 0 and sent to the output A, and at the same time, the FiFo of # 1 is output.
One data is also taken out from Fo 12 and sent to the output B.
When this is completed, the same operation is performed from the FiFo 11, 13 of # 2 and # 3.
【0045】この動作を、交互に行うことにより必要と
するデータの組になるように並べ換えを行うものであ
る。従って、図3に示したように、FFTデータ点数
が、0,1,2,〜15で示す16個であって、該データが基数2
のデータであったとすると、該16個のデータを、図3に
示したように、16/2分割し、それぞれのデータ列を、偶
数番目のデータ列である「0,2,4,6,8,10,12,14」(入力
A)と, 奇数番目のデータ列である「1,3,5,7,9,11,13,
15」(入力B)とする。By alternately performing this operation, rearrangement is performed so as to obtain a required data set. Therefore, as shown in FIG. 3, the number of FFT data points is 16 as shown by 0, 1, 2, to 15, and the data has a radix of 2
, The 16 data are divided into 16/2 as shown in FIG. 3, and each data string is divided into even-numbered data strings “0, 2, 4, 6, "8,10,12,14" (input A) and the odd numbered data sequence "1,3,5,7,9,11,13,
15 "(input B).
【0046】この2分割されたデータ点列、入力A,入
力Bを、上記のようにシリアルに並べ換えて、該データ
並べ換え回路 1に入力する。この場合、前述のように、
#0、#2のFiFo 10,11に、シリアルな入力A(0,
2,4,6,8,10,12,14)、入力B(1,3,5,7,9,11,13,15)から
同時にデータを入力し、それぞれのFiFo #0,#1 10,
11が、同時にFFT点数の1/4までデータ (高速フー
リエ変換点数N=16の場合には、図示のように4デー
タ)を格納したのち、#1、#3のFiFo #1,#3 12,
13に、同様にして、該FFT点数の1/4までデータを
格納する。The two-divided data point sequence, the input A and the input B are serially rearranged as described above and input to the data rearrangement circuit 1. In this case, as mentioned above,
The serial input A (0,
2,4,6,8,10,12,14) and input B (1,3,5,7,9,11,13,15) at the same time, and input the data at the same time. ,
11 simultaneously stores data up to 1/4 of the number of FFT points (4 data as shown in the figure when the number of fast Fourier transform points N = 16), and then FiFo # 1 and # 3 12 of # 1 and # 3 12 ,
Similarly, data is stored in 13 up to ¼ of the number of FFT points.
【0047】このときFiFo 10 〜13全体で格納され
るデータ数は、処理できる高速フーリエ変換(FFT)
点数N(=16) に等しい様になる。次に、#0のFiFo
#0 10から1つデータを取り出して、出力Aへ送り、こ
れと同時に#1のFiFo #1 12からもデータを1つ取
り出し、出力Bへ送る。これがすむと、#2、#3のF
iFo 11,13からも同様の操作を行う。At this time, the number of data stored in the entire FiFo 10 to 13 is the fast Fourier transform (FFT) that can be processed.
It becomes equal to the point N (= 16). Next, # 0 FiFo
One data is taken out from # 0 10 and sent to the output A. At the same time, one data is taken out from FiFo # 1 12 of # 1 and sent to the output B. If this is finished, F of # 2 and # 3
Perform the same operation from iFo 11,13.
【0048】このような操作を行うことにより、図3に
示したように、出力A,出力Bには、「0,8 」「1,9 」
「2,10」「3,11」〜の如きデータ列が出力される。これ
は、図19で説明した、FFTデータ点数N=16の場
合、1段目の演算で必要な距離8(=16/2) のデータ点と
の演算が行えることを意味する。By performing such an operation, as shown in FIG. 3, the output A and the output B are "0,8" and "1,9".
Data strings such as "2,10" and "3,11" are output. This means that when the number of FFT data points N = 16 described in FIG. 19, the calculation can be performed with the data points of the distance 8 (= 16/2) required in the first stage calculation.
【0049】図1(b) は、前述のように、本発明の高速
フーリエ変換回路の基本回路を構成しており、該基本回
路の最初のデータ並び換え回路 1で、シリアルに入力さ
れてくる入力データ点を並べ換え、該並べ換えられたデ
ータ点に対して、例えば、入力B側のデータ点に対し
て、ひねり係数をひねり係数乗算回路 2で乗算し、次の
バタフライ演算回路 3で、該ひねり係数の乗算されてい
ない入力Aと、上記ひねれ係数を乗算された入力Bに対
してたすき掛け演算を施すことにより、該距離8のデー
タ点に対して、1段目のフーリエ変換ができることにな
る。As described above, FIG. 1 (b) constitutes the basic circuit of the fast Fourier transform circuit of the present invention, and the first data rearranging circuit 1 of the basic circuit inputs data serially. The input data points are rearranged, and for the rearranged data points, for example, the data point on the input B side is multiplied by the twist coefficient in the twist coefficient multiplication circuit 2, and the twist calculation is performed in the next butterfly operation circuit 3. By performing the multiplication operation on the input A which is not multiplied by the coefficient and the input B which is multiplied by the twist coefficient, the first stage Fourier transform can be performed on the data point of the distance 8. .
【0050】以下、該図1(b) に示した、本発明の基本
回路を、FFTデータ点数がN個の場合には、M=Log2
N(=16) =4段直列に並べて、同じ処理を繰り返すこと
により、最終段において、所期の高速フーリエ変換の結
果を得ることができる。[0050] Hereinafter, as shown in figure 1 (b), the basic circuit of the present invention, when the number of FFT points is N pieces is, M = Log 2
By arranging N (= 16) = 4 stages in series and repeating the same processing, the desired result of the fast Fourier transform can be obtained in the final stage.
【0051】図4は、FFTデータ点数N(=16)に
対して、本発明の高速フーリエ変換の基本回路を4段直
列に並べて、高速フーリエ変換を行ったときのデータの
流れを示したものである。FIG. 4 shows the data flow when the fast Fourier transform is performed by arranging four stages of the basic circuit of the fast Fourier transform of the present invention in series with respect to the number of FFT data points N (= 16). Is.
【0052】図4において、入力A側のデータ点の列
を、A0,A2,A4, 〜, A14 とし、入力B側のデータ点の列
を、A1,A3,A5, 〜,A15とすると、上記データ並べ換え回
路 1での出力データ列は、図示されているように、
「A0,A8 」「A1,A9 」「A2,A10」〜「A7, A15 」とな
り、この並べ換えられたデータ列に対して、ひねり演算
を施した後、バタフライ演算回路(BUT) 3 で、バタフラ
イ演算を施すことにより、距離8に対する高速フーリエ
変換が行われたことになる。In FIG. 4, the sequence of data points on the input A side is A 0 , A 2 , A 4 , ... , A 14, and the sequence of data points on the input B side is A 1 , A 3 , A 5. , ~, A 15 , the output data string in the data rearrangement circuit 1 is, as shown in the figure,
"A 0 , A 8 ""A 1 ,, A 9 ""A 2 ,, A 10 " to "A 7, A 15 " becomes a twist operation on this rearranged data string, and then a butterfly operation By performing the butterfly operation in the circuit (BUT) 3, the fast Fourier transform for the distance 8 is performed.
【0053】このデータ列を「B0,B8 」「B1,B9 」
「B2,B10」〜「B7,B15」とすると、このデータ列を、次
の段の基本回路に入力することにより、該2段目のデー
タ並べ回路 1では、最初の入力データ点列であるA0,A1,
A2, 〜A15 に対して、距離4のデータ列を出力するよう
に動作する。即ち、図4に2段目のデータ並べ換え回路
の出力を見ると、「B0,B4 」「B8,B12」「B1,B5 」〜
「B11,B15 」となり、上記距離4の間で、フーリエ変換
ができるように並べ換えられていることが分かる。This data string is referred to as "B 0 , B 8 ""B 1 , B 9 "
When "B 2, B 10" - "B 7, B 15", the data string, by entering the basic circuit of the next stage, the data arranging circuit 1 of the second stage, the first input data A sequence of points A 0 , A 1,
A 2, operates to output with respect to A 15, a data sequence of length 4. That is, looking at the output of the data rearrangement circuit of the second stage in FIG. 4, "B 0 , B 4 ""B 8 , B 12 ""B 1 , B 5 " ~
It becomes "B 11 , B 15 ", and it can be seen that the distances 4 are rearranged so that the Fourier transform can be performed.
【0054】このデータ点列に対して、ひねり演算を施
した後、バタフライ演算を施すことにより、該距離4に
対するバタフライ演算が施され、中間結果である「C0,C
4 」「C8,C12」「C1,C5 」〜「C11,C15 」が得られる。A twist calculation is performed on this data point sequence, and then a butterfly calculation is performed, whereby the butterfly calculation for the distance 4 is performed, and the intermediate result "C 0 , C" is obtained.
4 "," C 8, C 12, "" C 1, C 5 "-" C 11, C 15 "is obtained.
【0055】以下、同じ、基本回路を使用して、本発明
による高速フーリエ変換を行うことにより、4段目で
は、図示されている如くに、データ並べ回路 1におい
て、最初の入力データ点列であるA0,A1,A2, 〜A15 に対
して、距離1のデータ点列「D0,D 1 」「D2,D3 」「D4,D
5 」〜「D14,D15 」を出力するので、このデータ列に対
して、ひねり演算とバタフライ演算を施すことにより、
E0,E1,E2, 〜E15 で示した高速フーリエ変換の結果を得
ることができる。Hereinafter, the same basic circuit will be used in the present invention.
By performing the fast Fourier transform by
Is in the data reordering circuit 1 as shown.
The first input data point sequence A0, A1,A2,~ A15Against
Then, the data point sequence “D0, D 1"D2, D3"DFour, D
Five」~「 D14, D15Is output.
Then, by applying a twist calculation and a butterfly calculation,
E0, E1,E2,~ E15The result of the fast Fourier transform shown in
You can
【0056】次に、図5によって、FFTデータ点数
が、N=16→N=8になったときの、本発明による高速
フーリエ変換の動作を説明する。本発明においては、F
FTデータ点数が、例えば、N=16のデータ点に対して
高速フーリエ変換ができる回路を、前述のように、基本
回路{図1(b) 参照}を4段直列に接続して構成してお
き、該FFTデータ点数が、N/2=8に減少したとき
には、上記4段構成の高速フーリエ変換回路の最初の1
段目の並べ換え回路 1での並べ換え処理は実行するが、
該1段目のひねり演算と,バタフライ演算とをバイパス
して、2段目の基本回路に入力することにより、FFT
データ点数が、N/2=8になったときの高速フーリエ
変換を行うことができる。Next, the operation of the fast Fourier transform according to the present invention when the number of FFT data points becomes N = 16 → N = 8 will be described with reference to FIG. In the present invention, F
For example, a circuit capable of performing a fast Fourier transform on a data point having FT data points of N = 16 is formed by connecting four stages of basic circuits {see FIG. 1 (b)} in series as described above. When the number of FFT data points is reduced to N / 2 = 8, the first 1 in the fast Fourier transform circuit having the above four-stage configuration.
The rearrangement process in the rearrangement circuit 1 is executed,
By bypassing the first-stage twist calculation and the butterfly calculation and inputting them to the second-stage basic circuit, the FFT
Fast Fourier transform can be performed when the number of data points becomes N / 2 = 8.
【0057】該高速フーリエ変換回路での、上記ひねり
演算と,バタフライ演算のバイパス処理の一例を、図6
によって説明する。図6において、並べ換え処理が行わ
れた2つのデータ点列、入力A,入力Bが入力されてき
たとき、図6(a) に示したように、該ひねり処理を通さ
ないパスをマルチプレクサ(MUX) 20で選択するか、図6
(b) に示したように、該ひねり係数乗算部 2の乗算係数
を“1”とするかにより、該ひねり係数乗算部 2のバイ
パスを行うことができる。FIG. 6 shows an example of bypass processing of the twist calculation and the butterfly calculation in the fast Fourier transform circuit.
Explained by. In FIG. 6, when two rearranged data point sequences, input A and input B, are input, as shown in FIG. 6 (a), a path that does not pass the twist processing is multiplexed (MUX). ) Choose with 20 or Figure 6
As shown in (b), the twist coefficient multiplication unit 2 can be bypassed by setting the multiplication coefficient of the twist coefficient multiplication unit 2 to "1".
【0058】又、図6(a),(b) に示されているように、
バタフライ演算部 3のマルチプレクサ(MUX) 30,31 にお
いて、“0”を選択することにより、該バタフライ演算
部 3をバイパスすることができる。Further, as shown in FIGS. 6 (a) and 6 (b),
By selecting "0" in the multiplexers (MUX) 30 and 31 of the butterfly computing unit 3, the butterfly computing unit 3 can be bypassed.
【0059】図5は、データ点数N=8の場合での、各
段でのデータの流れを示している。先ず、N=8のデー
タ点列の組み「A0,A1,〜A7」と「a0,a1,〜a7」, 〜が入
力されると、1段目のデータ並べ換え回路 1において、
データの並べ換えが行われ、図示されているように、
「A0,a0 」「A1,a1 」〜「A7,a7 」が出力される。この
並べ換え出力に対して、該1段目のひねり演算と,バタ
フライ演算とをバイパスして、2段目の同じデータ並べ
換え部 1に入力する。FIG. 5 shows the data flow in each stage when the number of data points N = 8. First, when a set of N = 8 data points "A 0 , A 1 , ~ A 7 " and "a 0 , a 1 , ~ a 7 ", ~ are input, the first-stage data rearrangement circuit 1 At
The data is reordered and, as shown,
“A 0 , a 0 ”, “A 1 , a 1 ” to “A 7 , a 7 ” are output. With respect to this rearranged output, the twist calculation of the first stage and the butterfly calculation are bypassed and input to the same data rearrangement unit 1 of the second stage.
【0060】この段でのデータ並べ換え部 1でのデータ
並べ換え方法も、1段目と全く同じに作用するので、図
示されている如く、該2段目でのデータ並べ換え結果は
「A0,A4 」「a0,a4 」〜「a3,a7 」となる。Since the data rearrangement method in the data rearrangement section 1 in this stage operates exactly the same as that in the first stage, the data rearrangement result in the second stage is "A 0 , A" as shown in the figure. 4 ”“ a 0 , a 4 ”to“ a 3 , a 7 ”.
【0061】この並べ換えされたデータに対して、前述
の同様に、ひねり演算と, バタフライ演算が施された
後、3段目の同じ基本回路に入力される。このようにし
て、最終段の高速フーリエ変換されたデータ列は、上記
N=8のデータ点列の組毎に高速フーリエ変換されたデ
ータ列として出力される。The rearranged data is subjected to the twist calculation and the butterfly calculation in the same manner as described above, and then input to the same basic circuit in the third stage. In this way, the final-stage fast-Fourier-transformed data sequence is output as a fast-Fourier-transformed data sequence for each set of N = 8 data point sequences.
【0062】同様に、データ点数N=4の場合について
は、図4の1段目,2段目のひねり演算,バタフライ演
算をバイパスすることにより、入力されたデータの組み
毎に高速フーリエ変換されたデータ列を得ることができ
る。(具体例については、省略する)以上のようにし
て、基数2のアルゴリズムを用いた場合、バイパス処理
を行うことによって入力されるデータ点数Nの数が減少
したとしても、同じ高速フーリエ変換回路を用いること
で、正確な高速フーリエ変換処理が行えることを示し
た。Similarly, when the number of data points N = 4, the fast Fourier transform is performed for each set of input data by bypassing the twist calculation and butterfly calculation in the first and second stages of FIG. It is possible to obtain a data string that has (Specific examples are omitted.) As described above, when the radix-2 algorithm is used, even if the number of input data points N is reduced by performing bypass processing, the same fast Fourier transform circuit is used. It was shown that accurate fast Fourier transform processing can be performed by using it.
【0063】次に、図7〜図14によって、本発明の他
の実施例について説明する。図7,図8は、図3で説明
した、本発明の一つであるデータ並べ替え回路部とは異
なる他のデータ並べ替え回路部(この並べ替え回路部
を、並べ替え回路Bと呼ぶ)の構成例である。この構成
例においては、先ず、データ点列、入力A,入力Bから
#1のFiFo 40,#0のFiFo 41 に、データを、
該フーリエ変換に必要とする距離(本実施例では、例え
ば、距離2)迄記憶させる。{図7(a)参照}これが済
むと、#1のFiFo 40 から記憶した順にデータを出
力Aに出力し、入力Aからのデータをマルチプレクサ(M
UX2) 43 を通して出力Bに出力する。これと同時に、#
0のFiFo 41 に記憶したデータを、マルチプレクサ
(MUX1)42 を通して#1のFiFo 40 に送り、入力B
からのデータを#0のFiFo41 に記憶する。{図7
(b) 参照}そして、#1のFiFo 40 から入力Aのデ
ータを出力し終わると、#0のFiFo 41 から入力さ
れたデータを出力Aに出力し、#0のFiFo 41 から
のデータをマルチプレクサ(MUX2) 43 を通して出力Bに
出力する。{図8(c),(d)参照}以上のようにして必要
とするデータの組になるように並べ替えを行う方法であ
る。Next, another embodiment of the present invention will be described with reference to FIGS. 7 and 8 are different from the data rearranging circuit unit according to the present invention described with reference to FIG. 3 and other data rearranging circuit unit (this rearranging circuit unit is referred to as rearranging circuit B). It is a configuration example of. In this configuration example, first, data is input from the data point sequence, input A, and input B to # 1 FiFo 40 and # 0 FiFo 41.
The distance required for the Fourier transform (for example, distance 2 in this embodiment) is stored. {See FIG. 7 (a)} When this is completed, the data from the FiFo 40 of # 1 is output to the output A in the order stored, and the data from the input A is output to the multiplexer (M
Output to output B through UX2) 43. At the same time, #
Data stored in the FiFo 41 of 0
Send to # 1 FiFo 40 through (MUX1) 42 and input B
The data from is stored in FiFo41 of # 0. {Fig. 7
(b)} Then, when the output of the input A data from the # 1 FiFo 40 is completed, the data input from the # 0 FiFo 41 is output to the output A, and the data from the # 0 FiFo 41 is multiplexed. Output to output B through (MUX2) 43. {Refer to FIGS. 8 (c) and 8 (d)} This is a method of rearranging so as to obtain a required data set.
【0064】この並べ替え回路Bだけを使用した並べ替
え動作により、該フーリエ変換ができる様子を、データ
点数N=16の場合について、図9で簡単に説明する。
データ点数N=16であるので、1段目での距離は8で
あればよい。以下同様に、2段目での距離は4となり、
3段目での距離は2となり、4段目での距離は1とな
る。従って、該並べ替え回路2でのFiFoの深さは、
1段目から順に、8,4,2,1となる。The manner in which the Fourier transform can be performed by the rearrangement operation using only the rearrangement circuit B will be briefly described with reference to FIG. 9 in the case where the number of data points N = 16.
Since the number of data points N = 16, the distance in the first stage may be 8. Similarly in the following, the distance in the second stage is 4,
The distance in the third row is 2, and the distance in the fourth row is 1. Therefore, the depth of FiFo in the rearrangement circuit 2 is
From the first stage, the number becomes 8, 4, 2, 1.
【0065】このときの1段目から4段目までのデータ
の流れを図9に示す。該並べ替え回路Bでは、上記図
7,図8に示した動作をするので、1段目においては、
入力A 1 と入力B1 には、予め、期待通りの出力が得ら
れるように、図示されているように、該入力A1 には1
つ目の組のデータ列(大文字Ai で示す) を、入力B1
には2つ目の組のデータ列(小文字aで示す)を入力す
る。このようなデータ列を該並べ替え回路Bに入力する
為には、2組のデータ列を貯めておき、必要に応じ取り
出すように操作する必要がある。Data from the first to fourth rows at this time
The flow of FIG. In the rearrangement circuit B,
7. Since the operation shown in FIG. 8 is performed, in the first stage,
Input A 1And input B1In advance, the expected output was obtained.
As shown, the input A1For 1
Data string of the second set (capital letter AiInput)1
Enter the second set of data strings (shown in lowercase a)
It Input such a data string into the rearrangement circuit B.
In order to store two sets of data,
It is necessary to operate so as to put it out.
【0066】2段目以降は、順次前段の出力データ列を
入力することにより、該フーリエ変換に必要なデータ列
が得られることは、図示されているとおりである。然し
て、この並べ替え回路Bを使用する場合には、1段目に
入力するデータ列を図9に示したデータ列とする必要が
ある。As shown in the figure, from the second stage onward, the data sequence required for the Fourier transform can be obtained by successively inputting the output data sequence of the previous stage. However, when the rearrangement circuit B is used, the data string input in the first stage needs to be the data string shown in FIG.
【0067】そこで、図4に示したように、入力データ
点数NをN/2分割(但し、2は、基数)し、該分割さ
れた入力データ点数をシリアルに並べた2入力のデータ
を入力するだけで、該フーリエ変換ができるようにする
ために、該1段目に、前述の図3に示した、本発明のデ
ータ並べ替え回路 (このデータ並べ替え回路部を、以降
では、単に、並べ替え回路Aと呼ぶ)を使用する。Therefore, as shown in FIG. 4, the number of input data points N is divided into N / 2 (where 2 is a radix), and two input data obtained by serially arranging the divided input data points are input. In order to enable the Fourier transform by simply performing the above, the data rearrangement circuit of the present invention shown in FIG. 3 described above (this data rearrangement circuit unit will be referred to simply as The sorting circuit A) is used.
【0068】図10は、該並べ替え回路Aを1段目に使
用し、2段目以降は、上記並べ替え回路Bを使用するこ
とで、データ点数N=16の場合のフーリエ変換ができ
ることを示したものである。各段でのデータの流れにつ
いては、それぞれ、図3と,図7,図8に示した並べ替
え回路A,Bの構成から明らかであるので、詳細な説明
は省略する。FIG. 10 shows that the rearrangement circuit A is used in the first stage and the second and subsequent stages are used in the rearrangement circuit B, whereby the Fourier transform in the case of the number of data points N = 16 can be performed. It is shown. The data flow in each stage is clear from the configurations of the rearrangement circuits A and B shown in FIG. 3, FIG. 7, and FIG. 8, respectively, and thus detailed description thereof will be omitted.
【0069】次に、該図10に示した高速フーリエ変換
回路においても、データ点数がN/2,N/4,〜にな
ったときでも、バイパス処理を行うことによって、前述
の図5で説明したと同様のフーリエ変換ができることを
以下に説明する。Next, also in the fast Fourier transform circuit shown in FIG. 10, even when the number of data points becomes N / 2, N / 4, ... It will be described below that the same Fourier transform can be performed.
【0070】データ点数が減少しても、正しくフーリエ
変換を行うためには、前述のバイパス処理を行うことに
よって可能となる。その基本的な考え方は、データ点数
N=16のとき、並べ替え,ひねり係数乗算,バタフラ
イ演算を、それぞれ4回行っていた。Even if the number of data points is reduced, it is possible to correctly perform the Fourier transform by performing the above-mentioned bypass processing. The basic idea is that, when the number of data points N = 16, the rearrangement, the twist coefficient multiplication, and the butterfly operation are performed four times each.
【0071】データ点数N=8の場合には、それぞれを
3回行えばよく、各段でのデータの並びが必要とされる
組にさえなっていれば、ひねり係数乗算,バタフライ演
算はどの段で行ってもよい。When the number of data points N = 8, each step may be performed three times, and as long as the arrangement of the data in each stage is a set that requires twist coefficient multiplication and butterfly computation, which stage is used. You may go in.
【0072】1)並べ替え回路Bのみで構成されている
場合:この場合は、図11に示したように、1段目で
は、並べ替え,ひねり係数乗算,バタフライ演算を全く
行わず、2段目から各処理を実行するように制御する。
このような処理方法を、本実施例ではバイパス方法1と
呼ぶ。1) When only the rearrangement circuit B is used: In this case, as shown in FIG. 11, in the first stage, the rearrangement, the twist coefficient multiplication, and the butterfly operation are not performed at all, and the second stage is performed. Control to execute each process from the eyes.
Such a processing method is called a bypass method 1 in this embodiment.
【0073】このバイパス方法1により、3回の並べ替
え,ひねり係数乗算,バタフライ演算が行われるので、
図11から明らかなように、データ点数N=8について
も、高速フーリエ演算を行うことができる。By this bypass method 1, the rearrangement, the twist coefficient multiplication, and the butterfly operation are performed three times.
As is apparent from FIG. 11, the fast Fourier calculation can be performed for the data point number N = 8.
【0074】2)並べ替え回路Aと,並べ替え回路Bと
を組合わせた場合: (1) 1段目のFiFoの深さを、データ点数N=16の
場合と同じとした場合(固定長) この場合、該1段目のFiFoに2組分のデータが蓄え
ることができる。図12に示したように、この場合、1
段目の並べ替え回路1から出力されるデータは、それぞ
れの2組のデータ点列について、未だ必要とする組合わ
せになっていないので、ひねり係数乗算,バタフライ演
算を行わない。2) When rearrangement circuit A and rearrangement circuit B are combined: (1) When the depth of the first stage FiFo is the same as when the number of data points N = 16 (fixed length) In this case, two sets of data can be stored in the first-stage FiFo. In this case, as shown in FIG.
Since the data output from the rearrangement circuit 1 of the second stage is not in a required combination for each of the two sets of data point sequences, the twist coefficient multiplication and the butterfly operation are not performed.
【0075】このような、データ点列のデータの並べ替
えを行うが、ひねり係数乗算,バタフライ演算を行わな
いバイパス処理をバイパス方法2と呼ぶ。このバイパス
方法2では、図12に示したように、1段目は、並べ替
えのみを行って、ひねり係数乗算,バタフライ演算をバ
イパスするが、2段目以降では、通常の並べ替え,ひね
り係数乗算,バタフライ演算を行って、データ点列N=
8の高速フーリエ演算を行うものである。Such bypass processing that rearranges the data of the data point sequence but does not perform the twist coefficient multiplication and the butterfly operation is called bypass method 2. In this bypass method 2, as shown in FIG. 12, only the rearrangement is performed in the first stage to bypass the twist coefficient multiplication and the butterfly operation, but in the second stage and thereafter, the normal rearrangement and the twist coefficient are performed. Data point sequence N =
8 fast Fourier calculation is performed.
【0076】(2) 1段目のFiFoの深さを、データ点
数N=8に合わせて浅くした場合(可変長) この場合、図13に示されているように、1段目のFi
Foには1組分のデータが蓄えられる。1段目の並べ替
え回路Aから出力されるデータは、フーリエ変換を行う
のに必要な組合わせとなっているので、バイパス方法と
して、以下の2つの方法に分けられる。(2) When the depth of the first-stage FiFo is made shallow according to the number of data points N = 8 (variable length) In this case, as shown in FIG.
One set of data is stored in Fo. The data output from the first-stage rearrangement circuit A has a combination necessary for performing the Fourier transform, and thus can be divided into the following two methods as a bypass method.
【0077】その1:1段目で必要とされる組ができて
いるので、ひねり係数乗算,バタフライ演算を行い、2
段目では全く何もしないで、全段で3回のデータ並べ替
え,ひねり係数乗算,バタフライ演算を行うことで,デ
ータ点列N=8の高速フーリエ変換を行うものである。
このバイパス方法をバイパス方法3と呼ぶ。図13は、
このバイパス方法3による場合の各段でのデータの流れ
を示している。Since the set required in the 1st: 1st stage is formed, the twist coefficient multiplication and the butterfly operation are performed, and 2
The fast Fourier transform of the data point sequence N = 8 is performed by performing data rearrangement, twist coefficient multiplication, and butterfly operation three times in all stages without doing anything at the stage.
This bypass method is called bypass method 3. Figure 13
The flow of data in each stage in the case of this bypass method 3 is shown.
【0078】その2:1段目で必要とされる組ができて
いるが、該1段目では、ひねり係数乗算,バタフライ演
算を行わないで、2段目で、該データの並べ替えを行わ
ないで、ひねり係数乗算,バタフライ演算のみを行うこ
とで、データ点列N=8の高速フーリエ変換を行うもの
である。このバイパス方法をバイパス方法4と呼ぶ。図
14は、このバイパス方法3による場合の各段でのデー
タの流れを示している。Part 2: Although the set required in the first stage is formed, in the first stage, the twist coefficient multiplication and the butterfly operation are not performed, and the data is rearranged in the second stage. Instead, the fast Fourier transform of the data point sequence N = 8 is performed by performing only the twist coefficient multiplication and the butterfly operation. This bypass method is called bypass method 4. FIG. 14 shows the data flow in each stage in the case of this bypass method 3.
【0079】以上の図11〜図14で説明したバイパス
方法1〜4を要約すると、 バイパス方法1:ある段では、データの並べ替え,ひね
り係数乗算,バタフライ演算を行わないで、バイパスす
ることで、データ点列数がN/R(Rは基数)になった
ときのフーリエ変換をデータ点列数Nのフーリエ変換回
路で行う。To summarize the bypass methods 1 to 4 described with reference to FIGS. 11 to 14, the bypass method 1: By performing bypass at a certain stage, data rearrangement, twist coefficient multiplication, and butterfly operation are not performed. , When the number of data points is N / R (R is a radix), the Fourier transform circuit having the number N of data points is used.
【0080】バイパス方法2:ある段、例えば、1段目
でデータの並べ替えを行うが、必要とする組合わせにな
っていない場合、ひねり係数乗算,バタフライ演算を行
わないバイパス処理を行い、以降の段で、通常のデータ
の並べ替え,ひねり係数乗算,バタフライ演算を行うこ
とで、データ点列数がN/R(Rは基数)になったとき
のフーリエ変換を、該データ点列数Nのフーリエ変換回
路で行う。Bypass method 2: The data is rearranged at a certain stage, for example, the first stage, but when the combination is not the required combination, the bypass process without the twist coefficient multiplication and the butterfly operation is performed. By performing normal data rearrangement, twist coefficient multiplication, and butterfly operation at the stage, the Fourier transform when the number of data point sequences becomes N / R (R is a radix) Fourier transform circuit.
【0081】バイパス方法3:データ点列数Nのフーリ
エ変換回路において、例えば、1段目で、データの並べ
替えを行い、必要な組ができているとき、ひねり係数乗
算,バタフライ演算を行い、2段目でデータの並べ替
え,ひねり係数乗算,バタフライ演算をバイパスするこ
とで、データ点列数がN/R(Rは基数)になったとき
のフーリエ変換を、該データ点列数Nのフーリエ変換回
路で行う。Bypass method 3: In the Fourier transform circuit having the number N of data points, for example, the data is rearranged at the first stage, and when the necessary set is formed, the twist coefficient multiplication and the butterfly operation are performed. By performing data rearrangement, twist coefficient multiplication, and butterfly computation in the second stage, the Fourier transform when the number of data points becomes N / R (R is a radix) It is performed by the Fourier transform circuit.
【0082】バイパス方法4:データ点列数Nのフーリ
エ変換回路において、例えば、1段目で、データの並べ
替えを行い、必要な組ができているが、ひねり係数乗
算,バタフライ演算を行うことなく、次の段に流し、2
段目で、データの並べ替えをバイパスして、ひねり係数
乗算,バタフライ演算を行うことで、データ点列数がN
/R(Rは基数)になったときの高速フーリエ変換を、
該データ点列数Nのフーリエ変換回路で行う。Bypass method 4: In the Fourier transform circuit having the number N of data points, for example, the data is rearranged in the first stage to form a necessary set, but the twist coefficient multiplication and the butterfly operation are performed. No, let it flow to the next stage, 2
By performing the twist coefficient multiplication and the butterfly operation by bypassing the data rearrangement at the stage, the number of data points becomes N.
/ R (where R is the radix) is the fast Fourier transform,
This is performed by a Fourier transform circuit having the number N of data points.
【0083】このように、他のデータ並べ替え回路(並
べ替え回路B)のみを使用しても、又は、1段目には、
本発明の並べ替え回路Aを使用し、2段目以降には、並
べ替え回路Bを使用した場合においても、例えば、デー
タ点列N=16のフーリエ変換を4段構成のフーリエ変
換回路で行うことができ、更に、例えば、データ点列N
=8の場合は、データの並べ替え,ひねり係数乗算,バ
タフライ演算を、必要な段で3回行うようにすること
で、データ点列数がN/R(Rは基数)になったときの
高速フーリエ変換を、該データ点列数Nのフーリエ変換
回路で行うことができる。As described above, even when only another data rearrangement circuit (rearrangement circuit B) is used, or in the first stage,
Even when the rearrangement circuit A of the present invention is used and the rearrangement circuit B is used after the second stage, for example, the Fourier transform of the data point sequence N = 16 is performed by the four-stage Fourier transform circuit. Further, for example, the data point sequence N
= 8, data rearrangement, twist coefficient multiplication, and butterfly calculation are performed three times at required stages, so that the number of data points becomes N / R (R is a radix). The fast Fourier transform can be performed by a Fourier transform circuit having the number N of data points.
【0084】次に、基数4の場合でも、同様にして,高
速フーリエ変換の処理が行えることを、図15〜図18
によって、簡単に説明する。図15は、基数4の場合
の、高速フーリエ変換の基本演算の様子を示したもので
ある。図15において、W1,W2,〜は、前述のひねり係
数である。Next, in the case of the radix 4 as well, it is possible to perform the processing of the fast Fourier transform in the same manner as shown in FIGS.
Will be briefly explained. FIG. 15 shows a state of the basic operation of the fast Fourier transform in the case of the radix-4. In FIG. 15, W 1 , W 2 , ... Are the aforementioned twist coefficients.
【0085】基数4の場合の高速フーリエ変換のアルゴ
リズムは、FFT点数が4のべき乗を対象にしており、
1回の基本演算でFFT点数のうち4点分を1回の基本
演算で処理するもので、データ間の距離はN/4づつ離
れた組どうしで、N/16、N/64・・4と処理がす
すむごとに距離が縮まり、最終的に、距離が1離れたデ
ータどうしで行われるまでくりかえされる。このアルゴ
リズムで用いられる基本演算は図15のようになる。こ
こでx(0),x(1),x(2), x(3)はFFT点入力データであ
り、X(0),X(1),X(2),X(3) は出力を表す。The algorithm of the fast Fourier transform in the case of the radix-4 is for the power of 4 of the FFT score,
Four basic FFT points are processed in one basic calculation in one basic calculation. The distance between data is N / 16, N / 64, ... As the processing progresses, the distance is shortened, and finally, the data is repeated until the distance is one data. The basic calculation used in this algorithm is as shown in FIG. Where x (0), x (1), x (2), x (3) are FFT point input data, and X (0), X (1), X (2), X (3) are output Represents
【0086】したがって、基本回路構成は図16のよう
になる。この基本回路をM個(M=Log4 N)直列に
組合わせることで基数4の高速フーリエ変換が行える。
N=64の場合を具体例として説明する。64=43 で
あるから、基本回路は3つでよい。この場合は、基数2
の場合と同様に、1段目、2段目、3段目で、データの
並べ替え、ひねり係数乗算、基本演算をを行い、3段目
の出力が高速フーリエ変換された出力となる。この時の
データの流れを図17に示す。(詳細な説明は省略す
る。) N=16となった場合を考えると、16=42 であるか
ら、基本回路は2段あればよい。この場合も、基数2と
同様に1段目で基数2の場合と同様のバイパス処理を行
うことにより、正確な高速フーリエ変換結果が得られ
る。詳細は省略する。Therefore, the basic circuit configuration is as shown in FIG. By combining this basic circuit in M (M = Log 4 N) series, a radix-4 fast Fourier transform can be performed.
A case where N = 64 will be described as a specific example. Since 64 = 4 3, the basic circuit good 3 Tsude. In this case, the radix-2
In the same manner as in the above case, data rearrangement, twist coefficient multiplication, and basic calculation are performed in the first, second, and third stages, and the output of the third stage becomes the output obtained by the fast Fourier transform. The data flow at this time is shown in FIG. (Detailed description is omitted.) Considering the case of N = 16, since 16 = 4 2 , the basic circuit may have two stages. Also in this case, an accurate fast Fourier transform result can be obtained by performing the same bypass processing as in the case of the radix 2 in the first stage as in the case of the radix 2. Details are omitted.
【0087】図18は、基数4の場合の、データ並べ換
え回路部の一例を示したもので、基本的には、図3に示
した基数2の場合と同じである。即ち、まず#0〜#3
のFiFo 10,〜13に、シリアルな入力A〜Dから同時
にデータを入力し、それぞれのFiFo 10,〜13が、同
時にFFT点数の1/4までデータ (高速フーリエ変換
点数N=64の場合には、4データ)を格納したのち、
#4〜#7,#8〜#11,#12〜#15のFiFo
14,〜115 に、同様にして、該FFT点数の1/4まで
データを格納する。このときFiFo 10〜115 全体で
格納されるデータ数は、処理できる高速フーリエ変換
(FFT)点数N(=64) に等しい様にしてある。FIG. 18 shows an example of the data rearrangement circuit section in the case of the radix-4, which is basically the same as the case of the radix-2 shown in FIG. That is, first # 0 to # 3
Data are simultaneously input from serial inputs A to D to the respective FiFo 10, to 13, and each FiFo 10, to 13 simultaneously receives data up to ¼ of the number of FFT points (when the number of fast Fourier transform points N = 64). Stored 4 data),
Fifo of # 4 to # 7, # 8 to # 11, # 12 to # 15
Similarly, the data is stored in 14 to 115 up to ¼ of the FFT score. At this time, the number of data stored in the entire FiFo 10 to 115 is set to be equal to the number of fast Fourier transform (FFT) points N (= 64) that can be processed.
【0088】次に、#0のFiFo 10 から1つデータ
を取り出して、出力Aへ送り、これと同時に#4のFi
Fo 14 からもデータを1つ取り出し、出力Bへ送る。
いかこの動作を繰り返して、♯8のFiFo 18,#12
のFiFo 112からデータを1つ取り出して、それぞ
れ、出力C,出力Dへ送る。Next, one data is taken out from the FiFo 10 of # 0 and sent to the output A, and at the same time, the FiFo of # 4 is output.
One data is also fetched from Fo 14 and sent to the output B.
Repeat the operation of the squid, Fifo # 8, # 12
One of the data is taken out from the FiFo 112 of and is sent to the output C and the output D, respectively.
【0089】これがすむと、#1〜#13のFiFo 1
1,〜113 等からも同様の操作を行う。この動作を、交互
に行うことにより必要とするデータの組になるように並
べ換えを行うことができる。When this is completed, Fifo 1 of # 1 to # 13
Do the same from 1, 1 to 113 etc. By performing this operation alternately, rearrangement can be performed so as to obtain a required data set.
【0090】尚、図18において、#0,#4,#1,
#5の部分が、図3に示した基数2の場合のデータ点列
に対するデータ並べ回路部 1に対応する。本基数4の場
合のデータ並べ回路部は、該図3の回路を単に、基数4
の場合に拡張したものに過ぎない。従って、前述のよう
に、基数2の場合と同様のデータ並べ換え処理を行うこ
とになる。Incidentally, in FIG. 18, # 0, # 4, # 1,
The part # 5 corresponds to the data arrangement circuit unit 1 for the data point sequence in the case of the radix 2 shown in FIG. The data arranging circuit unit in the case of the radix-4 is simply the circuit of FIG.
It's just an extension of. Therefore, as described above, the data rearrangement processing similar to the case of the radix-2 is performed.
【0091】以上のようにして、基数4でも入力される
FFT点数が減少しても正確な高速フーリエ変換処理が
行えることを示した。このように、本発明は、処理する
FFT点数がNである高速フーリエ変換を行う回路であ
って、入力データ点数NをN/R(但し、Rは基数)
し、該分割された入力データ点数をシリアルに並べて、
R入力のデータ並べ替え部分、ひねり係数乗算部分、バ
タフライ演算部分からなる基本回路に入力し、該基本回
路を1段として、この段をM個(M=logR N)直列
に並べて、高速フーリエ変換を行うように構成し、入力
部分からK段(K<M)をバイパスすることによって、
FFT点数がN/R、N/R2 ・・・Rと減少させたと
きも、同じ回路で高速フーリエ変換を行うようにしたと
ころに特徴がある。As described above, it has been shown that accurate fast Fourier transform processing can be performed even with a radix of 4 even if the number of input FFT points is reduced. Thus, the present invention is a circuit for performing a fast Fourier transform in which the number of FFT points to be processed is N, and the number N of input data points is N / R (where R is a radix).
Then, the divided input data points are serially arranged,
Sorting data portion of the R input, twiddle factor multiplication portion, and input to the basic circuit consisting of the butterfly operation section, as one stage the basic circuit, by arranging this stage into M (M = log R N) in series, Fast Fourier By configuring to perform the conversion and bypassing the K stage (K <M) from the input part,
The feature is that the fast Fourier transform is performed by the same circuit even when the number of FFT points is reduced to N / R, N / R 2 ... R.
【0092】[0092]
【発明の効果】以上、詳細に説明したように、本発明の
高速フーリエ変換回路は、処理するFFT点数がNであ
る高速フーリエ変換を行う回路であって、入力データ点
数NをN/R(但し、Rは基数)し、該分割された入力
データ点数をシリアルに並べて、R入力のデータ並べ替
え回路 1、ひねり係数乗算回路 2、バタフライ演算回路
3からなる基本回路に入力し、該基本回路を1段とし
て、この段をM個(M=logR N)直列に並べて、高
速フーリエ変換を行うように構成し、入力部分からK段
(K<M)をバイパスすることによって、FFT点数が
N/R、N/R2 ・・・Rと減少させたときも、同じ回
路で、FFT点数がN/RK の高速フーリエ変換の処理
を行うようにしたものであるので、最大入力データ数が
Nとなっている、例えば、基数2の高速フーリエ変換を
行う回路で、データの入力数がN/2、N/4、・・・
2と減少していっても、該基数2のアルゴリズムの高速
フーリエ変換が行える点が最大の効果である。これは、
今までに無かった高速フーリエ変換回路であり、多様な
入力数Nで高速フーリエ変換処理を必要とする場合に、
単一のハードウエアで実現が可能となり、物量の削減等
に効果を発揮できる。As described above in detail, the fast Fourier transform circuit of the present invention is a circuit for performing a fast Fourier transform in which the number of FFT points to be processed is N, and the number N of input data points is N / R ( However, R is a radix, and the divided input data points are serially arranged to form an R input data rearrangement circuit 1, a twist coefficient multiplication circuit 2, a butterfly operation circuit.
Enter the basic circuit consisting of 3, as one stage the basic circuit, by arranging this stage into M (M = log R N) in series, and configured to perform a fast Fourier transform, K stages from an input portion (K By bypassing <M), even when the FFT score is reduced to N / R, N / R 2 ... R, the same circuit performs the fast Fourier transform process with the FFT score of N / R K. Therefore, the maximum number of input data is N, for example, in a circuit that performs a fast Fourier transform of radix 2, the number of input data is N / 2, N / 4, ...
Even if the number decreases to 2, the maximum effect is that the fast Fourier transform of the radix-2 algorithm can be performed. this is,
It is a fast Fourier transform circuit that has never existed before, and when fast Fourier transform processing is required with various input numbers N,
It can be realized with a single hardware, and can be effective in reducing the amount of material.
【図1】本発明の原理説明図(その1)FIG. 1 is an explanatory diagram (1) of the principle of the present invention.
【図2】本発明の原理説明図(その2)FIG. 2 is an explanatory diagram of the principle of the present invention (No. 2)
【図3】本発明の一実施例を示した図(その1)FIG. 3 is a diagram showing an embodiment of the present invention (No. 1).
【図4】本発明の一実施例を示した図(その2)FIG. 4 is a diagram showing an embodiment of the present invention (part 2).
【図5】本発明の一実施例を示した図(その3)FIG. 5 is a diagram showing an embodiment of the present invention (part 3).
【図6】本発明の一実施例を示した図(その4)FIG. 6 is a diagram showing an embodiment of the present invention (No. 4).
【図7】本発明の他の実施例を示した図(その1)FIG. 7 is a diagram showing another embodiment of the present invention (No. 1).
【図8】本発明の他の実施例を示した図(その2)FIG. 8 is a diagram showing another embodiment of the present invention (No. 2).
【図9】本発明の他の実施例を示した図(その3)FIG. 9 is a diagram showing another embodiment of the present invention (part 3).
【図10】本発明の他の実施例を示した図(その4)FIG. 10 is a diagram showing another embodiment of the present invention (Part 4).
【図11】本発明の他の実施例を示した図(その5)FIG. 11 is a diagram showing another embodiment of the present invention (No. 5).
【図12】本発明の他の実施例を示した図(その6)FIG. 12 is a diagram showing another embodiment of the present invention (No. 6).
【図13】本発明の他の実施例を示した図(その7)FIG. 13 is a diagram showing another embodiment of the present invention (No. 7).
【図14】本発明の他の実施例を示した図(その8)FIG. 14 is a view showing another embodiment of the present invention (No. 8).
【図15】本発明の基数4の実施例を示した図(その
1)FIG. 15 is a diagram showing a radix-4 embodiment of the present invention (No. 1).
【図16】本発明の基数4の実施例を示した図(その
2)FIG. 16 is a diagram showing a radix-4 embodiment of the present invention (No. 2).
【図17】本発明の基数4の実施例を示した図(その
3)FIG. 17 is a diagram showing a radix-4 embodiment of the present invention (part 3).
【図18】本発明の基数4の実施例を示した図(その
4)FIG. 18 is a diagram showing a radix-4 embodiment of the present invention (No. 4).
【図19】従来の高速フーリエ変換回路を説明する図FIG. 19 is a diagram illustrating a conventional fast Fourier transform circuit.
1 データ並べ替え回路部,並べ替え回路A,B 2 ひねり係数乗算部,ひねり係数乗算回路 10〜115 先入れ先出し回路(FiFo #1〜) 21 マルチプレクサ(MUX) 3 バタフライ演算部(BUX),バタフライ演算回路 30,31 マルチプレクサ(MUX) 40,41 先入れ先出し回路(FiFo #1,#0) 42,43 マルチプレクサ(MUX 1,2) 1 Data rearrangement circuit unit, rearrangement circuits A and B 2 Twist coefficient multiplication unit, Twist coefficient multiplication circuit 10 to 115 First-in first-out circuit (FiFo # 1 to) 21 Multiplexer (MUX) 3 Butterfly operation unit (BUX), Butterfly operation circuit 30,31 Multiplexer (MUX) 40,41 First-in first-out circuit (FiFo # 1, # 0) 42,43 Multiplexer (MUX 1,2)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 森田 昇 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 久保 慎一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Noboru Morita 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited (72) Inventor Shinichi Kubo, 1015, Kamikodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited
Claims (6)
Nについて、高速フーリエ変換を行う回路であって、 上記入力データ点数NをN/R分割(Rは、基数)し、
該分割された入力データ点数をシリアルに並べたR入力
のデータを、データ並べ回路部(1) と, ひねり係数乗算
部(2) と, バタフライ演算部(3) とから構成されたR入
力の高速フーリエ変換の基本回路に入力し、該R入力の
高速フーリエ変換の基本回路を1段として、この段をM
個(M=logR N)(Rは、基数) 直列に並べて高速フ
ーリエ変換を行うように構成し、 該データ並べ回路部(1) は、上記入力データ点数Nに対
して、上記1段目では、N/R離れたデータ間で、2段
目では、N/R2 離れたデータ間で、3段目では、N/
R3 離れたデータ間で、最終段では、お互いに1つ離れ
たデータ間で、たすき掛け演算を行い、 該ひねり係数乗算部(2) は、R入力の内のR−1個の入
力に対してひねり係数を乗算し、 該バタフライ演算部(3) は、上記ひねり係数を乗算され
ない入力と、上記ひねり係数を乗算された入力とでたす
き掛け演算を行い、 上記M段からなる高速フーリエ変換回路の入力部分から
K段(K<M)をバイパスすることによって、上記高速
フーリエ変換(FFT)点数がN/RK の高速フーリエ
変換を行うことを特徴とする可変高速フーリエ変換回
路。1. A circuit for performing a fast Fourier transform on a fast Fourier transform (FFT) score N to be processed, wherein the input data score N is divided into N / R (R is a radix),
The R input data obtained by serially arranging the divided input data points is converted into an R input data composed of a data arranging circuit unit (1), a twist coefficient multiplying unit (2), and a butterfly computing unit (3). It is input to the basic circuit of the fast Fourier transform, the basic circuit of the fast Fourier transform of the R input is defined as one stage, and this stage is set to M
Number (M = log R N) ( R is radix) configured to perform a fast Fourier transform are arranged in series, the data arranging circuit section (1), relative to the input data points N, the first stage in, among N / R remote data, in the second stage, between N / R 2 distant data, in the third stage, N /
In the final stage, the data is separated from each other by R 3 , and in the final stage, the crossing operation is performed between the data separated from each other, and the twist coefficient multiplication unit (2) outputs R-1 inputs among the R inputs. Multiply by a twist coefficient, the butterfly operation unit (3) performs a multiplication operation with an input that is not multiplied by the twist coefficient and an input that is multiplied by the twist coefficient, and a fast Fourier transform consisting of the M stages. A variable fast Fourier transform circuit, characterized in that the fast Fourier transform (FFT) point N / R K is performed by bypassing K stages (K <M) from the input part of the circuit.
路におけるバイパス処理であって、上記1段目におい
て、N/R*2K 離れたデータの組を取り出しておき、
ある段では、データの並べ替え,ひねり係数乗算,バタ
フライ演算を行わないで、K段バイパスすることで、デ
ータ点列数がN/RK (Rは基数)になったときのフー
リエ変換を、データ点列数Nのフーリエ変換回路で行う
ことを特徴とする可変高速フーリエ変換回路。2. The bypass processing in the variable fast Fourier transform circuit according to claim 1, wherein in the first stage, a data set separated by N / R * 2 K is taken out,
By performing K stage bypass without performing data rearrangement, twist coefficient multiplication, or butterfly operation at a certain stage, the Fourier transform when the number of data points becomes N / R K (R is a radix) A variable fast Fourier transform circuit characterized by being performed by a Fourier transform circuit having a number of data points N.
路におけるバイパス処理であって、ある段でデータの並
べ替えを行うが、必要とする組合わせになっていない場
合、通常のデータの並べ替えは行うが、ひねり係数乗
算,バタフライ演算を行わないバイパス処理をK段行
い、以降の段で、通常のデータの並べ替え,ひねり係数
乗算,バタフライ演算を行うことで、データ点列数がN
/RK (Rは基数)になったときのフーリエ変換を、該
データ点列数Nのフーリエ変換回路で行うことを特徴と
する可変高速フーリエ変換回路。3. The variable fast Fourier transform circuit according to claim 1, wherein the data is rearranged at a certain stage, and when the combination is not required, normal data rearrangement is performed. The number of data point sequences is N by performing K stages of bypass processing that does not perform twist coefficient multiplication and butterfly operation, but performs normal data rearrangement, twist coefficient multiplication, and butterfly operation in subsequent steps.
A variable fast Fourier transform circuit, characterized in that the Fourier transform when / R K (R is a radix) is performed by a Fourier transform circuit having the number N of data point sequences.
路におけるバイパス処理であって、ある段で、データの
並べ替えを行い、必要な組ができているとき、ひねり係
数乗算,バタフライ演算を行い、以降の段で、データの
並べ替え,ひねり係数乗算,バタフライ演算をK段バイ
パスすることで、データ点列数がN/RK (Rは基数)
になったときのフーリエ変換を、該データ点列数Nのフ
ーリエ変換回路で行うことを特徴とする可変高速フーリ
エ変換回路。4. A bypass process in the variable fast Fourier transform circuit according to claim 1, wherein data is rearranged at a certain stage, and when a necessary set is formed, twist coefficient multiplication and butterfly operation are performed. By performing data rearrangement, twist coefficient multiplication, and butterfly calculation by K stages in subsequent stages, the number of data point sequences is N / R K (R is a radix)
The variable fast Fourier transform circuit is characterized in that the Fourier transform is performed by a Fourier transform circuit having the number N of data points.
路におけるバイパス処理であって、ある段で、データの
並べ替えを行い、必要な組ができているが、ひねり係数
乗算,バタフライ演算を行うことなく、次の段に流し、
データの並べ替えをバイパスして、ひねり係数乗算,バ
タフライ演算のみを行い、以降の段で、データの並べ替
え,ひねり係数乗算,バタフライ演算をK−1段バイパ
スすることで、データ点列数がN/RK (Rは基数)に
なったときのフーリエ変換を、該データ点列数Nのフー
リエ変換回路で行うこと特徴とする可変高速フーリエ変
換回路。5. The bypass process in the variable fast Fourier transform circuit according to claim 1, wherein data is rearranged at a certain stage to form a necessary set, but a twist coefficient multiplication and a butterfly operation are performed. Without doing, flow to the next stage,
By bypassing the data rearrangement, only the twist coefficient multiplication and the butterfly operation are performed, and in the subsequent stages, the data rearrangement, the twist coefficient multiplication, and the butterfly operation are bypassed by K-1 stages, so that the number of data point sequences is reduced. A variable fast Fourier transform circuit, characterized in that Fourier transform when N / R K (R is a radix) is performed by a Fourier transform circuit having the number N of data points.
記N/R分割されたシリアルな入力データを、R個の先
入れ先出しメモリ(#0,#2)(10,11)に、上記高速フーリエ
変換(FFT)点数N/(Rの1/2)まで格納した
後、残りの高速フーリエ変換(FFT)点数N/(Rの
1/2)を、他のR個の先入れ先出しメモリ(#1,#3)(1
2,13)に格納し、 該格納された高速フーリエ変換(FFT)点数Nについ
て、1個の先入れ先出しメモリ(#0)(10)から1つのデー
タを取り出して、R出力の一方の出力(A)に出力し、
同時に、他の1個の先入れ先出しメモリ(#1)(12)から1
つのデータを取り出して、R出力の他方の出力(B)に
出力し、 続いて、1個の先入れ先出しメモリ(#2)(11)から1つの
データを取り出して、R出力の一方の出力(A)に出力
し、同時に、他の1個の先入れ先出しメモリ(#3)(13)か
ら1つのデータを取り出して、R出力の他方の出力
(B)に出力することを、交互に繰り返して、高速フー
リエ変換処理に必要とするデータの組を生成する回路と
したことを特徴とする請求項1に記載の可変高速フーリ
エ変換回路。6. The data rearranging circuit section (1) stores the N / R-divided serial input data in R first-in first-out memories (# 0, # 2) (10, 11) at a high speed. After storing up to Fourier transform (FFT) points N / (1/2 of R), the remaining fast Fourier transform (FFT) points N / (1/2 of R) are stored in other R first-in first-out memories (# 1). , # 3) (1
2, 13), and for the stored number of fast Fourier transform (FFT) points N, one data is taken out from one first-in first-out memory (# 0) (10) and one of the R output (A ) To
At the same time, one from the other first-in first-out memory (# 1) (12)
One data is taken out and outputted to the other output (B) of the R output, then one data is taken out from one first-in first-out memory (# 2) (11), and one output (A ), And at the same time, take out one data from the other one first-in first-out memory (# 3) (13) and output it to the other output (B) of the R output, alternately The variable fast Fourier transform circuit according to claim 1, wherein the variable fast Fourier transform circuit is a circuit for generating a set of data required for Fourier transform processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4175838A JP2848134B2 (en) | 1992-07-03 | 1992-07-03 | Variable fast Fourier transform circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4175838A JP2848134B2 (en) | 1992-07-03 | 1992-07-03 | Variable fast Fourier transform circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0619955A true JPH0619955A (en) | 1994-01-28 |
JP2848134B2 JP2848134B2 (en) | 1999-01-20 |
Family
ID=16003103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4175838A Expired - Fee Related JP2848134B2 (en) | 1992-07-03 | 1992-07-03 | Variable fast Fourier transform circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2848134B2 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0830584A (en) * | 1994-07-14 | 1996-02-02 | Nec Corp | Processor exclusive for n-point fft |
WO2002069182A1 (en) * | 2001-02-28 | 2002-09-06 | Fujitsu Limited | Fourier transform device |
WO2007060879A1 (en) * | 2005-11-25 | 2007-05-31 | Matsushita Electric Industrial Co., Ltd. | Fast fourier transformation circuit |
JP2007172157A (en) * | 2005-12-20 | 2007-07-05 | Samsung Electronics Co Ltd | Fft arithmetic circuit |
US7634524B2 (en) | 2003-12-12 | 2009-12-15 | Fujitsu Limited | Arithmetic method and function arithmetic circuit for a fast fourier transform |
US7979485B2 (en) | 2005-12-20 | 2011-07-12 | Samsung Electronics Co., Ltd. | Circuit for fast fourier transform operation |
WO2012133870A1 (en) | 2011-03-28 | 2012-10-04 | Kao Corporation | Method for producing cured article from hydraulic composition |
WO2021210069A1 (en) * | 2020-04-14 | 2021-10-21 | 三菱電機株式会社 | Frequency analysis device, frequency analysis method, control circuit, and storage medium |
-
1992
- 1992-07-03 JP JP4175838A patent/JP2848134B2/en not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0830584A (en) * | 1994-07-14 | 1996-02-02 | Nec Corp | Processor exclusive for n-point fft |
US7461114B2 (en) | 2001-02-28 | 2008-12-02 | Fujitsu Limited | Fourier transform apparatus |
WO2002069182A1 (en) * | 2001-02-28 | 2002-09-06 | Fujitsu Limited | Fourier transform device |
US7634524B2 (en) | 2003-12-12 | 2009-12-15 | Fujitsu Limited | Arithmetic method and function arithmetic circuit for a fast fourier transform |
JP2007148623A (en) * | 2005-11-25 | 2007-06-14 | Matsushita Electric Ind Co Ltd | High-speed fourier conversion circuit |
WO2007060879A1 (en) * | 2005-11-25 | 2007-05-31 | Matsushita Electric Industrial Co., Ltd. | Fast fourier transformation circuit |
US8145694B2 (en) | 2005-11-25 | 2012-03-27 | Panasonic Corporation | Fast Fourier transformation circuit |
JP2007172157A (en) * | 2005-12-20 | 2007-07-05 | Samsung Electronics Co Ltd | Fft arithmetic circuit |
US7979485B2 (en) | 2005-12-20 | 2011-07-12 | Samsung Electronics Co., Ltd. | Circuit for fast fourier transform operation |
WO2012133870A1 (en) | 2011-03-28 | 2012-10-04 | Kao Corporation | Method for producing cured article from hydraulic composition |
US9011596B2 (en) | 2011-03-28 | 2015-04-21 | Kao Corporation | Method for producing cured article from hydraulic composition |
WO2021210069A1 (en) * | 2020-04-14 | 2021-10-21 | 三菱電機株式会社 | Frequency analysis device, frequency analysis method, control circuit, and storage medium |
JPWO2021210069A1 (en) * | 2020-04-14 | 2021-10-21 |
Also Published As
Publication number | Publication date |
---|---|
JP2848134B2 (en) | 1999-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5875122A (en) | Integrated systolic architecture for decomposition and reconstruction of signals using wavelet transforms | |
US4885715A (en) | Digital processor for convolution and correlation | |
US4601006A (en) | Architecture for two dimensional fast fourier transform | |
EP1304797A2 (en) | Digital filter having high accuracy and efficiency | |
KR100481067B1 (en) | Apparatus for 2-D Discrete Cosine Transform using Distributed Arithmetic Module | |
US4821224A (en) | Method and apparatus for processing multi-dimensional data to obtain a Fourier transform | |
EP0660247B1 (en) | Method and apparatus for performing discrete cosine transform and its inverse | |
US5038311A (en) | Pipelined fast fourier transform processor | |
JPH04507315A (en) | Modular digital signal processing system | |
US6499045B1 (en) | Implementation of a two-dimensional wavelet transform | |
US4791597A (en) | Multiplierless FIR digital filter with two to the Nth power coefficients | |
US3988601A (en) | Data processor reorder shift register memory | |
EP0178933B1 (en) | Auto-correlation filter | |
US6189021B1 (en) | Method for forming two-dimensional discrete cosine transform and its inverse involving a reduced number of multiplication operations | |
JP2848134B2 (en) | Variable fast Fourier transform circuit | |
US4833635A (en) | Bit-slice digital processor for correlation and convolution | |
US5365470A (en) | Fast fourier transform multiplexed pipeline | |
US6728742B1 (en) | Data storage patterns for fast fourier transforms | |
US7246143B2 (en) | Traced fast fourier transform apparatus and method | |
US9264018B2 (en) | Digital signal-processing structure and methodology featuring engine-instantiated, wave-digital-filter cascading/chaining | |
US6925479B2 (en) | General finite-field multiplier and method of the same | |
Crochiere | Digital network theory and its application to the analysis and design of digital filters. | |
Bunton | Multi-resolution fx correlator | |
KR100193385B1 (en) | Method and apparatus for performing DCT / DST / DHT by unified systolic array structure | |
US5148384A (en) | Signal processing integrated circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19981006 |
|
LAPS | Cancellation because of no payment of annual fees |