JPH06342449A - Data rearranging circuit and high-speed fourier transform circuit - Google Patents
Data rearranging circuit and high-speed fourier transform circuitInfo
- Publication number
- JPH06342449A JPH06342449A JP12985593A JP12985593A JPH06342449A JP H06342449 A JPH06342449 A JP H06342449A JP 12985593 A JP12985593 A JP 12985593A JP 12985593 A JP12985593 A JP 12985593A JP H06342449 A JPH06342449 A JP H06342449A
- Authority
- JP
- Japan
- Prior art keywords
- delay
- data
- fourier transform
- input
- circuit
- 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
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、ディジタル信号処理に
おけるデータ並べ替え回路,及び、高速フーリエ変換回
路に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data rearrangement circuit and a fast Fourier transform circuit in digital signal processing.
【0002】近年、音声,画像,レーダ等を解析処理す
る分野において、ディジタル信号処理が適用されてい
る。該ディジタル信号処理として、高速フーリエ変換が
使用されているが、該高速フーリエ変換は、データ量の
増大化と、実時間処理の必要性から、より高速に処理す
ることが要求されている。In recent years, digital signal processing has been applied in the field of analysis processing of voice, image, radar and the like. A fast Fourier transform is used as the digital signal processing. However, the fast Fourier transform is required to be processed at a higher speed because of an increase in the amount of data and the necessity of real-time processing.
【0003】[0003]
【従来の技術】従来から、基数2の高速フーリエ変換
(FFT)のアルゴリズムに基づくパイプライン型高速
フーリエ変換が行われている。2. Description of the Related Art Conventionally, a pipeline type fast Fourier transform based on a radix-2 fast Fourier transform (FFT) algorithm has been performed.
【0004】先ず、高速フーリエ変換とは、離散的フー
リエ変換の演算速度を高速化するために考えられたアル
ゴリズムである。以下に入力データ数Nが2のべき乗を
対象とした基数2のアルゴリズムを一例として説明す
る。First, the fast Fourier transform is an algorithm designed to increase 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】離散的フーリエ変換を計算する場合、まと
もに取り組んでは計算量が非常に膨大なものになる。そ
こで、考え出されたのが高速フーリエ変換(以下におい
て、FFTということがある)のアルゴリズムで、この
アルゴリズムを用いることで計算量を大幅に減少させる
事ができる。When the discrete Fourier transform is calculated, the amount of calculation becomes very large if proper measures are taken. Then, an algorithm of a fast Fourier transform (hereinafter sometimes referred to as FFT) was conceived, and by using this algorithm, the amount of calculation can be greatly reduced.
【0006】図18〜図20は、従来の高速フーリエ変
換回路を説明する図であり、図18は、高速フーリエ変
換の基本概念の構成例を示したものであり、図19は、
基数2の高速フーリエ変換回路の構成例を示しており、
図20は、高速フーリエ変換データ点数N(=16) の場合
の、高速フーリエ変換の処理過程を示している。18 to 20 are views for explaining a conventional fast Fourier transform circuit, FIG. 18 shows an example of the basic concept of the fast Fourier transform, and FIG.
It shows a configuration example of a radix-2 fast Fourier transform circuit,
FIG. 20 shows a process of the fast Fourier transform when the number of fast Fourier transform data points is N (= 16).
【0007】先ず、図18において、N=8の場合の高
速フーリエ変換のアルゴリズムを例に示す。ここで、A
は入力を、Dは出力を、B、Cは中間結果を表してい
る。上記高速フーリエ変換のアルゴリズムの説明:図1
8(a) において、入力されたデータは、決められた2つ
のデータ間でたすき掛け演算を行う。1段目では、 (A
0,A4)、(A1,A5)、・・(A3,A7)の組でたすき掛け
演算を行い、2段目では、(B0,B2)、(B1,B3)・・
(B5,B7)の組で、3段めでは(C0,C1)、(C2,C3)
・・(C6,C7)の組で、それぞれ、たすき掛け演算が行
われる。First, FIG. 18 shows an example of the fast Fourier transform algorithm when N = 8. Where A
Represents an input, D represents an output, and B and C represent intermediate results. Description of the Fast Fourier Transform Algorithm: FIG.
In 8 (a), the input data is subjected to a crossing operation between two determined data. In the first stage, (A
0 , A 4 ), (A 1 , A 5 ), ··· (A 3 , A 7 ), a crossing operation is performed, and in the second stage, (B 0 , B 2 ), (B 1 , B) 3 )
In the set of (B 5 , B 7 ), (C 0 , C 1 ), (C 2 , C 3 ) in the third stage
.. Each of the sets of (C 6 , C 7 ) is subjected to crossing calculation.
【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】従って、このたすき掛け演算が何回行われ
るかは、入力されるデータ点数Nで決まり、このアルゴ
リズムでは2のべき乗数だけ行うことになる。つまり8
=2 3 なので、3回行えばよいことになる。又、たすき
掛け1回の演算を1段と呼ぶことにする。Therefore, how many times this crossover calculation is performed
Whether or not it is decided by the number of input data points N.
In the rhythm, only powers of 2 are used. That is 8
= 2 3So you have to do it 3 times. Also, I like
One multiplication operation will be called one stage.
【0010】このアルゴリズムで用いられるたすき掛け
演算をバタフライ演算と呼び、図18(b) に示す様な演
算を行う。ここで、x、yは入力であり、X、Yは出力
を表す。また、Wはひねり係数といい次式で与えられ
る。 Wnk=exp(−2πnkj/N) 図18(b) において、たすき掛け演算はこのバタフライ
演算を決められたデータ間で行うことを表している。The crossing operation used in this algorithm is called a butterfly operation, and an operation as shown in FIG. 18 (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. W nk = exp (−2πnkj / N) In FIG. 18B, the crossing operation indicates that this butterfly operation is performed between the determined data.
【0011】上記高速フーリエ変換のアルゴリズムにつ
いては、文献“高速フーリエ変換入門",“高速フーリエ
変換(FFT) の使い方",安居院猛著, 廣済堂産報出版刊,
或いは、文献“高速フーリエ変換",宮川洋, 今井秀樹
訳, 科学技術出版社刊に詳しく記載されているので、こ
こでは、その詳細は省略する。Regarding the algorithm of the fast Fourier transform, refer to the document "Introduction to the Fast Fourier Transform", "How to Use the Fast Fourier Transform (FFT)", Takeshi Yasuiin, Koseido Kogyo Publishing,
Alternatively, it is described in detail in the document “Fast Fourier Transform”, translated by Hiroshi Miyagawa, Hideki Imai, published by Science and Technology Publishing Co., Ltd., and therefore its details are omitted here.
【0012】図19は、基数2の高速フーリエ変換回路
を示している。本例においては、基数2の高速フーリエ
変換を行う場合、先ず、入力をN/B(=2)個に分け
て、該分割された、それぞれの入力データの点数をシリ
アルに並べたものを、2入力からなり、複数段の基本回
路からなる高速フーリエ変換回路に入力するように構成
する。FIG. 19 shows a radix-2 fast Fourier transform circuit. In this example, when performing a radix-2 fast Fourier transform, first, the input is divided into N / B (= 2) pieces, and the divided pieces of the input data are serially arranged, It is composed of two inputs and is configured to be input to a fast Fourier transform circuit composed of a plurality of stages of basic circuits.
【0013】このとき、入力するデータの順は、どのよ
うにするかは任意である。図19(a) の例では、入力の
上側(入力A)に偶数番目、入力の下側(入力B)に基
数番目を入力することにする。At this time, the order of input data is arbitrary. In the example of FIG. 19A, the even number is input to the upper side of the input (input A) and the radix number is input to the lower side of the input (input B).
【0014】このとき入力されたデータは、バタフライ
演算を行う組どうしで、該バタフライ演算を行うように
する必要があるので、データを一旦蓄えておき、必要な
組どうしを選ぶようにする。このための回路部分をデー
タ並べ替え回路 1と呼ぶことにする。Since the data input at this time need to be subjected to the butterfly operation between the groups that perform the butterfly operation, the data is temporarily stored and the necessary groups are selected. The circuit part for this is called data rearrangement circuit 1.
【0015】次に、図19(b) に示したように、入力B
から入力されたデータに、ひねり係数を掛ける必要があ
る。このための回路部分をひねり係数乗算部 20 と呼ぶ
ことにする。Next, as shown in FIG. 19B, the input B
It is necessary to multiply the data input from by the twist coefficient. The circuit portion for this purpose is called the twist coefficient multiplication unit 20.
【0016】最後に、上側 (入力A)から入力されたデ
ータと、上記ひねり係数を掛けられたデータとで、図1
9(b) に示したたすき掛け演算を行う必要がある。この
ための回路部分を、特に、バタフライ演算部 30 と呼ぶ
ことにする。Finally, the data inputted from the upper side (input A) and the data multiplied by the above-mentioned twisting coefficient are shown in FIG.
It is necessary to perform the crossing calculation shown in 9 (b). The circuit portion for this purpose will be particularly referred to as a butterfly computing unit 30.
【0017】従って、基数2の高速フーリエ変換のアル
ゴリズムで、1段分の処理を行うための基本回路の構成
は、図19(b) のようになる。入力されるデータ点数N
は2M 個であるから、この基本回路をM個直列に組み合
わせることで、基数2の高速フーリエ変換が行えること
になる。Therefore, the configuration of the basic circuit for performing the processing for one stage in the radix-2 fast Fourier transform algorithm is as shown in FIG. 19 (b). Number of input data points N
Since there are 2 M of them, by combining M basic circuits in series, a radix-2 fast Fourier transform can be performed.
【0018】図20は、高速フーリエ変換データ点数N
(=16)に対して、上記高速フーリエ変換の基本回路
を4段直列に並べて高速フーリエ変換を行った時のデー
タの流れを示したものである。FIG. 20 shows the number of fast Fourier transform data points N.
In contrast to (= 16), the flow of data when the fast Fourier transform is performed by arranging the basic circuits of the fast Fourier transform in four stages in series is shown.
【0019】図20において、入力A側のデータ点の列
を、A0,A2,A4, 〜, A14 とし、入力B側のデータ点の列
を、A1,A3,A5, 〜,A15とすると、上記データ並べ替え回
路 1での出力データ列は、図示されているように、
「A0,A8 」「A1,A9 」「A2,A10」〜「A7, A15 」とな
り、この並べ替えられたデータ列に対して、ひねり演算
を施した後、バタフライ演算回路(BUT) 30で、バタフラ
イ演算を施すことにより、距離8に対する高速フーリエ
変換が行われたことになる。In FIG. 20, 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 for this sorted data string, and then the butterfly By performing the butterfly operation in the arithmetic circuit (BUT) 30, the fast Fourier transform for the distance 8 is performed.
【0020】このデータ列を「B0,B8 」「B1,B9 」
「B2,B10」〜「B7,B15」とすると、このデータ列を、次
の段の基本回路に入力することにより、該2段目のデー
タ並べ回路 1では、最初の入力データ点列であるA0,A1,
A2, 〜A15 に対して、距離4のデータ列を出力するよう
に動作する。即ち、図20の2段目のデータ並べ替え回
路1の出力を見ると、「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 1 in the second stage of FIG. 20, "B 0 , B 4 ""B 8 , B 12 ""B 1 , B 5 "
~ "B 11 , B 15 ", it can be seen that the distance 4 is rearranged so that the Fourier transform can be performed.
【0021】このデータ点列に対して、ひねり演算を施
した後、バタフライ演算を施すことにより、該距離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 a butterfly calculation for the distance 4 is performed, and an intermediate result "C 0 , C" is obtained.
4 "," C 8, C 12, "" C 1, C 5 "-" C 11, C 15 "is obtained.
【0022】以下、同じ、基本回路を使用して、本発明
による高速フーリエ変換を行うことにより、4段目で
は、図示されている如くに、データ並べ替え回路 1にお
いて、最初の入力データ点列であるA0,A1,A2, 〜A15 に
対して、距離1のデータ点列「D0,D1 」「D2,D3 」
「D4,D5 」〜「D14,D15 」を出力するので、このデータ
列に対して、ひねり演算とバタフライ演算を施すことに
より、E0,E1,E2, 〜E15 で示した高速フーリエ変換の結
果を得ることができる。このような高速フーリエ変換
を、パイプライン型高速フーリエ変換という。Hereinafter, the same basic circuit is used to perform the fast Fourier transform according to the present invention, so that in the fourth stage, as shown in the figure, in the data rearrangement circuit 1, the first input data point sequence is input. , A 0 , A 1, A 2, ~ A 15 are data point sequence "D 0 , D 1 ""D 2 , D 3 " at distance 1
Since outputs "D 4, D 5" - "D 14, D 15", with respect to the data sequence, by performing the twisting operation and the butterfly operation, E 0, E 1, E 2, in to E 15 The results of the Fast Fourier Transform shown can be obtained. Such a fast Fourier transform is called a pipeline type fast Fourier transform.
【0023】[0023]
【発明が解決しようとする課題】一般に、入力データの
速度が早くなると、上記パイプライン型高速フーリエ変
換での演算速度を早めなければならないが、高集積回路
(LSI) 技術、回路実装技術や、コスト等で限界があり、
処理速度が上げられなかった。Generally, when the speed of input data becomes faster, the operation speed in the pipeline type fast Fourier transform must be made faster.
(LSI) technology, circuit mounting technology, cost, etc. have limitations,
The processing speed could not be increased.
【0024】又、上記の例は基数が2の場合を例にして
いるが、基数4,又は、8の高速フーリエ変換のアルゴ
リズムに基づいて、少ない演算回路で、高速フーリエ変
換を行う方法として、ソフトウェアで行うことが知られ
ているが、ハードウェアで行う適当な回路手段がないの
が現状であった。In the above example, the case where the radix is 2 is taken as an example, but as a method for performing the fast Fourier transform with a small number of arithmetic circuits based on the algorithm of the fast Fourier transform of the radix 4 or 8, Although it is known to be performed by software, there is currently no suitable circuit means for performing by hardware.
【0025】本発明は上記従来の欠点に鑑み、比較的単
純なハードウェア構成で、基数4や、基数8の高速フー
リエ変換(FFT)を行うことができる回路を提供する
ことを目的とするものである。In view of the above-mentioned conventional drawbacks, it is an object of the present invention to provide a circuit capable of performing radix-4 or radix-8 fast Fourier transform (FFT) with a relatively simple hardware configuration. Is.
【0026】[0026]
【課題を解決するための手段】図1,図2は、本発明の
原理構成図であり、図3,図4は遅延クロススイッチの
動作例を示した図であり、図5, 図6は、本発明の遅延
シャフル段の構成例を示した図である。上記の問題点は
下記の如くに構成されたデータ並べ替え回路を用いた高
速フーリエ変換回路によって解決される。FIGS. 1 and 2 are diagrams showing the principle of the present invention, FIGS. 3 and 4 are diagrams showing an operation example of a delay cross switch, and FIGS. FIG. 3 is a diagram showing a configuration example of a delay shuffle stage of the present invention. The above problem is solved by a fast Fourier transform circuit using a data rearrangement circuit configured as follows.
【0027】(1) 2本の入力ラインと、2本の出力ライ
ンとを持ち、該ラインを直通するか,交換するクロスス
イッチ 100と、該クロススイッチ 100は、一方の入力側
にq段の遅延段数を持つ遅延回路 101を持ち、他方の出
力側にも、q段の遅延段数を持つ遅延回路 102を持ち、
各ラインがq個のデータを受け取る毎に、各ラインを直
通するか、交換する上記クロススイッチ 100の方向を切
り換えるようにした遅延クロススイッチ 10 と、B/2
個の、上記遅延クロススイッチ 10 で、B個の入力ライ
ンとB個の出力ラインとを担当する遅延シャフル段 1a,
〜と、該遅延シャフル段 1a,〜をM段縦続接続し、第m
段の各遅延クロススイッチはB/2m だけ離れた入力ラ
インと出力ラインとを担当して、データ伝送のシャフル
を行う遅延シャフルネットワーク1によって、Br づつ
離れたデータが、上記B個の入力ラインに、B個づつ並
列に入力されたとき、Br-1 づつ離れたデータをB個の
出力ラインにB個づつ並列に出力するように構成する。(1) A cross switch 100 which has two input lines and two output lines and directly connects or replaces the lines, and the cross switch 100 has q stages of one input side. It has a delay circuit 101 having the number of delay stages, and also has a delay circuit 102 having the number of delay stages of q on the other output side.
Each time each line receives q pieces of data, a delay cross switch 10 is provided which switches the direction of the cross switch 100 which directly passes through or exchanges each line, and B / 2.
Of the delay cross switches 10 described above, which are in charge of the B input lines and the B output lines.
~ And the delay shuffle stages 1a, ~ are connected in cascade for M stages,
Stage each delay cross switch in charge of input and output lines spaced by B / 2 m, the delay shuffle network 1 to perform shuffle data transmission, B r at a time distant data, the B inputs When B data are input to the lines in parallel, data separated by B r−1 are output to the B output lines in parallel, B data at a time.
【0028】(2) 高速フーリエ変換点数をNとし、該高
速フーリエ変換の基数をBとしたとき、N=BK ここ
で、K=1,2,3,・・・ B=2M ここで、M=1,2,3,・・・・ を満足するとき、q=Br /2m r=1,2,3,・・,K-1 m=1,2,3,・・,M である、点数N,基数Bの高速フーリエ変換を、基数B
のフーリエ変換回路 2,3と、上記(1) 項に記載の遅延シ
ャフルネットワーク 1とを、交互に縦続接続し、基数B
の高速フーリエ変換アルゴリズムに基づいて行うように
構成する。(2) When the number of fast Fourier transform points is N and the radix of the fast Fourier transform is B, N = B K where K = 1,2,3, ... B = 2 M where , M = 1,2,3, ..., q = B r / 2 m r = 1,2,3, ..., K-1 m = 1,2,3 ,. The fast Fourier transform of point N and radix B, which is M, is converted to radix B
Fourier transform circuits 2 and 3 and the delay shuffle network 1 described in (1) above are alternately cascaded to form a radix B
The fast Fourier transform algorithm of
【0029】(3) 上記(1) 項に記載の遅延シャフルネッ
トワーク 1は、可変長の先入れ先出しメモリによる遅延
回路 101,102を持つ、M個の遅延量可変の遅延シャフル
段からなり、該遅延シャフルネットワーク 1の出力を、
上記基数Bのフーリエ変換回路 2,3に接続し、上記基数
Bのフーリエ変換回路 2,3の出力は、上記遅延シャフル
ネットワーク1の入力側に接続するようにした巡回接続
とし、基数Bの高速フーリエ変換を行う際、K-1 回、上
記遅延シャフルネットワーク1を通過するようにし、第
i回目の通過時には、q=BK-i /2m だけの遅延段数
を持つ遅延回路 101,102とするように構成する。(3) The delay shuffle network 1 described in the above item (1) comprises M delay shuffle stages with variable delay amounts 101 and 102 having variable length first-in first-out memories, and the delay shuffle network 1 Output of
It is connected to the radix-B Fourier transform circuits 2 and 3, and the output of the radix-B Fourier transform circuits 2 and 3 is a cyclic connection so as to be connected to the input side of the delay shuffle network 1. When the Fourier transform is performed, the delay shuffle network 1 is passed through K-1 times, and at the i-th time, the delay circuits 101 and 102 having the number of delay stages of q = B Ki / 2 m are configured. To do.
【0030】[0030]
【作用】図3,図4は、上記遅延クロススイッチの動作
例を示した図である。この遅延クロススイッチは、例え
ば、時系列に入力されてくるデータ列Nを、01234
567の8個のデータ列としたとき、最初のデータ列0
123と、N/2(=4:距離4)のデータ列4567
とを組合わせた2つのデータ列を入力として、入力側の
距離を半分にして並べ替えて出力するという特徴をもっ
ている。3 and 4 are diagrams showing an operation example of the delay cross switch. In this delay cross switch, for example, the data sequence N input in time series is
If there are 8 data strings of 567, the first data string 0
123 and a data string 4567 of N / 2 (= 4: distance 4)
It has a feature that two data strings that are combined are input and the distance on the input side is halved and the data is rearranged and output.
【0031】この構成例においては、先ず、データ点
列、入力A(0123),入力B(4567)から#1
のFiFo 40,#0のFiFo 41 に、上記データ列
を、例えば、基数2の高速フーリエ変換に必要とする距
離(本例では、距離2)迄記憶させる。{図3(a) 参
照} これが済むと、#1のFiFo 40 から記憶した順にデ
ータを出力Aに出力し、入力Aからのデータをマルチプ
レクサ(MUX2) 43 を通して出力Bに出力する。これと同
時に、#0のFiFo 41 に記憶したデータを、マルチ
プレクサ(MUX1)42 を通して#1のFiFo 40 に送
り、入力Bからのデータを#0のFiFo41 に記憶す
る。この動作が、該遅延クロススイッチの特徴的な交換
動作である。{図3(b) 参照} そして、#1のFiFo 40 から入力Aのデータを出力
し終わると、#0のFiFo 41 から入力されたデータ
を出力Aに出力し、#0のFiFo 41 からのデータを
マルチプレクサ(MUX2) 43 を通して出力Bに出力する。
{図4(c),(d)参照} 以上のようにして、上記基数2の高速フーリエ変換で必
要とするデータの組(但し、距離2)になるように並べ
替えを行う。In this configuration example, first, the data point sequence, input A (0123), input B (4567) to # 1.
The above-mentioned data string is stored in the FiFo 40 of No. 2 and the FiFo 41 of # 0, for example, up to the distance (distance 2 in this example) required for the fast Fourier transform of radix 2. {See FIG. 3 (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 output B through the multiplexer (MUX2) 43. At the same time, the data stored in the # 0 FiFo 41 is sent to the # 1 FiFo 40 through the multiplexer (MUX1) 42, and the data from the input B is stored in the # 0 FiFo 41. This operation is a characteristic exchange operation of the delay cross switch. {Refer to FIG. 3 (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 # 0 FiFo 41 outputs the data. The data is output to the output B through the multiplexer (MUX2) 43.
{Refer to FIGS. 4 (c) and 4 (d)} As described above, rearrangement is performed so as to obtain the data set (distance 2) required for the radix-2 fast Fourier transform.
【0032】即ち、遅延クロススイッチは、データ点数
Nのデータ列を、距離N/2にしたデータ列に並べ替え
られたデータを入力して、更に、距離を1/2にしたデ
ータ列を出力する。That is, the delay cross switch inputs the data in which the data string having the number of data points N is rearranged into the data string having the distance N / 2, and further outputs the data string having the distance 1/2. To do.
【0033】図5, 図6は、上記遅延クロススイッチを
2個使用して、例えば、基数4の高速フーリエ変換で必
要とする距離N/4のデータ列を入力して、最終的に、
例えば、距離1のデータ列を得る為の遅延シャフル段の
構成例を示している。In FIGS. 5 and 6, the two delay cross switches are used, for example, a data string of distance N / 4 required for the fast Fourier transform of radix 4 is input, and finally,
For example, a configuration example of a delay shuffle stage for obtaining a data string of distance 1 is shown.
【0034】この例では、データ点数N=16としたと
き、距離N/4=4のデータ列に変換されているデータ
列を入力する。このとき、上記遅延クロススイッチに対
しては、上記のように、最初のデータ列(A0, A1,A2,
A3) に対して、距離N/2=8のデータ列(A8, A9,A10,
A11) を入力することで、それぞれの遅延クロススイッ
チで、入力された距離の1/2の距離(=2)のデータ列を
得ることができる。尚、図6は、上記図5の遅延シャフ
ル段の構成例の表現方法を変更して示したもので、実質
的には同じものである。In this example, assuming that the number of data points is N = 16, the data sequence converted into the data sequence of distance N / 4 = 4 is input. At this time, for the delay cross switch, as described above, the first data string (A 0 , A 1 , A 2 ,
A 3 ), the data string (A 8 , A 9 , A 10 ,
By inputting A 11 ), each delay cross switch can obtain a data string having a distance (= 2) that is ½ of the input distance. Note that FIG. 6 shows the modified example of the configuration example of the delay shuffle stage of FIG. 5, and is substantially the same.
【0035】前述の図3,図4で示されているように、
上記遅延クロススイッチには、一方の入力側にq段の遅
延手段を持つ遅延回路 41 と、他方の出力側にq段の遅
延手段を持つ遅延回路 40 とを備えている。図3,図4
の例では、2(q=2)段の遅延段数を持っている。As shown in FIGS. 3 and 4 above,
The delay cross switch is provided with a delay circuit 41 having q stages of delay means on one input side and a delay circuit 40 having q stages of delay means on the other output side. 3 and 4
In the above example, the number of delay stages is 2 (q = 2).
【0036】例えば、基数Bの高速フーリエ変換の点数
をNとすると、N=BK 、ここで、K=1,2,3,・・・であ
り、B=2M 、M=1,2,3,・・・である。このとき、Bと
Mとqとの間には、以下の関係がある。即ち、r=1,
2,3,・・・,K−1,m=1,2,3,・・・・,
Mとすると、q=Br /2m である。For example, if the score of the fast Fourier transform of the radix B is N, then N = B K , where K = 1,2,3, ..., B = 2 M , M = 1,2 , 3, ... At this time, the following relationships exist among B, M, and q. That is, r = 1,
2, 3, ..., K-1, m = 1, 2, 3, ...
Let M be q = B r / 2 m .
【0037】図3,図4の例で説明すると、基数2のデ
ータ点数N=8であるので、N=B K とすると、K=3 で
あり、B=2M とすると、M=1 である。従って、r=
1,2となり、m=1と求められるので、q=Br /2
m =22 /21 =2,又は、q=21 /21 =1とな
る。Explaining with the examples of FIGS. 3 and 4, the radix-2 data is used.
Since the data score N = 8, N = B KThen, with K = 3
Yes, B = 2MThen, M = 1. Therefore, r =
1 and 2, and m = 1 is obtained, so q = Br/ 2
m= 22/ 21= 2 or q = 21/ 21= 1
It
【0038】即ち、上記の遅延クロススイッチに、Br
個づつ離れたデータが、B個の入力ラインにB個づつ並
列に入力されたとき、Br-1 づつ離れたデータをB個の
出力ラインにB個づつ並列に出力する。That is, B r is added to the delay cross switch.
When data separated by B are input in parallel to B input lines by B, data separated by B r−1 are output by B in parallel by B output lines.
【0039】図3,図4の例で説明すると、Br (22
=4)個づつ離れたデータが、B(=2)個の入力ライ
ンにB(=2)個づつ並列に入力されたとき、B
r-1 (21)づつ離れたデータをB(=2)個の出力ラ
インにB(=2)個づつ並列に出力する。このとき、遅
延段数q=2である。Explaining with the examples of FIGS. 3 and 4, B r (2 2
= 4) when data separated by B are input in parallel to B (= 2) input lines by B (= 2),
The data separated by r−1 (2 1 ) are output in parallel to B (= 2) output lines, B (= 2) each. At this time, the number of delay stages q = 2.
【0040】図5,図6の例では、基数4のデータ点数
N=16であるので、N=BK とすると、K=2 であり、B
=2M とすると、M=2 である。従って、r=1となり、
m=1,2と求められるので、q=Br /2m =41 /
21 =2,q=Br /2m =41 /22 =1 となる。In the examples of FIGS. 5 and 6, since the number of data points of radix 4 is N = 16, if N = B K , then K = 2 and B
= 2 M , M = 2. Therefore, r = 1 and
Since m = 1, 2 is obtained, q = B r / 2 m = 4 1 /
2 1 = 2, and q = B r / 2 m = 4 1/2 2 = 1.
【0041】従って、Br (41 =4)個づつ離れたデ
ータが、B(=4)個の入力ラインにB(=4)個づつ
並列に入力されたとき、Br-1 (40 =1)づつ離れた
データをB(=4)個の出力ラインにB(=4)個づつ
並列に出力する。このとき、遅延段数q=2,1であ
る。Therefore, when the data separated by B r (4 1 = 4) data are input in parallel to B (= 4) input lines by B (= 4) data, B r-1 (4 The data separated by 0 = 1) is output in parallel to B (= 4) output lines by B (= 4). At this time, the number of delay stages q = 2, 1.
【0042】図5,図6に示した遅延シャフル段 1a,1b
では、遅延段数q=2の遅延クロススイッチと、遅延段
数q=1の遅延クロススイッチとを使用して、Br (4
1 =4)づつ離れた距離4のデータ列(A0, A4,A8, A12)
を4個並列に入力して、Br- 1 (40 =1)づつ離れた
データ列(A0, A1,A2, A3) をB(=4)個の出力ライン
にB(=4)個づつ並列に出力している。The delay shuffle stages 1a and 1b shown in FIGS.
Then, using a delay cross switch having the number of delay stages q = 2 and a delay cross switch having the number of delay stages q = 1, B r (4
1 = 4) Data string with a distance of 4 each (A 0 , A 4 , A 8 , A 12 ).
4 in parallel, and the data strings (A 0 , A 1 , A 2 , A 3 ) separated by B r− 1 (4 0 = 1) are input to B (= 4) output lines B (= 4). = 4) Outputs in parallel one by one.
【0043】一般に、基数2の高速フーリエ変換アルゴ
リズムでは、高速フーリエ変換点数Nに対して、距離が
N/2,N/22,N/23,〜 離れたデータ、即ち、上
記の例では、Br (但し、B=2,r=2,1,0)個
づつ離れたデータ間で、B(=2)点フーリエ変換の演
算を行い、基数4の高速フーリエ変換アルゴリズムで
も、高速フーリエ変換点数Nに対して、距離がN/4,
N/42,N/43,〜 離れたデータ、即ち、上記の例で
は、Br (但し、B=4,r=1,0)個づつ離れたデ
ータ間でB(=4)点フーリエ変換の演算を行う。In general, in the radix-2 fast Fourier transform algorithm, data whose distance is N / 2, N / 2 2 , N / 2 3 , ... With respect to the number of fast Fourier transform points N, that is, in the above example. , B r (however, B = 2, r = 2, 1, 0) is performed between the data separated by B (= 2) points, and the radix-4 fast Fourier transform algorithm For the number of conversion points N, the distance is N / 4,
N / 4 2 , N / 4 3 , ..., data that are distant from each other, that is, in the above example, B (= 4) points between B r (however, B = 4, r = 1, 0) data Performs Fourier transform calculation.
【0044】上記図3,図4の例では、高速フーリエ変
換点数N=8であるので、距離が4,2,1のデータ間
で2点フーリエ変換を行えばよく、図5の例では、高速
フーリエ変換点数N=16であるので、距離が、4,1
のデータ間で4点フーリエ変換を行えばよい。In the examples of FIGS. 3 and 4, the number of fast Fourier transform points N = 8, so two-point Fourier transform may be performed between data having distances of 4, 2 and 1. In the example of FIG. Since the number of fast Fourier transform points N = 16, the distance is 4, 1
It suffices to perform a four-point Fourier transform between the data.
【0045】従って、上記図5に示した本発明の遅延シ
ャフル段{但し、図5は基数4を示しており、基数2の
場合については、図5に示されている遅延クロススイッ
チの上半分を、遅延クロススイッチ単位で使用すればよ
い}の前後に、B点高速フーリエ変換回路 (基数Bのフ
ーリエ変換回路ともいう)を接続することにより、基数
2,4,〜の高速フーリエ変換の演算を行うことができ
る。Therefore, the delay shuffle stage of the present invention shown in FIG. 5 (however, FIG. 5 shows a radix 4 and, in the case of a radix 2, the upper half of the delay cross switch shown in FIG. 5). Should be used in units of delay cross switches}, by connecting a B-point fast Fourier transform circuit (also referred to as a radix-B Fourier transform circuit) to calculate the fast Fourier transform of radix 2, 4, ... It can be performed.
【0046】B点高速フーリエ変換回路については、前
述のように、ソフトウェアによる演算方法は、既に、良
く知られているので、これを、単に、ハードウェア化す
ることで、上記遅延シャフルネットワーク 1と、B点高
速フーリエ変換回路とを交互に接続することで、所望の
基数Bの高速フーリエ変換回路を実現することができ
る。As for the B-point fast Fourier transform circuit, as described above, the calculation method by software is already well known. Therefore, by simply converting this into hardware, the delay shuffle network 1 and , And the B-point fast Fourier transform circuit are alternately connected, it is possible to realize a desired radix B fast Fourier transform circuit.
【0047】従って、同じデータ量であるならば、基数
2に比較して、基数4は演算回路を1/2の速度で動作
させることができ、又、同じ演算速度であるならば、2
倍のデータ量を処理することができる。Therefore, if the data amount is the same, the radix-4 can operate the arithmetic circuit at 1/2 speed as compared with the radix-2, and if the arithmetic speed is the same, 2
Double the amount of data can be processed.
【0048】又、基数8は、基数2に比較して、同じ演
算速度ならば、4倍のデータを処理することができる。Further, the radix-8 can process four times as much data as the radix-2 at the same operation speed.
【0049】[0049]
【実施例】以下本発明の実施例を図面によって詳述す
る。前述の図1,図2は、本発明の、特に、データ並べ
替え回路の原理構成図であり、図3,図4は、遅延クロ
ススイッチの動作例を示した図であり、図5,図6は、
本発明の(遅延クロススイッチを組み会わせた)遅延シ
ャフル段の構成例を示した図であり、図7は基数4のひ
ねり係数乗算部とバタフライ演算部を示した図であり、
図8は基数4のバタフライ演算部の詳細例を示した図で
あり、図9〜図12,及び、図13〜図15は本発明の
一実施例を示した図であり、図9/図12は、基数4の
高速フーリエ変換アルゴリズムに基づくパイプライン型
高速フーリエ変換の例を示し、図13〜図15は、基数
8の高速フーリエ変換アルゴリズムに基づくパイプライ
ン型高速フーリエ変換の例を示し、図16,図17は、
本発明の他の実施例を示した図であって、循環接続した
高速フーリエ変換回路の例を示している。Embodiments of the present invention will be described in detail below with reference to the drawings. FIG. 1 and FIG. 2 described above are principle configuration diagrams of the data rearrangement circuit of the present invention, and FIG. 3 and FIG. 4 are diagrams showing an operation example of the delay cross switch. 6 is
FIG. 8 is a diagram showing a configuration example of a delay shuffle stage (combining delay cross switches) of the present invention, and FIG. 7 is a diagram showing a radix-4 twist coefficient multiplication unit and a butterfly calculation unit,
FIG. 8 is a diagram showing a detailed example of a radix-4 butterfly operation unit, FIGS. 9 to 12 and FIGS. 13 to 15 are diagrams showing an embodiment of the present invention, and FIG. 12 shows an example of a pipeline type fast Fourier transform based on a radix-4 fast Fourier transform algorithm, and FIGS. 13 to 15 show examples of a pipeline type fast Fourier transform based on a radix-8 fast Fourier transform algorithm. 16 and 17 show
It is the figure which showed the other Example of this invention, Comprising: The example of the fast Fourier transform circuit connected cyclically is shown.
【0050】本発明においては、図1,図2に示されて
いるように、2本の入力ラインと、2本の出力ラインと
を持ち、該ラインを直通するか,交換するクロススイッ
チ 100と、該クロススイッチ 100は、一方の入力側にq
段の遅延段数を持つ遅延回路101を持ち、他方の出力側
にも、q段の遅延段数を持つ遅延回路 102を持ち、各ラ
インがq個のデータを受け取る毎に、各ラインを直通す
るか、交換するクロススイッチ 100の方向を切り換える
ようにした遅延クロススイッチ 10 と、B/2個の、上
記遅延クロススイッチで、B個の入力ラインとB個の出
力ラインとを担当する遅延シャフル段 1a,〜と、該遅延
シャフル段 1a,〜をM段縦続接続し、第m段の各遅延ク
ロススイッチ 10 はB/2m だけ離れた入力ラインと出
力ラインとを担当して、データ伝送のシャフルを行う遅
延シャフルネットワーク (データ並べ替え回路) 1 によ
って、Br づつ離れたデータが、上記B個の入力ライン
に、B個づつ並列に入力されたとき、Br-1 づつ離れた
データをB個の出力ラインにB個づつ並列に出力するよ
うにしたデータ並べ替え回路と、B点高速フーリエ変換
回路 2,3とを交互に接続する手段が、本発明を実施する
のに必要な手段である。尚、全図を通して同じ符号は同
じ対象物を示している。In the present invention, as shown in FIGS. 1 and 2, a cross switch 100 having two input lines and two output lines and directly connecting or exchanging the lines. , The cross switch 100 has q on one input side.
A delay circuit 101 having a number of delay stages and a delay circuit 102 having a number of delay stages of q on the other output side are provided, each time each line receives q data, whether each line directly goes through. , A delay cross switch 10 for changing the direction of the cross switch 100 to be replaced, and a delay shuffle stage 1a which is in charge of B / 2 input lines and B output lines by the B / 2 delay cross switches described above. , ~ And the delay shuffle stages 1a, ~ are connected in cascade for M stages, and each m-th stage delay cross switch 10 is in charge of the input line and the output line separated by B / 2 m, and the shuffle for data transmission is performed. By the delay shuffle network (data rearrangement circuit) 1 that performs B r, when data separated by B r is input to the B input lines in parallel B by B, data separated by B r-1 is divided by B. B on each output line One and data rearrangement circuit to output in parallel, means for connecting the point B fast Fourier transform circuit 2 alternately, a means necessary for implementing the present invention. The same reference numerals indicate the same objects throughout the drawings.
【0051】上記図1, 図2において、各遅延クロスス
イッチ 10 は、B/2m だけ離れた入力ラインから入力
されるように構成しているが、これは、前述のように、
該遅延クロススイッチ 10 は、2つの入力端子を持ち、
基数2に対するデータ並べ替え回路であるので、各シャ
フル段毎に、1段目では、B入力/2だけ離れた入力ラ
インを選択し、2段目では、B入力/22 だけ離れた入
力ラインを選択し、3段目では、B入力/23 だけ離れ
た入力ラインを選択することを繰り返し、m段目ではB
入力/2m だけ離れた入力ラインから入力されるように
構成する必要があるためによる。In FIG. 1 and FIG. 2 described above, each delay cross switch 10 is constructed so as to be inputted from the input line separated by B / 2 m . This is as described above.
The delay cross switch 10 has two input terminals,
Since it is a data rearrangement circuit for radix 2, in each shuffle stage, in the first stage, the input line separated by B input / 2 is selected, and in the second stage, the input line separated by B input / 2 2 is selected. , Select the input line that is B input / 2 3 apart in the 3rd row, and repeat in the 3rd row.
This is because it is necessary to configure to input from the input line separated by the input / 2 m .
【0052】以下、図1〜図6を参照しながら、図7〜
図17によって、本発明のデータ並べ替え回路と、高速
フーリエ変換回路の構成と動作を説明する。本発明によ
る高速フーリエ変換回路は、前述の図1〜図6で説明し
た上記データ並べ替え回路 1で、基数Bの高速フーリエ
変換アルゴリズムに基づくB点フーリエ変換を行うのに
必要とする距離を持つデータ列を生成する。Hereinafter, referring to FIGS. 1 to 6, FIGS.
The configuration and operation of the data rearrangement circuit and the fast Fourier transform circuit of the present invention will be described with reference to FIG. The fast Fourier transform circuit according to the present invention has the distance required to perform the B-point Fourier transform based on the radix B fast Fourier transform algorithm in the data rearrangement circuit 1 described above with reference to FIGS. Generate a data string.
【0053】即ち、このデータ並べ替え回路 1では、基
数Bの高速フーリエ変換アルゴリズムに基づいて、高速
フーリエ変換点数Nに対して、距離がN/B,N/B2,
N/B3,〜 離れたデータ、即ち、上記の例では、Br
個づつ離れたデータ間で、B点フーリエ変換の演算を行
い、その結果を受けてBr-1 個づつ離れたデータを出力
するように構成されているので、それぞれのデータ並べ
替え回路 1と、B点フーリエ変換回路 2とを交互に接続
することにより、基数Bの高速フーリエ変換を行うこと
ができる。That is, in this data rearrangement circuit 1, the distances are N / B, N / B 2 , and N with respect to the number N of fast Fourier transform points based on the fast Fourier transform algorithm of the radix B.
N / B 3 , ..., distant data, that is, B r in the above example
The B-point Fourier transform operation is performed between the data separated by one unit, and the result is output by the data separated by B r-1 units. , B point Fourier transform circuit 2 are alternately connected to perform a radix B fast Fourier transform.
【0054】該データ並べ替え回路 1の詳細な構成と作
用については、前述の作用欄で説明してあるので省略
し、ここでは、B点フーリエ変換回路 2の構成と動作を
中心にして説明する。The detailed structure and operation of the data rearrangement circuit 1 are omitted because they have been described in the above-mentioned operation section, and here, the structure and operation of the B-point Fourier transform circuit 2 will be mainly described. .
【0055】図7は、上記B点フーリエ変換回路 2の、
基数4のひねり係数乗算部 20,22と、バタフライ演算部
21 を示している。前述の図18〜図20で説明したよ
うに、高速フーリエ変換アルゴリズムでは、定められた
距離を持つデータ間で、所謂、バタフライ演算を行う
が、このとき、ひねり係数との乗算を必要とする。基数
2の場合は、前述の図18に示されているように2つの
入力の一方にのみひねり係数Wnk (但し、nは、周波数
成分列の番号,kは入力されるデータ列の時系列の番
号)を乗算すればよいが、基数4の場合には、図7に示
されているように、4つの入力の内、3つの入力に対し
てひねり係数Wnkを乗算する必要がある。FIG. 7 shows the B point Fourier transform circuit 2
Radix-4 twist coefficient multipliers 20, 22 and butterfly calculator
21 is shown. As described above with reference to FIGS. 18 to 20, in the fast Fourier transform algorithm, so-called butterfly calculation is performed between data having a predetermined distance, but at this time, multiplication with a twist coefficient is required. In the case of the radix 2, as shown in FIG. 18 described above, the twist coefficient W nk (where n is the number of the frequency component sequence and k is the time series of the input data sequence) is applied to only one of the two inputs. However, in the case of the radix 4, as shown in FIG. 7, it is necessary to multiply the three inputs of the four inputs by the twist coefficient W nk .
【0056】上記、基数4の場合のひねり係数の数学的
な求め方については、例えば、前述の文献“高速フーリ
エ変換",宮川洋, 今井秀樹訳, 科学技術出版社刊, 第12
章、任意の標本点数に対するFFT アルゴリズム,12-4 ひ
ねり係数FFT アルゴリズム,P215 〜P218に示されている
が、P216の式 (12-43)から明らかなように、整数 n0k 1
の値{このn0,1,k0,1 については、上記文献の、P208の
式(12-7), 及び、P210の図12-1{この例は、N=16,B=4,
ときで、n=4n1+n0,k=4k1+k0 である。}を参照、即ち、
n0, k0は、並列に入力されるデータ列の入力位置の番号
を示しており、n1, k1は、並列に入力されるデータ列の
入力順序の番号を示している}に応じて、±j,±1,のい
ずれかの値のみをとればよいので、実数部と虚数部の入
れ替えや、符号操作をして、4入力加算器 21 に入力す
れば事足りる。 上記のことを、図7によって具体的
に説明する。上記文献の P216 の式(12-43) に、ひねり
係数W4n0k1 が定義されているが、このひねり係数W
4n0k1 の n0*k1に、順次 0*0,0*1,0*2,0*3,1*0,1*1,1*
2,1*3,2*0,2*1,2*2,2*3,3*0,3*1,3*2,3*3を代入して、4
*n0*k1 を計算すると、0,0,0,0,0,4,8,12,0,8,16,24,0,
12,24,36 が得られるので、それぞれ、ひねり係数の乗
算器 20 として、W0 とW4,W8,W12とW8,W16, W24
とW12, W24, W36が必要となる。それぞれを計算する
と、 W0,W16, W32, ・・=exp(-j0)=cos(0)+jsin(0)=1 W4,W20, W36, ・・=exp(-jπ/2) =cos(−π/2)+jsin (−π/2) =−j W8,W24, ・・=exp(-j2π/2)=cos(−π)+jsin (−π) =−1 W12, W28, ・・=exp(-j3π/2)=cos(−3/2 π)+jsin( −3/2 π) =j が得られるので、上記±j,±1,のいずれかの値となるこ
とが分かる。但し、図7では、上記W0 は省略してあ
る。Mathematical calculation of the twist coefficient in the case of radix 4
For more information on how to obtain this, refer to the above-mentioned document “High-speed Fourier”.
D conversion ", Hiroshi Miyagawa, Translated by Hideki Imai, Published by Science and Technology Publishing Co., No. 12
Chapter, FFT Algorithm for Arbitrary Sample Points, 12-4
Bending coefficient FFT algorithm, shown in P215-P218
However, as is clear from the equation (12-43) of P216, the integer n0k 1
Value of {this n0,1, k0,1For the above, refer to P208
Equation (12-7), and FIG. 12-1 of P210 (in this example, N = 16, B = 4,
Where n = 4n1+ n0, k = 4k1+ k0Is. }, That is,
n0,k0Is the input position number of the data string input in parallel
, N1,k1Of the data strings input in parallel
Shows the number of the input order} ± j, ± 1,
Since only the difference value needs to be taken, the input of the real and imaginary parts
Input the 4-input adder 21 by switching or performing sign operation.
That's enough. The above is concretely described with reference to FIG.
Explained. In the equation (12-43) of P216 in the above document, the twist
Coefficient W4n0k1Is defined, but this twist coefficient W
4n0k1Of n0* k1, 0 * 0,0 * 1,0 * 2,0 * 3,1 * 0,1 * 1,1 *
Substituting 2,1 * 3,2 * 0,2 * 1,2 * 2,2 * 3,3 * 0,3 * 1,3 * 2,3 * 3 into 4
* n0* k1When calculated, 0,0,0,0,0,4,8,12,0,8,16,24,0,
Since 12,24,36 are obtained, each is the power of the twist coefficient.
W as the calculator 200And WFour, W8, W12And W8, W16, Wtwenty four
And W12, Wtwenty four, W36Is required. Calculate each
And W0, W16, W32・ ・ == exp (-j0) = cos (0) + jsin (0) = 1 WFour, W20, W36, .. = exp (-j.pi./2) = cos (-. Pi./2)+jsin (-.pi./2)=-j W8, Wtwenty four, ・ ・ = exp (-j2π / 2) = cos (−π) + jsin (−π) =-1 W12, W28・ ・ = exp (-j3π / 2) = cos (−3 / 2π) + jsin (−3 / 2π) = j is obtained, so it is either ± j or ± 1, above. This
I understand. However, in FIG.0Is omitted
It
【0057】又、図7の一番左側に示されているひねり
係数を求める乗算器 22 は、上記文献の式(12-40) の
[ ] 外のひねり係数の乗算器を示していて、その乗算結
果は、それぞれ、a1+jb1,a2+jb2,a3+jb3である。Further, the multiplier 22 for obtaining the twist coefficient shown on the leftmost side of FIG.
A twist coefficient multiplier outside [] is shown, and the multiplication results are a 1 + jb 1 , a 2 + jb 2 , a 3 + jb 3 , respectively.
【0058】図8は、基数4のバタフライ演算部の詳細
例を示した図であり、上記4入力加算器 21 の一つを示
している。図7で説明したように、各4入力の加算器 2
1 に対するひねり係数Wnkは、整数 n0k1 の値に応じ
て、±j,±1,のいずれかの値のみをとればよいので、そ
の値が、例えば、図8に示したもの{図8の例は、上記
図7の2番目の4入力加算器に対応している}であると
すると、該一つの4入力加算器 21 を、例えば、図示さ
れている如くに、2入力加算器 210,211の2段構成とす
ると、例えば、上側の2つの2入力の加算手段で、実数
部の加算値を得て、下側の2つの2入力の加算手段で、
虚数部の加算値が得られるので、それぞれの値を実数a
と虚数bとすることにより、図7で示した各4入力加算
器 21 で、並列に入力された4つのデータ列に対応し
た、基数4のフーリエ変換の値を得ることができる。FIG. 8 is a diagram showing a detailed example of the radix-4 butterfly operation unit, and shows one of the four-input adders 21. As described in FIG. 7, adders 2 each having 4 inputs
Since the twist coefficient W nk for 1 may take only one of ± j and ± 1, depending on the value of the integer n 0 k 1 , that value is, for example, that shown in FIG. 8 corresponds to the second four-input adder in FIG. 7 above}, the one four-input adder 21 is used to add two inputs as shown in the figure. If the two-stage configuration of the units 210 and 211 is adopted, for example, the upper two 2-input adding means obtains the addition value of the real part, and the lower two two-input adding means,
Since the added value of the imaginary number part is obtained, each value is a real number a
And the imaginary number b, each four-input adder 21 shown in FIG. 7 can obtain a radix-4 Fourier transform value corresponding to four data strings input in parallel.
【0059】即ち、図7の上から2番目の加算器には、
前述のように、ひねり係数として、W0,W4,W8,W12が
必要であるので、上記a0+jb0,a1+jb1,a2+jb2,a3+jb3 に
対して、上記ひねり係数を乗算すると、 (a0+jb0)W0+(a1+jb1)W4+(a2+jb2)W8+(a3+jb3)W12 =(a0+jb0)+(b1-ja1)+(-a2-jb2)+(-b3+ja3) = {(a0+b1)-(a2+b3) }+j{(b0-a1)+(-b2+a3)}=a+
jb なる演算を施せばよいことが判る。以上が、基数4のフ
ーリエ変換の演算回路の詳細例である。That is, the second adder from the top of FIG.
As described above, since the twist coefficients W 0 , W 4 , W 8 and W 12 are required, the above a 0 + jb 0 , a 1 + jb 1 , a 2 + jb 2 , a 3 + jb 3 On the other hand, when the above twist coefficient is multiplied, (a 0 + jb 0 ) W 0 + (a 1 + jb 1 ) W 4 + (a 2 + jb 2 ) W 8 + (a 3 + jb 3 ) W 12 = (a 0 + jb 0 ) + (b 1 -ja 1 ) + (-a 2 -jb 2 ) + (-b 3 + ja 3 ) = {(a 0 + b 1 )-(a 2 + b 3 )} + J {(b 0 -a 1 ) + (-b 2 + a 3 )} = a +
It can be seen that it is sufficient to perform the operation jb. The above is a detailed example of a radix-4 Fourier transform arithmetic circuit.
【0060】次に、基数4の高速フーリエ変換アルゴリ
ズムに基づくパイプライン型高速フーリエ変換回路の例
を図9〜図12によって説明する。この例では、基数4
の高速フーリエ変換点数N=64の例である。前述のよう
に、基数Bの高速フーリエ変換の点数をNとすると、N
=BK 、ここで、K=1,2,3,・・・であり、B=2M 、M=
1,2,3,・・・である。このとき、BとMとqとの間に
は、以下の関係がある。即ち、r=1,2,3,・・
・,K−1,m=1,2,3,・・・・,Mとすると、
q=Br /2m である。Next, an example of a pipeline type fast Fourier transform circuit based on a radix-4 fast Fourier transform algorithm will be described with reference to FIGS. In this example, the radix-4
Is an example of the number of fast Fourier transform points N = 64. As described above, when the score of the radix B fast Fourier transform is N, N
= B K , where K = 1,2,3, ..., and B = 2 M , M =
1,2,3, ... At this time, the following relationships exist among B, M, and q. That is, r = 1, 2, 3, ...
., K-1, m = 1, 2, 3, ..., M,
q = B r / 2 m .
【0061】従って、この例では、64=43 であるので、
K=3 であり、B=4=22であるから、M=2 であり、r=1,2 、
m=1,2 が得られるので、r=2 に対して、q=8,4 が求めら
れ、r=1 に対して、q=2,1が求められる。即ち、r=
2,1のそれぞれに対して、データ並べ替え回路を必要
とすることを意味している。[0061] Thus, in this example, because it is 64 = 4 3,
K = 3, and since it is B = 4 = 2 2, a M = 2, r = 1,2,
Since m = 1,2 is obtained, q = 8,4 is obtained for r = 2 and q = 2,1 is obtained for r = 1. That is, r =
This means that a data rearrangement circuit is required for each of Nos. 2 and 1.
【0062】先ず、基数4の高速フーリエ変換点数N=
64であるので、64個の時系列のデータ列が、4個づつの
データ列 (0,16,32,48),(1,17,33,49)〜,(15,31,47,63)
にB(=4)分割される。First, the number of radix-4 fast Fourier transform points N =
Since it is 64, 64 time series data strings are four data strings (0,16,32,48), (1,17,33,49) ~, (15,31,47,63). )
Is divided into B (= 4).
【0063】前述の図1,図2の原理構成図からも分か
るように、r=2,1のそれぞれに対して、基数B(=
4)の場合には、j=B/2=4/2=2個の遅延クロ
ススイッチ 10 からなる遅延シャフル段 1a,1bをM=2
個備えたデータ並べ替え回路、及び、遅延シャフル段 1
c,1dをM=2個備えたデータ並べ替え回路が必要とな
る。第1段目の遅延シャフル段 1a では、遅延クロスス
イッチ(j=1) 10に対して、入力ライン0と入力ラインB
/21=4/2=2 ラインのデータ、即ち、第1列目のデータ
列でみると、0と 32 番目のデータ{上記遅延クロスス
イッチが、基数2に対応するものであるので、この遅延
クロススイッチには、基数2換算でみたデータ列を入力
する必要があることから、N/2=64/2番目に対応する
ものである必要がある}が入力され、遅延クロススイッ
チ(j=B/2=4/2=2) 10に対して、入力ライン1と入力ライ
ン3のデータ、即ち、16と48番目のデータが入力され
る。As can be seen from the principle configuration diagrams of FIGS. 1 and 2, the radix B (=
In the case of 4), the delay shuffle stages 1a and 1b composed of j = B / 2 = 4/2 = 2 delay cross switches 10 are connected to M = 2.
Data rearrangement circuit and delay shuffle stage 1
A data rearrangement circuit having M = 2 c and 1d is required. In the first delay shuffle stage 1a, the input line 0 and the input line B are connected to the delay cross switch (j = 1) 10.
/ 2 1 = 4/2 = 2 lines of data, that is, the 0th and 32nd data of the first column of data (since the delay cross switch corresponds to radix 2 Since it is necessary to input the data string in radix-2 conversion to the delay cross switch, it is necessary to correspond to N / 2 = 64 / 2th}, and the delay cross switch (j = B / 2 = 4/2 = 2) 10, the data of the input line 1 and the input line 3, that is, the 16th and 48th data are input.
【0064】この結果、(0,16,32,48),(1,17,33,49),〜
(15,31,47,63) のデータ列は、図10に示されている如
く、(0,16,8,24),(1,17,9,25),〜(39,55,47,63) のデー
タ列に並び替えられる。As a result, (0,16,32,48), (1,17,33,49), ...
The data string of (15,31,47,63) is (0,16,8,24), (1,17,9,25), ~ (39,55,47) as shown in FIG. , 63).
【0065】同様にして、上記のデータ列に対して、図
11に示されている第2段目の遅延シャフル段 1b で
は、遅延クロススイッチ(j=1) 10に対して、入力ライン
0と入力ラインB/22=4/4=1ラインのデータ、即ち、
第1列目のデータ列でみると、0と 16 番目のデータが
入力され、遅延クロススイッチ(j=1) 10に対して、入力
ライン2と入力ライン3のデータ、即ち、第1列目のデ
ータ列でみると、8と24番目のデータが入力される。Similarly, for the above data string, in the second delay shuffle stage 1b shown in FIG. 11, the delay cross switch (j = 1) 10 is connected to the input line 0 Input line B / 2 2 = 4/4 = 1 line data, that is,
In the data column of the first column, the 0th and 16th data are input, and for the delay cross switch (j = 1) 10, the data of input line 2 and input line 3, that is, the 1st column In the data column of, the 8th and 24th data are input.
【0066】このようにして、最初のデータ並べ替え処
理により、(0,4,8,12),(1,5,9,13),〜(51,55,59,63) の
データ列として出力され、次のフーリエ変換回路に入力
される。In this way, by the first data rearrangement processing, as a data string of (0,4,8,12), (1,5,9,13), ... (51,55,59,63) It is output and input to the next Fourier transform circuit.
【0067】基数4の場合には、Br (=42=16)個離れた
データ列を入力して、Br-1(=41=4)個離れたデータを、
図1に示されている原理構成図の第1段目, 第2段目の
シャフル段を用いて出力する。即ち、該遅延シャフル段
はm=1,2の2段構成とする必要がある。このとき
の、それぞれの各遅延シャフル段を構成している遅延ク
ロススイッチ 10 内の遅延回路の、各遅延段数qは、前
述の値から、8,4段であるので、それぞれを、図1
0,11では、遅延回路 10a,10bで示してある。In the case of the radix-4, a data string separated by B r (= 4 2 = 16) is input, and data separated by B r-1 (= 4 1 = 4) is
The shuffle stages of the first stage and the second stage of the principle configuration diagram shown in FIG. 1 are used for output. That is, the delay shuffle stage needs to have a two-stage configuration of m = 1 and 2. At this time, since the number of delay stages q of the delay circuit in the delay cross switch 10 constituting each delay shuffle stage is 8 or 4 stages from the above-mentioned value,
0 and 11 are indicated by delay circuits 10a and 10b.
【0068】従って、図10,図11に示されているよ
うに、本発明による高速フーリエ変換回路 2では、基数
B=4分割された距離16のデータ列(0,16,32,48),(1,1
7,33,49) 〜,(15,31,47,63)の4個づつを、並列に、前
述の基数4のフーリエ変換回路(図8,図9参照)に入
力して、フーリエ変換を行い、この出力を、遅延シャフ
ル段 1a,1bからなる第1のデータ並べ替え回路 (r=2 に
対応) に入力して、次のフーリエ変換に必要な距離4の
データ列(0,4,8,12),(1,5,9,13),〜に並べ替えて、再
度、上記と同じ基数4のフーリエ変換回路 2に入力し
て、基数4のフーリエ変換を行い、図11,図12に示
した遅延シャフル段 1c,1dからなる第2のデータ並べ替
え回路(r=1に対応) に入力し、それぞれの遅延シャフル
段 1c,1dを介して、距離1のデータ列を得て、最後のフ
ーリエ変換を、基数4のフーリエ変換回路 2で行うこと
により、周波数成分の順に整列されたデータ列(0,1,2,
3),(4,5,6,7) 〜(60,61,62,63) を得ることができる。
次に、基数8の高速フーリエ変換アルゴリズムに基づく
パイプライン型高速フーリエ変換回路の例を図13〜図
15によって説明する。Therefore, as shown in FIGS. 10 and 11, in the fast Fourier transform circuit 2 according to the present invention, the data string (0, 16, 32, 48) of the radix B = 4 divided into the distance 16 (0, 16, 32, 48), (1,1
7,33,49) to, (15,31,47,63) are input in parallel to the above-mentioned radix-4 Fourier transform circuit (see FIGS. 8 and 9) to perform Fourier transform. This output is input to the first data rearrangement circuit (corresponding to r = 2) consisting of delay shuffle stages 1a and 1b, and the data string (0,4, 8,12), (1,5,9,13), and so on, and again input to the same radix-4 Fourier transform circuit 2 as above to perform radix-4 Fourier transform. Input to the second data rearrangement circuit (corresponding to r = 1) consisting of the delay shuffle stages 1c and 1d shown in 12, and obtain the data string of distance 1 through each delay shuffle stage 1c and 1d. , The final Fourier transform is performed by the Fourier transform circuit 2 of radix 4, so that the data sequence (0, 1, 2,
3), (4,5,6,7) to (60,61,62,63) can be obtained.
Next, an example of a pipeline type fast Fourier transform circuit based on a radix-8 fast Fourier transform algorithm will be described with reference to FIGS.
【0069】この例では、基数8の高速フーリエ変換点
数N=64の例である。前述のように、基数Bの高速フー
リエ変換の点数をNとすると、N=BK 、ここで、K=1,
2,3,・・・であり、B=2M 、M=1,2,3,・・・である。
このとき、BとMとqとの間には、以下の関係がある。
即ち、r=1,2,3,・・・,K−1,m=1,2,
3,・・・・,Mとすると、q=Br /2m である。In this example, the number of fast Fourier transform points of radix 8 is N = 64. As described above, when the score of the fast Fourier transform of the radix B is N, N = B K , where K = 1,
2, 3, ..., B = 2 M , M = 1,2,3 ,.
At this time, the following relationships exist among B, M, and q.
That is, r = 1, 2, 3, ..., K-1, m = 1, 2,
3, ..., M, q = B r / 2 m .
【0070】従って、この例では、64=82 であるので、
K=2 であり、B=8=23であるから、M=3 であり、r=1 、m=
1,2,3 が得られるので、r=1 に対して、q=4,2,1 が求め
られる。即ち、この例では、r=1のに対して、q=4,2,
1 に対応するM(=3) 段構成のデータ並べ替え回路を1
つを必要とすることを意味している。[0070] Thus, in this example, because it is 64 = 8 2,
A K = 2, since it is B = 8 = 2 3, an M = 3, r = 1, m =
Since 1,2,3 are obtained, q = 4,2,1 is obtained for r = 1. That is, in this example, for r = 1, q = 4,2,
1 data rearrangement circuit with M (= 3) stages corresponding to 1
It means that you need one.
【0071】先ず、基数8の高速フーリエ変換点数N=
64であるので、64個の時系列なデータ列が、8個づつの
データ列 (0,8,16,24,32,40,48,56),(1,9,17,25,33,41,
49,57)〜,(7,15,23,31,39,47,55,63) にB(=8)分割
される。First, the number of radix-8 fast Fourier transform points N =
Since it is 64, 64 time series data strings are 8 data strings (0,8,16,24,32,40,48,56), (1,9,17,25,33, 41,
49,57) to, (7,15,23,31,39,47,55,63) are divided into B (= 8).
【0072】前述の図1の原理構成図からも分かるよう
に、基数B(=8)の、データ点数N=64場合には、j
=B/2=8/2=4個の遅延クロススイッチ 10 から
なる遅延シャフル段 1a,1b,1c をM=3段備えたデータ
並べ替え回路のみが必要となる。このデータ並べ回路の
第1段目の遅延クロススイッチ(j=1) 10に対して、入力
ライン0と入力ラインB/21=8/2=4のデータ、即ち、
第1列目のデータ列でみると、0番目と 32 番目のデー
タ{上記遅延クロススイッチが、基数2に対応するもの
であるので、この遅延クロススイッチには、基数2換算
でみたデータ列を入力する必要があることから、N/2
=64/2番目に対応するものである必要がある}が入力さ
れ、遅延クロススイッチ(j=2) 10に対して、入力ライン
1と入力ライン5のデータ、即ち、第1列目のデータ列
でみると、8番目と40番目のデータが入力される。以下
同様にして、遅延クロススイッチ(j=B/2=8/2=4) 10に対
して、入力ライン3と入力ライン7のデータ、即ち、第
1列目のデータ列でみると、24番目と56番目のデータが
入力される。As can be seen from the above-mentioned principle configuration diagram of FIG. 1, when the number of data points N = 64 in the radix B (= 8), j
= B / 2 = 8/2 = A data rearrangement circuit having M = 3 delay shuffle stages 1a, 1b, 1c consisting of four delay cross switches 10 is only required. Data of the input line 0 and the input line B / 2 1 = 8/2 = 4 to the first-stage delay cross switch (j = 1) 10 of this data arrangement circuit, that is,
Looking at the 1st data string, the 0th and 32nd data {Because the above delay cross switch corresponds to the radix 2, the data string in radix 2 conversion is used for this delay cross switch. N / 2 because it is necessary to input
= Needs to correspond to 64/2 second}, and the data of the input line 1 and the input line 5 to the delay cross switch (j = 2) 10, that is, the data of the first column Looking at the columns, the 8th and 40th data are input. Similarly, for the delay cross switch (j = B / 2 = 8/2 = 4) 10, the data of the input line 3 and the input line 7, that is, the first data line is 24 The 56th and 56th data are input.
【0073】この結果、8個づつのデータ列 (0,8,16,2
4,32,40,48,56),(1,9,17,25,33,41,49,57)〜,(7,15,23,
31,39,47,55,63) のデータ列は、図13に示されている
如く、(0,8,16,24,4,12,20,28),(1,9,17,25,5,13,21,2
9),〜(35,43,51,59,39,47,55,63) のデータ列に並び替
えられる。As a result, eight data strings (0,8,16,2
4,32,40,48,56), (1,9,17,25,33,41,49,57) ~, (7,15,23,
The data string of (31,39,47,55,63) is (0,8,16,24,4,12,20,28), (1,9,17,25) as shown in FIG. , 5,13,21,2
9), ~ (35,43,51,59,39,47,55,63) are sorted into the data sequence.
【0074】同様にして、上記のデータ列に対して、第
2段目の遅延シャフル段 1b では、遅延クロススイッチ
(j=1) 10に対して、入力ライン0と入力ラインB/22=
8/4=2ラインのデータ、即ち、第1列目のデータ列でみ
ると、0番目と 16 番目のデータが入力され、遅延クロ
ススイッチ(j=2) 10に対して、入力ライン2と入力ライ
ン3のデータ、即ち、第1列目のデータ列でみると、8
と24番目のデータが入力される。以下同様である。Similarly, for the above-mentioned data string, the delay shuffle stage 1b of the second stage has a delay cross switch.
For (j = 1) 10, input line 0 and input line B / 2 2 =
8/4 = 2 lines of data, that is, the 0th and 16th data is input in the first data line, and the input line 2 is input to the delay cross switch (j = 2) 10. The data of the input line 3, that is, the first data row, is 8
And the 24th data is entered. The same applies hereinafter.
【0075】同様にして、上記のデータ列に対して、本
例の場合には、第3段目の遅延シャフル段 1c では、遅
延クロススイッチ(j=1) 10に対して、入力ライン0と入
力ラインB/23=8/8=1ラインのデータ、即ち、第1列
目のデータ列でみると、0番目と8番目のデータが入力
され、遅延クロススイッチ(j=2) 10に対して、入力ライ
ン2と入力ライン3のデータ、即ち、第1列目のデータ
列でみると、2番目と10番目のデータが入力される。以
下同様である。Similarly, in the case of the present example, with respect to the above data string, in the delay shuffle stage 1c of the third stage, the input line 0 is input to the delay cross switch (j = 1) 10. Input line B / 2 3 = 8/8 = 1 line data, that is, 0th and 8th data are input in the first data column, and are input to the delay cross switch (j = 2) 10. On the other hand, in the data of the input lines 2 and 3, that is, the second and tenth data are input in the first data column. The same applies hereinafter.
【0076】このようにして、1つのデータ並べ替え処
理により、(0,1,2,3,4,5,6,7),(8,9,10,11,12,13,14,1
5) 〜(56,57,58,59,60,61,62,63) のデータ列として出
力され、次のフーリエ変換回路 3に入力される。In this way, by one data rearrangement process, (0,1,2,3,4,5,6,7), (8,9,10,11,12,13,14,1)
5) It is output as a data string of (56,57,58,59,60,61,62,63) and input to the next Fourier transform circuit 3.
【0077】基数8の場合には、Br (=81=8) 個離れた
データ列を入力して、Br-1(=80=1)個離れたデータを、
図1に示されている原理構成図の第1段目, 第2段目,
第3段目の遅延シャフル段を用いて出力する。即ち、該
遅延シャフル段はm=1,2,3の3段構成とする必要
がある。このときの、それぞれの各シャフル段を構成し
ている遅延クロススイッチ 10 内の遅延回路の、各遅延
段数qは、前述の値から、4,2,1段であるので、そ
れぞれを、図13〜図15では、遅延回路 10a,10b,10c
で示してある。In the case of the radix-8, a data string separated by B r (= 8 1 = 8) is input and data separated by B r-1 (= 8 0 = 1) is
1st stage, 2nd stage of the principle block diagram shown in FIG.
Output is performed using the third delay shuffle stage. That is, the delay shuffle stage needs to have a three-stage configuration of m = 1, 2, and 3. At this time, since the number of delay stages q of the delay circuit in the delay cross switch 10 forming each shuffle stage is 4, 2, 1 from the above-mentioned value, ~ In FIG. 15, delay circuits 10a, 10b, 10c
It is indicated by.
【0078】従って、図13〜図15に示されているよ
うに、本発明による高速フーリエ変換回路 3では、基数
B=8分割された距離8のデータ列(0,8,16,24,32,40,4
8,56) 〜(7,15,23,31,39,47,55,63)の8個づつを、並列
に、前述の基数8のフーリエ変換回路(図13参照)3
に入力して、フーリエ変換を行い、この出力を、遅延シ
ャフル段 1a,1b,1c に入力して、次のフーリエ変換に必
要な距離1のデータ列に並べ替えて、再度、上記と同じ
基数8のフーリエ変換回路 3(図15参照)に入力し
て、最後のフーリエ変換を行うことにより、周波数成分
の順に整列されたデータ列(0,1,2,3,4,5,6,7) 〜(56,5
7,58,59,60,61,62,63) を得ることができる。Therefore, as shown in FIGS. 13 to 15, in the fast Fourier transform circuit 3 according to the present invention, the data string (0,8,16,24,32) of distance 8 divided by radix B = 8. , 40,4
8,56) to (7,15,23,31,39,47,55,63) in parallel with each other in parallel with the radix-8 Fourier transform circuit (see FIG. 13) 3
To the delay shuffle stage 1a, 1b, 1c, rearranged to the data string of distance 1 required for the next Fourier transform, and again to the same radix as above. 8 into the Fourier transform circuit 3 (see FIG. 15) and the last Fourier transform is performed to obtain a data string (0, 1, 2, 3, 4, 5, 6, 7) arranged in order of frequency components. ) ~ (56,5
7,58,59,60,61,62,63) can be obtained.
【0079】次に、図16によって、本発明の他の実施
例について,基数4を例にして説明する。基数Bの高速
フーリエ変換のアルゴリズムによれば、前述のように、
基数Bの高速フーリエ変換の点数をNとすると、N=B
K 、ここで、K=1,2,3,・・・であり、B=2M 、M=1,2,
3,・・・である。このとき、BとMとqとの間には、以
下の関係がある。即ち、r=1,2,3,・・・,K−
1,m=1,2,3,・・・・,Mとすると、q=Br
/2m である。Next, referring to FIG. 16, another embodiment of the present invention will be described by taking a radix of 4 as an example. According to the radix B fast Fourier transform algorithm, as described above,
If the score of the fast Fourier transform of the radix B is N, then N = B
K , where K = 1,2,3, ..., and B = 2 M , M = 1,2,
3, ... At this time, the following relationships exist among B, M, and q. That is, r = 1, 2, 3, ..., K-
1, m = 1, 2, 3, ..., M, q = B r
It is / 2 m .
【0080】基数4であると、B=4=22 であるの
で、M=2 となることから、図1に示した原理構成図から
明らかなように、基数4に対応する本発明の高速フーリ
エ変換に必要なデータ並べ替え回路 1は、遅延シャフル
段 1a,〜が2段構成で、それぞれのシャフル段 1a,1b
は、遅延クロススイッチ 10 がj=B/2=4/2=2
個から構成される。When the radix is 4, B = 4 = 2 2 , and therefore M = 2. Therefore, as is apparent from the principle configuration diagram shown in FIG. The data rearrangement circuit 1 required for the Fourier transform is composed of two delay shuffle stages 1a, ..., each shuffle stage 1a, 1b.
Is the delay cross switch 10 j = B / 2 = 4/2 = 2
Composed of individual pieces.
【0081】従って、基数4の高速フーリエ点数Nの値
によって、N=BK の K=1,2,3, ・・・と変わるので、
上記データ並べ替え回路 1は、一般には、複数個必要と
なる。そこで、例えば、図9〜図12で示した例では、
高速フーリエ変換点数N=64の場合であって、この例で
は、上記遅延シャフル段 1a,1bからなるデータ並べ替え
回路 1と、遅延シャフル段 1c,1dからなるデータ並べ替
え回路 1の2段構成となっており、それぞれは同じ構成
であり、それぞれの遅延シャフル段 1a,1b,1c,1dを構成
している遅延クロススイッチ 10 の遅延回路 10a〜10d
の遅延段数q=Br /2m に基づいて、N(=64) =BK
=43 から求められる K=3の値から、r=2に対応する第1
のデータ並べ替え回路 1では、q=42/21=8,q=42/22=4 、
r=1 に対応する第2のデータ並べ替え回路 1では、q=41
/21=2,q=41/22=1 と、その遅延量が変わる。[0081] Thus, depending on the value of the Fast Fourier number N of radix-4, N = B K of K = 1,2,3, so they change the ...,
Generally, a plurality of data rearrangement circuits 1 are required. Therefore, for example, in the example shown in FIGS.
In the case of the number of fast Fourier transform points N = 64, in this example, the data rearrangement circuit 1 including the delay shuffle stages 1a and 1b and the data rearranging circuit 1 including the delay shuffle stages 1c and 1d have a two-stage configuration. They have the same configuration, and the delay circuits 10a to 10d of the delay cross switch 10 that configure the respective delay shuffle stages 1a, 1b, 1c, 1d.
Based on the number of delay stages q = B r / 2 m of N (= 64) = B K
= 4 3 From the value of K = 3, the first corresponding to r = 2
In the data rearrangement circuit 1, q = 4 2/2 1 = 8, q = 4 2/2 2 = 4,
In the second data rearrangement circuit 1 corresponding to r = 1, q = 4 1
/ 2 1 = 2, q = 4 1/2 2 = 1 and, the delay amount is changed.
【0082】この第1のデータ並べ替え回路 1と、第2
のデータ並べ替え回路 1とは、遅延クロススイッチ 10
での遅延段数qが異なることを除いて、各遅延シャフル
段の構成が同じであることに着目すると、図9〜図12
に示したように、2つの遅延シャフル段からなるデータ
並べ替え回路を1つの基数4の高速フーリエ変換回路を
介して循環接続し、該循環接続されているデータ並べ替
え回路を構成している、2つの遅延シャフル段 1a,1b,
又は、1d,1c での遅延量qを、いつ、該遅延シャフル段
をデータが通過するかにより可変とする構成にすること
により、1つのデータ並べ替え回路 1と1つの基数4の
高速フーリエ変換回路 2とで、任意の高速フーリエ変換
点数Nに対応した高速フーリエ変換を実現することがで
きる。This first data rearrangement circuit 1 and the second
The data rearrangement circuit 1 of is the delay cross switch 10
9 to FIG. 12, focusing on the fact that each delay shuffle stage has the same configuration except that the number of delay stages q in FIG.
, The data rearrangement circuit composed of two delay shuffle stages is cyclically connected through one radix-4 fast Fourier transform circuit to form the cyclically connected data rearrangement circuit. Two delay shuffle stages 1a, 1b,
Alternatively, by making the delay amount q at 1d and 1c variable depending on when the data passes through the delay shuffle stage, one data rearrangement circuit 1 and one radix-4 fast Fourier transform With the circuit 2, the fast Fourier transform corresponding to the arbitrary number N of fast Fourier transform points can be realized.
【0083】具体的には、N=BK から求められるKの
値に対応して、K−1回の遅延シャフルネットワーク
(2つの遅延シャフル段からなる)1 を通過するように
すると、第1回目の通過時には、q=BK-1(=r) /2m
だけの遅延段数を持つ遅延回路となり、第2回目の通過
時には、q=BK-2(=r) /2m だけの遅延段数を持つ遅
延回路となり、一般には、第i回目の通過時には、q=
BK-i(=r) /2m だけの遅延段数を持つ遅延回路となる
ようにする。Specifically, when the delay shuffle network (consisting of two delay shuffle stages) 1 is passed K-1 times corresponding to the value of K obtained from N = B K , the first On the second pass, q = B K-1 (= r) / 2 m
A delay circuit having a delay stage number of q = B K−2 (= r) / 2 m at the time of the second passage, and generally a delay circuit having a delay stage number of q = B K−2 (= r) / 2 m . q =
A delay circuit having a number of delay stages of only B Ki (= r) / 2 m is set.
【0084】図16に示した実施例において、FIFOメモ
リ 10a,10c (図1の101 対応) は、例えば、メモリ素子
を使用してライトカウンタとリードカウンタを内蔵し、
ライトに対するリードの開始タイミング (位置) を制御
することで、FIFO段数を制御することができる。In the embodiment shown in FIG. 16, the FIFO memories 10a and 10c (corresponding to 101 in FIG. 1) are provided with a write counter and a read counter using a memory device,
The number of FIFO stages can be controlled by controlling the read start timing (position) for writing.
【0085】このように、本発明においては、2本の入
力ラインと、2本の出力ラインとを持ち、一方の入力側
にq段の遅延段数を持つ遅延回路を持ち、他方の出力側
にも、q段の遅延段数を持つ遅延回路を持ち、各ライン
がq個のデータを受け取る毎に、各ラインを直通する
か、交換するクロススイッチの方向を切り換えるように
した遅延クロススイッチと、B/2個の、上記遅延クロ
ススイッチで、B個の入力ラインとB個の出力ラインと
を担当する遅延シャフル段と、該遅延シャフル段をM段
縦続接続し、第m段の各遅延クロススイッチはB/2m
だけ離れた入力ラインと出力ラインとを担当して、デー
タ伝送のシャフルを行う遅延シャフルネットワークによ
って、Br づつ離れたデータが、上記B個の入力ライン
に、B個づつ並列に入力されたとき、Br-1 づつ離れた
データをB個の出力ラインにB個づつ並列に出力するよ
うにしたデータ並べ回路と、B点フーリエ変換回路とを
交互に縦続接続して、基数Bの高速フーリエ変換アルゴ
リズムによるフーリエ変換を行うようにしたところに特
徴がある。As described above, in the present invention, a delay circuit having two input lines and two output lines, one input side having a number of delay stages of q stages, and the other output side is provided. Also has a delay circuit having a number of delay stages of q, and each time each line receives q pieces of data, a delay cross switch that directly connects each line or switches the direction of the cross switch to be exchanged, and B / 2 of the above delay cross switches, each of the delay shuffle stages in charge of B input lines and B output lines and M stages of the delay shuffle stages are cascade-connected to each m-th delay cross switch. Is B / 2 m
When input data and output lines are separated by a distance, and data that is separated by B r is input to the B input lines in parallel by B by a delay shuffle network that shuffles data transmission. , B r−1 separated data are output in parallel to B output lines, B data in parallel, and B point Fourier transform circuits are alternately cascaded to form a radix B fast Fourier circuit. The feature is that the Fourier transform is performed by the transform algorithm.
【0086】[0086]
【発明の効果】以上、詳細に説明したように、本発明の
高速フーリエ変換回路によれば、入力データの並列処理
が可能になる。従って、同じデータ量であるならば、基
数2に比較して、基数4は演算回路を1/2の速度で動
作させることができ、又、同じ演算速度であるならば、
2倍のデータ量を処理することができる。As described in detail above, the fast Fourier transform circuit of the present invention enables parallel processing of input data. Therefore, if the amount of data is the same, as compared with the radix 2, the radix 4 can operate the arithmetic circuit at a speed of 1/2, and if the arithmetic speed is the same,
Double the amount of data can be processed.
【0087】又、基数8は、基数2に比較して、同じ演
算速度ならば、4倍のデータを処理することができる。
又、比較的単純な構成で、基数4や,基数8の高速フー
リエ変換が可能となり、高集積化に寄与できる効果があ
る。In addition, the radix-8 can process four times as much data as the radix-2 at the same operation speed.
Further, with a relatively simple structure, radix-4 or radix-8 fast Fourier transform is possible, which has the effect of contributing to high integration.
【図1】本発明の原理構成図(その1)FIG. 1 is a principle configuration diagram of the present invention (No. 1)
【図2】本発明の原理構成図(その2)FIG. 2 is a principle configuration diagram of the present invention (No. 2)
【図3】遅延クロススイッチの動作例を示した図(その
1)FIG. 3 is a diagram showing an operation example of a delay cross switch (No. 1)
【図4】遅延クロススイッチの動作例を示した図(その
2)FIG. 4 is a diagram showing an operation example of a delay cross switch (No. 2)
【図5】本発明の遅延シャフル段の構成例を示した図
(その1)FIG. 5 is a diagram showing a configuration example of a delay shuffle stage of the present invention (No. 1)
【図6】本発明の遅延シャフル段の構成例を示した図
(その2)FIG. 6 is a diagram showing a configuration example of a delay shuffle stage of the present invention (No. 2)
【図7】基数4のひねり係数乗算部とバタフライ演算部
を示した図FIG. 7 is a diagram showing a radix-4 twist coefficient multiplication unit and a butterfly calculation unit.
【図8】基数4のバタフライ演算部の詳細例を示した図FIG. 8 is a diagram showing a detailed example of a radix-4 butterfly operation unit.
【図9】本発明の一実施例を示した図(その1)FIG. 9 is a diagram showing an embodiment of the present invention (No. 1).
【図10】本発明の一実施例を示した図(その2)FIG. 10 is a diagram showing an embodiment of the present invention (No. 2).
【図11】本発明の一実施例を示した図(その3)FIG. 11 is a diagram showing an embodiment of the present invention (part 3).
【図12】本発明の一実施例を示した図(その4)FIG. 12 is a diagram showing an embodiment of the present invention (No. 4).
【図13】本発明の一実施例を示した図(その5)FIG. 13 is a view showing an embodiment of the present invention (No. 5).
【図14】本発明の一実施例を示した図(その6)FIG. 14 is a diagram showing an embodiment of the present invention (No. 6).
【図15】本発明の一実施例を示した図(その7)FIG. 15 is a diagram showing an embodiment of the present invention (No. 7).
【図16】本発明の他の実施例を示した図(その1)FIG. 16 is a diagram showing another embodiment of the present invention (No. 1).
【図17】本発明の他の実施例を示した図(その2)FIG. 17 is a diagram showing another embodiment of the present invention (No. 2).
【図18】従来の高速フーリエ変換回路を説明する図
(その1)FIG. 18 is a diagram explaining a conventional fast Fourier transform circuit (No. 1).
【図19】従来の高速フーリエ変換回路を説明する図
(その2)FIG. 19 is a diagram for explaining a conventional fast Fourier transform circuit (No. 2).
【図20】従来の高速フーリエ変換回路を説明する図
(その3)FIG. 20 is a diagram (part 3) for explaining a conventional fast Fourier transform circuit.
1 データ並べ替え回路, 又は、遅延シャフルネット
ワーク 1a〜 遅延シャフル段 10 遅延クロ
ススイッチ 100 クロススイッチ 101,102,10a,〜
遅延回路 103,42,43 マルチプレクサ(MUX) 20,22 ひねり係数乗算部 21 4入力加
算器 30 バタフライ演算部 2 基数4のフーリエ変換回路 3 基数8のフーリエ変換回路1 Data rearrangement circuit or delay shuffle network 1a ~ Delay shuffle stage 10 Delay cross switch 100 Cross switch 101,102,10a, ~
Delay circuit 103,42,43 Multiplexer (MUX) 20,22 Twist coefficient multiplication unit 21 4-input adder 30 Butterfly operation unit 2 Fourier transform circuit of radix 4 3 Fourier transform circuit of radix 8
Claims (3)
を持ち、該ラインを直通するか,交換するクロススイッ
チ(100) と、 該クロススイッチ(100) は、一方の入力側にq段の遅延
段数を持つ遅延回路(101) を持ち、他方の出力側にも、
q段の遅延段数を持つ遅延回路(102) を持ち、各ライン
がq個のデータを受け取る毎に、各ラインを直通する
か、交換する上記クロススイッチ(100) の方向を切り換
えるようにした遅延クロススイッチ(10)と、 B/2個の、上記遅延クロススイッチ(10)で、B個の入
力ラインとB個の出力ラインとを担当する遅延シャフル
段(1a,〜) と、該遅延シャフル段(1a,〜) をM段縦続接
続し、第m段の各遅延クロススイッチはB/2m だけ離
れた入力ラインと出力ラインとを担当して、データ伝送
のシャフルを行う遅延シャフルネットワーク(1) によっ
て、Br づつ離れたデータが、上記B個の入力ライン
に、B個づつ並列に入力されたとき、Br-1 づつ離れた
データをB個の出力ラインにB個づつ並列に出力するよ
うにしたことを特徴とするデータ並べ替え回路。1. A cross switch (100) having two input lines and two output lines for directly connecting or exchanging the lines, and the cross switch (100) is provided on one input side. It has a delay circuit (101) with q delay stages, and the other output side also has
Delay that has a delay circuit (102) with q number of delay stages, and switches the direction of the cross switch (100) that directly connects or exchanges each line each time it receives q data. A cross switch (10), and B / 2 delay cross switches (10) for delay shuffle stages (1a, ...) In charge of B input lines and B output lines, and the delay shuffles. Delay stages (1a, ~) are cascaded in M stages, and each delay cross switch in the mth stage is responsible for an input line and an output line separated by B / 2 m, and performs a delay shuffle network for shuffling data transmission ( According to 1), when the data separated by B r is inputted in parallel to the B input lines, B in parallel, the data separated by B r-1 is parallel to B in the output line by B. A data rearrangement circuit characterized by being output.
ーリエ変換の基数をBとしたとき、 N=BK ここで、K=1,2,3,・・・ B=2M ここで、M=1,2,3,・・・・ を満足するとき、q=Br /2m r=1,2,3,・・,K-1 m=1,2,3,・・,M である、点数N,基数Bの高速フーリエ変換を、基数B
のフーリエ変換回路(2,3) と、上記請求項1に記載の遅
延シャフルネットワーク(1) とを、交互に縦続接続し、
基数Bの高速フーリエ変換アルゴリズムに基づいて行う
ことを特徴とする高速フーリエ変換回路。2. When N is the number of fast Fourier transform points and B is the radix of the fast Fourier transform, N = B K, where K = 1,2,3, ... B = 2 M, where When M = 1,2,3, ..., is satisfied, q = B r / 2 m r = 1,2,3, ..., K-1 m = 1,2,3, ..., M The fast Fourier transform with the point N and the radix B is
The Fourier transform circuit (2, 3) and the delay shuffle network (1) according to claim 1 are alternately connected in cascade,
A fast Fourier transform circuit characterized in that it is performed based on a radix B fast Fourier transform algorithm.
ワーク(1) は、可変長の先入れ先出しメモリによる遅延
回路(101,102) を持つ、M個の遅延量可変の遅延シャフ
ル段(1a,〜) からなり、 該遅延シャフルネットワーク(1) の出力を、上記基数B
のフーリエ変換回路(2,3) に接続し、 上記基数Bのフーリエ変換回路(2,3) の出力は、上記遅
延シャフルネットワーク(1) の入力側に接続するように
した巡回接続とし、 基数Bの高速フーリエ変換を行う際、K-1 回、上記遅延
シャフルネットワーク(1) を通過するようにし、第i回
目の通過時には、q=BK-i /2m だけの遅延段数を持
つ遅延回路(101,102) としたことを特徴とする基数Bの
高速フーリエ変換回路。3. The delay shuffle network (1) according to claim 1, comprising delay circuits (101, 102) having variable length first-in first-out memories and having M variable delay shuffle stages (1a, ...). And the output of the delay shuffle network (1) is converted to the radix B
Connected to the Fourier transform circuit (2,3) of the above, and the output of the Fourier transform circuit (2,3) of the above radix B is a cyclic connection that is connected to the input side of the above delay shuffle network (1). When the fast Fourier transform of B is performed, the delay shuffle network (1) is passed K-1 times, and at the i-th pass, a delay circuit (q = B Ki / 2 m) having a number of delay stages ( 101, 102), and a radix-B fast Fourier transform circuit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12985593A JPH06342449A (en) | 1993-06-01 | 1993-06-01 | Data rearranging circuit and high-speed fourier transform circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12985593A JPH06342449A (en) | 1993-06-01 | 1993-06-01 | Data rearranging circuit and high-speed fourier transform circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06342449A true JPH06342449A (en) | 1994-12-13 |
Family
ID=15019933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12985593A Withdrawn JPH06342449A (en) | 1993-06-01 | 1993-06-01 | Data rearranging circuit and high-speed fourier transform circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06342449A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011227559A (en) * | 2010-04-15 | 2011-11-10 | Nec Corp | Control information automatic generation method for data sorting circuit, data sorting circuit and control information automatic generation program |
JP2015503785A (en) * | 2011-12-27 | 2015-02-02 | ゼットティーイー コーポレイション | FFT / DFT reverse sorting system, method, and operation system thereof |
US9002919B2 (en) | 2009-09-24 | 2015-04-07 | Nec Corporation | Data rearranging circuit, variable delay circuit, fast fourier transform circuit, and data rearranging method |
WO2021210069A1 (en) * | 2020-04-14 | 2021-10-21 | 三菱電機株式会社 | Frequency analysis device, frequency analysis method, control circuit, and storage medium |
-
1993
- 1993-06-01 JP JP12985593A patent/JPH06342449A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9002919B2 (en) | 2009-09-24 | 2015-04-07 | Nec Corporation | Data rearranging circuit, variable delay circuit, fast fourier transform circuit, and data rearranging method |
JP2011227559A (en) * | 2010-04-15 | 2011-11-10 | Nec Corp | Control information automatic generation method for data sorting circuit, data sorting circuit and control information automatic generation program |
JP2015503785A (en) * | 2011-12-27 | 2015-02-02 | ゼットティーイー コーポレイション | FFT / DFT reverse sorting system, method, and operation system thereof |
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 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
He et al. | A new approach to pipeline FFT processor | |
KR100313501B1 (en) | Fft processor with cbfp algorithm | |
US4868776A (en) | Fast fourier transform architecture using hybrid n-bit-serial arithmetic | |
Garrido et al. | The serial commutator FFT | |
JPH076161A (en) | Method and apparatus for conversion of frequency into time region | |
US5038311A (en) | Pipelined fast fourier transform processor | |
JP5954415B2 (en) | FFT circuit | |
CN103226543A (en) | FFT processor with pipeline structure | |
Boriakoff | FFT computation with systolic arrays, a new architecture | |
WO2006109240A2 (en) | Fast fourier transform architecture | |
WO2002091221A3 (en) | Address generator for fast fourier transform processor | |
JPS6382546A (en) | Apparatus for calculating discrete conversion | |
JPH06342449A (en) | Data rearranging circuit and high-speed fourier transform circuit | |
US7246143B2 (en) | Traced fast fourier transform apparatus and method | |
JP2015503785A (en) | FFT / DFT reverse sorting system, method, and operation system thereof | |
JPH08320858A (en) | Unit and method for fourier transformation arithmetic operation | |
JPH08137832A (en) | Butterfly arithmetic circuit and fast fourier transforming device using same | |
JP2848134B2 (en) | Variable fast Fourier transform circuit | |
KR100617248B1 (en) | Apparratus and method for performing fast fourier transform | |
KR100576520B1 (en) | Variable fast fourier transform processor using iteration algorithm | |
JPH09245109A (en) | Functional transformation arithmetic unit | |
Meletis et al. | High-speed pipeline implementation of radix-2 DIF algorithm | |
US9098435B1 (en) | Finite impulse response filter with parallel input | |
TWI313825B (en) | ||
KR100193385B1 (en) | Method and apparatus for performing DCT / DST / DHT by unified systolic array structure |
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: 20000801 |