(57)【要約】   【課題】  回路の無駄なく、高品質かつ長時間の残響音を生成する。  【解決手段】  ＦＩＲフィルタ８０−１〜８０−４および加算（累算）回路８１を有する第１の畳み込み演算回路と、第１の畳み込み演算回路において所定の段数だけ遅延された楽音波形データを受け入れ、第１のサンプリング周波数よりも小さい第２のサンプリング周波数による、平均化された第２の楽音波形データを出力する移動平均回路８２と、第２のサンプリング周波数による第２の楽音波形データを受け入れるＦＩＲフィルタ８０−５〜８０−２８および加算（累算）回路８３を有する第２の畳み込み演算回路と、第２の畳み込み演算回路の加算回路８３からの出力値を受け入れ、出力値を補間した補間値を算出し、第１のサンプリング周波数で、出力値および補間値を順次出力する補間回路８４とを備え、加算回路８１の出力と補間回路８４の出力とがさらに加算され、残響音データとして出力される。【選択図】  図８
2009128559.tif 000002
【特許請求の範囲】
【請求項１】
複数個のインパルス応答係数を記憶したインパルス応答係数メモリと、
時系列順に供給される楽音波形データを第１のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第１の畳み込み演算手段と、
この第１の畳み込み演算手段により所定段まで遅延された楽音波形データの出力周期を、前記第１のサンプリング周期より長い第２のサンプリング周期に変換する変換手段と、
この変換手段から順次供給される楽音波形データを、前記第２のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第２の畳み込み演算手段と、
この第２の畳み込み演算手段から順次供給される加算出力の出力周期を、前記第２のサンプリング周期から前記第１のサンプリング周期に変換する逆変換手段と、
この逆変換回路により前記第１のサンプリング周期で出力される前記加算出力と前記第１の畳み込み演算回路からの加算出力とを加算して出力する加算手段と、
を有することを特徴とする残響効果付加装置。
【請求項２】
前記変換手段は、前記第１の畳み込み演算手段から前記第１のサンプリング周期で順次供給される加算出力を移動平均演算を行い、この演算結果を前記第２のサンプリング周期で出力する移動平均演算手段からなることを特徴とする請求項１に記載の残響効果付加装置。
【請求項３】
前記逆変換手段が、前記第２のサンプリング周期で前記第２の畳み込み演算手段から順次供給される加算出力を補間し、当該加算出力或いは補間出力を前記第１のサンプリング周期で出力する補間手段からなることを特徴とする請求項１に記載の残響効果付加装置。
【請求項４】
複数個のインパルス応答係数を記憶したインパルス応答係数メモリと、
時系列順に供給される楽音波形データを第１のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第１の畳み込み演算手段と、
この（ｓ−１）（ｓ＝２、・・・、Ｓ）の畳み込み演算手段により所定段まで遅延された楽音波形データの出力周期を、前記第（ｓ−１）のサンプリング周期より長い第ｓのサンプリング周期に変換する変換手段と、
この変換手段から順次供給される楽音波形データを、前記第ｓのサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第ｓの畳み込み演算手段と、
この第ｓの畳み込み演算手段から順次供給される加算出力の出力周期を、前記第ｓのサンプリング周期から前記第（ｓ−１）のサンプリング周期に変換する逆変換手段と、
この逆変換回路により前記第（ｓ−１）のサンプリング周期で出力される前記加算出力と前記第（ｓ−１）の畳み込み演算回路からの加算出力とを加算して出力する加算手段と、
を有することを特徴とする残響効果付加装置。
【請求項５】
前記変換手段は、前記第（ｓ−１）の畳み込み演算手段から前記第（ｓ−１）のサンプリング周期で順次供給される加算出力を移動平均演算を行い、この演算結果を前記第ｓのサンプリング周期で出力する移動平均演算手段からなることを特徴とする請求項４に記載の残響効果付加装置。
【請求項６】
前記逆変換手段が、前記第ｓのサンプリング周期で前記第ｓの畳み込み演算手段から順次供給される加算出力を補間し、加算出力或いは当該補間出力を前記第（ｓ−１）のサンプリング周期で出力する補間手段からなることを特徴とする請求項４に記載の残響効果付加装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽音に残響音を付加する残響効果付加装置に関する。
【背景技術】
【０００２】
楽音に残響音を付加する残響効果付加装置は、ディジタルの楽音波形データを受け入れて、楽音波形データにディジタルフィルタによるフィルタ処理を施すのが一般的である。フィルタ処理においては、ＦＩＲ（有限インパルス応答：Finite Impulse Response）フィルタ或いはＩＩＲ（無限インパルス応答：Infinite Impulse
Response）フィルタが利用される。
【０００３】
ＦＩＲフィルタを利用する場合には、入力された楽音信号のデータＸ［ｎ−ｋ］（ｋ＝０，１，２，・・・，ｎ−１）と、音楽ホールの残響特性などから得たインパルス応答ａ［ｋ］を畳み込み演算することで、共鳴音のデータＹ［ｎ］＝ΣＸ［ｎ−ｋ］×ａ［ｋ］を得ることができる。
【０００４】
たとえば、特許文献１には、高音質を得るために、インパルス応答の直接音部の畳み込みを実行する信号処理系と、インパルス応答の反射音部の畳み込みを実行する信号処理系とを別個に並列して設け、反射音部の畳み込みを実行する信号処理系では、直接音部の畳み込みを実行する信号処理系よりも低いサンプリング信号にダウンサンプリングした信号を用いる技術が提案されている。
【特許文献１】特開２００７−２０２０２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１のように、二つの信号処理系を並列させる構成では、２つのＦＩＲフィルタを含む畳み込み演算回路が必要であるだけでなく、２系列のインパルス応答データが必要である。したがって、多くの回路要素やデータを必要とする。また、２つの信号処理系を並列に設けているため、インパルス応答係数が「０」となって何れか一方の信号処理系が実質的に演算を行わないような状況も起こりえるため、回路および演算に無駄が生じる場合がある。
【０００６】
本発明は、回路の無駄がなく、かつ、高品質かつ長時間の残響音を生成することができる残響効果付加装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的は、複数個のインパルス応答係数を記憶したインパルス応答係数メモリと、
時系列順に供給される楽音波形データを第１のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第１の畳み込み演算手段と、
この第１の畳み込み演算手段により所定段まで遅延された楽音波形データの出力周期を、前記第１のサンプリング周期より長い第２のサンプリング周期に変換する変換手段と、
この変換手段から順次供給される楽音波形データを、前記第２のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第２の畳み込み演算手段と、
この第２の畳み込み演算手段から順次供給される加算出力の出力周期を、前記第２のサンプリング周期から前記第１のサンプリング周期に変換する逆変換手段と、
この逆変換回路により前記第１のサンプリング周期で出力される前記加算出力と前記第１の畳み込み演算回路からの加算出力とを加算して出力する加算手段と、
を有することを特徴とする残響効果付加装置により達成される。
【０００８】
好ましい実施態様においては、前記変換手段は、前記第１の畳み込み演算手段から前記第１のサンプリング周期で順次供給される加算出力を移動平均演算を行い、この演算結果を前記第２のサンプリング周期で出力する移動平均演算手段からなる。
【０００９】
また、好ましい実施態様においては、前記逆変換手段が、前記第２のサンプリング周期で前記第２の畳み込み演算手段から順次供給される加算出力を補間し、当該加算出力或いは補間出力を前記第１のサンプリング周期で出力する補間手段からなる。
【００１０】
また、本発明の目的は、複数個のインパルス応答係数を記憶したインパルス応答係数メモリと、
時系列順に供給される楽音波形データを第１のサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第１の畳み込み演算手段と、
この（ｓ−１）（ｓ＝２、・・・、Ｓ）の畳み込み演算手段により所定段まで遅延された楽音波形データの出力周期を、前記第（ｓ−１）のサンプリング周期より長い第ｓのサンプリング周期に変換する変換手段と、
この変換手段から順次供給される楽音波形データを、前記第ｓのサンプリング周期で複数段遅延させ、当該遅延された楽音波形データ夫々と前記インパルス応答係数メモリから読み出されたインパルス応答係数夫々とを乗算するとともに、各乗算結果を加算して出力する第ｓの畳み込み演算手段と、
この第ｓの畳み込み演算手段から順次供給される加算出力の出力周期を、前記第ｓのサンプリング周期から前記第（ｓ−１）のサンプリング周期に変換する逆変換手段と、
この逆変換回路により前記第（ｓ−１）のサンプリング周期で出力される前記加算出力と前記第（ｓ−１）の畳み込み演算回路からの加算出力とを加算して出力する加算手段と、
を有することを特徴とする残響効果付加装置により達成される。
【００１１】
好ましい実施態様においては、前記変換手段は、前記第（ｓ−１）の畳み込み演算手段から前記第（ｓ−１）のサンプリング周期で順次供給される加算出力を移動平均演算を行い、この演算結果を前記第ｓのサンプリング周期で出力する移動平均演算手段からなる。
【００１２】
また、好ましい実施態様においては、前記逆変換手段が、前記第ｓのサンプリング周期で前記第ｓの畳み込み演算手段から順次供給される加算出力を補間し、加算出力或いは当該補間出力を前記第（ｓ−１）のサンプリング周期で出力する補間手段からなる。
【発明の効果】
【００１３】
本発明によれば、回路の無駄がなく、かつ、高品質かつ長時間の残響音を生成することができる残響効果付加装置を提供することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面を参照して、本発明の第１の実施の形態について説明する。図１は、本発明の第１の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。本実施の形態においては、電子楽器に残響音付加回路を設けている。
【００１５】
図１に示すように、本実施の形態にかかる電子楽器１０は、鍵盤１２、ＣＰＵ１４、ＲＯＭ１６、ＲＡＭ１８、楽音生成部２０、および、操作子群２２を有する。鍵盤１２、ＣＰＵ１４、ＲＯＭ１６、ＲＡＭ１８、楽音生成部２０および操作子群２２は、バス３０を介して接続される。楽音生成部２０は、発音回路２４、残響音付加回路２６および音響システム２８を有する。
【００１６】
鍵盤１２は、演奏者の押鍵操作に応じて、押鍵された鍵を特定する情報および押鍵された鍵のベロシティを示す情報をＣＰＵ１４に伝達することができる。
【００１７】
ＣＰＵ１４は、システム制御、押鍵された鍵に応じた音高の楽音を生成するための楽音生成部２０に与える種々の制御信号の生成、残響音付加回路２６に与える制御信号の生成などを実行する。ＲＯＭ１６は、プログラムや、プログラムの実行の際に使用される定数、楽音生成部２０により生成される楽音波形データのもととなる波形データ、残響音付加回路２６にて用いられる、インパルス応答係数を含むインパルス応答データなどを記憶する。ＲＡＭ１８は、プログラムの実行の過程で必要な変数、演算により得られた値、パラメータ、入力データ、出力データなどを一時的に記憶する。
【００１８】
図２は、本実施の形態にかかる発音回路、残響音付加回路およびこれらに関連する構成部材の例を示すブロックダイヤグラムである。
【００１９】
図１および図２に示すように、発音回路２４は、ＣＰＵ１４から与えられた、発音すべき楽音の音色を示す音色情報、発音すべき音高を示す音高情報およびベロシティ情報に基づいて、所定の音色で、かつ、所定音高の楽音波形データＸ［ｎ］を出力する。上記音色情報、音高情報およびベロシティ情報が制御信号１を構成する。
【００２０】
制御信号１に含まれる音高情報およびベロシティ情報は、鍵盤１２からの信号に基づいて、ＣＰＵ１４により生成される。また、制御信号１に含まれる音色情報は、演奏者による操作子群２２に含まれる操作子を操作した情報に基づいて、ＣＰＵ１４により生成される。
【００２１】
残響音付加回路２６は、複数の畳み込み演算回路を有する残響音生成回路３０および加算回路３２を備え、制御信号２にしたがって、楽音波形データに基づく残響音データを生成し、楽音波形データと残響音データとを合成した合成データを生成して出力する。図２に示すように、残響音生成回路３０には制御信号２が与えられる。制御信号２は、ＣＰＵ１２により生成される。
【００２２】
音響システム２８は、Ｄ／Ａ変換器、増幅回路およびスピーカを有し、合成データをアナログ信号に変換して、アナログ信号を増幅し、スピーカから放音する。
【００２３】
図３は、本実施の形態にかかる発音回路および波形メモリの構成例を示すブロックダイヤグラムである。図３に示すように、本実施の形態にかかる発音回路２４は、波形再生回路３６、エンベロープ生成回路３７および乗算回路３８を有する。
【００２４】
波形メモリ３５には、ピアノ音色データ、フォークギター音色データなど、種々の音色の波形データが記憶されている。波形メモリ３５は、たとえばＲＯＭ１６により実現される。波形再生回路３６は、波形メモリ３５に記憶された種々の音色のデータから、制御信号１に含まれる音色情報にしたがって所定の種別（たとえば、ピアノ音色）の波形データを、制御信号１に含まれる音高情報にしたがって読み出す。また、エンベロープ生成回路３７は、制御信号１に含まれるベロシティ情報にしたがったエンベロープデータを出力する。波形データとエンベロープデータとは、乗算回路３８において乗算され、楽音波形データＸ［ｎ］が出力される。
【００２５】
また、本実施の形態においては、インパルス応答メモリ（図示せず）に、楽音波形データのそれぞれの値と乗算されるインパルス応答データ係数を含むインパルス応答データが格納される。インパルス応答メモリには、音色ごとのインパルス応答データが格納される。図３に示す波形メモリを使用する場合には、ピアノ音色インパルス応答データ、フォークギター音色インパルス応答データ、ガットギター音色インパルス応答データ、チェロ音色インパルス応答データ、ヴァイオリン音色インパルスデータが、インパルス応答メモリに格納される。たとえば、インパルス応答メモリはＲＯＭ１６により実現される。また、制御信号２には、インパルス応答データを選択する情報が含まれる。
【００２６】
一般的な畳み込み演算回路においては、以下の式にしたがった畳み込み演算が実行される。
【００２７】
Ｙ［ｎ］＝ΣＸ［ｎ−ｋ］×ａ［ｋ］  （ｋ＝０，１，２，・・・，ｍ）
Ｙ［ｎ］は出力された残響音データ、Ｘ［ｎ−ｋ］は楽音波形データ、ａ［ｋ］はインパルス応答係数である。
【００２８】
図４は、一般的な畳み込み演算回路の概略を示すブロックダイヤグラムである。図４に示すものはいわゆるＦＩＲフィルタである。畳み込み演算回路は、入力されたデータ（たとえば、楽音波形データＸ［ｎ］）を受け入れて、これを１クロック分だけ遅延して出力する複数の遅延回路４０−１〜４０−ｍ、楽音波形データ、或いは、遅延回路の出力データを受け入れて、受け入れたデータと、インパルス応答係数ａ［ｋ］とを乗算する乗算回路４１−０〜４１−ｍ、および、乗算回路４１−０〜４１−ｍの出力を加算する加算回路４２とを有している。
【００２９】
ＦＩＲフィルタのタップ数は、たとえば１０２４など大きいものであるため、多量の遅延回路および乗算回路が必要となる。そこで、実際には、パイプラインを利用して、データ読み出し、乗算回路における乗算および加算回路における加算を並列的に実行することで、少数の乗算回路および加算回路によるＦＩＲフィルタを実現している。
【００３０】
たとえば、ＦＩＲフィルタは、遅延された楽音波形データを記憶するとともに、クロックにしたがって楽音波形データをシフトするシフトレジスタと、シフトレジスタにより保持された所定の段の楽音波形データと、当該楽音波形データと乗算すべきインパルス応答係数とを乗算する乗算回路と、乗算回路からの出力と、自身の出力とを累算する加算回路と、を有し、楽音波形データの取得およびインパルス応答係数の読み出し、乗算回路における乗算、並びに、加算回路における累算がパイプライン処理により並列的に実行される。
【００３１】
図５は、パイプラインを説明する図である。図５に示すように、ＦＩＲフィルタは、最初のクロックタイミング（クロック＝１）で、楽音波形データＸ［ｎ］およびインパルス応答係数ａ［０］を取得し（符号５０１参照）、次のクロックタイミング（クロック＝２）で、楽音波形データＸ［ｎ］とインパルス応答係数ａ［０］とを乗算して乗算値Ｚ［０］を得る（符号５１１参照）。クロック＝２のクロックタイミングでは、上記乗算と並列して、ＦＩＲフィルタは、図５に示すように、ＦＩＲフィルタは、最初のクロックタイミング（クロック＝１）で、楽音波形データＸ［ｎ−１］およびインパルス応答係数ａ［１］を取得する。
【００３２】
さらに次のクロックタイミング（クロック＝３）で、乗算値Ｚ［０］と元の累算値（初期的には累算値＝０）とが加算されて累算値Ｙ［０］が得られる（符号５２１参照）。クロック＝３のクロックタイミングにおいても、ＦＩＲフィルタにおいては、並列的に、楽音波形データＸ［ｎ−２］およびインパルス応答係数ａ［２］が取得されるとともに（符号５０３参照）、楽音波形データＸ［ｎ−１］とインパルス応答係数ａ［１］とが乗算されて乗算値Ｚ［１］が算出される（符号５１２参照）。
【００３３】
パイプライン処理によって、小数の乗算回路および加算回路によって高速な積和演算が実現される。しかしながら、楽音波形データのサンプリング周波数を４４．１ｋＨｚと考えると、２２．７μｓで積和演算全てを終了させる必要がある。ＦＩＲフィルタの動作クロックを５０ＭＨｚと高速動作を仮定しても、１クロックあたりの時間は２０ｎｓである。したがって、「２２．７μｓ／２０ｎｓ＝１１３５」であり、ＦＩＲフィルタのタップ数は１１００程度となる。実際に、１１００タップ程度のＦＩＲフィルタでは、残響音の生成には不十分である。
【００３４】
そこで、たとえば、１０２４タップの積和演算が可能なＦＩＲフィルタを複数設け、上流側のＦＩＲフィルタにより遅延され、出力された楽音波形データを、下流側のＦＩＲフィルタに入力するような構成として、各ＦＩＲフィルタから出力された積和演算値を加算することにより、サンプリング周波数を小さくすることなく、より多くのタップ数のＦＩＲフィルタを実現することができる。
【００３５】
図６は、１０２４タップのＦＩＲフィルタを２８個利用した残響音生成回路の例を示す図である。図６に示すように、この残響音生成回路は、２８個のＦＩＲフィルタ６０−１〜６０−２８と、ＦＩＲフィルタ６０−１〜６０−２８の出力を加算する加算（累算）回路６１を有する。
【００３６】
ＦＩＲフィルタにおいては、シフトレジスタにより、楽音波形データがクロックごとにシフトされ、最終的にＦＩＲフィルタから出力される。たとえば、最上流にあるＦＩＲフィルタ６０−１から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ６０−２の入力となる。
【００３７】
加算（累算）回路６１は、一方の入力を自身の出力（累算値）として、また、他方の入力をＦＩＲフィルタ６０−１〜６０−２８の何れか１つから出力された積和演算値として、累算値と、ＦＩＲフィルタ６０−１〜６０−２８の何れかからの積和演算値とを累算していく。全てのＦＩＲフィルタの積和演算値を累算することで、残響音データＹ［ｎ］を得ることができる。
【００３８】
それぞれが１０２４タップのＦＩＲフィルタを２８個用いることで、２８６７２タップのＦＩＲフィルタが実現される。また、加算（累算）回路６１においては、２８回の累算処理を要するが、１０２４タップのＦＩＲフィルタの処理および累算処理により、１０２４＋２８＝１０７６クロック程度しか要することはなく、上述した１１３５クロックの範囲内におさまる。
【００３９】
次に、本発明の実施の形態にかかる残響音生成回路について説明する。図７は、本実施の形態にかかる残響音生成回路の概略を示すブロックダイヤグラムである。図４に示すように、本実施の形態にかかる残響音生成回路は、入力されたデータ（たとえば、楽音波形データＸ［ｎ］）を受け入れて、これを１クロック分だけ遅延させて出力する複数の遅延回路７０−１〜７０−（ｍ−１）、楽音波形データ、或いは、遅延回路から出力された楽音波形データを受け入れて、受け入れた楽音波形データと、インパルス応答係数ａ［ｋ］（ｋ＝０、１、・・・（ｍ−１））とを乗算する乗算回路７１−０〜７１−（ｍ−１）を有している。
【００４０】
さらに、本実施の形態にかかる残響音生成回路は、第１のサンプリング周波数ｆｓ１による楽音波形データを受け入れて、複数の楽音波形データの平均値をとり、第２のサンプリング周波数ｆｓ２（ｆｓ２＜ｆｓ１）の平均化された第２の楽音波形データを生成する移動平均回路７３を有する。本実施の形態において、移動平均回路は、楽音波形データの出力周期を、第１のサンプリング周期より長い第２のサンプリング周期に変換する変換手段に相当する。なお、サンプリング周期＝１／サンプリング周波数であり、本実施の形態においては、サンプリング周波数を用いて説明を進める。
【００４１】
また、残響音生成回路は、第２の楽音波形データを受け入れて、これを、１クロック分だけ遅延させて出力する遅延回路７２−１〜７２−（Ｍ−１）と、遅延回路７２−１〜７２−（Ｍ−１）の出力データを受け入れて、受け入れたデータと、インパルス応答データａ［ｋ］（ｋ＝ｍ、・・・、（ｍ＋Ｍ））とを乗算する乗算回路７１−ｍ〜７１−（ｍ＋Ｍ）と、乗算回路７１−ｍ〜７１−（ｍ＋Ｍ）の出力を加算する加算回路７４と、加算回路７４の出力データ（第２のサンプリング周波数ｆｓ２）を補間して、第１のサンプリング周波数ｆｓ１のデータを出力する補間回路７５と、乗算回路７１−０〜７１−（ｍ−１）の出力と、補間回路７５の出力とを加算する加算回路７６とを有している。本実施の形態において、補間回路は、加算回路からの加算出力の出力周期を、第２のサンプリング周期から第１のサンプリング周期に変換する逆変換手段に相当する。
【００４２】
遅延回路７０−１〜７０−（ｍ−１）、乗算回路７１−０〜７１−（ｍ−１）および加算回路７６は第１の畳み込み演算回路７７を構成し、遅延回路７２−１〜７２−（Ｍ−１）、乗算回路７１−ｍ〜７１−（ｍ＋Ｍ）および加算回路７６は第２の畳み込み演算回路７８を構成する。
【００４３】
図１２は、残響音を説明するグラフである。図１２に示すように、直接音（符号１２００参照）に対する残響音は、２つの部分から成り立っていると言われている。そのひとつが初期反射音（符号１２０１参照）で、音源から発せられた音波が、壁、床、天井などを１度反射したものである。基本的には、直接音が聴こえた後に数ｍｓ〜１００ｍｓ後に聴こえる。もうひとつが後部残響音（符号１２０２参照）で、音源から発せられた音波が複数回反射したものであり、直接音が聴こえてから１５０ｍｓ程度経過後に聴こえる。なお、後部残響音が直接音に対して−６０ｄＢ減衰するまでの時間を残響時間と呼ぶ。
【００４４】
後期残響音は、壁、床、天井および聴衆などによって、反射を繰り返した音であり、特に、高周波成分が壁、床などにより吸収され失われていると考えられている。したがって、ＦＩＲフィルタで残響を実現する場合には、後部残響音のサンプリング周波数は初期反射音より小さくて良い。
【００４５】
本実施の形態においては、初期反射音については、第１のサンプリング周波数ｆｓ１の楽音波形データおよびインパルス応答係数によって畳み込み演算を行い、後部残響音については、第２のサンプリング周波数ｆｓ２の楽音波形データおよびインパルス応答係数によって畳み込み演算を行っている。
【００４６】
図１２に示すように、インパルス応答係数ａ［０］〜ａ［ｍ−１］は、初期反射音を再現するためのものであり（符号１２１１参照）、その一方、インパルス応答係数ａ［ｍ］〜ａ［ｍ＋Ｍ］は、後部反射音を再現するためのものである（符号１２１２参照）。このように、本実施の形態においては、インパルス応答係数を含むインパルス応答データは、通常のＦＩＲフィルタと同様に、１系列だけ、ＲＯＭ１６などのメモリ中に保持されていれば良い。
【００４７】
図７の例では、乗算回路７０−０〜７０−（ｍ−１）の信号の和Ｙ１が、以下のように得られ、これが初期反射音に相当する。
【００４８】
Ｙ１［ｎ］＝ΣＸ［ｎ−ｋ］×ａ［ｋ］（ｋ＝０，２，・・・，ｍ−１）
また、乗算回路７１−ｍ〜７１−（ｍ＋Ｍ）の信号の和Ｙ２は、以下のように得られる。これが後部残響音に相当する
【００４９】
Ｙ２［Ｎ］＝ΣＸ’［Ｎ−ｋ］×ａ［ｍ＋ｋ］（ｋ＝０，２，・・・，Ｍ）
なお、Ｘ’［Ｎ−ｋ］は、移動平均回路７３の出力であり、たとえば、隣接する２つの楽音波形データの平均とした場合には、以下の通りとなる。
【００５０】
Ｘ’［ｉ］＝（Ｘ［ｊ］＋Ｘ［ｊ＋１］）／２  （ｊ＝偶数）
以下、より具体的な残響音生成回路の例について説明する。図６を参照して説明したように、複数のＦＩＲフィルタを設け、ＦＩＲフィルタにおいて遅延された楽音波形データを下流側に隣接するＦＩＲフィルタに与え、かつ、ＦＩＲフィルタから出力される積和演算値を加算することで、より多くのタップ数のＦＩＲフィルタを実現できる。したがって、本実施の形態においても、複数のＦＩＲフィルタを利用した残響音生成回路を実現することができる。
【００５１】
図８は、本実施の形態にかかる、複数のＦＩＲフィルタを利用した残響音生成回路の例を示す図である。この例でも、１０２４タップのＦＩＲフィルタを２８個利用して残響音生成回路を実現している。
【００５２】
図８に示すように、残響音生成回路は、２８個のＦＩＲフィルタ１〜２８（符号８０−１〜８０−２８）と、上流側の４つのＦＩＲフィルタ８０−１〜８０−４の出力を加算する加算（累算）回路８６と、移動平均回路８２と、下流側の２４個のＦＩＲフィルタ８０−５〜８０−２８の出力を加算する加算（累算）回路８３と、補間回路８４と、加算回路８１の出力および補間回路８４の出力を加算する加算回路８５と、を有している。
【００５３】
図８に示す例においては、ＦＩＲフィルタ８０−１〜８０−４および加算（累算）回路８６が第１の畳み込み演算回路を構成し、ＦＩＲフィルタ８０−５〜８０−２８および加算（累算）回路８３が第２の畳み込み演算回路を構成する。
【００５４】
第１の畳み込み演算回路に含まれるＦＩＲフィルタ８０−１〜８０−３においては、第１のサンプリング周波数ｆｓ１による楽音波形データがクロックごとにシフトされ、ＦＩＲフィルタ８０−１〜８０−３から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ８０−２〜８０−４にそれぞれ入力される。また、ＦＩＲフィルタ８０−４から出力される楽音波形データは、移動平均回路８２に入力される。
【００５５】
それぞれのＦＩＲフィルタは、楽音波形データを記憶するシフトレジスタと、シフトレジスタにより保持された楽音波形データと、楽音波形データと乗算すべきインパルス応答係数とを乗算する乗算回路と、乗算回路からの出力と、自身の出力とを累算する加算回路と、を有し、楽音波形データの取得およびインパルス応答係数の読み出し、乗算回路における乗算、並びに、加算回路における累算が、パイプライン処理により並列的に実行される。
【００５６】
移動平均回路８２において平均化された楽音波形データは、ＦＩＲフィルタ８０−５に入力される。第２の畳み込み演算回路に含まれるＦＩＲフィルタ８０−５〜８０−２７においては、第２のサンプリング周波数ｆｓ２による平均化された楽音波形データがクロックごとにシフトされ、ＦＩＲフィルタ８０−５〜８０−２７から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ８０−６〜８０−２８にそれぞれ入力される。
【００５７】
図９は、本実施の形態にかかる移動平均回路の構成例を示す図である。図９に示すように、移動平均回路８２は、入力した楽音波形データの値を１／２にする乗算回路９０と、楽音波形データを１クロック分遅延させる遅延回路９１と、１クロック分遅延された楽音波形データの値を１／２にする乗算回路９２と、乗算回路９０および９２から出力されたデータを加算する加算回路９３と、を有する。
【００５８】
加算回路９３には、１／２倍された楽音波形データ（加算回路９０の出力）と、１／２倍された１クロック前の楽音波形データ（加算回路９２の出力）とが加算される。これにより、元の楽音波形データの第１のサンプリング周波数ｆｓ１の１／２となるような第２のサンプリング周波数ｆｓ２の、平均化された楽音波形データが出力される。
【００５９】
図１０は、本実施の形態にかかる補間回路の構成例を示す図である。図１０に示すように、補間回路８４は、入力した積和演算値を１／２にする乗算回路１０１と、積和演算値を第１のサンプリング周波数ｆｓ１の１クロック分遅延させる遅延回路１０２と、１クロック分遅延された積和演算値を１／２にする乗算回路１０３と、乗算回路１０１および乗算回路１０３から出力されたデータを加算する加算回路１０４と、入力された積和演算値を第１のサンプリング周波数ｆｓ１の１クロック分保持するデータラッチ１０５と、第１のサンプリング周波数ｆｓ１で、入力した積和演算値および加算回路１０４から出力されるデータの何れか一方を選択するセレクタ１０５を有している。
【００６０】
図１１は、本実施の形態にかかる補間回路の動作を示すタイミングチャートである。図１１において、補間回路の１クロックは第１のサンプリング周波数ｆｓ１に相当する。図１１に示すように、補間回路８２は第２のサンプリング周波数ｆｓ２で、つまり２クロックごとに積和演算値(ＷａｖｅＮｏｗ)を入力する（符号１１０１、１１１１参照）。
【００６１】
次のクロックタイミングで、加算回路１０４において、１／２倍された積和演算値ＷａｖｅＮｏｗと、先に遅延され、１／２倍された積和演算値（ＷａｖｅＯｌｄ）とが加算される（（ＷａｖｅＯｌｄ＋ＷａｖｅＮｅｗ）／２：符号１１０３）一方、遅延回路１０２において積和演算値が遅延される（ＷａｖｅＯｌｄ←ＷａｖｅＮｏｗ：符号１１０３参照）。
【００６２】
次のクロックタイミングで、セレクタ１０６により補間値（加算回路１０４の出力）が選択されて出力され（符号１１０４参照）。さらに、次のクロックタイミングで、セレクタ１０５により積和演算値（データラッチ１０５の出力）が選択されて出力される（符号１１０５参照）。
【００６３】
このような動作を繰り返すことにより、補間値（（ＷａｖｅＯｌｄ＋ＷａｖｅＮｅｗ）／２）、積和演算値（ＷａｖｅＮｅｗ）の順で、第１のサンプリング周波数ｆｓ１にしたがって繰り返し出力される。
【００６４】
図８において、ＦＩＲフィルタ８０−１〜８０−４から出力される積和演算値は、加算（累算）回路８１において加算される。実際には、加算（累算）回路８１は、一方の入力を自身の出力（累算値）として、他方の入力を第１の畳み込み演算回路のＦＩＲフィルタ８０−１〜８０−４の何れか１つから出力される積和演算値として、累算値と、ＦＩＲフィルタ８０−１〜８０−４からの積和演算値とを累算していく。これにより、第１の積和演算回路の全てのＦＩＲフィルタ８０−１〜８０−４の積和演算値が累算される。
【００６５】
また、移動平均回路８２により平均化された楽音波形データは、第１のサンプリング周波数ｆｓ１の半分の第２のサンプリング周波数ｆｓ２よるものである。したがって、第２の畳み込み演算回路のＦＩＲフィルタ８０−５〜８０−２８は、タップ数は同じであっても、第１の畳み込み演算回路のＦＩＲフィルタ８０−１〜８０−４と比較して、時間軸方向で２倍のインパルス応答係数との乗算を実現することができる。
【００６６】
第２の畳み込み演算回路のＦＩＲフィルタ８０−５〜８０−２８から出力される積和演算値は、加算（累算）回路８３において加算される。加算（累算）回路８１と同様に、加算（累算）回路８３は、一方の入力を自身の出力（累算値）として、他方の入力をＦＩＲフィルタ８０−５〜８０−２８の何れか１つから出力される積和演算値として、累算値と、ＦＩＲフィルタ８０−５〜８０−２８の何れかから出力される積和演算値とを累算していく。これにより、第２の畳み込み演算回路の全てのＦＩＲフィルタ８０−５〜８０−２８の積和演算値が累算される。
【００６７】
加算（累算）回路８３からの、第２のサンプリング周波数ｆｓ２にしたがった出力は、補間回路８４に入力される。補間回路８４は上述したように、入力したデータを補間し、第１のサンプリング周波数ｆｓ１で、補間値および積和演算値を繰り返し出力する。
【００６８】
加算（累算）回路８１の出力および補間回路８４の出力は加算回路８５により加算され、残響音データＹ［ｎ］として出力される。
【００６９】
なお、実際には、加算（累算）回路８１からの積和演算値の累算値は、補間回路８４の出力とタイミングが合うように、所定の時間だけ遅延される。
【００７０】
図２に示すように、残響音データＹ［ｎ］は、残響音生成回路３０から出力され、加算回路３２において、発音回路から出力された楽音波形データと加算される。加算回路３２から出力された残響音が付加された楽音波形データは、音響システム２８に出力され、音響信号としてスピーカから放音される。
【００７１】
本実施の形態においては、第１のサンプリング周波数による楽音波形データを遅延させる遅延回路７０−１〜７０−（ｍ−１）と、最新の楽音波形データおよび前記遅延回路により遅延された楽音波形データと所定のインパルス応答係数とを乗算する乗算回路７１−１〜７１−（ｍ−１）と、乗算回路の出力を加算する加算回路７６とを有する。
【００７２】
また、本実施の形態においては、第１の畳み込み演算回路における遅延回路からの、所定の段数だけ遅延された楽音波形データを受け入れ、第１のサンプリング周波数ｆｓ１よりも小さい第２のサンプリング周波数ｆｓ２による、平均化された第２の楽音波形データを出力する移動平均回路７３を有する。
【００７３】
本実施の形態において、第２の畳み込み演算回路７８は、前記第２のサンプリング周波数による第２の楽音波形データを遅延させる遅延回路７２−１〜７２−（Ｍ−１）と、最新の第２の楽音波形データおよび延回路により遅延された第２の楽音波形データと所定のインパルス応答係数とを乗算する乗算回路７１−ｍ〜７１−（ｍ＋Ｍ）と、乗算回路の出力を加算する加算回路７４とを有する。
【００７４】
さらに、本実施の形態においては、第２の畳み込み演算回路７８の加算回路７４からの出力値を受け入れ、当該出力値を補間した補間値を算出し、前記第１のサンプリング周波数で、前記出力値および補間値を順次出力する補間回路７５を有し、第１の畳み込み演算回路７７の加算回路７６が、複数の乗算回路７１−０〜７１−（ｍ−１）の出力と、補間回路７５の出力とを加算して、残響音データとして出力する。
【００７５】
本実施の形態は、上記構成とすることで、インパルス応答データとして、単一の系列のインパルス応答係数ａ［ｋ］（ｋ＝０、１、・・・（ｍ−１）、ｍ、・・・（ｍ＋Ｍ）を保持すれば足りる。したがって、複数系列のインパルス応答データを有することによるデータ量の増大やデータの無駄を防止することができる。
【００７６】
また、本実施の形態によれば、第１のサンプリング周波数ｆｓ１による楽音波形データを平均化することにより、第２のサンプリング周波数ｆｓ２による第２の楽音波形データを生成し、第２の畳み込み演算回路が第２のサンプリング周波数ｆｓ２による第２の楽音波形データを用いて畳み込み演算を行う。したがって、回路の無駄を回避しつつ、より長時間にわたった残響音を生成することが可能となる。
【００７７】
また、本実施の形態においては、前記第１の畳み込み演算回路が、遅延された第１のサンプリング周波数による楽音波形データを記憶するシフトレジスタと、シフトレジスタにより保持された所定の段の第１のサンプリング周波数による楽音波形データと、第１のサンプリング周波数による楽音波形データと乗算すべきインパルス応答係数とを乗算する乗算回路とを備え、乗算回路からの出力と、自身の出力とを累算する加算回路と、を有し、楽音波形データの取得およびインパルス応答係数の読み出し、乗算回路における乗算、並びに、前記加算回路における累算を、パイプライン処理により並列的に実行する。第２の畳み込み演算回路においても同様である。
【００７８】
したがって、少数の乗算回路および加算回路により畳み込み演算回路を実現することができる。
【００７９】
さらに、本実施の形態においては、第１の畳み込み演算回路は、１０２４タップのＦＩＲフィルタであって、それぞれが、第１のサンプリング周波数による楽音波形データ、或いは、上流側に隣接するＦＩＲフィルタにおいて１０２４タップだけ遅延された第１のサンプリング周波数による楽音波形データを受け入れるように構成された４個のＦＩＲフィルタを備え、
また、第２の畳み込み演算回路は、１０２４タップのＦＩＲフィルタであって、それぞれが、第２のサンプリング周波数による第２の楽音波形データ、或いは、上流側に隣接するＦＩＲフィルタ回路において１０２４タップだけ遅延された第２のサンプリング周波数による楽音波形データを受け入れるように構成された２６個のＦＩＲフィルタを備える。
【００８０】
これにより、初期反射音および十分な長さの後部残響音を含む残響音データを生成することが可能となる。
【００８１】
次に、本発明の第２の実施の形態について説明する。第１の実施の形態においては、第１の畳み込み演算回路を構成する第１群のＦＩＲフィルタ（図８においては、ＦＩＲフィルタ８０−１〜８０−４）と、第２の畳み込み演算回路を構成する第２群のＦＩＲフィルタ（図８においては、ＦＩＲフィルタ８０−５〜８０−２８）とを設け、第１群のＦＩＲフィルタの各々においては、第１のサンプリング周波数ｆｓ１の楽音波形データに基づく積和演算が実行され、第２群のＦＩＲフィルタにおいては、第１のサンプリング周波数より小さい（実際には１／２の）第２のサンプリング周波数ｆｓ２の楽音波形データに基づく積和演算が実行されている。
【００８２】
第２の実施の形態においては、さらに、第３の畳み込み演算回路を構成する第３群のＦＩＲフィルタを設け、第２のサンプリング周波数より小さい（たとえば、１／２）第３のサンプリング周波数ｆｓ３の楽音波形データに基づく積和演算が実行される。
【００８３】
図１３は、第２の実施の形態にかかる、複数のＦＩＲフィルタを利用した残響音生成回路の例を示す図である。この例でも、１０２４タップのＦＩＲフィルタを２８個利用して残響音生成回路を実現している。
【００８４】
図１３に示すように、残響音生成回路は、２８個のＦＩＲフィルタ１３０−１〜１３０−２８と、上流側の４つのＦＩＲフィルタ１３０−１〜１３０−４の出力を加算する加算（累算）回路１３１と、移動平均回路１３２と、中流に位置する２２個のＦＩＲフィルタ１３０−５〜１３０−２６の出力を加算する加算（累算）回路１３３と、移動平均回路１３４と、下流側に位置する２個のＦＩＲフィルタ１３０−２７〜１３０−２８の出力を加算する加算（累算）回路１３５と、補間回路１３６と、加算（累算）回路１３３の出力および補間回路１３６の出力を加算する加算回路１３７と、補間回路１３８と、加算回路１３１の出力および補間回路１３８の出力を加算する加算回路１３９と、を有している。
【００８５】
図１３に示す例においては、ＦＩＲフィルタ１３０−１〜１３０−４および加算（累算）回路１３１が第１の畳み込み演算回路を構成し、ＦＩＲフィルタ１３０−５〜１３０−２６および加算（累算）回路１３３が第２の畳み込み演算回路を構成し、ＦＩＲフィルタ１３０−２７〜８０−２８および加算（累算）回路１３５が第３の畳み込み演算回路を構成する。
【００８６】
第１の畳み込み演算回路に含まれるＦＩＲフィルタ１３０−１〜１３０−３においては、楽音波形データがクロックごとにシフトされ、ＦＩＲフィルタ１３０−１〜１３０−３から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ１３０−２〜１３０−４にそれぞれ入力される。また、ＦＩＲフィルタ１３０−４から出力される楽音波形データは、移動平均回路１３２に入力される
移動平均回路１３２においては、平均化された、第２のサンプリング周波数ｆｓ２による楽音波形データが生成される。第２のサンプリング周波数ｆｓ２による楽音波形データは、ＦＩＲフィルタ１３０−５に入力される。第２の畳み込み演算回路に含まれるＦＩＲフィルタ１３０−５〜１３０−２５においては、楽音波形データがクロックごとにシフトされ、ＦＩＲフィルタ１３０−５〜１３０−２５から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ１３０−６〜１３０−２６にそれぞれ入力される。ＦＩＲフィルタ１３０−２６から出力される楽音波形データは、移動平均回路１３４に入力される。
【００８７】
移動平均回路１３４においては、平均化された、第３のサンプリング周波数ｆｓ３による楽音波形データが生成される。第３のサンプリング周波数ｆｓ３による楽音波形データは、ＦＩＲフィルタ１３０−２７に入力される。第３の畳み込み演算回路に含まれるＦＩＲフィルタ１３０−２７においては、楽音波形データがクロックごとにシフトされ、ＦＩＲフィルタ１３０−２７から出力される楽音波形データは、下流側に隣接する次のＦＩＲフィルタ１３０−２８に入力される。
【００８８】
なお、移動平均回路および補間回路の構成は、第１の実施の形態のものと同様である。また、ＦＩＲフィルタも第１の実施の形態のものと同様である。
【００８９】
ＦＩＲフィルタ１３０−１〜１３０−４から出力される積和演算値は、加算（累算）回路１３１において加算される。加算（累算）回路１３１は、一方の入力を自身の出力（累算値）として、他方の入力を第１の畳み込み演算回路のＦＩＲフィルタ１３０−１〜１３０−４の何れか１つから出力される積和演算値として、累算値と、ＦＩＲフィルタ１３０−１〜１３０−４の何れかから出力される積和演算値とを累算していく。これにより、第１の積和演算回路の全てのＦＩＲフィルタ１３０−１〜１３０−４の積和演算値が累算される。
【００９０】
移動平均回路１３２により平均化された楽音波形データは、第１のサンプリング周波数ｆｓ１の半分の第２のサンプリング周波数ｆｓ２によるものである。したがって、第２の畳み込み演算回路のＦＩＲフィルタ１３０−５〜１３０−２６は、タップ数は同じであっても、第１の畳み込み演算回路のＦＩＲフィルタ１３０−１〜１３０−４と比較して、時間軸方向で２倍のインパルス応答係数との乗算を実現することができる。
【００９１】
第２の畳み込み演算回路のＦＩＲフィルタ１３０−５〜１３０−２６から出力される積和演算値は、加算（累算）回路１３３において加算される。加算（累算）回路１３３は、一方の入力を自身の出力（累算値）として、他方の入力をＦＩＲフィルタ１３０−５〜１３０−２６の何れか１つのから出力される積和演算値として、累算値と、ＦＩＲフィルタ１３０−５〜１３０−２６の何れかから出力される積和演算値とを累算していく。これにより、第２の畳み込み演算回路の全てのＦＩＲフィルタ１３０−５〜１３０−２６の積和演算値が累算される。
【００９２】
移動平均回路１３４により平均化された楽音波形データは、第２のサンプリング周波数ｆｓ２の半分の第３のサンプリング周波数ｆｓ３によるものである。したがって、第３の畳み込み演算回路のＦＩＲフィルタ１３０−２７〜１３０−２８は、タップ数は同じであっても、（第２の畳み込み演算回路のＦＩＲフィルタ１３０−５〜１３０−２６と比較して、時間軸方向で２倍のインパルス応答係数との乗算（第１の畳み込み演算回路のＦＩＲフィルタ１３０−１〜１３０−４と比較して、時間軸方向で４倍のインパルス応答係数との乗算）を実現することができる。
【００９３】
さらに、第３の畳み込み演算回路ＦＩＲフィルタ１３０−２７および１３０−２８から出力される積和演算値は、加算（累算）回路１３５において加算される。加算（累算）回路１３５は、一方の入力を自身の出力（累算値）として、他方の入力をＦＩＲフィルタ１３０−２７、１３０−２８の何れか１つから出力される積和演算値として、累算値と、ＦＩＲフィルタ１３０−２７、１３０−２８の何れかから出力される積和演算値とを累算していく。これにより、第３の畳み込み演算回路の全てのＦＩＲフィルタ１３０−２７、１３０−２８の積和演算値が累算される。
【００９４】
加算（累算）回路１３５からの、第３のサンプリング周波数ｆｓ３にしたがった出力は補間回路１３６に与えられる。補間回路１３６は、第２のサンプリング周波数ｆｓ２で、補間値および積和演算値を繰り返し出力する。
【００９５】
加算（累算）回路１３３の出力および補間回路１３６の出力は、加算回路１３７により加算される。加算回路１３７からの、第２のサンプリング周波数ｆｓ２にしたがった出力は、さらに、補間回路１３８に与えられる。
【００９６】
補間回路１３７は、第１のサンプリング周波数ｆｓ１で、補間値および積和演算値を繰り返し出力する。補間回路１３６および補間回路１３８の構成は、第１の実施の形態にかかる補間回路８２と同様である。
【００９７】
補間回路１３８の出力と、加算（累算）回路１３１の出力とは、加算回路１３９において加算され、残響音データＹ［ｎ］として出力される。
【００９８】
なお、第１の実施の形態と同様に、実際には、加算（累算）回路１３３からの積和演算値の累算値は、補間回路１３６の出力とタイミングが合うように、所定の時間だけ遅延される。同様に、加算（累算）回路１３１からの積和演算値の累算値は、補間回路１３８の出力とタイミングが合うように、所定の時間だけ遅延される。
【００９９】
残響音データＹ［ｎ］は、残響音生成回路３０から出力され、加算回路３２において、発音回路から出力された楽音波形データと加算される。加算回路３２から出力された残響音が付加された楽音波形データは、音響システム２８に出力され、音響信号としてスピーカから放音される。
【０１００】
第２の実施の形態によれば、第１の畳み込み演算回路は、１０２４タップのＦＩＲフィルタであって、それぞれが、第１のサンプリング周波数による楽音波形データ、或いは、上流側に隣接するＦＩＲフィルタにおいて１０２４タップだけ遅延された第１のサンプリング周波数による楽音波形データを受け入れるように構成された４個のＦＩＲフィルタを備え、
第２の畳み込み演算回路は、１０２４タップのＦＩＲフィルタであって、それぞれが、第２のサンプリング周波数による第２の楽音波形データ、或いは、上流側に隣接するＦＩＲフィルタ回路において１０２４タップだけ遅延された第２のサンプリング周波数による楽音波形データを受け入れるように構成された２４個のＦＩＲフィルタを備え、
また、第３の畳み込み演算回路は、１０２４タップのＦＩＲフィルタであって、それぞれが、第３のサンプリング周波数による第３の楽音波形データ、或いは、上流側に隣接するＦＩＲフィルタ回路において１０２４タップだけ遅延された第３のサンプリング周波数による楽音波形データを受け入れるように構成された２４個のＦＩＲフィルタを備えている。
【０１０１】
このような構成とすることで、さらに長い残響時間に相当する残響音データを生成することが可能となる。
【０１０２】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【０１０３】
たとえば、前記実施の形態においては、１０２４タップのＦＩＲフィルタを試用しているが、ＦＩＲのフィルタのタップ数はこれに限定されるものではなく楽音波形データのサンプリング周波数（第１のサンプリング周波数ｆｓ１）およびＦＩＲフィルタの処理速度に応じて決定すれば良い。
【０１０４】
また、第１の畳み込み演算回路、第２の畳み込み演算回路および第３の畳み込み演算回路におけるＦＩＲフィルタの数も上記実施の形態に記載された数に限定されるものではない。
【０１０５】
さらに、第１の実施の形態においては、２つの畳み込み演算回路を設け、第２の実施の形態においては３つの畳み込み演算回路を設けたが、畳み込み演算回路の数はそれ以上であっても良い。
【図面の簡単な説明】
【０１０６】
【図１】図１は、本発明の第１の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。
【図２】図２は、本実施の形態にかかる発音回路、残響音付加回路およびこれらに関連する構成部材の例を示すブロックダイヤグラムである。
【図３】図３は、本実施の形態にかかる発音回路および波形メモリの構成例を示すブロックダイヤグラムである。
【図４】図４は、一般的な畳み込み演算回路の概略を示すブロックダイヤグラムである。
【図５】図５は、パイプラインを説明する図である。
【図６】図６は、１０２４タップのＦＩＲフィルタを２８個利用した残響音生成回路の例を示す図である。
【図７】図７は、本実施の形態にかかる制御信号３を生成する部材のブロックダイヤグラムである。
【図８】図８は、本実施の形態にかかる、複数のＦＩＲフィルタを利用した残響音生成回路の例を示す図である。
【図９】図９は、本実施の形態にかかる移動平均回路の構成例を示す図である。
【図１０】図１０は、本実施の形態にかかる補間回路の構成例を示す図である。
【図１１】図１１は、本実施の形態にかかる補間回路の動作を示すタイミングチャートである。
【図１２】図１２は、残響音を説明するグラフである。
【図１３】図１３は、第２の実施の形態にかかる、複数のＦＩＲフィルタを利用した残響音生成回路の例を示す図である。
【符号の説明】
【０１０７】
１０        電子楽器
１２        鍵盤
１４        ＣＰＵ
１６        ＲＯＭ
１８        ＲＡＭ
２０        楽音生成部
２２        操作子群
２４        発音回路
２６        残響音付加回路
２８        音響システム
３０        残響音生成回路
３２        加算回路
【図１】
2009128559.tif 000003
【図２】
2009128559.tif 000004
【図３】
2009128559.tif 000005
【図４】
2009128559.tif 000006
【図５】
2009128559.tif 000007
【図６】
2009128559.tif 000008
【図７】
2009128559.tif 000009
【図８】
2009128559.tif 000010
【図９】
2009128559.tif 000011
【図１０】
2009128559.tif 000012
【図１１】
2009128559.tif 000013
【図１２】
2009128559.tif 000014
【図１３】
2009128559.tif 000015