JP5822791B2 - Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program - Google Patents

Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program Download PDF

Info

Publication number
JP5822791B2
JP5822791B2 JP2012137867A JP2012137867A JP5822791B2 JP 5822791 B2 JP5822791 B2 JP 5822791B2 JP 2012137867 A JP2012137867 A JP 2012137867A JP 2012137867 A JP2012137867 A JP 2012137867A JP 5822791 B2 JP5822791 B2 JP 5822791B2
Authority
JP
Japan
Prior art keywords
unit
value
calculation
fourier transform
stage
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
JP2012137867A
Other languages
Japanese (ja)
Other versions
JP2014002588A (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 JP2012137867A priority Critical patent/JP5822791B2/en
Publication of JP2014002588A publication Critical patent/JP2014002588A/en
Application granted granted Critical
Publication of JP5822791B2 publication Critical patent/JP5822791B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、フーリエ変換回路、情報処理装置、フーリエ変換方法およびフーリエ変換プログラムに関するものである。   The present invention relates to a Fourier transform circuit, an information processing apparatus, a Fourier transform method, and a Fourier transform program.

従来のFFT(Fast Fourier Transform)演算回路は、例えば特許文献1に開示されている。
特許文献1が開示する技術は、下位ビットの切り捨てによる演算精度の劣化を抑えるために、バタフライ演算の入力系列の最大値に基づいてバタフライ演算の出力系列をビットシフトし、バタフライ演算のループの最終回において逆のビットシフトを行う、というものである。
A conventional FFT (Fast Fourier Transform) arithmetic circuit is disclosed in Patent Document 1, for example.
In the technique disclosed in Patent Document 1, the output sequence of the butterfly computation is bit-shifted based on the maximum value of the input sequence of the butterfly computation in order to suppress the degradation of computation accuracy due to the truncation of the lower bits, and the final loop of the butterfly computation loop The reverse bit shift is performed at each time.

特開2002−288151号公報JP 2002-288151 A

従来のFFT演算回路を様々なシステムに適用する場合、システムによって必要な最小分解能が異なるため、例えばシステムが必要とする最小分解能がFFT演算回路が演算可能な最小分解能より低い場合も発生することが考えられる。
しかし、従来のFFT演算回路では、システムの最小分解能において演算結果が全ての0になる場合であっても最終ステージまで演算し続けるため余計な電力を消費してしまう、という課題があった。
When the conventional FFT arithmetic circuit is applied to various systems, the minimum resolution required by the system differs. For example, the minimum resolution required by the system may be lower than the minimum resolution that can be calculated by the FFT arithmetic circuit. Conceivable.
However, the conventional FFT operation circuit has a problem in that extra power is consumed because the operation continues until the final stage even when the operation result is all zero at the minimum resolution of the system.

本発明は、上記のような課題を解決するためになされたもので、余計な電力消費を削減するFFT演算回路を実現することを目的とする。   The present invention has been made to solve the above-described problems, and an object of the present invention is to realize an FFT arithmetic circuit that reduces unnecessary power consumption.

本発明のフーリエ変換回路は、
所定の値として最小指標値を記憶する最小指標値記憶部と、
入力値が入力される入力部と、
前記入力部に入力された入力値を用いてフーリエ変換のステージ演算を所定のステージ回数実行し、フーリエ変換のステージ演算を実行する毎に演算値を算出すると共に算出した演算値を演算値記憶部に記憶するステージ演算部と、
前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記ステージ演算部によって算出された演算値に基づいて、前記ステージ演算部がフーリエ変換のステージ演算を前記所定のステージ回数実行した場合に算出する演算値の範囲を予測して予測指標値を算出する予測指標値算出部と、
前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記予測指標値算出部によって算出された予測指標値と前記最小指標値記憶部に記憶された最小指標値との関係により前記ステージ演算の停止を判定する予測指標値判定部と、
前記予測指標値判定部の判定結果が前記ステージ演算の停止を示す場合、前記ステージ演算部と前記演算値記憶部との少なくともいずれかを停止させるステージ演算停止部とを備える。
The Fourier transform circuit of the present invention is
A minimum index value storage unit that stores a minimum index value as a predetermined value;
An input unit for inputting an input value;
The Fourier transform stage calculation is performed a predetermined number of times using the input value input to the input unit, and the calculated value is calculated every time the Fourier transform stage calculation is performed, and the calculated calculated value is stored in the calculated value storage unit. A stage calculation unit to store in
Each time the stage calculation unit executes a Fourier transform stage calculation, the stage calculation unit executes the Fourier transform stage calculation a predetermined number of times based on the calculation value calculated by the stage calculation unit. A prediction index value calculation unit that calculates a prediction index value by predicting a range of calculation values to be calculated;
Each time the stage calculation unit performs a Fourier transform stage calculation, the stage calculation is performed according to the relationship between the prediction index value calculated by the prediction index value calculation unit and the minimum index value stored in the minimum index value storage unit. A prediction index value determination unit for determining stoppage of
And a stage calculation stop unit that stops at least one of the stage calculation unit and the calculation value storage unit when the determination result of the prediction index value determination unit indicates the stop of the stage calculation.

本発明によれば、例えば、FFT演算回路による余計な電力消費を削減することができる。   According to the present invention, for example, unnecessary power consumption by the FFT operation circuit can be reduced.

実施の形態1における情報処理装置200の構成図。1 is a configuration diagram of an information processing device 200 according to Embodiment 1. FIG. 実施の形態1におけるFFT演算回路100の機能構成図。FIG. 3 is a functional configuration diagram of the FFT operation circuit 100 according to the first embodiment. 実施の形態1における停止判定部150の機能構成図。2 is a functional configuration diagram of a stop determination unit 150 according to Embodiment 1. FIG. 実施の形態1におけるFFT演算回路100のFFT演算処理を示すフローチャート。4 is a flowchart showing FFT calculation processing of the FFT calculation circuit 100 according to the first embodiment. 実施の形態1における停止判定処理(S140)を示すフローチャート。5 is a flowchart showing stop determination processing (S140) in the first embodiment. 実施の形態1における増加ビット数テーブル107を示す図。FIG. 5 shows an increased bit number table 107 in the first embodiment. 実施の形態1における情報処理装置200のハードウェア資源の一例を示す図。2 is a diagram illustrating an example of hardware resources of the information processing apparatus 200 according to Embodiment 1. FIG.

実施の形態1.
FFT(Fast Fourier Transform)演算回路による余計な電力消費を削減する形態について説明する。
Embodiment 1 FIG.
A mode of reducing unnecessary power consumption by an FFT (Fast Fourier Transform) arithmetic circuit will be described.

図1は、実施の形態1における情報処理装置200の構成図である。
実施の形態1における情報処理装置200の構成について、図1に基づいて説明する。
FIG. 1 is a configuration diagram of an information processing apparatus 200 according to the first embodiment.
The configuration of the information processing apparatus 200 according to Embodiment 1 will be described with reference to FIG.

情報処理装置200は、高速フーリエ変換演算または高速逆フーリエ変換演算(以下、「フーリエ変換」または「FFT」という)を含んだ情報処理を実行する装置である。情報処理の種類は問わない。   The information processing apparatus 200 is an apparatus that executes information processing including a fast Fourier transform operation or a fast inverse Fourier transform operation (hereinafter referred to as “Fourier transform” or “FFT”). The type of information processing does not matter.

情報処理装置200は、情報処理部210、フーリエ変換部220およびFFT演算回路100(フーリエ変換回路の一例)を備える。
情報処理部210は、何らかの情報処理を実行するための機能構成である。フーリエ変換を実行する必要がある場合、情報処理部210は、フーリエ変換の入力データ(複数の入力値)をフーリエ変換部220に出力し、フーリエ変換部220から出力されるフーリエ変換の出力データ(複数の出力値)を入力する。
フーリエ変換部220は、フーリエ変換を実行するための機能構成である。フーリエ変換部220は、情報処理部210から出力された入力系列に対するフーリエ変換をFFT演算回路100を用いて実行し、FFT演算回路100を用いて得られたフーリエ変換の出力系列を情報処理部210に出力する。
FFT演算回路100は、フーリエ変換を実行する電子回路である。FFT演算回路100の詳細については別途説明する。
The information processing apparatus 200 includes an information processing unit 210, a Fourier transform unit 220, and an FFT operation circuit 100 (an example of a Fourier transform circuit).
The information processing unit 210 has a functional configuration for executing some information processing. When the Fourier transform needs to be executed, the information processing unit 210 outputs the Fourier transform input data (a plurality of input values) to the Fourier transform unit 220 and outputs the Fourier transform output data (from the Fourier transform unit 220). Multiple output values).
The Fourier transform unit 220 has a functional configuration for executing Fourier transform. The Fourier transform unit 220 performs a Fourier transform on the input sequence output from the information processing unit 210 using the FFT operation circuit 100, and uses the Fourier transform output sequence obtained using the FFT operation circuit 100 as the information processing unit 210. Output to.
The FFT operation circuit 100 is an electronic circuit that performs Fourier transform. Details of the FFT operation circuit 100 will be described separately.

情報処理部210によって処理することが可能な数値の範囲は、ハードウェアまたはソフトウェアによって制限されている。
FFT演算回路100の演算結果が情報処理部210によって処理することが可能な最小値(例えば「2−3」)より小さな値(例えば「2−4」)である場合、情報処理部210は、演算結果が「0」であるものとして情報処理を行うものとする。
以下、情報処理部210によって処理することが可能な最小値(最小分解能)(以下、「システム最小値」という)に関する情報を「最小値情報」という。
The range of numerical values that can be processed by the information processing unit 210 is limited by hardware or software.
When the calculation result of the FFT operation circuit 100 is a value (for example, “2 −4 ”) smaller than the minimum value (for example, “2 −3 ”) that can be processed by the information processing unit 210, the information processing unit 210 Information processing is performed assuming that the calculation result is “0”.
Hereinafter, information regarding the minimum value (minimum resolution) (hereinafter referred to as “system minimum value”) that can be processed by the information processing unit 210 is referred to as “minimum value information”.

図2は、実施の形態1におけるFFT演算回路100の機能構成図である。
実施の形態1におけるFFT演算回路100の機能構成について、図2に基づいて説明する。
FIG. 2 is a functional configuration diagram of the FFT operation circuit 100 according to the first embodiment.
A functional configuration of the FFT operation circuit 100 according to the first embodiment will be described with reference to FIG.

FFT演算回路100(フーリエ変換回路の一例)は、ステージ演算部110(ステージ演算部の一例)と、RAM部120(入力部、演算値記憶部の一例)と、最大桁検出部130と、シフト制御部140とを備える。
FFT演算回路100は、さらに、停止判定部150(最小指標値記憶部、予測指標値算出部、予測指標値判定部、ステージ演算停止部、予測増加量記憶部の一例)と、クリップ部160(演算結果出力部の一例)とを備える。
The FFT operation circuit 100 (an example of a Fourier transform circuit) includes a stage operation unit 110 (an example of a stage operation unit), a RAM unit 120 (an example of an input unit and an operation value storage unit), a maximum digit detection unit 130, and a shift. And a control unit 140.
The FFT operation circuit 100 further includes a stop determination unit 150 (an example of a minimum index value storage unit, a prediction index value calculation unit, a prediction index value determination unit, a stage calculation stop unit, and a predicted increase storage unit) and a clip unit 160 ( An example of a calculation result output unit).

RAM部120(RAM:Random Access Memory)は、FFT演算回路100に入力される入力データ101(入力系列ともいう)を記憶する。入力データ101は複数の入力値を含む。
また、RAM部120は、ステージ演算部110から出力される演算結果データ102を記憶する。演算結果データ102は複数の演算値を含む。
A RAM unit 120 (RAM: Random Access Memory) stores input data 101 (also referred to as an input series) input to the FFT operation circuit 100. The input data 101 includes a plurality of input values.
The RAM unit 120 also stores calculation result data 102 output from the stage calculation unit 110. The calculation result data 102 includes a plurality of calculation values.

ステージ演算部110は、RAM部120から入力データ101または前回の演算結果データ102を読み込む。
ステージ演算部110は、読み込んだデータに対してフーリエ変換のステージ演算を実行し、ステージ演算の演算結果データ102を出力する。このとき、ステージ演算部110は、後述する前回のシフト制御情報104に応じて各演算値のビットシフトを行う。
The stage calculation unit 110 reads the input data 101 or the previous calculation result data 102 from the RAM unit 120.
The stage calculation unit 110 performs a stage calculation of Fourier transform on the read data, and outputs calculation result data 102 of the stage calculation. At this time, the stage calculation unit 110 performs a bit shift of each calculation value according to the previous shift control information 104 described later.

最大桁検出部130は、ステージ演算部110から出力される演算結果データ102を入力し、入力した演算結果データ102に含まれる複数の演算値それぞれの絶対値の桁数を算出し、算出した桁数のうち最大の桁数を演算結果データ102の最大桁103として出力する。なお、最大桁の算出は、演算値の絶対値の最大値を算出してから、その桁数を最大桁としてもよい。   The maximum digit detection unit 130 receives the calculation result data 102 output from the stage calculation unit 110, calculates the number of digits of the absolute value of each of the plurality of calculation values included in the input calculation result data 102, and calculates the calculated digit The maximum number of digits is output as the maximum digit 103 of the operation result data 102. The maximum digit may be calculated after calculating the maximum value of the absolute value of the calculated value and then using the maximum number of digits.

シフト制御部140は、最大桁検出部130から出力される最大桁103を入力し、入力した最大桁103に基づいて次のステージのシフト制御情報104を生成し、生成したシフト制御情報104を出力する。
シフト制御情報104は、演算値のビット列をシフトするシフト数(以下、「シフトビット数」という)に関する情報を示す。
The shift control unit 140 receives the maximum digit 103 output from the maximum digit detection unit 130, generates shift control information 104 for the next stage based on the input maximum digit 103, and outputs the generated shift control information 104 To do.
The shift control information 104 indicates information regarding the number of shifts (hereinafter referred to as “shift bit number”) for shifting the bit string of the operation value.

停止判定部150は、最大桁検出部130から出力される最大桁103、シフト制御部140から出力されるシフト制御情報104およびFFT演算回路100に入力される最小値情報109に基づいて、ステージ演算部110のステージ演算を停止するか否かを判定する。
ステージ演算部110のステージ演算を停止する場合、停止判定部150は、停止信号105を出力する。
The stop determination unit 150 performs stage calculation based on the maximum digit 103 output from the maximum digit detection unit 130, the shift control information 104 output from the shift control unit 140, and the minimum value information 109 input to the FFT operation circuit 100. It is determined whether to stop the stage calculation of the unit 110.
When stopping the stage calculation of the stage calculation unit 110, the stop determination unit 150 outputs a stop signal 105.

クリップ部160は、所定のステージ数だけステージ演算を実行したステージ演算部110から出力される演算結果データ102を入力する。クリップ部160は、入力した演算結果データ102を後述するステージ指数(図示省略)に基づいたシフトを行ってから出力データ106として出力する。
但し、停止判定部150から停止信号105が出力された場合、クリップ部160は、所定の出力値「0(ゼロ)」を出力データ106として出力する。この場合、クリップ部160は、情報処理装置200が出力データ106を受け取ることができるように、出力データ106の出力タイミングを必要に応じて調整する。
The clip unit 160 receives the calculation result data 102 output from the stage calculation unit 110 that has executed the stage calculation for a predetermined number of stages. The clip unit 160 shifts the input calculation result data 102 based on a stage index (not shown), which will be described later, and then outputs it as output data 106.
However, when the stop signal 105 is output from the stop determination unit 150, the clip unit 160 outputs a predetermined output value “0 (zero)” as the output data 106. In this case, the clip unit 160 adjusts the output timing of the output data 106 as necessary so that the information processing apparatus 200 can receive the output data 106.

図3は、実施の形態1における停止判定部150の機能構成図である。
実施の形態1における停止判定部150の機能構成について、図3に基づいて説明する。
FIG. 3 is a functional configuration diagram of the stop determination unit 150 according to the first embodiment.
The functional configuration of the stop determination unit 150 according to Embodiment 1 will be described with reference to FIG.

停止判定部150は、残ステージカウンタ部151、増加ビット算出部152(予測増加量記憶部の一例)、ステージ指数管理部153、最終値予測部154(予測指標値算出部の一例)および比較判定部155(最小指標値記憶部、予測指標値判定部、ステージ演算停止部の一例)を備える。   The stop determination unit 150 includes a remaining stage counter unit 151, an increase bit calculation unit 152 (an example of a predicted increase amount storage unit), a stage index management unit 153, a final value prediction unit 154 (an example of a prediction index value calculation unit), and a comparison determination. Unit 155 (an example of a minimum index value storage unit, a predicted index value determination unit, and a stage calculation stop unit).

残ステージカウンタ部151は、ステージ演算部110によるステージ演算の実行回数を所定のステージ数から差し引いた値、を残りステージ数として算出する。   The remaining stage counter unit 151 calculates a value obtained by subtracting the number of executions of the stage calculation by the stage calculation unit 110 from the predetermined number of stages as the number of remaining stages.

増加ビット算出部152は、残ステージカウンタ部151によって算出された残りステージ数に基づいて、ステージ演算部110が所定のステージ数のステージ演算を実行した場合の演算量の増加し得るビット数を算出する。
以下、増加ビット算出部152によって算出されるビット数を「増加ビット数」という。
Based on the number of remaining stages calculated by the remaining stage counter unit 151, the increase bit calculation unit 152 calculates the number of bits that can increase the amount of calculation when the stage calculation unit 110 executes a stage calculation of a predetermined number of stages. To do.
Hereinafter, the number of bits calculated by the increase bit calculation unit 152 is referred to as “increase bit number”.

ステージ指数管理部153は、シフト制御情報104を入力し、入力したシフト制御情報104が示すシフトビット数に基づいて演算値の指数値を算出する。
以下、ステージ指数管理部153によって算出される指数値を「ステージ指数」という。
The stage index management unit 153 receives the shift control information 104, and calculates the exponent value of the calculated value based on the number of shift bits indicated by the input shift control information 104.
Hereinafter, the index value calculated by the stage index management unit 153 is referred to as a “stage index”.

最終値予測部154は、最大桁103を入力し、入力した最大桁103と増加ビット算出部152によって算出された増加ビット数とステージ指数管理部153によって算出されたステージ指数とに基づいて最終ステージ最大値を算出する。
最終ステージ最大値は、ステージ演算部110が所定のステージ数のステージ演算を実行した場合に算出される演算値の最大値に関する値である。
The final value predicting unit 154 receives the maximum digit 103, the final stage based on the input maximum digit 103, the increased bit number calculated by the increased bit calculating unit 152, and the stage index calculated by the stage index managing unit 153. Calculate the maximum value.
The final stage maximum value is a value related to the maximum value of calculation values calculated when the stage calculation unit 110 executes stage calculation for a predetermined number of stages.

比較判定部155は、最小値情報109を入力し、入力した最小値情報109が表すシステム最小値と最終値予測部154によって算出された最終ステージ最大値とを比較し、比較結果に基づいてステージ演算を停止するか否かを判定する。
ステージ演算を停止する場合、比較判定部155は、停止信号105を出力する。
The comparison determination unit 155 receives the minimum value information 109, compares the system minimum value represented by the input minimum value information 109 with the final stage maximum value calculated by the final value prediction unit 154, and determines the stage based on the comparison result. It is determined whether to stop the calculation.
When stopping the stage calculation, the comparison determination unit 155 outputs a stop signal 105.

図4は、実施の形態1におけるFFT演算回路100のFFT演算処理を示すフローチャートである。
実施の形態1におけるFFT演算回路100のFFT演算処理(フーリエ変換方法の一例)について、図4に基づいて説明する。
FIG. 4 is a flowchart showing the FFT operation processing of the FFT operation circuit 100 according to the first embodiment.
An FFT operation process (an example of a Fourier transform method) of the FFT operation circuit 100 according to the first embodiment will be described with reference to FIG.

S101において、RAM部120は、FFT演算回路100に入力された入力データ101を記憶する。入力データ101は複数の入力値を含む。
S101の後、S102に進む。
In S <b> 101, the RAM unit 120 stores the input data 101 input to the FFT operation circuit 100. The input data 101 includes a plurality of input values.
After S101, the process proceeds to S102.

S102において、ステージ演算部110は、RAM部120から入力データ101を読み込む。
ステージ演算部110は、読み込んだ入力データ101に含まれる複数の入力値を用いてフーリエ変換のステージ演算を実行して複数の演算値を算出し、算出した複数の演算値を含んだ演算結果データ102を出力する。
RAM部120は、ステージ演算部110から出力された演算結果データ102を記憶する。
In S <b> 102, the stage calculation unit 110 reads the input data 101 from the RAM unit 120.
The stage calculation unit 110 performs a Fourier transform stage calculation using a plurality of input values included in the read input data 101 to calculate a plurality of calculation values, and calculation result data including the calculated plurality of calculation values 102 is output.
The RAM unit 120 stores the calculation result data 102 output from the stage calculation unit 110.

