[go: up one dir, main page]

JP2000040080A - Fast Fourier transform circuit - Google Patents

Fast Fourier transform circuit

Info

Publication number
JP2000040080A
JP2000040080A JP10205975A JP20597598A JP2000040080A JP 2000040080 A JP2000040080 A JP 2000040080A JP 10205975 A JP10205975 A JP 10205975A JP 20597598 A JP20597598 A JP 20597598A JP 2000040080 A JP2000040080 A JP 2000040080A
Authority
JP
Japan
Prior art keywords
input
data
processing
input data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP10205975A
Other languages
Japanese (ja)
Inventor
Hideo Mizutani
秀夫 水谷
Kenichi Tsuchida
健一 土田
Shigeki Moriyama
繁樹 森山
Toru Kuroda
徹 黒田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Oki Electric Industry Co Ltd
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK, Oki Electric Industry Co Ltd, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP10205975A priority Critical patent/JP2000040080A/en
Publication of JP2000040080A publication Critical patent/JP2000040080A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 通常のサンプル数の1/2または1/4でF
FT処理を行う場合に、作業用メモリをデータ入力と演
算処置等で並行使用し、処理効率を向上させる。 【解決手段】 複素数入力データII,IQがマルチプ
レクサ41を介して作業用メモリ42,43のセグメン
ト42a,43aに入力されている間、セグメント42
b,43b内のデータはマルチプレクサ44,41を介
してデータパス70A,70Bに接続されてFFT演算
処理が施され、演算結果はレジスタ91,92を介して
出力データOI,OQとして出力される。セグメント4
2b,43b内のデータの演算処理が終了すると、マル
チプレクサ41,44が切り替えられ、セグメント42
a,43aに入力さた入力データII,IQの演算処理
が行われる。一方、セグメント42b,43bには、次
の周期の入力データII,IQが入力される。
(57) [Summary] [Problem] To set F at 1/2 or 1/4 of the normal number of samples
When performing the FT processing, the working memory is used in parallel for data input and arithmetic processing to improve processing efficiency. SOLUTION: While complex number input data II, IQ are input to segments 42a, 43a of working memories 42, 43 via a multiplexer 41, a segment 42
The data in b and 43b are connected to data paths 70A and 70B via multiplexers 44 and 41 and subjected to FFT operation processing, and the operation results are output as output data OI and OQ via registers 91 and 92. Segment 4
When the arithmetic processing of the data in 2b and 43b is completed, the multiplexers 41 and 44 are switched, and the segment 42 is switched.
The arithmetic processing of the input data II and IQ input to the input terminals a and 43a is performed. On the other hand, the input data II and IQ of the next cycle are input to the segments 42b and 43b.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、周期的に与えられ
る離散的な時系列信号の周期性を利用して周波数成分に
変換する高速フーリエ変換(以下、FFTという)回
路、特に入力信号のサンプル点数が可変のFFT回路、
または逆に離散的な周波数成分を時系列信号に変換する
逆変換回路に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a fast Fourier transform (hereinafter referred to as "FFT") circuit for converting into a frequency component by utilizing the periodicity of a discrete time series signal given periodically, and more particularly, to a sample of an input signal. FFT circuit with variable score,
Alternatively, the present invention relates to an inverse conversion circuit that converts a discrete frequency component into a time-series signal.

【0002】[0002]

【従来の技術】図2は、従来のFFT回路の一例を示す
構成図である。このFFT回路は、時系列的に与えられ
る複素数入力データII,IQを、それぞれ一旦保持す
るためのレジスタ11,12を有している。レジスタ1
1,12の出力側は、ぞれぞれセレクタ13,14の第
1の入力側に接続されている。セレクタ13,14の出
力側は、作業用メモリ15のデータ入力端子に接続され
ている。作業用メモリ15は、入力データII,IQ
や、演算途中の中間結果を一時的に格納するためのもの
である。作業用メモリ15のデータ出力端子は、FFT
演算処理を行うデータパス16,17の入力側に接続さ
れている。データパス16,17には、またFFT演算
処理で用いる係数が予め記憶されている係数用メモリ1
8の出力側が接続されている。
2. Description of the Related Art FIG. 2 is a block diagram showing an example of a conventional FFT circuit. This FFT circuit has registers 11 and 12 for temporarily holding complex number input data II and IQ given in time series, respectively. Register 1
The outputs of 1, 1 and 12 are connected to the first inputs of selectors 13 and 14, respectively. Output sides of the selectors 13 and 14 are connected to a data input terminal of the working memory 15. The working memory 15 stores input data II, IQ
And for temporarily storing intermediate results during the operation. The data output terminal of the working memory 15 is FFT
It is connected to the input side of data paths 16 and 17 for performing arithmetic processing. The data paths 16 and 17 have a coefficient memory 1 in which coefficients used in the FFT operation processing are stored in advance.
8 are connected.

【0003】データパス16,17は、作業用メモリ1
5及び係数用メモリ18から与えられたデータを、FF
Tアルゴリズムに従って計算するものである。データパ
ス16,17の出力側は、それぞれセレクタ13,14
の第2の入力側に接続されるとともに、レジスタ19,
20の入力側に接続されている。レジスタ19,20
は、データパス16,17による繰り返し演算によって
最終的に得られた複素数出力データOI,OQを出力す
るために保持するものである。
The data paths 16 and 17 are connected to the working memory 1
5 and the data given from the coefficient memory 18
This is calculated according to the T algorithm. Output sides of the data paths 16 and 17 are connected to selectors 13 and 14, respectively.
Of the register 19,
20 are connected to the input side. Registers 19 and 20
Are held to output the complex number output data OI and OQ finally obtained by the repetitive operation by the data paths 16 and 17.

【0004】更に、FFT回路は、動作の基準となるク
ロック信号を生成するクロック生成部21と、このクロ
ック信号に基づいて各部の動作シーケンスを制御するシ
ーケンス制御部22と、アドレス生成部23とを備えて
いる。アドレス生成部23は、動作シーケンスに応じて
作業用メモリ15に対する読み書きアドレスと、係数用
メモリ18に対する読み出しアドレスとを生成するもの
である。このようなFFT回路において、例えばFFT
処理の1周期のサンプル点数を1024として処理する
場合、まず、セレクタ13,14の第1の入力側が選択
される。そして、レジスタ11,12を介して離散的に
入力された複素数入力データII,IQは、サンプル点
数(即ち、1024点)だけ作業用メモリ15に順次格
納される。1024点の複素数入力データII,IQが
作業用メモリ15に格納された後、セレクタ13,14
は第2の入力側に切り替えられる。
Further, the FFT circuit includes a clock generation unit 21 for generating a clock signal serving as a reference for operation, a sequence control unit 22 for controlling an operation sequence of each unit based on the clock signal, and an address generation unit 23. Have. The address generation unit 23 generates a read / write address for the working memory 15 and a read address for the coefficient memory 18 in accordance with the operation sequence. In such an FFT circuit, for example, FFT
When processing is performed with the number of sample points in one cycle of the processing set to 1024, first, the first input sides of the selectors 13 and 14 are selected. Then, the complex number input data II and IQ discretely inputted via the registers 11 and 12 are sequentially stored in the working memory 15 by the number of sample points (that is, 1024 points). After 1024 points of complex number input data II and IQ are stored in the working memory 15, the selectors 13 and 14
Is switched to the second input side.

【0005】次に、作業用メモリ15及び係数用メモリ
18から、FFTアルゴリズムに基づいて所定のアドレ
スに格納されたデータが読み出され、データパス16,
17の入力側に与えられる。これにより、データパス1
6,17の出力側には、読み出されたデータに応じた中
間結果が出力される。データパス16,17から出力さ
れた中間結果は、セレクタ13,14を介して再び作業
用メモリ15の同一アドレスに書き込まれる。作業用メ
モリ15及び係数用メモリ18に対するアドレスは順次
シフトされ、これらの作業用メモリ15及び係数用メモ
リ18のデータがデータパス16,17によって演算さ
れてFFT処理が行われる。データパス16,17によ
るFFT処理の中間結果は、逐次更新されて作業用メモ
リ15に書き込まれる。そして、最終的な演算結果が得
られた時点で、データパス16,17の出力データが、
レジスタ19,20に格納され、複素数出力データO
I,OQとして出力される。
Next, data stored at a predetermined address based on the FFT algorithm is read out from the working memory 15 and the coefficient memory 18, and the data path 16,
17 inputs. As a result, data path 1
Intermediate results corresponding to the read data are output to output sides 6 and 17. Intermediate results output from the data paths 16 and 17 are written again to the same address in the working memory 15 via the selectors 13 and 14. The addresses of the working memory 15 and the coefficient memory 18 are sequentially shifted, and the data in the working memory 15 and the coefficient memory 18 are operated by the data paths 16 and 17 to perform the FFT processing. Intermediate results of the FFT processing by the data paths 16 and 17 are sequentially updated and written to the working memory 15. Then, when the final calculation result is obtained, the output data of the data paths 16 and 17 is
The complex output data O stored in the registers 19 and 20
Output as I, OQ.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、従来の
FFT回路では、次のような課題があった。例えば、F
FT処理の1周期のサンプル点数を1024の1/2の
512として処理する場合、作業用メモリ15を半分し
か使用せず、残りの半分は未使用の状態となり、作業用
メモリ15の有効利用が図られていない。このため、複
素数入力データII,IQの格納領域と、中間結果の格
納領域とが同一の領域を交互に使用することとなり、F
FT処理を複数周期にわたって連続して行う場合に、デ
ータ入力と演算処理等とを並行して行うことができず、
処理効率の向上が困難であるという課題があった。本発
明は、前記従来技術が持っていた課題を解決し、サンプ
ル点数を1/2等に減少させた時に、データ入力と演算
処理等との並行処理を行うことにより、処理効率の向上
が可能なFFT回路を提供するものである。
However, the conventional FFT circuit has the following problems. For example, F
When the number of sample points in one cycle of the FT process is set to 512, which is の of 1024, only half of the working memory 15 is used, and the other half is unused. Not planned. For this reason, the storage areas for the complex input data II and IQ and the storage area for the intermediate result alternately use the same area.
When performing FT processing continuously over a plurality of cycles, data input and arithmetic processing cannot be performed in parallel,
There is a problem that it is difficult to improve the processing efficiency. The present invention solves the problem of the prior art, and can improve processing efficiency by performing parallel processing of data input and arithmetic processing when the number of sample points is reduced to half or the like. It provides a simple FFT circuit.

【0007】[0007]

【課題を解決するための手段】前記課題を解決するため
に、本発明の内の第1の発明は、一定周期でサンプリン
グされた離散的な入力データを入力する入力手段と、前
記入力手段から逐次入力されたN(但し、Nは2の冪乗
の値)サンプル分の前記入力データを処理するための記
憶容量を有する作業用記憶手段と、前記入力手段から入
力された入力データの周波数成分を算出するための捻り
係数を予め記憶した係数用記憶手段と、前記捻り係数及
び前記作業用記憶手段に格納された前記入力データに基
づいて中間結果を算出して該作業用記憶手段に再格納す
る演算処理を、所定の手順に従って繰り返えすことによ
り、該入力データの周波数成分を算出する周波数分析手
段とを備えたFFT回路において、作業用記憶手段を、
それぞれN/2サンプル分の前記入力データを処理する
ための記憶領域を有する2個のセグメントで構成してい
る。
According to a first aspect of the present invention, there is provided an input means for inputting discrete input data sampled at a constant period, and comprising: Working storage means having a storage capacity for processing the input data for N (where N is a power of 2) samples sequentially input, and a frequency component of the input data input from the input means And a storage means for the coefficient in which a torsion coefficient for calculating the torsion coefficient is stored in advance, and an intermediate result is calculated based on the torsion coefficient and the input data stored in the work storage means, and re-stored in the work storage means. In the FFT circuit including the frequency analysis means for calculating the frequency component of the input data by repeating the arithmetic processing to be performed in accordance with a predetermined procedure, the working storage means
Each segment is composed of two segments each having a storage area for processing the input data for N / 2 samples.

【0008】更に、前記2個のセグメントを、それぞれ
前記入力手段から前記入力データを格納する入力処理、
及び前記入力処理によってそのセグメントに格納された
前記入力データに基づいて前記周波数分析手段によって
周波数成分を算出して出力する算出処理に、順次並行し
て使用するための入力制御部及び出力制御部を設けてい
る。第1の発明によれば、以上のようにFFT回路を構
成したので、次のような作用が行われる。入力手段から
作業用記憶手段の一方のセグメントにN/2サンプル分
の入力データが入力されると、このセグメントに入力さ
れた入力データは、係数用記憶手段に記憶された捻り係
数とともに周波数分析手段に与えられて周波数成分の算
出処理が行われる。このセグメントの算出処理が行われ
ている間には、並行して他のセグメントに対するN/2
サンプル分の入力データの入力処理が行われる。
An input process for storing the input data from the input means,
An input control unit and an output control unit for sequentially and concurrently using a calculation process of calculating and outputting a frequency component by the frequency analysis unit based on the input data stored in the segment by the input process. Provided. According to the first aspect, since the FFT circuit is configured as described above, the following operation is performed. When input data for N / 2 samples is input to one segment of the working storage means from the input means, the input data input to this segment is output to the frequency analysis means together with the torsion coefficient stored in the coefficient storage means. To calculate the frequency component. While this segment calculation process is being performed, N / 2 for other segments is performed in parallel.
Input processing of input data for a sample is performed.

【0009】第2の発明は、第1の発明と同様のFFT
回路において、作業用記憶手段を、それぞれN/4サン
プル分の前記入力データを処理するための記憶領域を有
する4個のセグメントで構成している。更に、前記4個
のセグメントを、それぞれ前記入力手段から前記入力デ
ータを格納する入力処理、前記入力処理によってそのセ
グメントに格納された前記入力データに基づいて前記周
波数分析手段によって周波数成分を計算する計算処理、
及び前記計算処理による計算結果を出力する出力処理
に、順次並行して使用するための入力制御部及び出力制
御部を設けている。第2の発明によれば、次のような作
用が行われる。入力手段から作業用記憶手段の4個のセ
グメントに、順次N/4サンプル分の入力データが入力
される。入力処理の完了したセグメントの入力データ
は、係数用記憶手段に記憶された捻り係数とともに周波
数分析手段に与えられて周波数成分の計算処理が行われ
る。更に、計算処理の完了したセグメントに格納された
計算結果は、順次読み出されて出力される。4個のセグ
メントにおけるこれらの入力処理、計算処理、及び出力
処理は、それぞれ入力制御部及び出力制御部の制御に基
づいて、順次並行して行われる。
[0009] The second invention is the same as the FFT of the first invention.
In the circuit, the working storage means comprises four segments each having a storage area for processing the input data for N / 4 samples. Further, an input process for storing the input data from the input unit for each of the four segments, and a calculation for calculating a frequency component by the frequency analysis unit based on the input data stored in the segment by the input process processing,
Further, an input control unit and an output control unit for sequentially and in parallel use are provided for an output process for outputting a calculation result by the calculation process. According to the second aspect, the following operation is performed. Input data for N / 4 samples is sequentially input from the input means to the four segments of the working storage means. The input data of the segment for which the input processing has been completed is provided to the frequency analysis means together with the torsion coefficient stored in the coefficient storage means, and the frequency component is calculated. Further, the calculation results stored in the segments for which the calculation processing has been completed are sequentially read out and output. These input processing, calculation processing, and output processing in the four segments are sequentially performed in parallel under the control of the input control unit and the output control unit.

【0010】第3の発明は、第1及び第2の発明のFF
T回路において、前記周波数分析手段における演算処理
毎に、その演算処理で使用されるデータの指数を共通に
して該周波数分析手段に与えるブロック浮動小数点処理
手段を設けている。第3の発明によれば、次のような作
用が行われる。入力手段から入力された各入力データ
は、ブロック浮動小数点処理手段による演算処理におい
て、その演算処理で使用されるデータの指数が共通にさ
れて周波数分析手段に与えられる。
[0010] A third invention is the FF of the first and second inventions.
In the T circuit, block floating point processing means is provided for each arithmetic processing in the frequency analyzing means, which gives a common index of data used in the arithmetic processing to the frequency analyzing means. According to the third aspect, the following operation is performed. Each input data input from the input means is supplied to the frequency analysis means in the arithmetic processing by the block floating point processing means, with the index of the data used in the arithmetic processing being shared.

【0011】[0011]

