JP5493646B2 - Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method - Google Patents
Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method Download PDFInfo
- Publication number
- JP5493646B2 JP5493646B2 JP2009220792A JP2009220792A JP5493646B2 JP 5493646 B2 JP5493646 B2 JP 5493646B2 JP 2009220792 A JP2009220792 A JP 2009220792A JP 2009220792 A JP2009220792 A JP 2009220792A JP 5493646 B2 JP5493646 B2 JP 5493646B2
- Authority
- JP
- Japan
- Prior art keywords
- timing
- output
- control signal
- data
- fourier transform
- 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.)
- Active
Links
Images
Landscapes
- Complex Calculations (AREA)
Description
本発明は、離散フーリエ変換装置および離散フーリエ変換方法に関し、特には、点数(ポイント数)が異なる離散フーリエ変換(DFT)を実行できる離散フーリエ変換装置および離散フーリエ変換方法に関する。 The present invention relates to a discrete Fourier transform apparatus and a discrete Fourier transform method, and more particularly to a discrete Fourier transform apparatus and a discrete Fourier transform method capable of executing discrete Fourier transform (DFT) with different points (point numbers).
周波数領域の信号を時間領域の信号に変換する処理と、時間領域の信号を周波数領域の信号に変換する処理と、を含む変復調処理を行う無線通信信号処理装置が知られている。変復調処理の例としては、LTE(Long Term Evolution)で用いられる離散フーリエ変換(DFT)と離散逆フーリエ変換(IDFT)とを行う処理が挙げられる。 There is known a wireless communication signal processing device that performs modulation / demodulation processing including processing for converting a frequency domain signal into a time domain signal and processing for converting a time domain signal into a frequency domain signal. As an example of the modulation / demodulation processing, there is processing for performing discrete Fourier transform (DFT) and discrete inverse Fourier transform (IDFT) used in LTE (Long Term Evolution).
一般に、DFTは以下の式で表わされる。 In general, DFT is expressed by the following equation.
ここで、Xは入力、Yは出力、NはDFTの点数である。また、 Here, X is an input, Y is an output, and N is a DFT score. Also,
である。 It is.
DFTを高速に実行する手法として、ある点数のDFTを、その点数より少ない点数のDFT処理の組み合わせとして処理するウィノグラードの方法がある。 As a technique for executing DFT at high speed, there is a Winograd method in which a DFT with a certain score is processed as a combination of DFT processing with a score less than that score.
図49は、ウィノグラードの方法を用いて、15点DFTを3点及び5点のDFTに分割して処理する手法を示した図である。 FIG. 49 is a diagram showing a technique of processing a 15-point DFT by dividing it into 3-point and 5-point DFT using the Winograd method.
ウィノグラードの方法によれば、15点のDFTは、3点DFTの前段演算部、5点DFTの前段演算部、乗算段、5点DFTの後段演算部、及び3点DFTの後段演算部から構成することができる。 According to the Winograd method, the 15-point DFT is derived from the 3-stage DFT pre-stage computation unit, the 5-point DFT pre-stage computation section, the multiplication stage, the 5-point DFT post-stage computation section, and the 3-point DFT post-stage computation section. Can be configured.
まず、3点DFTの前段演算部が、X(k)で示される入力データに対し、入力データ同士の加算処理を行う。 First, the pre-stage calculation unit of the three-point DFT performs an addition process between the input data on the input data indicated by X (k).
次に、3点DFTの前段演算部は、加算処理結果を5点DFTの前段演算部に出力し、5点DFTの前段演算部が、3点DFTの前段演算部からの加算処理結果について加算処理を行う。 Next, the 3-stage DFT pre-stage calculation unit outputs the addition processing result to the 5-point DFT pre-stage calculation section, and the 5-point DFT pre-stage calculation section adds the addition process results from the 3-point DFT pre-stage calculation section. Process.
次に、5点DFTの前段演算部は、加算処理結果を乗算段に送り、乗算段は、5点DFTの前段演算部からの加算処理結果と、あらかじめ用意しておいた乗算係数と、の乗算を行う。 Next, the 5-stage DFT pre-stage calculation unit sends the addition process result to the multiplication stage, and the multiplication stage calculates the addition process result from the 5-point DFT pre-stage calculation unit and the multiplication coefficient prepared in advance. Perform multiplication.
次に、乗算段は、乗算結果を5点DFTの後段演算部に送り、5点DFTの後段演算部は、入力されたデータ同士の加算処理を行う。 Next, the multiplication stage sends the multiplication result to the subsequent stage calculation unit of the 5-point DFT, and the subsequent stage calculation unit of the 5-point DFT performs an addition process between the input data.
最後に、5点DFTの後段演算部は、加算処理結果を3点DFTの後段演算部に送り、3点DFTの後段演算部が、入力されたデータ同士の加算処理を行い、結果を出力する。 Finally, the post-processing unit of the 5-point DFT sends the addition processing result to the post-processing unit of the 3-point DFT, and the post-processing unit of the 3-point DFT performs an addition process on the input data and outputs the result. .
ウィノグラードの方法を修正した手法とアーキテクチャがいくつか提案されている。 Several methods and architectures that modify the Winograd method have been proposed.
特許文献1には、デジタルチャネライザで用いられるDFTを効率よく処理するためのアーキテクチャが提案されている。特許文献1に開示の方法では、DFT以後の処理において、不必要なDFT出力を計算するDFT回路を削減することによって、後段演算部の加算器が削減されている。
また、特許文献2には、特定のポイント数kのFFT回路がL個並列に配置され、k、2*k、..、L*kポイントのいずれのFFTも行えるサイズ可変離散フーリエ変換処理装置が記載されている。
In
特許文献1に開示されたDFT処理方法は、ポイント数に対して汎用性がなく、複数種類のポイント数のフーリエ変換に対応するためには、ポイント数ごとに、個別にDFT回路を設計しなければならない。このため、ポイント数の種類が増加するほど、DFT回路を構成する加算器および乗算器の個数が増加し、回路規模が大きくなってしまうという課題がある。また、DFTの点数毎に個別に回路を設計しなければならないため、設計に時間がかかってしまう。
The DFT processing method disclosed in
特許文献2に開示されたサイズ可変離散フーリエ変換処理装置は、ポイント数kのFFT回路をL個用いることによって、L種類のポイント数のフーリエ変換に対応している。このため、ポイント数の種類が増加するほど、DFT回路を構成する加算器および乗算器の個数が増加し、回路規模が大きくなってしまうという課題がある。
The size-variable discrete Fourier transform processing device disclosed in
つまり、特許文献1、2に開示された技術では、ポイント数の種類が増加するほど、DFT回路を構成する加算器および乗算器の個数が増加し、回路規模が大きくなってしまうという課題がある。
In other words, the techniques disclosed in
本発明の目的は、上記課題を解決可能な離散フーリエ変換装置および離散フーリエ変換方法を提供することである。 An object of the present invention is to provide a discrete Fourier transform apparatus and a discrete Fourier transform method capable of solving the above problems.
本発明の離散フーリエ変換装置は、 複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第一加算手段は、
前記第一タイミングで前記複数のデータを受け付けると、前記制御信号に従って、前記複数のデータ同士を選択的に加算する、もしくは、前記複数のデータをそのまま出力する第一演算手段と、
前記第一タイミングよりも遅く前記第二タイミングよりも早い第四タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力する並び替え手段と、
前記第四タイミングよりも遅く前記第二タイミングよりも早い第五タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第二演算手段と、
前記第五タイミングよりも遅く前記第二タイミングよりも早い第六タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第三演算手段と、を有し、
前記第一演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第四タイミングで前記並び替え手段に出力し、
前記並び替え手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第五タイミングで前記第二演算手段に出力し、
前記第二演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第六タイミングで前記第三演算手段に出力し、
前記第三演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第二タイミングで前記乗算手段に出力する。また、
本発明の離散フーリエ変換装置は、複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記乗算手段は、
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を格納する記憶手段と、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出し手段と、
前記第一加算手段の出力に、前記読出し手段が読み出した乗算係数を乗算する第一乗算手段と、
前記第一乗算手段の乗算結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算手段と、を有する。また、
本発明の離散フーリエ変換装置は、複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第二加算手段は、
前記第三タイミングで前記乗算手段の出力を受け付けると、前記制御信号に従って、前記乗算手段の出力同士を選択的に加算する、もしくは、前記乗算手段の出力をそのまま出力する第四演算手段と、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算手段と、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替え手段と、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算手段と、を有し、
前記第四演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第七タイミングで前記第五演算手段に出力し、
前記第五演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第八タイミングで前記データ並び替え手段に出力し、
前記データ並び替え手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第九タイミングで前記第六演算手段に出力し、
前記第六演算手段は、自己の出力を、前記複数のデータに対して前記制御信号にて示されたポイント数の前記処理を実行した結果として出力する。
The discrete Fourier transform device of the present invention includes one of a plurality of types of points , a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, a plurality of data, A discrete Fourier transform device that executes discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal for the plurality of data,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data ,
The first adding means includes
When the plurality of data is received at the first timing, according to the control signal, the plurality of data is selectively added to each other, or first calculation means for outputting the plurality of data as they are;
Rearrangement means for selectively rearranging data input at a fourth timing later than the first timing and earlier than the second timing according to the control signal, or outputting the data as it is;
Data input at a fifth timing that is later than the fourth timing and earlier than the second timing, in accordance with the control signal, or a second calculation means that outputs the data as it is,
And third arithmetic means for selectively adding data input at a sixth timing later than the fifth timing and earlier than the second timing according to the control signal, or outputting the data as it is,
The first calculation means outputs its own output to the sorting means at the fourth timing regardless of the number of points indicated by the control signal,
The rearranging means outputs its own output to the second arithmetic means at the fifth timing regardless of the number of points indicated by the control signal,
The second calculation means outputs its own output to the third calculation means at the sixth timing regardless of the number of points indicated by the control signal,
The third calculation means outputs its own output to the multiplication means at the second timing regardless of the number of points indicated by the control signal. Also,
The discrete Fourier transform device of the present invention includes one of a plurality of types of points, a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data. A discrete Fourier transform device that performs discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal for the plurality of data,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform. Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data,
The multiplication means is
Storage means for storing the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points for each number of points;
Reading means for reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
First multiplication means for multiplying the output of the first addition means by the multiplication coefficient read by the reading means;
Second multiplication means for selectively multiplying the multiplication result of the first multiplication means by a pure imaginary number in accordance with the control signal. Also,
The discrete Fourier transform device of the present invention includes one of a plurality of types of points, a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data. A discrete Fourier transform device that performs discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal for the plurality of data,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform. Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data,
The second adding means includes
When receiving the output of the multiplication means at the third timing, according to the control signal, selectively add the outputs of the multiplication means, or a fourth calculation means for outputting the output of the multiplication means as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth computing means;
Data rearranging means for selectively rearranging data inputted at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
Sixth arithmetic means for selectively adding the data input at the ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
The fourth calculation means outputs its own output to the fifth calculation means at the seventh timing regardless of the number of points indicated by the control signal,
The fifth computing means outputs its own output to the data rearranging means at the eighth timing regardless of the number of points indicated by the control signal,
The data rearranging means outputs its own output to the sixth arithmetic means at the ninth timing regardless of the number of points indicated by the control signal,
The sixth arithmetic means outputs its own output as a result of executing the processing of the number of points indicated by the control signal for the plurality of data.
本発明の離散フーリエ変換・離散逆フーリエ変換方法は、複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置での離散フーリエ変換・離散逆フーリエ変換方法であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第一加算ステップは、
前記第一タイミングで前記複数のデータを受け付けると、前記制御信号に従って、前記複数のデータ同士を選択的に加算する、もしくは、前記複数のデータをそのまま出力する第一演算ステップと、
前記第一タイミングよりも遅く前記第二タイミングよりも早い第四タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力する並び替えステップと、
前記第四タイミングよりも遅く前記第二タイミングよりも早い第五タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第二演算ステップと、
前記第五タイミングよりも遅く前記第二タイミングよりも早い第六タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第三演算ステップと、を有し、
前記第一演算ステップでは、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第四タイミングで出力し、
前記並び替えステップでは、前記第一演算ステップでの出力を前記第四タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第五タイミングで出力し、
前記第二演算ステップでは、前記並び替えステップでの出力を前記第五タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第六タイミングで出力し、
前記第三演算ステップは、前記第二演算ステップでの出力を前記第六タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第二タイミングで出力し、
前記乗算ステップでは、前記第三演算ステップでの出力を、前記前段加算処理の結果として前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行する。また、
本発明の離散フーリエ変換・離散逆フーリエ変換方法は、複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置での離散フーリエ変換・離散逆フーリエ変換方法であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記乗算ステップは、
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を記憶手段に格納する記憶ステップと、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出しステップと、
前記第一加算ステップでの出力に、前記読み出された乗算係数を乗算する第一乗算ステップと、
前記乗算の結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算ステップと、を有する。また、
本発明の離散フーリエ変換・離散逆フーリエ変換方法は、複数種類のポイント数のうちの一つと、処理が離散フーリエ変換であるのか離散逆フーリエ変換であるのかと、を示した制御信号と、複数のデータと、を受け付け、前記複数のデータに対して、前記制御信号にて示されたポイント数の離散フーリエ変換または離散逆フーリエ変換を実行する離散フーリエ変換装置での離散フーリエ変換・離散逆フーリエ変換方法であって、
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第二加算ステップは、
前記第三タイミングで前記乗算ステップでの出力を受け付けると、前記制御信号に従って、当該出力同士を選択的に加算する、もしくは、当該出力をそのまま出力する第四演算ステップと、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算ステップと、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替えステップと、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算ステップと、を有し、
前記第四演算ステップでは、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第七タイミングで出力し、
前記第五演算ステップでは、前記第四演算ステップでの出力を前記第七タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第八タイミングで出力し、
前記データ並び替えステップでは、前記第五演算ステップでの出力を前記第八タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第九タイミングで出力し、
前記第六演算ステップでは、前記データ並び替えステップでの出力を前記第九タイミングで受け付け、自己の出力を前記複数のデータに対して前記処理を実行した結果として出力する。
The discrete Fourier transform / discrete inverse Fourier transform method of the present invention includes a control signal indicating one of a plurality of types of points and whether the process is a discrete Fourier transform or a discrete inverse Fourier transform . a plurality of data, the reception, the on multiple data, discrete Fourier transform and discrete inverse of the discrete Fourier transform unit for performing a discrete Fourier transform or inverse discrete Fourier transform of the number of points indicated by the control signal A Fourier transform method,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process ,
The first adding step includes
When receiving the plurality of data at the first timing, according to the control signal, selectively adding the plurality of data, or outputting the plurality of data as they are,
Rearrangement step of selectively rearranging data input at a fourth timing later than the first timing and earlier than the second timing according to the control signal, or outputting the data as it is;
A second calculation step of selectively adding data input at a fifth timing later than the fourth timing and earlier than the second timing according to the control signal, or outputting the data as it is;
A third operation step of selectively adding data inputted at a sixth timing later than the fifth timing and earlier than the second timing according to the control signal, or outputting the data as it is,
In the first calculation step, regardless of the number of points indicated by the control signal, the output of its own is output at the fourth timing,
In the rearrangement step, the output in the first calculation step is received at the fourth timing, and regardless of the number of points indicated by the control signal, the output of the self is output at the fifth timing,
In the second calculation step, the output in the rearrangement step is received at the fifth timing, and regardless of the number of points indicated by the control signal, its own output is output at the sixth timing,
The third calculation step accepts the output in the second calculation step at the sixth timing, and outputs its own output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the output in the third calculation step is received at the second timing as a result of the previous stage addition process, and the multiplication process is executed on the result of the previous stage addition process . Also,
The discrete Fourier transform / discrete inverse Fourier transform method of the present invention includes a control signal indicating one of a plurality of types of points, whether the processing is discrete Fourier transform or discrete inverse Fourier transform, and a plurality of points Discrete Fourier transform / discrete inverse Fourier in a discrete Fourier transform device that receives discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal for the plurality of data. A conversion method,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform. Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process,
The multiplication step includes
For each point number, a storage step of storing in the storage means the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points;
A reading step of reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
A first multiplication step of multiplying the output in the first addition step by the read multiplication coefficient;
A second multiplication step of selectively multiplying a result of the multiplication by a pure imaginary number in accordance with the control signal. Also,
The discrete Fourier transform / discrete inverse Fourier transform method of the present invention includes a control signal indicating one of a plurality of types of points, whether the processing is discrete Fourier transform or discrete inverse Fourier transform, and a plurality of points Discrete Fourier transform / discrete inverse Fourier in a discrete Fourier transform device that receives discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal for the plurality of data. A conversion method,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform. Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process,
The second adding step includes
When the output at the multiplication step is received at the third timing, the outputs are selectively added according to the control signal, or a fourth calculation step for outputting the output as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth operation step;
A data rearrangement step of selectively rearranging data input at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
A sixth operation step of selectively adding data inputted at a ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
In the fourth calculation step, regardless of the number of points indicated by the control signal, the self output is output at the seventh timing,
In the fifth calculation step, the output in the fourth calculation step is accepted at the seventh timing, and regardless of the number of points indicated by the control signal, its own output is output at the eighth timing,
In the data rearrangement step, the output in the fifth calculation step is accepted at the eighth timing, and regardless of the number of points indicated by the control signal, its own output is output at the ninth timing,
In the sixth operation step, the output in the data rearrangement step is received at the ninth timing, and the output of itself is output as a result of executing the processing on the plurality of data.
本発明によれば、離散フーリエ変換のポイント数の種類の増加に伴い加算器および乗算器の個数が増加することを防止することが可能になる。 According to the present invention, it is possible to prevent the number of adders and multipliers from increasing as the number of points in the discrete Fourier transform increases.
次に、本発明の実施形態の離散フーリエ変換装置について図面を参照して詳細に説明する。 Next, a discrete Fourier transform apparatus according to an embodiment of the present invention will be described in detail with reference to the drawings.
(第1実施形態)
図1は、本発明の第1実施形態の離散フーリエ変換装置(以下「演算装置」とも称する)200を示すブロック図である。
(First embodiment)
FIG. 1 is a block diagram showing a discrete Fourier transform apparatus (hereinafter also referred to as “arithmetic apparatus”) 200 according to the first embodiment of the present invention.
図1において、演算装置200は、前加算ユニット201と、乗算ユニット202と、後加算ユニット203と、を含む。
In FIG. 1, the
前加算ユニット201は、前段第一加算ユニット204と、前段転置ユニット205と、前段第二加算ユニット206と、前段第三加算ユニット207と、を含む。乗算ユニット202は、乗算器208と、制御ユニット209と、を含む。後加算ユニット203は、後段第一加算ユニット210と、後段第二加算ユニット211と、後段転置ユニット212と、後段第三加算ユニット213と、を含む。
The
演算装置200は、複数種類のポイント数のうちの1つを示した制御信号と、複数のデータと、を受け付けると、複数のデータに対して、制御信号にて示されたポイント数の離散フーリエ変換(DFT)を実行する。
When the
本実施形態では、複数種類のポイント数は、3点、5点、9点および15点にて構成される。複数のデータのそれぞれは、DFTが施される複素数データである。 In this embodiment, the number of points of a plurality of types is configured by 3, 5, 9, and 15 points. Each of the plurality of data is complex number data subjected to DFT.
演算装置200は、制御信号と複数のデータとを受け付けると、まず、制御信号が示すポイント数のDFTに応じた前段加算処理を、複素数データに対して実行して、前段加算処理結果を生成する。
When receiving the control signal and the plurality of data, the
続いて、演算装置200は、制御信号が示すポイント数のDFTに応じた乗算処理を、その前段加算処理結果に対して実行して、乗算処理結果を生成する。
Subsequently, the
続いて、演算装置200は、制御信号が示すポイント数のDFTに応じた後段加算処理を、その乗算処理結果に対して実行して、制御信号にて示されたポイント数のDFTの結果を出力する。
Subsequently, the
前段加算処理は、乗算処理の前に行われるべき加算処理であり、後段加算処理は、乗算処理の後に行われるべき加算処理である。 The pre-stage addition process is an addition process to be performed before the multiplication process, and the post-stage addition process is an addition process to be performed after the multiplication process.
なお、DFTの処理を、前段加算処理と乗算処理と後段加算処理とに分けて行うことは、例えば、ウィノグラードの方法等により公知である(図49参照)
前加算ユニット201は、一般的に第一加算手段と呼ぶことができる。
It is known that the DFT processing is divided into the pre-stage addition process, the multiplication process, and the post-stage addition process by, for example, the Winograd method (see FIG. 49).
前加算ユニット201は、複数のデータが、第一タイミングで入力されると、その複数のデータに対して、制御信号が示すポイント数の離散フーリエ変換に応じた前段加算処理を実行する。
When a plurality of data is input at the first timing, the
乗算ユニット202は、一般的に乗算手段と呼ぶことができる。
乗算ユニット202は、第一タイミングよりも遅い第二タイミングで入力されたデータに対して、制御信号が示すポイント数の離散フーリエ変換に応じた乗算処理を実行する。
The
後加算ユニット203は、一般的に第二加算手段と呼ぶことができる。
後加算ユニット203は、第二タイミングよりも遅い第三タイミングで入力されたデータに対して、制御信号が示すポイント数の離散フーリエ変換に応じた後段加算処理を実行する。
The
なお、前加算ユニット201は、前段加算処理の結果を、制御信号にて示されたポイント数に関わらず、第二タイミングで、乗算ユニット202に出力する。
The
また、乗算ユニット202は、前段加算処理の結果に対して乗算処理を実行し、その乗算処理の結果を、制御信号にて示されたポイント数に関わらず、第三タイミングで、後加算ユニット203に出力する。
In addition, the
また、後加算ユニット203は、乗算処理の結果に対して後段加算処理を行い、その後段加算処理の結果を、複数のデータに対して制御信号にて示されたポイント数の離散フーリエ変換を実行した結果として出力する。
Further, the
前段第一加算ユニット204は、一般的に第一演算手段と呼ぶことができる。
The first-stage
前段第一加算ユニット204は、第一タイミングで複数のデータを受け付けると、制御信号に従って、複数のデータ同士を選択的に加算する(加算処理)、もしくは、複数のデータをそのまま出力する。
When receiving the plurality of data at the first timing, the first-stage
前段転置ユニット205は、一般的に並び替え手段と呼ぶことができる。
The
前段転置ユニット205は、第一タイミングよりも遅く第二タイミングよりも早い第四タイミングで入力されたデータを、制御信号に従って、選択的に並べ替える(転置処理)、もしくは、そのまま出力(スルー処理)する。
The
前段第二加算ユニット206は、一般的に第二演算手段と呼ぶことができる。
The pre-stage
前段第二加算ユニット206は、第四タイミングよりも遅く第二タイミングよりも早い第五タイミングで入力されたデータを、制御信号に従って、選択的に加算する(加算処理)、もしくは、そのまま出力する。
The pre-stage
前段第三加算ユニット207は、一般的に第三演算手段と呼ぶことができる。
The pre-stage
前段第三加算ユニット207は、第五タイミングよりも遅く第二タイミングよりも早い第六タイミングで入力されたデータを、制御信号に従って、選択的に加算する(加算処理)、もしくはそのまま出力する。
The pre-stage
なお、前段第一加算ユニット204は、制御信号にて示されたポイント数に関わらず、自己の出力を、第四タイミングで、前段転置ユニット205に出力する。
The first-stage
前段転置ユニット205は、制御信号にて示されたポイント数に関わらず、自己の出力を、第五タイミングで、前段第二加算ユニット206に出力する。
The
前段第二加算ユニット206は、制御信号にて示されたポイント数に関わらず、自己の出力を、第六タイミングで、前段第三加算ユニット207に出力する。
The upstream
前段第三加算ユニット207は、制御信号にて示されたポイント数に関わらず、自己の出力を、第二タイミングで、乗算ユニット202に出力する。
The pre-stage
乗算器208は、制御ユニット209から乗算係数を読み出し、その乗算係数を前段第三加算ユニット207の出力に乗算する乗算処理を行う。
The
制御ユニット209は、ポイント数ごとに、そのポイント数に対応する複素数の乗算係数を蓄えたメモリ(記憶手段)と、制御信号が示すポイント数に対応する乗算係数をメモリから読み出すためのアドレスを生成するアドレス生成ユニット(読み出し手段)と、を含む。
For each point number, the
後段第一加算ユニット210は、一般的に第四演算手段と呼ぶことができる。
The post-stage
後段第一加算ユニット210は、第三タイミングで乗算ユニット202の出力を受け付けると、制御信号に従って、乗算ユニット202の出力同士を選択的に加算する(加算処理)、もしくは、乗算ユニット202の出力をそのまま出力する。
When the post-stage
後段第二加算ユニット211は、一般的に第五演算手段と呼ぶことができる。
The
後段第二加算ユニット211は、第三タイミングよりも遅い第七タイミングで入力されたデータを、制御信号に従って、選択的に加算する(加算処理)、そのまま出力する、または、選択的に加算した加算結果に選択的に純虚数を乗算する。
The post-stage
後段転置ユニット212は、一般的にデータ並び替え手段と呼ぶことができる。 The rear transposition unit 212 can be generally referred to as data rearranging means.
後段転置ユニット212は、第七タイミングよりも遅い第八タイミングで入力されたデータを、制御信号に従って、選択的に並べ替える(転置処理)、もしくは、そのまま出力(スルー処理)する。 The rear transposition unit 212 selectively rearranges the data input at the eighth timing later than the seventh timing (transposition processing) or outputs the data as it is (through processing).
後段第三加算ユニット213は、一般的に第六演算手段と呼ぶことができる。 The post-stage third addition unit 213 can be generally referred to as sixth arithmetic means.
後段第三加算ユニット213は、第八タイミングよりも遅い第九タイミングで入力されたデータを、制御信号に従って、選択的に加算する(加算処理)、もしくは、そのまま出力する。 The post-stage third addition unit 213 selectively adds the data input at the ninth timing later than the eighth timing according to the control signal (addition processing) or outputs the data as it is.
なお、後段第一加算ユニット210は、制御信号にて示されたポイント数に関わらず、自己の出力を、第七タイミングで、後段第二加算ユニット211に出力する。
The rear stage
後段第二加算ユニット211は、制御信号にて示されたポイント数に関わらず、自己の出力を、第八タイミングで、後段転置ユニット212に出力する。
The rear stage
後段転置ユニット212は、制御信号にて示されたポイント数に関わらず、自己の出力を、第九タイミングで、後段第三加算ユニット213に出力する。 The rear transposition unit 212 outputs its own output to the rear third addition unit 213 at the ninth timing regardless of the number of points indicated by the control signal.
後段第三加算ユニット213は、自己の出力を、複数のデータに対して制御信号にて示されたポイント数の離散フーリエ変換を実行した結果として出力する。 The post-stage third addition unit 213 outputs its output as a result of executing the discrete Fourier transform of the number of points indicated by the control signal with respect to a plurality of data.
図2は、前段第一加算ユニット204を示したブロック図である。
FIG. 2 is a block diagram showing the first stage
図2において、前段第一加算ユニット204は、遅延回路Dと、クロスバ(Xbar)31および37と、加算器32、33、35および36と、セレクタ(Sel)34と、を含む。
In FIG. 2, the first stage
なお、前段第一加算ユニット204は、入力された制御信号C_sigを取り込み、また、制御信号C_sigをC_outとして出力する。
The pre-stage
遅延回路Dは、演算装置200へ入力された複素数データin3を1クロック分遅延する。
The delay circuit D delays the complex number data in3 input to the
クロスバ31は、制御信号C_sigに従って、遅延回路Dからの出力regr及び複素数データin1、in2、in3のそれぞれを、sel1、sel2、sel3、sel4、sel6、sel7、sel8のいずれかとして出力する。
The
加算器32は、sel3とsel4とを加算する加算処理を行う。
The
加算器33は、sel3と符号を反転したsel4とを加算する加算処理を行う。
The
セレクタ34は、制御信号C_sigに従って、sel2か加算器32の出力add_o_3かを選択して出力する。
The
加算器35は、sel1とセレクタ34の出力sel5とを加算する加算処理を行う。
The
加算器36は、sel1と符号を反転したsel5とを加算する加算処理を行う。
The
クロスバ37には、加算器35の出力add_o_1、加算器36の出力add_o_2、加算器32の出力add_o_3、加算器33の出力add_o_4、sel6、sel7、および、sel8が、入力可能である。
An output add_o_1 from the
クロスバ37は、入力された信号のそれぞれを、制御信号C_sigに従って、out1、out2、out3、 out4として出力する。
The
図3は、前段転置ユニット205を示したブロック図である。
FIG. 3 is a block diagram showing the
図3において、複素数データin1は、前段第一加算ユニット204からのout1であり、複素数データin2は、前段第一加算ユニット204からのout2であり、複素数データin3は、前段第一加算ユニット204からのout3であり、複素数データin4は、前段第一加算ユニット204からのout4であり、制御信号C_sigは、前段第一加算ユニット204からのC_outである。
In FIG. 3, complex number data in1 is out1 from the first stage
図3において、前段転置ユニット205は、複数の遅延回路Dと、クロスバ(Xbar)41、42および43と、を含む。なお、図3内の各遅延回路Dは、入力されたデータを1クロック遅延させる。
In FIG. 3, the
前段転置ユニット205は、入力された複素数データin1, in2, in3およびin4と、同じく入力された制御信号C_sigと、をペアとして扱う。すなわち、前段転置ユニット205内のクロスバなどに入力される個々の複素数データには、制御信号C_sigが付加されることになる。
The
前段転置ユニット205は、制御信号と複素数データとの入力時に、制御信号と複素数データをペアにする処理を行う。以下では、この処理を「統合」と呼ぶこととする。
The
クロスバ41は、複素数データin1からin4の各々を、それぞれの複素数データに統合された制御信号C_sigに従って、Sel_1_1からSel_1_7のいずれかとして出力する。
The
クロスバ42は、遅延回路Dからの出力D_Sel_1_1からD_Sel_1_4を、各データに統合されている制御信号C_sigに従って、Sel_2_1からSel_2_4のいずれかとして出力する。 The crossbar 42 outputs the outputs D_Sel_1_1 to D_Sel_1_4 from the delay circuit D as one of Sel_2_1 to Sel_2_4 according to the control signal C_sig integrated with each data.
クロスバ43は、D_dt_1からD_dt_11の各信号を、それぞれに統合された制御信号に従って、Sel_3_1からSel_3_4のいずれかとして出力する。
The
Sel_3_1からSel_3_4の各信号は、制御信号と複素数データとに分離される。この分離された信号のうち、複素数データのみが、本ユニットからの出力out1、out2、out3、out4として出力される。一方、制御信号は、図3のGNDで示したグラウンドに入力され、以降使用されることはない。また、制御信号C_sigは、10クロック遅延され、C_outとして出力される。 Each signal of Sel_3_1 to Sel_3_4 is separated into a control signal and complex data. Of the separated signals, only complex data is output as outputs out1, out2, out3, and out4 from this unit. On the other hand, the control signal is input to the ground indicated by GND in FIG. 3 and is not used thereafter. The control signal C_sig is delayed by 10 clocks and output as C_out.
図4は、前段第二加算ユニット206を示したブロック図である。
FIG. 4 is a block diagram showing the pre-stage
図4において、複素数データin1は、前段転置ユニット205からのout1であり、複素数データin2は、前段転置ユニット205からのout2であり、複素数データin3は、前段転置ユニット205からのout3であり、複素数データin4は、前段転置ユニット205からのout4であり、制御信号C_sigは、前段転置ユニット205からのC_outである。
In FIG. 4, the complex number data in1 is out1 from the preceding
図4において、前段第二加算ユニット206は、複数の遅延回路Dと、クロスバ(Xbar)&符号反転器51と、加算器52、53、54および55と、を含む。
In FIG. 4, the front stage
クロスバ(Xbar)&符号反転器51は、制御信号C_sigに従って、入力in1からin4と、遅延回路Dの出力regr1からregr5と、の符号を反転し、それぞれを、sel1からsel9のいずれかとして出力する。
The crossbar (Xbar) & sign
加算器52は、sel1とsel2とsel3とを加算する加算処理を行う。加算器53は、sel4とsel5とを加算する加算処理を行う。加算器54は、sel6とsel7とを加算する加算処理を行う。加算器55は、sel8とsel9とを加算する加算処理を行う。
The
これら加算器の出力は、それぞれ、out1, out2, out3, out4として、本ユニットから出力される。 The outputs of these adders are output from this unit as out1, out2, out3, and out4, respectively.
また、制御信号C_sigは、1クロック遅延されて、C_outとして出力される。 Further, the control signal C_sig is delayed by one clock and output as C_out.
図5は、前段第三加算ユニット207を示したブロック図である。
FIG. 5 is a block diagram showing the pre-stage
図5において、複素数データin1は、前段第二加算ユニット206からのout1であり、複素数データin2は、前段第二加算ユニット206からのout2であり、複素数データin3は、前段第二加算ユニット206からのout3であり、複素数データin4は、前段第二加算ユニット206からのout4であり、制御信号C_sigは、前段第二加算ユニット206からのC_outである。
In FIG. 5, the complex number data in1 is out1 from the previous stage
前段第三加算ユニット207は、複数の遅延回路Dと、クロスバ(Xbar)&符号反転器61と、加算器62、63、64および65と、を含む。
The front
クロスバ(Xbar)&符号反転器61は、制御信号C_sigに従って、入力in1からin4と、遅延回路Dの出力regr1からregr4と、の符号を反転し、それぞれを、sel1からsel10のいずれかとして出力する。
The crossbar (Xbar) & sign
加算器62は、sel1とsel2とsel3とを加算する加算処理を行う。加算器63は、sel4とsel5とを加算する加算処理を行う。加算器64は、sel6とsel7とsel8とを加算する加算処理を行う。加算器65は、sel9とsel10とを加算する加算処理を行う。
The
これら加算器の出力は、それぞれ、out1, out2, out3, out4として出力される。 The outputs of these adders are output as out1, out2, out3, and out4, respectively.
また、制御信号C_sigは、C_outとして出力される。 The control signal C_sig is output as C_out.
図6は、制御ユニット209と乗算器208を示したブロック図である。
FIG. 6 is a block diagram showing the
図6において、複素数データin1は、前段第三加算ユニット207からのout1であり、複素数データin2は、前段第三加算ユニット207からのout2であり、複素数データin3は、前段第三加算ユニット207からのout3であり、複素数データin4は、前段第三加算ユニット207からのout4であり、制御信号C_sigは、前段第三加算ユニット207からのC_outである。
In FIG. 6, the complex number data in1 is out1 from the preceding stage
図6において、制御ユニット209は、後述するクロック数信号に加算するオフセットを格納したオフセットテーブル702と、乗算係数メモリ704および705と、加算器703と、セレクタ706と、を含む。
In FIG. 6, the
乗算器208は、クロスバ(Xbar)701と、入力信号と乗算係数の、実数部と虚数部をそれぞれ乗算する並列乗算器707、708、709および710と、純虚数を乗算する純虚数乗算器711、712、713および714と、セレクタ715、716、717および718と、を含む。
The
制御ユニット209においては、制御信号C_sigが入力されると、C_sigに従ってオフセットテーブル702からオフセットが出力される。加算器703は、そのオフセットとクロック数信号とを加算する。この加算結果に従って、乗算係数メモリ704および705のそれぞれから、乗算係数が出力される。セレクタ706は、後述のDFT/IDFT選択信号に従って、乗算係数メモリ704からの乗算係数と乗算係数メモリ705からの乗算係数とのいずれかを、mult_cf1からmult_cf4として出力する。
In the
なお、クロック数信号、DFT/IDFT選択信号、および、メモリやテーブルの構成とそのアクセス方法については、後で詳細を説明する。 Details of the clock number signal, the DFT / IDFT selection signal, the configuration of the memory and table, and the access method thereof will be described later.
乗算器208では、クロスバ(Xbar)701は、制御信号C_sigに従って、入力in1からin4のそれぞれを、sel1からsel5のいずれかとして出力する。
In
並列乗算器707、708、709および710は、それぞれ、sel2とmult_cf4、sel3とmult_cf3、sel4とmult_cf2、sel5とmult_cf1を乗算し、それら乗算結果を、mult_sel1からmult_sel4のいずれかとして出力する。
The
純虚数乗算器711、712、713および714は、それぞれ、mult_sel1からmult_sel4に対し、純虚数を乗算し、それら乗算結果を、mult_i_sel1からmult_i_sel4のいずれかとして出力する。
Pure
セレクタ715、716、717および718は、それぞれ、C_sigに従って、mult_sel1からmult_sel4と、mult_i_sel1からmult_i_sel4とを、それぞれ選択的にout1からout4として出力する。
The
なお、クロスバ(Xbar)701の出力sel1は、out1として出力される。また、制御信号C_sigは、C_outとして出力される。 The output sel1 of the crossbar (Xbar) 701 is output as out1. The control signal C_sig is output as C_out.
図7は、後段第一加算ユニット210を示したブロック図である。
FIG. 7 is a block diagram showing the post-stage
図7において、複素数データin1は、乗算器208からのout1であり、複素数データin2は、乗算器208からのout2であり、複素数データin3は、乗算器208からのout3であり、複素数データin4は、乗算器208からのout4であり、複素数データin5は、乗算器208からのout5であり、制御信号C_sigは、乗算器208からのC_outである。
In FIG. 7, the complex number data in1 is out1 from the
図7において、後段第一加算ユニット210は、クロスバ(Xbar)81および85と、加算器82、83および84と、を含む。
In FIG. 7, the post-stage
クロスバ(Xbar)81は、制御信号C_sigに従って、入力in1からin6のそれぞれを、sel1からsel9のいずれかとして出力する。 The crossbar (Xbar) 81 outputs each of the inputs in1 to in6 as one of sel1 to sel9 according to the control signal C_sig.
加算器82は、sel4とsel5を加算し、その加算結果add_s1を出力する。加算器83は、sel6とsel7を加算し、その加算結果add_s2を出力する。加算器84は、sel8とsel9を加算し、その加算結果add_s3を出力する。
The
クロスバ(Xbar)85は、sel1、sel2、sel3、add_s1、add_s2およびadd_s3を入力可能である。クロスバ(Xbar)85は、C_sigに従って、入力信号のそれぞれを、out1からout4のいずれかとして出力する。 The crossbar (Xbar) 85 can input sel1, sel2, sel3, add_s1, add_s2, and add_s3. The crossbar (Xbar) 85 outputs each of the input signals as one of out1 to out4 according to C_sig.
また、制御信号C_sigは、C_outとして出力される。 The control signal C_sig is output as C_out.
図8は、後段第二加算ユニット211を示したブロック図である。
FIG. 8 is a block diagram showing the second-stage
図8において、複素数データin1は、後段第一加算ユニット210からのout1であり、複素数データin2は、後段第一加算ユニット210からのout2であり、複素数データin3は、後段第一加算ユニット210からのout3であり、複素数データin4は、後段第一加算ユニット210からのout4であり、制御信号C_sigは、後段第一加算ユニット210からのC_outである。
In FIG. 8, complex number data in1 is out1 from the post-stage
図8において、後段第二加算ユニット211は、複数の遅延回路Dと、クロスバ(Xbar)901と、加算器902、903、904および905と、純虚数乗算器906、907、908および909と、Sel(セレクタ)910、911、912および913と、を含む。
In FIG. 8, the second-stage
クロスバ(Xbar)901は、制御信号C_sigに従って、入力in1からin4と遅延回路Dの出力regr1からregr10とのそれぞれを、sel1からsel12のいずれかとして出力する。 The crossbar (Xbar) 901 outputs each of the inputs in1 to in4 and the outputs regr1 to regr10 of the delay circuit D as one of sel1 to sel12 according to the control signal C_sig.
加算器902は、sel1とsel2とsel3とを加算して、加算結果add_s1を出力する。加算器903は、sel4とsel5とsel6とを加算して、加算結果add_s2を出力する。加算器904は、sel7とsel8とsel9とを加算して、加算結果add_s3を出力する。加算器904は、sel10とsel11とsel12とを加算して、加算結果add_s4を出力する。
The
純虚数乗算器906は、加算結果add_s1に純虚数を乗算して、乗算結果add_i_s1を出力する。純虚数乗算器907は、加算結果add_s2に純虚数を乗算して、乗算結果add_i_s2を出力する。純虚数乗算器908は、加算結果add_s3に純虚数を乗算して、乗算結果add_i_s3を出力する。純虚数乗算器909は、加算結果add_s4に純虚数を乗算して、乗算結果add_i_s4を出力する。
The pure
セレクタSel910は、C_sigに従って、加算器902の出力か純虚数乗算器906の出力かを選択して、その選択結果を、out1として出力する。セレクタSel911は、C_sigに従って、加算器903の出力か純虚数乗算器907の出力かを選択して、その選択結果を、out2として出力する。セレクタSel912は、C_sigに従って、加算器904の出力か純虚数乗算器908の出力かを選択して、その選択結果を、out3として出力する。セレクタSel913は、C_sigに従って、加算器905の出力か純虚数乗算器909の出力かを選択して、その選択結果を、out4として出力する。
The selector Sel910 selects either the output of the
C_sigは、2クロック遅延され、C_outとして出力される。 C_sig is delayed by 2 clocks and output as C_out.
図9は、後段転置ユニット212を示したブロック図である。 FIG. 9 is a block diagram showing the rear stage transposition unit 212.
図9において、複素数データin1は、後段第二加算ユニット211からのout1であり、複素数データin2は、後段第二加算ユニット211からのout2であり、複素数データin3は、後段第二加算ユニット211からのout3であり、複素数データin4は、後段第二加算ユニット211からのout4であり、制御信号C_sigは、後段第二加算ユニット211からのC_outである。
In FIG. 9, the complex number data in1 is out1 from the second-stage
図9において、後段転置ユニット212は、複数の遅延回路Dと、クロスバ(Xbar)1001、1002、1003および1004と、を含む。 In FIG. 9, the rear transposition unit 212 includes a plurality of delay circuits D and crossbars (Xbar) 1001, 1002, 1003, and 1004.
後段転置ユニット212では、まず、入力in1、in2、in3、in4が、制御信号C_sigと統合される。 In the rear stage transposition unit 212, first, the inputs in1, in2, in3, and in4 are integrated with the control signal C_sig.
クロスバ(Xbar)1001は、これらの信号を、それぞれ、Sel1_1からSel1_7のいずれかとして出力する。 The crossbar (Xbar) 1001 outputs these signals as one of Sel1_1 to Sel1_7, respectively.
クロスバ(Xbar)1002は、Sel1_1と、遅延回路Dの出力D_Sel1_1からD_Sel1_3を、それぞれが有する制御信号に従って、Sel2_1からSel2_4のいずれかに振り分ける。 The crossbar (Xbar) 1002 distributes Sel1_1 and the outputs D_Sel1_1 to D_Sel1_3 of the delay circuit D to any of Sel2_1 to Sel2_4 according to the control signal of each.
クロスバ(Xbar)1003は、遅延回路Dの出力D_Sel2_1からD_Sel2_3を、それぞれが有する制御信号に従って、Sel3_1、Sel3_2、Sel3_3のいずれかに振り分ける。 The crossbar (Xbar) 1003 distributes the outputs D_Sel2_1 to D_Sel2_3 of the delay circuit D to one of Sel3_1, Sel3_2, and Sel3_3 in accordance with the control signal of each.
クロスバ(Xbar)1004は、D_Sel3_1からD_Sel3_3と、D_Sel2_1からD_Sel2_3と、Sel2_4、Sel1_5、Sel1_6、および、Sel1_7を、それぞれが有する制御信号に従って、Sel4_1からSel4_4のいずれかに振り分ける。 The crossbar (Xbar) 1004 distributes D_Sel3_1 to D_Sel3_3, D_Sel2_1 to D_Sel2_3, Sel2_4, Sel1_5, Sel1_6, and Sel1_7 to any one of Sel4_1 to Sel4_4.
Sel4_1からSel4_4は、制御信号と複素数データに分離される。複素数データのそれぞれは、out1、out2、out3、out4のいずれかとして出力される。一方、制御信号は、図9のGNDで示されるグラウンドへと出力され、以降使用されることはない。 Sel4_1 to Sel4_4 are separated into a control signal and complex data. Each of the complex number data is output as one of out1, out2, out3, and out4. On the other hand, the control signal is output to the ground indicated by GND in FIG. 9 and is not used thereafter.
また、制御信号C_sigは、遅延回路Dによって3クロック遅延され、C_outとして出力される。 Further, the control signal C_sig is delayed by 3 clocks by the delay circuit D and output as C_out.
図10は、後段第三加算ユニット213を示したブロック図である。 FIG. 10 is a block diagram showing the post-stage third addition unit 213.
図10において、複素数データin1は、後段転置ユニット212からのout1であり、複素数データin2は、後段転置ユニット212からのout2であり、複素数データin3は、後段転置ユニット212からのout3であり、複素数データin4は、後段転置ユニット212からのout4であり、制御信号C_sigは、後段転置ユニット212からのC_outである。 In FIG. 10, complex data in1 is out1 from the rear transposition unit 212, complex data in2 is out2 from the rear transposition unit 212, and complex data in3 is out3 from the rear transposition unit 212. Data in4 is out4 from the rear stage transposition unit 212, and the control signal C_sig is C_out from the rear stage transposition unit 212.
図10において、後段第三加算ユニット213は、複数の遅延回路Dと、クロスバ(Xbar)1101および1108と、加算器1102、1103、1106および1107と、Sel(セレクタ)1104および1105と、を含む。
In FIG. 10, the rear stage third addition unit 213 includes a plurality of delay circuits D, crossbars (Xbar) 1101 and 1108,
クロスバ(Xbar)1101は、制御信号C_sigに従って、入力in1からin4と遅延回路Dの出力regr1からregr5とのそれぞれを、sel1からsel7のいずれかとして出力する。 The crossbar (Xbar) 1101 outputs each of the inputs in1 to in4 and the outputs regr1 to regr5 of the delay circuit D as one of sel1 to sel7 according to the control signal C_sig.
加算器1102は、sel1とsel2を加算して、加算結果add_o_1を出力する。加算器1103は、sel1と符号を反転したsel2とを加算し、加算結果add_o_2を出力する。
The
セレクタSel1104は、制御信号C_sigに従って、sel1とadd_o_2のいずれかを選択し、その選択結果をadd_sel1として出力する。セレクタSel1105は、制御信号C_sigに従って、sel3とadd_o_1のいずれかを選択し、その選択結果をadd_sel2として出力する。 The selector Sel1104 selects either sel1 or add_o_2 according to the control signal C_sig, and outputs the selection result as add_sel1. The selector Sel1105 selects either sel3 or add_o_1 according to the control signal C_sig, and outputs the selection result as add_sel2.
加算器1106は、add_sel2とsel4を加算して、加算結果add_o_3を出力する。加算器1107は、add_sel2と符号を反転したsel4を加算して、加算結果add_o_4を出力する。
The
クロスバ(Xbar)1108は、add_sel1、add_o_1、add_o_3、add_o_4、sel5、sel6およびsel7を入力可能である。クロスバ(Xbar)1108は、制御信号C_sigに従って、入力信号のそれぞれを、out1からout4のいずれかとして出力する。 The crossbar (Xbar) 1108 can input add_sel1, add_o_1, add_o_3, add_o_4, sel5, sel6 and sel7. The crossbar (Xbar) 1108 outputs each of the input signals as one of out1 to out4 according to the control signal C_sig.
次に、演算装置200が、制御信号に従って、3、5、9、15点DFT/IDFTを行う例を説明する。
Next, an example in which the
まず、演算装置200が処理する3点DFT/IDFT、5点DFT/IDFT、9点DFT/IDFT、15点DFT/IDFTのデータフローのそれぞれを、図11、図12、図13、図14に示す。
First, the data flows of the 3-point DFT / IDFT, 5-point DFT / IDFT, 9-point DFT / IDFT, and 15-point DFT / IDFT processed by the
なお、DFTとIDFTは、後述の乗算係数を変えるだけで、その他は同じデータフローで処理することができる。このため、本説明では、各点数のDFTとIDFTを、それぞれの点数について、1つの図、すなわち、3点DFT/IDFTを図11、5点DFT/IDFTを図12、9点DFT/IDFTを図13、15点DFT/IDFTを図14を用いて説明する。 Note that DFT and IDFT can be processed with the same data flow by simply changing the later-described multiplication coefficient. For this reason, in this description, DFT and IDFT for each score are shown in one diagram for each score, that is, three-point DFT / IDFT in FIG. 11, five-point DFT / IDFT in FIG. 12, and nine-point DFT / IDFT. 13 and 15 point DFT / IDFT will be described with reference to FIG.
図11、図12、図13、図14において、矢印が重なる箇所は加算を示し、“−”で示すボックスは、そこを通過した信号の符号を反転することを意味し、“i”で示すボックスは、そこを通過した信号に純虚数を乗算することを示し、“×”で示す記号は、そこを通過する信号と、×記号の上部に矢印で示された乗算係数と、を乗算することを示す。 11, 12, 13, and 14, a portion where the arrows overlap indicates addition, and a box indicated by “−” indicates that the sign of the signal that has passed there is inverted, and is indicated by “i”. The box indicates that the signal passing there is multiplied by a pure imaginary number, and the symbol indicated by “x” multiplies the signal passing there by the multiplication factor indicated by the arrow above the × symbol. It shows that.
また、15点DFT/IDFTは、処理の途中で並べ替えを行う必要があるが、その処理は、図14の“並べ替え”と記載された箇所で行われる。 Further, the 15-point DFT / IDFT needs to be rearranged in the middle of the process, but the process is performed at a location indicated as “reorder” in FIG.
また、各DFT/IDFTの入力Xおよび出力Yのインデクスは、数1で示した式のX、Yのインデクスに対応する。
Also, the input X and output Y indexes of each DFT / IDFT correspond to the X and Y indexes of the equation shown in
次に、入力される信号について説明する。 Next, input signals will be described.
演算装置200に入力されるデータは、複素数データであり、実数部と虚数部は、それぞれ、浮動小数形式で表されたデータであるものとする。
Data input to the
また、本ユニットに入力される制御信号C_sigは、図15に記載のフォーマットを使用する。図15に示したとおり、C_sigは、DFT/IDFTの3、5、9、15点のいずれかを2ビットで示す点数信号と、点数信号で示されたDFT/IDFTが開始されてから経過したクロック数を3ビットで示すクロック数信号と、制御信号で行う処理がDFTであるのかIDFTであるのかを1ビットで示すDFT/IDFT選択信号と、を含む。なお、点数信号とDFT/IDFT点数の対応、および、DFT/IDFT選択信号とDFT、IDFTの対応は、図16に示すとおりである。 The control signal C_sig input to this unit uses the format shown in FIG. As shown in FIG. 15, C_sig has passed since the start of the DFT / IDFT indicated by the point signal and the DFT / IDFT indicated by the point signal in any of 3, 5, 9, and 15 points of DFT / IDFT. A clock number signal indicating the number of clocks in 3 bits, and a DFT / IDFT selection signal indicating in 1 bit whether the process performed by the control signal is DFT or IDFT. The correspondence between the score signal and the DFT / IDFT score and the correspondence between the DFT / IDFT selection signal and the DFT / IDFT are as shown in FIG.
次に、図6に記載のオフセットテーブル702の構成を図17に示す。 Next, FIG. 17 shows the configuration of the offset table 702 shown in FIG.
オフセットテーブル702は、図15に示す点数信号をアドレスとして用い、各アドレスが示す内容には、乗算係数メモリ704、705にアクセスするためのオフセットが格納されている。すなわち、外部よりオフセットテーブル702に点数信号が入力されると、それに対応したオフセットがオフセットテーブル702より読み出され、オフセットテーブル702の外部へと出力される。
The offset table 702 uses the point signal shown in FIG. 15 as an address, and the contents indicated by each address store an offset for accessing the
次に、DFT乗算係数メモリ704、及びIDFT乗算係数メモリ705について図18を用いて説明する。
Next, the DFT
図18に示すように、DFT乗算係数メモリ704およびIDFT乗算係数メモリ705は、それぞれ4つのメモリを持つ。また、これら4つのメモリにアドレスが入力されると、図18の“アドレス”に記載の値に対応した行の、各メモリに格納された4つの値が読み出され、図6のmult_cf1, mult_cf2, mult_cf3, mult_cf4として、それぞれ出力される。
As shown in FIG. 18, the DFT
例として、DFT乗算係数メモリ704にアドレス“2”が入力されたとすると、メモリ1からは0.559017、メモリ2からは1.538842、メモリ3からは-0.36327、メモリ4からは-0.58779が読み出される。
As an example, if the address “2” is input to the DFT
なお、図18には、図11、図12、図13、図14に示した乗算係数の係数名も併記した。また、表内の斜線は、その箇所に値が格納されていないことを示すものである。さらに、DFT乗算係数メモリおよびIDFT乗算係数メモリの4つのメモリに入力されるアドレスとは、クロック数信号と、オフセットテーブル702から読み出されたオフセット値と、を加算したものである。 In FIG. 18, the coefficient names of the multiplication coefficients shown in FIGS. 11, 12, 13, and 14 are also shown. A diagonal line in the table indicates that no value is stored at that location. Furthermore, the addresses input to the four memories, the DFT multiplication coefficient memory and the IDFT multiplication coefficient memory, are obtained by adding the clock number signal and the offset value read from the offset table 702.
演算装置200への3点、5点、9点、15点のDFT/IDFTのデータの入力フォーマットを、図19を用いて説明する。
An input format of 3-point, 5-point, 9-point, and 15-point DFT / IDFT data to the
図19は、3点、5点、9点、15点DFT/IDFTの入力XをDFT/IDFT回路に入力して、出力Yを得る様子を示した図である。 FIG. 19 is a diagram illustrating a state where an input X of a 3-point, 5-point, 9-point, and 15-point DFT / IDFT is input to a DFT / IDFT circuit to obtain an output Y.
なお、入力Xの上部に示したCは、制御信号を示しており、C(DFT/IDFT選択信号値、クロック数、点数信号)のフォーマットとなっている。なお、本説明においては、DFTを例として説明を行うが、IDFTは後述する乗算ユニット部以外はDFTと同一の処理であるため、説明を省略する。 Note that C shown at the top of the input X indicates a control signal, and has a format of C (DFT / IDFT selection signal value, number of clocks, point signal). In this description, DFT will be described as an example, but IDFT is the same processing as DFT except for a multiplication unit section described later, and thus description thereof is omitted.
なお、5点DFT/IDFTについて、演算装置200では3つの系列を同時に行うことができる。
In addition, with respect to the 5-point DFT / IDFT, the
ここで、系列とは、図12に示す処理を1回分とする処理である。よって、3つの系列とは、図12に示す処理を3つ同時に行うことを意味する。 Here, the series is a process for performing the process shown in FIG. 12 once. Therefore, the three series means that three processes shown in FIG. 12 are performed simultaneously.
以下では3つの系列のそれぞれを、系列0、系列1、系列2として呼ぶこととする。
Hereinafter, each of the three series will be referred to as
図19のXの()内のインデクスは、(図12の各信号に付されたインデクス、系列番号)を示している。例として、X(0,0)は、系列0のX0を示すものである。
The index in parentheses (X) in FIG. 19 indicates (index and sequence number assigned to each signal in FIG. 12). As an example, X (0,0) indicates X0 of the
(3点DFT/IDFT)
次に、演算装置200による3点DFT/IDFTの処理を説明する。
(3-point DFT / IDFT)
Next, three-point DFT / IDFT processing by the
図20を用いて、前段第一加算ユニット204の処理を説明する。なお、図20において、何も記述されていない箇所の値は0値をとるものとし、以降に示すタイムチャートも同様であるとする。
The process of the first-stage
前段第一加算ユニット204では、図11に示すb0、b1、b2を算出する処理を、1サイクルで行う。
In the first-stage
具体的には、入力されたC_sigに従って、クロスバ(Xbar)31が、sel1としてX(0)を、sel3としてX(1)を、sel4としてX(2)を出力する。 Specifically, according to the input C_sig, the crossbar (Xbar) 31 outputs X (0) as sel1, X (1) as sel3, and X (2) as sel4.
次に、加算器35がb0を出力し、加算器32がb1を出力し、加算器33がb2を出力する。
Next, the
最後に、Xbar37が、制御信号C_sigに従って、b0をout1に出力し、b1をout2に出力し、b2をout3に出力する。
Finally,
このように、Xbarおよびセレクタは、入力されたC_sigによって、入力の出力先を変更する。以下では、各Xbarやセレクタの詳しい説明は省略し、信号名に出力される信号値のみを説明中で示すこととする。 In this way, the Xbar and the selector change the output destination of the input according to the input C_sig. In the following, detailed description of each Xbar and selector is omitted, and only the signal value output in the signal name is shown in the description.
図21を用いて、前段転置ユニット205の処理を説明する。
The process of the
前段転置ユニット205では、まず、入力されたデータin1、in2、in3を、クロスバ(Xbar)41が、D_Sel_1_1、D_Sel_1_2、D_Sel_1_3として出力する。
In the
次に、クロスバ(Xbar)42が、D_Sel_1_1からD_Sel_1_3を、それぞれSel_2_1からSel_2_3として出力し、クロスバ(Xbar)43が、out1、out2、out3を出力する。 Next, the crossbar (Xbar) 42 outputs D_Sel_1_1 to D_Sel_1_3 as Sel_2_1 to Sel_2_3, respectively, and the crossbar (Xbar) 43 outputs out1, out2, and out3.
図22を用いて、前段第二加算ユニット206の処理内容を説明する。
With reference to FIG. 22, the processing contents of the pre-stage
前段転置ユニット205では、特に加算処理を行わず、入力されたデータを遅延回路Dによって遅延させ、次のユニットに出力する。
The
図23を用いて、前段第三加算ユニット207の処理内容を説明する。
The processing content of the pre-stage
前段第三加算ユニット207では、特に加算処理を行わず、入力されたデータをスルーさせ、次のユニットに出力する。
The pre-stage
図24を用いて、制御ユニット209、乗算器208の処理内容を説明する。
The processing contents of the
制御ユニット209は、1サイクル目で乗算係数T_3_1およびT_3_2を読み出し、乗算器208は、それをb1、b2に乗算して、out2、out3に出力する。なお、乗算器208は、b0には、特に係数を乗算せず、out1として出力する。
The
図25を用いて、後段第一加算ユニット210の処理内容を説明する。
The processing content of the post-stage
後段第一加算ユニット210は、特に処理を行わず、入力データin1、in2、in3を、それぞれsel1、sel2、sel3として出力し、それをout1、out2、out3として出力する。
The post-stage
図26を用いて、後段第二加算ユニット211の処理内容を説明する。
The processing contents of the second-stage
後段第二加算ユニット211は、特に加算処理を行わないが、入力されたデータを2クロック遅延させて出力する。具体的には、後段第二加算ユニット211は、入力データin1、in2、in3をそれぞれregr2、regr5、regr7として出力し、さらに、それらをsel1、sel4、sel7として出力する。その後、各加算器82および84は、それぞれ、sel4、sel7に0を加算することによって、sel4、sel7と同じ値のadd_s1、add_s2を出力する。最終的にout1、out2、out3が出力される。
The
図27を用いて、後段転置ユニット212の処理内容を説明する。 The processing content of the rear stage transposition unit 212 will be described with reference to FIG.
後段転置ユニット212では、入力されたデータin1、in2、in3を、Sel_1_1、Sel_1_2、Sel_1_3として出力し、その後、遅延回路Dによって遅延された信号を、クロスバ(Xbar)1002が、Sel_2_1、Sel_2_2、Sel_2_3として出力する。 In the rear transposition unit 212, the input data in1, in2, and in3 are output as Sel_1_1, Sel_1_2, and Sel_1_3, and then the signal delayed by the delay circuit D is sent to the crossbar (Xbar) 1002 by the Sel_2_1, Sel_2_2, Sel_2_3 Output as.
このとき、後段転置ユニット212は、特に入力されたデータを入れ替える処理などは行わない。その後、それぞれの信号は、D_Sel_2_1、D_Sel_2_2、D_Sel_2_3として出力され、その後、クロスバ(Xbar)1004およびSel_4_1、Sel_4_2、Sel_4_3を通過してout1、out2、out3として出力される。 At this time, the rear-stage transposition unit 212 does not perform a process of exchanging input data in particular. Thereafter, the respective signals are output as D_Sel_2_1, D_Sel_2_2, and D_Sel_2_3, and then output as out1, out2, and out3 through the crossbar (Xbar) 1004 and Sel_4_1, Sel_4_2, and Sel_4_3.
図28を用いて、後段第三加算ユニット213の処理内容を説明する。 The processing content of the post-stage third addition unit 213 will be described with reference to FIG.
後段第三加算ユニット213では、入力されたデータを1クロック遅延させた上で加算処理を行う。具体的には、入力データin1、in2、in3は、それぞれ、regr2、regr3、reg4として出力される。その後、加算器1102がm0+m1の計算を行い、加算器1107がm0+m1-m2の計算を行う。また、m0はsel5として出力される。最後に、クロスバ(Xbar)1108から、3点DFT/IDFT結果y0、y1およびy2が、それぞれ、out1、out2、out3として出力される。
The post-stage third addition unit 213 performs addition processing after delaying the input data by one clock. Specifically, the input data in1, in2, and in3 are output as regr2, regr3, and reg4, respectively. Thereafter, the
このように、演算装置200は、3点DFT/IDFTを指示する制御信号を受け付けると、3点DFT/IDFTを実行する。
As described above, when the
(5点DFT/IDFT)
次に、演算装置200による5点DFT/IDFTの処理を説明する。
(5-point DFT / IDFT)
Next, the 5-point DFT / IDFT processing by the
図29を用いて、前段第一加算ユニット204の処理内容を説明する。
The processing contents of the first stage
前段第一加算ユニット204は、特に加算処理を行わず、データをスルーして出力する。具体的には、前段第一加算ユニット204は、入力データin1、in2、in3を、それぞれ、sel6、sel7、sel8として出力する。また、制御信号は、第1サイクル目より1クロックずつ順に出力される。
The pre-stage
図30を用いて、前段転置ユニット205の処理内容を説明する。
The processing contents of the
前段転置ユニット205は、5点DFT/IDFTのデータの転置処理を行う。
The
具体的には、第1サイクルにおいて、in1、in2、in3として入力されたデータX(0,0)、X(0,1)、X(0,2)が、それぞれ、Sel_1_5、Sel_1_6、Sel_1_7として出力され、遅延回路Dに入力される。 Specifically, in the first cycle, the data X (0,0), X (0,1), X (0,2) input as in1, in2, and in3 are respectively Sel_1_5, Sel_1_6, and Sel_1_7 Is output and input to the delay circuit D.
次に、第2サイクルにおいては、in1、in2、in3として入力されたデータX(1,0)、X(1,1)、X(1,2)が、それぞれ、Sel_1_1、Sel_1_2、Sel_1_4として出力され、遅延回路Dに入力される。 Next, in the second cycle, the data X (1,0), X (1,1), X (1,2) input as in1, in2, and in3 are output as Sel_1_1, Sel_1_2, and Sel_1_4, respectively And input to the delay circuit D.
次に、第3サイクルにおいては、in1、in2、in3として入力されたデータX(2,0)、X(2,1)、X(2,2)が、それぞれ、Sel_1_1、Sel_1_2、Sel_1_4として出力され、遅延回路Dに入力される。 Next, in the third cycle, the data X (2,0), X (2,1), X (2,2) input as in1, in2, and in3 are output as Sel_1_1, Sel_1_2, and Sel_1_4, respectively And input to the delay circuit D.
次に、第4サイクルにおいては、in1、in2、in3として入力されたデータX(3,0)、X(3,1)、X(3,2)が、それぞれ、Sel_1_1、Sel_1_2、Sel_1_4として出力され、遅延回路Dに入力される。 Next, in the fourth cycle, the data X (3,0), X (3,1), and X (3,2) input as in1, in2, and in3 are output as Sel_1_1, Sel_1_2, and Sel_1_4, respectively. And input to the delay circuit D.
次に、第5サイクルにおいては、in1、in2、in3として入力されたデータX(4,0)、X(4,1)、X(4,2)が、それぞれ、Sel_1_1、Sel_1_2、Sel_1_4として出力され、遅延回路Dに入力される。同時に、D_Sel_1_1として、C(0,01,1)と統合されたX(1,0)が出力され、これはSel_2_1として出力される。 Next, in the fifth cycle, the data X (4,0), X (4,1), and X (4,2) input as in1, in2, and in3 are output as Sel_1_1, Sel_1_2, and Sel_1_4, respectively. And input to the delay circuit D. At the same time, X (1,0) integrated with C (0,01,1) is output as D_Sel_1_1, which is output as Sel_2_1.
次に、第6サイクルにおいては、D_Sel_1_1、D_Sel_1_2として、C(0,01,2)と統合されたX(2,0)、C(0,01,1)と統合されたX(1,1)が、それぞれ、出力される。このうち、C(0,01,2)と統合されたX(2,0)は、Sel_2_2として出力される。一方、C(0,01,1)と統合されたX(1,1)は、Sel_2_1として出力される。このように、前段転置ユニット205は、入力されたデータの順序を入れ替えて出力する。
Next, in the sixth cycle, as D_Sel_1_1 and D_Sel_1_2, X (2,0) integrated with C (0,01,2) and X (1,1 integrated with C (0,01,1) ) Are respectively output. Among these, X (2,0) integrated with C (0,01,2) is output as Sel_2_2. On the other hand, X (1,1) integrated with C (0,01,1) is output as Sel_2_1. In this way, the
次に、第7サイクルにおいては、D_Sel_1_1、D_Sel_1_2として、C(0,01,3)と統合されたX(3,0)、C(0,01,1)と統合されたX(2,1)が、それぞれ、出力される。また、C(0,01,3)と統合されたX(3,0)は、Sel_2_3として出力される。C(0,01,1)と統合されたX(2,1)は、Sel_2_2として出力される。 Next, in the seventh cycle, as D_Sel_1_1 and D_Sel_1_2, X (3,0) integrated with C (0,01,3) and X (2,1 integrated with C (0,01,1) ) Are respectively output. X (3,0) integrated with C (0,01,3) is output as Sel_2_3. X (2,1) integrated with C (0,01,1) is output as Sel_2_2.
次に、第8サイクルにおいては、D_Sel_1_1、D_Sel_1_2、D_Sel_1_4として、C(0,01,4)と統合されたX(4,0)、C(0,01,1)と統合されたX(3,1)、 C(0,01,1)と統合されたX(1,2)が、それぞれ、出力される。また、C(0,01,4)と統合されたX(4,0)は、Sel_2_4として出力される。C(0,01,1)と統合されたX(3,1)は、Sel_2_3として出力される。C(0,01,1)と統合されたX(1,2)は、Sel_2_1として出力される。 Next, in the eighth cycle, as D_Sel_1_1, D_Sel_1_2, and D_Sel_1_4, X (4,0) integrated with C (0,01,4), X (3 with C (0,01,1) integrated) , 1) and X (1,2) integrated with C (0,01,1) are output respectively. X (4,0) integrated with C (0,01,4) is output as Sel_2_4. X (3,1) integrated with C (0,01,1) is output as Sel_2_3. X (1,2) integrated with C (0,01,1) is output as Sel_2_1.
次に、第9サイクルにおいては、D_Sel_1_2、D_Sel_1_4として、C(0,01,1)と統合されたX(4,1)、C(0,01,1)と統合されたX(2,2)が、それぞれ、出力される。また、C(0,01,1)と統合されたX(4,1)は、Sel_2_4として出力される。C(0,01,1)と統合されたX(2,2)は、Sel_2_2として出力される。 Next, in the ninth cycle, X (4,1) integrated with C (0,01,1) and X (2,2 integrated with C (0,01,1) as D_Sel_1_2 and D_Sel_1_4 ) Are respectively output. Also, X (4,1) integrated with C (0,01,1) is output as Sel_2_4. X (2,2) integrated with C (0,01,1) is output as Sel_2_2.
次に、第10サイクルおいては、D_Sel_1_4として、C(0,01,1)と統合されたX(3,2)が出力される。ここで、このデータはSel_2_3としても出力される。 Next, in the tenth cycle, X (3,2) integrated with C (0,01,1) is output as D_Sel_1_4. Here, this data is also output as Sel_2_3.
次に、第11サイクルにおいては、D_Sel_1_4として、C(0,01,1)と統合されたX(4,2)が出力される。ここで、このデータは、Sel_2_4としても出力される。また、同時にSel_3_1として、C(0,01,1)と統合されたX(1,0)が出力され、Sel_3_2として、C(0,01,2)と統合されたX(2,0)が出力され、Sel_3_3として、C(0,01,3)と統合されたX(3,0)が出力され、 Sel_3_4として、C(0,01,4)と統合されたX(4,0)が出力される。これらデータからは制御信号が分離され、データだけがoutとして出力される。すなわち、out1としてX(1,0)が出力され、out2としてX(2,0)が出力され、out3としてX(3,0)が出力され、out4としてX(4,0)が出力される。さらに、C_outとしてC(0,01,0)が出力される。 Next, in the eleventh cycle, X (4,2) integrated with C (0,01,1) is output as D_Sel_1_4. Here, this data is also output as Sel_2_4. At the same time, X (1,0) integrated with C (0,01,1) is output as Sel_3_1, and X (2,0) integrated with C (0,01,2) is output as Sel_3_2. Output, X (3,0) integrated with C (0,01,3) is output as Sel_3_3, and X (4,0) integrated with C (0,01,4) is output as Sel_3_4 Is output. The control signal is separated from these data, and only the data is output as out. That is, X (1,0) is output as out1, X (2,0) is output as out2, X (3,0) is output as out3, and X (4,0) is output as out4 . Further, C (0,01,0) is output as C_out.
次に、第12サイクルにおいては、Sel_3_1として、C(0,01,1)と統合されたX(1,1)が出力される。また、Sel_3_2として、C(0,01,2)と統合されたX(2,1)が出力される。また、Sel_3_3として、C(0,01,3)と統合されたX(3,1)が出力される。また、Sel_3_4として、C(0,01,4)と統合されたX(4,1)が出力される。これらデータからは制御信号が分離され、データだけがoutとして出力される。すなわち、out1としてX(1,1)が出力され、out2としてX(2,1)が出力され、out3としてX(3,1)が出力され、out4としてX(4,1)が出力される。さらに、C_outとして、C(0,01,1)が出力される。 Next, in the twelfth cycle, X (1,1) integrated with C (0,01,1) is output as Sel_3_1. Further, X (2,1) integrated with C (0,01,2) is output as Sel_3_2. Further, X (3,1) integrated with C (0,01,3) is output as Sel_3_3. Further, X (4,1) integrated with C (0,01,4) is output as Sel_3_4. The control signal is separated from these data, and only the data is output as out. That is, X (1,1) is output as out1, X (2,1) is output as out2, X (3,1) is output as out3, and X (4,1) is output as out4 . Further, C (0,01,1) is output as C_out.
次に、第13サイクルにおいては、Sel_3_1として、C(0,01,0)と統合されたX(0,0)が出力される。また、Sel_3_2として、C(0,01,1)と統合されたX(0,1)が出力される。これらデータからは制御信号が分離され、データだけがoutとして出力される。すなわち、out1としてX(0,0)が出力され、out2としてX(0,1)が出力される。さらに、C_outとしてC(0,01,2)が出力される。 Next, in the thirteenth cycle, X (0,0) integrated with C (0,01,0) is output as Sel_3_1. Further, X (0,1) integrated with C (0,01,1) is output as Sel_3_2. The control signal is separated from these data, and only the data is output as out. That is, X (0,0) is output as out1, and X (0,1) is output as out2. Furthermore, C (0,01,2) is output as C_out.
次に、第14サイクルにおいては、Sel_3_1として、C(0,01,1)と統合されたX(1,2)が出力される。また、Sel_3_2として、C(0,01,2)と統合されたX(2,2)が出力される。また、Sel_3_3として、C(0,01,3)と統合されたX(3,2)が出力される、また、Sel_3_4としてC(0,01,4)と統合されたX(4,2)が出力される。これらデータからは制御信号が分離され、データだけがoutとして出力される。すなわち、out1としてX(1,2)が出力され、out2としてX(2,2)が出力され、out3としてX(3,2)が出力され、out4としてX(4,2)が出力される。 Next, in the 14th cycle, X (1,2) integrated with C (0,01,1) is output as Sel_3_1. Further, X (2,2) integrated with C (0,01,2) is output as Sel_3_2. Also, X (3,2) integrated with C (0,01,3) is output as Sel_3_3, and X (4,2) integrated with C (0,01,4) as Sel_3_4 Is output. The control signal is separated from these data, and only the data is output as out. That is, X (1,2) is output as out1, X (2,2) is output as out2, X (3,2) is output as out3, and X (4,2) is output as out4 .
さらに、C_outとしてC(0,01,3)が出力される。 Furthermore, C (0,01,3) is output as C_out.
最後に、第15サイクルにおいては、Sel_3_1として、C(0,01,0)と統合されたX(0,2)が出力される。このデータからは制御信号が分離され、データだけがoutとして出力される。すなわち、out1として、X(0,2)が出力される。さらに、C_outとしてC(0,01,4)が出力される。 Finally, in the fifteenth cycle, X (0,2) integrated with C (0,01,0) is output as Sel_3_1. The control signal is separated from this data, and only the data is output as out. That is, X (0,2) is output as out1. Furthermore, C (0,01,4) is output as C_out.
また、制御信号は、第11サイクル目より、1クロックごとに1つずつ出力される。 Further, one control signal is output every clock from the 11th cycle.
図31を用いて、前段第二加算ユニット206の処理内容を説明する。
With reference to FIG. 31, the processing content of the pre-stage
前段第二加算ユニット206は、図12に示したa0、a1、a2、a3、a4を算出する処理を行う。
The pre-stage
具体的には、前段第二加算ユニット206での5点DFT/IDFT用処理での2サイクル目に、regr1、regr3、regr4、 regr5として、それぞれ、X(1,0)、X(2,0)、X(3,0)、X(4,0)が出力される。また、加算器52がX(1,0)+X(2,0)を計算し、その計算結果a1(0)をout1として出力する。また、加算器53がX(1,0)-X(2,0)を計算し、その計算結果a4(0)をout2として出力する。また、加算器54がX(3,0)+X(4,0)を計算し、その計算結果a2(0)をout3として出力する。また、加算器55がX(3,0)-X(4,0)を計算し、その計算結果a3(0)をout4として出力する。ここで、aに付随する()内の数字は系列番号を示す。例として、a1(0)は、系列0の入力Xの途中計算結果a1であることを示す。
Specifically, as regr1, regr3, regr4, and regr5 in the second cycle in the 5-point DFT / IDFT processing in the
3サイクル目では2サイクル目と同様の処理が行われ、a1(1)、a4(1)、a2(1)、a3(1)が出力される。 In the third cycle, processing similar to that in the second cycle is performed, and a1 (1), a4 (1), a2 (1), and a3 (1) are output.
4サイクル目では、前段第二加算ユニット206は、a(0)、a(1)を出力する。具体的には、regr1、regr3として、それぞれ、X(0,0)、X(0,1)が出力される。それらは、それぞれsel1、sel4として出力される。加算器52および加算器53は、それぞれ、sel1、sel4に0を加算し、その加算された値を、out1、out2として出力する。
In the fourth cycle, the front stage
5サイクル目では、2、3サイクル目と同様の処理が行われ、a1(2)、a4(2)、a2(2)、a3(2)が出力される。 In the fifth cycle, processing similar to that in the second and third cycles is performed, and a1 (2), a4 (2), a2 (2), and a3 (2) are output.
6サイクル目では、a(2)が出力される。具体的には、regr1としてX(0,2)が出力され、X(0,2)がsel1として出力され、加算器52が、sel1に0を加算し、その加算結果をout1として出力する。
In the sixth cycle, a (2) is output. Specifically, X (0,2) is output as regr1, X (0,2) is output as sel1, and the
また、制御信号は、第2サイクル目より1クロックごとに1つずつ出力される。 Further, one control signal is output every clock from the second cycle.
図32を用いて、前段第三加算ユニット207の処理内容を説明する。
The processing contents of the pre-stage
前段第三加算ユニット207では、図12に示したc0からc5を算出する処理を行う。
The pre-stage
具体的には、第1サイクル目において、加算器62は、a1(0)-a2(0)を行って算出結果c2(0)を得て、c2(0)をout1として出力する。また、加算器65は、a3(0)+a(4)を行って算出結果c5(0)を得て、c5(0)をout4として出力する。また、クロスバ61は、a3(0)、a4(0)を、それぞれ、sel4、sel7として出力する。加算器63は、sel4に0を加算し、加算結果c3(0)をout2として出力する。また、加算器64は、sel7に0を加算し、加算結果c4(0)をout3として出力する。
Specifically, in the first cycle, the
次に、第2サイクル目においては、第1サイクル目と同様の処理が行われ、c2(1)、c3(1)、c4(1)、c5(1)が、それぞれ、out1、out2、out3、out4として出力される。 Next, in the second cycle, the same processing as in the first cycle is performed, and c2 (1), c3 (1), c4 (1), and c5 (1) are out1, out2, and out3, respectively. , Output as out4.
次に、第3サイクル目においては、in1、in2のデータa0(0)とa0(1)、および、regr1、regr2、regr3、regr4としてそれぞれ出力されるa1(0)、a2(0)、a1(1)、a2(1)を使い、c0(0)、c1(0)、c0(1)、c1(1)が、それぞれ算出される。 Next, in the third cycle, data a0 (0) and a0 (1) of in1, in2 and a1 (0), a2 (0), a1 outputted as regr1, regr2, regr3, regr4, respectively. Using (1) and a2 (1), c0 (0), c1 (0), c0 (1), and c1 (1) are respectively calculated.
具体的には、加算器62が、a0(0)+a1(0)+a2(0)を計算して計算結果c0(0)を得て、c0(0)をout1として出力する。また、加算器63が、a1(0)+a2(0)を計算して計算結果c1(0)を得て、c1(0)をout2として出力する。また、加算器64が、a0(1)+a1(1)+a2(1)を計算して計算結果c0(1)を得て、c0(1)をout3として出力する。また、加算器65が、a1(1)+a2(1)を計算して計算結果c1(1)を得て、c1(1)をout4として出力する。
Specifically, the
次に、第4サイクル目においては、第1、2サイクル目と同様の処理が行われ、c2(2)、 c3(2)、c4(2)、c5(2)が、それぞれ、out1、out2、out3、out4として出力される。 Next, in the fourth cycle, the same processing as in the first and second cycles is performed, and c2 (2), c3 (2), c4 (2), and c5 (2) are out1, out2 respectively. , Out3, and out4.
最後に、第5サイクル目においては、第3サイクル目と同様のほぼ同様の処理が行われ、c0(2)、c1(2)が得られる。 Finally, in the fifth cycle, substantially the same processing as in the third cycle is performed, and c0 (2) and c1 (2) are obtained.
また、制御信号は、第1サイクル目より1クロックごとに1つずつ出力される。 Further, one control signal is output every clock from the first cycle.
図33を用いて、制御ユニット209、乗算器208の処理内容を説明する。制御ユニット209と乗算器208では、図12に示したm0からm5までの係数を求める処理を行う。
The processing contents of the
具体的には、第1サイクル目では、乗算器208は、入力されたc2(0)、c3(0)、c4(0)、c5(0)に、それぞれ、T5_2、T5_3、T_5_4、T5_5の係数を乗算する。さらに、乗算器208は、c3(0)、c4(0)、c5(0)に関しては、上記係数をかけた後に、純虚数を乗算する。以上により、m2(0)、m3(0)、m4(0)、m5(0)が算出され、これらは、それぞれ、out1、out2、out3、out4として出力される。
Specifically, in the first cycle, the
第2サイクル目では、第1サイクル目と同様の処理が行われ、m2(1)、m3(1)、m4(1)、m5(1)のそれぞれが算出され、これらはout1、out2、out3、out4として出力される。 In the second cycle, the same processing as in the first cycle is performed, and m2 (1), m3 (1), m4 (1), and m5 (1) are calculated, and these are out1, out2, out3 , Output as out4.
第3サイクル目では、乗算器208は、入力されたc0(0)、c1(0)、c0(1)、c1(1)に対し、それぞれ、T5_0、T5_1、T5_0、T5_1の係数を乗算する処理を行い、m0(0)、m1(0)、m0(1)、m1(1)を得る。これらはそれぞれ、out1、out2、out3、out4として出力される。
In the third cycle, the
第4サイクル目では、第1サイクル目と同様の処理が行われ、m2(2)、m3(2)、m4(2)、m5(2)が算出され、これらは、それぞれ、out1、out2、out3、out4として出力される。 In the fourth cycle, the same processing as in the first cycle is performed, and m2 (2), m3 (2), m4 (2), and m5 (2) are calculated, which are out1, out2, Output as out3 and out4.
第5サイクル目では、第3サイクル目と同様の処理が行われ、m0(2)、m1(2)が得られる。これらは、それぞれ、out1、out2として出力される。 In the fifth cycle, processing similar to that in the third cycle is performed, and m0 (2) and m1 (2) are obtained. These are output as out1 and out2, respectively.
また、制御信号は、第1サイクル目より1クロックごとに1つずつ出力される。 Further, one control signal is output every clock from the first cycle.
図34を用いて、後段第一加算ユニット210の処理内容を説明する。本ユニットでは図12に示したn0からn4を求める処理を行う。
The processing contents of the post-stage
具体的には、第1サイクル目では、m2(0)が、sel1さらに言えばn2(0)として出力される。さらに、加算器82が、m3(0)+m5(0)を計算し、その計算結果n3(0)をadd_s1として出力する。また、加算器83が、m4(0)+m5(0)を計算し、その計算結果n4(0)をadd_s2として出力する。クロスバ85は、n2(0)、n3(0)、n4(0)を、それぞれ、out1、out2、out3として出力する。
Specifically, in the first cycle, m2 (0) is output as sel1, more specifically, n2 (0). Further, the
第2サイクル目では、第1サイクルと同様の処理が行われ、n2(1)、n3(1)、n4(1)が得られる。これらはそれぞれ、out1、out2、out3として出力される。 In the second cycle, processing similar to that in the first cycle is performed, and n2 (1), n3 (1), and n4 (1) are obtained. These are output as out1, out2, and out3, respectively.
第3サイクル目では、sel1、sel2さらに言えばn0(0), n0(1)として、m0(0)、m0(1)がそれぞれ出力される。さらに、加算器82が、m0(0)+m1(0)を計算し、その計算結果n1(0)をadd_s1として出力する。また、加算器83が、m0(1)+m1(1)を計算し、その計算結果n1(1)をadd_s2として出力する。クロスバ85は、n0(0)、n0(1)、n1(0)、n1(1)を、それぞれ、out1、out2、out3、out4に出力する。
In the third cycle, m0 (0) and m0 (1) are output as sel1, sel2, and more specifically as n0 (0), n0 (1), respectively. Further, the
第4サイクル目では、第1、2サイクル目と同様の処理が行われ、n2(2)、n3(2)、n4(2)が得られる。これらはそれぞれ、out1、out2、out3として出力される。 In the fourth cycle, the same processing as in the first and second cycles is performed, and n2 (2), n3 (2), and n4 (2) are obtained. These are output as out1, out2, and out3, respectively.
第5サイクル目では、第3サイクル目と同様の処理が行われ、n0(2)、n1(2)が得られる。これらはそれぞれ、out1、out2として出力される。 In the fifth cycle, processing similar to that in the third cycle is performed, and n0 (2) and n1 (2) are obtained. These are output as out1 and out2, respectively.
また、制御信号は、第1サイクル目より、1クロックごとに1つずつ出力される。 Further, one control signal is output for each clock from the first cycle.
図35を用いて、後段第二加算ユニット211の処理内容を説明する。
The processing contents of the second-stage
後段第二加算ユニット211では、図12に示したy0からy4を計算する。
The latter
具体的には、後段第二加算ユニット211は、第1サイクル目、第2サイクル目では、特に加算処理を行わず、第3サイクル目において、加算器902がn1(0)+n2(0)+n4(0)を計算し、その計算結果y1(0)をadd_s1として出力する。また、加算器903がn1(0)+n2(0)-n4(0)を計算し、その計算結果y4(0)をadd_s2として出力する。また、加算器904がn1(0)-n2(0)+n3(0)を計算し、その計算結果y2(0)をadd_s3として出力する。また、加算器905がn1(0)-n2(0)-n3(0)を計算し、その計算結果y3(0)をadd_s4として出力する。これらはそれぞれ、out1、out2、out3、out4として出力される。
Specifically, the
第4サイクル目においては、第3サイクル目と同様の処理が行われ、y(1,1)、y(4,1)、y(2,1)、y(3,1)が得られる。これらはそれぞれ、out1、out2、out3、out4として出力される。 In the fourth cycle, processing similar to that in the third cycle is performed, and y (1,1), y (4,1), y (2,1), and y (3,1) are obtained. These are output as out1, out2, out3, and out4, respectively.
第5サイクル目においては、第3、4サイクル目と同様の処理が行われ、y(1,2)、y(4,2)、y(2,2)、y(3,2)が得られる。これらはそれぞれ、out1、out2、out3、out4として出力される。 In the fifth cycle, the same processing as in the third and fourth cycles is performed, and y (1,2), y (4,2), y (2,2), and y (3,2) are obtained. It is done. These are output as out1, out2, out3, and out4, respectively.
第6サイクル目においては、sel1、sel4、sel7として、それぞれ、n0(0)、n0(1)、n0(2)が出力される。また、加算器902は、sel1に0を加算し、その加算結果y(0,0)をadd_s1として出力する。また、加算器903は、sel4に0を加算し、その加算結果y(0,1)をadd_s2として出力する。また、加算器904は、sel7に0を加算し、その加算結果y(0,2)をadd_s3として出力する。これらはそれぞれ、out1、out2、out3として出力される。
In the sixth cycle, n0 (0), n0 (1), and n0 (2) are output as sel1, sel4, and sel7, respectively. The
また、制御信号は、第3サイクル目より1クロックごとに1つずつ出力される。 Also, one control signal is output every clock from the third cycle.
図36を用いて、後段転置ユニット212の処理内容を説明する。 The processing content of the rear stage transposition unit 212 is demonstrated using FIG.
後段転置ユニット212は、入力されたデータを並べ替える処理を行う。 The rear transposition unit 212 performs a process of rearranging the input data.
具体的には、第1サイクル目では、入力されたy(1,0)、y(4,0)、y(2,0)、y(3,0)は、それぞれ、制御信号C(0,01,0)と統合され、Sel_1_1、Sel_1_2、Sel_1_3、Sel_1_4として出力される。また、y(1,0)は、Sel_2_1として出力される。 Specifically, in the first cycle, the input y (1,0), y (4,0), y (2,0), y (3,0) are respectively controlled by the control signal C (0 , 01,0) and output as Sel_1_1, Sel_1_2, Sel_1_3, and Sel_1_4. Moreover, y (1,0) is output as Sel_2_1.
第2サイクル目では、入力されたy(1,1)、y(4,1)、y(2,1)、y(3,1)は、それぞれ、制御信号C(0,01,1)と統合され、Sel_1_1、Sel_1_2、Sel_1_3、Sel_1_4として出力される。また、D_Sel_1_1として、C(0,01,0)と統合されたy(4,0)が出力され、このデータは、さらにSel_2_1としても出力される。一方、Sel_1_1として出力されたy(1,1)は、Sel_2_2としても出力される。 In the second cycle, the input y (1,1), y (4,1), y (2,1), y (3,1) are the control signals C (0,01,1), respectively. And are output as Sel_1_1, Sel_1_2, Sel_1_3, and Sel_1_4. Also, y (4,0) integrated with C (0,01,0) is output as D_Sel_1_1, and this data is also output as Sel_2_1. On the other hand, y (1,1) output as Sel_1_1 is also output as Sel_2_2.
第3サイクル目では、入力されたy(1,2)、y(4,2)、y(2,2)、y(3,2)は、それぞれ、制御信号C(0,01,2)と統合され、Sel_1_1、Sel_1_2、Sel_1_3、Sel_1_4として出力される。また、D_Sel_1_1、D_Sel_1_2として、それぞれ、C(0,01,1)と統合されたy(4,1)、C(0,01,0)と統合されたy(2,0)が出力される。さらに、Sel_2_1、Sel_2_2、Sel_2_3として、それぞれ、C(0,01,0)と統合されたy(2,0)、C(0,01,1)と統合されたy(4,1)、C(0,01,2)と統合されたy(1,2)が出力される。 In the third cycle, the input y (1,2), y (4,2), y (2,2), y (3,2) are controlled by the control signal C (0,01,2), respectively. And are output as Sel_1_1, Sel_1_2, Sel_1_3, and Sel_1_4. Also, y (4,1) integrated with C (0,01,1) and y (2,0) integrated with C (0,01,0) are output as D_Sel_1_1 and D_Sel_1_2, respectively. . Furthermore, as Sel_2_1, Sel_2_2, and Sel_2_3, y (2,0) integrated with C (0,01,0), y (4,1), C combined with C (0,01,1), respectively Y (1,2) integrated with (0,01,2) is output.
第4サイクル目では、入力されたy(0,0)、y(0,1)、y(0,2)は、それぞれ、制御信号C(0,01,3)と統合され、Sel_1_5、Sel_1_6、Sel_1_7として出力され、その後、Sel_4_1、Sel_4_2、Sel_4_3として出力される。これらの信号では、制御信号とデータが分離され、データだけがoutとして出力される。すなわち、y(0,0)、y(0,1)、y(0,2)が、それぞれ、out1、out2、out3として出力される。一方、D_Sel_1_1、D_Sel_1_2、D_Sel_1_3としては、それぞれ、C(0,01,2)と統合されたy(4,2)、C(0,01,1)と統合されたy(2,1)、C(0,01,0)と統合されたy(3,0)が出力される。これらは、それぞれ、Sel_2_3、Sel_2_2、Sel_2_1として出力される。さらに、D_Sel_2_1、D_Sel_2_2、D_Sel_2_3として、C(0,01,0)と統合されたy(1,0)、C(0,01,1)と統合されたy(1,1)、C(0,01,2)と統合されたy(1,2)が出力され、これらはそれぞれSel_3_1、 Sel_3_2、Sel_3_3として出力される。 In the fourth cycle, the input y (0,0), y (0,1), y (0,2) are integrated with the control signal C (0,01,3), respectively, and Sel_1_5, Sel_1_6 , Sel_1_7, and then output as Sel_4_1, Sel_4_2, and Sel_4_3. In these signals, the control signal and data are separated and only the data is output as out. That is, y (0,0), y (0,1), and y (0,2) are output as out1, out2, and out3, respectively. On the other hand, as D_Sel_1_1, D_Sel_1_2, D_Sel_1_3, y (4,2) integrated with C (0,01,2), y (2,1) integrated with C (0,01,1), respectively Y (3,0) integrated with C (0,01,0) is output. These are output as Sel_2_3, Sel_2_2, and Sel_2_1, respectively. Furthermore, as D_Sel_2_1, D_Sel_2_2, D_Sel_2_3, y (1,0) integrated with C (0,01,0), y (1,1), C (0 integrated with C (0,01,1) , 01,2) and y (1,2) are output, which are output as Sel_3_1, Sel_3_2, and Sel_3_3, respectively.
第5サイクル目では、D_Sel_1_2、D_Sel_1_3として、それぞれ、C(0,01,2)と統合されたy(2,2)、C(0,01,1)と統合されたy(3,1)が出力され、これらはそれぞれ、Sel_2_3、 Sel_2_2として出力される。一方、D_Sel_2_1、D_Sel_2_2、D_Sel_2_3としては、C(0,01,0)と統合されたy(4,0)、C(0,01,1)と統合されたy(4,1)、C(0,01,2)と統合されたy(4,2)が出力され、これらはそれぞれ、Sel_3_1、Sel_3_2、Sel_3_3として出力される。さらに、Sel_4_1、Sel_4_2、Sel_4_3としては、それぞれ、C(0,01,0)と統合されたy(1,0)、C(0,01,1)と統合されたy(1,1)、C(0,01,2)と統合されたy(1,2)が出力される。これらの信号では制御信号とデータが分離され、データだけがoutとして出力される。すなわち、y(1,0)、y(1,1)、y(1,2)が、out1、out2、out3として出力される。 In the fifth cycle, as D_Sel_1_2 and D_Sel_1_3, y (2,2) integrated with C (0,01,2) and y (3,1) integrated with C (0,01,1), respectively Are output as Sel_2_3 and Sel_2_2, respectively. On the other hand, as D_Sel_2_1, D_Sel_2_2, and D_Sel_2_3, y (4,0) integrated with C (0,01,0), y (4,1), C ( 0 (01,2) and y (4,2) integrated are output, and these are output as Sel_3_1, Sel_3_2, and Sel_3_3, respectively. Furthermore, as Sel_4_1, Sel_4_2, and Sel_4_3, y (1,0) integrated with C (0,01,0), y (1,1) integrated with C (0,01,1), respectively. Y (1,2) integrated with C (0,01,2) is output. With these signals, the control signal and data are separated, and only the data is output as out. That is, y (1,0), y (1,1), and y (1,2) are output as out1, out2, and out3.
第6サイクル目では、D_Sel_1_3として、C(0,01,2)と統合されたy(3,2)が出力され、これはSel_2_3として出力される。また、D_Sel_2_1、D_Sel_2_2、D_Sel_2_3としては、C(0,01,0)と統合されたy(2,0)、C(0,01,1)と統合されたy(2,1)、C(0,01,2)と統合されたy(2,2)が出力され、これらはそれぞれ、Sel_3_1、Sel_3_2、Sel_3_3として出力される。さらに、Sel_4_1、Sel_4_2、Sel_4_3としては、それぞれ、C(0,01,0)と統合されたy(4,0)、C(0,01,1)と統合されたy(4,1)、C(0,01,2)と統合されたy(4,2)が出力される。これらの信号では、制御信号とデータが分離され、データだけがoutとして出力される。すなわち、y(4,0)、y(4,1)、y(4,2)が、out1、out2、out3として出力される。 In the sixth cycle, y (3,2) integrated with C (0,01,2) is output as D_Sel_1_3, which is output as Sel_2_3. D_Sel_2_1, D_Sel_2_2, and D_Sel_2_3 are y (2,0) integrated with C (0,01,0), y (2,1), C ( 0 (01,2) and y (2,2) integrated are output, and these are output as Sel_3_1, Sel_3_2, and Sel_3_3, respectively. Furthermore, as Sel_4_1, Sel_4_2, and Sel_4_3, y (4,0) integrated with C (0,01,0), y (4,1) integrated with C (0,01,1), respectively. Y (4,2) integrated with C (0,01,2) is output. In these signals, the control signal and data are separated and only the data is output as out. That is, y (4,0), y (4,1), and y (4,2) are output as out1, out2, and out3.
第7サイクル目では、D_Sel_2_1、D_Sel_2_2、D_Sel_2_3として、C(0,01,0)と統合されたy(3,0)、C(0,01,1)と統合されたy(3,1)、C(0,01,2)と統合されたy(3,2)が出力され、これらはそれぞれSel_3_1、Sel_3_2、Sel_3_3として出力される。さらに、Sel_4_1、Sel_4_2、Sel_4_3としては、それぞれ、C(0,01,0)と統合されたy(2,0)、C(0,01,1)と統合されたy(2,1)、C(0,01,2)と統合されたy(2,2)が出力される。これらの信号では、制御信号とデータが分離され、データだけがoutとして出力される。すなわち、y(2,0)、y(2,1)、y(2,2)が、out1、out2、out3に出力される。 In the 7th cycle, as D_Sel_2_1, D_Sel_2_2, D_Sel_2_3, y (3,0) integrated with C (0,01,0), y (3,1) integrated with C (0,01,1) , C (0,01,2) and y (3,2) are output, which are output as Sel_3_1, Sel_3_2, and Sel_3_3, respectively. Furthermore, as Sel_4_1, Sel_4_2, and Sel_4_3, y (2,0) integrated with C (0,01,0), y (2,1) integrated with C (0,01,1), respectively. Y (2,2) integrated with C (0,01,2) is output. In these signals, the control signal and data are separated and only the data is output as out. That is, y (2,0), y (2,1), and y (2,2) are output to out1, out2, and out3.
第8サイクル目では、Sel_4_1、Sel_4_2、Sel_4_3として、それぞれ、C(0,01,0)と統合されたy(3,0)、C(0,01,1)と統合されたy(3,1)、C(0,01,2)と統合されたy(3,2)が出力される。これらの信号では、制御信号とデータが分離され、データだけがoutとして出力される。すなわち、y(3,0)、y(3,1)、y(3,2)が、out1、out2、out3として出力される。 In the eighth cycle, as Sel_4_1, Sel_4_2, and Sel_4_3, y (3,0) combined with C (0,01,0) and y (3,0,1) combined with C (0,01,1), respectively. 1), y (3,2) integrated with C (0,01,2) is output. In these signals, the control signal and data are separated and only the data is output as out. That is, y (3,0), y (3,1), and y (3,2) are output as out1, out2, and out3.
また、制御信号は、4サイクル目より、1クロックごとに1つずつ出力される。 Also, one control signal is output for each clock from the fourth cycle.
図37を用いて、後段第三加算ユニット213の処理内容を説明する。 The processing content of the post-stage third addition unit 213 will be described with reference to FIG.
後段第三加算ユニット213では、入力されたデータを1クロックの遅延をつけて出力するだけで、特に加算処理を行わない。具体的には、遅延回路Dによって1クロック遅延されたin1、in2、in3のデータが、sel5、sel6、sel7として出力され、その後、out1、out2、out3として出力される。 The post-stage third addition unit 213 simply outputs the input data with a delay of one clock, and does not perform any addition processing. Specifically, in1, in2, and in3 data delayed by one clock by the delay circuit D are output as sel5, sel6, and sel7, and then output as out1, out2, and out3.
このように、演算装置200は、5点DFT/IDFTを指示する制御信号を受け付けると、5点DFT/IDFTを実行する。
As described above, when the
(9点DFT/IDFT)
次に、演算装置200による9点DFT/IDFTの処理を説明する。
(9 points DFT / IDFT)
Next, 9-point DFT / IDFT processing by the
図38を用いて、前段第一加算ユニット204の処理内容を説明する。
The processing contents of the first-stage
前段第一加算ユニット204は、図13に示したa1からa8の係数を算出する処理を行う。
The pre-stage
具体的には、第1サイクル目では、加算器35および加算器36が、それぞれ、X(1)+X(8)、X(1)-X(8)の処理を行うことにより、a1、a2を算出し、それらを、out1、out2として出力する。
Specifically, in the first cycle, the
次に、第2サイクル目では、加算器32、加算器33、加算器35、および、加算器36が、それぞれ、X(4)+X(5)、X(4)-X(5)、X(2)+X(7)、X(2)-X(7)を行うことにより、a3、a4、a5、a6をそれぞれ算出する。これらデータは、それぞれ、out1、out2、out3、out4として出力される。
Next, in the second cycle, the
次に第3サイクル目では、加算器35および加算器36が、それぞれ、X(3)+X(6)、X(3)-X(6)を計算し、a7、a8を得る。これらはout3、out4として出力される。さらに、X(0)がsel6として出力され、その後、out1として出力する。
Next, in the third cycle, the
図39を用いて、前段転置ユニット205の処理内容を説明する。
The processing contents of the
前段転置ユニット205は、特にデータの並べ替え処理などは行わずに、入力されたデータを出力する。具体的には、 in1、in2、in3、in4として入力されたデータは、それぞれ、Sel_1_1、Sel_1_2、Sel_1_3、Sel_1_4として出力され、次に、Sel_2_1、Sel_2_2、Sel_2_3、Sel_2_4として出力され、さらに、D_dt_1、D_dt_2、D_dt3、D_dt_4として出力され、最後にout1、out2、out3、out4として出力される。
The
図40を用いて、前段第二加算ユニット206の処理内容を説明する。
With reference to FIG. 40, the processing contents of the second-stage
前段第二加算ユニット206は、図13に示したa7'、a8'、および、a9からa16を算出する処理を行う。
The pre-stage
具体的には、第1サイクル目では、加算処理が行われず、第2サイクル目において、加算器52、加算器53、加算器54、加算器55が、それぞれ、a1+a3+a5、a5-a1、a1-a3、a5-a3を計算して、算出結果a15、a9、a10、a11を出力する。それらはout1、out2、out3、out4として出力される。
Specifically, the addition process is not performed in the first cycle, and in the second cycle, the
次に、第3サイクル目において、加算器52、加算器53、加算器54、加算器55が、それぞれ、a6-a4+a2、-a6-a4、a2-a6、a2-a4を計算して、算出結果a16、a14、a12、a13を出力する。これらはout1、out2、out3、out4として出力される。
Next, in the third cycle, the
最後に、第4サイクル目においては、X0'、a7、a8は、それぞれ、sel1、sel4、sel6として出力され、その後、加算器52、加算器53、加算器54において0が加算され、その後、それぞれ、out1、out2、out3として出力される。
Finally, in the fourth cycle, X0 ′, a7, and a8 are output as sel1, sel4, and sel6, respectively, and then 0 is added in the
図41を用いて、前段第三加算ユニット207の処理内容を説明する。本処理では、図 13に示したa17が算出される。
The processing contents of the pre-stage
具体的には、第1サイクル目においては、入力されたデータin1、in2、in3、in4が、それぞれ、sel1、sel4、sel6、sel9として出力され、その後、加算器62、加算器63、加算器64、加算器65にて0と加算され、その後、それぞれ、out1、out2、out3、out4として出力される。
Specifically, in the first cycle, input data in1, in2, in3, and in4 are output as sel1, sel4, sel6, and sel9, respectively, and then adder 62,
第2サイクル目においては、第1サイクル目と同様の処理が行われる。 In the second cycle, the same processing as in the first cycle is performed.
第3サイクル目においては、加算器62が、a15+x0''+a7'を行い、加算結果a17をout1として出力する。さらに、x0''、a7'、a8が、第1、第2サイクル目と同様の方法で、それぞれ、out2、out3、out4として出力される。
In the third cycle, the
図42を用いて、制御ユニット209、乗算器208の処理内容を説明する。
The processing contents of the
制御ユニット209と乗算器208は、図13においてmで示された係数を算出する処理を行う。
The
具体的には、第1サイクル目において、乗算器208は、a15'、a9'、a10'、a11'と乗算係数T9_9、T9_1、T9_2、T9_3の乗算処理を行い、それぞれ、算出結果m9、m1、m2、m3を出力する。これらはそれぞれout2、out3、out4、out5として出力される。
Specifically, in the first cycle, the
第2サイクル目においては、第1サイクル目と同様の処理が行われ、m10、m6、m4、m5という係数が得られる。 In the second cycle, processing similar to that in the first cycle is performed, and coefficients m10, m6, m4, and m5 are obtained.
第3サイクル目においては、第1、2サイクル目と同様の処理が行われ、a7'''、m7、m8、a17'という係数が得られる。さらに、X0'''係数が、sel1として出力され、その後、out1として出力される。 In the third cycle, the same processing as in the first and second cycles is performed, and coefficients a7 ′ ″, m7, m8, and a17 ′ are obtained. Further, the X0 ′ ″ coefficient is output as sel1, and then output as out1.
図43を用いて、後段第一加算ユニット210の処理内容を説明する。
The processing contents of the post-stage
後段第一加算ユニット210は、図13におけるc、および、xa0で示される係数を求める処理を行う。
The post-stage
具体的には、第1サイクル目において、m9が、sel1として出力され、その後out1として出力される。さらに、加算器82、加算器83、加算器84が、それぞれ、m1+m2、m2-m3、m1+m3を計算し、それぞれ、計算結果c4、c2、c3を得る。これらは、それぞれ、out2、out3、out4として出力される。
Specifically, in the first cycle, m9 is output as sel1 and then output as out1. Further, the
第2サイクル目においては、m10が、sel1として出力され、その後out1として出力される。さらに、加算器82、加算器83、加算器84が、それぞれ、m4-m6、m5-m6、m4-m5を計算し、それぞれ、計算結果c8、c9、c10を得る。これらは、それぞれ、out2、out3、out4として出力される。
In the second cycle, m10 is output as sel1 and then output as out1. Further, the
第3サイクル目においては、m8、a17'が、それぞれ、sel1、sel2として出力され、その後out1、out2として出力される。さらに、加算器82、加算器83が、それぞれ、x0''''-m7、x0''''+a7'''を計算し、それぞれ、計算結果c1、xa0を得る。これらは、それぞれ、out3、out4として出力される。
In the third cycle, m8 and a17 ′ are output as sel1 and sel2, respectively, and then output as out1 and out2. Further, the
図44を用いて、後段第二加算ユニット211の処理内容を説明する。
The processing contents of the second-stage
後段第二加算ユニット211は、図13に示した、c7、c6、c5、c14、c11*i、c12*i、c13*i、および、m10''*iを算出する処理を行う。
The post-stage
具体的には、第1サイクル、第2サイクル目では、特に加算処理は行われず、第3サイクル目において、加算器902がc1-c4-c2を行い、加算器903がc1+4+c3を行い、加算器904がc1+c2-c3を行い、加算器905がxa0-m9'を行い、それぞれ、c7、c6、c5、c14を得る。これらは、out1、out2、out3、out4にそれぞれ出力される。
Specifically, no addition processing is particularly performed in the first cycle and the second cycle. In the third cycle, the
第4サイクル目においては、加算器902がc8+c9+m8'を計算し、加算器903がc8+c10-m8'を計算し、加算器904が-c9+c10+m8'を計算する。さらに、これらに対して、純虚数乗算器906、907、908が、それぞれ、純虚数を乗算し、その乗算結果を、それぞれ、out1、out2、ou3として出力する。
In the fourth cycle, the
第5サイクル目においては、a17''、m10'が、それぞれ、sel1、sel4として出力され、その後、加算器902、903にて0が加算されて出力される。さらに、これらに対して、純虚数乗算器906、907が、それぞれ、純虚数を乗算し、その乗算結果を、それぞれout1、out2として出力する。
In the fifth cycle, a17 ″ and m10 ′ are output as sel1 and sel4, respectively, and then 0 is added by the
図45を用いて、後段転置ユニット212の処理内容について説明する。 The processing contents of the rear stage transposition unit 212 will be described with reference to FIG.
後段転置ユニット212は、特に、入力されたデータの並べ替え処理などを行わない。 The post-transposition unit 212 does not particularly perform input data rearrangement processing.
具体的には、in1、in2、in3、in4として入力されたデータは、それぞれ、Sel_1_1、Sel_1_2、Sel_1_3、Sel_1_4として出力され、次に、Sel_2_1、Sel_2_2、Sel_2_3、Sel_2_4として出力され、さらに、Sel_1_1、Sel_4_2、Sel_4_3、Sel_4_4として出力され、最後にout1、out2、out3、out4として出力される。 Specifically, the data input as in1, in2, in3, in4 is output as Sel_1_1, Sel_1_2, Sel_1_3, Sel_1_4, respectively, and then output as Sel_2_1, Sel_2_2, Sel_2_3, Sel_2_4, and Sel_1_1, It is output as Sel_4_2, Sel_4_3, Sel_4_4, and finally output as out1, out2, out3, out4.
図46を用いて、後段第三加算ユニット213の処理内容を説明する。 The processing contents of the post-stage third addition unit 213 will be described with reference to FIG.
後段第三加算ユニット213は、図13においてyで示される出力を算出する。 The post-stage third addition unit 213 calculates an output indicated by y in FIG.
具体的には、第1サイクル目では特に加算処理は行われず、第2サイクル目において、加算器1102、加算器1103、加算器1106、加算器1107が、それぞれ、c5+c11*i、c5-c11*i、c6+c12*i、c6-c12*iを計算し、計算結果y8、y1、y7、y2を得る。これらは、それぞれ、out1、out2、out3、out4として出力される。
Specifically, no particular addition processing is performed in the first cycle, and in the second cycle, the
第3サイクル目では、第2サイクル目と同様の処理が行われ、y5、y4、y6、y3が計算され、それぞれ、out1、out2、out3、out4として出力される。 In the third cycle, processing similar to that in the second cycle is performed, and y5, y4, y6, and y3 are calculated and output as out1, out2, out3, and out4, respectively.
第4サイクル目では、a17'''が、sel5として出力され、その後、out1として出力される。 In the fourth cycle, a17 ′ ″ is output as sel5 and then output as out1.
このように、演算装置200は、9点DFT/IDFTを指示する制御信号を受け付けると、9点DFT/IDFTを実行する。
As described above, when the
(15点DFT/IDFT)
次に、演算装置200による15点DFT/IDFT処理内容を説明する。ここで、15点DFT/IDFTは、乗算ユニットを除いては、3点DFT/IDFT処理及び5点DFT/IDFT処理の組み合わせで行うことができる。よって以降では、乗算ユニット以外のユニットでは3点DFT/IDFT、5点DFT/IDFTのどちらの処理を行うかについて示し、詳細な説明は省略する。
(15 points DFT / IDFT)
Next, the 15-point DFT / IDFT processing content by the
まず、前段第一加算ユニット204は、3点DFT/IDFTの処理を行う。ここで、3点DFT/IDFTでは、1サイクルで入出力が完了するのに対し、15点DFT/IDFTでは、3点DFT/IDFTの処理を5サイクル分繰り返して計算及び出力が行われる。
First, the first-stage
前段転置ユニット205は、5点DFT/IDFTの処理を行う。
The
前段第二加算ユニット206は、5点DFT/IDFTの処理を行う。
The pre-stage
前段第三加算ユニット207は、5点DFT/IDFTの処理を行う。
The pre-stage
図47を用いて、制御ユニット209、乗算器208の処理内容の説明を行う。
The processing contents of the
制御ユニット209と乗算器208は、図14においてeで示される係数に乗算係数をかけ、mで示される係数を算出する処理を行う。
The
具体的には、第1サイクル目では、乗算器208は、e2に対してT15_2を乗算し、m2係数を得る。これはout1として出力される。同時に、e3、e4、e5係数が入力され、乗算器208は、これらにT15_3、T15_4、T15_5を乗算する。さらに、これら係数に関しては、純虚数を乗算する処理を純虚数乗算器907、908、909が行いm3、m4、m5を得る。これらは、out2、out3、out4として出力される。
Specifically, in the first cycle, the
第2サイクル目では、第1サイクル目と同様の処理が行われ、m8、m9、m10、m11係数が得られる。これらは、それぞれ、out1、out2、out3、out4として出力される。 In the second cycle, processing similar to that in the first cycle is performed, and m8, m9, m10, and m11 coefficients are obtained. These are output as out1, out2, out3, and out4, respectively.
第3サイクル目では、e0、e1、e6、e7係数が入力され、それぞれにT15_0、T15_1、T15_6、T15_7が乗算され、m0、m1、m6、m7が算出される。これらはそれぞれ、out1、out2、out3、out4として出力される。 In the third cycle, e0, e1, e6, and e7 coefficients are input and multiplied by T15_0, T15_1, T15_6, and T15_7, respectively, and m0, m1, m6, and m7 are calculated. These are output as out1, out2, out3, and out4, respectively.
第4サイクル目では、e15、e16、e17係数が入力され、これらにT15_15、T15_16、T15_17が乗算され、m15、m16、m17が算出される。これらはout2、out3、out4として出力される。同時にe14が入力され、これにT15_14係数が乗算される。さらに、純虚数乗算器906が、その乗算結果に純虚数を乗算し、その乗算結果をout1として出力する。
In the fourth cycle, e15, e16, and e17 coefficients are input, and these are multiplied by T15_15, T15_16, and T15_17 to calculate m15, m16, and m17. These are output as out2, out3, and out4. At the same time, e14 is input, and this is multiplied by the T15_14 coefficient. Further, the pure
第5サイクル目には、e12、e13係数が入力され、これにT15_12、T15_13係数が乗算される。さらに、純虚数乗算器906、907が、それぞれ、その乗算結果に純虚数を乗算し、その乗算結果を、out1、out2として出力する。
In the fifth cycle, the e12 and e13 coefficients are input, and this is multiplied by the T15_12 and T15_13 coefficients. Further, pure
後段第一加算ユニット210は、5点DFT/IDFTの処理を行う。
The latter
後段第二加算ユニット211は、5点DFT/IDFTの処理を行う。
The rear stage
後段転置ユニット212は、5点DFT/IDFTの処理を行う。 The rear transposition unit 212 performs a 5-point DFT / IDFT process.
後段第三加算ユニット213は、3点DFT/IDFTの処理を行う。 The post-stage third addition unit 213 performs 3-point DFT / IDFT processing.
このように、演算装置200は、15点DFT/IDFTを指示する制御信号を受け付けると、15点DFT/IDFTを実行する。
As described above, when the
(その他の実施形態)
図28に本発明の第2実施形態を示す。本実施形態は、離散フーリエ変換装置(演算装置)200と、離散フーリエ変換装置200を制御するCPU1と、データを格納するメモリユニット2と、を含む。
(Other embodiments)
FIG. 28 shows a second embodiment of the present invention. The present embodiment includes a discrete Fourier transform device (arithmetic device) 200, a
本実施形態においては、CPU1が、CPU-メモリユニットアドレス信号にて、メモリユニット2にアクセスするアドレスを発行すると、メモリユニット2は、CPU-メモリユニットデータ信号にて、発行されたアドレスに対応したデータをCPU1に出力する。
In this embodiment, when the
次に、CPU1は、上記の3、5、9、15点DFT/IDFTの制御信号とともにデータを離散フーリエ変換装置200に出力する。
Next, the
離散フーリエ変換装置200は、CPU1から制御信号とデータを受け取ると、制御信号に従ってDFT/IDFTを実行し、その結果をCPU1に返す。
When receiving a control signal and data from the
このような実施形態においては、離散フーリエ変換装置200がサポートする3、5、9、15点DFT/IDFT以外の点数のDFT/IDFTをCPU1が行うことにより、さらにDFT点数の種類を増やすことができる。
In such an embodiment, the number of DFT points can be further increased by the
上記各実施形態によれば、3、5、9、15点のDFT/IDFTを共通の回路で処理できる。このため、3、5、9、15点のDFT/IDFTの回路を、それぞれ、個別の回路で構成した場合と比較して、乗算器と加算器の数を削減することができる点である。 According to each of the embodiments described above, 3, 5, 9, and 15 points of DFT / IDFT can be processed by a common circuit. For this reason, the number of multipliers and adders can be reduced as compared with the case where the DFT / IDFT circuits of 3, 5, 9, and 15 points are respectively configured by individual circuits.
また、3、5、9、15点のDFT/IDFTに対し、設計する回路は1つの回路で済む。このため、3、5、9、15点のDFT/IDFTの回路を、それぞれ、個別の回路で構成した場合と比較して、設計及び実装に要する時間が短縮できる。 In addition, for a DFT / IDFT of 3, 5, 9, 15 points, only one circuit is required to design. For this reason, the time required for design and mounting can be shortened as compared with the case where the DFT / IDFT circuits of 3, 5, 9, and 15 points are each constituted by individual circuits.
また、3、5、9、15点という異なる点数のDFT/IDFTが行われても、データが各ユニットに出力されるタイミングを合わせているので、各ユニットは、DFT/IDFTのポイント数に関わらず、予め定められたタイミングで動作することができる。このため、各ユニットの動作開始タイミングを、DFT/IDFTのポイント数に応じて変更するような制御を行うことなく、異なる点数のDFT/IDFTを共通の回路を用いて行うことが可能になる。
[産業上の利用可能性]
本実施形態の活用例として、LTEで必要となる無線信号処理を実行する基地局装置が挙げられる。
Also, even if DFT / IDFT with different points such as 3, 5, 9, 15 is performed, the timing at which data is output to each unit is matched, so each unit is related to the number of points of DFT / IDFT. Instead, it can operate at a predetermined timing. For this reason, it is possible to perform DFT / IDFT with different points using a common circuit without performing control to change the operation start timing of each unit according to the number of points of DFT / IDFT.
[Industrial applicability]
As an application example of the present embodiment, a base station apparatus that executes radio signal processing required in LTE can be cited.
1 CPU
2 メモリユニット
200 離散フーリエ変換装置(演算装置)
201 前加算ユニット
202 乗算ユニット
203 後加算ユニット
204 前段第一加算ユニット
205 前段転置ユニット
206 前段第二加算ユニット
207 前段第三加算ユニット
208 乗算器
209 制御ユニット
210 後段第一加算ユニット
211 後段第二加算ユニット
212 後段転置ユニット
213 後段第三加算ユニット
1 CPU
2
201
Claims (10)
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第一加算手段は、
前記第一タイミングで前記複数のデータを受け付けると、前記制御信号に従って、前記複数のデータ同士を選択的に加算する、もしくは、前記複数のデータをそのまま出力する第一演算手段と、
前記第一タイミングよりも遅く前記第二タイミングよりも早い第四タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力する並び替え手段と、
前記第四タイミングよりも遅く前記第二タイミングよりも早い第五タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第二演算手段と、
前記第五タイミングよりも遅く前記第二タイミングよりも早い第六タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第三演算手段と、を有し、
前記第一演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第四タイミングで前記並び替え手段に出力し、
前記並び替え手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第五タイミングで前記第二演算手段に出力し、
前記第二演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第六タイミングで前記第三演算手段に出力し、
前記第三演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第二タイミングで前記乗算手段に出力する、離散フーリエ変換装置。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform device for performing discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data ,
The first adding means includes
When the plurality of data is received at the first timing, according to the control signal, the plurality of data is selectively added to each other, or first calculation means for outputting the plurality of data as they are;
Rearrangement means for selectively rearranging data input at a fourth timing later than the first timing and earlier than the second timing according to the control signal, or outputting the data as it is;
Data input at a fifth timing that is later than the fourth timing and earlier than the second timing, in accordance with the control signal, or a second calculation means that outputs the data as it is,
And third arithmetic means for selectively adding data input at a sixth timing later than the fifth timing and earlier than the second timing according to the control signal, or outputting the data as it is,
The first calculation means outputs its own output to the sorting means at the fourth timing regardless of the number of points indicated by the control signal,
The rearranging means outputs its own output to the second arithmetic means at the fifth timing regardless of the number of points indicated by the control signal,
The second calculation means outputs its own output to the third calculation means at the sixth timing regardless of the number of points indicated by the control signal,
The discrete Fourier transform device , wherein the third calculation means outputs its own output to the multiplication means at the second timing regardless of the number of points indicated by the control signal .
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を格納する記憶手段と、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出し手段と、
前記第一加算手段の出力に、前記読出し手段が読み出した乗算係数を乗算する第一乗算手段と、
前記第一乗算手段の乗算結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算手段と、を有する、請求項1に記載の離散フーリエ変換装置。 The multiplication means is
Storage means for storing the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points for each number of points ;
Reading means for reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
First multiplication means for multiplying the output of the first addition means by the multiplication coefficient read by the reading means;
The result of the multiplication to the first multiplication means, in accordance with said control signal comprises a second multiplying means for multiplying the selectively pure imaginary, the discrete Fourier transform device of claim 1.
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記乗算手段は、
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を格納する記憶手段と、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出し手段と、
前記第一加算手段の出力に、前記読出し手段が読み出した乗算係数を乗算する第一乗算手段と、
前記第一乗算手段の乗算結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算手段と、を有する離散フーリエ変換装置。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform device for performing discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data ,
The multiplication means is
Storage means for storing the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points for each number of points;
Reading means for reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
First multiplication means for multiplying the output of the first addition means by the multiplication coefficient read by the reading means;
And a second multiplying unit that selectively multiplies the multiplication result of the first multiplying unit by a pure imaginary number in accordance with the control signal .
前記第三タイミングで前記乗算手段の出力を受け付けると、前記制御信号に従って、前記乗算手段の出力同士を選択的に加算する、もしくは、前記乗算手段の出力をそのまま出力する第四演算手段と、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算手段と、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替え手段と、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算手段と、を有し、
前記第四演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第七タイミングで前記第五演算手段に出力し、
前記第五演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第八タイミングで前記データ並び替え手段に出力し、
前記データ並び替え手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第九タイミングで前記第六演算手段に出力し、
前記第六演算手段は、自己の出力を、前記複数のデータに対して前記制御信号にて示されたポイント数の前記処理を実行した結果として出力する、請求項1から3のいずれか1項に記載の離散フーリエ変換装置。 The second adding means includes
When receiving the output of the multiplication means at the third timing, according to the control signal, selectively add the outputs of the multiplication means, or a fourth calculation means for outputting the output of the multiplication means as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth computing means;
Data rearranging means for selectively rearranging data inputted at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
Sixth arithmetic means for selectively adding the data input at the ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
The fourth calculation means outputs its own output to the fifth calculation means at the seventh timing regardless of the number of points indicated by the control signal,
The fifth computing means outputs its own output to the data rearranging means at the eighth timing regardless of the number of points indicated by the control signal,
The data rearranging means outputs its own output to the sixth arithmetic means at the ninth timing regardless of the number of points indicated by the control signal,
The said 6th calculating means outputs an output of self as a result of having performed the said process of the number of points shown by the said control signal with respect to these data. Discrete Fourier transform device described in 1.
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算手段と、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算手段と、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算手段と、を含み、
前記第一加算手段は、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで前記乗算手段に出力し、
前記乗算手段は、前記前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで前記第二加算手段に出力し、
前記第二加算手段は、前記乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第二加算手段は、
前記第三タイミングで前記乗算手段の出力を受け付けると、前記制御信号に従って、前記乗算手段の出力同士を選択的に加算する、もしくは、前記乗算手段の出力をそのまま出力する第四演算手段と、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算手段と、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替え手段と、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算手段と、を有し、
前記第四演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第七タイミングで前記第五演算手段に出力し、
前記第五演算手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第八タイミングで前記データ並び替え手段に出力し、
前記データ並び替え手段は、前記制御信号にて示されたポイント数に関わらず、自己の出力を、前記第九タイミングで前記第六演算手段に出力し、
前記第六演算手段は、自己の出力を、前記複数のデータに対して前記制御信号にて示されたポイント数の前記処理を実行した結果として出力する、離散フーリエ変換装置。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform device for performing discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding means;
Multiplication means for executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
Second addition means for performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing later than the second timing,
The first addition means outputs the result of the previous addition process to the multiplication means at the second timing regardless of the number of points indicated by the control signal,
The multiplication means performs the multiplication process on the result of the previous stage addition process, and the result of the multiplication process is determined at the third timing regardless of the number of points indicated by the control signal. Output to the adding means,
The second addition means performs the post-stage addition process on the result of the multiplication process, and outputs the result of the post-stage addition process as a result of executing the process on the plurality of data ,
The second adding means includes
When receiving the output of the multiplication means at the third timing, according to the control signal, selectively add the outputs of the multiplication means, or a fourth calculation means for outputting the output of the multiplication means as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth computing means;
Data rearranging means for selectively rearranging data inputted at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
Sixth arithmetic means for selectively adding the data input at the ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
The fourth calculation means outputs its own output to the fifth calculation means at the seventh timing regardless of the number of points indicated by the control signal,
The fifth computing means outputs its own output to the data rearranging means at the eighth timing regardless of the number of points indicated by the control signal,
The data rearranging means outputs its own output to the sixth arithmetic means at the ninth timing regardless of the number of points indicated by the control signal,
The sixth arithmetic means outputs a self-output as a result of executing the processing of the number of points indicated by the control signal with respect to the plurality of data .
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第一加算ステップは、
前記第一タイミングで前記複数のデータを受け付けると、前記制御信号に従って、前記複数のデータ同士を選択的に加算する、もしくは、前記複数のデータをそのまま出力する第一演算ステップと、
前記第一タイミングよりも遅く前記第二タイミングよりも早い第四タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力する並び替えステップと、
前記第四タイミングよりも遅く前記第二タイミングよりも早い第五タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第二演算ステップと、
前記第五タイミングよりも遅く前記第二タイミングよりも早い第六タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第三演算ステップと、を有し、
前記第一演算ステップでは、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第四タイミングで出力し、
前記並び替えステップでは、前記第一演算ステップでの出力を前記第四タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第五タイミングで出力し、
前記第二演算ステップでは、前記並び替えステップでの出力を前記第五タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第六タイミングで出力し、
前記第三演算ステップは、前記第二演算ステップでの出力を前記第六タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第二タイミングで出力し、
前記乗算ステップでは、前記第三演算ステップでの出力を、前記前段加算処理の結果として前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行する、離散フーリエ変換・離散逆フーリエ変換方法。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform / discrete inverse Fourier transform method in a discrete Fourier transform apparatus that performs discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process ,
The first adding step includes
When receiving the plurality of data at the first timing, according to the control signal, selectively adding the plurality of data, or outputting the plurality of data as they are,
Rearrangement step of selectively rearranging data input at a fourth timing later than the first timing and earlier than the second timing according to the control signal, or outputting the data as it is;
A second calculation step of selectively adding data input at a fifth timing later than the fourth timing and earlier than the second timing according to the control signal, or outputting the data as it is;
A third operation step of selectively adding data inputted at a sixth timing later than the fifth timing and earlier than the second timing according to the control signal, or outputting the data as it is,
In the first calculation step, regardless of the number of points indicated by the control signal, the output of its own is output at the fourth timing,
In the rearrangement step, the output in the first calculation step is received at the fourth timing, and regardless of the number of points indicated by the control signal, the output of the self is output at the fifth timing,
In the second calculation step, the output in the rearrangement step is received at the fifth timing, and regardless of the number of points indicated by the control signal, its own output is output at the sixth timing,
The third calculation step accepts the output in the second calculation step at the sixth timing, and outputs its own output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the output at the third operation step, accepted by the second timing as a result of the preceding addition process, performing said multiplication process on the result of the preceding addition process, discrete Fourier transform and discrete Inverse Fourier transform method.
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を記憶手段に格納する記憶ステップと、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出しステップと、
前記第一加算ステップでの出力に、前記読み出された乗算係数を乗算する第一乗算ステップと、
前記乗算の結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算ステップと、を有する請求項6に記載の離散フーリエ変換・離散逆フーリエ変換方法。 The multiplication step includes
For each point number, a storage step of storing in the storage means the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points ;
A reading step of reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
A first multiplication step of multiplying the output in the first addition step by the read multiplication coefficient;
The discrete Fourier transform / discrete inverse Fourier transform method according to claim 6 , further comprising: a second multiplication step of selectively multiplying a result of the multiplication by a pure imaginary number in accordance with the control signal.
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記乗算ステップは、
前記ポイント数ごとに、当該ポイント数に対応する前記離散フーリエ変換用の乗算係数および当該ポイント数に対応する前記離散逆フーリエ変換用の乗算係数を記憶手段に格納する記憶ステップと、
前記制御信号が示すポイント数および処理に対応する乗算係数を、前記記憶手段から読み出す読出しステップと、
前記第一加算ステップでの出力に、前記読み出された乗算係数を乗算する第一乗算ステップと、
前記乗算の結果に対し、前記制御信号に従って、選択的に純虚数を乗算する第二乗算ステップと、を有する離散フーリエ変換・離散逆フーリエ変換方法。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform / discrete inverse Fourier transform method in a discrete Fourier transform apparatus that performs discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process ,
The multiplication step includes
For each point number, a storage step of storing in the storage means the multiplication coefficient for discrete Fourier transform corresponding to the number of points and the multiplication coefficient for discrete inverse Fourier transform corresponding to the number of points;
A reading step of reading out the multiplication coefficient corresponding to the number of points and processing indicated by the control signal from the storage means;
A first multiplication step of multiplying the output in the first addition step by the read multiplication coefficient;
A discrete Fourier transform / discrete inverse Fourier transform method comprising: a second multiplication step of selectively multiplying a result of the multiplication by a pure imaginary number according to the control signal .
前記第三タイミングで前記乗算ステップでの出力を受け付けると、前記制御信号に従って、当該出力同士を選択的に加算する、もしくは、当該出力をそのまま出力する第四演算ステップと、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算ステップと、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替えステップと、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算ステップと、を有し、
前記第四演算ステップでは、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第七タイミングで出力し、
前記第五演算ステップでは、前記第四演算ステップでの出力を前記第七タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第八タイミングで出力し、
前記データ並び替えステップでは、前記第五演算ステップでの出力を前記第八タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第九タイミングで出力し、
前記第六演算ステップでは、前記データ並び替えステップでの出力を前記第九タイミングで受け付け、自己の出力を前記複数のデータに対して前記処理を実行した結果として出力する、請求項6から8のいずれか1項に記載の離散フーリエ変換・離散逆フーリエ変換方法。 The second adding step includes
When the output at the multiplication step is received at the third timing, the outputs are selectively added according to the control signal, or a fourth calculation step for outputting the output as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth operation step;
A data rearrangement step of selectively rearranging data input at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
A sixth operation step of selectively adding data inputted at a ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
In the fourth calculation step, regardless of the number of points indicated by the control signal, the self output is output at the seventh timing,
In the fifth calculation step, the output in the fourth calculation step is accepted at the seventh timing, and regardless of the number of points indicated by the control signal, its own output is output at the eighth timing,
In the data rearrangement step, the output in the fifth calculation step is accepted at the eighth timing, and regardless of the number of points indicated by the control signal, its own output is output at the ninth timing,
And in the sixth operation step receives the output at the data rearrangement step in the ninth timing, and outputs its own output as a result of executing the processing to the plurality of data, from the claims 6 8 The discrete Fourier transform / discrete inverse Fourier transform method according to any one of the above items.
前記複数のデータが、クロックにて規定される第一タイミングで入力されると、前記複数のデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた前段加算処理を実行する第一加算ステップと、
前記第一タイミングよりも遅い第二タイミングで入力されたデータに対して、前記制御信号が示した処理に応じた乗算処理を実行する乗算ステップと、
前記第二タイミングよりも遅い第三タイミングで入力されたデータに対して、前記離散フーリエ変換および前記離散逆フーリエ変換に応じた後段加算処理を実行する第二加算ステップと、を含み、
前記第一加算ステップでは、前記前段加算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第二タイミングで出力し、
前記乗算ステップでは、前記前段加算処理の結果を前記第二タイミングで受け付け、当該前段加算処理の結果に対して前記乗算処理を実行し、当該乗算処理の結果を、前記制御信号にて示されたポイント数に関わらず、前記第三タイミングで出力し、
前記第二加算ステップでは、前記乗算処理の結果を前記第三タイミングで受け付け、当該乗算処理の結果に対して前記後段加算処理を行い、当該後段加算処理の結果を、前記複数のデータに対して前記処理を実行した結果として出力し、
前記第二加算ステップは、
前記第三タイミングで前記乗算ステップでの出力を受け付けると、前記制御信号に従って、当該出力同士を選択的に加算する、もしくは、当該出力をそのまま出力する第四演算ステップと、
前記第三タイミングよりも遅い第七タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、そのまま出力する、もしくは、選択的に加算した加算結果に選択的に純虚数を乗算する第五演算ステップと、
前記第七タイミングよりも遅い第八タイミングで入力されたデータを、前記制御信号に従って、選択的に並べ替える、もしくは、そのまま出力するデータ並び替えステップと、
前記第八タイミングよりも遅い第九タイミングで入力されたデータを、前記制御信号に従って、選択的に加算する、もしくは、そのまま出力する第六演算ステップと、を有し、
前記第四演算ステップでは、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第七タイミングで出力し、
前記第五演算ステップでは、前記第四演算ステップでの出力を前記第七タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第八タイミングで出力し、
前記データ並び替えステップでは、前記第五演算ステップでの出力を前記第八タイミングで受け付け、前記制御信号にて示されたポイント数に関わらず、自己の出力を前記第九タイミングで出力し、
前記第六演算ステップでは、前記データ並び替えステップでの出力を前記第九タイミングで受け付け、自己の出力を前記複数のデータに対して前記処理を実行した結果として出力する、離散フーリエ変換・離散逆フーリエ変換方法。 One of a plurality of types of points , and a control signal indicating whether the process is a discrete Fourier transform or a discrete inverse Fourier transform, and a plurality of data are received, and the plurality of data are received. A discrete Fourier transform / discrete inverse Fourier transform method in a discrete Fourier transform apparatus that performs discrete Fourier transform or discrete inverse Fourier transform of the number of points indicated by the control signal,
When the plurality of data are input at a first timing defined by a clock, a first addition process is performed on the plurality of data according to the discrete Fourier transform and the discrete inverse Fourier transform . Adding step;
A multiplication step of executing multiplication processing according to the processing indicated by the control signal for data input at a second timing later than the first timing;
A second addition step of performing post-stage addition processing according to the discrete Fourier transform and the discrete inverse Fourier transform on data input at a third timing that is later than the second timing,
In the first addition step, the result of the previous stage addition process is output at the second timing regardless of the number of points indicated by the control signal,
In the multiplication step, the result of the previous stage addition process is received at the second timing, the multiplication process is performed on the result of the previous stage addition process, and the result of the multiplication process is indicated by the control signal Regardless of the number of points, output at the third timing,
In the second addition step, the result of the multiplication process is received at the third timing, the post-stage addition process is performed on the result of the multiplication process, and the result of the post-stage addition process is applied to the plurality of data. Output as a result of executing the process ,
The second adding step includes
When the output at the multiplication step is received at the third timing, the outputs are selectively added according to the control signal, or a fourth calculation step for outputting the output as it is,
The data input at the seventh timing later than the third timing is selectively added according to the control signal, output as it is, or the addition result selectively added is selectively multiplied by a pure imaginary number. A fifth operation step;
A data rearrangement step of selectively rearranging data input at an eighth timing later than the seventh timing according to the control signal, or outputting the data as it is,
A sixth operation step of selectively adding data inputted at a ninth timing later than the eighth timing according to the control signal, or outputting the data as it is,
In the fourth calculation step, regardless of the number of points indicated by the control signal, the self output is output at the seventh timing,
In the fifth calculation step, the output in the fourth calculation step is accepted at the seventh timing, and regardless of the number of points indicated by the control signal, its own output is output at the eighth timing,
In the data rearrangement step, the output in the fifth calculation step is accepted at the eighth timing, and regardless of the number of points indicated by the control signal, its own output is output at the ninth timing,
And in the sixth operation step, the reception output of the data rearrangement step in the ninth timing, and outputs as a result of its own output to perform the processing on the plurality of data, a discrete Fourier transform and inverse discrete Fourier transform method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009220792A JP5493646B2 (en) | 2009-09-25 | 2009-09-25 | Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009220792A JP5493646B2 (en) | 2009-09-25 | 2009-09-25 | Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011070392A JP2011070392A (en) | 2011-04-07 |
JP5493646B2 true JP5493646B2 (en) | 2014-05-14 |
Family
ID=44015627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009220792A Active JP5493646B2 (en) | 2009-09-25 | 2009-09-25 | Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5493646B2 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3757782B2 (en) * | 2000-10-30 | 2006-03-22 | 日本電気株式会社 | FFT operation circuit |
JP2007336164A (en) * | 2006-06-14 | 2007-12-27 | Mitsubishi Electric Corp | Dbf signal processing apparatus, and dbf signal processing method |
JP4755610B2 (en) * | 2007-01-31 | 2011-08-24 | 三菱電機株式会社 | Fast Fourier transform device |
-
2009
- 2009-09-25 JP JP2009220792A patent/JP5493646B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011070392A (en) | 2011-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103106180A (en) | Constant geometry split radix FFT | |
US9785614B2 (en) | Fast Fourier transform device, fast Fourier transform method, and recording medium storing fast Fourier transform program | |
US7792892B2 (en) | Memory control method for storing operational result data with the data order changed for further operation | |
US7653676B2 (en) | Efficient mapping of FFT to a reconfigurable parallel and pipeline data flow machine | |
JP5493646B2 (en) | Discrete Fourier transform apparatus and discrete Fourier transform / discrete inverse Fourier transform method | |
US20140195578A1 (en) | Fast fourier transform circuit | |
US11604852B2 (en) | Signal processing apparatus, method, program, and recording medium | |
JP6451647B2 (en) | Fast Fourier transform apparatus, fast Fourier transform method, and fast Fourier transform program | |
Glittas et al. | Pipelined FFT architectures for real-time signal processing and wireless communication applications | |
JPH11110370A (en) | Fast fourier transforming device and method, variable bit reverse circuit, inverse fast fourier transforming device and method and ofdm receiving and transmitting device | |
CN109753629B (en) | Multi-granularity parallel FFT computing device | |
US20210342102A1 (en) | Signal processing apparatus, method, program, and recording medium | |
JP6436087B2 (en) | Digital filter device, digital filter processing method and program | |
WO2020152826A1 (en) | Fourier transform device and fourier transform method | |
CN101490671A (en) | Folding of input data values to a transform function | |
JPWO2013183096A1 (en) | Multistage filter processing apparatus and method | |
JP2009245407A (en) | Product-sum operation device and product-sum operation method for complex number | |
JP2002504250A (en) | Device for converting a sequence of data elements | |
JP2016218528A (en) | Data processing device and data processing method | |
JP4586114B1 (en) | Product-sum operation unit | |
KR101074112B1 (en) | Apparatus and method for executing fourier transform | |
JP2001067338A (en) | High speed convolutional operation system, its arithmetic unit, high speed interpolation system and high speed interpolation device | |
WO2018092183A1 (en) | Arithmetic device and arithmetic method | |
CN110399588A (en) | System and method for calculating oscillating function | |
JP2010072981A (en) | Product-sum operation device and product-sum operation method for complex number |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120814 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131119 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140115 |
|
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: 20140204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5493646 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |