(57)【要約】【課題】フィルタの特性を短時間で切りかえる。【解決手段】ＩＩＲ（無限インパルス応答）フィルタ１０は、デジタルの入力オーディオ信号Ｓｉｎに対して、設定された係数ＣＯＥＦＦに応じたフィルタリング処理を施す。ＲＡＭ２０は、フィルタ１０の係数ＣＯＥＦＦを格納する。インタフェース回路３０は、外部のプロセッサ２０２から、フィルタ１０の特性を示すパラメータデータＰＲＭを受ける。演算部５０は、インタフェース回路３０が受けたパラメータデータＰＲＭにもとづき、フィルタ１０の係数ＣＯＥＦＦを計算し、演算部５０に格納する。【選択図】図１
2010233198.tif 000002
【特許請求の範囲】
【請求項１】
デジタルの入力オーディオ信号に対して、設定された係数に応じたフィルタリング処理を施すＩＩＲ（無限インパルス応答）フィルタと、
前記ＩＩＲフィルタの係数を格納するメモリと、
外部のプロセッサから、前記フィルタの特性を示すパラメータデータを受けるインタフェース回路と、
前記インタフェース回路が受けた前記パラメータデータにもとづき、前記ＩＩＲフィルタの係数を計算し、前記メモリに格納する演算部と、
を備えることを特徴とするオーディオ信号処理回路。
【請求項２】
前記インタフェース回路が受信した前記パラメータデータを格納しておくレジスタをさらに備え、
前記演算部は、前記プロセッサから指示されたタイミングで前記係数を計算し、前記メモリに格納することを特徴とする請求項１に記載のオーディオ信号処理回路。
【請求項３】
前記インタフェース回路が受信した前記パラメータデータを格納しておくレジスタをさらに備え、
前記演算部は、自動更新モードにおいて、所定の周期で前記係数を再計算し、前記メモリに再格納することを特徴とする請求項１または２に記載のオーディオ信号処理回路。
【請求項４】
前記パラメータデータは、前記フィルタの周波数、前記フィルタのゲイン、前記フィルタのＱ値を示すデータを含むことを特徴とする請求項１に記載のオーディオ信号処理回路。
【請求項５】
請求項１から４のいずれかに記載のオーディオ信号処理回路を備えることを特徴とするオーディオシステム。
【請求項６】
デジタルの入力オーディオ信号に対してフィルタリング処理を施すフィルタ回路であって、
前記入力オーディオ信号に対してフィルタリング処理を施す第１ＩＩＲ（無限インパルス応答）フィルタと、
前記入力オーディオ信号に対してフィルタリング処理を施す第２ＩＩＲフィルタと、
前記第１、第２ＩＩＲフィルタそれぞれの係数を格納する第１、第２メモリと、
外部のプロセッサから、本フィルタ回路の特性を示すパラメータデータを受けるインタフェース回路と、
前記インタフェース回路が受けた前記パラメータデータに応じたＩＩＲフィルタの係数を計算し、前記第１、第２メモリの一方に格納する演算部と、
βを０≦β≦１なる正の実数とするとき、前記第１ＩＩＲフィルタの出力信号と前記第２ＩＩＲフィルタの出力信号をβ：（１−β）なる比率で重み付け加算するソフトスイッチ回路と、
を備え、
本フィルタ回路は、前記第１ＩＩＲフィルタがアクティブな第１状態と、前記第２ＩＩＲフィルタがアクティブな第２状態とが切替可能に構成され、
前記第１状態において、本フィルタ回路の特性の変更が指示されるとき、前記演算部は指示された特性に応じた係数を前記第２メモリに格納し、続いて前記ソフトスイッチ回路はβを１から０へと緩やかに変化するように構成され、
前記第２状態において、本フィルタ回路の特性の変更が指示されるとき、前記演算部は指示された特性に応じた係数を前記第１メモリに格納し、続いて前記ソフトスイッチ回路はβを０から１へと緩やかに変化させるように構成されることを特徴とするフィルタ回路。
【請求項７】
請求項６に記載のフィルタ回路を備えることを特徴とするオーディオシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーディオ信号処理に関し、特にデジタルフィルタに関する。
【背景技術】
【０００２】
カーオーディオ、カーナビゲーションシステム、をはじめとする音声を出力する機能を有するシステム（以下オーディオシステム）には、オーディオ信号に対してさまざまな信号処理を施すオーディオ信号処理回路が搭載される。オーディオ信号処理回路には、オーディオ信号の周波数特性を変化させるための、パラメトリックイコライザ（フィルタ）が内蔵される。オーディオ信号がデジタル形式の場合、たとえばＩＩＲ（無限インパルス応答）型のデジタルフィルタが利用される。
【０００３】
２次のＩＩＲフィルタを利用する場合、フィルタの周波数特性は５つの係数によって規定され、それらの値の組み合わせによって、ピーキングフィルタ、ハイパスフィルタ、ローパスフィルタなど様々なフィルタが実現できる。
【０００４】
従来のシステムでは、フィルタの係数の組み合わせを予めコンピュータなどで計算しておき、それらをマイコン（プロセッサ）のＲＯＭ（Read Only Memory）に書き込んでいた。そしてフィルタの特性を切りかえる度に、マイコンからフィルタに対して係数のセットをバスを介して転送する必要がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２４５１２３号公報
【特許文献２】特開平５−９０８５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般的な電子機器において、フィルタを内蔵するオーディオ信号処理回路と、マイコンの間は、伝送レートがそれほど高くないバスで接続される場合が多い。たとえば代表的なＩ２Ｃ（Inter IC）バスは、４ｋＨｚ程度の伝送レートを有する。フィルタの各係数を２４ビットのデータで定義する場合、２４×５＝１２０ビットのデータを転送する必要があるが、これをＩ２Ｃバスを介して伝送する場合、非常に長い時間を要することになる。
【０００７】
フィルタの係数の伝送時間、すなわちフィルタの特性の切りかえに要する時間が、オーディオ信号のサンプリング周期を超えると、ユーザに聴感上の違和感を与えるおそれがある。そこで従来のシステムでは、２つのパラメトリックイコライザを２系統設け、２つのイコライザの出力を緩やかに切りかえる（ソフトスイッチ）ことにより、聴感上の違和感を緩和していた（ソフトスイッチ機能）。具体的には、オーディオ信号が一方のイコライザ（メインイコライザ）を通過中に他方のイコライザ（遷移用イコライザ）の係数を更新し、その後、メインイコライザから遷移用イコライザへと出力を緩やかに切りかえる。続いて、休止中のメインイコライザの係数を更新し、その後、遷移用イコライザからメインイコライザへと出力を切りかえる。
【０００８】
このように従来のシステムでは、マイコン側に係数の組を保持するＲＯＭが必要となり、コストが高くなること、マイコンからオーディオ信号処理回路への係数の伝送に時間がかかること等の課題であった。
【０００９】
本発明はこうした課題に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、短時間で特性を切りかえ可能なフィルタの提供にある。
【課題を解決するための手段】
【００１０】
本発明のある態様のオーディオ信号処理回路は、デジタルの入力オーディオ信号に対して、設定された係数に応じたフィルタリング処理を施すＩＩＲ（無限インパルス応答）フィルタと、ＩＩＲフィルタの係数を格納するメモリと、外部のプロセッサから、フィルタの特性を示すパラメータデータを受けるインタフェース回路と、インタフェース回路が受けたパラメータデータにもとづき、ＩＩＲフィルタの係数を計算し、メモリに格納する演算部と、を備える。
【００１１】
この態様によると、プロセッサからオーディオ信号処理回路に対して、パラメータのみを伝送すればよいため、プロセッサ側に係数を保持するＲＯＭが不要となる。またパラメータを受けたオーディオ信号処理回路は、数ＭＨｚのクロック信号を利用して瞬時に係数を算出できるため、プロセッサから係数を伝送する場合に比べて短時間で、フィルタの特性を変更できる。
【００１２】
ある態様のオーディオ信号処理回路は、インタフェース回路が受信したパラメータデータを格納しておくレジスタをさらに備えてもよい。演算部は、プロセッサから指示されたタイミングで係数を計算し、メモリに格納してもよい。
この場合、外部のプロセッサから、フィルタの特性を変化させるタイミングを制御できる。
【００１３】
ある態様のオーディオ信号処理回路は、インタフェース回路が受信したパラメータデータを格納しておくレジスタをさらに備えてもよい。演算部は、自動更新モードにおいて、所定の周期で係数を再計算し、メモリに再格納してもよい。
この場合、メモリに保持される係数が壊れた場合であっても、再計算によって正しい係数に再更新されるため、フィルタが予期せぬ周波数特性で長時間動作するのを防止できる。
【００１４】
パラメータデータは、フィルタの周波数、フィルタのゲイン、フィルタのＱ値を示すデータを含んでもよい。
【００１５】
本発明の別の態様は、デジタルの入力オーディオ信号に対してフィルタリング処理を施すフィルタ回路に関する。フィルタ回路は、入力オーディオ信号に対してフィルタリング処理を施す第１ＩＩＲ（無限インパルス応答）フィルタと、入力オーディオ信号に対してフィルタリング処理を施す第２ＩＩＲフィルタと、第１、第２ＩＩＲフィルタそれぞれの係数を格納する第１、第２メモリと、外部のプロセッサから、本フィルタ回路の特性を示すパラメータデータを受けるインタフェース回路と、インタフェース回路が受けたパラメータデータに応じたＩＩＲフィルタの係数を計算し、第１、第２メモリの一方に格納する演算部と、βを０≦β≦１なる正の実数とするとき、第１ＩＩＲフィルタの出力信号と第２ＩＩＲフィルタの出力信号をβ：（１−β）なる比率で重み付け加算するソフトスイッチ回路と、を備える。本フィルタ回路は、第１ＩＩＲフィルタがアクティブな第１状態と、第２ＩＩＲフィルタがアクティブな第２状態とが切替可能に構成される。第１状態において、本フィルタ回路の特性の変更が指示されるとき、演算部は指示された特性に応じた係数を第２メモリに格納し、続いてβを１から０へと緩やかに変化させる。第２状態において、本フィルタ回路の特性の変更が指示されるとき、演算部は指示された特性に応じた係数を第１メモリに格納し、続いてβを０から１へと緩やかに変化させる。
【００１６】
本発明の別の態様は、オーディオシステムである。このオーディオシステムは、上述のいずれかの態様のオーディオ信号処理回路もしくはフィルタ回路を備える。
【００１７】
オーディオ信号処理回路やフィルタ回路は、一つの半導体基板上に一体集積化されてもよい。「一体集積化」とは、回路の構成要素のすべてが半導体基板上に形成される場合や、回路の主要構成要素が一体集積化される場合が含まれ、回路定数の調節用に一部の抵抗やキャパシタなどが半導体基板の外部に設けられていてもよい。回路を１つのＩＣとして集積化することにより、その面積を削減することができる。
【００１８】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を、方法、装置などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１９】
本発明のある態様によれば、短時間でフィルタの特性を切りかえることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態に係るオーディオ信号処理回路を搭載したオーディオシステムの構成を示すブロック図である。
【図２】図１のオーディオシステムの動作を示すタイムチャートである。
【図３】ソフトスイッチが可能なフィルタの構成を示すブロック図である。
【図４】図３のフィルタの動作を示すタイムチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。
【００２２】
図１は、本発明の実施の形態に係るオーディオ信号処理回路１００を搭載したオーディオシステム２００の構成を示すブロック図である。オーディオシステム２００は、たとえば携帯電話端末、シリコンオーディオプレイヤ、カーオーディオをはじめとする、スピーカやヘッドホン、イヤホンなどから音声を出力可能なシステムである。オーディオシステム２００は、オーディオ信号処理回路１００、プロセッサ２０２、音源２０４、スピーカ２０６を備える。
【００２３】
スピーカ２０６は、電気信号を音響波に変換するデバイス（電気音響変換素子）である。音源２０４は、スピーカ２０６から出力すべきオーディオ信号Ｓｉｎをデジタル形式で出力する。
【００２４】
オーディオ信号処理回路１００は、音源２０４から出力されるオーディオ信号Ｓｉｎを受け、これに所定の信号処理を施し、スピーカ２０６へと出力する。
【００２５】
本実施の形態において、オーディオ信号処理回路１００は、少なくとも、オーディオ信号Ｓｉｎの周波数特性を変化させるフィルタとしての機能を備えている。図１には、フィルタに関するブロックのみが示されている。フィルタブロックの後段には、デジタルのオーディオ信号をアナログのオーディオ信号に変換するデジタル／アナログ変換回路、あるいは、アナログのオーディオ信号を増幅するアンプなどが設けられてもよい。
【００２６】
オーディオ信号処理回路１００は、フィルタ１０、ＲＡＭ２０、インタフェース回路３０、レジスタ４０、演算部５０を備える。
【００２７】
フィルタ１０は、デジタルの入力オーディオ信号Ｓｉｎに対して、設定された係数に応じたフィルタリング処理を施すＩＩＲ（無限インパルス応答）フィルタである。たとえばフィルタ１０は２次であり、係数ＣＯＥＦＦとしては、［ｂ０,ｂ１,ｂ２,ａ１,ａ２］が設定可能となっている。
【００２８】
図１には、単一のフィルタのみが示されるが、オーディオ信号処理回路１００は、カスケードに接続された複数のフィルタ１０を含んでもよい。この場合、各フィルタ１０の係数ＣＯＥＦＦは独立に設定可能となっている。ただしフィルタ１０の個数は１個でもよい。複数のフィルタ１０が設けられる場合、以下で説明するレジスタ４０およびＲＡＭ２０は、フィルタごとの領域を有している。
【００２９】
具体的にはフィルタ１０は、遅延素子Ｄ１〜Ｄ４、加算器ＡＤＤ１、ＡＤＤ２、乗算器Ｍ１〜Ｍ５を備える。遅延素子Ｄ１〜Ｄ４は、入力されたデータを１サンプリング時間、遅延させ、乗算器Ｍ１〜Ｍ５は、入力されたデータに、設定された係数ＣＯＥＦＦを掛ける。
【００３０】
遅延素子Ｄ１はオーディオ信号Ｓ１を遅延させる。遅延素子Ｄ２は、遅延素子Ｄ１の出力データを遅延させる。乗算器Ｍ１は、オーディオ信号Ｓｉｎに係数ｂ０を掛ける。乗算器Ｍ２、Ｍ３はそれぞれ、遅延素子Ｄ１、Ｄ２の出力データに係数ｂ１、ｂ２を掛ける。加算器ＡＤＤ１は、乗算器Ｍ１〜Ｍ３の出力データを加算する。
【００３１】
遅延素子Ｄ３は出力オーディオ信号Ｓｏｕｔを遅延させる。遅延素子Ｄ４は、遅延素子Ｄ３の出力データを遅延させる。乗算器Ｍ４、Ｍ５はそれぞれ、遅延素子Ｄ３、Ｄ４の出力データに、係数ａ１、ａ２を掛ける。加算器ＡＤＤ２は、加算器ＡＤＤ１の出力データおよび乗算器Ｍ４、Ｍ５の出力データを加算する。
【００３２】
なお、フィルタ１０の構成は例示であって、２次以外のＩＩＲフィルタであってもよい。
【００３３】
ＲＡＭ２０には、フィルタ１０の係数ＣＯＥＦＦ［ｂ０,ｂ１,ｂ２,ａ１,ａ２］が格納される。インタフェース回路３０は、外部のプロセッサ２０２から、Ｉ２Ｃバス（ＢＵＳ）を介して、フィルタ１０の特性を示すパラメータデータＰＲＭを受ける。パラメータデータＰＲＭは、フィルタ１０の係数ＣＯＥＦＦに対応するデータではなく、フィルタ１０の形式および周波数特性を示すデータを含んでいる。たとえばフィルタ１０が、ピーキングフィルタ、ローブーストフィルタ、ハイブーストフィルタ、ローパスフィルタ、ハイパスフィルタが切りかえ可能である場合、パラメータデータＰＲＭは、フィルタ形式を指定するデータ（タイプデータＤＴ）、周波数を指定するデータ（周波数データＤＦ（Ｈｚ））、ゲインを指定するデータ（ゲインデータＤＧ（ｄＢ））、Ｑ値を指定するデータ（Ｑ値データＤＱ）を含んでもよい。
【００３４】
インタフェース回路３０は、受信したパラメータデータＰＲＭを、レジスタ４０に格納する。
【００３５】
演算部５０は、インタフェース回路３０がレジスタ４０に格納したパラメータデータＰＲＭにもとづき、フィルタ１０の係数ＣＯＥＦＦ［ｂ０,ｂ１,ｂ２,ａ１,ａ２］を算出する。演算部５０には、フィルタの形式ごとに関数が定義され、もしくは演算回路が実装されており、データＤＦ、ＤＧ、ＤＱを満足する係数ＣＯＥＦＦ［ｂ０,ｂ１,ｂ２,ａ１,ａ２］を計算する。
【００３６】
一例として、タイプデータＤＴがピーキングフィルタを指定する場合、中間値として、以下のＡ、ω、ｓｎ、ｃｓ、αを演算する。なおＦｓはオーディオ信号Ｓｉｎのサンプリングレートを示し、たとえば４８ｋＨｚ程度に設定される。サンプリングレートＦｓが固定されるシステムでは、値Ｆｓはオーディオ信号処理回路１００の内部に保持されている。サンプリングレートＦｓが変動する場合、パラメータデータＰＲＭにはサンプリングレートを示すデータＤＦＳが含まれてもよい。
【００３７】
Ａ＝１０（ＤＧ／４０）
ω＝２×π×ＤＦ／Ｆｓ
ｓｎ＝ｓｉｎ（ω）
ｃｓ＝ｃｏｓ（ω）
α＝ｓｎ／（２×ＤＱ）
【００３８】
そしてこれらの中間値を用いて、
ｂ０＝（１＋Ａ×α）／（１＋（α／Ａ））
ｂ１＝−２×ｃｓ／（１＋（α／Ａ））
ｂ２＝（１−（α／Ａ））／（１＋（α／Ａ））
ａ１＝２×ｃｓ／（１＋（α／Ａ））＝−ｂ１
ａ２＝−（１−（α／Ａ））／（１＋（α／Ａ））＝−ｂ２
【００３９】
演算部５０は、計算した係数ＣＯＥＦＦ［ｂ０,ｂ１,ｂ２,ａ１,ａ２］をＲＡＭ２０に格納する。なお、当業者によれば、フィルタの形式が異なればそれに応じた計算式を用いればよいことが理解されよう。
【００４０】
演算部５０は、プロセッサ２０２から指定されたタイミングで係数ＣＯＥＦＦ［ｂ０,ｂ１,ｂ２,ａ１,ａ２］を計算する。たとえばプロセッサ２０２はオーディオ信号処理回路１００に対し、パラメータデータＰＲＭに加えて、フィルタ１０の係数ＣＯＥＦＦを更新するタイミングを示すデータ（更新データＤＵ）を出力する。
【００４１】
そして、オーディオ信号処理回路１００がプロセッサ２０２からすべてのパラメータデータＰＲＭを受信した後、演算部５０は、更新データＤＵが示すタイミングで係数ＣＯＥＦＦを算出し、ＲＡＭ２０に格納する。ＲＡＭ２０に新たな係数ＣＯＥＦＦを格納すると、フィルタ１０の特性は瞬時に切りかわる。
【００４２】
またオーディオ信号処理回路１００は、自動更新モードと呼ばれる動作が可能となっている。自動更新モードでは、レジスタ４０のパラメータデータＰＲＭが変更されたか否かにかかわらず、所定の周期で係数ＣＯＥＦＦを再計算し、ＲＡＭ２０に格納する。
【００４３】
複数のフィルタ１０が設けられる場合、自動更新モードにおいて、オーディオ信号処理回路１００は複数のフィルタの係数ＣＯＥＦＦを巡回的に更新する。
【００４４】
自動更新モードでは、プロセッサ２０２からオーディオ信号処理回路１００に対して、更新データＤＵを送出する必要がない。その代わりに、オーディオ信号処理回路１００に対して、自動更新モードへの遷移を指示するデータが出力される。
【００４５】
以上がオーディオ信号処理回路１００の構成である。続いてその動作を説明する。図２は、図１のオーディオシステム２００の動作を示すタイムチャートである。
時刻ｔ０以前、ＲＡＭ２０には初期状態の係数ＣＯＥＦＦが格納されており、フィルタ１０は設定された係数ＣＯＥＦＦにもとづいて、オーディオ信号Ｓｉｎをフィルタリングしている。
【００４６】
時刻ｔ０に、ユーザがフィルタ１０の特性を変更する。そうすると、プロセッサ２０２はオーディオ信号処理回路１００に対して、新たな特性を示すパラメータデータＰＲＭの伝送を開始する。時刻ｔ１に、すべてのパラメータＰＲＭがレジスタ４０に格納される。時刻ｔ０〜ｔ１の期間はＩ２Ｃバスの伝送レートに制限されるため、オーディオ信号Ｓｉｎのサンプリングレートよりも格段に長くなる。
【００４７】
時刻ｔ０〜ｔ１の期間も、フィルタ１０は、引き続き初期値として設定された係数ＣＯＥＦＦにもとづいてフィルタリングを行う。
【００４８】
更新データＤＵが示すタイミング、もしくは自動更新モードで設定されるタイミングである時刻ｔ２に、演算部５０はレジスタ４０の格納されたパラメータデータＰＲＭにもとづいて、係数ＣＯＥＦＦを演算し、ＲＡＭ２０に格納する。オーディオ信号処理回路１００がたとえば２４．５７６ＭＨｚ程度で動作する。これはサンプリングレートＦＳの５１２倍である。演算部５０は、サンプリングレートよりも格段に速い時間ですべての係数ＣＯＥＦＦの計算を終え、ＲＡＭ２０の係数ＣＯＥＦＦを更新することができる。時刻ｔ２の直後にＲＡＭ２０の係数ＣＯＥＦＦが更新されると、フィルタ１０の特性が瞬時に切りかわる。
【００４９】
このように、実施の形態に係るオーディオシステム２００によれば、フィルタ１０が参照するＲＡＭ２０上の係数ＣＯＥＦＦをサンプリングレートＦＳよりも速く（サンプリング時間１／ＦＳより短い時間で）更新できるため、短時間でフィルタの特性を切りかえることができる。
【００５０】
図１のオーディオ信号処理回路１００の効果は、従来のシステムの動作と比較することによりさらに明確となる。従来のシステムでは、プロセッサ側がフィルタの係数ＣＯＥＦＦを保持しており、これを４ｋＨｚと低速なＩ２Ｃバスを介してオーディオ信号処理回路に伝送する。かかるシステムでは、フィルタ１０が参照するＲＡＭ２０に格納される係数ＣＯＥＦＦは、ひとつずつ順に更新されていくため、すべての係数の更新が完了するまでの時間は、オーディオ信号のサンプリング時間１／ＦＳよりも格段に長くなる。この場合、フィルタ１０の特性が時間的に不連続かつ段階的に変化していくため、ユーザに聴感上の不快感を与えることになる。これを防止するためには、上述したソフトスイッチ機能を設ける必要があり、回路規模が増大する。
【００５１】
これに対して、図１のオーディオ信号処理回路１００では、フィルタ１０の特性の切りかえ時間は、サンプリング時間１／ＦＳより短いため、ソフトスイッチ機能を設けずとも、ユーザに与える聴感上の違和感を従来より低減できる。ただし、フィルタ１０の変更前後の特性が著しく異なることが想定される場合、ソフトスイッチ機能を設けてノイズを緩和してもよい。
【００５２】
また、図１のオーディオシステム２００によれば、プロセッサ２０２側に係数ＣＯＥＦＦを格納するＲＯＭを設ける必要がないため、システム全体のサイズを削減できる。
【００５３】
また、自動更新モードを設けることによりＲＡＭ２０に保持される係数ＣＯＥＦＦが壊れた場合であっても、再計算によって直ちに正しい係数ＣＯＥＦＦに再更新されるため、フィルタ１０が予期せぬ周波数特性で長時間動作するのを防止できる。
【００５４】
また、図１のオーディオシステム２００によれば、プロセッサ２０２がレジスタ４０内のパラメータデータＰＲＭにアクセスすることも可能であるため、プロセッサ２０２側からオーディオ信号処理回路１００の状態を把握することが可能となる。
【００５５】
上述の実施の形態では、フィルタの係数を瞬時に切りかえる構成を説明したが、本発明はこれに限定されず、以下で説明するソフトスイッチと組み合わせてもよい。
【００５６】
図３は、ソフトスイッチが可能なフィルタ１０ｃの構成を示すブロック図である。フィルタ１０ｃは、第１フィルタ１０ａ、第２フィルタ１０ｂ、第１ＲＡＭ２０ａ、第２ＲＡＭ２０ｂ、第１乗算器１２ａ、第２乗算器１２ｂ、加算器１４を備える。図３には、単一のチャンネルのみが示され、実際には、チャンネルごとにフィルタ１０ｃが設けられる。第１乗算器１２ａ、第２乗算器１２ｂ、加算器１４は、第１フィルタ１０ａの出力信号と第２フィルタ１０ｂの出力信号を、変更可能な比率で重み付け加算するソフトスイッチ回路を形成する。
【００５７】
第１フィルタ１０ａおよび第２フィルタ１０ｂはそれぞれ、図１で示した構成を有する。第１フィルタ１０ａは、第１ＲＡＭ２０ａに格納された係数を参照し、オーディオ信号Ｓｉｎをフィルタリングする。同様に第２フィルタ１０ｂは、第２ＲＡＭ２０ｂに格納された係数を参照し、オーディオ信号Ｓｉｎをフィルタリングする。第１ＲＡＭ２０ａおよび第２ＲＡＭ２０ｂに格納される係数は、図１の演算部５０によって計算される。
【００５８】
第１乗算器１２ａは、第１フィルタ１０ａの出力に、遷移パラメータβ（０≦β≦１）を乗算する。第２乗算器１２ｂは、第２フィルタ１０ｂの出力に、遷移パラメータ（１−β）を乗算する。遷移パラメータβの値は、シーケンサ１６によって制御される。加算器１４は、第１乗算器１２ａの出力と第２乗算器１２ｂの出力を加算する。
β＝１のとき、第１フィルタ１０ａがアクティブとなり、フィルタ１０ｃの出力は第１フィルタ１０ａの出力と同じとなる。β＝０のとき、第２フィルタ１０ｂがアクティブとなり、フィルタ１０ｃの出力は第２フィルタ１０ｂの出力と同じとなる。
【００５９】
図３のフィルタ１０ｃは、その係数を切りかえるたびに、βの値を０から１の間で変化させ、第１フィルタ１０ａと第２フィルタ１０ｂを交互にアクティブとする。遷移レジスタ１８には、現在、フィルタ１０ａ、１０ｂのいずれがアクティブかを示すフラグＦＬＧ１が格納される。具体的には、フラグＦＬＧ１が０のとき、第１フィルタ１０ａがアクティブであり、１のとき、第２フィルタ１０ｂがアクティブである。
【００６０】
以上がフィルタ１０ｃの構成である。続いてその動作を説明する。図４は、図３のフィルタ１０ｃの動作を示すタイムチャートである。
時刻ｔ０以前に、フラグＦＬＧ１は０であり、オーディオ信号Ｓｉｎは、第１フィルタ１０ａを経由する。
【００６１】
時刻ｔ０に、プロセッサ２０２から、フィルタ１０ｃの新たなパラメータＰＲＭ（周波数、ゲイン、Ｑ値等）が指示される。演算部５０は、新たなパラメータＰＲＭを受け、それに応じた係数ＣＯＥＦＦを計算し、非アクティブな第２フィルタ１０ｂに付随する第２ＲＡＭ２０ｂに格納する。つまり非アクティブな第２フィルタ１０ｂの係数が変更される。またフラグＦＬＧ１の値が０から１に書き換えられる。
【００６２】
続いてシーケンサ１６は、遷移パラメータβを時間とともに１から０へと緩やかに変化させる。その結果、第１フィルタ１０ａがアクティブな状態から、第２フィルタ１０ｂがアクティブな状態へと緩やかに変化する。時刻ｔ１にβが０となると、第２フィルタ１０ｂがアクティブとなる。
【００６３】
しばらく時間が経過した時刻ｔ２に、再びプロセッサ２０２からフィルタ１０ｃから新たなパラメータＰＲＭが指示される。演算部５０は新たなパラメータＰＲＭに応じた係数ＣＯＥＦＦを計算し、非アクティブな第１フィルタ１０ａに付随する第１ＲＡＭ２０ａに格納する。
【００６４】
続いてシーケンサ１６は、遷移パラメータβを時間とともに０から１へと緩やかに変化させる。その結果、第２フィルタ１０ｂがアクティブな状態から、第１フィルタ１０ａがアクティブな状態へと緩やかに変化する。時刻ｔ３にβが１となると、第１フィルタ１０ａがアクティブとなる。そしてフラグＦＬＧ１の値が０に変更される。
【００６５】
以上がフィルタ１０ｃの動作である。このフィルタ１０ｃは、パラメータＰＲＭを変更するのに要する時間が短くて済むという利点を有する。この利点は、以下で説明する比較技術との対比によって明確となる。図４の下段には、比較技術における動作を示すタイムチャートが示される。
【００６６】
比較技術では、第１フィルタ１０ａをメインフィルタとして、第２フィルタ１０ｂを遷移用フィルタとして固定的に使用する。比較技術では、以下の４つの状態を順に遷移する。
【００６７】
１．通常状態φ０
第１フィルタ１０ａがアクティブとなっている。この状態でフィルタ１０ｃのパラメータＰＲＭの変更が指示されると、新しい係数ＣＯＥＦＦが計算され、遷移用フィルタである第２フィルタ１０ｂの第２ＲＡＭ２０ｂに書き込まれる。
【００６８】
２．遷移実行状態φ１
通常状態において、遷移レジスタのフラグＦＬＧ１を０から１に書き換えると、遷移実行状態φ１に移る。遷移実行状態φ１に移ると、遷移パラメータβが１から０へと緩やかに変化する。遷移パラメータβが０となると、次の遷移終了状態φ２に移る。
【００６９】
３．遷移終了状態φ２
遷移終了状態φ２では、第２ＲＡＭ２０ｂに設定された係数ＣＯＥＦＦが第１ＲＡＭ２０ａにコピーされる。また第２フィルタ１０ｂ内の遅延素子Ｄ１〜Ｄ４の値が、第１フィルタ１０ａ内の対応する遅延素子Ｄ１〜Ｄ４にコピーされる。遅延素子Ｄ１〜Ｄ４はメモリ（ＲＡＭ）である。さらに係数βが０から１へと瞬時に切りかえられる。この処理を経て、第１フィルタ１０ａがアクティブとなる。
【００７０】
４．遷移終了状態φ３
その後、遷移レジスタのフラグＦＬＧ１を０に戻すと、通常状態φ１に戻る。
【００７１】
比較技術では、第２ＲＡＭ２０ｂに格納される係数ＣＯＥＦＦと、遅延素子（ＲＡＭ）Ｄ１〜Ｄ４に格納される値をコピーする必要があるため、遷移に要する時間が長くなる。これに対して図４の上段の動作によれば、コピー処理が不要となるため、遷移時間を短くできる。
【００７２】
一般的にフィルタは、複数個カスケードに接続される場合が多いが、図４の上段の動作は、カスケード接続される個数が少ないほど（好ましくは１個）、有利である。またチャンネル数が多いアプリケーションほど有利であるといえる。
【００７３】
実施の形態にもとづき、本発明を説明したが、実施の形態は、本発明の原理、応用を示しているにすぎず、実施の形態には、請求の範囲に規定された本発明の思想を逸脱しない範囲において、多くの変形例や配置の変更が可能である。
【符号の説明】
【００７４】
１００…オーディオ信号処理回路、２００…オーディオシステム、１０…フィルタ、２０…ＲＡＭ、３０…インタフェース回路、４０…レジスタ、５０…演算部、２０２…プロセッサ、２０４…音源、２０６…スピーカ。
【図１】
2010233198.tif 000003
【図２】
2010233198.tif 000004
【図３】
2010233198.tif 000005
【図４】
2010233198.tif 000006