【発明の実施の形態】第1の実施形態 図1は、本発明の第1の実施形態を示すFFT回路の構
成図である。このFFT回路は、実数部及び虚数部で構
成される時系列的な複素数入力データII,IQをそれ
ぞれ一旦保持するための入力手段(例えば、レジスタ)
31,32と、演算の中間結果等を格納するための作業
用記憶手段(例えば、データ記憶部)40を有してい
る。データ記憶部40は、入力側の入力制御部(例え
ば、マルチプレクサ)41、2つの作業用メモリ42,
43、及び出力側の出力制御部(例えば、マルチプレク
サ)44で構成されている。レジスタ31,32の出力
側は、マルチプレクサ41の入力側に接続されており、
このマルチプレクサ41の出力側には、作業用メモリ4
2,43のデータ入力端子が接続されている。マルチプ
レクサ41は、レジスタ31,32から与えられる入力
データや演算の中間結果を、所定の作業用メモリ42,
43に書き込むために切り替えて接続する機能を有する
ものである。また、作業用メモリ42,43は1周期の
サンプル点数N(例えば、N=1024=210)に対応
する記憶領域を有しており、それぞれ入力データII,
IQや、演算途中の複素数データの実数部及び虚数部を
一時的に格納するためのものである。作業用メモリ4
2,43のデータ出力端子は、マルチプレクサ44の入
力側に接続されている。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment FIG. 1 is a block diagram of an FFT circuit showing a first embodiment of the present invention. The FFT circuit includes input means (for example, a register) for temporarily holding time-series complex number input data II and IQ each composed of a real part and an imaginary part.
31 and 32, and a working storage unit (for example, a data storage unit) 40 for storing an intermediate result of the operation and the like. The data storage unit 40 includes an input-side input control unit (for example, a multiplexer) 41, two working memories 42,
And an output control unit (for example, a multiplexer) 44 on the output side. The output sides of the registers 31 and 32 are connected to the input side of the multiplexer 41.
The working memory 4 is connected to the output side of the multiplexer 41.
2, 43 data input terminals are connected. The multiplexer 41 converts the input data provided from the registers 31 and 32 and the intermediate result of the operation into a predetermined working memory 42,
It has a function of switching and connecting in order to write to 43. The working memories 42 and 43 have storage areas corresponding to the number N of sample points in one cycle (for example, N = 1024 = 2 10 ).
It is for temporarily storing IQ and the real part and imaginary part of complex number data in the middle of calculation. Working memory 4
The data output terminals 2 and 43 are connected to the input side of the multiplexer 44.

【0012】マルチプレクサ44は、作業用メモリ4
2,43から読み出されたデータを、FFT演算処理ま
たは最終結果出力のために切り替えて接続する機能を有
するものである。このFFT回路は、係数用記憶手段
(例えば、係数用メモリ)50、及びブロック浮動小数
点処理手段(例えば、ブロック浮動小数点処理部)60
を有している。係数用メモリ50は、FFT演算処理で
用いる正弦関数及び余弦関数に基づく捻り係数W1i,
W2i,W3i,W4i(但し、i=1〜256)を、
予め記憶した読み出し専用のメモリである。ブロック浮
動小数点処理部60は、各入力データに対して共通な指
数を検出処理するものである。即ち、データが入力され
る毎に、それらの数値の大小を比較し、既に作業用メモ
リ42,43に格納されている値よりも大きな数値が入
力されたときには、新しい方の数値に書き換えるように
なっている。また、作業用メモリ42,43に格納され
ている値よりも小さな数値が入力されたときには、その
ままの値を残すことにより、最終的に最大値を求めるよ
うになっている。そして、その最大値の指数をそのグル
ープに共通な指数として、計算処理時のシフトデータS
ETとして用いるものである。
The multiplexer 44 is provided with the working memory 4.
It has a function of switching and connecting the data read from the devices 2 and 43 for FFT operation processing or final result output. The FFT circuit includes a coefficient storage unit (for example, a memory for coefficients) 50 and a block floating point processing unit (for example, a block floating point processing unit) 60.
have. The coefficient memory 50 includes a torsion coefficient W1i, based on a sine function and a cosine function used in the FFT operation processing.
W2i, W3i, W4i (where i = 1 to 256)
This is a read-only memory stored in advance. The block floating-point processing unit 60 detects an exponent common to each input data. That is, each time data is input, the values are compared with each other, and when a value larger than the value already stored in the working memories 42 and 43 is input, it is rewritten to a newer value. Has become. When a numerical value smaller than the value stored in the working memories 42 and 43 is input, the maximum value is finally obtained by leaving the value as it is. Then, the shift data S at the time of the calculation processing is set as the index of the maximum value as the index common to the group.
It is used as ET.

【0013】マルチプレクサ44、係数用メモリ50、
及び浮動小数点処理部60の出力側は、周波数分析手段
(例えば、データパス)70A,70Bの入力側に接続
されている。データパス70A,70Bは、データ記憶
部40及び係数用メモリ50から与えられた捻り係数W
1i〜W4iと、浮動小数点処理部60から与えられた
シフトデータSFTを用い、FFTアルゴリズムに従っ
て繰り返し演算処理を行うことによって入力データの周
波数成分を算出するものである。データパス70A,7
0Bの出力側は、データ記憶部40のマルチプレクサ4
1の入力側に接続されている。マルチプレクサ44の出
力側には、更に、データパス70A,70Bによる繰り
返し演算によって最終的に得られた複素数出力データO
I,OQを出力するために保持するレジスタ91,92
が接続されている。また、このFFT回路は、動作の基
準となるクロック信号CLKを生成するクロック生成部
93と、このクロック信号CLKに基づいて各部の動作
シーケンスを制御するシーケンス制御部94と、動作シ
ーケンスに応じてデータ記憶部40及びブロック浮動小
数点処理部60に対する読み書きアドレス、並びに係数
用メモリ50に対する読み出しアドレスを生成するアド
レス生成部95とを備えている。
A multiplexer 44, a coefficient memory 50,
The output side of the floating point processing unit 60 is connected to the input side of frequency analysis means (for example, a data path) 70A, 70B. The data paths 70A and 70B are provided with the torsional coefficient W given from the data storage unit 40 and the coefficient memory 50.
A frequency component of input data is calculated by repeatedly performing an arithmetic operation according to the FFT algorithm using 1i to W4i and the shift data SFT provided from the floating point processing unit 60. Data path 70A, 7
0B is connected to the multiplexer 4 of the data storage unit 40.
1 is connected to the input side. The output side of the multiplexer 44 further outputs the complex number output data O finally obtained by the repetition operation by the data paths 70A and 70B.
Registers 91 and 92 held for outputting I and OQ
Is connected. The FFT circuit includes a clock generation unit 93 that generates a clock signal CLK as a reference for operation, a sequence control unit 94 that controls an operation sequence of each unit based on the clock signal CLK, An address generation unit 95 that generates a read / write address for the storage unit 40 and the block floating point processing unit 60 and a read address for the coefficient memory 50 is provided.

【0014】図3は、図1中のデータ記憶部40の構成
図である。このデータ記憶部40のマルチプレクサ41
は、4個のセレクタ41a,41b,41c,41dで
構成されている。作業用メモリ42,43は、それぞれ
2つに分けられたサンプル点数N/2(=512)に対
応するセグメント42a,42b、及びセグメント43
a,43bの記憶領域を有している。また、マルチプレ
クサ44は、2つのセレクタ44a,44bで構成され
ている。セレクタ41aの第1の入力側と、セレクタ4
1bの第3の入力側には、レジスタ31からのデータI
Ik(但し、k=1〜512)が与えられるようになっ
ている。同様に、セレクタ41cの第1の入力側とセレ
クタ41dの第2の入力側には、レジスタ32からのデ
ータIQkが与えられるようになっている。
FIG. 3 is a configuration diagram of the data storage unit 40 in FIG. The multiplexer 41 of the data storage unit 40
Is composed of four selectors 41a, 41b, 41c, 41d. The working memories 42 and 43 include segments 42a and 42b corresponding to the number of sample points N / 2 (= 512) divided into two, and a segment 43, respectively.
a, 43b. The multiplexer 44 is composed of two selectors 44a and 44b. The first input side of the selector 41a and the selector 4
1b, the data I from the register 31
Ik (where k = 1 to 512) is provided. Similarly, data IQk from the register 32 is supplied to a first input side of the selector 41c and a second input side of the selector 41d.

【0015】また、セレクタ41aの第3の入力側、セ
レクタ41bの第2の入力側、セレクタ41cの第3の
入力側、及びセレクタ41dの第3の入力側には、デー
タパス70Aからのデータai,ci(但し、i=1〜
128)が与えられる。セレクタ41aの第2の入力
側、セレクタ41bの第1の入力側、セレクタ41cの
第2の入力側、及びセレクタ41dの第1の入力側に
は、データパス70Bからのデータbi,diが与えら
れるようになっている。そして、セレクタ41a,41
bの出力側は、作業用メモリ42のセグメント42a,
42bのデータ入力端子にそれぞれ接続されている。作
業用メモリ42のセグメント42a,42bのデータ出
力端子は、セレクタ44aの第1及び第2の入力側にそ
れぞれ接続され、このセレクタ44aの出力側から複素
数データAi〜Diの実数部が出力されるようになって
いる。一方、セレクタ41c,41dの出力側は、作業
用メモリ43のセグメント43a,43bのデータ入力
端子にそれぞれ接続されている。作業用メモリ43のセ
グメント43a,43bのデータ出力端子は、セレクタ
44bの第1及び第2の入力側にそれぞれ接続され、こ
のセレクタ44bの出力側から複素数データAi〜Di
の虚数部が出力されるようになっている。
The third input side of the selector 41a, the second input side of the selector 41b, the third input side of the selector 41c, and the third input side of the selector 41d are provided with data from the data path 70A. ai, ci (where i = 1 to
128). Data bi and di from the data path 70B are given to the second input side of the selector 41a, the first input side of the selector 41b, the second input side of the selector 41c, and the first input side of the selector 41d. It is supposed to be. Then, the selectors 41a, 41
The output side of b is the segment 42a of the working memory 42,
42b are respectively connected to the data input terminals. The data output terminals of the segments 42a and 42b of the working memory 42 are respectively connected to the first and second input sides of a selector 44a, and the output side of the selector 44a outputs the real parts of the complex data Ai to Di. It has become. On the other hand, the output sides of the selectors 41c and 41d are connected to the data input terminals of the segments 43a and 43b of the working memory 43, respectively. Data output terminals of the segments 43a and 43b of the working memory 43 are respectively connected to first and second input sides of a selector 44b, and complex number data Ai to Di are output from the output side of the selector 44b.
The imaginary part of is output.

【0016】図4は、図1中のデータパス70A,70
Bの構成図である。データパス70Aは、データ記憶部
40から出力されたデータAi〜Diを演算のために一
旦保持するレジスタ71を有している。レジスタ71の
出力側には、シフタ72が接続されている。シフタ72
は、ブロック浮動小数点処理部60から与えられるシフ
トデータSFTに基づいて、レジスタ71に保持された
データAi〜Diを指定された桁数だけシフトするもの
である。シフタ72の出力側は、加算器73Aとセレク
タ74の第1の入力側に接続されている。加算器73A
の出力側は、セレクタ74の第2の入力側に接続され、
このセレクタ74の出力側がレジスタ75の入力側に接
続されている。レジスタ75の出力側は加減算器76の
入力側に接続され、この加減算器76の出力側がレジス
タ77,78の入力側に接続されている。
FIG. 4 shows data paths 70A and 70A in FIG.
FIG. The data path 70A has a register 71 that temporarily holds the data Ai to Di output from the data storage unit 40 for the operation. A shifter 72 is connected to the output side of the register 71. Shifter 72
Is for shifting the data Ai to Di held in the register 71 by the designated number of digits based on the shift data SFT given from the block floating point processing unit 60. The output side of the shifter 72 is connected to the adder 73A and the first input side of the selector 74. Adder 73A
Is connected to the second input side of the selector 74,
The output side of the selector 74 is connected to the input side of the register 75. The output side of the register 75 is connected to the input side of the adder / subtractor 76, and the output side of the adder / subtractor 76 is connected to the input sides of the registers 77 and 78.

【0017】データパス70Aは、係数用メモリ50か
ら与えられる捻り係数W1i,W3iを演算のために、
それぞれ一旦保持するためのレジスタ79,80を有し
ている。そして、レジスタ77,79の出力側は乗算器
81の入力側に接続され、この乗算器81の出力側にレ
ジスタ82が接続されている。また、レジスタ78,8
0の出力側は乗算器83の入力側に接続され、この乗算
器83の出力側にレジスタ84が接続されている。レジ
スタ82,84の出力側は加減算器85に接続され、こ
の加減算器85の出力側に、レジスタ86が接続されて
いる。そして、レジスタ86に一旦格納された演算結果
が、データai,ciとして出力されるようになってい
る。データパス70Bの構成は、データパス70Aとほ
ぼ同様である。但し、データパス70Aにおける加算器
73Aに代えて、減算器73Bが設けられている。その
他の構成は、データパス70Aと同様であり、レジスタ
86に一旦格納された演算結果が、データbi,diと
して出力されるようになっている。
The data path 70A is used to calculate the torsional coefficients W1i and W3i given from the coefficient memory 50,
Each has registers 79 and 80 for temporarily holding them. The outputs of the registers 77 and 79 are connected to the input of a multiplier 81, and the output of the multiplier 81 is connected to a register. The registers 78 and 8
The output side of 0 is connected to the input side of the multiplier 83, and the output side of the multiplier 83 is connected to the register 84. The outputs of the registers 82 and 84 are connected to an adder / subtractor 85, and the output of the adder / subtractor 85 is connected to a register 86. Then, the operation result once stored in the register 86 is output as data ai, ci. The configuration of data path 70B is substantially the same as data path 70A. However, a subtractor 73B is provided instead of the adder 73A in the data path 70A. The other configuration is the same as that of the data path 70A, and the operation result once stored in the register 86 is output as data bi and di.

【0018】このようなデータパス70A,70Bは、
セレクタ74の切り替えにより、基数4及び基数2につ
いてのFFT演算処理が可能な機能を有している。即
ち、基数4のFFT演算処理を行う場合には、データパ
ス70A,70Bのレジスタ71に、データ記憶部40
から読み出された複素数データAi〜Diを格納する。
そして、データパス70Aのセレクタ74で加算器73
Aの出力側を、データパス70Bのセレクタ74で減算
器73Bの出力側をそれぞれ選択する。更に、データパ
ス70Aのレジスタ79,80には、係数用メモリ50
から読み出された捻り係数W1i,W3iをそれぞれ格
納する。一方、データパス70Bのレジスタ79,80
には、係数用メモリ50から読み出された捻り係数W2
i,W4iをそれぞれ格納する。
Such data paths 70A, 70B are:
By switching the selector 74, a function capable of performing FFT operation processing on the radix 4 and the radix 2 is provided. That is, when performing radix-4 FFT operation processing, the data storage unit 40 is stored in the register 71 of the data paths 70A and 70B.
And the complex number data Ai to Di read from.
The selector 74 of the data path 70A adds the adder 73.
The output side of A is selected by the selector 74 of the data path 70B from the output side of the subtractor 73B. Further, the registers 79 and 80 of the data path 70A include the coefficient memory 50.
The torsional coefficients W1i and W3i read from are stored, respectively. On the other hand, registers 79 and 80 of data path 70B
Includes the torsion coefficient W2 read from the coefficient memory 50.
i and W4i are stored.

【0019】これにより、データパス70A,70Bの
出力側には、次の式(1)〜(4)に従って算出された
出力信号ai,ci、及び出力信号bi,diが、それ
ぞれ出力されるようになっている。 ai={(Ai+Ci)+(Bi+Di)}×W1i ・・・(1) ci={(Ai+Ci)−(Bi+Di)}×W3i ・・・(2) bi={(Ai−Ci)−j(Bi−Di)}×W2i ・・・(3) di={(Ai−Ci)+j(Bi−Di)}×W4i ・・・(4) 一方、基数2のFFT演算処理を行う場合には、データ
パス70A,70Bのレジスタ71に、データ記憶部4
0から読み出された複素数データAi〜Diを格納する
とともに、データパス70Aのセレクタ74で加算器7
3Aの入力側を、データパス70Bのセレクタ74で減
算器73Bの入力側を選択する。そして、データパス7
0Aのレジスタ79,80には、係数用メモリ50から
読み出された捻り係数W1i,W3iは、位相0゜に対
応する捻り係数W0(=1+j0)を交互に格納する。
一方、データパス70Bのレジスタ79,80には、係
数用メモリ50から読み出された捻り係数W2,W4
は、同様に捻り係数W0を交互に格納する。
Thus, the output signals ai, ci and the output signals bi, di calculated according to the following equations (1) to (4) are output to the output sides of the data paths 70A, 70B, respectively. It has become. ai = {(Ai + Ci) + (Bi + Di)} × W1i (1) ci = {(Ai + Ci) − (Bi + Di)} × W3i (2) bi = {(Ai−Ci) −j (Bi) −Di)} × W2i (3) di = {(Ai−Ci) + j (Bi−Di)} × W4i (4) On the other hand, when performing a radix-2 FFT operation, data The data storage unit 4 is stored in the register 71 of the paths 70A and 70B.
0, and stores the complex number data Ai to Di read from the adder 7 by the selector 74 of the data path 70A.
The input side of 3A is selected by the selector 74 of the data path 70B from the input side of the subtractor 73B. And data path 7
In the 0A registers 79 and 80, the torsional coefficients W1i and W3i read from the coefficient memory 50 alternately store the torsional coefficients W0 (= 1 + j0) corresponding to the phase 0 °.
On the other hand, the torsional coefficients W2 and W4 read from the coefficient memory 50 are stored in the registers 79 and 80 of the data path 70B.
Similarly stores the torsional coefficient W0 alternately.