例えば、ステージ演算部110は、「2」を基数とするバタフライ演算(以下、「基数「2」のバタフライ演算」という)を行う。
S102の後、S110に進む。
For example, the stage calculation unit 110 performs a butterfly calculation using “2” as a radix (hereinafter referred to as “butterfly calculation with a radix“ 2 ””).
It progresses to S110 after S102.

S110において、最大桁検出部130は、ステージ演算部110から出力された演算結果データ102を入力する。
最大桁検出部130は、演算結果データ102に含まれる複数の演算値それぞれの絶対値の桁数を算出し、算出した桁数のうち最大の桁数を演算結果データ102の最大桁103として出力する。なお、最大桁の算出は、演算値の絶対値の最大値を算出してから、その桁数を最大桁としてもよい。
例えば、絶対値が最も大きい演算値が「7」である場合、演算値「7」は2進数表現では3ビットの値「111」であるため、2進数表現における最大桁103は「3」である。
S110の後、S120に進む。
In S110, the maximum digit detection unit 130 receives the calculation result data 102 output from the stage calculation unit 110.
The maximum digit detection unit 130 calculates the number of digits of each of the plurality of calculation values included in the calculation result data 102 and outputs the maximum number of digits among the calculated number of digits as the maximum digit 103 of the calculation result data 102. To do. The maximum digit may be calculated after calculating the maximum value of the absolute value of the calculated value and then using the maximum number of digits.
For example, when the calculated value having the largest absolute value is “7”, the calculated value “7” is the 3-bit value “111” in the binary number representation, and therefore the maximum digit 103 in the binary number representation is “3”. is there.
It progresses to S120 after S110.

S120において、シフト制御部140は、最大桁検出部130から出力された最大桁103を入力し、入力した最大桁103に基づいてシフトビット数を算出する。例えば、シフト制御部140は、次回のステージ演算で桁あふれが発生しないようなシフトビット数を算出する。最大桁103に基づいてシフトビット数を算出する方法は、例えば、特許文献1に開示されている。
シフト制御部140は、算出したシフトビット数を示すシフト制御情報104を生成し、生成したシフト制御情報104を出力する。
S120の後、S130に進む。
In S <b> 120, the shift control unit 140 receives the maximum digit 103 output from the maximum digit detection unit 130 and calculates the number of shift bits based on the input maximum digit 103. For example, the shift control unit 140 calculates the number of shift bits so that overflow does not occur in the next stage calculation. A method for calculating the number of shift bits based on the maximum digit 103 is disclosed in Patent Document 1, for example.
The shift control unit 140 generates shift control information 104 indicating the calculated number of shift bits, and outputs the generated shift control information 104.
It progresses to S130 after S120.

S130において、停止判定部150は、最大桁検出部130から出力された最大桁103を入力する。
停止判定部150は、最大桁103と最小値情報109とに基づいてステージ演算を停止するか否かを判定する。
最小値情報109はFFT演算回路100に入力され、停止判定部150はFFT演算回路100に入力された最小値情報109を予め記憶しておくものとする。
ステージ演算を停止する場合、停止判定部150は停止信号105を出力する。
停止判定処理(S130)の詳細については、別途説明する。
S130の後、S140に進む。
In S <b> 130, the stop determination unit 150 inputs the maximum digit 103 output from the maximum digit detection unit 130.
The stop determination unit 150 determines whether to stop the stage calculation based on the maximum digit 103 and the minimum value information 109.
The minimum value information 109 is input to the FFT operation circuit 100, and the stop determination unit 150 stores the minimum value information 109 input to the FFT operation circuit 100 in advance.
When stopping the stage calculation, the stop determination unit 150 outputs a stop signal 105.
Details of the stop determination process (S130) will be described separately.
It progresses to S140 after S130.

S140において、クリップ部160は、停止判定部150から停止信号105が出力されたか否かを判定する。
停止信号105が出力された場合(YES)、S170に進む。
停止信号105が出力されなかった場合(NO)、S150に進む。
In S140, the clip unit 160 determines whether or not the stop signal 105 is output from the stop determination unit 150.
When the stop signal 105 is output (YES), the process proceeds to S170.
When the stop signal 105 is not output (NO), the process proceeds to S150.

S150において、クリップ部160は、ステージ演算部110が所定のステージ数のステージ演算を実行したか否かを判定する。
例えば、クリップ部160は、ステージ演算部110が演算結果データ102を出力した回数をカウントし、カウントした回数を所定のステージ数と比較する。カウントした回数が所定のステージ演算と同じ値である場合、ステージ演算部110は所定のステージ数のステージ演算を実行したことになる。
所定のステージ数は、実行するFFT点数に応じて定められる。所定のステージ数は予め記憶してもよいし、実行するFFT点数に応じて算出してもよい。
ステージ演算部110が所定のステージ数のステージ演算を実行したか否かの判定は、クリップ部160の代わりに停止判定部150が行ってもよい。
ステージ演算部110が所定のステージ数のステージ演算を実行した場合(YES)、S180に進む。
ステージ演算部110が所定のステージ数のステージ演算を実行していない場合(NO)、S160に進む。
In S150, the clip unit 160 determines whether or not the stage calculation unit 110 has performed stage calculation for a predetermined number of stages.
For example, the clip unit 160 counts the number of times the stage calculation unit 110 outputs the calculation result data 102, and compares the counted number with a predetermined number of stages. If the counted number is the same value as the predetermined stage calculation, the stage calculation unit 110 has executed a predetermined number of stage calculations.
The predetermined number of stages is determined according to the number of FFT points to be executed. The predetermined number of stages may be stored in advance or may be calculated according to the number of FFT points to be executed.
The determination of whether or not the stage calculation unit 110 has performed a predetermined number of stages may be performed by the stop determination unit 150 instead of the clip unit 160.
If the stage calculation unit 110 has performed a stage calculation for a predetermined number of stages (YES), the process proceeds to S180.
When the stage calculation unit 110 has not performed the stage calculation for the predetermined number of stages (NO), the process proceeds to S160.

S160において、ステージ演算部110は、RAM部120から演算結果データ102を読み込む。
ステージ演算部110は、読み込んだ演算結果データ102に含まれる複数の演算値を用いてフーリエ変換のステージ演算(S102参照)を実行して新たな複数の演算値を算出し、算出した新たな複数の演算値を含んだ演算結果データ102を出力する。
RAM部120は、ステージ演算部110から出力された演算結果データ102を記憶する。
S160の後、S110に戻る。
In S160, the stage calculation unit 110 reads the calculation result data 102 from the RAM unit 120.
The stage calculation unit 110 performs a Fourier transform stage calculation (see S102) using a plurality of calculation values included in the read calculation result data 102, calculates a plurality of new calculation values, and calculates the new plurality of calculated values. The calculation result data 102 including the calculated value is output.
The RAM unit 120 stores the calculation result data 102 output from the stage calculation unit 110.
After S160, the process returns to S110.

