JP2000341139A - Convolution arithmetic unit - Google Patents

Convolution arithmetic unit

Info

Publication number
JP2000341139A
JP2000341139A JP11152204A JP15220499A JP2000341139A JP 2000341139 A JP2000341139 A JP 2000341139A JP 11152204 A JP11152204 A JP 11152204A JP 15220499 A JP15220499 A JP 15220499A JP 2000341139 A JP2000341139 A JP 2000341139A
Authority
JP
Japan
Prior art keywords
fft
block
impulse response
input signal
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP11152204A
Other languages
Japanese (ja)
Inventor
Takuma Suzuki
琢磨 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP11152204A priority Critical patent/JP2000341139A/en
Publication of JP2000341139A publication Critical patent/JP2000341139A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Error Detection And Correction (AREA)

Abstract

PROBLEM TO BE SOLVED: To decrease delays between an input signal and an output signal by dividing an impulse response into nonequivalent blocks and performing convolution arithmetic using FFT. SOLUTION: In the case of processing an impulse response, the data of the impulse response are inputted to an impulse response buffer, in the order (11) to obtain N samples as data divided into pieces. Every block is subjected to FFT processing, and FFT processing result are stored in the impulse response buffer (14). In the case of processing an input signal, the input signal is inputted to respective input buffers successively for every N/16 sample (15), every block is subjected to FFT processing are performed, and processing results are stored in a buffer for the input signal (18). Then the FFT processing results of the input signal for every block and the FFT processing results of the impulse response are multiplied (19), inverse FFT processing for the multiplication result for every block are performed (20), and the multiplication results are added by seven blocks (21). The addition results are written sequentially to an output buffer as a convolutional arithmetic result of the N samples (22).

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、音場再生・音場制
御に関し、特にコンサートホールの残響付加技術にあっ
て、FFT(高速フーリエ変換)を用いてオーディオ信
号とインパルス応答を畳み込み演算する畳み込み演算装
置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to sound field reproduction and sound field control, and more particularly to a technique for adding reverberation in a concert hall. It relates to an arithmetic unit.

【0002】[0002]

【従来の技術】一般に、ある系の伝達関数(インパルス
応答)h(n)が既知の場合には、その系に入力される
信号x(n)と、その伝達関数を畳み込み演算すること
により、その系の出力信号y(n)を求めることができ
る。この畳み込み演算を数式で表すと次式(1)のよう
になる。
2. Description of the Related Art In general, when a transfer function (impulse response) h (n) of a certain system is known, a signal x (n) input to the system is convoluted with the transfer function to obtain a convolution. The output signal y (n) of the system can be obtained. This convolution operation is represented by the following equation (1).

【0003】[0003]

【数1】 (Equation 1)

【0004】しかしながら、この計算ではN2回の乗算
が必要である。そこで、計算効率を向上させるためにイ
ンパルス応答h(n)と入力信号x(n)をフーリエ変
換してその変換結果を乗算し、その乗算結果を逆フーリ
エ変換する方法が用いられる。この方法では、3回のF
FTにおける乗算回数は(3N/2)log2N回となるの
で、式(1)を用いる場合より乗算回数を減少させるこ
とができる。
[0004] However, this calculation requires N 2 multiplications. Therefore, in order to improve the calculation efficiency, a method of Fourier transforming the impulse response h (n) and the input signal x (n), multiplying the result by the Fourier transform, and performing the inverse Fourier transform on the product is used. In this method, three F
Since the number of multiplications in the FT is (3N / 2) log 2 N times, the number of multiplications can be reduced as compared with the case of using equation (1).

