(57)【要約】【課題】カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供すること。【解決手段】フィルタ係数設定部２０内の補間演算部５０は、係数テーブル４０を参照して得られる、カットオフ周波数値（Ｆｃ）とレゾナンス値（Ｑ）とに応じた４つの係数「Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２」を用いて、フィルタ演算部３０の係数Ｆを求めて、設定する。したがって、カットオフ周波数方向およびレゾナンス方向の２次元の補間処理を行うので、カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供することが可能になる。【選択図】  図１
2004272149.tif 000002
【特許請求の範囲】
【請求項１】
入力されるデジタル楽音信号を設定される係数に応じたフィルタリング特性でフィルタリングするフィルタ演算部と、外部から与えられるカットオフ周波数値とレゾナンス値とに基づいて前記係数を設定する係数設定部と、を備え、
前記係数設定部は、
前記カットオフ周波数値と前記レゾナンス値とに応じた係数を格納する係数テーブルと、前記係数テーブルを参照して得られる、前記カットオフ周波数値と前記レゾナンス値とに応じた４つの係数を用いて、前記カットオフ周波数方向および前記レゾナンス方向の２次元の補間処理を行う補間演算部と、を含むことを特徴とするフィルタ装置。
【請求項２】
請求項１に記載のフィルタ装置において、
前記カットオフ周波数値と前記レゾナンス値とは第１の所定数ビットの整数部と第２の所定数ビットの小数部から成り、
前記係数テーブルは、前記カットオフ周波数値の整数部の値と前記レゾナンス値の整数部の値との組に応じた係数を格納し、
前記補間演算部は、
前記係数テーブルを参照して、前記レゾナンス値の整数部の値および前記カットオフ周波数値の整数部に１を加算した整数値の組に対応する係数（Ｆ１２）、前記レゾナンス値の整数部の値および前記カットオフ周波数値の整数部の値の組に対応する係数（Ｆ１１）、前記レゾナンス値の整数部に１を加算した整数値および前記カットオフ周波数値の整数部に１を加算した整数値の組に対応する係数（Ｆ２２）、前記レゾナンス値の整数部に１を加算した整数値および前記カットオフ周波数値の整数部の値の組に対応する係数（Ｆ２１）を求め、
前記求めた係数（Ｆ１１、Ｆ１２）を前記カットオフ周波数値の小数部で補間して中間係数Ｆ１を算出し、
前記求めた係数（Ｆ２１、Ｆ２２）を前記カットオフ周波数値の小数部で補間して中間係数Ｆ２を算出し
前記算出した中間係数（Ｆ１、Ｆ２）を前記レゾナンス値の小数部で補間して前記フィルタ演算部の係数（Ｆ）を求める、ことを特徴とするフィルタ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、入力されるデジタル楽音信号を設定される係数に応じたフィルタリング特性でフィルタリングするフィルタ演算部と、外部から与えられるパラメータに基づいて前記係数を設定する係数設定部と、を備えたフィルタ装置に関する。
【０００２】
【従来の技術】
電子楽器の音色設定用フィルタにあっては、デジタルフィルタにおける係数設定のための複雑な計算を避けるため、カットオフ周波数に対応する係数を予め求め、これをテーブル化して所要時に係数読み出しを行うようにしている。また、電子楽器の音色設定にフィルタを用いる場合、エンベロープやＬＦＯに応じてカットオフ周波数を変化させるため、カットオフ周波数を連続的に変化させる必要があった。しかしながら、カットオフ周波数が連続的に変化するように楽音が聞こえる程度の係数をテーブル化しようとすれば、テーブル容量が膨大なものとなってしまう。そのため、従来技術にあっては、周知の補間演算、即ち１次元の補間演算を行い、例えばカットオフ周波数に対応する係数のみを補間してデジタルフィルタに係数を与えるようにするものが提案されていた（例えば、特許文献１参照。）。
【０００３】
【特許文献１】
特開平６−１９５０７９号公報（第３−４頁、第１図）
【０００４】
【発明が解決しようとする課題】
つまり、従来の技術によれば、図１０の補間処理のブロック図に示すように、加算器２１０、２１２、係数Ｆｍを有する乗算器２１１により、「Ｆ１＝（Ｆ１２−Ｆ１１）×Ｆｍ＋Ｆ１１」なる１次元方向の補間を行うことによって、ローパスフィルタのカットオフ周波数（Ｆｃ）方向のみ係数を滑らかに変化させるようにすることが示唆されていた。
【０００５】
しかし、従来のフィルタ装置にあっては、係数補間が例えばローパスフィルタのカットオフ周波数（Ｆｃ）方向に対してのみ行われるようになっていたため、ローパスフィルタのレゾナンス（Ｑ）を連続的に変化させることができず、そのため、精密な音色設定を行うことが困難であった。
【０００６】
そこで、本発明は、このような従来の課題を解決するためになされたものであり、カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明は、入力されるデジタル楽音信号を設定される係数に応じたフィルタリング特性でフィルタリングするフィルタ演算部（３０）と、外部から与えられるカットオフ周波数値（Ｆｃ）とレゾナンス値（Ｑ）とに基づいて前記係数を設定する係数設定部（２０）と、を備え、
前記係数設定部は、
前記カットオフ周波数値と前記レゾナンス値とに応じた係数を格納する係数テーブル（４０）と、前記係数テーブルを参照して得られる、前記カットオフ周波数値と前記レゾナンス値とに応じた４つの係数を用いて、前記カットオフ周波数方向および前記レゾナンス方向の２次元の補間処理を行う補間演算部（５０、６０）と、を含むことを特徴とするようにした。
【０００８】
この発明によれば、補間演算部は、係数テーブルを参照して得られる、カットオフ周波数値とレゾナンス値とに応じた４つの係数を用いて、カットオフ周波数方向およびレゾナンス方向の２次元の補間処理を行うので、カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供することが可能になる。
【０００９】
また、このフィルタ装置において、前記カットオフ周波数値と前記レゾナンス値とは第１の所定数ビットの整数部と第２の所定数ビットの小数部から成り、
前記係数テーブルは、前記カットオフ周波数値の整数部の値と前記レゾナンス値の整数部の値との組に応じた係数を格納し、
前記補間演算部は、
前記係数テーブルを参照して、前記レゾナンス値の整数部の値および前記カットオフ周波数値の整数部に１を加算した整数値の組に対応する係数（Ｆ１２）、前記レゾナンス値の整数部の値および前記カットオフ周波数値の整数部の値の組に対応する係数（Ｆ１１）、前記レゾナンス値の整数部に１を加算した整数値および前記カットオフ周波数値の整数部に１を加算した整数値の組に対応する係数（Ｆ２２）、前記レゾナンス値の整数部に１を加算した整数値および前記カットオフ周波数値の整数部の値の組に対応する係数（Ｆ２１）を求め、
前記求めた係数（Ｆ１１、Ｆ１２）を前記カットオフ周波数値の小数部で補間して中間係数Ｆ１を算出し、
前記求めた係数（Ｆ２１、Ｆ２２）を前記カットオフ周波数値の小数部で補間して中間係数Ｆ２を算出し
前記算出した中間係数（Ｆ１、Ｆ２）を前記レゾナンス値の小数部で補間して前記フィルタ演算部の係数（Ｆ）を求める、ことを特徴とする構成とすることができる。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しつつ説明する。
【００１１】
（構成）
図１は本発明の実施形態のフィルタ装置１００のブロック構成図である。このフィルタ装置１００は、入力されるデジタル楽音信号を設定される係数（本例ではＦ、Ｗの２個）に応じたフィルタリング特性でフィルタリングするフィルタ演算部３０と、フィルタ係数設定部２０とを備えている。さらに、フィルタ係数設定部２０は、係数テーブル４０と、係数Ｆを求めてフィルタ演算部３０に設定する補間演算部５０と、係数Ｗを求めてフィルタ演算部３０に設定する補間演算部６０とを備えている。
【００１２】
そして、例えば、ＣＰＵ１０はＲＯＭ１２に格納されたプログラムにしたがった動作等によって、ローパスフィルタのカットオフ周波数値（Ｆｃ：増幅度が３ｄＢ低下する周波数）とレゾナンス値（Ｑ：周波数特性のピーキング状態の程度を示すパラメータ）を２つのパラメータとしてフィルタ係数設定部２０に供給するように構成されている。なお、図６（ａ）、（ｂ）に示すように、Ｆｃ、Ｑは夫々５ビットの整数部と１８ビットの小数部とから成っており、Ｆｃの小数部をＦｍ、Ｑの小数部をＱｍと記す。なお、ＦｃやＱの整数部、小数部のビット数は図６の例に限られない。
【００１３】
図７はフィルタ演算部３０の構成例であり、加算器９０、９１、９３、９５、遅延要素９７、９８と係数Ｆを有する乗算器９２、９４と、係数Ｗを有する乗算器９６とで構成されている。この係数Ｆ、Ｗは夫々、補間演算部５０、補間演算部６０によって補間演算されて求められ、設定される。そして、図７に示すようにフィルタリング信号としてＢＲＦ（バンドリジェクトフィルタ）信号、ＨＰＦ（ハイパスフィルタ）信号、ＢＰＦ（バンドパスフィルタ）信号。ＬＰＦ（ローパスフィルタ）信号として装置外部に出力される。かくして、係数Ｆ、Ｗを所要の値に設定することにより、楽音信号の所望のフィルタリング信号が出力されるように構成されている。
【００１４】
図２（ａ）は補間演算部５０の内部構成図である。加算器７０、加算器７２、係数Ｆｍを有する乗算器７１とで「Ｆ１＝（Ｆ１２−Ｆ１１）×Ｆｍ＋Ｆ１１」なるＦｃ方向補間（その１）を行い中間係数Ｆ１を求めるように構成され、また、加算器７３、加算器７５、係数Ｆｍを有する乗算器７４とで「Ｆ２＝（Ｆ２２−Ｆ２１）×Ｆｍ＋Ｆ２１」なるＦｃ方向補間（その２）を行い中間係数Ｆ２を求めるように構成されている。そして、加算器７６、加算器７８、係数Ｑｍを有する乗算器７７とで「Ｆ＝（Ｆ２−Ｆ１）×Ｑｍ＋Ｆ１」なる、中間係数Ｆ１、Ｆ２からＱ方向の補間を行うように構成されている。かくして、Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２なる４つの係数を用いてカットオフ周波数方向およびレゾナンス方向の２次元の補間処理を行うことが可能になる。
【００１５】
図２（ｂ）は補間演算部６０の内部構成図であり、基本的には図２（ａ）に示すものと同構成であるが、係数Ｗを求めるため、係数Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２の替わりに係数Ｗ１１、Ｗ１２、Ｗ２１、Ｗ２２を用いる点に特徴がある。即ち、加算器８０、加算器８２、係数Ｆｍを有する乗算器８１とで「Ｗ１＝（Ｗ１２−Ｗ１１）×Ｆｍ＋Ｗ１１」なるＦｃ方向補間（その１）を行い中間係数Ｗ１を求めるように構成され、また、加算器８３、加算器８５、係数Ｆｍを有する乗算器８４とで「Ｗ２＝（Ｗ２２−Ｗ２１）×Ｆｍ＋Ｗ２１」なるＦｃ方向補間（その２）を行い中間係数Ｗ２を求めるように構成されている。
【００１６】
そして、加算器８６、加算器８８、係数Ｑｍを有する乗算器８７とで「Ｗ＝（Ｗ２−Ｗ１）×Ｑｍ＋Ｗ１」なる、中間係数Ｗ１、Ｗ２からＱ方向の補間を行うように構成されている。かくして、Ｗ１１、Ｗ１２、Ｗ２１、Ｗ２２なる４つの係数を用いてカットオフ周波数方向およびレゾナンス方向の２次元の補間処理を行うことが可能になる。したがって、本実施形態中、Ｆｉｊ（Ｗｉｊ）の添字ｉはレゾナンス、添字ｊはＦｃに係わり、ｉ、ｊが「１」の場合には対応するパラメータ（Ｑ又はＦｃ）の小数部を切り捨て整数部のみとすること、「２」の場合には整数部に１を加えたものとすることを意味する。
【００１７】
次に、図３、図４は係数テーブル４０における係数の格納状態を示す説明図である。図３は、カットオフ周波数値（Ｆｃ）の整数部とレゾナンス値（Ｑ）の整数部の組に応じてＦ１１〜Ｆ２２が定まるように係数格納を行った状態を示している。図４は、カットオフ周波数値（Ｆｃ）の整数部とレゾナンス値（Ｑ）の整数部の組に応じてＷ１１〜Ｗ２２が定まるように係数格納を行った状態を示している。
【００１８】
補間演算部５０は、レゾナンス値（Ｑ）の整数部の値（即ち小数部Ｑｍを切り捨てたもの）およびカットオフ周波数値（Ｆｃ）の整数部に１を加算した整数値の組に対応する係数を「Ｆ１２」として求め、また、レゾナンス値（Ｑ）の整数部の値（即ち小数部Ｑｍを切り捨てたもの）およびカットオフ周波数値（Ｆｃ）の整数部の値の組に対応する係数を「Ｆ１１」として求める。さらに、補間演算部５０は、レゾナンス値（Ｑ）の整数部に１を加算した整数値およびカットオフ周波数値（Ｆｃ）の整数部に１を加算した整数値の組に対応する係数を「Ｆ２２」として求め、また、レゾナンス値（Ｑ）の整数部に１を加算した整数値およびカットオフ周波数値（Ｆｃ）の整数部の値（即ち小数部Ｆｍを切り捨てたもの）の組に対応する係数を「Ｆ２１」として求める。
【００１９】
さらに、求めた係数「Ｆ１１、Ｆ１２」をカットオフ周波数値（Ｆｃ）の小数部で補間して中間係数Ｆ１を算出し、また、求めた係数「Ｆ２１、Ｆ２２」をカットオフ周波数値（Ｆｃ）の小数部（Ｆｍ）で補間して中間係数Ｆ２を算出する。より具体的には、先に説明したように、図２（ａ）の構成で「Ｆ１＝（Ｆ１２−Ｆ１１）×Ｆｍ＋Ｆ１１」、「Ｆ２＝（Ｆ２２−Ｆ２１）×Ｆｍ＋Ｆ２１」、「Ｆ＝（Ｆ２−Ｆ１）×Ｑｍ＋Ｆ１」なる演算を行って係数Ｆを求める。
【００２０】
図５（ａ）、（ｂ）はこの補間演算の説明図であり、図５（ｂ）は図５（ａ）を真上方向から見た模式的説明図である。上述したようにして「Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２」を求め、さらに「Ｆ１１、Ｆ１２」からＦ１を求めて「Ｆ２１、Ｆ２２」からＦ２を求め、求めた中間係数「Ｆ１、Ｆ２」をレゾナンス値（Ｑ）の小数部（Ｑｍ）で補間してフィルタ演算部２０の係数（Ｆ）を求め、設定する様子を模式的に説明している。なお、図５では特に補間演算部５０の動作を説明しているが、補間演算部６０においても、Ｗ１１〜Ｗ２２を用いて全く同様な動作が行われる
【００２１】
（全体動作）
次に、図８を参照して全体動作を説明する。ここでは特に係数Ｆを求めてフィルタ演算部３０に設定する補間演算部５０側の動作を説明するが、係数Ｗを求めてフィルタ演算部３０に設定する補間演算部６０も全く同様に動作する。
【００２２】
ステップＳ８００において、ＣＰＵ１０がパラメータＦｃ（カットオフ周波数値）、Ｑ（レゾナンス値）をフィルタ係数設定部２０に入力させる。ステップＳ８１０において、先に説明したようにして補間演算部５０は係数テーブル４０の格納内容を参照して、Ｆｃ、Ｑに対応する４つの係数「Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２」を求める。
【００２３】
より具体的には、レゾナンス値（Ｑ）の整数部の値（即ち小数部Ｑｍを切り捨てたもの）およびカットオフ周波数値（Ｆｃ）の整数部に１を加算した整数値の組に対応する係数を「Ｆ１２」として求め、また、レゾナンス値（Ｑ）の整数部の値（即ち小数部Ｑｍを切り捨てたもの）およびカットオフ周波数値（Ｆｃ）の整数部の値の組に対応する係数を「Ｆ１１」として求め、また、レゾナンス値（Ｑ）の整数部に１を加算した整数値およびカットオフ周波数値（Ｆｃ）の整数部に１を加算した整数値の組に対応する係数を「Ｆ２２」として求め、さらに、レゾナンス値（Ｑ）の整数部に１を加算した整数値およびカットオフ周波数値（Ｆｃ）の整数部の値（即ち小数部Ｆｍを切り捨てたもの）の組に対応する係数を「Ｆ２１」として求める。
【００２４】
次いで、ステップＳ８２０において、Ｆ１１、Ｆ１２をＦｃの小数部Ｆｍで補間演算してＦ１を求め（具体的には「Ｆ１＝（Ｆ１２−Ｆ１１）×Ｆｍ＋Ｆ１１」なる演算を行う）、ステップＳ８３０において、Ｆ２１、Ｆ２２をＦｃの小数部Ｆｍで補間演算してＦ２を求める（具体的には「Ｆ２＝（Ｆ２２−Ｆ２１）×Ｆｍ＋Ｆ２１」なる演算を行う）。そして、中間係数Ｆ１、Ｆ２をレゾナンス（Ｑ）の小数部Ｑｍで補間演算して係数Ｆを求める（具体的には「Ｆ＝（Ｆ２−Ｆ１）×Ｑｍ＋Ｆ１」なる演算を行う）。
【００２５】
かくして、係数テーブル４０を参照して得られる、カットオフ周波数値（Ｆｃ）とレゾナンス値（Ｑ）とに応じた４つの係数「Ｆ１１、Ｆ１２、Ｆ２１、Ｆ２２」を用いて、カットオフ周波数方向およびレゾナンス方向の２次元の補間処理を行うので、カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供することが可能になる。この結果、カットオフ周波数に加えてレゾナンスも連続的に変化させることにより従来よりも精密な音色設定が可能になる、演奏中にレゾナンスを変更設定してもノイズが発生しなくなる、演算量が少ないためプログラム化やＩＣ化が容易になる、といった利点を有することになる。
【００２６】
図９は従来のフィルタ装置２００の構成図であり、このフィルタ装置２００にあっては、フィルタ係数設定部１２０の補間演算部１５０、補間演算部１６０の夫々がフィルタ演算部１３１の係数Ｆ、Ｗを求めて設定しているが、補間演算部１５０は２つの係数Ｆ１１、Ｆ１２を用いてカットオフ周波数方向の係数補間処理を行っているのみであり、また、補間演算部１６０は２つの係数Ｗ１１、Ｗ１２を用いてカットオフ周波数方向の係数補間処理を行っているのみである。したがって本発明のように、２次元方向の補間処理を行うことができないことが分かる。
【００２７】
以上本発明の実施の形態について説明したが、本発明の要旨を逸脱しない範囲内で上記実施形態に種々の変形や変更を施すことが可能となる。また、フィルタ装置１００の構成を可能な限り専用のＬＳＩ等のハードウエアで実現することもできるし、その機能を可能な限りＣＰＵ（又はＤＳＰ）が動作プログラムを実行することによって実現することも可能である。なお、不図示の操作手段の操作によってＣＰＵ１０がフィルタ係数設定部２０側にパラメータ（Ｆｃ、Ｑ）を供給するようにしても良い。また、フィルタ演算部３０が３以上の係数を設定可能な場合にはこの３以上の係数を演算、設定可能に補間演算部を増設した構成とすることも可能である。
【００２８】
【発明の効果】
以上説明してきたように、本発明によれば、、カットオフ周波数方向およびレゾナンス方向の係数を滑らかに変化させて精密な音色設定等を行えるフィルタ装置を提供することが可能になるという効果が得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態のフィルタ装置１００の構成図である。
【図２】補間演算部５０、６０の構成図である。
【図３】係数テーブル４０の係数格納状態の説明図である。
【図４】係数テーブル４０の係数格納状態の説明図である。
【図５】補間処理動作の説明図である。
【図６】パラメータＦｃ、Ｑの説明図である。
【図７】フィルタ演算部３０の構成図である。
【図８】全体動作を説明するためのフローチャートである。
【図９】従来のフィルタ装置２００の説明図である。
【図１０】従来技術の説明図である。
【符号の説明】
１０  ＣＰＵ
１２  ＲＯＭ
２０  フィルタ係数設定部
３０  フィルタ演算部
４０  係数テーブル
５０  補間演算部
６０  補間演算部
【図１】
2004272149.tif 000003
【図２】
2004272149.tif 000004
【図３】
2004272149.tif 000005
【図４】
2004272149.tif 000006
【図５】
2004272149.tif 000007
【図６】
2004272149.tif 000008
【図７】
2004272149.tif 000009
【図８】
2004272149.tif 000010
【図９】
2004272149.tif 000011
【図１０】
2004272149.tif 000012