S170において、ステージ演算部110およびRAM部120は動作を停止する。つまり、ステージ演算部110は、所定のステージ数のステージ演算を実行していない場合であってもステージ演算の実行を終了し、以降の残りのステージ演算を実行しない。但し、ステージ演算部110とRAM部120とのいずれか一方だけが停止してもよい。また、RAM部が複数のRAMを備えている場合、一部のRAMだけが動作を停止してもよい。
クリップ部160は、全ての出力値が「0(ゼロ)」である出力データ106を出力する。
S170により、FFT演算処理は終了する。
In S170, the stage calculation unit 110 and the RAM unit 120 stop operating. That is, the stage calculation unit 110 ends the execution of the stage calculation and does not execute the remaining stage calculations thereafter even if the stage calculation for the predetermined number of stages is not executed. However, only one of the stage calculation unit 110 and the RAM unit 120 may be stopped. Further, when the RAM unit includes a plurality of RAMs, only some of the RAMs may stop operating.
The clip unit 160 outputs the output data 106 in which all output values are “0 (zero)”.
By S170, the FFT operation processing is terminated.

S180において、クリップ部160は、ステージ演算部110から最後に出力された演算結果データ102(所定のステージ数のステージ演算が実行されたときの演算結果データ102)に対して停止判定部150によって最後に算出されたステージ指数に基づいたシフトを行い、シフトした演算結果データ102を出力データ106として出力する。
S180により、FFT演算処理は終了する。
In S <b> 180, the clip unit 160 causes the stop determination unit 150 to end the calculation result data 102 (the calculation result data 102 when the stage calculation of a predetermined number of stages is executed) last output from the stage calculation unit 110. A shift based on the calculated stage index is performed, and the shifted calculation result data 102 is output as output data 106.
By S180, the FFT calculation process is terminated.

図5は、実施の形態1における停止判定処理(S130)を示すフローチャートである。
実施の形態1における停止判定処理(S130)について、図5に基づいて説明する。
FIG. 5 is a flowchart showing the stop determination process (S130) in the first embodiment.
The stop determination process (S130) in the first embodiment will be described with reference to FIG.

S131において、残ステージカウンタ部151は、ステージ演算部110によるステージ演算の実行回数を所定のステージ数から差し引いた値、を残りステージ数として算出する。
残ステージカウンタ部151は、クリップ部160と同様に、所定のステージ数を算出してもよいし、予め記憶してもよい(図4のS150参照)。
残りステージ数は、所定のステージ数からステージ演算毎に1減ずることで算出してもよい。
S131の後、S132に進む。
In S131, the remaining stage counter unit 151 calculates, as the remaining stage number, a value obtained by subtracting the number of stage calculations performed by the stage calculating unit 110 from a predetermined number of stages.
Similar to the clip unit 160, the remaining stage counter unit 151 may calculate a predetermined number of stages or store it in advance (see S150 in FIG. 4).
The remaining number of stages may be calculated by subtracting 1 from the predetermined number of stages for each stage calculation.
After S131, the process proceeds to S132.

S132において、増加ビット算出部152は、S131で算出された残りステージ数に対応する増加ビット数を増加ビット数テーブル107から取得する。   In S <b> 132, the increased bit calculation unit 152 acquires the increased bit number corresponding to the remaining stage number calculated in S <b> 131 from the increased bit number table 107.

図6は、実施の形態1における増加ビット数テーブル107を示す図である。
増加ビット数テーブル107は、残りステージ数と増加ビット数とを対応付けたデータである。
FIG. 6 is a diagram showing the increased bit number table 107 in the first embodiment.
The increased bit number table 107 is data in which the number of remaining stages is associated with the increased number of bits.

増加ビット数は、残りステージ数に基づいて算出される値である。
例として基数「2」のバタフライ演算を行う場合の増加ビット数の算出例を示す。
The increased number of bits is a value calculated based on the number of remaining stages.
As an example, an example of calculating the increased number of bits when performing a radix “2” butterfly operation is shown.

まず、基数「2」のバタフライ演算の演算式(1)を示す。式(1)で使用している符号の意味は以下の通りである。
「X’」「Y’」は、バタフライ演算の出力値(演算値)である。
「X」「Y」は、バタフライ演算の入力値(または演算値)である。
「N」は、FFTの点数である。
「k」は、0から((N/2)−1)の整数である。例えば、「N=16」の場合、「k=0,1,・・・,7」である。
First, the calculation formula (1) for the radix “2” butterfly calculation is shown. The meanings of the symbols used in equation (1) are as follows.
“X ′” and “Y ′” are output values (calculation values) of the butterfly calculation.
“X” and “Y” are input values (or calculation values) of the butterfly calculation.
“N” is the FFT score.
“K” is an integer from 0 to ((N / 2) −1). For example, when “N = 16”, “k = 0, 1,..., 7”.

Figure 0005822791
Figure 0005822791

上記の式(1)の出力値「X’」「Y’」は実数成分「X’」「Y’」と虚数成分「X’」「Y’」とを用いて以下の式(2)で表すことができる。
式(2)において「j」は虚数単位である。また、「X」「Y」は入力値の実数成分であり、「X」「Y」は入力値の虚数成分である。
The output values “X ′” and “Y ′” in the above equation (1) are expressed by the following equations using real component “X ′ R ” “Y ′ R ” and imaginary component “X ′ I ” “Y ′ I ”. (2).
In Expression (2), “j” is an imaginary unit. “X R ” and “Y R ” are real number components of the input value, and “X I ” and “Y I ” are imaginary number components of the input value.

Figure 0005822791
Figure 0005822791

1回のステージ演算で算出される出力値「X’」「Y’」(上記式(2)参照)の範囲は、上記式(2a)より、ステージ演算の入力値の範囲の(1+√2)倍と計算できる。「√2」は2の平方根を意味する。
増加ビット数は、(1+√2)を残りステージ数nだけ累乗して(1+√2)を算出し、「2」を底にした(1+√2)の対数値「log((1+√2))」を算出し、算出した対数値の小数点以下を切り上げて算出される。
The range of output values “X ′” and “Y ′” (see the above formula (2)) calculated by one stage calculation is (1 + √2) of the input value range of the stage calculation from the above formula (2a). ) Can be calculated as double. “√2” means the square root of 2.
The number of increased bits is (1 + √2) raised to the power of the remaining number of stages n to calculate (1 + √2) n , and the logarithmic value “log 2 (( 1 + √2) n ) ”is calculated, and the calculated logarithmic value is calculated by rounding up after the decimal point.

例えば、残りステージ数が「3」である場合、増加ビット数は「4」である(以下の式(3)参照)。
ceiling(X)はXの切り上げを意味する。
For example, when the number of remaining stages is “3”, the increased number of bits is “4” (see Expression (3) below).
Ceiling (X) means rounding up X.

Figure 0005822791
Figure 0005822791

増加ビット算出部152は、図6に示すような増加ビット数テーブル107を記憶する代わりに、増加ビット数を演算で算出してもよい。   The increase bit calculation unit 152 may calculate the increase bit number by calculation instead of storing the increase bit number table 107 as shown in FIG.

図5に戻り、停止判定処理(S130)の説明を続ける。
S132の後、S133に進む。
Returning to FIG. 5, the description of the stop determination process (S130) will be continued.
It progresses to S133 after S132.