【0020】これにより、データパス70Aの出力側に
は、前記式(1),(2)、または次の式(5),
(6)に従って算出された出力信号ai,biが交互に
出力されるようになっている。 ai=Ai+Bi ・・・(5) bi=Ai−Bi ・・・(6) また、データパス70Bの出力側には、前記式(3),
(4)、または次の式(7),(8)に従って算出され
た出力信号ci,diが交互に出力されるようになって
いる。 ci=Ci+Di ・・・(7) di=Ci−Di ・・・(8)
As a result, the output side of the data path 70A is provided with the above equations (1) and (2) or the following equations (5) and (5).
The output signals ai and bi calculated according to (6) are output alternately. ai = Ai + Bi (5) bi = Ai-Bi (6) Also, on the output side of the data path 70B, the equation (3),
(4) Alternatively, output signals ci and di calculated according to the following equations (7) and (8) are output alternately. ci = Ci + Di (7) di = Ci-Di (8)

【0021】図5は、図1のFFT回路の動作シーケン
スを示す図である。次に、図3〜図5を参照しつつ、図
1のFFT回路におけるサンプル点数512での動作を
説明する。先ず、図5の周期T1において、図3のデー
タ記憶部40のマルチプレクサ41a〜41dは第1の
入力側に切り替えられる。これにより、セグメント42
aには、外部からの第1周期の複素数入力データの実数
部IIがレジスタ31を介して書き込まれる。また、セ
グメント43aには、外部からの第1周期の複素数入力
データの虚数部IQがレジスタ32を介して書き込まれ
る。
FIG. 5 is a diagram showing an operation sequence of the FFT circuit of FIG. Next, the operation of the FFT circuit of FIG. 1 at the number of sample points 512 will be described with reference to FIGS. First, in the period T1 in FIG. 5, the multiplexers 41a to 41d of the data storage unit 40 in FIG. 3 are switched to the first input side. Thereby, the segment 42
In a, the real part II of the complex input data of the first cycle from the outside is written via the register 31. Further, the imaginary part IQ of the complex input data of the first cycle from the outside is written into the segment 43a via the register 32.

【0022】次に、周期T2において、マルチプレクサ
41a〜41dは第2、第3の入力側に切り替えられ、
また、マルチプレクサ44a,44bは第2の入力側に
切り替えられる。これにより、セグメント42b,43
bには、外部からの第2周期の複素数入力データII,
IQがレジスタ31,32を介して書き込まれる。一
方、セグメント42a,43aに格納された第1周期の
入力データは、マルチプレクサ44a,44bを介して
出力される。そして、データパス70A,70Bの演算
結果がマルチプレクサ41a,41cを介して、セグメ
ント42a,43aに入力され、これらのセグメント4
2a,43aの内容は、演算途中データで順次置き換え
られる。演算がすべて終了し、演算途中データが最終結
果に置き換えられると、この最終結果は、クロック信号
CLK3に同期して出力される。
Next, in the cycle T2, the multiplexers 41a to 41d are switched to the second and third input sides,
Further, the multiplexers 44a and 44b are switched to the second input side. Thereby, the segments 42b and 43
b includes externally input complex number input data II,
The IQ is written via the registers 31 and 32. On the other hand, the input data of the first cycle stored in the segments 42a and 43a is output via the multiplexers 44a and 44b. The operation results of the data paths 70A and 70B are input to the segments 42a and 43a via the multiplexers 41a and 41c.
The contents of 2a and 43a are sequentially replaced with data during the operation. When all the operations are completed and the data in the middle of the operation is replaced with the final result, the final result is output in synchronization with the clock signal CLK3.

【0023】更に、周期T3において、マルチプレクサ
41a〜41dは、再び第1の入力側に切り替えられ、
マルチプレクサ44a,44bも第1の入力側に切り替
えられる。これにより、セグメント42a,43aに
は、外部からの第3周期の複素数入力データII,IQ
がレジスタ31,32を介して書き込まれる。一方、セ
グメント42b,43bに格納された第2周期の入力デ
ータは、マルチプレクサ44a,44bを介して出力さ
れる。そして、データパス70A,70Bの演算結果が
マルチプレクサ41b,41dを介して、セグメント4
2b,43bに入力され、これらのセグメント42b,
43bの内容は、演算途中データで順次置き換えられ
る。
Further, in the period T3, the multiplexers 41a to 41d are again switched to the first input side,
The multiplexers 44a and 44b are also switched to the first input. As a result, the third-period complex number input data II and IQ are externally added to the segments 42a and 43a.
Is written through the registers 31 and 32. On the other hand, the input data of the second cycle stored in the segments 42b and 43b is output via the multiplexers 44a and 44b. Then, the operation results of the data paths 70A and 70B are transmitted to the segment 4 via the multiplexers 41b and 41d.
2b, 43b and these segments 42b,
The contents of 43b are sequentially replaced with data during the operation.

【0024】図5中の周期T3に詳細を例示したよう
に、各周期において、複素数入力データ(II1,IQ
1),(II2,IQ2),…,(II512,IQ5
12)は、データ入力用のクロック信号CLK1に同期
して順次入力される。そして、入力された実数部の入力
データII1,II2,…,II512は、データ記憶
部40のセグメント42aに、データA1〜D1,A2
〜D2,…,A128〜D128の実数部データとして
順次記憶される。また、虚数部の入力データIQ1,I
Q2,…,IQ512は、データ記憶部40のセグメン
ト43aに、データA1〜D1,A2〜D2,…,A1
28〜D128の虚数部データとして順次記憶される。
一方、データ記憶部40のセグメント42b,43bに
一旦格納されたデータは、演算用のクロック信号CLK
2に同期して読み出され、データパス70A,70Bに
おいてFFT演算処理が行われ、その中間結果は演算途
中データとして、再びセグメント42b,43bの同じ
記憶領域に再格納される。更に、再格納された中間結果
に所定の手順によるFFT演算処理が繰り返し施され、
その最終結果はセグメント42b,43bの同じ記憶領
域に格納される。そして、最終結果は、出力用のクロッ
ク信号CLK3に同期して実数成分の出力データOI
1,OI2,…,OI512、及び虚数成分の出力デー
タOQ1,OQ2,…,OQ512として、それぞれレ
ジスタ91,92を介して出力される。
As illustrated in detail in a cycle T3 in FIG. 5, in each cycle, the complex number input data (II1, IQ
1), (II2, IQ2),..., (II512, IQ5)
12) are sequentially input in synchronization with the clock signal CLK1 for data input. The input data II1, II2,..., II512 of the real number part are stored in the segment 42a of the data storage unit 40 as data A1 to D1, A2.
.., D128,..., A128 to D128. Also, the input data IQ1, I of the imaginary part
, IQ512 store data A1 to D1, A2 to D2,..., A1 in the segment 43a of the data storage unit 40.
28 to D128 are sequentially stored as imaginary part data.
On the other hand, the data once stored in the segments 42b and 43b of the data storage unit 40 is used for the operation clock signal CLK.
2 and are subjected to FFT operation processing in the data paths 70A and 70B, and the intermediate result is again stored in the same storage area of the segments 42b and 43b as intermediate data. Further, an FFT operation process according to a predetermined procedure is repeatedly performed on the re-stored intermediate result,
The final result is stored in the same storage area of the segments 42b and 43b. The final result is the output data OI of the real component in synchronization with the output clock signal CLK3.
, OI512, and imaginary component output data OQ1, OQ2,..., OQ512 are output via registers 91, 92, respectively.

【0025】以上のように、この第1の実施形態のFF
T回路は、それぞれ2つのセグメント42a,42b、
及びセグメント43a,43bに分割された作業用メモ
リ42,43と、一方のセグメントに外部からのデータ
を入力しているときには、他方のセグメントに格納され
たデータを読み出してFFT演算処理を行うように切り
替えるためのマルチプレクサ41,44を有している。
これにより、サンプル点数を1/2に減じてFFT処理
を行う場合に、作業用メモリ42,43の有効利用によ
り、データ入力と演算処理等との並行処理が可能にな
り、処理性能の向上が可能になる。
As described above, the FF of the first embodiment
The T circuit has two segments 42a, 42b, respectively.
When data from outside is input to one of the working memories 42 and 43 divided into segments 43a and 43b, the data stored in the other segment is read to perform the FFT operation. It has multiplexers 41 and 44 for switching.
Thereby, when performing the FFT processing by reducing the number of sample points to 1 /, the parallel use of the data input and the arithmetic processing can be performed by the effective use of the working memories 42 and 43, and the processing performance is improved. Will be possible.

【0026】第2の実施形態 図6は、本発明の第2の実施形態を示すデータ記憶部4
0Aの構成図である。このデータ記憶部40Aは、図1
中のデータ記憶部40に代えて設けられるものであり、
入力側の入力制御部(例えば、マルチプレクサ)45
a,45b、作業用メモリ46,47、及び出力側の出
力制御部(例えば、マルチプレクサ)48a,48bで
構成されている。マルチプレクサ45aは、3個の入力
側と、4個の出力側とを備え、図示しない制御信号に従
って、入力側と出力側との接続を行うものである。マル
チプレクサ45aの入力側に、レジスタ31からの実数
部の入力データIIk(但し、k=1〜256)及びデ
ータパス70A,70Bからのデータai〜di(但
し、i=1〜64)が与えられるようになっている。作
業用メモリ46は、それぞれサンプル点数256の入力
データIIkに対応する記憶領域を有する4個のセグメ
ント46a,46b,46c,46dで構成されてい
る。そして、これらの各セグメント46a〜46dの入
力側が、マルチプレクサ45aの4個の出力側にそれぞ
れ接続されている。各セグメント46a〜46dの出力
側は、4入力2出力のマルチプレクサ48aの入力側に
それぞれ接続されている。マルチプレクサ48aは、図
示しない制御信号に従って、入力側と出力側との接続を
行うものである。
Second Embodiment FIG. 6 shows a data storage unit 4 according to a second embodiment of the present invention.
It is a block diagram of 0A. This data storage unit 40A
It is provided in place of the data storage unit 40 inside,
Input side input control unit (for example, multiplexer) 45
a, 45b, working memories 46, 47, and an output-side output control unit (for example, a multiplexer) 48a, 48b. The multiplexer 45a has three input sides and four output sides, and connects the input side and the output side according to a control signal (not shown). To the input side of the multiplexer 45a, input data IIk (where k = 1 to 256) of the real part from the register 31 and data ai to di (where i = 1 to 64) from the data paths 70A and 70B are provided. It has become. The working memory 46 includes four segments 46a, 46b, 46c, and 46d each having a storage area corresponding to the input data IIk having 256 sample points. The input side of each of the segments 46a to 46d is connected to the four output sides of the multiplexer 45a. The output side of each of the segments 46a to 46d is connected to the input side of a 4-input 2-output multiplexer 48a. The multiplexer 48a connects the input side and the output side according to a control signal (not shown).

【0027】同様に、マルチプレクサ45bは、3個の
入力側と、4個の出力側とを備え、図示しない制御信号
に従って、入力側と出力側との接続を行うものである。
マルチプレクサ45bの入力側に、レジスタ32からの
虚数部の入力データIQk(但し、k=1〜256)及
びデータパス70A,70Bからのデータai〜di
(但し、i=1〜64)が与えられるようになってい
る。作業用メモリ47は、それぞれサンプル点数256
の入力データIQkに対応する記憶領域を有する4個の
セグメント47a,47b,47c,47dで構成され
ている。そして、これらの各セグメント47a〜47d
の入力側が、マルチプレクサ45bの4個の出力側にそ
れぞれ接続されている。各セグメント47a〜47dの
出力側は、4入力2出力のマルチプレクサ48bの入力
側にそれぞれ接続されている。マルチプレクサ48b
は、図示しない制御信号に従って、入力側と出力側との
接続を行うものである。
Similarly, the multiplexer 45b has three input sides and four output sides, and connects the input side and the output side according to a control signal (not shown).
At the input side of the multiplexer 45b, input data IQk (where k = 1 to 256) of the imaginary part from the register 32 and data ai to di from the data paths 70A and 70B are provided.
(Where i = 1 to 64). The working memory 47 has 256 sample points each.
Is composed of four segments 47a, 47b, 47c and 47d having storage areas corresponding to the input data IQk. Then, each of these segments 47a to 47d
Are connected to the four outputs of the multiplexer 45b, respectively. The output side of each of the segments 47a to 47d is connected to the input side of a 4-input 2-output multiplexer 48b. Multiplexer 48b
Connects the input side and the output side according to a control signal (not shown).

【0028】図7は、図6のデータ記憶部40Aの動作
シーケンスを示す図である。次に、図7を参照しつつ、
図6のデータ記憶部40Aにおけるサンプル点数256
での動作を説明する。先ず、図7の周期T1において、
図6中のマルチプレクサ45a,45bの第1の入力側
は、それぞれ第1の出力側に接続される。これにより、
セグメント46a,47aには、第1周期の入力データ
II,IQがそれぞれ格納される。次に、周期T2にお
いて、各マルチプレクサ45a,45bの第1の入力側
は第2の出力側に接続され、第2の入力側は第1の出力
側に接続される。更に、マルチプレクサ48a,48b
の第1の入力側は第1の出力側に接続される。これによ
り、セグメント46b,47bに、第2周期の入力デー
タII,IQがそれぞれ格納される。一方、セグメント
46a,47aに格納された第1周期の入力データI
I,IQは、それぞれデータパス70A,70Bに与え
られ、FFT演算処理が行われて最終的な演算結果に書
き替えられる。
FIG. 7 is a diagram showing an operation sequence of the data storage section 40A of FIG. Next, referring to FIG.
The number of sample points 256 in the data storage unit 40A of FIG.
Will be described. First, in a cycle T1 of FIG.
The first inputs of the multiplexers 45a and 45b in FIG. 6 are respectively connected to the first outputs. This allows
The segments 46a and 47a store the input data II and IQ of the first cycle, respectively. Next, in the period T2, the first input side of each of the multiplexers 45a and 45b is connected to the second output side, and the second input side is connected to the first output side. Further, multiplexers 48a and 48b
Has a first input connected to a first output. As a result, the input data II and IQ of the second cycle are stored in the segments 46b and 47b, respectively. On the other hand, the input data I of the first cycle stored in the segments 46a and 47a
I and IQ are provided to data paths 70A and 70B, respectively, and are subjected to FFT operation processing and rewritten to final operation results.

【0029】周期T3において、各マルチプレクサ45
a,45bの第1の入力側は第3の出力側に接続され、
第2及び第3の入力側は第2の出力側に接続される。更
に、マルチプレクサ48a,48bの第1の入力側は第
2の出力側に接続され、第2及び第3の入力側は第1の
出力側に接続される。これにより、セグメント46c,
47cに,第3周期の入力データII,IQがそれぞれ
格納される。一方、セグメント46b,47bに格納さ
れた第2周期のデータII,IQは、それぞれデータパ
ス70A,70Bに与えられ、FFT演算処理が行われ
て最終的な演算結果に書き替えられる。更に、セグメン
ト46a,47aに格納された第1周期の入力データI
I,IQに対応するFFT演算結果は、それぞれレジス
タ91,92を介して出力データOI,OQとして出力
される。
In the period T3, each multiplexer 45
a, 45b have a first input connected to a third output,
The second and third inputs are connected to a second output. Furthermore, the first inputs of the multiplexers 48a, 48b are connected to a second output, and the second and third inputs are connected to a first output. Thereby, the segment 46c,
47c stores the input data II and IQ of the third cycle, respectively. On the other hand, the data II and IQ of the second cycle stored in the segments 46b and 47b are provided to the data paths 70A and 70B, respectively, are subjected to FFT operation processing, and are rewritten into final operation results. Further, the input data I of the first cycle stored in the segments 46a and 47a
FFT operation results corresponding to I and IQ are output as output data OI and OQ via registers 91 and 92, respectively.

【0030】例えば周期T4に例示したように、各周期
において、複素数入力データ(II1,IQ1),(I
I2,IQ2),…,(II256,IQ256)は、
データ入力用のクロック信号CLK1に同期して順次入
力される。そして、入力された実数部の入力データII
1,II2,…,II256は、データ記憶部40のセ
グメント46d等に、データA1〜D1,A2〜D2,
…,A64〜D64の実数部として順次記憶される。ま
た、虚数部の入力データIQ1,IQ2,…,IQ25
6は、データ記憶部40のセグメント47d等に、デー
タA1〜D1,A2〜D2,…,A64〜D64の虚数
部として順次記憶される。一方、セグメント46c,4
7c等に一旦格納されたデータは、演算用のクロック信
号CLK2に同期して読み出され、データパス70A,
70BにおいてFFT演算処理が行われ、その中間結果
は演算途中データとして、再びセグメント46c,47
c等の同じ記憶領域に再格納される。更に、再格納され
た中間結果に所定の手順によるFFT演算処理が繰り返
し施され、その最終結果はセグメント46c,47c等
の同じ記憶領域に格納される。
For example, as illustrated in the cycle T4, in each cycle, the complex number input data (II1, IQ1), (I
I2, IQ2), ..., (II256, IQ256)
The data is sequentially input in synchronization with the data input clock signal CLK1. Then, the input data II of the input real number part
.., II256 are stored in the segments 46d of the data storage unit 40, etc., in the data A1 to D1, A2 to D2,
.., Are sequentially stored as real parts of A64 to D64. Also, imaginary part input data IQ1, IQ2,..., IQ25
6 are sequentially stored as imaginary parts of the data A1 to D1, A2 to D2,..., A64 to D64 in the segment 47d or the like of the data storage unit 40. On the other hand, segments 46c, 4
The data once stored in the data path 70A, 7c, etc. is read out in synchronization with the operation clock signal CLK2.
70B, an FFT operation process is performed, and the intermediate result is again calculated as intermediate data, and the segments 46c and 47 are again processed.
The data is stored again in the same storage area such as c. Further, the re-stored intermediate result is repeatedly subjected to an FFT operation according to a predetermined procedure, and the final result is stored in the same storage area such as the segments 46c and 47c.

【0031】また、セグメント46b,47b等に格納
された最終結果は、出力用のクロック信号CLK3に同
期して実数部の出力データOI1,OI2,…,OI2
56、及び虚数部の出力データOQ1,OQ2,…,O
Q256として、それぞれレジスタ91,92を介して
出力される。以上のように、この第2の実施形態のデー
タ記憶部は、それぞれ4つのセグメント46a〜46
d、及びセグメント47a〜47dに分割された作業用
メモリ46,47と、1つのセグメントに外部からの入
力データを入力しているときには、その前のセグメント
に格納されたデータを読み出してFFT演算処理を行
い、更にその前のセグメントに格納された演算結果を出
力するように切り替えるためのマルチプレクサ45a,
45b,48a,48bを有している。これにより、サ
ンプル点数を1/4に減じてFFT処理を行う場合に、
作業用メモリ46,47の有効利用により、データ入
力、演算処理、及びデータ出力の並行処理が可能にな
り、処理性能の向上が可能になる。
The final results stored in the segments 46b and 47b are output data OI1, OI2,..., OI2 of the real part in synchronization with the output clock signal CLK3.
56, and output data OQ1, OQ2,.
It is output as Q256 via registers 91 and 92, respectively. As described above, the data storage unit of the second embodiment has four segments 46a to 46
d and working memories 46 and 47 divided into segments 47a to 47d, and when input data from outside is input to one segment, data stored in the previous segment is read out to perform FFT operation processing. And a multiplexer 45a for switching to output the operation result stored in the previous segment.
45b, 48a and 48b. Thereby, when performing the FFT processing by reducing the number of sample points to 1/4,
By effective use of the working memories 46 and 47, parallel processing of data input, arithmetic processing, and data output becomes possible, thereby improving processing performance.

【0032】なお、本発明は、上記実施形態に限定され
ず、種々の変形が可能である。この変形例としては、例
えば、次の(a)〜(d)のようなものがある。 (a) データ記憶部40,40Aは、最大サンプル点
数1024に対応する記憶領域を有しているが、最大サ
ンプル点数は1024に限定されず、必要な処理精度に
応じたサンプル点数に対応するものであれば良い。 (b) データパス70A,70Bの構成は、図4の構
成に限定されず、FFT演算処理を行うことができるも
のであれば、どのような構成でも適用可能である。 (c) 図1のFFT回路は、ブロック浮動小数点処理
部60を備えているが、演算処理精度よりも回路の簡素
化を重視する場合には、省略しても良い。 (d) 図6のデータ記憶部40Aでは、4個のセグメ
ントを順次周期的に入力、演算、出力、無使用の順に割
り当てているが、3個のセグメントを周期的に入力、演
算、出力の順に割り当て、残りの1個のセグメントを無
使用またはその他の目的に使用するように割り当てるこ
ともできる。
The present invention is not limited to the above embodiment, and various modifications are possible. For example, there are the following modifications (a) to (d). (A) The data storage units 40 and 40A have storage areas corresponding to the maximum number of sample points 1024, but the maximum number of sample points is not limited to 1024 and corresponds to the number of sample points according to the required processing accuracy. Is fine. (B) The configuration of the data paths 70A and 70B is not limited to the configuration shown in FIG. 4, and any configuration can be applied as long as it can perform FFT operation processing. (C) Although the FFT circuit of FIG. 1 includes the block floating point processing unit 60, it may be omitted if simplification of the circuit is more important than arithmetic processing accuracy. (D) In the data storage unit 40A of FIG. 6, four segments are sequentially and periodically allocated in the order of input, operation, output, and unused, but three segments are periodically allocated to input, operation, and output. It is also possible to allocate them in order, and to allocate the remaining one segment to be unused or used for other purposes.

【0033】[0033]

【発明の効果】以上詳細に説明したように、第1の発明
によれば、作業用記憶手段をN/2サンプル分を処理す
るための2つのセグメントに分割するとともに、これら
のセグメントを、入力データの入力処理と、入力された
データから周波数成分を算出する算出処理に並行して使
用するための入力制御部及び出力制御部を設けている。
このため、通常の1/2のサンプル数でFFT演算を行
う場合に、作業用記憶手段の有効利用が可能になり、処
理効率を向上することができるという効果がある。
As described above in detail, according to the first aspect, the working storage means is divided into two segments for processing N / 2 samples, and these segments are inputted. An input control unit and an output control unit are provided for use in parallel with data input processing and calculation processing for calculating frequency components from input data.
For this reason, when the FFT operation is performed with the normal number of samples of 作業, the working storage unit can be effectively used, and the processing efficiency can be improved.

【0034】第2の発明によれば、作業用記憶手段をN
/4サンプル分を処理するための4つのセグメントに分
割するとともに、これらのセグメントを、入力データの
入力処理と、入力されたデータから周波数成分を計算す
る計算処理と、計算結果を出力する出力処理とに並行し
て使用するための入力制御部及び出力制御部を設けてい
る。このため、通常の1/4のサンプル数でFFT演算
を行う場合に、作業用記憶手段の有効利用が可能にな
り、更に処理効率を向上することができるという効果が
ある。第3の発明によれば、第1及び第2の発明に、ブ
ロック浮動小数点処理手段を設けている。これにより、
入力データの有効桁数を最大にして演算処理を行うこと
が可能になり、第1及び第2の発明の効果に加えて、演
算精度の向上が可能になるという効果がある。
According to the second invention, the working storage means is set to N
/ 4 samples are divided into four segments for processing, and these segments are input data input processing, calculation processing for calculating frequency components from input data, and output processing for outputting calculation results And an input control unit and an output control unit to be used in parallel. For this reason, when the FFT operation is performed with the normal number of samples of 1/4, the working storage unit can be effectively used, and the processing efficiency can be further improved. According to the third invention, the first and second inventions are provided with block floating point processing means. This allows
The arithmetic processing can be performed by maximizing the number of significant digits of the input data, and in addition to the effects of the first and second inventions, there is an effect that the arithmetic accuracy can be improved.

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

【図1】本発明の第1の実施形態を示すFFT回路の構
成図である。
FIG. 1 is a configuration diagram of an FFT circuit according to a first embodiment of the present invention.

【図2】従来のFFT回路の一例を示す構成図である。FIG. 2 is a configuration diagram illustrating an example of a conventional FFT circuit.

【図3】図1中のデータ記憶部40の構成図である。FIG. 3 is a configuration diagram of a data storage unit 40 in FIG.

【図4】図1中のデータパス70A,70Bの構成図で
ある。
FIG. 4 is a configuration diagram of data paths 70A and 70B in FIG. 1;

【図5】図1のFFT回路の動作シーケンスを示す図で
ある。
FIG. 5 is a diagram showing an operation sequence of the FFT circuit of FIG. 1;

【図6】本発明の第2の実施形態を示すデータ記憶部4
0Aの構成図である。
FIG. 6 shows a data storage unit 4 according to the second embodiment of the present invention.
It is a block diagram of 0A.

【図7】図6のデータ記憶部40Aの動作シーケンスを
示す図である。
FIG. 7 is a diagram showing an operation sequence of the data storage unit 40A of FIG.

【符号の説明】[Explanation of symbols]

40,40A データ記憶部 41,44,45a,45b,48a,48b マル
チプレクサ 41a〜41d,44a,44b セレクタ 42,43 作業用メモリ 42a,42b,43a,43b,46a〜46d,4
7a〜47d セグメント 50 係数用メモリ 60 ブロック浮動小数点処理部 70A,70B データパス 93 クロック生成部 94 シーケンス制御部 95 アドレス生成部
40, 40A Data storage units 41, 44, 45a, 45b, 48a, 48b Multiplexers 41a to 41d, 44a, 44b Selectors 42, 43 Working memories 42a, 42b, 43a, 43b, 46a to 46d, 4
7a to 47d Segment 50 Coefficient memory 60 Block floating point processing unit 70A, 70B Data path 93 Clock generation unit 94 Sequence control unit 95 Address generation unit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 土田 健一 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 (72)発明者 森山 繁樹 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 (72)発明者 黒田 徹 東京都世田谷区砧1丁目10番11号 日本放 送協会 放送技術研究所内 Fターム(参考) 5B056 AA00 BB13 CC01 CC03 FF05 FF06 FF07 GG00  ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Kenichi Tsuchida 1-10-11 Kinuta, Setagaya-ku, Tokyo Inside the Japan Broadcasting Corporation Broadcasting Research Institute (72) Inventor Shigeki Moriyama 1-10-11 Kinuta, Setagaya-ku, Tokyo No. Japan Broadcasting Corporation Broadcasting Technology Research Laboratory (72) Inventor Toru Kuroda 1-10-11 Kinuta, Setagaya-ku, Tokyo Japan Broadcasting Technology Broadcasting Research Laboratory F-term (reference) 5B056 AA00 BB13 CC01 CC03 FF05 FF06 FF07 GG00

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 一定周期でサンプリングされた離散的な
入力データを入力する入力手段と、 前記入力手段から逐次入力されたN(但し、Nは2の冪
乗の値)サンプル分の前記入力データを処理するための
記憶容量を有する作業用記憶手段と、 前記入力手段から入力された入力データの周波数成分を
算出するための捻り係数を予め記憶した係数用記憶手段
と、 前記捻り係数及び前記作業用記憶手段に格納された前記
入力データに基づいて中間結果を算出して該作業用記憶
手段に再格納する演算処理を、所定の手順に従って繰り
返えすことにより、該入力データの周波数成分を算出す
る周波数分析手段とを備えた高速フーリエ変換回路にお
いて、 前記作業用記憶手段を、それぞれN/2サンプル分の前
記入力データを処理するための記憶領域を有する2個の
セグメントで構成し、 前記2個のセグメントを、それぞれ前記入力手段から前
記入力データを格納する入力処理、及び前記入力処理に
よってそのセグメントに格納された前記入力データに基
づいて前記周波数分析手段によって周波数成分を算出し
て出力する算出処理に、順次並行して使用するための入
力制御部及び出力制御部を設けたことを特徴とする高速
フーリエ変換回路。
1. An input means for inputting discrete input data sampled at a constant period, and N (where N is a power of 2) samples sequentially input from the input means. Work storage means having a storage capacity for processing, a coefficient storage means for storing in advance a torsion coefficient for calculating a frequency component of input data input from the input means, the torsion coefficient and the work The arithmetic processing of calculating the intermediate result based on the input data stored in the working storage means and restoring the intermediate result in the working storage means is repeated according to a predetermined procedure to calculate the frequency component of the input data. A fast Fourier transform circuit provided with a frequency analysis unit for performing the above operation, wherein the working storage unit is provided with a storage area for processing the input data for N / 2 samples. An input process for storing the input data from the input unit, and the frequency analysis based on the input data stored in the segment by the input process. A fast Fourier transform circuit characterized in that an input control unit and an output control unit for sequentially and concurrently using a calculation process for calculating and outputting a frequency component by means are provided.
【請求項2】 一定周期でサンプリングされた離散的な
入力データを入力する入力手段と、 前記入力手段から逐次入力されたN(但し、Nは2の冪
乗の値)サンプル分の前記入力データを処理するための
記憶容量を有する作業用記憶手段と、 前記入力手段から入力された入力データの周波数成分を
算出するための捻り係数を予め記憶した係数用記憶手段
と、 前記捻り係数及び前記作業用記憶手段に格納された前記
入力データに基づいて中間結果を算出して該作業用記憶
手段に再格納する演算処理を、所定の手順に従って繰り
返えすことにより、該入力データの周波数成分を算出す
る周波数分析手段とを備えた高速フーリエ変換回路にお
いて、 前記作業用記憶手段を、それぞれN/4サンプル分の前
記入力データを処理するための記憶領域を有する4個の
セグメントで構成し、 前記4個のセグメントを、それぞれ前記入力手段から前
記入力データを格納する入力処理、前記入力処理によっ
てそのセグメントに格納された前記入力データに基づい
て前記周波数分析手段によって周波数成分を計算する計
算処理、及び前記計算処理による計算結果を出力する出
力処理に、順次並行して使用するための入力制御部及び
出力制御部を設けたことを特徴とする高速フーリエ変換
回路。
2. An input means for inputting discrete input data sampled at a constant period, and N (where N is a power of 2) samples of the input data sequentially inputted from the input means. Work storage means having a storage capacity for processing, a coefficient storage means for storing in advance a torsion coefficient for calculating a frequency component of input data input from the input means, the torsion coefficient and the work The arithmetic processing of calculating the intermediate result based on the input data stored in the working storage means and restoring the intermediate result in the working storage means is repeated according to a predetermined procedure to calculate the frequency component of the input data. A fast Fourier transform circuit provided with a frequency analysis unit that performs the above operation, wherein the working storage unit is provided with a storage area for processing the input data for N / 4 samples. An input process for storing the input data from the input unit, and the frequency analysis unit based on the input data stored in the segment by the input process. A fast Fourier transform circuit comprising: an input control unit and an output control unit for sequentially and concurrently using a calculation process for calculating a frequency component by using the calculation process and an output process for outputting a calculation result by the calculation process. .
【請求項3】 前記周波数分析手段における演算処理毎
に、その演算処理で使用されるデータの指数を共通にし
て該周波数分析手段に与えるブロック浮動小数点処理手
段を設けたことを特徴とする請求項1または2記載の高
速フーリエ変換回路。
3. A block floating point processing means for providing a common index to data used in the calculation processing and giving the index to the frequency analysis means for each calculation processing in the frequency analysis means. 3. The fast Fourier transform circuit according to 1 or 2.
JP10205975A 1998-07-22 1998-07-22 Fast Fourier transform circuit Withdrawn JP2000040080A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10205975A JP2000040080A (en) 1998-07-22 1998-07-22 Fast Fourier transform circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10205975A JP2000040080A (en) 1998-07-22 1998-07-22 Fast Fourier transform circuit

Publications (1)

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

Family

ID=16515824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10205975A Withdrawn JP2000040080A (en) 1998-07-22 1998-07-22 Fast Fourier transform circuit

Country Status (1)

Country Link
JP (1) JP2000040080A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836050B1 (en) * 2001-05-23 2008-06-09 엘지전자 주식회사 High speed Fourier transform arithmetic unit
JP2012022500A (en) * 2010-07-14 2012-02-02 Mitsubishi Electric Corp Fft operation device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836050B1 (en) * 2001-05-23 2008-06-09 엘지전자 주식회사 High speed Fourier transform arithmetic unit
JP2012022500A (en) * 2010-07-14 2012-02-02 Mitsubishi Electric Corp Fft operation device

Similar Documents

Publication Publication Date Title
US9792118B2 (en) Vector processing engines (VPEs) employing a tapped-delay line(s) for providing precision filter vector processing operations with reduced sample re-fetching and power consumption, and related vector processor systems and methods
US9684509B2 (en) Vector processing engines (VPEs) employing merging circuitry in data flow paths between execution units and vector data memory to provide in-flight merging of output vector data stored to vector data memory, and related vector processing instructions, systems, and methods
US4138730A (en) High speed FFT processor
EP0329023A2 (en) Apparatus for performing digital signal processing including fast fourier transform radix-4 butterfly computations
Doröz et al. Evaluating the hardware performance of a million-bit multiplier
CN114968173A (en) Polynomial Multiplication Operation Method and Polynomial Multiplier Based on NTT and INTT Structure
JP3740516B2 (en) Method and apparatus for generating a covariance matrix
JP3938238B2 (en) Fast Fourier transform processor
KR100989797B1 (en) FTF / IFFT Core
US20050114421A1 (en) Interleaving memory
JPS6125188B2 (en)
US6463451B2 (en) High speed digital signal processor
JPH08320857A (en) Fourier transform computing device and method
US20100128818A1 (en) Fft processor
EP1436725A2 (en) Address generator for fast fourier transform processor
JP2008506191A (en) Method and apparatus for performing variable size fast orthogonal transform
CN100594490C (en) Memory control method and computing device
JP2000040080A (en) Fast Fourier transform circuit
JPH09259115A (en) Very Large Scale Integrated Circuit for Bit-Serial Matrix Transposition
EP0239634A1 (en) Multizone processor
JPH10307811A (en) Arithmetic unit and arithmetic method
JP3727406B2 (en) Function conversion operator
KR100444729B1 (en) Fast fourier transform apparatus using radix-8 single-path delay commutator and method thereof
JP2822684B2 (en) Discrete cosine transform device and inverse discrete cosine transform device
JP3019767B2 (en) Digital signal processor

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051004