(57)【要約】   【課題】  自然楽器の音色変化と同等の音色変化を実現する。  【解決手段】  フィルタ係数算出回路２６は、周波数に基づく第１のパラメータ及びフィルタ特性におけるフィルタのゲインの減衰或いは増強の度合いを表わす複数のレベル夫々に基づく第２のパラメータに関連付けられた、フィルタ係数の組を複数種記憶したパラメータテーブルを有し、楽音信号の周波数及び強度に対応して決定される第１のパラメータ及び第２のパラメータにより、パラメータテーブル３５から、フィルタ係数の組を取り出し、フィルタ手段２２に出力する。フィルタ回路２２は、楽音信号に、フィルタ係数の組により規定されるフィルタ特性に基づくフィルタ処理を施す。【選択図】  図２
2008076439.tif 000002
【特許請求の範囲】
【請求項１】
フィルタ係数の組を出力するフィルタ係数出力手段と、
外部より供給される、所定の周波数を有する楽音信号に対して、前記フィルタ係数出力手段より出力されたフィルタ係数の組により規定されるフィルタ特性に基づくフィルタ処理を施すフィルタ手段と、を備えたフィルタ装置であって、
前記フィルタ係数出力手段が、
複数の周波数夫々について、当該周波数に基づく第１のパラメータ、及び、前記フィルタ特性におけるフィルタのゲインの減衰或いは増強の度合いを表わす複数のレベル夫々に基づく第２のパラメータに関連付けられた、前記フィルタ手段におけるフィルタ係数の組を複数種記憶したパラメータテーブルと、
前記供給される楽音信号の周波数及び強度に対応して決定される前記第１のパラメータ及び第２のパラメータにより、前記パラメータテーブルから、該当するフィルタ係数の組を取り出して前記フィルタ手段にする出力するフィルタ係数生成手段と、
を有することを特徴とするフィルタ装置。
【請求項２】
前記パラメータテーブルは、
供給される楽音信号の周波数により規定され、当該周波数の高低に伴って高低し、かつ、そこからフィルタのゲインの減衰或いは増強が開始される基準周波数から、ほぼ一定の傾きをもって減衰或いは増強され、かつ前記傾きが、前記供給される楽音信号の強度が大きくなるのにともなって、大きくなるように変化するフィルタ特性となるように、
予め定められた所定の周波数における、前記基準周波数からのゲインの減衰或いは増強の最大レベルを第２のパラメータとし、かつ、ゲインのレベルが前記最大レベルから所定の比率となるような周波数である遷移周波数を第１のパラメータとして、
複数の第１のパラメータのそれぞれについて、第１のパラメータ及び最大レベルが異なる複数の第２のパラメータのそれぞれの組に基づく、フィルタ係数の組を格納したことを特徴とする請求項１に記載のフィルタ装置。
【請求項３】
前記フィルタ係数生成手段はさらに、前記第２のパラメータを時間の経過に伴って変化させるエンベロープ発生手段を有することを特徴とする請求項１または２に記載のフィルタ装置。
【請求項４】
前記エンベロープ発生手段は、前記第２のパラメータに対して、その時間の経過に伴って変化する値を加減算することを特徴とする請求項３に記載のフィルタ装置。
【請求項５】
前記パラメータテーブルは、前記第１のパラメータの第１の上位ビット及び第２のパラメータの第２の上位ビットからなる複数ビットのデータを入力として、対応する前記フィルタ係数の組を出力し、
前記フィルタ係数生成手段はさらに、前記フィルタ係数の組に含まれるフィルタ係数のそれぞれについて、
前記パラメータテーブルから出力されたフィルタ係数を、前記第１のパラメータの前記第１の上位ビットを除く所定の第１の下位ビット、及び、第２のパラメータの前記第２の上位ビットを除く所定の第２の下位ビットによって補間する補間手段を有することを特徴とする請求項１ないし４の何れか一項に記載のフィルタ装置。
【請求項６】
前記補間手段は、前記第１の上位ビットを変化させることにより得られたフィルタ係数、その差分値及び前記第２の下位ビットにより得た第１の補間値と、第２の上位ビットを変化させた上で、前記第１の上位ビットを変化させることにより得られたフィルタ係数、その差分値及び前記第２の下位ビットにより得た第２の補間値と、前記第１の補間値及び第２の補間値の差分値及び前記第１の下位ビットにより得た第３の補間値と、を算出し、前記第３の補間値を補間されたフィルタ係数として出力することを特徴とする請求項５に記載のフィルタ装置。
【請求項７】
さらに、前記供給される楽音信号の強度に基づいて、前記第２のパラメータを生成する制御手段を備えたことを特徴とする請求項１ないし６の何れか一項に記載のフィルタ装置。
【請求項８】
外部操作により発音すべき楽音の周波数及び強度を指示する発音指示手段と、
前記周波数に基づき第１のパラメータを生成するとともに、前記強度に基づき第２のパラメータを算出する制御手段と、
複数の周波数のそれぞれについて、当該周波数及びフィルタ特性におけるフィルタのゲインの減衰或いは増強の度合いを表わす複数種のレベルに関連付けられたフィルタ係数の組を複数種記憶したパラメータテーブルと、
前記制御手段により算出された第１及び第２のパラメータに基づいて決定される周波数及びレベルに対応するフィルタ係数の組を前記パラメータテーブルから取り出すフィルタ係数生成手段と、
前記楽音生成手段からの楽音信号に対して、このフィルタ係数生成手段からのフィルタ係数の組により規定されるフィルタ特性に基づくフィルタリング処理を施して出力するフィルタ手段と、
を備えたことを特徴とする電子楽器。
【請求項９】
前記フィルタ係数生成手段はさらに、前記第２のパラメータを時間の経過に伴って変化させるエンベロープ発生手段を有することを特徴とする請求項８に記載の電子楽器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フィルタ装置および当該フィルタ装置を搭載した電子楽器に関する。
【背景技術】
【０００２】
自然楽器の音色変化は、基音に対する倍音の振幅比率が変化することによって生ずる。特に、演奏の強弱による音色変化において、強く演奏する（たとえばピアノでは強く打鍵する）ほど高次倍音の振幅比率が大きくなる。その一方、弱く演奏する（ピアノでは弱く打鍵する）ほど高次倍音の振幅比率は小さくなる。
【０００３】
図１２（ａ）、（ｂ）は、アコースティックピアノの波形を示すグラフであり、図１２（ａ）は、フォルテシモで打鍵したときの波形、図１２（ｂ）はメゾピアノで打鍵したときの波形である。図１３（ａ）、（ｂ）は、図１２（ａ）、（ｂ）のそれぞれの波形から算出されたスペクトルを示すグラフである。図１３（ａ）、（ｂ）において、横軸（周波数軸）はリニアであり、縦軸はｄＢである。これらは、図１２（ａ）、（ｂ）に示す波形の発音開始近傍から４０９６サンプルを、ブラックマン(Blackmann)の窓関数で切り取ったものに基づいて算出されている。
【０００４】
図１４は、図１３（ａ）、（ｂ）に示すスペクトルから抽出したスペクトラム・エンベロープを示す図である。図１４に示すように、スペクトラム・エンベロープは、基本波から高調波に向かってほぼ一定の傾きをもち、かつ、その傾きが、演奏の強さにより一様に変化することがわかる。図１４の例では、演奏の強さが強くなるのにしたがって、傾きが大きくなる（つまり０に近づく）。したがって、電子楽器においてフィルタ回路によって、音色を変化させる場合にも、フィルタ回路が、図１４に示すようなスペクトラム・エンベロープを持つようなフィルタ特性を持っているのが望ましい。
【特許文献１】特開平４−７８２１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のフィルタの伝達関数を（１）式に示す。
【０００６】
【数１】
2008076439.tif 000003
なお、ω０＝２πｆｃ／ｆｓ    （０＜ω０＜１）
ここに、ｆｃはカットオフ周波数、ｆｓはサンプリング周波数、ω０はカットオフ角周波数、Ｑは選択度を表す。
【０００７】
従来のフィルタ回路においては、フィルタ特性をω０（或いはｆｃ）とＱとによって変化させるため、フィルタ回路は、パラメータとしてω０（或いはｆｃ）およびＱを受け入れ、これに基づいて、その特性を変化させるように構成されている。
【０００８】
図１５は、（１）式に示す特性をもつ二次ＩＩＲフィルタにおいて、パラメータとしてｆｃを変更したときのフィルタ特性を示すグラフである。図１５においても、横軸（周波数軸）はリニア（０〜１０ｋＨｚ）であり、縦軸はｄＢである。図１５に示すように、ｆｃを変更しても、変更されたフィルタ特性は、図１３（ａ）、（ｂ）、図１４に示すような特性とは程遠く、したがって、カットオフ周波数を制御してピアノ音色の変化と同等の変化を実現することが非常に難しいという問題点があった。
【０００９】
また、現在、電子楽器においては、ＰＣＭ方式を採用しているものが多い。このＰＣＭ方式においては、楽音の発生時（アタック時）のアタック時波形と、それ以降の繰り返し用の波形の波形データを波形メモリに記憶しておき、アタック時以降には、繰り返し用の波形の波形データを繰り返して読み出すことで、波形メモリの容量を小さくしている。しかしながら、同じ波形を繰り返すだけでは、音色が固定され単調となるため、フィルタ回路によって音色を時間経過にともなって変化させている。特に、アコースティックピアノは、時間経過にともなって高次倍音ほど速く減衰する。このような変化を従来のフィルタ回路において実現することは不可能であった。
【００１０】
たとえば、特許文献１には、カットオフ周波数ｆｃではなく、伝達特性が変化し始める特定の周波数ｆ０とその変化率をパラメータとするフィルタが提案されている。しかしながら、特許文献１に開示されたフィルタを用いても、特に、ピアノ音色の変化と同等の変化を実現することは困難であった。特に、所定の周波数における減衰或いは増強の最大レベルから所定の比率となる周波数（以下、本明細書においては、「遷移周波数」と称する）が、パラメータの変化により移動するという問題点があった。
【００１１】
本発明は、自然楽器、特に、アコースティックピアノの音色変化と同等の音色変化を実現できるフィルタ装置および電子楽器を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の目的は、フィルタ係数の組を出力するフィルタ係数出力手段と、外部より供給される、所定の周波数を有する楽音信号に対して、前記フィルタ係数出力手段より出力されたフィルタ係数の組により規定されるフィルタ特性に基づくフィルタ処理を施すフィルタ手段と、を備えたフィルタ装置であって、
前記フィルタ係数出力手段が、複数の周波数夫々について、当該周波数に基づく第１のパラメータ、及び、前記フィルタ特性におけるフィルタのゲインの減衰或いは増強の度合いを表わす複数のレベル夫々に基づく第２のパラメータに関連付けられた、前記フィルタ手段におけるフィルタ係数の組を複数種記憶したパラメータテーブルと、前記供給される楽音信号の周波数及び強度に対応して決定される前記第１のパラメータ及び第２のパラメータにより、前記パラメータテーブルから、該当するフィルタ係数の組を取り出して前記フィルタ手段にする出力するフィルタ係数生成手段と、を有することを特徴とするフィルタ装置により達成される。
【００１３】
好ましい実施態様においては、前記パラメータテーブルは、供給される楽音信号の周波数により規定され、当該周波数の高低に伴って高低し、かつ、そこからフィルタのゲインの減衰或いは増強が開始される基準周波数から、ほぼ一定の傾きをもって減衰或いは増強され、かつ前記傾きが、前記供給される楽音信号の強度が大きくなるのにともなって、大きくなるように変化するフィルタ特性となるように、
予め定められた所定の周波数における、前記基準周波数からのゲインの減衰或いは増強の最大レベルを第２のパラメータとし、かつ、ゲインのレベルが前記最大レベルから所定の比率となるような周波数である遷移周波数を第１のパラメータとして、複数の第１のパラメータのそれぞれについて、第１のパラメータ及び最大レベルが異なる複数の第２のパラメータのそれぞれの組に基づく、フィルタ係数の組を格納する。
【００１４】
別の好ましい実施態様においては、前記フィルタ係数生成手段はさらに、前記第２のパラメータを時間の経過に伴って変化させるエンベロープ発生手段を有する。
【００１５】
より好ましい実施態様においては、前記エンベロープ発生手段は、前記第２のパラメータに対して、その時間の経過に伴って変化する値を加減算する。
【００１６】
また、別の好ましい実施態様においては、前記パラメータテーブルは、前記第１のパラメータの第１の上位ビット及び第２のパラメータの第２の上位ビットからなる複数ビットのデータを入力として、対応する前記フィルタ係数の組を出力し、前記フィルタ係数生成手段はさらに、前記フィルタ係数の組に含まれるフィルタ係数のそれぞれについて、前記パラメータテーブルから出力されたフィルタ係数を、前記第１のパラメータの前記第１の上位ビットを除く所定の第１の下位ビット、及び、第２のパラメータの前記第２の上位ビットを除く所定の第２の下位ビットによって補間する補間手段を有する。
【００１７】
より好ましい実施態様において、前記補間手段は、前記第１の上位ビットを変化させることにより得られたフィルタ係数、その差分値及び前記第２の下位ビットにより得た第１の補間値と、第２の上位ビットを変化させた上で、前記第１の上位ビットを変化させることにより得られたフィルタ係数、その差分値及び前記第２の下位ビットにより得た第２の補間値と、前記第１の補間値及び第２の補間値の差分値及び前記第１の下位ビットにより得た第３の補間値と、を算出し、前記第３の補間値を補間されたフィルタ係数として出力する。
【００１８】
別の好ましい実施態様においては、さらに、前記供給される楽音信号の強度に基づいて、前記第２のパラメータを生成する制御手段を備える。
【００１９】
また、本発明の目的は、外部操作により発音すべき楽音の周波数及び強度を指示する発音指示手段と、
前記周波数に基づき第１のパラメータを生成するとともに、前記強度に基づき第２のパラメータを算出する制御手段と、
複数の周波数のそれぞれについて、当該周波数及びフィルタ特性におけるフィルタのゲインの減衰或いは増強の度合いを表わす複数種のレベルに関連付けられたフィルタ係数の組を複数種記憶したパラメータテーブルと、
前記制御手段により算出された第１及び第２のパラメータに基づいて決定される周波数及びレベルに対応するフィルタ係数の組を前記パラメータテーブルから取り出すフィルタ係数生成手段と、
前記楽音生成手段からの楽音信号に対して、このフィルタ係数生成手段からのフィルタ係数の組により規定されるフィルタ特性に基づくフィルタリング処理を施して出力するフィルタ手段と、
を備えたことを特徴とする電子楽器により達成される。
【００２０】
好ましい実施態様においては、前記フィルタ係数生成手段はさらに、前記第２のパラメータを時間の経過に伴って変化させるエンベロープ発生手段を有する。
【発明の効果】
【００２１】
本発明によれば、自然楽器、特に、アコースティックピアノの音色変化と同等の音色変化を実現できるフィルタ装置および電子楽器を提供することが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、添付図面を参照して、本発明の実施の形態について説明する。図１は、本発明の実施の形態にかかる電子楽器の概略を示すブロックダイヤグラムである。図１に示すように、電子楽器は、マイクロコンピュータ１、ＲＯＭ（Read  Only  Memory）２、ＲＡＭ（Random  Access  Memory）３、スイッチ類４、タッチ検出回路５、鍵盤６、楽音発生回路７、波形ＲＯＭ８、Ｄ／Ａ変換器（ＤＡＣ）９、増幅回路１０およびスピーカ１１、１２を備えている。マイクロコンピュータ１、ＲＯＭ２、ＲＡＭ３および楽音発生回路７は、データバス１３に接続され、タッチ検出回路５はマイクロコンピュータ１に接続される。
【００２３】
マイクロコンピュータ１は、電子楽器全体を制御し、プログラムやデータを格納したＲＯＭ２から、プログラムやデータを読み出して、プログラムを実行する。プログラムの実行にて生成されるデータなどはワークエリアであるＲＡＭ３に記憶される。スイッチ類４は、電子楽器のコンソールパネル上に配置されている。マイクロコンピュータ１は、演奏者によるスイッチ類４の操作を検出する。タッチ検出回路５は、所定のタイミングで鍵盤６に対して走査信号を送出し、各鍵盤６の鍵に配置された２つのスイッチのオンに応答して、演奏操作データ（音高およびタッチレスポンスデータ）を生成して、マイクロコンピュータ１に出力する。本実施の形態において、鍵盤６は８８個の鍵を有し、各鍵には、その長手方向に２つのスイッチが配置され、鍵の押下によってまず第１のスイッチがオンされ、さらに、鍵が押下されることにより第２のスイッチがオンされるようになっている。
【００２４】
マイクロコンピュータ１は、スイッチ類４の操作により指定された音色と、および、タッチ検出回路５から出力されたタッチレスポンスデータおよび音高を含む演奏操作データとに基づき、楽音発生回路７を制御して、所定の楽音を発生させる。楽音発生回路７は、波形ＲＯＭ８から指定された音色の波形データを読み出して、演奏操作データにしたがった音高および音量（ベロシティ）の楽音を生成してＤＡＣ９に出力する。ＤＡＣ９は、楽音発生回路７から出力されたディジタルデータをアナログ信号に変換する。アナログ信号は増幅回路１０を介してスピーカ１１、１２から放音される。
【００２５】
図２は、本実施の形態にかかる楽音発生回路をより詳細に示すブロックダイヤグラムである。図２に示すように、楽音発生回路７は、インタフェース２０、波形発生回路２１、フィルタ回路２２、乗算回路２３、ミキサ２４、第１のエンベロープ発生回路２５、フィルタ係数算出回路２６、第２のエンベロープ発生回路２７を有している。インタフェース２０、波形発生回路２１、フィルタ回路２２、ミキサ２４、第１のエンベロープ発生回路２５、フィルタ係数算出回路２６および第２のエンベロープ発生回路２７は、内部バス２８に接続される。
【００２６】
インタフェース２０は、図１に示すデータバス１３と接続され、楽音発生回路７内の、波形発生回路２１、フィルタ回路２２などの各演算ユニットに、内部バス２８を介して設定データなどを書き込む。波形発生回路２１は、波形ＲＯＭ８と接続され、波形ＲＯＭ８の所定のアドレスから、ＰＣＭデータを読み出して、演奏操作データ中の音高に対応する周波数の楽音波形データを生成する。
【００２７】
フィルタ係数回路２６は、インタフェース２０を介してマイクロコンピュータ１から与えられた演奏操作信号に基づくパラメータと、第１のエンベロープ発生回路２５から出力され、時間変化する第１のエンベロープ信号とにしたがってフィルタ係数を算出する。第１のエンベロープ信号により、その周波数特性に変化が与えられ、フィルタ係数は時間の経過とともに変化する。フィルタ回路２２は、フィルタ係数にしたがって、楽音波形データにフィルタ処理を施す。
【００２８】
乗算器２３は、楽音波形データと、第２のエンベロープ発生回路２７から出力される、時間変化する第２のエンベロープ信号とを乗算する。これにより、鍵盤６の鍵のオン・オフにしたがった楽音の立ち上がり、立下りや、タッチレスポンスデータにしたがった音量を制御する。なお、波形発生回路２１、フィルタ回路２２、第１のエンベロープ発生回路２５、フィルタ係数算出回路２６、乗算器２３および第２のエンベロープ発生回路２７は、最大同時発音数の処理を時分割に行うことによって、鍵盤演奏に十分なチャンネル数の楽音を生成することができる。ミキサ２４は、生成された最大同時発音数のチャンネルの楽音を、それぞれ、所定の重みで累算して、最終的に、左右２つのチャンネルの楽音として配分する。ミキサ２４の出力は、ＤＡＣ９に出力される。
【００２９】
以下、本発明にかかるフィルタ回路２２およびフィルタ係数算出回路２６の概略について説明する。図３は、演奏強弱によるアコースティックピアノの音色フィルタを実現するための理想的なフィルタ特性を説明する図である。図３において縦軸はゲイン、横軸はリニアな周波数を表す。
【００３０】
図３に示すように、理想的なフィルタ特性においては、図１３に示すアコースティックピアノのスペクトラム・エンベロープから類推されるもので、基本波に対する倍音成分が、基本波に基づく一定のポイントからほぼリニアに減衰していくようなものとなっている。また、その傾きは、音量が小さい場合には小さく（つまり右下がりの度合いが大きく：傾きが小さく）、音量が大きくなるにしたがって大きくなる（つまり右下がりの度合いが小さくなり、より水平に近くなる：傾きが大きくなる）。  
以下、基本波に基づいてリニアに減衰し或いは増強を始めるポイント（周波数）を基準周波数、サンプリング周波数ｆｓの１／２の周波数における減衰量（ｄＢ）をゲイン、ゲインに対して所定の比率となるような周波数（本実施の形態においては、ｆｓ／２における減衰量の１／２となるような周波数）を遷移周波数と称する。また、基準周波数からのリニアに減衰し或いは増強する度合いを傾きと称する。傾きは、周波数軸をｘ軸、減衰量をｙ軸とする。したがって、負の減衰量が大きくなるほど、周波数特性における傾きは小さくなり、負の減衰量が０に近づくほど、その傾きは大きくなり０に近づく。正の現推量が大きくなるほど、周波数特性における傾きは大きくなる。
【００３１】
また、本実施の形態において、基本波が変化することにより基準周波数は変化する。また、基準周波数の変化に伴って遷移周波数も一定の規則で変化する。
【００３２】
本実施の形態においては、後述するように、フィルタ回路は、基本波に基づいて変化する遷移周波数と、フィルタの深さを示すゲインとによって制御される。これによって、アコースティックピアノの実際の音色変化とほぼ同様な、基本波に対する高調波成分の制御を実現する。
【００３３】
なお、本実施の形態においては、高調波成分を減衰させるだけでなく、増強する場合も考えている。これは、波形ＲＯＭ８のＰＣＭデータからの音色をより広範囲に変化させるためである。このような特性を実現するには、ＦＩＲ（Finite Impulse Response：有限インパルス応答）フィルタが適する。しかしながら、ＦＩＲフィルタは演算量が多く、大規模なハードウェアを要する。そこで、本実施の形態においては、図３に示す理想のフィルタ特性に近似した特性を、低次のＩＩＲ（Infinite
Impulse Resonance：無限インパルス応答）フィルタで実現し、フィルタ係数を、理想のフィルタ特性とほぼ同等となるように制御している。
【００３４】
上述したようなフィルタ特性を有するフィルタを得るためには、様々な方法が考えられるが、演算量を最小限にするために、一次ＩＩＲフィルタでの近似を試み、それを拡張することにより、理想に近い周波数特定を得た。まず、一次ＩＩＲフィルタの伝達関数を（２）式と考える。
【００３５】
【数２】
2008076439.tif 000004
（２）式において、最大ゲイン（つまり、サンプリング周波数ｆｓの１／２の周波数での最大ゲインをＡ）とすると、Ａは、（３）式のように表すことができる。
【００３６】
【数３】
2008076439.tif 000005
また、遷移周波数ｆ０のときに、最大ゲインの１／２のゲインとなるとすると、（４）式が導き出される。
【００３７】
【数４】
2008076439.tif 000006
上記（３）式および（４）式を解くと、係数ｂ、ｃは（５）式および（６）式に示すようになる。
【００３８】
【数５】
2008076439.tif 000007
【００３９】
【数６】
2008076439.tif 000008
したがって、（２）式に示す一次ＩＩＲフィルタの係数ｂ、ｃは、最大ゲインＡおよび遷移周波数ｆ０とから、（５）式および（６）式に示すように求めることができる。なお、上記（５）式からフィルタ係数には２通りのセットが存在するが、その係数範囲から制御しやすい方を選択すればよい。
【００４０】
一次ＩＩＲフィルタは、その減衰特性が穏やか過ぎる。そこで、本実施の形態においては、遷移周波数の異なる２つの一次フィルタＩＩＲを直列に接続し、二次ＩＩＲフィルタとすることにより、より理想フィルタに近似したフィルタ特性を得ている。（７）式は、一次ＩＩＲフィルタを直列に接続した二次ＩＩＲフィルタの伝達関数を示す図である。
【００４１】
【数７】
2008076439.tif 000009
図４は、ある遷移周波数で、ゲインを変更したときの二次ＩＩＲフィルタの特性を示す。図４に示す特性は、図３に示す理想的な特性に近似していることが理解できる。なお、本実施の形態においては、二次ＩＩＲフィルタにより理想フィルタを近似しているが、フィルタの次数を上げることにより、その特性を、さらに理想フィルタの特性と近似させることが可能である。
【００４２】
図５は、図４に示すフィルタ特性を実現するための、二次のフィルタ係数を示すグラフである。なお、横軸は負のゲインのレベルを表す。レベル１は、最も負のレベルが大きい（つまり、傾きが最小である）ようなゲインを表し、レベル０は、最も負のレベルが小さい（つまり、傾きが０である）ようなゲインを表す。このように、本実施の形態においては、レベル１〜９のそれぞれにおいて、フィルタ係数ｂ、ｃ、ｄ、ｅおよびｆが決定される。
【００４３】
正のゲインに対するフィルタ係数は、上記（７）式の分母と分子を入れ替えることにより算出できる（（８）式参照）。
【００４４】
【数８】
2008076439.tif 000010
したがって、負のゲインの係数のｂ〜ｆをそれぞれ、
ｂ：ｅ／ｄ、ｃ：ｆ／ｄ、ｄ：１／ｄ、ｅ：ｂ／ｄ、ｆ：ｃ／ｄ
と入れ替えることにより、正のゲイン特性のフィルタ係数を得ることができる。
【００４５】
本実施の形態においては、このフィルタ係数を演算により算出するのではなく、遷移周波数およびゲインをアドレスとするテーブル（パラメータテーブル）をフィルタ係数算出回路２６に設け、テーブルからデータ値を取り出し、さらにそのデータ値を補間することにより、適切なフィルタ係数を算出するようにしている。
【００４６】
図１１は、本実施の形態におけるフィルタ特性およびパラメータテーブルを説明するための図である。図１１（ａ）は、ある基準周波数ｆ１に基づく遷移周波数Ｆ１のときのフィルタ特性を示す図である。先に述べたように、基本波の周波数にしたがって基準周波数ｆ１は決定される。たとえば、基準周波数は基本波とほぼ同じとしても良いし、基本波の所定倍数の周波数としても良い。図１１（ａ）に示すように、単一の遷移周波数Ｆ１について、複数の傾きを有するフィルタ特性が考えられる。図１１（ａ）の例では、負の特性（減衰する特性）として小さい方からゲインのレベルＧ１１、Ｇ１２、・・・Ｇ１ｉ（＝減衰「０」）、正の特性として、Ｇ１（ｉ＋１）、・・・Ｇ１（２ｉ−１）が示されている。また、基本波が異なることに伴って、基準周波数がｆ１からｆ２（ｆ１＜ｆ２）に変化した場合を考えると、図１１（ｂ）に示すように、基準周波数の変更にともなって、遷移周波数Ｆ２は変更される。また、ゲインのレベルＧ２１、Ｇ２２、・・・、Ｇ２ｉ、・・・、Ｇ２（２ｉ−１）も変更され得る。
【００４７】
たとえば、図１１（ａ）では、単一の遷移周波数Ｆ１について、２ｉ−１個のレベルが存在する。したがって、この例では、遷移周波数Ｆ１とあるレベルとの組み合わせについて、１つのフィルタ係数の組（ｂ、ｃ、ｄ、ｅ、ｆ）が存在する。つまり、２ｉ−１個のレベルがあれば、２ｉ−１個のフィルタ係数の組が存在する。図１１（ｂ）についても同様である。したがって、遷移周波数がｎ種類存在すれば、ｎ×（レベルの数（図１１の例では、（２ｉ−１））個のフィルタ係数の組が存在しえる。
【００４８】
遷移周波数ごとに各ゲインのフィルタ係数のセットを保持すると、膨大な大きさ（遷移周波数の設定数×ゲインの設定数×フィルタ係数の種類（５））のテーブルを用意する必要がある。そこで、遷移周波数の設定数およびゲインの設定数を限定して、これらの組み合わせに応じた一連のフィルタ係数を格納したテーブルのみを用意し、遷移周波数およびゲインの双方について補間（二次元の補間）を実現することで、テーブルのサイズを小さくし、かつ、フィルタ係数の適切化を実現している。
【００４９】
以下、本実施の形態にかかるフィルタ係数算出回路２６およびフィルタ回路２２の構成についてより詳細に説明する。
【００５０】
図６は、本実施の形態にかかるフィルタ係数算出回路の構成を示すブロックダイヤグラムである。図６に示すように、フィルタ係数算出回路２６は、インタフェース３１、加算器３２〜３４、パラメータテーブル３５、補間回路３６およびレジスタ３７〜４１を備える。また、図６には示していないが、フィルタ係数算出回路２６は、所定のタイミングで、パラメータテーブル３５へのアドレス信号のインクリメント信号Ｘ１、Ｙ１、および、パラメータテーブル３５の選択信号ＳＥＬを出力する制御回路を有している。
【００５１】
インタフェース３１は、楽音発生回路７の内部バス２８に接続され、マイクロコンピュータ１からインタフェース２０を介して送信される２種類のパラメータ、つまり、遷移周波数データＦ［１５：０］およびゲインデータＧ［１５：０］を受信して保持し、フィルタ算出回路２６内に出力する。遷移周波数データＦは、上述した遷移周波数に相当し、ゲインデータＧが、上記ゲインに相当する。ゲインデータＧ［１５：０］は加算器３２に与えられる。加算器３２にはもう一方の入力として、第１のエンベロープ発生回路２５から経時的に変化する第１のエンベロープ信号が与えられる。したがって、加算器から出力されるゲインデータＧ［１５：０］は、第１のエンベロープ信号に基づいて、その値が時間の経過に伴って変化する。
【００５２】
ゲインデータＧ［１５：０］のうちＧ［１５：１２］が加算器３３に与えられる。また、遷移周波数データＦ［１５：０］のうちＦ［１５：１３］が加算器４５に与えられる。加算器３３、３４においては、必要に応じて所定のタイミングでインクリメント信号「１」が加算され、パラメータテーブル３５のアドレスとして出力される。加算器３３においては、Ｇ［１５：１２］の出力の次のタイミングで、インクリメント信号Ｘ１を加算することで、連続するアドレス（Ｇ［１５：１２］＋１）を出力することができる。また、加算器３４においても、Ｆ［１５：１３］の出力の次のタイミングで、インクリメント信号Ｙ１を加算することで、連続するアドレス（Ｆ［１５：１３］＋１）を出力することができる。
【００５３】
パラメータテーブル３５の下位アドレスＡ［４：０］には、加算器３３からの信号が与えられ、その次に上位のアドレスＡ［８：５］には、加算器３４からの信号が与えられる。さらに、最上位アドレスＡ［１１：９］には制御回路（図示せず）からの選択信号ＳＥＬが与えられる。
【００５４】
本実施の形態において、パラメータテーブル３５には、９種類の遷移周波数×１７種類のゲイン（８種類のマイナスのゲイン、ゲイン「０」、および、９種類のプラスのゲイン）×５種類のフィルタ係数を記憶する。したがって、パラメータテーブル３５は、９×１７×５＝７６５ワードのフィルタ数を記憶している。
【００５５】
遷移周波数については、上位３ビット（８種類）の値を下位１３ビットで補間するため、９種類のアドレスが用意される。また、ゲインについては、上位４ビット（１６種類）の値を、下位１２ビットで補完するため、１７種類のアドレスが用意される。また選択信号ＳＥＬは、５種類の係数ｂ〜ｆの何れかを選択するために使用される。
【００５６】
パラメータテーブル３５の出力、つまり補間前のフィルタ係数の組は、補間回路３６に与えられる。また、遷移周波数データの下位データＦ［１２：０］およびゲインデータの下位データＧ［１１：０］も補間回路３６に与えられる。補間回路３６においては、５種類の補間後のフィルタ係数ｂ〜ｆが算出されて出力される。レジスタ３７〜４１は、順次出力される補間後のフィルタ係数ｂ〜ｆをそれぞれ保持する。
【００５７】
図７は、本実施の形態にかかる補間回路をより詳細に示すブロックダイヤグラムである。図７に示すように、補間回路３６は、レジスタ５１〜５４、減算器５５、乗算器５６、加算器５７、レジスタ５８、減算器６５、乗算器６６、加算器６７、レジスタ６８、減算器７０、乗算器７１、および、加算器７２を有している。
【００５８】
減算器５５により、レジスタ５１の出力から、レジスタ５１の出力を減算した差分値が算出され、この差分値と、ゲインデータの下位データＧ［１１：０］とが乗算器５６において乗算され、乗算値は加算器５７に出力される。加算器５７は、乗算値と、レジスタ５１からの出力とを加算し、加算された値が、レジスタ５８に記憶される。
【００５９】
同様に、減算器６５により、レジスタ５３の出力から、レジスタ５４の出力を減算した差分値が算出され、この差分値と、ゲインデータの下位データＧ［１１：０］とが乗算器６６において乗算され、乗算値は加算器６７に出力される。加算器６７は、乗算値と、レジスタ５３からの出力とを加算し、加算された値が、レジスタ６８に記憶される。
【００６０】
さらに、減算器７０において、レジスタ５８の出力から、レジスタ６８の出力を減算した差分値が算出され、この差分値と、遷移周波数データの下位データＦ［１２：０］とが乗算器７１において乗算され、乗算値は加算器７２に出力される。加算器７２は、乗算値と、レジスタ５８からの出力とを加算する。加算器７２からの出力が、補間されたフィルタ係数となる。
【００６１】
図８は、本実施の形態にかかるフィルタ回路の概略を示すブロックダイヤグラムである。図８に示すように、フィルタ回路２２は、加算器８０，８８、乗算器８１、８２、８５、８６、８７、および、遅延回路８３、８４を有する。乗算器８１、８２、８５、８６、８７のそれぞれに、フィルタ係数算出回路２２にて算出されたフィルタ係数ｂ、ｃ、ｄ、ｅ、ｆが与えられ、乗算器のそれぞれの入力に印加される信号とフィルタ係数とが乗算される。
【００６２】
以下、本実施の形態にかかる二次元の補間について説明する。図９は、本実施の形態にかかる二次元補間を説明する図である。説明の便宜のため、ｘ＝Ｇ［１５：１２］、ｄｘ＝Ｇ［１１：０］、ｙ＝Ｆ［１５：１３］、ｄｙ＝Ｆ［１２：０］とする。図７のレジスタ５１〜５４には、以下の値が格納される。
【００６３】
レジスタ５１：ｏ［ｘ，ｙ］（なお、ｏ［ｘ，ｙ］は、アドレスｘｙでのパラメータテーブル３５の出力を表す。）
レジスタ５２：ｏ［ｘ＋１，ｙ］
レジスタ５３：ｏ［ｘ，ｙ＋１］
レジスタ５４：ｏ［ｘ＋１，ｙ＋１］
減算器５５により、レジスタ５２の出力ｏ［ｘ＋１，ｙ］からレジスタ５１の出力ｏ［ｘ，ｙ］が減算され、かつ、乗算器５６により、減算値とｄｘとが乗算される。その後、加算器５７により、乗算値とｏ［ｘ，ｙ］とが加算されてレジスタ５８に格納される。したがって、レジスタ５８には以下のような値が格納される。
【００６４】
レジスタ５８：ｏ［ｘ，ｙ］＋（ｏ［ｘ＋１，ｙ］−ｏ［ｘ，ｙ］）＊ｄｘ
＝ｏ［ｘ＋ｄｘ，ｙ］  
図９に示すように、これは、ｏ［ｘ，ｙ］とｏ［ｘ＋１，ｙ］との間をｄｘに基づいて直線補間したものに相当する。
【００６５】
また、減算器６５により、レジスタ５４の出力ｏ［ｘ＋１，ｙ＋１］からレジスタ５３の出力ｏ［ｘ，ｙ＋１］が減算され、かつ、乗算器６６により、減算値とｄｘとが乗算される。その後、加算器６７により、乗算値とｏ［ｘ，ｙ＋１］とが加算されてレジスタ５８に格納される。したがって、レジスタ６８には以下のような値が格納される。
【００６６】
レジスタ６８：ｏ［ｘ，ｙ＋１］＋
（ｏ［ｘ＋１，ｙ＋１］−ｏ［ｘ，ｙ＋１］）＊ｄｘ
＝ｏ［ｘ＋ｄｘ，ｙ＋１］  
図９に示すように、これは、ｏ［ｘ，ｙ＋１］とｏ［ｘ＋１，ｙ＋１］との間をｄｘに基づいて直線補間したものに相当する。
【００６７】
さらに、減算器７０により、レジスタ６８の出力ｏ［ｘ＋ｄｘ，ｙ＋１］からレジスタ５８の出力ｏ［ｘ＋ｄｘ，ｙ］が減算され、かつ、乗算器７１により、減算値とｄｙとが乗算される。その後、加算器７２により、乗算値とｏ［ｘ＋ｄｘ，ｙ］とが加算されて出力される。したがって、出力値は以下のようなものとなる。
【００６８】
出力値：ｏ［ｘ＋ｄｘ，ｙ］＋
（ｏ［ｘ＋ｄｘ，ｙ＋１］−ｏ［ｘ＋ｄｘ，ｙ］）＊ｄｙ
＝ｏ［ｘ＋ｄｘ，ｙ＋ｄｙ］
図９に示すように、出力値は、ｏ［ｘ＋ｄｘ，ｙ］とｏ［ｘ＋ｄｘ，ｙ＋１］との間をｄｙに基づいて補間したものに相当する。したがって、得られた出力値は、ｄｘ、ｄｙに基づく二次元の補間値となる。
【００６９】
本実施の形態については、選択信号ＳＥＬを順次変更して、パラメータテーブル３５から、フィルタ係数ｂ、ｃ、ｄ、ｅ、ｆの補間前の値を出力することで、補間回路３６において、ｂ、ｃ、ｄ、ｅ、ｆの補間値が生成され出力される。
【００７０】
図１０は、フィルタ係数算出の際のタイミングチャートである。図１０において、Ｒ０〜Ｒ５は、それぞれ、図７のレジスタ５１〜５４、５８、６８に対応し、Ｂ〜Ｆは、それぞれ、図６のレジスタ３７〜４１に相当する。
【００７１】
図１０において、信号Ｘ１より、アドレスＡ［４：０］が、「ｘ」或いは「ｘ＋１」に切り替えられ、また、信号Ｙ１により、アドレスＡ［８：５］が、「ｙ」或いは「ｙ＋１」に切り替えられる。また、選択信号ＳＥＬにより、アドレスＡ［９：１１］が変更される。最初のＹ１の一周期（符号１００１参照）では、選択信号ＳＥＬは、「ｂ」を示すものであり、したがって、最初のＹ１の周期でパラメータテーブル３５に与えられる４種類のアドレスによって、フィルタ係数ｂに関するｏ［ｘ，ｙ］、ｏ［ｘ＋１，ｙ］、ｏ［ｘ，ｙ＋１］およびｏ［ｘ＋１，ｙ＋１］が出力され、それがＲ０〜Ｒ３に格納される。
【００７２】
Ｒ０、Ｒ１にそれぞれ格納されたｏ［ｘ，ｙ］、ｏ［ｘ＋１，ｙ］に基づいて、ｏ［ｘ＋ｄｘ，ｙ］が算出されて、これがＲ４に格納される。また、Ｒ２、Ｒ３にそれぞれ格納されたｏ［ｘ，ｙ＋１］およびｏ［ｘ＋１，ｙ＋１］に基づいて、ｏ［ｘ＋ｄｘ，ｙ＋１］が算出されて、これがＲ５に格納される。Ｒ４およびＲ５に格納されたｏ［ｘ＋ｄｘ，ｙ］およびｏ［ｘ＋ｄｘ，ｙ＋１］に基づいて、フィルタ係数ｂについての補間後の値ｂ［ｘ＋ｄｘ，ｙ＋ｄｙ］が算出されて、これがＢに格納される。
【００７３】
同様に、選択信号ＳＥＬが、「ｃ」、「ｄ」、「ｅ」および「ｆ」を示す場合には、最終的に、フィルタ係数ｃ〜ｆのそれぞれの補間後の値ｃ［ｘ＋ｄｘ，ｙ＋ｄｙ］、ｄ［ｘ＋ｄｘ，ｙ＋ｄｙ］、ｅ［ｘ＋ｄｘ，ｙ＋ｄｙ］およびｆ［ｘ＋ｄｘ，ｙ＋ｄｙ］が算出されて、算出された値は、それぞれＣ〜Ｆに格納される。
【００７４】
本実施の形態によれば、遷移周波数およびゲインに基づいてフィルタ係数を出力するパラメータテーブルを設け、パラメータテーブルを利用したフィルタ係数によりフィルタ回路を制御している。遷移周波数は発音すべき楽音の基本波の周波数に基づくものであり、かつ、ゲインは、その減衰の程度（または増強の程度）を示す。したがって、直感的な理解が容易なパラメータによって、また、複雑な演算を行うことなく、アコースティック楽器、特に、アコースティックピアノのフィルタ特性にきわめて近似したフィルタ特性を有するディジタルフィルタを実現することが可能となる。
【００７５】
また、本実施の形態によれば、第１のエンベロープ発生回路から時間変化するエンベロープデータが出力され、このエンベロープデータは、フィルタ係数算出回路にて、ゲインデータに加算される。したがって、ここでも簡単な回路構成で、フィルタによるゲインの減衰（或いは増強）の時間変化を実現し、所望の音色の変化を実現することが可能となる。
【００７６】
さらに、本実施の形態によれば、遷移周波数データの上位ビットおよびゲインデータの上位ビットをアドレスとして、パラメータテーブルが粗いフィルタ係数を出力し、かつ、遷移周波数データの下位ビットおよびゲインデータの下位ビットにより、粗いフィルタ係数を二次元補正して、補正されたフィルタ係数を取得する。これにより、パラメータテーブルが格納するデータ（係数）の数をそれほど大きくすることなく、精度の良い適切なフィルタ係数を得ることが可能となる。
【００７７】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【図面の簡単な説明】
【００７８】
【図１】図１は、本発明の実施の形態にかかる電子楽器の概略を示すブロックダイヤグラムである。
【図２】図２は、本実施の形態にかかる楽音発生回路をより詳細に示すブロックダイヤグラムである。
【図３】図３は、演奏強弱によるアコースティックピアノの音色フィルタを実現するための理想的なフィルタ特性を説明する図である。
【図４】図４は、ある遷移周波数で、ゲインを変更したときの二次ＩＩＲフィルタの特性を示す。
【図５】図５は、図４に示すフィルタ特性を実現するための、二次のフィルタ係数を示すグラフである。
【図６】図６は、本実施の形態にかかるフィルタ係数算出回路の構成を示すブロックダイヤグラムである
【図７】図７は、本実施の形態にかかる補間回路をより詳細に示すブロックダイヤグラムである。
【図８】図８は、本実施の形態にかかるフィルタ回路の概略を示すブロックダイヤグラムである。
【図９】図９は、本実施の形態にかかる二次元補間を説明する図である。
【図１０】図１０は、本実施の形態にかかるフィルタ係数算出の際のタイミングチャートである。
【図１１】図１１は、本実施の形態におけるフィルタ特性およびパラメータテーブルを説明するための図である。
【図１２】図１２（ａ）、（ｂ）は、アコースティックピアノの波形を示すグラフである。
【図１３】図１３（ａ）、（ｂ）は、図１２（ａ）、（ｂ）のそれぞれの波形から算出されたスペクトルを示すグラフである。
【図１４】図１４は、図１３（ａ）、（ｂ）に示すスペクトルから抽出したスペクトラム・エンベロープを示す図である。
【図１５】図１５は、従来の帰還形二次フィルタにおいて、パラメータとしてｆｃを変更したときのフィルタ特性を示すグラフである。
【符号の説明】
【００７９】
１      マイクロコンピュータ
２      ＲＯＭ
３      ＲＡＭ
４      スイッチ類
５      タッチ検出回路
６      鍵盤
７      楽音発生回路
８      波形ＲＯＭ
９      ＤＡＣ
１０    増幅回路
１１、１２  スピーカ
２０    インタフェース
２１    波形発生回路
２２    フィルタ回路
２３    乗算器
２４    ミキサ
２５    第１のエンベロープ発生回路
２６    フィルタ係数算出回路
２７    第２のエンベロープ発生回路
【図１】
2008076439.tif 000011
【図２】
2008076439.tif 000012
【図６】
2008076439.tif 000013
【図７】
2008076439.tif 000014
【図８】
2008076439.tif 000015
【図９】
2008076439.tif 000016
【図１０】
2008076439.tif 000017
【図１１】
2008076439.tif 000018
【図１２】
2008076439.tif 000019
【図１３】
2008076439.tif 000020
【図１４】
2008076439.tif 000021
【図３】
2008076439.tif 000022
【図４】
2008076439.tif 000023
【図５】
2008076439.tif 000024
【図１５】
2008076439.tif 000025