Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5414434B2 - Fast Fourier transform arithmetic unit - Google Patents
[go: Go Back, main page]

JP5414434B2 - Fast Fourier transform arithmetic unit - Google Patents

Fast Fourier transform arithmetic unit Download PDF

Info

Publication number
JP5414434B2
JP5414434B2 JP2009211576A JP2009211576A JP5414434B2 JP 5414434 B2 JP5414434 B2 JP 5414434B2 JP 2009211576 A JP2009211576 A JP 2009211576A JP 2009211576 A JP2009211576 A JP 2009211576A JP 5414434 B2 JP5414434 B2 JP 5414434B2
Authority
JP
Japan
Prior art keywords
fourier transform
fast fourier
shift amount
unit
bit shift
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 - Fee Related
Application number
JP2009211576A
Other languages
Japanese (ja)
Other versions
JP2011060177A (en
Inventor
勝己 高橋
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2009211576A priority Critical patent/JP5414434B2/en
Publication of JP2011060177A publication Critical patent/JP2011060177A/en
Application granted granted Critical
Publication of JP5414434B2 publication Critical patent/JP5414434B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Description

この発明は、バタフライ演算を固定小数点演算で行い、FFT(高速フーリエ変換)演算またはIFFT(逆高速フーリエ変換)演算を繰り返し実行し続ける高速フーリエ変換演算装置に関するものである。   The present invention relates to a fast Fourier transform computing device that performs butterfly computation by fixed-point computation and continuously executes FFT (fast Fourier transform) computation or IFFT (inverse fast Fourier transform) computation.

一般に、固定小数点は、浮動小数点に比べて演算回路が簡単となり、回路規模を小さくできるという利点がある反面、扱うことのできる数のダイナミックレンジが狭いという問題を抱えている。なお、このような演算装置においては、入力されるデータの傾向が似通っている(急変することが少ない)問題を扱うことが多い。   In general, the fixed point has an advantage that the arithmetic circuit is simpler than the floating point and the circuit scale can be reduced, but the dynamic range of the number that can be handled is narrow. Such an arithmetic device often deals with a problem in which the tendency of input data is similar (rarely changes rapidly).

上記のようなダイナミックレンジが狭いという問題を改善するために、従来から、特定のバタフライ演算のみでビットシフトを行うという演算方法および演算装置が提案されている(たとえば、特許文献1参照)。
ただし、上記特許文献1では、バタフライ演算における桁あふれを監視しておらず、ビットシフトを行う位置を固定している。
In order to improve the problem that the dynamic range is narrow as described above, a calculation method and a calculation apparatus that perform bit shift only by a specific butterfly calculation have been conventionally proposed (for example, see Patent Document 1).
However, in the above-mentioned patent document 1, the overflow in the butterfly calculation is not monitored, and the position where the bit shift is performed is fixed.

特開平10−49516号公報JP 10-49516 A

従来の高速フーリエ変換演算装置は、上記特許文献1に記載のように、バタフライ演算で桁あふれが生じても、これを回避することができないという課題があった。   As described in Patent Document 1, the conventional fast Fourier transform arithmetic apparatus has a problem that even if overflow occurs in the butterfly calculation, this cannot be avoided.

この発明は、上記のような課題を解決するためになされたものであり、桁あふれが生じた場合に、ビットシフト量を更新することにより、後続データの演算処理の際に、桁あふれの発生を抑制することのできる高速フーリエ変換演算装置を得ることを目的とする。   The present invention has been made to solve the above-described problems. When overflow occurs, the bit shift amount is updated, thereby generating overflow in the subsequent data calculation process. An object of the present invention is to obtain a fast Fourier transform arithmetic unit capable of suppressing the above.

この発明に係る高速フーリエ変換演算装置は、入力データに対して、固定ビット長の固定小数点演算で高速フーリエ変換を行う複数のバタフライ演算部を有する高速フーリエ変換演算装置であって、前記入力データを取り込む入力線と、前記複数のバタフライ演算部の少なくとも1つの演算データに対してビットシフトを行うビットシフト部と、前記ビットシフト部のうちの最も下流側に設けられたビットシフト部に接続されて演算結果を出力する出力線と、前記ビットシフト部におけるビットシフト量を制御するシフト量制御部と、前記入力線の下流側に挿入されて前記入力データを蓄積する入力バッファと、前記出力線の上流側に挿入されて前記演算結果を蓄積する出力バッファと、を備え、前記複数のバタフライ演算部の少なくとも1つは、自身の桁あふれを検出する機能を有し、前記シフト量制御部は、前記複数のバタフライ演算部のいずれかで桁あふれが検出された場合に、前記ビットシフト量を調整するとともに、前記入力バッファに蓄積された入力データを、前記複数のバタフライ演算部のうちの最も上流側のバタフライ演算部に導入して、演算処理を再実行させるものである。 Fast Fourier transform arithmetic unit according to the present invention, the input data, a fast Fourier transform operation unit having a plurality of butterfly operation unit for performing fast Fourier transform by a fixed point arithmetic fixed bit length, said input data an input line for capturing the plurality of butterfly operation sections of the at least one bit shift unit that performs bit shift with respect to operation data, and is connected to the bit shifter most provided downstream of said bit shift unit an output line for outputting an operation result, and a shift amount control unit for controlling the bit shift amount in the bit shift unit, an input buffer for storing the input data is inserted downstream of the input line, said output line inserted upstream side and an output buffer for storing said operation result, at least one of the plurality of butterfly operation unit Has a function of detecting its own overflow, the shift amount control unit, when overflow in any of the plurality of butterfly operation unit is detected, thereby adjusting the bit shift amount, the The input data stored in the input buffer is introduced into the most upstream butterfly computation unit among the plurality of butterfly computation units, and the computation process is re-executed .

この発明によれば、桁あふれの有無に応じて、ビットシフト量(ビットシフト位置)を制御することにより、桁あふれが発生しても、その後のデータ処理においてビットシフトの制御を補正して、桁あふれの発生を抑制することができる。   According to the present invention, by controlling the bit shift amount (bit shift position) according to the presence or absence of a digit overflow, even if a digit overflow occurs, the bit shift control is corrected in the subsequent data processing, The occurrence of overflow can be suppressed.

この発明の実施の形態1に係る高速フーリエ変換演算装置を示すブロック構成図である。It is a block block diagram which shows the fast Fourier transform arithmetic unit which concerns on Embodiment 1 of this invention. この発明の実施の形態3に係る高速フーリエ変換演算装置を示すブロック構成図である。It is a block block diagram which shows the fast Fourier transform arithmetic unit which concerns on Embodiment 3 of this invention. この発明の実施の形態4に係る高速フーリエ変換演算装置を示すブロック構成図である。It is a block block diagram which shows the fast Fourier transform arithmetic unit which concerns on Embodiment 4 of this invention. この発明の実施の形態6に係る高速フーリエ変換演算装置を示すブロック構成図である。It is a block block diagram which shows the fast Fourier transform arithmetic unit which concerns on Embodiment 6 of this invention. この発明の実施の形態6による演算処理を示す説明図である。It is explanatory drawing which shows the arithmetic processing by Embodiment 6 of this invention.

実施の形態1.
以下、図面を参照しながら、この発明の実施の形態1について説明する。
図1はこの発明の実施の形態1に係る高速フーリエ変換演算装置を示すブロック構成図であり、最大で214(=16384)点のFFT(または、IFFT)演算を実行可能な構成を示している。
Embodiment 1 FIG.
Embodiment 1 of the present invention will be described below with reference to the drawings.
FIG. 1 is a block configuration diagram showing a fast Fourier transform calculation apparatus according to Embodiment 1 of the present invention, showing a configuration capable of executing FFT (or IFFT) calculation of 2 14 (= 16384) points at maximum. Yes.

図1において、高速フーリエ変換演算装置は、高速フーリエ変換の対象となる入力データを取り込む入力線1と、入力データに対して高速フーリエ変換演算を行う高速フーリエ変換部2と、高速フーリエ変換部2のビットシフト量を制御するシフト量制御部3と、高速フーリエ変換の結果(出力データ)を出力する出力線4とを備えている。   In FIG. 1, a fast Fourier transform calculation device includes an input line 1 that takes in input data to be subjected to fast Fourier transform, a fast Fourier transform unit 2 that performs fast Fourier transform operation on the input data, and a fast Fourier transform unit 2. The shift amount control unit 3 for controlling the bit shift amount of the first and second output lines 4 for outputting the result (output data) of the fast Fourier transform.

高速フーリエ変換部2は、バタフライ演算を行う14個(a、b、・・・、m、n)のバタフライ演算部5a〜5nと、ビットシフトを行うビットシフト部6a〜6nとを備えている。
バタフライ演算部5a〜5nとビットシフト部6a〜6nとは、交互にかつ順次に配置されるとともに、それぞれ、シフト量制御部3に接続されている。
The fast Fourier transform unit 2 includes 14 (a, b,..., M, n) butterfly computation units 5a to 5n that perform butterfly computation, and bit shift units 6a to 6n that perform bit shift. .
The butterfly operation units 5a to 5n and the bit shift units 6a to 6n are alternately and sequentially arranged, and are connected to the shift amount control unit 3, respectively.

すなわち、バタフライ演算部5a〜5nのデータ出力端子には、ビットシフト部6a〜6nが個別に接続され、バタフライ演算部5a〜5nは、ビットシフト部6a〜6mを介して順次に直列接続されており、最終段のビットシフト部6nには、出力線4が接続されている。   That is, bit shift units 6a to 6n are individually connected to data output terminals of butterfly operation units 5a to 5n, and butterfly operation units 5a to 5n are sequentially connected in series via bit shift units 6a to 6m. The output line 4 is connected to the bit shift unit 6n at the final stage.

バタフライ演算部5a〜5nは、各々の演算データを、下段側のビットシフト部6a〜6nに個別に入力するとともに、シフト量制御部3に入力する。
ビットシフト部6a〜6nは、シフト量制御部3の制御下で入力データに対するビットシフトを行い、ビットシフト部6a〜6mは、下段側のバタフライ演算部5b〜5nに対して順次にビットシフト後のデータを入力し、最終段のビットシフト部6nは、出力線4を介して出力データを出力する。
The butterfly calculation units 5a to 5n individually input the calculation data to the lower bit shift units 6a to 6n and to the shift amount control unit 3, respectively.
The bit shift units 6a to 6n perform bit shift on the input data under the control of the shift amount control unit 3, and the bit shift units 6a to 6m sequentially bit-shift the lower stage butterfly calculation units 5b to 5n. The last bit shift unit 6n outputs the output data via the output line 4.

以下、図1に示したこの発明の実施の形態1に係る高速フーリエ変換演算装置の各部の機能および動作について説明する。
(1)まず、入力線1からのデータが、高速フーリエ変換部2内の最上段側のバタフライ演算部5aに入力される。
(2)高速フーリエ変換部2は、シフト量制御部3の指示にしたがって、入力データに対してFFT(または、IFFT)演算を順次に実行する。
(3)高速フーリエ変換部2は、最終的なFFT(または、IFFT)の演算結果を、ビットシフト部6nから出力線2を介して出力する。
The function and operation of each part of the fast Fourier transform arithmetic unit according to Embodiment 1 of the present invention shown in FIG. 1 will be described below.
(1) First, data from the input line 1 is input to the uppermost butterfly computation unit 5 a in the fast Fourier transform unit 2.
(2) The fast Fourier transform unit 2 sequentially performs FFT (or IFFT) operation on the input data in accordance with an instruction from the shift amount control unit 3.
(3) The fast Fourier transform unit 2 outputs the final FFT (or IFFT) calculation result from the bit shift unit 6n via the output line 2.

(4)このとき、シフト量制御部3は、高速フーリエ変換部2内の各バタフライ演算部5a〜5nから「桁あふれ状況(または、最大値)」を取り込み、高速フーリエ変換部2内の各ビットシフト部6a〜6nに対する指示内容を更新する。
(5)以下、高速フーリエ変換部2およびシフト量制御部3は、次の入力データ(後続データ)に対して、上記(1)〜(4)の処理を実行する。
(4) At this time, the shift amount control unit 3 takes in the “overflow situation (or maximum value)” from each of the butterfly calculation units 5 a to 5 n in the fast Fourier transform unit 2, and Instruction contents for the bit shift units 6a to 6n are updated.
(5) Hereinafter, the fast Fourier transform unit 2 and the shift amount control unit 3 execute the processes (1) to (4) for the next input data (subsequent data).

次に、高速フーリエ変換部2の内部における動作について、さらに詳細に説明する。
(6)まず、最上段側のバタフライ演算部5aは、常に、入力データに対してバタフライ演算を実行して、演算データを下段側に出力する。
(7)バタフライ演算部5aは、バタフライ演算時の「桁あふれ」の有無情報を、シフト量制御部3に報告する。
(8)以下、下段側のバタフライ演算部5b〜5nは、バタフライ演算部5aと同じように、上記処理動作を順次に実行する。
Next, the operation inside the fast Fourier transform unit 2 will be described in more detail.
(6) First, the butterfly computation unit 5a on the uppermost stage always performs the butterfly computation on the input data and outputs the computation data to the lower stage.
(7) The butterfly calculation unit 5 a reports information on the presence or absence of “digit overflow” during the butterfly calculation to the shift amount control unit 3.
(8) Hereinafter, the butterfly computing units 5b to 5n on the lower stage sequentially execute the above processing operations in the same manner as the butterfly computing unit 5a.

(9)一方、バタフライ演算部5aに接続されたビットシフト部6aは、常に、入力データに対してビットシフトを行い、ビットシフト後のデータを出力する。このとき、ビットシフト部6aによるビットシフト量は、シフト量制御部3からの指示にしたがって決定される。
(10)以下、下段側のビットシフト部6b〜6nは、ビットシフト部6aと同じように、上記処理動作(9)を実行する。このとき、シフト量制御部3は、ビットシフト5a〜5nに対して、個別にビットシフト量を指示する。
(9) On the other hand, the bit shift unit 6a connected to the butterfly operation unit 5a always performs a bit shift on the input data and outputs the data after the bit shift. At this time, the bit shift amount by the bit shift unit 6 a is determined according to an instruction from the shift amount control unit 3.
(10) Hereinafter, the lower bit shift units 6b to 6n execute the processing operation (9) in the same manner as the bit shift unit 6a. At this time, the shift amount control unit 3 instructs the bit shift amounts individually for the bit shifts 5a to 5n.

以上の処理動作(1)〜(10)により、高速フーリエ変換演算装置は、高速フーリエ変換を実行し続けることができる。
なお、バタフライ演算部5a〜5nは、内部メモリ(図示せず)を有し、バタフライ演算の実行時に、データの入れ替え処理も同時に行う。
また、図1に示した高速フーリエ変換演算装置は、出力線4の後段処理(図示せず)で必要となる場合には、桁あふれの有無やビットシフト量の情報を、後段処理に渡すことができるように構成されているものとする。
With the above processing operations (1) to (10), the fast Fourier transform arithmetic unit can continue to perform the fast Fourier transform.
The butterfly computing units 5a to 5n have an internal memory (not shown), and simultaneously perform data exchange processing when performing the butterfly computation.
In addition, the Fast Fourier Transform arithmetic unit shown in FIG. 1 passes the information on the presence / absence of overflow and the bit shift amount to the post-stage process when necessary in the post-process (not shown) of the output line 4. It shall be comprised so that it can do.

ここで、シフト量制御部3の動作例について補足説明する。
シフト量制御部3は、シミュレーション結果や事前観測結果に基づいて、ビットシフト部6a〜6nに対するシフト量の初期値を定める。これにより、各ビットシフト部6a〜6nは、それぞれに指定されたシフト量のビットシフトを行う。
Here, the operation example of the shift amount control unit 3 will be supplementarily described.
The shift amount control unit 3 determines an initial value of the shift amount for the bit shift units 6a to 6n based on a simulation result or a prior observation result. Thereby, each bit shift part 6a-6n performs the bit shift of the shift amount designated to each.

このとき、各ビットシフト部6a〜6nに対するシフト量の初期値は、たとえば、以下のような値に定められる。
奇数番目のビットシフト部6a、6c、6e、6g、6i、6k、6mに対するシフト量は、「1」に設定される。
偶数番目のビットシフト部6b、6d、6f、6h、6j、6l、6nに対するシフト量は、「0」に設定される。
At this time, the initial value of the shift amount for each of the bit shift units 6a to 6n is set to the following value, for example.
The shift amounts for the odd-numbered bit shift units 6a, 6c, 6e, 6g, 6i, 6k, and 6m are set to “1”.
The shift amounts for the even-numbered bit shift units 6b, 6d, 6f, 6h, 6j, 6l, and 6n are set to “0”.

シフト量制御部3は、バタフライ演算部5b〜5nのいずれかから「桁あふれ」が報告された場合に、「桁あふれ」を報告したバタフライ演算部の上段側に接続されたビットシフト部のシフト量を変更する。   The shift amount control unit 3 shifts the bit shift unit connected to the upper stage of the butterfly calculation unit that has reported “digit overflow” when any of the butterfly calculation units 5b to 5n reports “digit overflow”. Change the amount.

このときのシフト量の変更処理は、具体的には、たとえば以下のように実行される。
「桁あふれ」を検出したバタフライ演算部よりも上段側で、かつ、「桁あふれ」を検出したバタフライ演算部に最も近い位置のビットシフト部の値を「1」だけ増加させる。
なお、バタフライ演算部5aから「桁あふれ」が報告された場合には、一過性のものと見なして、特に対処(シフト量の変更処理)を行わないものとする。
Specifically, the shift amount changing process at this time is executed as follows, for example.
The value of the bit shift unit on the upper side of the butterfly operation unit that detects “overflow” and closest to the butterfly operation unit that detects “overflow” is increased by “1”.
When “overflow” is reported from the butterfly calculation unit 5a, it is considered as a temporary one and no particular countermeasure (shift amount changing process) is performed.

以上のように、この発明の実施の形態1(図1)に係る高速フーリエ変換演算装置は、入力データに対して、固定ビット長の固定小数点演算で高速フーリエ変換を行う複数のバタフライ演算部5a〜5nを有する高速フーリエ変換演算装置であって、入力データを取り込む入力線1と、複数のバタフライ演算部5a〜5nの少なくとも1つの演算データに対してビットシフトを行うビットシフト部6a〜6nと、ビットシフト部6a〜6nのうちの最終段のビットシフト部6nに接続されて演算結果を出力する出力線4と、ビットシフト部6a〜6nにおけるビットシフト量を制御するシフト量制御部3とを備えている。   As described above, the fast Fourier transform operation apparatus according to Embodiment 1 (FIG. 1) of the present invention performs a plurality of butterfly operation units 5a that perform fast Fourier transform on input data by fixed-point length fixed-point operations. A fast Fourier transform operation device having ˜5n, an input line 1 for taking in input data, and bit shift units 6a-6n for performing bit shift on at least one operation data of the plurality of butterfly operation units 5a-5n, The output line 4 that is connected to the last bit shift unit 6n of the bit shift units 6a to 6n and outputs the operation result, and the shift amount control unit 3 that controls the bit shift amount in the bit shift units 6a to 6n, It has.

複数のバタフライ演算部5a〜5nの少なくとも1つは、自身の桁あふれを検出する機能を有し、シフト量制御部3は、複数のバタフライ演算部5a〜5nのいずれかで「桁あふれ」が検出された場合に、ビットシフト部6a〜6n(の少なくとも1つ)のビットシフト量を調整(変更)する。
このシフト量変更処理により、同様の傾向を有する後続データに対してFFT(または、IFFT)演算を行う際に、「桁あふれ」の発生を抑制することができる。
At least one of the plurality of butterfly calculation units 5a to 5n has a function of detecting its own overflow, and the shift amount control unit 3 has "digit overflow" in any of the plurality of butterfly calculation units 5a to 5n. When it is detected, the bit shift amount of at least one of the bit shift units 6a to 6n is adjusted (changed).
By this shift amount changing process, it is possible to suppress the occurrence of “overflow” when performing FFT (or IFFT) operation on subsequent data having the same tendency.

なお、上記説明では、バタフライ演算部5aから「桁あふれ」が報告された場合に対処しなかったが、シフト量制御部3から入力線1の前段処理部に向けて制御線(図示せず)を設け、バタフライ演算部5aから「桁あふれ」が報告された場合に、バタフライ演算部5aの前段処理に対して、シフト量制御部3から入力データのレベル値の低解させる要求を出力してもよい。これにより、バタフライ演算部5aにおける「桁あふれ」も抑制することができる。   In the above description, the case where “overflow” is reported from the butterfly operation unit 5a is not dealt with, but a control line (not shown) from the shift amount control unit 3 to the preceding stage processing unit of the input line 1 When a “overflow” is reported from the butterfly operation unit 5a, a request for lowering the level value of the input data is output from the shift amount control unit 3 to the preceding process of the butterfly operation unit 5a. Also good. Thereby, “overflow” in the butterfly calculation unit 5a can also be suppressed.

また、バタフライ演算部5aにおける「桁あふれ」を抑制するために、バタフライ演算部5aの上段側にビットシフト部(図示せず)を増設し、増設したビットシフト部に対して、シフト量制御部3からシフト量「1」を指定してもよい。
これにより、同様の傾向を有する後続データにFFT(または、IFFT)演算を行う際に、バタフライ演算部5aでの「桁あふれ」の発生が一過性とならない場合であっても、「桁あふれ」の発生を抑制することができる。
Further, in order to suppress “digit overflow” in the butterfly operation unit 5a, a bit shift unit (not shown) is added on the upper side of the butterfly operation unit 5a, and a shift amount control unit is added to the added bit shift unit. The shift amount “1” may be specified from 3.
As a result, when performing the FFT (or IFFT) operation on the subsequent data having the same tendency, even if the occurrence of “digit overflow” in the butterfly calculation unit 5a does not become transient, “digit overflow” "Can be suppressed.

実施の形態2.
上記実施の形態1(図1)では、バタフライ演算部5a〜5nとビットシフト部6a〜6nとにより14個の対を構成し、かつ、ビットシフト部6a〜6nの各シフト量を任意に設定したが、偶数番目のビットシフト部6b、6d、6f、6h、6j、6l、6nを削減して、2回のバタフライ演算処理に対して1回のビットシフト処理を行うように構成してもよい。
Embodiment 2. FIG.
In the first embodiment (FIG. 1), the butterfly operation units 5a to 5n and the bit shift units 6a to 6n constitute 14 pairs, and the shift amounts of the bit shift units 6a to 6n are arbitrarily set. However, the even-numbered bit shift units 6b, 6d, 6f, 6h, 6j, 6l, and 6n may be reduced so that one bit shift process is performed for two butterfly computation processes. Good.

また、上記のようにビットシフト部を削減する代わりに、図1の構成を変更せずに、各ビットシフト部6a〜6nで指定可能なシフト量を最大「1」としてもよい。
以下、シフト量を最大「1」とした場合のシフト量制御部3の動作について、補足説明する。
Further, instead of reducing the bit shift units as described above, the maximum shift amount that can be designated by each of the bit shift units 6a to 6n may be set to “1” without changing the configuration of FIG.
Hereinafter, the operation of the shift amount control unit 3 when the shift amount is set to “1” at the maximum will be supplementarily described.

この場合、シフト量制御部3は、バタフライ演算部5b〜5nのいずれかから「桁あふれ」が報告された場合に、以下の条件(a)〜(c)のすべてを満たすビットシフト部のシフト量を「1」に変更する。
(a)「桁あふれ」を検出したバタフライ演算部よりも上段側に位置する。
(b)シフト量が「0」である。
(c)上記(a)、(b)の両方を満たすビットシフト部のうち、最も下段側に位置する。
In this case, the shift amount control unit 3 shifts the bit shift unit that satisfies all of the following conditions (a) to (c) when “overflow” is reported from any of the butterfly calculation units 5b to 5n. Change the amount to "1".
(A) It is located on the upper side of the butterfly calculation unit that detects “overflow”.
(B) The shift amount is “0”.
(C) Among the bit shift units satisfying both (a) and (b), it is located on the lowermost side.

なお、上記シフト量変更処理において、シフト量が更新されるビットシフト部は、14個のビットシフト部6a〜6nのうちの1個のみであるが、シフト量が更新されたビットシフト部よりも下段側のすべてのビットシフト部のシフト量を変更してもよい。
たとえば、前述の条件(a)〜(c)を満たすビットシフト部が、ビットシフト部6dのみであった場合、ビットシフト部6dおよび下段側のビットシフト部6e〜6nのシフト量(「0」または「1」)が反転することになる。
In the shift amount changing process, the shift amount is updated by only one of the 14 bit shift units 6a to 6n, but is more than the bit shift unit having the updated shift amount. The shift amounts of all the bit shift units on the lower side may be changed.
For example, when the bit shift unit that satisfies the above-described conditions (a) to (c) is only the bit shift unit 6d, the shift amount (“0”) of the bit shift unit 6d and the lower-stage bit shift units 6e to 6n. Or “1”) will be inverted.

このシフト量変更処理の場合、ビットシフト部6a〜6nのうちの1個のみのシフト量を「1」に変更する場合よりも、「桁あふれ」に対する抑制作用が弱くなるので、シフト量制御部3は、「桁あふれ」に対して、さらに緩やかな調整を行うことができる。
これにより、「桁あふれ」の発生を抑制しつつ、さらに小さい回路規模で高速フーリエ変換演算装置を実現することができる。
In the case of this shift amount changing process, the effect of suppressing “overflow” is weaker than when only one shift amount of the bit shift units 6a to 6n is changed to “1”. 3 can perform a more gradual adjustment for “overflow”.
As a result, it is possible to realize a fast Fourier transform operation device with a smaller circuit scale while suppressing the occurrence of “overflow”.

なお、以上の説明では、シフト量制御部3において、バタフライ演算部5a〜5nのうちのどこで「桁あふれ」が発生したかが検出可能な場合を例にとって説明したが、「桁あふれ」の発生の有無さえ検出できれば、バタフライ演算部5a〜5nのうちのどこで発生したかが検出不可能な場合であっても、上記と同様の対応を行うことができる。   In the above description, the shift amount control unit 3 has been described as an example where it is possible to detect where “overflow” has occurred in the butterfly calculation units 5a to 5n. As long as it is possible to detect the presence or absence, it is possible to take the same action as described above even if it is impossible to detect where the butterfly computing units 5a to 5n occur.

たとえば、「桁あふれ」の発生位置が区別不可能な場合、「桁あふれ」の発生箇所を、以下の基準(A)または(B)のいずれか一方で設定することにより、前述の対応が可能になる。
(A)最終段のバタフライ演算部5nで発生したと見なす。
(B)シフト量が「0」であるビットシフト部のうち、最も上段側に位置するビットシフト部の直後のバタフライ演算部で発生したものと見なす。
上記基準(A)、(B)のいずれを採用するかは、高速フーリエ変換演算装置の使用目的などに応じて任意に選択され得る。
For example, if the occurrence location of “overflow” is indistinguishable, the above-mentioned measures can be taken by setting the occurrence location of “overflow” in one of the following criteria (A) or (B) become.
(A) It is considered that it occurred in the butterfly calculation unit 5n at the final stage.
(B) Among the bit shift units having a shift amount of “0”, it is considered that the signal is generated in the butterfly operation unit immediately after the bit shift unit located on the uppermost side.
Which of the above criteria (A) and (B) is adopted can be arbitrarily selected according to the purpose of use of the fast Fourier transform arithmetic unit.

以上のように、この発明の実施の形態2によれば、前述の実施の形態1よりも構成が簡略化するので、さらに小さい回路規模で高速フーリエ変換演算装置を実現することができる。   As described above, according to the second embodiment of the present invention, since the configuration is simplified as compared with the first embodiment described above, a fast Fourier transform arithmetic apparatus can be realized with a smaller circuit scale.

実施の形態3.
なお、上記実施の形態1(図1)では、最終段のビットシフト部6nを出力線4に接続したが、図2のように、ビットシフト部6nと出力線4との間に最大値検出部7を挿入してもよい。
Embodiment 3 FIG.
In the first embodiment (FIG. 1), the bit shift unit 6n at the final stage is connected to the output line 4, but the maximum value is detected between the bit shift unit 6n and the output line 4 as shown in FIG. Part 7 may be inserted.

図2はこの発明の実施の形態3に係る高速フーリエ変換演算装置を示すブロック構成図であり、前述(図1参照)と同様のものについては、前述と同一符号を付して、または、符号の後に「A」を付して詳述を省略する。
この場合、図1との相違点は、高速フーリエ変換部2A内に最大値検出部7が追加された点のみである。
FIG. 2 is a block diagram showing a fast Fourier transform arithmetic unit according to Embodiment 3 of the present invention. Components similar to those described above (see FIG. 1) are denoted by the same reference numerals as those described above, or Is followed by “A” and detailed description is omitted.
In this case, the only difference from FIG. 1 is that a maximum value detector 7 is added in the fast Fourier transform unit 2A.

以下、図2に示したこの発明の実施の形態3による動作について説明する。
図2において、最大値検出部7は、ビットシフト部6nからの出力データに基づいて、FFT(または、IFFT)の演算結果の塊ごとに絶対値の最大値を検出し、最大値をシフト量制御部3Aに報告するとともに、出力線4を介して外部に出力する。
The operation according to the third embodiment of the present invention shown in FIG. 2 will be described below.
In FIG. 2, the maximum value detection unit 7 detects the maximum value of the absolute value for each block of the FFT (or IFFT) calculation result based on the output data from the bit shift unit 6n, and shifts the maximum value to the shift amount. Report to the control unit 3A and output to the outside via the output line 4.

シフト量制御部3Aは、最大値検出部7から受け取った最大値が所定値よりも小さい場合には、ビットシフト部6a〜6nに指示するシフト量を削減する。
たとえば、各データのビット幅が「16ビット」であるのに対し、受け取った最大値が213(=8192)未満であった場合には、出力データ値を4倍にしても16ビットの表現範囲内に収まることが明らかなので、ビットシフト部6a〜6nのうちでシフト量が「1」以上で、かつ、最も下段側に位置するビットシフト部のシフト量を「1」だけ減らす。
When the maximum value received from the maximum value detection unit 7 is smaller than a predetermined value, the shift amount control unit 3A reduces the shift amount instructed to the bit shift units 6a to 6n.
For example, when the bit width of each data is “16 bits” but the received maximum value is less than 2 13 (= 8192), even if the output data value is quadrupled, the 16-bit representation Since it is clear that it falls within the range, among the bit shift units 6a to 6n, the shift amount is “1” or more, and the shift amount of the bit shift unit located on the lowest side is reduced by “1”.

これにより、「桁あふれ」を抑制すると同時に、出力データ値の大きさが小さいレベルに固定されることを防ぐことができる。   As a result, “digit overflow” can be suppressed, and at the same time, the size of the output data value can be prevented from being fixed to a small level.

なお、前述の図1(最大値検出部7を有していない)の構成においても、以下のシフト量制御部3の動作(A1)、(A2)を選択することにより、同様に、「桁あふれ」を抑制すると同時に、出力データ値の大きさが小さいレベルに固定されることを防ぐことができる。   In the configuration shown in FIG. 1 (not including the maximum value detection unit 7), by selecting the following operations (A1) and (A2) of the shift amount control unit 3, “digit” At the same time as suppressing “overflow”, it is possible to prevent the output data value from being fixed to a small level.

(A1)「桁あふれ」が発生しない期間が設定値を超えた場合に、シフト量を初期値に戻す。
(A2)シフト量の変更履歴を保持し、「桁あふれ」が発生しない期間が設定値を超えるごとに、変更履歴を逆にたどって、順次に変更を元に戻す。
(A1) When the period during which “digit overflow” does not occur exceeds the set value, the shift amount is returned to the initial value.
(A2) The shift amount change history is retained, and each time the period during which “digit overflow” does not occur exceeds the set value, the change history is reversed to sequentially reverse the changes.

以上のように、この発明の実施の形態3(図2)に係る高速フーリエ変換演算装置によれば、出力線4の上段側に挿入された最大値検出部7を備え、シフト量制御部3Aは、最大値検出部7の検出結果に応じて、ビットシフト量を調整するので、図1の(最大値検出部7を有していない)構成においても、「桁あふれ」を抑制すると同時に、出力データ値の大きさが小さいレベルに固定されることを防ぐことができる。   As described above, according to the fast Fourier transform arithmetic unit according to Embodiment 3 (FIG. 2) of the present invention, the maximum value detector 7 inserted on the upper stage side of the output line 4 is provided, and the shift amount controller 3A. Since the bit shift amount is adjusted according to the detection result of the maximum value detection unit 7, even in the configuration (without the maximum value detection unit 7) of FIG. It is possible to prevent the output data value from being fixed at a small level.

実施の形態4.
なお、上記実施の形態3(図2)では、出力線4の上段側に最大値検出部7のみを挿入したが、図3のように、入力線1の下段側に入力バッファ8を挿入するとともに、出力線4の上段側にさらに出力バッファ9を挿入してもよい。
Embodiment 4 FIG.
In the third embodiment (FIG. 2), only the maximum value detection unit 7 is inserted on the upper side of the output line 4, but the input buffer 8 is inserted on the lower side of the input line 1 as shown in FIG. In addition, an output buffer 9 may be further inserted on the upper side of the output line 4.

図3はこの発明の実施の形態4に係る高速フーリエ変換演算装置を示すブロック構成図であり、前述(図1、図2参照)と同様のものについては、前述と同一符号を付して、または、符号の後に「B」を付して詳述を省略する。
この場合、図2との相違点は、高速フーリエ変換部2B内に入力バッファ8および出力バッファ9が追加された点のみである。
FIG. 3 is a block diagram showing a fast Fourier transform arithmetic unit according to Embodiment 4 of the present invention. The same components as those described above (see FIGS. 1 and 2) are denoted by the same reference numerals as those described above. Alternatively, “B” is appended after the reference numerals and the detailed description is omitted.
In this case, the only difference from FIG. 2 is that an input buffer 8 and an output buffer 9 are added in the fast Fourier transform unit 2B.

入力バッファ8は、後述する「桁あふれ」の発生時において、シフト量制御部3Bの制御下で、蓄積した入力データを再送する。
また、出力バッファ9は、「桁あふれ」の発生時において、シフト量制御部3Bの制御下で、蓄積した出力データを破棄する。
The input buffer 8 retransmits the accumulated input data under the control of the shift amount control unit 3B when “digit overflow” described later occurs.
The output buffer 9 discards the accumulated output data under the control of the shift amount control unit 3B when “digit overflow” occurs.

以下、図3を参照しながら、この発明の実施の形態4による動作について、前述との相違部に着目して説明する。
まず、入力線1から入力されたデータは、一度、入力バッファ8に蓄えられ、入力バッファ8を介して高速フーリエ変換部2Bに取り込まれる。
Hereinafter, the operation according to the fourth embodiment of the present invention will be described with reference to FIG. 3 while focusing on the difference from the above.
First, data input from the input line 1 is once stored in the input buffer 8 and taken into the fast Fourier transform unit 2B via the input buffer 8.

以下、高速フーリエ変換部2Bは、入力データに対して高速フーリエ変換演算を行い、演算結果を、最大値検出部7を介して出力バッファ9に蓄えた後、出力線4から演算結果(出力データ)を出力する。   Thereafter, the fast Fourier transform unit 2B performs a fast Fourier transform operation on the input data, stores the calculation result in the output buffer 9 via the maximum value detection unit 7, and then outputs the calculation result (output data) from the output line 4. ) Is output.

このとき、バタフライ演算部5a〜5nのいずれにおいても「桁あふれ」が発生していなければ、データは、入力バッファ8および出力バッファ9を経由するのみであり、前述と比べて、出力線4から得られる出力データ値に変化はない。   At this time, if no “overflow” has occurred in any of the butterfly operation units 5a to 5n, the data only passes through the input buffer 8 and the output buffer 9, and compared with the above, from the output line 4 There is no change in the output data value obtained.

一方、バタフライ演算部5a〜5nのいずれかで「桁あふれ」が発生した場合には、次の動作(B1)〜(B5)により対処が可能になる。
(B1)「桁あふれ」が発生したバタフライ演算部は、「桁あふれ」をシフト量制御部3Bに報告する。
(B2)すべてのバタフライ演算部5a〜5nは、一度、演算処理を打ち切る。
(B3)出力バッファ9は、既に演算済みのデータを途中まで受け取っていたとしても、これを破棄する。
(B4)シフト量制御部3Bは、ビットシフト部6a〜6nのシフト量を更新する。
(B5)シフト量制御部3Bは、入力バッファ8にデータの再送を指示する。
On the other hand, when a “digit overflow” occurs in any of the butterfly computing units 5a to 5n, the following operations (B1) to (B5) can be used.
(B1) The butterfly operation unit in which “overflow” has occurred reports “overflow” to the shift amount control unit 3B.
(B2) All butterfly computation units 5a to 5n once terminate the computation process.
(B3) Even if the output buffer 9 has already received halfway data, it discards it.
(B4) The shift amount control unit 3B updates the shift amounts of the bit shift units 6a to 6n.
(B5) The shift amount control unit 3B instructs the input buffer 8 to retransmit data.

以上のように、この発明の実施の形態4(図3)に係る高速フーリエ変換演算装置は、入力線1の下段側に挿入されて入力データを蓄積する入力バッファ8と、出力線4の上段側に挿入されて演算結果を蓄積する出力バッファ9とを備えている。   As described above, the fast Fourier transform arithmetic operation apparatus according to Embodiment 4 (FIG. 3) of the present invention includes the input buffer 8 inserted in the lower stage side of the input line 1 and stores the input data, and the upper stage of the output line 4. And an output buffer 9 for storing calculation results.

シフト量制御部3Bは、複数のバタフライ演算部5a〜5nのいずれかで「桁あふれ」が発生した場合に、ビットシフト部のビットシフト量を調整するとともに、入力バッファ8に蓄積された入力データを、複数のバタフライ演算部5a〜5nのうちの最上段のバタフライ演算部5aに導入して、演算処理を再実行させる。
これにより、「桁あふれ」が生じていないFFT(または、IFFT)の演算結果を、出力線4の下段側に送ることができる。
The shift amount control unit 3B adjusts the bit shift amount of the bit shift unit when the “digit overflow” occurs in any of the plurality of butterfly calculation units 5a to 5n, and the input data stored in the input buffer 8 Is introduced into the uppermost butterfly computation unit 5a among the plurality of butterfly computation units 5a to 5n, and the computation process is re-executed.
As a result, the operation result of FFT (or IFFT) in which “digit overflow” does not occur can be sent to the lower stage side of the output line 4.

実施の形態5.
なお、上記実施の形態4(図3)では、各FFT(または、IFFT)演算を独立に扱うものとしたが、複数回分(たとえば、8000個分)を1つの塊として扱い、その塊内においては、同一のシフト量で演算処理を施してもよい。
Embodiment 5 FIG.
In the fourth embodiment (FIG. 3), each FFT (or IFFT) operation is handled independently. However, a plurality of times (for example, 8000) are handled as one lump, May perform arithmetic processing with the same shift amount.

ただし、図3の構成において、1つの塊とする数が大きい場合には、何度もやり直しが発生して、大幅に処理時間が増大する可能性がある。
したがって、処理時間の増大を回避するために、シフト量制御部3Bの制御下で、以下の動作を行うことが望ましい。
However, in the configuration of FIG. 3, if the number of one block is large, redoing may occur many times, and processing time may increase significantly.
Therefore, in order to avoid an increase in processing time, it is desirable to perform the following operation under the control of the shift amount control unit 3B.

図3において、まず、シフト量制御部3Bは、塊の中から数個のFFT(または、IFFT)をサンプルとして取り出し、入力バッファ8を介して高速フーリエ変換部2Bに導入する。
以下、高速フーリエ変換部2Bによる演算処理において「桁あふれ」が発生すれば、前述のようにシフト量を調整し、すべてのサンプルに対して上記を施す。この間、出力バッファ9は、受け取るデータをすべて破棄する。
In FIG. 3, first, the shift amount control unit 3 </ b> B takes several FFTs (or IFFTs) as samples from the chunk and introduces them into the fast Fourier transform unit 2 </ b> B via the input buffer 8.
Hereinafter, if “digit overflow” occurs in the arithmetic processing by the fast Fourier transform unit 2B, the shift amount is adjusted as described above, and the above is applied to all samples. During this time, the output buffer 9 discards all received data.

続いて、入力バッファ8は、1つの塊内のデータのすべてを高速フーリエ変換部2Bに導入し、高速フーリエ変換部2Bは、高速フーリエ変換を行う。このとき、「桁あふれ」が発生しても、シフト量の更新や演算処理のやり直しは行わない。   Subsequently, the input buffer 8 introduces all of the data in one block to the fast Fourier transform unit 2B, and the fast Fourier transform unit 2B performs fast Fourier transform. At this time, even if “digit overflow” occurs, the shift amount is not updated and the arithmetic processing is not performed again.

なお、「桁あふれ」の発生時において、出力バッファ9は、サンプルとして処理した結果を破棄せず、また、入力バッファ8は、高速フーリエ変換部2Bに導入するデータをサンプル以外に限定することにより、サンプルに対する重複処理を回避してもよい。
上記動作により、「桁あふれ」を完全には抑制することができないものの、処理時間の大幅な増加を招かずに処理を行う高速フーリエ変換演算装置を得ることができる。
When “digit overflow” occurs, the output buffer 9 does not discard the result processed as a sample, and the input buffer 8 limits the data to be introduced into the fast Fourier transform unit 2B to other than the sample. Duplicate processing on the sample may be avoided.
With the above operation, although it is impossible to completely suppress “overflow”, it is possible to obtain a fast Fourier transform arithmetic unit that performs processing without causing a significant increase in processing time.

以上のように、この発明の実施の形態5によれば、シフト量制御部3Bは、複数回の高速フーリエ変換演算処理を1つの塊として、1つの塊の間のビットシフト量を共通に設定し、1つの塊として演算処理を行う。
また、シフト量制御部3Bは、1つの塊の中からサンプルを取得して、サンプルに対してビットシフト量を決定する。
As described above, according to the fifth embodiment of the present invention, the shift amount control unit 3B sets a plurality of fast Fourier transform arithmetic processing as one block and sets the bit shift amount between one block in common. Then, arithmetic processing is performed as one lump.
The shift amount control unit 3B acquires a sample from one block and determines a bit shift amount for the sample.

これにより、1つの塊内の処理条件を同一にすることができる。
また、出力線4よりも後段の処理において、同一塊内の異なるFFT(または、IFFT)の演算結果について、相互に比較および参照する処理を行うことができる。
Thereby, the processing conditions in one lump can be made the same.
Further, in the processing subsequent to the output line 4, it is possible to perform processing for comparing and referring to the calculation results of different FFT (or IFFT) in the same block.

実施の形態6.
なお、上記実施の形態1〜5(図1〜図3)では、単一の高速フーリエ変換部に対してビットシフト量を制御したが、図4のように、複数の高速フーリエ変換部2a〜2dに対してビットシフト量を制御してもよい。
Embodiment 6 FIG.
In the first to fifth embodiments (FIGS. 1 to 3), the bit shift amount is controlled for a single fast Fourier transform unit. However, as shown in FIG. 4, a plurality of fast Fourier transform units 2a to 2 is used. The bit shift amount may be controlled with respect to 2d.

図4はこの発明の実施の形態6に係る高速フーリエ変換演算装置を示すブロック構成図であり、前述(図1参照)と同様のものについては、前述と同一符号を付して、または、符号の後に「C」を付して詳述を省略する。   FIG. 4 is a block diagram showing a fast Fourier transform arithmetic unit according to Embodiment 6 of the present invention. Components similar to those described above (see FIG. 1) are denoted by the same reference numerals as those described above, or Is followed by "C" and detailed description is omitted.

図4において、高速フーリエ変換演算装置は、直列配置された複数(たとえば、4個)の高速フーリエ変換部2a〜2dと、高速フーリエ変換部2a、2cの出力データを蓄えるメモリ11a、11bと、高速フーリエ変換部2bと高速フーリエ変換部2cとの間に挿入されて任意の処理を行う中間処理部12とを備えている。   In FIG. 4, the fast Fourier transform arithmetic unit includes a plurality of (for example, four) fast Fourier transform units 2a to 2d arranged in series, and memories 11a and 11b that store output data of the fast Fourier transform units 2a and 2c. An intermediate processing unit 12 that is inserted between the fast Fourier transform unit 2b and the fast Fourier transform unit 2c and performs arbitrary processing is provided.

入力線1は、最上段の高速フーリエ変換部2aに接続され、演算結果を出力する出力線4は、最終段の高速フーリエ変換部2dに接続されている。
シフト量制御部3Cは、高速フーリエ変換部2a〜2dのビットシフト量を制御する。
高速フーリエ変換部2a〜2dは、それぞれ、前述の実施の形態1〜5のいずれかで示したものと同様の構成を有している。
The input line 1 is connected to the uppermost fast Fourier transform unit 2a, and the output line 4 for outputting the operation result is connected to the final fast Fourier transform unit 2d.
The shift amount control unit 3C controls the bit shift amounts of the fast Fourier transform units 2a to 2d.
The fast Fourier transform units 2a to 2d have the same configuration as that shown in any of the first to fifth embodiments.

ここでは、高速フーリエ変換演算処理を複数回実行する一例として、まず、高速フーリエ変換部2a、2bにおいて2次元FFT演算を行い、中間処理部12において中間処理を施した後で、さらに、高速フーリエ変換部2c、2dにおいて2次元IFFT演算を行う場合の構成を示している。   Here, as an example of executing the fast Fourier transform operation processing a plurality of times, first, the fast Fourier transform units 2a and 2b perform the two-dimensional FFT operation, the intermediate processing unit 12 performs the intermediate processing, and then the fast Fourier transform processing is performed. The structure in the case of performing two-dimensional IFFT calculation in the conversion parts 2c and 2d is shown.

図5はこの発明の実施の形態6による演算処理を示す説明図である。
図5において、2次元FFTは、2次元データ100に対して、横軸の1次元FFT演算と縦軸の1次元FFT演算との両方を行うことにより実現する。
FIG. 5 is an explanatory diagram showing the arithmetic processing according to the sixth embodiment of the present invention.
In FIG. 5, the two-dimensional FFT is realized by performing both the one-dimensional FFT operation on the horizontal axis and the one-dimensional FFT operation on the vertical axis on the two-dimensional data 100.

以下、図4および図5を参照しながら、この発明の実施の形態6による動作(C1)〜(C11)について説明する。
(C1)まず、入力線1を介して、高速フーリエ変換部2aに2次元データが入力される。
(C2)高速フーリエ変換部2aは、シフト量制御部3Cの指示にしたがって、図5内の横軸の1次元FFT演算を行う。
(C3)高速フーリエ変換部2aは、FFTの演算結果をメモリ11aに格納する。
Hereinafter, operations (C1) to (C11) according to the sixth embodiment of the present invention will be described with reference to FIGS.
(C1) First, two-dimensional data is input to the fast Fourier transform unit 2a via the input line 1.
(C2) The fast Fourier transform unit 2a performs a one-dimensional FFT operation on the horizontal axis in FIG. 5 in accordance with an instruction from the shift amount control unit 3C.
(C3) The fast Fourier transform unit 2a stores the FFT calculation result in the memory 11a.

(C4)次段の高速フーリエ変換部2bは、メモリ11aから、図5内の縦軸の1次元FFT演算を実行可能な順番でデータを取り出す。
(C5)高速フーリエ変換部2bは、シフト量制御部3Cの指示にしたがって、図5内の縦軸の1次元FFT演算を行う。
(C6)高速フーリエ変換部2bは、FFTの演算結果を中間処理部12に送る。
(C4) The next-stage fast Fourier transform unit 2b extracts data from the memory 11a in the order in which the one-dimensional FFT operation on the vertical axis in FIG. 5 can be executed.
(C5) The fast Fourier transform unit 2b performs a one-dimensional FFT operation on the vertical axis in FIG. 5 in accordance with an instruction from the shift amount control unit 3C.
(C6) The fast Fourier transform unit 2b sends the FFT calculation result to the intermediate processing unit 12.

(C7)中間処理部12は、高速フーリエ変換部2bの演算結果にデータ処理を施し、高速フーリエ変換部2cに入力する。
(C8)高速フーリエ変換部2cは、シフト量制御部3Cの指示にしたがって、図5内の縦軸の1次元IFFT演算を行う。
(C9)高速フーリエ変換部2cは、FFTの演算結果をメモリ11bに格納する。
(C7) The intermediate processing unit 12 performs data processing on the calculation result of the fast Fourier transform unit 2b and inputs the result to the fast Fourier transform unit 2c.
(C8) The fast Fourier transform unit 2c performs a one-dimensional IFFT operation on the vertical axis in FIG. 5 in accordance with an instruction from the shift amount control unit 3C.
(C9) The fast Fourier transform unit 2c stores the FFT calculation result in the memory 11b.

(C10)最終段の高速フーリエ変換部2dは、メモリ11bから、図5内の横軸の1次元IFFTを実行できる順番でデータを取り出す。
(C11)高速フーリエ変換部2dは、シフト量制御部3Cの指示にしたがって、図5内の横軸の1次元IFFT演算を行う。
(C10) The fast Fourier transform unit 2d at the final stage extracts data from the memory 11b in the order in which the one-dimensional IFFT on the horizontal axis in FIG. 5 can be executed.
(C11) The fast Fourier transform unit 2d performs a one-dimensional IFFT operation on the horizontal axis in FIG. 5 in accordance with an instruction from the shift amount control unit 3C.

ここで、シフト量制御部3Cは、個々の高速フーリエ変換部2a〜2dに対し、シミュレーション結果や事前観測結果に基づいて、それぞれに個別のシフト量を設定する。
また、シフト量制御部3Cは、たとえば高速フーリエ変換2b内の最上段のバタフライ演算部で「桁あふれ」が発生した場合に、前述の実施の形態1で述べた複数の高速フーリエ変換部に対するシフト量制御も行う。
Here, the shift amount control unit 3C sets an individual shift amount for each of the fast Fourier transform units 2a to 2d based on a simulation result or a prior observation result.
Further, the shift amount control unit 3C shifts the plurality of fast Fourier transform units described in the first embodiment, for example, when “overflow” occurs in the uppermost butterfly computation unit in the fast Fourier transform 2b. Quantity control is also performed.

すなわち、シフト量制御部3Cは、高速フーリエ変換2b内の最上段のバタフライ演算部で「桁あふれ」が発生した場合には、高速フーリエ変換2a内の最終段のビットシフト部のシフト量を調整することになる。   That is, the shift amount control unit 3C adjusts the shift amount of the bit shift unit at the final stage in the fast Fourier transform 2a when “overflow” occurs in the uppermost butterfly computation unit in the fast Fourier transform 2b. Will do.

以上のように、この発明の実施の形態6(図4)によれば、シフト量制御部3Cは、複数の高速フーリエ変換演算処理のうちの、複数の同じ高速フーリエ変換演算処理に対しても、それぞれに異なるビットシフト量を与え、各ビットシフト量を調整する。   As described above, according to the sixth embodiment (FIG. 4) of the present invention, the shift amount control unit 3C also applies to a plurality of the same fast Fourier transform computation processes among the plurality of fast Fourier transform computation processes. , Each bit shift amount is given, and each bit shift amount is adjusted.

これにより、複数の高速フーリエ変換部2a〜2dを用いて複数の演算処理を行う際に、高速フーリエ変換ごとに適したシフト量に基づき演算を行うことのできる高速フーリエ変換演算装置を得ることができる。   Thus, when performing a plurality of arithmetic processes using the plurality of fast Fourier transform units 2a to 2d, it is possible to obtain a fast Fourier transform arithmetic apparatus capable of performing an operation based on a shift amount suitable for each fast Fourier transform. it can.

1 入力線、2、2A、2B、2a〜2d 高速フーリエ変換部、3、3A、3B、3C シフト量制御部、4 出力線、5a〜5n バタフライ演算部、6a〜6n ビットシフト部、7 最大値検出部、8 入力バッファ、9 出力バッファ、11a、11b メモリ、12 中間処理部。   1 input line, 2, 2A, 2B, 2a to 2d fast Fourier transform unit, 3, 3A, 3B, 3C shift amount control unit, 4 output line, 5a to 5n butterfly operation unit, 6a to 6n bit shift unit, 7 maximum Value detection unit, 8 input buffer, 9 output buffer, 11a, 11b memory, 12 intermediate processing unit.

Claims (5)

入力データに対して、固定ビット長の固定小数点演算で高速フーリエ変換を行う複数のバタフライ演算部を有する高速フーリエ変換演算装置であって、
前記入力データを取り込む入力線と、
前記複数のバタフライ演算部の少なくとも1つの演算データに対してビットシフトを行うビットシフト部と、
前記ビットシフト部のうちの最も下流側に設けられたビットシフト部に接続されて演算結果を出力する出力線と、
前記ビットシフト部におけるビットシフト量を制御するシフト量制御部と、
前記入力線の下流側に挿入されて前記入力データを蓄積する入力バッファと、
前記出力線の上流側に挿入されて前記演算結果を蓄積する出力バッファと、を備え、
前記複数のバタフライ演算部の少なくとも1つは、自身の桁あふれを検出する機能を有し、
前記シフト量制御部は、前記複数のバタフライ演算部のいずれかで桁あふれが検出された場合に、前記ビットシフト量を調整するとともに、前記入力バッファに蓄積された入力データを、前記複数のバタフライ演算部のうちの最も上流側のバタフライ演算部に導入して、演算処理を再実行させることを特徴とする高速フーリエ変換演算装置。
A fast Fourier transform operation device having a plurality of butterfly operation units for performing fast Fourier transform on fixed-point operations with a fixed bit length for input data,
An input line for capturing the input data;
A bit shift unit that performs a bit shift on at least one calculation data of the plurality of butterfly calculation units;
An output line connected to a bit shift unit provided on the most downstream side of the bit shift unit and outputting an operation result;
A shift amount control unit for controlling a bit shift amount in the bit shift unit;
An input buffer that is inserted downstream of the input line and stores the input data;
An output buffer that is inserted upstream of the output line and accumulates the operation result ,
At least one of the plurality of butterfly calculation units has a function of detecting its own overflow,
The shift amount control unit adjusts the bit shift amount and detects the input data accumulated in the input buffer when the overflow is detected in any of the plurality of butterfly calculation units. A fast Fourier transform arithmetic apparatus , which is introduced into the most upstream butterfly arithmetic section of the arithmetic sections and re-executes arithmetic processing .
前記出力バッファ上流側に挿入された最大値検出部を備え、
前記シフト量制御部は、前記最大値検出部の検出結果に応じて、前記ビットシフト量を調整することを特徴とする請求項1に記載の高速フーリエ変換演算装置。
A maximum value detector inserted upstream of the output buffer ;
2. The fast Fourier transform arithmetic apparatus according to claim 1, wherein the shift amount control unit adjusts the bit shift amount according to a detection result of the maximum value detection unit.
前記シフト量制御部は、複数回の高速フーリエ変換演算処理を1つの塊として、前記1つの塊の間のビットシフト量を共通に設定することを特徴とする請求項1または2に記載の高速フーリエ変換演算装置。 3. The high speed according to claim 1, wherein the shift amount control unit sets a bit shift amount between the single chunks in common by using a plurality of fast Fourier transform calculation processes as one chunk. 4. Fourier transform arithmetic unit. 前記シフト量制御部は、前記1つの塊の中からサンプルを取得して、前記サンプルに対して前記ビットシフト量を決定することを特徴とする請求項に記載の高速フーリエ変換演算装置。 4. The fast Fourier transform arithmetic apparatus according to claim 3 , wherein the shift amount control unit acquires a sample from the one block and determines the bit shift amount for the sample. 前記シフト量制御部は、複数回の高速フーリエ変換演算処理のうちの、複数の同じ高速フーリエ変換演算処理に対しても、それぞれに異なるビットシフト量を与え、各ビットシフト量を調整することを特徴とする請求項1から請求項までのいずれか1項に記載の高速フーリエ変換演算装置。 The shift amount control unit, of the plurality of times the fast Fourier transform operation processing, even for a plurality of the same fast Fourier transform processing, given different bit shift amount in each to adjust each bit shift amount The fast Fourier transform arithmetic apparatus according to any one of claims 1 to 4 , wherein the fast Fourier transform arithmetic apparatus is characterized.
JP2009211576A 2009-09-14 2009-09-14 Fast Fourier transform arithmetic unit Expired - Fee Related JP5414434B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009211576A JP5414434B2 (en) 2009-09-14 2009-09-14 Fast Fourier transform arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009211576A JP5414434B2 (en) 2009-09-14 2009-09-14 Fast Fourier transform arithmetic unit

Publications (2)

Publication Number Publication Date
JP2011060177A JP2011060177A (en) 2011-03-24
JP5414434B2 true JP5414434B2 (en) 2014-02-12

Family

ID=43947704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009211576A Expired - Fee Related JP5414434B2 (en) 2009-09-14 2009-09-14 Fast Fourier transform arithmetic unit

Country Status (1)

Country Link
JP (1) JP5414434B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6253365B2 (en) 2013-11-22 2017-12-27 キヤノン株式会社 Image processing method, imaging apparatus, and image processing apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60225279A (en) * 1984-04-23 1985-11-09 Mitsubishi Electric Corp Fourier transform device
JPH09319733A (en) * 1996-05-30 1997-12-12 Jisedai Digital Television Hoso Syst Kenkyusho:Kk FFT calculation method and FFT calculation circuit

Also Published As

Publication number Publication date
JP2011060177A (en) 2011-03-24

Similar Documents

Publication Publication Date Title
CN108733596B (en) Statically schedulable feed and drain structures for systolic array architectures
CN112465110A (en) Hardware accelerator for convolution neural network calculation optimization
JP2012231401A5 (en)
US9934199B2 (en) Digital filter device, digital filtering method, and storage medium having digital filter program stored thereon
JP5414434B2 (en) Fast Fourier transform arithmetic unit
WO2012127571A1 (en) Rolling control apparatus, rolling control method, and rolling control program
US20230393971A1 (en) Read performance from disaggregated storage using distributed storage agents
JP2013173617A5 (en) Sheet post-processing apparatus and image forming apparatus
US11087428B2 (en) Image processing apparatus, data processing apparatus, and image processing method
JP6489021B2 (en) Digital filter device, digital filter processing method, and digital filter program
EP2190206A1 (en) Device for motion search in dynamic image encoding
WO2013097436A1 (en) Fft/dft reverse arrangement system and method and computing system thereof
CN109657373B (en) A multi-agent fault detection method and device
KR101672539B1 (en) Graphics processing unit and caching method thereof
JP5269137B2 (en) Arithmetic unit
US20100074391A1 (en) Shift Register with Dynamic Entry Point Particularly Useful for Aligning Skewed Data
JP6791540B2 (en) Convolution calculation processing device and convolution calculation processing method
US9451206B2 (en) Image processing apparatus, frame rate control process determination apparatus, and method
CN104320400B (en) Web vulnerability scanning method and devices
JP5241594B2 (en) Radar signal processing device
JP2011080949A (en) Radar image processing device
JP2023131901A (en) Fast Fourier transform device, digital filter device, fast Fourier transform method, and program
CN108574642B (en) Congestion management method and device for switching network
CN116451743B (en) Pooling computing implementation system
JP6005578B2 (en) Information processing apparatus and information processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130809

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131112

LAPS Cancellation because of no payment of annual fees