S133において、最終値予測部154は、最大桁103を入力し、最大桁103と増加ビット数とステージ指数とを用いて最終ステージ最大値を算出する。
最終ステージ最大値Mは、例えば「M=B+r+C」で算出する。ここで、「B」は増加ビット数であり、「r」は最大桁103であり、「C」はステージ指数である。
例えば、増加ビット数Bが「4」、最大桁rが「2」、ステージ指数Cが「−10」である場合、最終ステージ最大値Mは「4(=4+2+(−10))」となる。
S133の後、S134に進む。
In S133, the final value predicting unit 154 inputs the maximum digit 103, and calculates the final stage maximum value using the maximum digit 103, the increased number of bits, and the stage index.
The final stage maximum value M is calculated by, for example, “M = B + r + C”. Here, “B” is the increased number of bits, “r” is the maximum digit 103, and “C” is the stage index.
For example, when the increment bit number B is “4”, the maximum digit r is “2”, and the stage index C is “−10”, the final stage maximum value M is “4 (= 4 + 2 + (− 10))”. .
It progresses to S134 after S133.

S134において、比較判定部155は、最小値情報109を入力し、入力した最小値情報109が示す値mとS144で算出された最終ステージ最大値Mとを比較する。
最小値情報109は例えばシステム最小値Tに対して「T=2」を満たす値m、つまり、「2」を底とするシステム最小値Tの指数値mとする。
最終ステージ最大値Mが最小値情報109の値m以上である場合(YES)、S136に進む。
最終ステージ最大値Mが最小値情報109の値mより小さい場合(NO)、S135に進む。
In S134, the comparison determination unit 155 inputs the minimum value information 109, and compares the value m indicated by the input minimum value information 109 with the final stage maximum value M calculated in S144.
The minimum value information 109 is, for example, a value m that satisfies “T = 2 m ” with respect to the system minimum value T, that is, an index value m of the system minimum value T with “2” as the base.
When the final stage maximum value M is greater than or equal to the value m of the minimum value information 109 (YES), the process proceeds to S136.
When the final stage maximum value M is smaller than the value m of the minimum value information 109 (NO), the process proceeds to S135.

S135において、比較判定部155は停止信号105を出力する。
S135の後、S136に進む。
In S135, the comparison determination unit 155 outputs the stop signal 105.
After S135, the process proceeds to S136.

S136において、ステージ指数管理部153は、シフト制御情報104を入力し、入力したシフト制御情報104が示すシフトビット数に基づいて演算値の指数値(ステージ指数)を算出する。
ステージ指数Cは、V’を演算値の真の値、VをRAM部に格納する値とし、例えば「V’=V*2」で表される数とする。
S136により、停止判定処理(S130)は終了する。
In S136, the stage index management unit 153 inputs the shift control information 104, and calculates an exponent value (stage index) of the calculated value based on the number of shift bits indicated by the input shift control information 104.
For the stage index C, V ′ is a true value of the operation value, V is a value stored in the RAM unit, and is a number represented by “V ′ = V * 2 C ”, for example.
With S136, the stop determination process (S130) ends.

図4および図5においてFFT演算処理を便宜上、フローチャートの形式で説明したが、各要素の処理タイミングは図4および図5に示したような逐次処理に限定されるものではなく,適宜並列処理を行ってもよい。   In FIG. 4 and FIG. 5, the FFT operation processing has been described in the form of a flowchart for the sake of convenience. However, the processing timing of each element is not limited to the sequential processing as shown in FIG. 4 and FIG. You may go.

FFT演算回路100は、図4および図5に基づいて説明したFFT演算処理により、途中のステージ演算で以降のステージ演算が不要であること(最終ステージ最大値M<最小値情報109の値m)を検出し、ステージ演算を停止することができる。
これにより、不要なステージ演算が省略され、消費電力の削減および処理時間の短縮を図ることができる。
The FFT operation circuit 100 does not require any subsequent stage operation in the intermediate stage operation by the FFT operation processing described with reference to FIGS. 4 and 5 (the final stage maximum value M <the value m of the minimum value information 109). Can be detected and the stage operation can be stopped.
Thereby, unnecessary stage calculation is omitted, and power consumption and processing time can be reduced.

図7は、実施の形態1における情報処理装置200のハードウェア資源の一例を示す図である。
図7において、情報処理装置200(コンピュータの一例)は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905(通信装置)、ディスプレイ911(表示装置)、キーボード912、マウス913、ドライブ914、磁気ディスク装置920などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ914は、FD(Flexible Disk Drive)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
ROM903、RAM904、磁気ディスク装置920およびドライブ914は記憶装置の一例である。キーボード912、マウス913および通信ボード905は入力装置の一例である。ディスプレイ911および通信ボード905は出力装置の一例である。
FIG. 7 is a diagram illustrating an example of hardware resources of the information processing apparatus 200 according to the first embodiment.
In FIG. 7, the information processing apparatus 200 (an example of a computer) includes a CPU 901 (Central Processing Unit). The CPU 901 is connected to hardware devices such as a ROM 903, a RAM 904, a communication board 905 (communication device), a display 911 (display device), a keyboard 912, a mouse 913, a drive 914, and a magnetic disk device 920 via a bus 902. Control hardware devices. The drive 914 is a device that reads and writes a storage medium such as an FD (Flexible Disk Drive), a CD (Compact Disc), and a DVD (Digital Versatile Disc).
The ROM 903, the RAM 904, the magnetic disk device 920, and the drive 914 are examples of storage devices. A keyboard 912, a mouse 913, and a communication board 905 are examples of input devices. The display 911 and the communication board 905 are examples of output devices.

通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。   The communication board 905 is wired or wirelessly connected to a communication network such as a LAN (Local Area Network), the Internet, or a telephone line.

磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。   The magnetic disk device 920 stores an OS 921 (operating system), a program group 922, and a file group 923.

プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム(例えば、フーリエ変換プログラム)は、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。   The program group 922 includes programs that execute the functions described as “units” in the embodiments. A program (for example, a Fourier transform program) is read and executed by the CPU 901. That is, the program causes the computer to function as “to part”, and causes the computer to execute the procedures and methods of “to part”.

ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。   The file group 923 includes various data (input, output, determination result, calculation result, processing result, etc.) used in “˜part” described in the embodiment.

実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はCPU901、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。
In the embodiment, arrows included in the configuration diagrams and flowcharts mainly indicate input and output of data and signals.
The processing of the embodiment described based on the flowchart and the like is executed using hardware such as the CPU 901, a storage device, an input device, and an output device.

実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。   In the embodiment, what is described as “to part” may be “to circuit”, “to apparatus”, and “to device”, and “to step”, “to procedure”, and “to processing”. May be. That is, what is described as “to part” may be implemented by any of firmware, software, hardware, or a combination thereof.

FFT演算回路100は本実施の形態で説明したものに限らない。
例えば、クリップ部160にてシフトを行う際に丸めを行う場合は、クリップ部160における丸めによる桁上りの影響を加味し、例えば最終ステージ最大値Mを「M=B+r+C+1」で算出して判定を行ってもよい。
また、本実施の形態では基数2の場合の判定の例を記載したが、基数が2以外のバタフライ演算を行う場合も同様に1ステージの範囲増加分を残りステージ数で累乗することで同様の判定を行うことができる。またクリップ部160は、停止信号105が出力された場合に「0」以外の値(例えば、システム最小値)を出力しても構わない。
The FFT operation circuit 100 is not limited to that described in this embodiment.
For example, when rounding is performed when the clip unit 160 shifts, the final stage maximum value M is calculated by, for example, “M = B + r + C + 1” in consideration of the carry effect due to rounding in the clip unit 160. You may go.
In the present embodiment, an example of determination in the case of radix 2 is described. However, when performing a butterfly operation other than radix 2, the same increase in the range of one stage is raised by the number of remaining stages. Judgment can be made. The clip unit 160 may output a value other than “0” (for example, the system minimum value) when the stop signal 105 is output.

実施の形態1において、例えば、以下のようなフーリエ変換回路(FFT演算回路100)について説明した。括弧内に実施の形態1で用いた要素名を記す。
フーリエ変換回路は、最小指標値記憶部(比較判定部155)と、入力部(RAM部120)と、ステージ演算部(ステージ演算部110)と、予測指標値算出部(最終値予測部154)と、予測指標値判定部(比較判定部155)と、ステージ演算停止部(比較判定部155)とを備える。
最小指標値記憶部は、所定の値として最小指標値(最小値情報109)を記憶する。
入力部は、入力値(入力データ101)が入力される。
ステージ演算部は、前記入力部に入力された入力値を用いてフーリエ変換のステージ演算を所定のステージ回数実行し、フーリエ変換のステージ演算を実行する毎に演算値(演算結果データ102)を算出すると共に算出した演算値を演算値記憶部(RAM部120)に記憶する。
予測指標値算出部は、前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記ステージ演算部によって算出された演算値に基づいて、前記ステージ演算部がフーリエ変換のステージ演算を前記所定のステージ回数実行した場合に算出する演算値の範囲を予測して予測指標値(最終ステージ最大値)を算出する。
予測指標値判定部は、前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記予測指標値算出部によって算出された予測指標値と前記最小指標値記憶部に記憶された最小指標値との関係により前記ステージ演算の停止を判定する。
ステージ演算停止部は、前記予測指標値判定部の判定結果が前記ステージ演算の停止を示す場合、前記ステージ演算部と前記演算値記憶部との少なくともいずれかを停止させる。
In the first embodiment, for example, the following Fourier transform circuit (FFT operation circuit 100) has been described. The element names used in Embodiment 1 are written in parentheses.
The Fourier transform circuit includes a minimum index value storage unit (comparison / determination unit 155), an input unit (RAM unit 120), a stage calculation unit (stage calculation unit 110), and a predicted index value calculation unit (final value prediction unit 154). And a prediction index value determination unit (comparison determination unit 155) and a stage calculation stop unit (comparison determination unit 155).
The minimum index value storage unit stores a minimum index value (minimum value information 109) as a predetermined value.
An input value (input data 101) is input to the input unit.
The stage calculation unit performs a Fourier transform stage calculation a predetermined number of times using the input value input to the input unit, and calculates a calculation value (calculation result data 102) each time the Fourier transform stage calculation is executed. In addition, the calculated calculation value is stored in the calculation value storage unit (RAM unit 120).
The prediction index value calculation unit is configured so that the stage calculation unit performs the Fourier transform stage calculation based on the calculation value calculated by the stage calculation unit each time the stage calculation unit executes the Fourier transform stage calculation. The prediction index value (final stage maximum value) is calculated by predicting the range of the calculation value calculated when the number of stages is executed.
The prediction index value determination unit is configured such that the prediction index value calculated by the prediction index value calculation unit and the minimum index value stored in the minimum index value storage unit each time the stage calculation unit executes a stage calculation of Fourier transform. The stop of the stage calculation is determined based on the relationship.
The stage calculation stop unit stops at least one of the stage calculation unit and the calculation value storage unit when the determination result of the prediction index value determination unit indicates the stop of the stage calculation.

100 FFT演算回路、101 入力データ、102 演算結果データ、103 最大桁、104 シフト制御情報、105 停止信号、106 出力データ、107 増加ビット数テーブル、109 最小値情報、110 ステージ演算部、120 RAM部、130 最大桁検出部、140 シフト制御部、150 停止判定部、151 残ステージカウンタ部、152 増加ビット算出部、153 ステージ指数管理部、154 最終値予測部、155 比較判定部、160 クリップ部、200 情報処理装置、210 情報処理部、220 フーリエ変換部、901 CPU、902 バス、903 ROM、904 RAM、905 通信ボード、911 ディスプレイ、912 キーボード、913 マウス、914 ドライブ、920 磁気ディスク装置、921 OS、922 プログラム群、923 ファイル群。   100 FFT operation circuit, 101 input data, 102 operation result data, 103 maximum digit, 104 shift control information, 105 stop signal, 106 output data, 107 increment bit number table, 109 minimum value information, 110 stage operation unit, 120 RAM unit 130 maximum digit detection unit, 140 shift control unit, 150 stop determination unit, 151 remaining stage counter unit, 152 increment bit calculation unit, 153 stage index management unit, 154 final value prediction unit, 155 comparison determination unit, 160 clip unit, 200 Information processing device, 210 Information processing unit, 220 Fourier transform unit, 901 CPU, 902 bus, 903 ROM, 904 RAM, 905 communication board, 911 display, 912 keyboard, 913 mouse, 914 drive, 920 magnetic disk Click system, 921 OS, 922 program group, 923 files.

Claims (10)