【0005】ところで、この方法は計算効率を向上させ
るには有効であるが、実時間処理を行う場合には、イン
パルス応答h(n)のタップ数N以上の遅延が発生す
る。FFTを利用した畳み込み演算として重畳保留法
(Overlap-save method)を用いる場合の処理を図3、
図4に示す。図3、図4において、インパルス応答h
(n)を処理する場合には、 ・Nサンプル分のインパルス応答h(n)のデータを、
2Nサンプル分のインパルス応答バッファ(a1、a
2)の後半a2に取得し、 ・次いで、取得したインパルス応答h(n)のデータ長
と同じ長さの「0」をインパルス応答h(n)の前(前
半a1)に付加する(ブロック1)。 ・次いで、この「0」を付加した2NサンプルでFFT
処理を行い(ブロック2)、 ・FFT処理結果をインパルス応答バッファa1、a2
にストアする(ブロック3)。
Although this method is effective for improving the calculation efficiency, when real-time processing is performed, a delay equal to or longer than the number N of taps of the impulse response h (n) occurs. FIG. 3 shows a process in which an overlap-save method is used as a convolution operation using FFT.
As shown in FIG. 3 and 4, the impulse response h
When processing (n), the data of the impulse response h (n) for N samples is
Impulse response buffers for 2N samples (a1, a
2) The second half of the impulse response h (n) is acquired before the impulse response h (n), and “0” is added before the first impulse response h (n) (block 1). ).・ Next, FFT is performed on the 2N samples to which “0” is added.
Performs processing (block 2), and stores the FFT processing results in impulse response buffers a1, a2
(Block 3).

【0006】入力信号x(n)を処理する場合には、 ・入力信号x(n)をNサンプル毎に第1、第2の入力
バッファ(不図示)に交互に取得する(ブロック4)。 ・そして、第1の入力バッファがNサンプルの入力信号
m(n)で満たされると、入力バッファとは別の2N
サンプル分の入力信号用バッファ(b1,b2)の後半
b2にコピーし、また、前半b1には前のNサンプルの
入力信号xm-1(n)で埋める(ただし、初回は「0」
で埋める)(ブロック5)。 ・そして、2NサンプルでFFT処理を行い、処理結果
を入力信号用バッファ(b1,b2)にストアする(ブ
ロック6)。
When the input signal x (n) is processed, the input signal x (n) is alternately acquired in the first and second input buffers (not shown) every N samples (block 4). And when the first input buffer is filled with N samples of the input signal x m (n), another 2N separate from the input buffer
The data is copied to the second half b2 of the input signal buffers (b1, b2) for the samples, and the first half b1 is filled with the input signal x m-1 (n) of the previous N samples (however, the first time is “0”).
(Block 5). Then, FFT processing is performed on 2N samples, and the processing results are stored in the input signal buffers (b1, b2) (block 6).

【0007】・次いで入力信号x(n)のFFT処理結
果とインパルス応答h(n)のFFT処理結果を乗算し
(ブロック7)、 ・次いで乗算結果を逆FFT処理し(ブロック8)、 ・次いで前半のNサンプルを畳み込み演算結果として出
力バッファcに書き込む(ブロック9)。また、この
間、第2の入力バッファには次の入力信号x(n)が書
き込まれており、第2の入力バッファが満たされる前に
上記の第1の入力バッファに対する処理が完了する。し
たがって、入力信号x(n)に対してこの一連の処理を
繰り返すことにより、FFTを利用した畳み込み演算結
果を得ることができる。
Next, the result of the FFT processing of the input signal x (n) is multiplied by the result of the FFT processing of the impulse response h (n) (block 7). Then, the result of the multiplication is subjected to inverse FFT processing (block 8). The first N samples are written to the output buffer c as a convolution operation result (block 9). During this time, the next input signal x (n) is written to the second input buffer, and the processing for the first input buffer is completed before the second input buffer is filled. Therefore, by repeating this series of processing on the input signal x (n), a convolution operation result using FFT can be obtained.

【0008】[0008]

【発明が解決しようとする課題】しかしながら、上記の
ようにFFTを用いた畳み込み演算では、式(1)をそ
のまま演算するよりも乗算回数を減少させることができ
るが、実時間処理を行う場合には、図5に示すようにN
サンプル分の入力信号x(n)が第1又は第2の入力バ
ッファに蓄積されないと、FFT処理を行うことができ
ないので、入力信号x(n)と出力信号y(n)の間に
2Nサンプル分の大きな遅延が発生するという問題点が
ある。
However, in the convolution operation using the FFT as described above, the number of multiplications can be reduced as compared with the case where the expression (1) is directly operated. Is N as shown in FIG.
Unless the input signal x (n) for the sample is accumulated in the first or second input buffer, the FFT processing cannot be performed. Therefore, 2N samples are provided between the input signal x (n) and the output signal y (n). There is a problem that a large delay occurs.

【0009】本発明は上記従来例の問題点に鑑み、入力
信号と出力信号の間の遅延を減少させることができる畳
み込み演算装置を提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made in consideration of the above-mentioned problems of the prior art, and has as its object to provide a convolution operation device capable of reducing a delay between an input signal and an output signal.

【0010】[0010]

【課題を解決するための手段】本発明は上記目的を達成
するために、以下の1)及び2)に記載の手段より成
る。すなわち、
Means for Solving the Problems In order to achieve the above object, the present invention comprises the following means 1) and 2). That is,

【0011】1)Nサンプルのインパルス応答データを
N(N=1,2,3…)で分割し、その分割したブロ
ックの前半のブロックを2M(M=1,2,3…)で分
割し、さらにこの分割ブロックの一部を2L(L=1,
2,3…)で分割して入力バッファに取り込む入力手段
と、前記入力バッファに取り込まれたインパルス応答デ
ータを前記ブロック毎にFFTする第1のFFT手段
と、オーディオ信号を前記ブロック毎にバッファリング
するバッファリング手段と、前記バッファリングされた
オーディオ信号を前記ブロック毎にFFTする第2のF
FT手段と、前記第1、第2のFFT手段によりそれぞ
れFFTされた結果を乗算する乗算手段と、前記乗算手
段により乗算された結果を逆FFTする逆FFT手段
と、前記逆FFT手段により逆FFTされた前後のブロ
ックの結果を加算する加算手段と、を備えた畳み込み演
算装置。
1) The impulse response data of N samples is divided by 2 N (N = 1, 2, 3,...), And the first half of the divided block is divided by 2 M (M = 1, 2, 3,...). Then, a part of the divided block is divided into 2 L (L = 1,
Input means for dividing the input signal into input buffers, inputting the input signal into the input buffer, first FFT means for performing an FFT of the impulse response data taken in the input buffer for each block, and buffering an audio signal for each block. Buffering means for performing an FFT on the buffered audio signal for each block.
FT means, multiplication means for multiplying the results obtained by the first and second FFT means by the FFT means, inverse FFT means for performing an inverse FFT on the result multiplied by the multiplication means, and inverse FFT means for performing the inverse FFT means. A convolution operation device comprising: an addition unit that adds the results of the blocks before and after the addition.

【0012】2)請求項1記載において、N=1、M=
2及びL=1としたことを特徴とする畳み込み演算装
置。
2) In the first aspect, N = 1, M =
2. A convolution operation device, wherein 2 and L = 1.

【0013】[0013]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。図1は本発明に係る畳み込み演算
装置の一実施形態を示すブロック図、図2は図1の装置
による入力信号と出力信号の間のタイミングチャートを
示す説明図である。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of the convolution operation device according to the present invention, and FIG. 2 is an explanatory diagram showing a timing chart between an input signal and an output signal by the device of FIG.

【0014】これらの図において、インパルス応答h
(n)を処理する場合には、インパルス応答h(n)の
データをインパルス応答バッファに順次入力し(入力ブ
ロック11)、次いで、Nサンプルを、2m、m、m、
2m、2m、4m、4m(ただし、m=N/16とす
る)の7分割にしたデータとして得る[図1の分割ブロ
ック12、図2の(a)]。次いで、前記それぞれのブ
ロック毎にFFT処理を行い[図1のFFT処理ブロッ
ク13、図2の(d)〜(j)]、そのFFT処理結果
をインパルス応答バッファにストアする(FFT処理結
果ストアブロック14)。入力信号x(n)を処理する
場合には、入力信号x(n)を前記のN/16(mの長
さ)サンプル(ブロック)毎に第1、第2、第3、第4
の入力バッファ(不図示)に順次繰り返し入力する[図
1の入力ブロック15、図2(c)]。そして、それら
のデータをバッファリングし(バッファリングブロック
16)、そのバッファリングしたデータをストアする
(ストアブロック17)。そして、2m,m,m,2
m,2m,4m,4mのそれぞれのブロック毎のFFT
処理を行い、処理結果を入力信号用バッファにストアす
る(FFT処理ブロック18)。]
In these figures, the impulse response h
When processing (n), the data of the impulse response h (n) is sequentially input to the impulse response buffer (input block 11), and then N samples are stored in 2m, m, m,.
It is obtained as data divided into 7 sections of 2 m, 2 m, 4 m, and 4 m (where m = N / 16) [divided block 12 in FIG. 1 and (a) in FIG. 2]. Next, FFT processing is performed for each of the blocks [FFT processing block 13 in FIG. 1, and (d) to (j) in FIG. 2], and the FFT processing result is stored in an impulse response buffer (FFT processing result storage block). 14). When processing the input signal x (n), the input signal x (n) is converted into the first, second, third, and fourth samples every N / 16 (m length) samples (blocks).
Of the input buffer (not shown) of FIG. 1 (input block 15 of FIG. 1, FIG. 2 (c)). Then, the data is buffered (buffering block 16), and the buffered data is stored (store block 17). And 2m, m, m, 2
FFT for each block of m, 2m, 4m, 4m
The processing is performed, and the processing result is stored in the input signal buffer (FFT processing block 18). ]

【0015】次いでブロック毎の入力信号x(n)のF
FT処理結果とインパルス応答h(n)のFFT処理結
果を乗算し[図1の乗算処理ブロック19、図2(d)
〜(j)]、ブロック毎の乗算結果を逆FFT処理し
(逆FFT処理ブロック20)、ブロック毎の乗算結果
を7ブロック分(Nサンプル分)加算する[図1の加算
ブロック21、図2(h)〜(r)]。そして、この加
算結果をNサンプル分の畳み込み演算結果として順次出
力バッファcに書き込んでいく[図1のステップ22、
図2(r)]。
Next, F of the input signal x (n) for each block
The result of the FT processing is multiplied by the result of the FFT processing of the impulse response h (n) [the multiplication processing block 19 in FIG. 1 and FIG.
~ (J)], inverse FFT processing is performed on the multiplication result for each block (inverse FFT processing block 20), and the multiplication result for each block is added for 7 blocks (for N samples) [addition block 21 in FIG. 1, FIG. (H)-(r)]. Then, the addition result is sequentially written to the output buffer c as a convolution operation result for N samples [Step 22, FIG.
FIG. 2 (r)].

【0016】したがって、図2に示すように、例えばN
サンプル分のインパルス応答h(n)を上述した手法に
より7分割ブロックに分割した場合には、入力信号x
(n)と出力信号y(n)の間はN/4サンプル分の遅
延となり、従来の方法より遅延を減少させることができ
る。例えば、N=131072、サンプリング周波数4
4.1kHzの場合、従来方法の場合5.9秒(262
144サンプル)の遅延が発生するが、本方法ではイン
パルス応答の分割数を16とすると遅延は0.092秒
(4021サンプル)にすることができ、リアルタイム
性を向上させることができる。尚、上記実施例によれ
ば、Nサンプルを16等分し、これを最小単位として変
則的な分割法としているが、これに限らず、Nサンプル
のインパルス応答データを2N(N=1,2,3…)で
分割し、その分割したブロックの前半のブロックを2M
(M=1,2,3…)で分割し、さらにこの分割ブロッ
クの一部を2L(L=1,2,3…)で分割するにして
も、同様の効果が得られる。上記の実施例は、N=1、
M=2及びL=1とした場合の例である。
Therefore, as shown in FIG.
When the impulse response h (n) for a sample is divided into 7 divided blocks by the above-described method, the input signal x
There is a delay of N / 4 samples between (n) and the output signal y (n), and the delay can be reduced as compared with the conventional method. For example, N = 131072, sampling frequency 4
In the case of 4.1 kHz, 5.9 seconds (262
In this method, if the number of divisions of the impulse response is 16, the delay can be 0.092 seconds (4021 samples), and the real-time property can be improved. According to the above-described embodiment, the N samples are divided into 16 equal parts and the irregular unit is used as a minimum unit. However, the present invention is not limited to this, and the impulse response data of N samples is calculated as 2 N (N = 1, 2, 3 ...) and the first half of the divided block is 2 M
(M = 1, 2, 3,...) And a part of the divided block is further divided by 2 L (L = 1, 2, 3,...), And the same effect can be obtained. In the above embodiment, N = 1,
This is an example where M = 2 and L = 1.

【0017】[0017]

【発明の効果】以上説明したように本発明によれば、イ
ンパルス応答を不等価の複数のブロックに分割して、F
FTを用いて畳み込み演算するようにしたので、Nが極
めて大きいインパルス応答を音場再生・音場制御に用い
た場合、入力信号と出力信号の間の遅延を減少させるこ
とができる。
As described above, according to the present invention, the impulse response is divided into a plurality of unequal blocks,
Since the convolution operation is performed using the FT, when an impulse response having an extremely large N is used for sound field reproduction and sound field control, a delay between an input signal and an output signal can be reduced.

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

【図1】本発明に係る畳み込み演算装置の一実施形態を
示すブロック図である。
FIG. 1 is a block diagram illustrating an embodiment of a convolution operation device according to the present invention.

【図2】図1の装置による入力信号と出力信号の間の遅
延を示す説明図である。
FIG. 2 is an explanatory diagram showing a delay between an input signal and an output signal by the device of FIG. 1;

【図3】従来の畳み込み演算装置を示すブロック図であ
る。
FIG. 3 is a block diagram showing a conventional convolution operation device.

【図4】図3の装置の処理を示す説明図である。FIG. 4 is an explanatory diagram showing a process of the apparatus in FIG. 3;

【図5】図3の装置による入力信号と出力信号の間の遅
延を示す説明図である。
5 is an explanatory diagram showing a delay between an input signal and an output signal by the device of FIG. 3;

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

11 入力ブロック(分割ブロックとともに入力手段を
構成する) 12 分割ブロック 13 FFT処理ブロック(第1のFFT手段) 14 FFT処理結果ストアブロック 15 入力ブロック 16 バッファリングブロック(バッファリング手段) 17 ストアブロック 18 FFT処理ブロック(第2のFFT手段) 19 乗算処理ブロック(乗算手段) 20 逆FFT処理ブロック(逆FFT手段) 21 加算ブロック(加算手段)
Reference Signs List 11 input block (configures input means together with divided blocks) 12 divided block 13 FFT processing block (first FFT means) 14 FFT processing result storage block 15 input block 16 buffering block (buffering means) 17 store block 18 FFT Processing block (second FFT means) 19 Multiplication processing block (multiplication means) 20 Inverse FFT processing block (inverse FFT means) 21 Addition block (addition means)

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 Nサンプルのインパルス応答データを2
N(N=1,2,3…)で分割し、その分割したブロッ
クの前半のブロックを2M(M=1,2,3…)で分割
し、さらにこの分割ブロックの一部を2L(L=1,
2,3…)で分割して入力バッファに取り込む入力手段
と、 前記入力バッファに取り込まれたインパルス応答データ
を前記ブロック毎にFFTする第1のFFT手段と、 オーディオ信号を前記ブロック毎にバッファリングする
バッファリング手段と、 前記バッファリングされたオーディオ信号を前記ブロッ
ク毎にFFTする第2のFFT手段と、 前記第1、第2のFFT手段によりそれぞれFFTされ
た結果を乗算する乗算手段と、 前記乗算手段により乗算された結果を逆FFTする逆F
FT手段と、 前記逆FFT手段により逆FFTされた前後のブロック
の結果を加算する加算手段と、 を備えた畳み込み演算装置。
1. An N-sample impulse response data is represented by 2
N (N = 1, 2, 3,...), The first half of the divided block is divided by 2 M (M = 1, 2, 3,...), And a part of this divided block is 2 L (L = 1,
Input means for dividing the input signal into input buffers and inputting the divided signals into input buffers; first FFT means for performing an FFT of the impulse response data input to the input buffer for each of the blocks; buffering of an audio signal for each of the blocks; Buffering means, FFT means for performing FFT on the buffered audio signal for each block, multiplying means for multiplying results obtained by performing FFT by the first and second FFT means, Inverse FFT for inverse FFT of the result multiplied by the multiplication means
A convolution operation device comprising: FT means; and addition means for adding results of blocks before and after inverse FFT performed by the inverse FFT means.
【請求項2】請求項1記載において、N=1、M=2及
びL=1としたことを特徴とする畳み込み演算装置。
2. The convolution operation device according to claim 1, wherein N = 1, M = 2, and L = 1.
JP11152204A 1999-05-31 1999-05-31 Convolution arithmetic unit Withdrawn JP2000341139A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11152204A JP2000341139A (en) 1999-05-31 1999-05-31 Convolution arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11152204A JP2000341139A (en) 1999-05-31 1999-05-31 Convolution arithmetic unit

Publications (1)

Publication Number Publication Date
JP2000341139A true JP2000341139A (en) 2000-12-08

Family

ID=15535349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11152204A Withdrawn JP2000341139A (en) 1999-05-31 1999-05-31 Convolution arithmetic unit

Country Status (1)

Country Link
JP (1) JP2000341139A (en)

Similar Documents

Publication Publication Date Title
JP3636361B2 (en) Digital filter with high accuracy and high efficiency
US20140355786A1 (en) Sound synthesis with fixed partition size convolution of audio signals
US10339907B2 (en) Signal processing apparatus
JP4127094B2 (en) Reverberation generator and program
Kulp Digital equalization using Fourier transform techniques
JP2000267682A (en) Convolutional arithmetic unit
JP4019753B2 (en) Reverberation imparting device, reverberation imparting method, program, and recording medium
JP2000341139A (en) Convolution arithmetic unit
US11611839B2 (en) Optimization of convolution reverberation
EP4007310A1 (en) Method of processing an input audio signal for generating a stereo output audio signal having specific reverberation characteristics
JP2006245865A (en) Convolution arithmetic operation method and convolution arithmetic operation processing program
US20050223050A1 (en) Efficient method and apparatus for convolution of input signals
JP3878601B2 (en) Digital audio broadcast receiving apparatus and operation method thereof
JP5169584B2 (en) Impulse response processing device, reverberation imparting device and program
US8340285B2 (en) Method for efficient and zero latency filtering in a long impulse response system
JP2005215058A5 (en)
JP3602658B2 (en) Apparatus having speaker distortion removal device
JP4263869B2 (en) Reverberation imparting device, reverberation imparting method, program, and recording medium
JP2011043655A (en) Data conversion device and data conversion program
JP2005215058A (en) Impulse response calculating method by fft
JP2024046786A (en) AUDIO SIGNAL PROCESSING APPARATUS, METHOD, AND PROGRAM
JP2006139158A (en) Sound signal synthesizer and synthesizing/reproducing apparatus
JPWO2021193947A5 (en) Fast Fourier Transform Apparatus, Digital Filter Apparatus, and Fast Fourier Transform Method
JP2002032356A (en) Recursive discrete fourier transform device
JPH0444760B2 (en)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050330

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20060824