JPH0228188B2 - KOSOKUFUURIE HENKANNOENZANSOCHI - Google Patents

KOSOKUFUURIE HENKANNOENZANSOCHI

Info

Publication number
JPH0228188B2
JPH0228188B2 JP58078824A JP7882483A JPH0228188B2 JP H0228188 B2 JPH0228188 B2 JP H0228188B2 JP 58078824 A JP58078824 A JP 58078824A JP 7882483 A JP7882483 A JP 7882483A JP H0228188 B2 JPH0228188 B2 JP H0228188B2
Authority
JP
Japan
Prior art keywords
data
value
phase rotation
output
calculation
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.)
Expired - Lifetime
Application number
JP58078824A
Other languages
Japanese (ja)
Other versions
JPS59205670A (en
Inventor
Yoshiaki Tanaka
Mamoru Inami
Yoshiki Ootsuki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP58078824A priority Critical patent/JPH0228188B2/en
Priority to GB08411261A priority patent/GB2140600B/en
Priority to DE19843416536 priority patent/DE3416536A1/en
Priority to FR8407007A priority patent/FR2545629B1/en
Publication of JPS59205670A publication Critical patent/JPS59205670A/en
Publication of JPH0228188B2 publication Critical patent/JPH0228188B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm

Description

【発明の詳細な説明】[Detailed description of the invention]

産業上の利用分野 本発明は高速フーリエ変換の演算装置に係り、
高速フーリエ変換(FFT)の演算を高速で行な
う演算装置に関する。 従来技術 周知のように、アナログ信号波形の周波数スペ
クトルは、このアナログ信号波形をフーリエ変換
することによつて求められるから、このようなフ
ーリエ変換並びにその逆変換を電子計算機により
行なうことにより、アナログ信号の周波数分析等
ができ、またフーリエ変換出力にフイルタの伝達
関数を乗算し、それをフーリエ逆変換することに
より信号の波もできることが従来より知られて
いた。しかし、電子計算機を用いても上記のフー
リエ変換等に長時間の演算時間を必要とすること
が少なくなかつたが、1965年にクーリー
(Cooley)とチユーキー(Tukey)によつて発表
された高速フーリエ変換(FFT:フアースト・
フーリエ・トランスフオーム)により大幅な演算
時間の短縮化ができることが示されて以来、この
FFTは現在では音声信号等の周波数分析,認識,
合成や,デイジタルフイルタ,画像データ処理,
医療用断層写真,光計測など多数の技術分野に亘
つて使用されていることは周知の通りである。 FFTに関しては多くの文献(例えば、E.O.
BRIGHAM著、宮川、今井共訳「高速フーリエ
変換」、科学技術出版社、’74、166頁〜182頁)
に記載されており、公知であるのでその詳細な説
明は省略するが、その原理は離散的フーリエ変換
(DFT:デイスクリート・フーリエ・トランスフ
オーム)とその逆変換(IDFT:インバース・デ
イスクリート・フーリエ・トランスフオーム)を
定義する次式 DFT:XkN-1p=0 Xp・Wpk (1) IDFT:Xp=1/NN-1k=0 Xk・W-pk (2) ここでW=exp{(−j2π)/N} (3) の計算で、同じ乗算を何回も繰り返すことがない
ように、長い数列のDFTを少数個毎に分割して
何回にも分けて行なうことにより、乗算回数を減
らして演算時間を短縮したアルゴリズムである。
なお、(1)式及び(2)式中、xpは時間関数のサンプ
ル値系列で、Xkは周波数スペクトルのサンプル
値系列で、またp及びkは夫々OからN―1まで
の範囲の正の整数を示す。また(1)〜(3)式中、pk
をsとおくと、Wpkは Wpk=Ws =cos{(2πs)/N} −jsin{(2πs)/N} (4) で示される。このWsは位相回転因子と呼ばれる
変数である。 (1)式を直接的に計算する場合はWは複素数であ
るし、xpも複素数であつてもよいので、N2回の
複素数の乗算と、N(N―1)回の複素数の加算
とを必要とするのに対し、FFTによれば入力デ
ータ列のデータ数Nの半数であるN/2と、ステ
ージ数(計算例の列数)であるlog2Nとの積で表
わされる垂算回数と、その2倍の複素数の加算を
要する。従つて、演算時間が乗算回数に比例する
と仮定すると、FFTは上記直接的な計算方法に
比し大幅に演算時間を短縮することができる。 発明が解決しようとする問題点 しかるに、上記のFFTにより演算時間が大幅
に短縮されたといつても、実際にFFTの演算結
果に基づいて得られたデータによる画像をデイス
プレイ装置に表示するにあたり、視覚的に実時間
であると見做せるほど演算時間を速くすることは
困難であるという問題点があつた。 そこで、本発明は位相回転因子を乗算する必要
のない2つのタイプと乗算する必要のあるタイプ
とに分類し、かつ、それらの位相回転因子の周期
的出現に着目して次々の位相回転因子を予測し
て、効率良くバタフライ演算することにより、乗
算回数を従来のFFT演算装置よりも減少し得、
もつて視覚的に実時間であると見做せるほどに演
算時間を短縮し得る高速フーリエ変換の演算装置
を提供することを目的とする。 問題点を解決するための手段 本発明は、入力データに対し位相回転因子を用
いたバタフライ演算を順次行なつて高速フーリエ
変換されたデータ列を得る演算装置であつて、第
1及び第2の入力データのうち該第1の入力デー
タの実数部が少なくとも供給される第1及び第2
の加減算器と、該第1の入力データの虚数部が少
なくとも供給される第3及び第4の加減算器と、
上記位相回転因子の値が1又は−jのときに該第
2の入力データの実数部と虚数部とを該位相回転
因子と乗算させることなくそのまま該第1乃至第
4の加減算器へ夫々出力し、上記位相回転因子の
値が上記以外の値のときは該第2の入力データの
実数部と虚数部とを夫々該位相回転因子に乗算し
た結果を該第1乃至第4の加減算器へ出力する切
換手段とより構成したものであり、以下その一実
施例について図面と共に説明する。 実施例 本発明はFFTの信号流れ図上の変数である位
相回転因子Wsを乗算する必要のない2つのタイ
プ(タイプ,タイプ)と、乗算する必要のあ
るタイプに分類し、かつ、それらのタイプの周期
的出現に着目して効率良くバタフライ演算するよ
う構成したものであり、まずその原理について説
明する。 FFTアルゴリズムに必要な計算は、第一図に
示す如き信号流れ図により簡潔に表現することが
できる。第1図は前記(1)式の時間関数のサンプル
値系列xpのデータ数Nが「8」の場合の信号流
れ図で、xo〜x7よりなるデータ列は左端の節点
列で示され、2番目,3番目及び4番目の節点列
は計算列と呼ばれるが、ここではステージ1,ス
テージ2及びステージ3ともいうものとする。信
号流れ図における計算列(ステージ)の各節点に
は、前の節点から伝達路を表わす2本の実線が入
る。伝達路は一つ前の列の節点から出力される数
値に位相回転因子Wsを掛けて、その結果を次の
列の節点に伝達する。すなわち、第1図に示す各
節点のうち相隣る4つの節点についてみると、第
2図に示す如く、2つの節点の1対の入力データ
A及びBは、次の節点にデータC,Dとして伝達
されるが、この場合、出力データCはA+BWs
の演算結果によるデータであり、出力データDは
A―BWsの演算結果によるデータであり、これ
らの基本演算をバタフライ演算と呼ぶことは周知
の通りである。バタフライ演算はステージ1→ス
テージ2→ステージ3の順序で行なわれる。 上記のバタフライ演算の回数は入力データの半
数であるN/2とステージ数(計算列数)である
log2Nとの積であり、第1図の例ではN=8であ
るから12回である。ここで、第1図からわかるよ
うに、どのステージにも、前のステージの同じ一
対の節点から出た伝達路が入る二つの節点があり
(この二つの節点を双対節点対という)、ステージ
lにおける双対節点対間の間隔はN/2lである。
一般に、一つの節点における位相回転因子と、そ
の双対節点における位相回転因子とは夫々絶対値
が同じで、符号が異なるだけであるから、双対節
点対の値を計算するために必要な複素数の乗算は
1回で良いことが知られている。 また一つの節点において、1つ前の列の節点の
データに乗算する位相回転因子Wsのsの値は、
データxo〜x7の添字「0」〜「7」を引数と呼
ぶものとすると、各列の節点は引数で表わされ、
引数の最大値を表わせる最小のビツト数Υの2進
数で各引数を表わし、この2進数をΥからステー
ジ数lだけ差し引いた値だけ右へビツトシフト
し、左側のΥ―lビツトに「0」を補い、更にそ
の2進数のビツト順序を逆転することにより得ら
れる。このように、sの値を求めるためには、引
数を示すΥビツトの2進数を右へΥ―lビツトず
らす必要があるが、演算処理においてこれを実行
するためには、引数(これをnとする)を2〓-l
除したときの整数部(これをPで表わすものとす
る)に対し、ビツト順序逆転を行なわねばならな
いことが知られている。従つて、第1図の例で
は、sの値は「0」,「2」,「1」,「3」のいずれ
かとなる。 以上より、上記の引数、ステージ数及び整数部
Pの各値の関係は第1図の場合を例にとると、第
3図に示す如き図表で表わすことができる。第3
図において、X印は前記した双対節点対を構成す
る2つの節点のうち、乗算が不要な他方の節点を
示す。またステージ数と引数とによつて表わされ
る値は、前記整数部Pの値を示し、例えばステー
ジ数が「1」で、引数が「0」〜「3」の各場合
の整数部Pは、lが1,Υが3,nが0〜3であ
るから、「0」となる。また、ステージ数が2で、
引数が「4」又は「5」のいずれかである場合の
整数部Pは、lが2,Υが3,nが4又は5であ
るから、「2」となる。 また、上記整数部Pの値と、位相回転因子Ws
における角度θ(ただし、θは(4)式中の2πs/N)
との関係は、第4図に示す如くになる。第1図の
場合、整数部Pは第3図からもわかるように、
「0」,「2」,「4」,「6」のいずれかとなるが、
Pが「0」のときはθは0゜であり、「2」のとき
はθ2(=90゜),「4」のときはθ4(=45゜),「6
」と
きはθ6(=135゜)となる。 また一例として入力データ列のデータ数が256
(=28)の場合の引数256,ステージ数8(=
log2256),及び整数部Pの各値の関係は、第3図
に示す方法と同様の方法で図示すると、第5図に
示す如くになる。こ場合は、整数部Pの値は上記
「0」,「2」,「4」,「6」の他に、「8」以上で
「254」以下の偶数をとる。また、整数部Pが
「8」,「10」,「12」,「14」である場合の前記角度
θは、第4図に8,10,12,及び14で示す
実線と0で示す実線とがなす角度で表わされる。 ところで、前記第2図に示した入力データA,
Bを夫々 A=AR+jAI B=BR+jBI (5) で表わすものとすると、(4)式及び(5)式から C=A+BWs =(AR+BR・cosθ+BIsinθ+ j(AI+BIcosθ−BRsinθ) =AR+TR+j(AI+TI) (6) D=A−BWs =AR−TR+j(AI−TI) (7) となる。(6)式からわかるように、TRを求めるた
めには2回の乗算が必要であり、TIを求めるた
めにはやはり2回の乗算が必要であり、結局、C
を求める場合には計4回の乗算が必要となる(D
も同様)。なお、TR,TIはCを求めた時にメモリ
に記憶しておくことにより、Dを求めるときに再
度計算することなく使用することができる。 しかして、第4図からわかるように、整数部P
の値が「0」のときは、θが0゜であり、cosθ=
1,sinθ=0であるから、(4)式からWsは「1」
となり、よつて(6)及び(7)式からC=A+B,D=
A−Bとなり、C及びDは加減算のみのバタフラ
イ演算によつて生成することができる。しかも、
ステージ1でバタフライ演算においては、入力デ
ータは実数部のみで虚数部は0であるから、整数
部Pの値が「0」のときは(5)式中AI=BI=0で
あるから、CはAR+BRとなり、かつ、DはAR
BRとなり、実数部のみの演算によつて出力デー
タも実数部のみとなる。これにより、整数部Pが
「0」である場合は、ステージ2以降においても
バタフライ演算されるべき入力データと位相回転
因子とは夫々共に実数部のみからなるため、虚数
部の演算は不要となる。また、整数部Pの値が
「2」のときは、θが90゜であるからWsは−jと
なり、この場合は出力データには実数部と虚数部
とが存在するが、C及びDは加減算のみによつて
生成することができる。 また、整数部Pの値が「4」又は「6」のとき
は、第4図からわわかるように、θが45゜,135゜
であるから、いずれの場合も となるから、Ws
INDUSTRIAL APPLICATION FIELD The present invention relates to an arithmetic device for fast Fourier transform,
The present invention relates to an arithmetic device that performs fast Fourier transform (FFT) operations at high speed. Prior Art As is well known, the frequency spectrum of an analog signal waveform can be obtained by Fourier transforming the analog signal waveform. It has been known for some time that signal waves can be generated by multiplying the Fourier transform output by the transfer function of a filter and performing inverse Fourier transform. However, even when electronic computers were used, the above-mentioned Fourier transform often required a long calculation time, but in 1965, Cooley and Tukey announced the use of fast Fourier transform. Transformation (FFT: first
Since it was shown that the calculation time can be significantly reduced by using Fourier transform, this
FFT is currently used for frequency analysis and recognition of audio signals, etc.
Synthesis, digital filters, image data processing,
It is well known that it is used in many technical fields such as medical tomography and optical measurement. There is a lot of literature regarding FFT (e.g. EO
BRIGHAM, co-translated by Miyagawa and Imai, "Fast Fourier Transform", Science and Technology Publishing, '74, pp. 166-182)
Since it is well known, its detailed explanation will be omitted, but its principle is based on the discrete Fourier transform (DFT: discrete Fourier transform) and its inverse transform (IDFT: inverse discrete Fourier transform).・DFT: X k = N-1p=0 X p・W pk (1) IDFT: X p = 1/N N-1k=0 X k・W -pk (2) Here, in the calculation of W=exp{(-j2π)/N} (3) To avoid repeating the same multiplication over and over again, divide the long sequence of DFT into small numbers and calculate how many times. This algorithm reduces the number of multiplications and shortens the calculation time by dividing the calculation into two parts.
In equations (1) and (2), xp is a sample value series of the time function, Xk is a sample value series of the frequency spectrum, and p and k are positive numbers in the range from O to N-1, respectively. Indicates an integer. In addition, in formulas (1) to (3), pk
Letting s be W pk , W pk is expressed as W pk = W s = cos {(2πs)/N} −jsin {(2πs)/N} (4). This W s is a variable called a phase rotation factor. When formula (1) is directly calculated, W is a complex number and xp may also be a complex number, so N 2 complex number multiplications and N (N-1) complex number additions are required. On the other hand, according to FFT, the subtraction is expressed as the product of N/2, which is half of the number of data N in the input data string, and log 2 N, which is the number of stages (number of columns in the calculation example). It requires addition of the number of times and a complex number twice that number. Therefore, assuming that the calculation time is proportional to the number of multiplications, FFT can significantly reduce the calculation time compared to the above-mentioned direct calculation method. Problems to be Solved by the Invention However, even though the above-mentioned FFT has significantly shortened the computation time, it is difficult to visually display an image based on the data obtained based on the FFT computation results on a display device. There was a problem in that it was difficult to make the calculation time so fast that it could be considered real time. Therefore, the present invention classifies the phase rotation factors into two types: one that does not require multiplication and one that requires multiplication, and focuses on the periodic appearance of these phase rotation factors to calculate successive phase rotation factors. By predicting and efficiently performing butterfly calculations, the number of multiplications can be reduced compared to conventional FFT calculation devices.
It is an object of the present invention to provide a fast Fourier transform calculation device that can shorten the calculation time to the extent that it can be visually considered to be real time. Means for Solving the Problems The present invention is an arithmetic device that sequentially performs a butterfly operation using a phase rotation factor on input data to obtain a fast Fourier transformed data string. first and second input data to which at least the real part of the first input data is supplied;
and third and fourth adder/subtractors to which at least the imaginary part of the first input data is supplied;
When the value of the phase rotation factor is 1 or -j, the real part and imaginary part of the second input data are output as they are to the first to fourth adders/subtractors, respectively, without being multiplied by the phase rotation factor. However, when the value of the phase rotation factor is a value other than the above, the results of multiplying the phase rotation factor by the real part and imaginary part of the second input data are sent to the first to fourth adders/subtractors. It is composed of a switching means for outputting an output, and one embodiment thereof will be described below with reference to the drawings. Embodiment The present invention classifies the phase rotation factor W s , which is a variable on the FFT signal flow diagram, into two types (type, type) that do not require multiplication and a type that requires multiplication. It is designed to efficiently perform butterfly calculations by focusing on the periodic appearance of . First, the principle will be explained. The calculations required for the FFT algorithm can be expressed concisely by a signal flow diagram as shown in Figure 1. Figure 1 is a signal flow diagram when the number N of data in the sample value series xp of the time function of equation (1) is " 8 ". The 3rd, 3rd, and 4th node sequences are called calculation sequences, but are also referred to as stage 1, stage 2, and stage 3 here. At each node of the calculation sequence (stage) in the signal flow diagram, two solid lines representing a transmission path are entered from the previous node. The transmission path multiplies the numerical value output from the node in the previous column by the phase rotation factor W s and transmits the result to the node in the next column. That is, looking at the four adjacent nodes among the nodes shown in FIG. 1, as shown in FIG. In this case, the output data C is A+BW s
The output data D is the data resulting from the calculation of A-BW s , and it is well known that these basic calculations are called butterfly calculations. The butterfly operation is performed in the order of stage 1 → stage 2 → stage 3. The number of times of the above butterfly operation is equal to N/2, which is half of the input data, and the number of stages (number of calculation columns).
It is the product of log 2 N, and in the example of FIG. 1, N=8, so it is 12 times. As can be seen from Figure 1, each stage has two nodes into which the transmission paths from the same pair of nodes in the previous stage enter (these two nodes are called a dual node pair), and stage l The spacing between pairs of dual nodes in is N/2 l .
In general, the phase rotation factor at one node and the phase rotation factor at its dual node have the same absolute value and only differ in sign, so the multiplication of complex numbers is necessary to calculate the value of the dual node pair. It is known that one time is enough. Also, at one node, the value of s of the phase rotation factor W s that is multiplied by the data of the node in the previous column is:
Assuming that the subscripts "0" to "7" of data xo to x7 are called arguments, the nodes in each column are represented by arguments,
Each argument is represented by a binary number with the minimum number of bits Υ that can represent the maximum value of the argument, this binary number is bit-shifted to the right by the value obtained by subtracting the number of stages l from Υ, and "0" is written to the left Υ-l bits. It can be obtained by supplementing , and then reversing the bit order of the binary number. In this way, in order to find the value of s, it is necessary to shift the Υ-bit binary number representing the argument to the right by Υ-l bits, but in order to perform this in arithmetic processing, the argument (this It is known that bit order reversal must be performed on the integer part (denoted by P) when dividing (2〓 -l ). Therefore, in the example of FIG. 1, the value of s is one of "0", "2", "1", and "3". From the above, the relationship among the arguments, the number of stages, and each value of the integer part P can be expressed in a chart as shown in FIG. 3, taking the case of FIG. 1 as an example. Third
In the figure, the mark X indicates the other node that does not require multiplication among the two nodes forming the dual node pair described above. Further, the value represented by the stage number and argument indicates the value of the integer part P. For example, when the stage number is "1" and the argument is "0" to "3", the integer part P is: Since l is 1, Υ is 3, and n is 0 to 3, it is "0". Also, the number of stages is 2,
When the argument is either "4" or "5", the integer part P is "2" because l is 2, Υ is 3, and n is 4 or 5. Also, the value of the above integer part P and the phase rotation factor W s
angle θ (where θ is 2πs/N in equation (4))
The relationship is as shown in FIG. In the case of Figure 1, the integer part P is, as can be seen from Figure 3,
It will be either "0", "2", "4", or "6",
When P is "0", θ is 0°, when it is "2", θ 2 (=90°), when it is "4", θ 4 (=45°), and "6".
” then θ 6 (=135°). Also, as an example, the number of data in the input data string is 256.
(=2 8 ), the argument is 256, the number of stages is 8 (=
log 2 256) and each value of the integer part P is illustrated in the same manner as shown in FIG. 3, as shown in FIG. 5. In this case, the value of the integer part P takes an even number between "8" and "254" in addition to the above "0", "2", "4", and "6". In addition, the angle θ when the integer part P is "8", "10", "12", and "14" is the solid line indicated by 8, 10, 12, and 14 and the solid line indicated by 0 in FIG. It is expressed as the angle formed by By the way, the input data A, shown in FIG.
If B is respectively expressed as A=A R +jA I B=B R +jB I (5), then from equations (4) and (5), C=A+BW s = (A R +B R・cosθ+B I sinθ+ j( A I +B I cosθ−B R sinθ) = A R +T R +j (A I +T I ) (6) D=A−BW s = A R −T R +j (A I −T I ) (7) As can be seen from equation (6), two multiplications are required to obtain T R , and two multiplications are also required to obtain T I , and in the end, C
To obtain , a total of four multiplications are required (D
(same as well). Note that by storing T R and T I in the memory when calculating C, they can be used when calculating D without having to be calculated again. Therefore, as can be seen from Figure 4, the integer part P
When the value of is “0”, θ is 0°, and cosθ=
1, sinθ=0, so W s is “1” from equation (4)
Therefore, from equations (6) and (7), C=A+B, D=
A-B, and C and D can be generated by butterfly operations consisting only of addition and subtraction. Moreover,
In the butterfly operation in stage 1, the input data is only the real part and the imaginary part is 0, so when the value of the integer part P is "0", A I = B I = 0 in equation (5). , C becomes A R +B R , and D becomes A R
B R , and since the calculation is performed only on the real part, the output data will also be only the real part. As a result, if the integer part P is "0", the input data to be subjected to butterfly calculation and the phase rotation factor each consist of only the real part even in stage 2 and after, so the calculation of the imaginary part is not necessary. . Also, when the value of the integer part P is "2", since θ is 90°, W s becomes -j, and in this case, the output data has a real part and an imaginary part, but C and D can be generated only by addition and subtraction. Also, when the value of the integer part P is "4" or "6", as can be seen from Figure 4, θ is 45° and 135°, so in either case, Therefore, W s is

【式】又は[Formula] or

【式】となる。従つて、Ws[Formula] becomes. Therefore, W s

【式】のとき(θ=45゜のとき)には、 (4)式及び(6)式から となる。よつてCを求めるには、
When [formula] (when θ=45°), from formulas (4) and (6), becomes. Therefore, to find C,

【式】と[Formula] and

【式】とを 夫々算出するために計2回の乗算が必要となる
(Dも同様)。これはθ=135゜の場合も同様であ
る。しかし、この場合は従来の(6),(7)式に示す計
4回の乗算回数に比し、半分の乗算回数で済むこ
とがわかる。更に、整数倍Pの値が「8」以上の
ときは、(6)式及び(7)式に基づいて計4回の乗算を
伴うバタフライ演算が行なわれる。 そこで、本発明は、整数部Pが「0」であるタ
イプの場合と、Pが「2」であるタイプの場
合はWsを乗算する必要がなく、Pが「4」又は
「6」であるタイプの場合とPが「8」以上の
値であるタイプの場合は従来と同様に4回の乗
算が必要であることに鑑み、タイプととをタ
イプととは区別し、乗算する必要のないタイ
プ,の場合には切換スイツチにより乗算器の
入力側から取り出したデータにより所要の加減算
のみを行ない、所要のバタフライ演算を行なうこ
とにより、従来のFFTの乗算回数に比し少ない
乗算回数でバタフライ演算をするようにした点に
特徴を有する。 第6図は上記の原理に基づいて構成した本発明
装置の一実施例のブロツク系統図を示す。同図
中、入力端子1及び2には夫々バタフライ演算さ
れるべき2つの入力データA,Bのうち第1の入
力データAの実数部データAR及び虚数部データ
AIが入来し、入力端子3及び4には第2の入力
データBの実数部データBR及び虚数部データBI
が入来する。これらのデータAR,AI,BR,及び
BIは図示を省略したメモリから読み出される。
このメモリはデータ数Nと同一数の実数部データ
と、N個の虚数部データとを夫々格納する記憶容
量以上の記憶容量を有している。上記データAR
は加減算器(厳密には加算器)5及び加減算器7
に夫々供給され、データAIは加減算器6及び8
に夫々供給される。また、上記データBRは乗算
器9,10に夫々供給され、ここで図示を省略し
た係数メモリから読み出された位相回転因子Ws
の虚数部データsinθ、実数部データcosθと乗算さ
れた後、切換スイツチS3,S1の接点19a,17
aに供給される。切換スイツチS1及びS3は夫々3
つの接点17a〜17c,19a〜19cのうち
いずれか一の接点に切換接続される構成とされて
おり、接点17b,19bに夫々実数部データ
BRが印加され、また接点17c,19cは夫々
接地されている。 他方、虚数部データBIは乗算器11,12に
夫々供給され、ここで位相回転因子Wsの虚数部
データsinθ,実数部データcosθと乗算された後、
切換スイツチS2,S4の接点18a,20aに印加
される。切換スイツチS2及びS4は、S1及びS3と同
様に3つの接点18a〜18c,20a〜20c
を夫々有しており、それらの3つの接点の一つ接
点に接続される構成とされている。接点18b及
び20bには上記データBIが直接に入力端子4
より供給され、接点18c及び20cは夫々接地
されている。上記の切換スイツチS1〜S4は夫々ス
イツチングパルス発生回路(図示せず)よりのス
イツチングパルスにより、互いに独立して切換制
御される。 加減算器5は入力端子1よりの実数部データ
ARと切換スイツチS1,S2よりの各データとを
夫々加算して第1の出力データCの実数部データ
CR(=AR+BRcosθ+BIsinθ)を生成し、これを出
力端子13へ出力する。また加減算器6は入力端
子2よりの虚数部データAIと切換スイツチS4
りのデータとを夫々加算すると共に、切換スイツ
チS3の出力データを減算して第1の出力データC
の虚数部データCI(=AI+BIcosθ−BRsinθ)を生
成し、これを出力端子14へ出力する。また加減
算器7は上記実数部データARから切換スイツチ
S1,S2の各出力データを夫々減算して第2の出力
データDの実数部データDR(=AR−BRcosθ−BI
sinθ)を生成し、これを出力端子15へ出力す
る。更に、加減算器8は虚数部データAIと切換
スイツチS3の出力データとを夫々加算すると共
に、切換スイツチS4の出力データを減算して第2
の出力データDの虚数部データDI(=AI−BIcosθ
+BRsinθ)を生成し、これを出力端子16へ出力
する。 次に上記の装置の動作につき説明する。前記メ
モリ(図示せず)に一例として8個のデータx0
x7の実数部データが第1乃至第8のアドレスに
夫々別々に蓄積されているものとする(N=8の
場合)。N=8の場合は、第1図及び第3図から
もわかるように、ステージ1でのバタフライ演算
は引数0と4のデータ,引数1と5のデータ,引
数2と6のデータ及び引数3と7のデータの間
で、前記整数部Pが「0」であるバタフライ演算
のみが順次に行なわれる。そこで、切換スイツチ
S1及びS4は接点17b及び20bに夫々接続さ
れ、かつ、切換スイツチS2及びS3は接点18c及
び19cに夫々接続される。これにより、切換ス
イツチS1からは入力端子3の入力実数部データ
BRが乗算されることなくそのまま取り出され、
かつ、切換スイツチS4からは入力端子4の入力虚
数部データBIが乗算されることなくそのまま取
り出される一方、切換スイツチS2及びS4からは出
力が取り出されないようにされる。 従つて、出力端子13,14,15及び16に
はAR+BR,AI+BI,AR−BR及びAI−BIで示され
るデータが出力されることになる。ただし、ステ
ージ1では前記メモリからは実数部データのみが
読み出されて入力端子1,3に供給され、これに
対して入力端子2,4には虚数部データは供給さ
れないので、結局、出力端子13,15のみより
実数部データが取り出されて前記メモリの第1乃
至第8のアドレスに夫々引数0〜7のデータとし
て書き込まれる。 次にステージ2のバタフライ演算が行なわれ
る。このステージ2のバタフライ演算は第1図及
び第3図からもわかるように、引数0と2,1と
3の各データ間で前記整数部Pが「0」である第
1のバタフライ演算がまず行なわれ、次に引数4
と6,5と7の各データ間で整数部Pが「2」で
ある第2のバタフライ演算が行なわれる。上記の
Pが「0」である第1のバタフライ演算期間中は
切換スイツチS1及びS4はステージ1と同様に接点
17b及び20bに夫々接続され、かつ、切換ス
イツチS2及びS3は接点18c及び19cに夫々接
続される。また上記のPの値が「2」である第2
のバタフライ演算期間中は切換スイツチS1及びS4
は接点17c及び20cに夫々切換接続され、か
つ、切換スイツチS2及びS3は接点18b及び19
bに夫々切換接続される。 これにより、引数0と2のデータが読み出され
た前記メモリの第1,第3のアドレスには、それ
らのデータを上記第1のバタフライ演算して得た
出力端子13,15から取り出された実数部デー
タCR,DRが書き込まれ、また引数1と3のデー
タが読み出された前記メモリの第2,第4のアド
レスには、それらのデータを上記第1のバタフラ
イ演算して得た、出力端子13,15よりの実数
部データCR,DRが書き込まれる。 また上記第2のバタフライ演算期間中には、出
力端子13からはARで表わされる実数部データ
CRが取り出されて引数4又は5のデータが読み
出された前記メモリのアドレスに書き込まれ、ま
た出力端子15からはARで表わされる実数部デ
ータDRが取り出されて引数6又は7のデータが
読み出されたアドレスに書き込まれる。またこれ
と同時に、出力端子14からは−BRで表わされ
る虚数部データCIが取り出され、出力端子16か
らはBRで表わされる虚数部データDIが取り出さ
れる。これらの虚数部データCI,DIは前記メモリ
の第1乃至第8のアドレス以外の所定のアドレス
に夫々書き込まれる。 上記のステージ2のバタフライ演算が終了する
と、次にステージ3のバタフライ演算が行なわれ
る。このステージ3のバタフライ演算は第1図及
び第3図からもわかるように、引数0と1のデー
タ間での整数部Pが「0」である第1のバタフラ
イ演算,引数2と3のデータ間での整数部Pが
「2」である第2のバタフライ演算,引数4と5
のデータ間での整数部Pが「4」である第3のバ
タフライ演算,及び引数6と7のデータ間での整
数部Pが「6」である第4のバタフライ演算の順
序で順次に行なわれる。切換スイツチS1〜S4は、
上記の第1のバタフライ演算期間中は前記ステー
ジ1同一の接続態様とされており、また上記の第
2のバタフライ演算期間中は前記ステージ2の第
2のバタフライ演算期間中と同一の接続態様に切
換制御され、更に上記の第3及び第4のバタフラ
イ演算期間中は夫々接点17a,18a,19a
及び20aに切換接続される。 これにより、第3及び第4のバタフライ演算期
間中は、実数部データBR及び虚数部データBI
いずれも乗算器9〜12のいずれかで乗算された
データが切換スイツチS1〜S4から取り出される。
このようにして、出力端子13,14,15及び
16からは(6)式及び(7)式の演算式によつて生成さ
れた実数部データCR,虚数部データCI,実数部デ
ータDR及び虚数部データDIが取り出され、前記
メモリの所定のアドレスに夫々書き込まれる。 このように、本実施例では乗算する必要のない
2つのタイプ,の場合は切換スイツチS1〜S4
により入力端子3,4の入力データを乗算させる
ことなくそのまま選択出力し、乗算する必要のあ
るタイプ(前記Pが「4」以上のときのバタフラ
イ演算)の場合は乗算器9〜12の出力データを
選択出力するようにしたので、従来のFFTに比
し乗算回数を減らすことができる。すなわち、前
記整数部Pが「0」であるタイプの出現回数
は、第3図,第5図から類推することができるよ
うに、一般にN―1回あり、また、前記整数部P
が「2」であるタイプの出現回数は(N/2)
−1回であるから、本発明による乗算回数は (N/2)log2N―〔(N−1) +{(N/2)−1}〕 =(N/2)log2N−(3N/2)+2 となる。 上式で表わされる本発明による乗算回数は、入
力データ数Nとの関係では第7図にで示す如く
になり、これは同図にで示す従来のFFTの乗
算回数に比し(3N/2)−2回だけ少ないことが
わかる。 なお、第6図と同様構成の演算を電子計算機の
内部で行なうこともできる。 また、第6図の切換スイツチS2,S4の接点18
b,20bは必ずしも必要ではない。 効 果 上述の如く、本発明によれば、信号流れ図を複
雑とすることなく従来のFFTと同一の信号流れ
図に従つて、位相回転因子の値が乗算する必要の
ない値であるときには切換手段により器の入力側
の入力データを加減算だけでバタフライ演算を
し、乗算する必要のあるときには乗算器の出力デ
ータを切換出力するようにしたので、簡単かつ安
価な構成で、従来のFFTの乗算回数(N/2)
log2Nよりも {(N/2)log2N−(3/2)N+2} なる式で表わされる小なる乗算回数で所要の
FFT演算ができ、乗算回数の低減化は演算時間
の短縮化に密接に関連しているから、例えばサン
プル数Nが256である場合にも、視覚的に実時間
であると見做せる程度の短い演算時間とすること
ができ、よつて例えば発音されている音声信号を
発音と同時にリアルタイムで音符表示するが如き
用途などに供することができ、また乗算回数を減
らしているのでFFTよりも演算精度を向上する
ことができる等の特長を有するものである。
A total of two multiplications are required to calculate [Formula] and (the same applies to D). The same holds true for θ=135°. However, it can be seen that in this case, only half the number of multiplications is required compared to the total of four multiplications shown in the conventional equations (6) and (7). Further, when the value of the integer multiple P is "8" or more, a butterfly operation involving a total of four multiplications is performed based on equations (6) and (7). Therefore, in the present invention, there is no need to multiply W s in the case of a type in which the integer part P is "0" and in the case of a type in which P is "2", and when P is "4" or "6", Considering that in the case of a certain type and in the case of a type in which P is a value of "8" or more, four times of multiplication are required as in the past, we distinguish between types and In the case of a type that does not have one, the changeover switch performs only the necessary additions and subtractions using the data taken out from the input side of the multiplier, and by performing the necessary butterfly calculations, butterfly processing is performed with fewer multiplications compared to the number of multiplications in conventional FFT. It is characterized by the fact that it performs calculations. FIG. 6 shows a block system diagram of an embodiment of the apparatus of the present invention constructed based on the above principle. In the figure, input terminals 1 and 2 are used to receive real part data A R and imaginary part data of the first input data A among the two input data A and B to be subjected to the butterfly operation, respectively.
A I comes in, and the real part data B R and imaginary part data B I of the second input data B are input to input terminals 3 and 4.
comes in. These data A R , A I , B R , and
B I is read from a memory (not shown).
This memory has a storage capacity greater than the storage capacity for storing the same number of real part data as the data number N and N imaginary part data. Above data A R
are adder/subtractor (strictly speaking, adder) 5 and adder/subtractor 7
and data A I are supplied to adders/subtractors 6 and 8, respectively.
are supplied respectively. Further, the data B R is supplied to multipliers 9 and 10, respectively, and the phase rotation factor W s read from a coefficient memory (not shown) is supplied to multipliers 9 and 10, respectively.
After being multiplied by the imaginary part data sin θ and the real part data cos θ, the contacts 19a and 17 of the changeover switches S 3 and S 1
supplied to a. Changeover switches S 1 and S 3 are 3 each
The configuration is such that the switch is connected to any one of the contacts 17a to 17c and 19a to 19c, and the real part data is connected to the contacts 17b and 19b, respectively.
B R is applied, and contacts 17c and 19c are each grounded. On the other hand, the imaginary part data B I is supplied to multipliers 11 and 12, respectively, where it is multiplied by the imaginary part data sin θ and the real part data cos θ of the phase rotation factor W s .
The voltage is applied to the contacts 18a and 20a of the changeover switches S 2 and S 4 . The changeover switches S 2 and S 4 have three contacts 18a to 18c, 20a to 20c similarly to S 1 and S 3 .
, and is configured to be connected to one of the three contacts. The above data B I is directly input to the input terminal 4 to the contacts 18b and 20b.
The contacts 18c and 20c are each grounded. The above-mentioned changeover switches S1 to S4 are independently controlled by switching pulses from a switching pulse generating circuit (not shown). Adder/subtractor 5 receives real part data from input terminal 1
The real part data of the first output data C is obtained by adding A R and each data from the changeover switches S 1 and S 2 respectively.
C R (=A R +B R cosθ+B I sinθ) is generated and output to the output terminal 13. Further, the adder/subtractor 6 adds the imaginary part data A I from the input terminal 2 and the data from the changeover switch S4, respectively, and subtracts the output data from the changeover switch S3 to obtain the first output data C.
The imaginary part data C I (=A I +B I cosθ−B R sinθ) is generated and output to the output terminal 14. Also, the adder/subtractor 7 is operated by a changeover switch from the above real part data A R.
By subtracting each output data of S 1 and S 2 , the real part data D R of the second output data D (=A R −B R cosθ−B I
sinθ) and outputs it to the output terminal 15. Further, the adder/subtractor 8 adds the imaginary part data A I and the output data of the changeover switch S3, respectively, and subtracts the output data of the changeover switch S4 to obtain the second
Imaginary part data D I (=A I −B I cosθ
+B R sinθ) and outputs it to the output terminal 16. Next, the operation of the above device will be explained. As an example, eight pieces of data x 0 ~
Assume that the real part data of x 7 is stored separately in the first to eighth addresses (in the case of N=8). In the case of N=8, as can be seen from Figures 1 and 3, the butterfly operation in stage 1 uses the data of arguments 0 and 4, the data of arguments 1 and 5, the data of arguments 2 and 6, and the data of argument 3. Between the data of and 7, only the butterfly operation in which the integer part P is "0" is sequentially performed. Therefore, the changeover switch
S 1 and S 4 are connected to contacts 17b and 20b, respectively, and changeover switches S 2 and S 3 are connected to contacts 18c and 19c, respectively. As a result, the input real part data of input terminal 3 is output from changeover switch S1 .
B R is taken out as is without being multiplied,
Further, the input imaginary part data B I of the input terminal 4 is taken out as it is from the changeover switch S4 without being multiplied, while the output is not taken out from the changeover switches S2 and S4 . Therefore, data represented by A R +B R , A I +B I , A R -B R and A I -B I are output to the output terminals 13, 14, 15 and 16. However, in stage 1, only the real part data is read from the memory and supplied to input terminals 1 and 3, whereas the imaginary part data is not supplied to input terminals 2 and 4. The real part data is taken out only from 13 and 15 and written to the first to eighth addresses of the memory as data of arguments 0 to 7, respectively. Next, stage 2 butterfly calculation is performed. As can be seen from Figures 1 and 3, in the butterfly operation of stage 2, the first butterfly operation where the integer part P is "0" is first performed between each data of arguments 0 and 2, 1 and 3. is done, then argument 4
A second butterfly operation in which the integer part P is "2" is performed between the data 6, 5, and 7. During the first butterfly calculation period when P is 0, the switches S 1 and S 4 are connected to the contacts 17b and 20b, respectively, as in stage 1, and the switches S 2 and S 3 are connected to the contacts 17b and 20b, respectively. 18c and 19c, respectively. Also, the second case where the value of P above is “2”
During the butterfly calculation period, selector switches S 1 and S 4
are connected to contacts 17c and 20c, respectively, and changeover switches S 2 and S 3 are connected to contacts 18b and 19
b, respectively. As a result, the first and third addresses of the memory from which the data of arguments 0 and 2 were read are loaded from the output terminals 13 and 15 obtained by performing the first butterfly operation on those data. The second and fourth addresses of the memory, where the real part data C R and D R are written and the data of arguments 1 and 3 are read, are obtained by performing the first butterfly operation on those data. In addition, real part data C R and D R from output terminals 13 and 15 are written. Also, during the second butterfly calculation period, the real part data represented by A R is output from the output terminal 13.
C R is taken out and the data of argument 4 or 5 is written to the read address of the memory, and the real part data D R represented by A R is taken out from the output terminal 15 and the data of argument 6 or 7 is written. Data is written to the address from which it was read. At the same time, imaginary part data C I represented by -BR is taken out from the output terminal 14, and imaginary part data DI represented by BR is taken out from the output terminal 16. These imaginary part data C I and D I are respectively written to predetermined addresses other than the first to eighth addresses of the memory. When the above stage 2 butterfly calculation is completed, the stage 3 butterfly calculation is performed next. As can be seen from Figures 1 and 3, this stage 3 butterfly operation is the first butterfly operation where the integer part P is 0 between the data of arguments 0 and 1, and the data of arguments 2 and 3. Second butterfly operation with integer part P between ``2'', arguments 4 and 5
The third butterfly operation where the integer part P is "4" between the data of arguments 6 and 7 is performed sequentially in the order of the fourth butterfly operation where the integer part P is "6" between the data of arguments 6 and 7. It will be done. Changeover switches S 1 to S 4 are
During the first butterfly computation period, the connection mode is the same as that of the stage 1, and during the second butterfly computation period, the connection mode is the same as that of the second butterfly computation period of the stage 2. Furthermore, during the third and fourth butterfly calculation periods, the contacts 17a, 18a, and 19a are switched, respectively.
and 20a. As a result, during the third and fourth butterfly calculation periods, both the real part data B R and the imaginary part data B I are multiplied by any one of the multipliers 9 to 12, and the data are transferred to the changeover switches S 1 to S 4 . taken from.
In this way, from the output terminals 13, 14, 15, and 16, real part data CR , imaginary part data C I , and real part data D generated by the calculation formulas (6) and (7) are output. R and imaginary part data D I are taken out and written to predetermined addresses in the memory, respectively. In this way, in this embodiment, in the case of two types that do not require multiplication, the changeover switches S 1 to S 4
The input data of input terminals 3 and 4 are selected and output as they are without being multiplied, and in the case of a type that requires multiplication (butterfly operation when P is "4" or more), the output data of multipliers 9 to 12 is Since it is designed to selectively output , the number of multiplications can be reduced compared to conventional FFT. That is, the number of occurrences of a type in which the integer part P is "0" is generally N-1 times, as can be inferred from FIGS.
The number of occurrences of the type where is "2" is (N/2)
-1 times, the number of multiplications according to the present invention is (N/2)log 2 N-[(N-1) + {(N/2)-1}] = (N/2)log 2 N-( 3N/2)+2. The number of multiplications according to the present invention expressed by the above formula is as shown in Figure 7 in relation to the number of input data N, which is (3N/2 ) - It can be seen that there are only two fewer times. Incidentally, the calculation having the same configuration as that shown in FIG. 6 can also be performed inside the electronic computer. In addition, the contacts 18 of the changeover switches S 2 and S 4 in FIG.
b, 20b are not necessarily required. Effects As described above, according to the present invention, according to the same signal flow chart as the conventional FFT without complicating the signal flow chart, when the value of the phase rotation factor is a value that does not need to be multiplied, the switching means The butterfly operation is performed by simply adding and subtracting the input data on the input side of the multiplier, and when multiplication is necessary, the output data of the multiplier is switched and output.This allows for a simple and inexpensive configuration, and reduces the number of multiplications ( N/2)
The required number of multiplications is smaller than log 2 N by the formula {(N/2)log 2 N-(3/2)N+2}.
Since FFT calculations can be performed and the reduction in the number of multiplications is closely related to the reduction in calculation time, for example, even if the number of samples N is 256, it can be visually considered to be real time. The calculation time can be shortened, so it can be used for applications such as displaying musical notes in real time at the same time as the sound signal is being produced.Also, since the number of multiplications is reduced, the calculation accuracy is higher than that of FFT. It has features such as being able to improve

【図面の簡単な説明】[Brief explanation of drawings]

第1図はFFTにおける信号流れ図の一例を示
す図、第2図はバタフライ演算を説明する図、第
3図及び第5図は夫々引数,ステージ数及び整数
部の各値の関係の各例を示す図表、第4図は整数
部の値と位相回転因子における角度との関係を示
す図、第6図は本発明装置の一実施例を示すブロ
ツク系統図、第7図はサンプル数に対する従来の
FFTにおける乗算回数と本発明装置の乗算回数
とを夫々対比して示す図である。 1,3……実数部データ端子、2,4……虚数
部データ入力端子、5……加減算器(加算器)、
6〜8……加減算器、9〜12……乗算器、1
3,15……実数部データ出力端子、14,16
……虚数部データ出力端子、S1〜S4……切換スイ
ツチ。
Figure 1 is a diagram showing an example of a signal flow diagram in FFT, Figure 2 is a diagram explaining butterfly operation, and Figures 3 and 5 are examples of relationships between arguments, number of stages, and each value of the integer part, respectively. FIG. 4 is a diagram showing the relationship between the value of the integer part and the angle in the phase rotation factor, FIG. 6 is a block system diagram showing an embodiment of the device of the present invention, and FIG.
FIG. 4 is a diagram showing a comparison between the number of multiplications in FFT and the number of multiplications in the device of the present invention. 1, 3...real part data terminal, 2, 4...imaginary part data input terminal, 5...addition/subtractor (adder),
6 to 8...addition/subtractor, 9 to 12...multiplier, 1
3, 15...Real part data output terminal, 14, 16
...Imaginary part data output terminal, S 1 to S 4 ... Selector switch.

Claims (1)

【特許請求の範囲】[Claims] 1 入力データに対し位相回転因子を用いたバタ
フライ演算を順次行なつて高速フーリエ変換され
たデータ列を得る演算装置であつて、第1及び第
2の入力データのうち該第1の入力データの実数
部が少なくとも供給される第1及び第2の加減算
器と、該第1の入力データの虚数部が少なくとも
供給される第3及び第4の加減算器と、上記位相
回転因子の値が1又は−jのときに該第2の入力
データの実数部と虚数部とを該位相回転因子と乗
算させることなくそのまま該第1乃至第4の加減
算器へ夫々出力し、上記位相回転因子の値が上記
以外の値のときは該第2の入力データの実数部と
虚数部とを夫々該位相回転因子に乗算した結果を
該第1乃至第4の加減算器へ出力する切換手段と
よりなることを特徴とする高速フーリエ変換の演
算装置。
1 An arithmetic device that sequentially performs butterfly operations using a phase rotation factor on input data to obtain a fast Fourier transformed data string, the first input data being one of the first and second input data. first and second adders/subtractors to which at least the real part is supplied; third and fourth adders/subtractors to which at least the imaginary part of the first input data is supplied; and the value of the phase rotation factor is 1 or −j, the real part and imaginary part of the second input data are output as they are to the first to fourth adders/subtractors without being multiplied by the phase rotation factor, and the value of the phase rotation factor is When the value is other than the above, switching means multiplies the phase rotation factor by the real part and imaginary part of the second input data, respectively, and outputs the results to the first to fourth adder/subtractors. Features a fast Fourier transform calculation device.
JP58078824A 1983-05-04 1983-05-04 KOSOKUFUURIE HENKANNOENZANSOCHI Expired - Lifetime JPH0228188B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP58078824A JPH0228188B2 (en) 1983-05-04 1983-05-04 KOSOKUFUURIE HENKANNOENZANSOCHI
GB08411261A GB2140600B (en) 1983-05-04 1984-05-02 Computing device for fast fourier transform
DE19843416536 DE3416536A1 (en) 1983-05-04 1984-05-04 COMPUTING DEVICE FOR FAST FOURIER TRANSFORMATION
FR8407007A FR2545629B1 (en) 1983-05-04 1984-05-04 CALCULATION DEVICE FOR FAST FOURIER TRANSFORMATION

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58078824A JPH0228188B2 (en) 1983-05-04 1983-05-04 KOSOKUFUURIE HENKANNOENZANSOCHI

Publications (2)

Publication Number Publication Date
JPS59205670A JPS59205670A (en) 1984-11-21
JPH0228188B2 true JPH0228188B2 (en) 1990-06-21

Family

ID=13672578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58078824A Expired - Lifetime JPH0228188B2 (en) 1983-05-04 1983-05-04 KOSOKUFUURIE HENKANNOENZANSOCHI

Country Status (1)

Country Link
JP (1) JPH0228188B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07220324A (en) * 1994-02-02 1995-08-18 Takemori Toyonaga Remote controller for reading g code
EP4201916A1 (en) 2021-12-23 2023-06-28 Space Capital Co., Ltd. Soil improving agent and production method therefor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07220324A (en) * 1994-02-02 1995-08-18 Takemori Toyonaga Remote controller for reading g code
EP4201916A1 (en) 2021-12-23 2023-06-28 Space Capital Co., Ltd. Soil improving agent and production method therefor

Also Published As

Publication number Publication date
JPS59205670A (en) 1984-11-21

Similar Documents

Publication Publication Date Title
Cochran et al. What is the fast Fourier transform?
Nussbaumer et al. The fast Fourier transform
EP0128298B1 (en) Orthogonal transformer and apparatus operational thereby
EP1008060B1 (en) A device and method for calculating fft
US6993547B2 (en) Address generator for fast fourier transform processor
US3721812A (en) Fast fourier transform computer and method for simultaneously processing two independent sets of data
KR100286601B1 (en) Secondary interpolation method and apparatus
KR950000386B1 (en) Discrete cosine transform circuit
JPH0363875A (en) Computing system of discrete fourier transform using cyclic technique
US4093994A (en) Fast discrete transform generator and digital filter using same
US3584782A (en) Fast fourier transform method and apparatus
JPS6037514B2 (en) 2-dimensional discrete Fourier transform calculation device
JPH06149861A (en) Dct and inverse dct computing device and method
JPH0228188B2 (en) KOSOKUFUURIE HENKANNOENZANSOCHI
US6343304B1 (en) Apparatus with selective fixed-coefficient filter for performing recursive discrete cosine transforms
JP3727406B2 (en) Function conversion operator
JPH0228187B2 (en) KOSOKUFUURIE HENKANNOENZANSOCHI
CN103870437A (en) Digital signal processing device and processing method thereof
JP2529229B2 (en) Cosine converter
JPH03256455A (en) Idct processor
Jerônimo da Silva et al. Constructing Fast Algorithms by Expanding a Set of Matrices into Rank-1 Matrices
Bhattacharya et al. Number theoretic techniques for computation of digital convolution
US6564236B1 (en) Device and associated method for calculating the direct or inverse fourier transform of the product of a complex symbol times a complex sinusoidal waveform
JPH05174046A (en) Arithmetic circuit
JPS60164868A (en) Fast fourier transforming device