所定の値として最小指標値を記憶する最小指標値記憶部と、
入力値が入力される入力部と、
前記入力部に入力された入力値を用いてフーリエ変換のステージ演算を所定のステージ回数実行し、フーリエ変換のステージ演算を実行する毎に演算値を算出すると共に算出した演算値を演算値記憶部に記憶するステージ演算部と、
前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記ステージ演算部によって算出された演算値に基づいて、前記ステージ演算部がフーリエ変換のステージ演算を前記所定のステージ回数実行した場合に算出する演算値の範囲を予測して予測指標値を算出する予測指標値算出部と、
前記ステージ演算部がフーリエ変換のステージ演算を実行する毎に、前記予測指標値算出部によって算出された予測指標値と前記最小指標値記憶部に記憶された最小指標値との関係により前記ステージ演算の停止を判定する予測指標値判定部と、
前記予測指標値判定部の判定結果が前記ステージ演算の停止を示す場合、前記ステージ演算部と前記演算値記憶部との少なくともいずれかを停止させるステージ演算停止部と
を備えることを特徴とするフーリエ変換回路。
A minimum index value storage unit that stores a minimum index value as a predetermined value;
An input unit for inputting an input value;
The Fourier transform stage calculation is performed a predetermined number of times using the input value input to the input unit, and the calculated value is calculated every time the Fourier transform stage calculation is performed, and the calculated calculated value is stored in the calculated value storage unit. A stage calculation unit to store in
Each time the stage calculation unit executes a Fourier transform stage calculation, the stage calculation unit executes the Fourier transform stage calculation a predetermined number of times based on the calculation value calculated by the stage calculation unit. A prediction index value calculation unit that calculates a prediction index value by predicting a range of calculation values to be calculated;
Each time the stage calculation unit performs a Fourier transform stage calculation, the stage calculation is performed according to the relationship between the prediction index value calculated by the prediction index value calculation unit and the minimum index value stored in the minimum index value storage unit. A prediction index value determination unit for determining stoppage of
And a stage calculation stop unit that stops at least one of the stage calculation unit and the calculation value storage unit when the determination result of the prediction index value determination unit indicates the stop of the stage calculation. Conversion circuit.
前記フーリエ変換回路は、さらに、
前記予測指標値判定部の判定結果が前記ステージ演算の停止を示す場合、予め決められた出力値を出力する演算結果出力部を備える
ことを特徴とする請求項1記載のフーリエ変換回路。
The Fourier transform circuit further includes:
The Fourier transform circuit according to claim 1, further comprising a calculation result output unit that outputs a predetermined output value when the determination result of the prediction index value determination unit indicates that the stage calculation is stopped.
前記演算結果出力部は前記出力値としてゼロを出力することを特徴とする請求項2記載のフーリエ変換回路。   The Fourier transform circuit according to claim 2, wherein the calculation result output unit outputs zero as the output value. 前記予測指標値算出部は、前記ステージ演算部がフーリエ変換のステージ演算を実行した実行回数を前記所定のステージ回数から差し引いた値に相当する残りステージ数と前記ステージ演算部によって算出された演算値とに基づいて前記予測指標値を算出する
ことを特徴とする請求項1から請求項3いずれかに記載のフーリエ変換回路。
The prediction index value calculation unit includes the number of remaining stages corresponding to a value obtained by subtracting the number of executions of the stage calculation of the Fourier transform performed by the stage calculation unit from the predetermined number of stages and the calculation value calculated by the stage calculation unit. The Fourier transform circuit according to any one of claims 1 to 3, wherein the prediction index value is calculated based on:
前記フーリエ変換回路は、さらに、ステージ回数と演算値の予測増加量とを対応付けた予測増加量記憶部を備え、
前記予測指標値算出部は、前記残りステージ数と同じステージ回数に対応付けられた演算値の予測増加量を前記予測増加量記憶部から取得し、取得した演算値の予測増加量と前記ステージ演算部によって算出された演算値とに基づいて前記予測指標値を算出する
ことを特徴とする請求項4記載のフーリエ変換回路。
The Fourier transform circuit further includes a predicted increase amount storage unit that associates the number of stages with the predicted increase amount of the operation value,
The predicted index value calculation unit acquires a predicted increase amount of a calculation value associated with the same number of stages as the number of remaining stages from the predicted increase amount storage unit, and acquires the predicted increase amount of the calculated value and the stage calculation The Fourier transform circuit according to claim 4, wherein the prediction index value is calculated based on the calculated value calculated by the unit.
前記予測増加量記憶部は、前記演算値の予測増加量として増加桁数を記憶し、
前記予測指標値算出部は、前記残りステージ数と同じステージ回数に対応付けられた増加桁数と前記演算値の桁数とに基づいて予測桁数を前記予測指標値として算出する
ことを特徴とする請求項5記載のフーリエ変換回路。
The predicted increase amount storage unit stores an increased number of digits as a predicted increase amount of the calculated value,
The prediction index value calculation unit calculates a prediction digit number as the prediction index value based on an increased number of digits associated with the same number of stages as the number of remaining stages and a number of digits of the calculation value. The Fourier transform circuit according to claim 5.
前記予測増加量記憶部は、1+√2(√2は2の平方根)をステージ回数だけ累乗した値について、2を底とする対数値の小数点以下を切り上げた値を前記予測増加量として記憶する
ことを特徴とする請求項5または請求項6記載のフーリエ変換回路。
The predicted increase amount storage unit stores, as the predicted increase amount, a value obtained by rounding up the decimal point of the logarithmic value with 2 as the base for a value obtained by raising 1 + √2 (√2 is the square root of 2) by the number of stages. 7. The Fourier transform circuit according to claim 5, wherein the Fourier transform circuit is provided.
前記ステージ演算部は、前記予測指標値と前記最小指標値とが所定の大小関係を示す場合に前記ステージ演算を停止させると判定する
ことを特徴とする請求項1から請求項7いずれかに記載のフーリエ変換回路。
The stage calculation unit determines to stop the stage calculation when the predicted index value and the minimum index value indicate a predetermined magnitude relationship. 8. Fourier transform circuit.
前記ステージ演算部は、基数2のバタフライ演算を行う
ことを特徴とする請求項1から請求項8いずれかに記載のフーリエ変換回路。
The Fourier transform circuit according to claim 1, wherein the stage calculation unit performs a radix-2 butterfly calculation.
請求項1から請求項9いずれかに記載のフーリエ変換回路を備えた情報処理装置。   An information processing apparatus comprising the Fourier transform circuit according to claim 1.
JP2012137867A 2012-06-19 2012-06-19 Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program Expired - Fee Related JP5822791B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012137867A JP5822791B2 (en) 2012-06-19 2012-06-19 Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012137867A JP5822791B2 (en) 2012-06-19 2012-06-19 Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program

Publications (2)

Publication Number Publication Date
JP2014002588A JP2014002588A (en) 2014-01-09
JP5822791B2 true JP5822791B2 (en) 2015-11-24

Family

ID=50035702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012137867A Expired - Fee Related JP5822791B2 (en) 2012-06-19 2012-06-19 Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program

Country Status (1)

Country Link
JP (1) JP5822791B2 (en)

Also Published As

Publication number Publication date
JP2014002588A (en) 2014-01-09

Similar Documents

Publication Publication Date Title
JP7331303B2 (en) Artificial Neural Network Training with Flexible Floating-Point Tensors
JP6111543B2 (en) Method and apparatus for extracting similar sub time series
US10983773B2 (en) Technologies for translation cache management in binary translation systems
CN107357642B (en) Calculation task adjusting method and device
US20190340099A1 (en) System resource component utilization
US20160292234A1 (en) Method and system for searching in a distributed database
CN111489830A (en) Method and device for predicting epidemic situation data in sections, medium and electronic equipment
US20130275812A1 (en) Determining root cause
US10296290B2 (en) Digital signal processor
JP6345346B2 (en) Analysis apparatus, analysis method, and analysis program
JP5822791B2 (en) Fourier transform circuit, information processing apparatus, Fourier transform method, and Fourier transform program
WO2020059073A1 (en) Information processing device, method, and program
JP2020201646A (en) Arithmetic processing device, control method, and control program
JP6464980B2 (en) Program, information processing apparatus and information processing method
US11216275B1 (en) Converting floating point data into integer data using a dynamically adjusted scale factor
US10459689B2 (en) Calculation of a number of iterations
JP2018160165A (en) Image processor, image processing method and program
CN112099759A (en) Numerical value processing method, device, processing equipment and computer readable storage medium
JP2017228223A (en) Signal processor
KR101084581B1 (en) Method and Apparatus for Operating of Fixed-point Exponential Function, and Recording Medium thereof
WO2018150588A1 (en) Information processing device, information processing method, and information processing program
CN112163185A (en) FFT/IFFT operation device and FFT/IFFT operation method based on the same
JP7353539B2 (en) Steady range determination system, steady range determination method, and steady range determination program
GB2596473A (en) Risk calculation device, risk calculation program, and risk calculation method
WO2018167940A1 (en) Information processing device, information processing method, and information processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150813

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150908

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151006

R150 Certificate of patent or registration of utility model

Ref document number: 5822791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees