(57)【特許請求の範囲】
【請求項１】
複数チャネルの時分割多重された入力データ、該入力データの周期の間を補間する補間データ及び加算結果を格納するデータ格納部と、
フィルタ処理のためのフィルタ係数が格納されたフィルタ係数格納部と、
出力レベルを制御するためのボリューム係数が格納された出力係数格納部と、
前記複数チャネルの処理されたデータを所定の割合で混合して出力データを生成するためのパン係数が格納されたパン係数格納部と、
前記データ格納部に格納されたデータと、前記フィルタ係数、前記ボリューム係数及び前記パン係数との乗算演算を行って乗算結果を生成する乗算部と、
前記フィルタ係数格納部、前記出力係数格納部、前記パン係数格納部及び前記乗算部と接続し、制御信号に基づいて前記フィルタ係数、前記ボリューム係数若しくは前記パン係数のいずれか１つを選択して該乗算部に供給するセレクタと、
前記乗算結果と従前に生成された乗算結果との加算演算を行い前記加算結果を出力する累積加算部と、
前記乗算部に対して前記フィルタ係数、前記ボリューム係数及び前記パン係数を順次与えるために前記制御信号を生成し、該乗算部と前記累積加算部によって前記フィルタ処理、前記出力レベルの制御及び前記出力データの生成を行わせる制御部とを、
備えたことを特徴とするデジタルフィルタ。
【請求項２】
前記データ格納部は、
前記複数チャネルの時分割多重された入力データ及び該入力データの周期の間を補間する補間データを格納する第１のレジスタと、
前記第１のレジスタに格納されたデータと前記ボリューム係数とに基づいてボリューム処理がされたデータを格納する第２のレジスタと、
前記第２のレジスタに格納されたデータと前記フィルタ係数とに基づいてフィルタ処理されたデータを格納する第３のレジスタと、
前記第３のレジスタに格納されたデータに基づいて補間処理がされたデータを格納する第４のレジスタと、
前記制御部から与えられる選択信号に基づいて前記第１乃至第４のレジスタのいずれか１つに格納されている前記データを選択して出力する第２のセレクタとを有することを特徴とする請求項１記載のデジタルフィルタ。
【請求項３】
前記第４のレジスタに格納されたデータと前記パン係数との乗算結果を用いて得られた前記加算結果を前記出力データとすることを特徴とする請求項２記載のデジタルフィルタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、デジタル化された音声信号にデジタル処理を施すデジタルフィルタ、特に複数チャンネルを同時に処理可能なデジタルフィルタに関するものである。
【０００２】
【従来の技術】
図２は、従来のデジタルフィルタの一例を示す構成図である。
このデジタルフィルタは、第１チャンネルの入力データＩＮ１と、第２チャンネルの入力データＩＮ２を、同じクロック信号ＣＬＫに同期してシフトして保持するシフト部１，２を有している。シフト部１，２は、それぞれ複数のシフトレジスタ（ＳＲ）を縦続接続した構成となっており、各シフトレジスタの出力データと入力データＩＮ１，ＩＮ２が、マルチプレクサ（ＭＵＸ）３の入力側に与えられるようになっている。
【０００３】
マルチプレクサ３は、クロック信号ＣＬＫの“Ｈ”，“Ｌ”のレベルに従って、シフト部１，２の出力データを交互に選択して出力するもので、このマルチプレクサ３の出力側が、ＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）フィルタ部４に接続されている。ＦＩＲフィルタ部４は、マルチプレクサ３から出力される各データにそれぞれフィルタ係数を乗ずる複数の乗算器（ＭＵＬ）と、これらの複数の乗算器の乗算結果を加算する複数の加算器で構成されている。ＦＩＲフィルタ部４の出力側には、出力部５が接続されている。
【０００４】
出力部５は、２つのフリップフロップ（ＦＦ）とインバータで構成され、クロック信号ＣＬＫに従ってＦＩＲフィルタ部４の出力データを保持し、第１チャンネル及び第２チャンネルに対する出力データＯＵＴ１，ＯＵＴ２を出力するものである。
【０００５】
このようなデジタルフィルタでは、クロック信号ＣＬＫの立ち上がりで、入力データＩＮ１，ＩＮ２が、それぞれシフト部１，２にシフトされて保持される。そして、クロック信号ＣＬＫが“Ｈ”の期間に、シフト部１に保持されているデータがマルチプレクサ３を介してＦＩＲフィルタ部４に与えられ、第１チャンネルのデータに対するフィルタ処理が施される。
【０００６】
次に、クロック信号ＣＬＫが立ち下がると、ＦＩＲフィルタ部４の処理結果が出力部５のフリップフロップで保持され、第１チャンネルの出力データＯＵＴ１として出力される。また、クロック信号ＣＬＫが“Ｌ”になったことにより、シフト部２に保持されているデータがマルチプレクサ３を介してＦＩＲフィルタ部４に与えられ、第２チャンネルのデータに対するフィルタ処理が施される。
【０００７】
その後、クロック信号ＣＬＫが立ち上がると、ＦＩＲフィルタ部４の処理結果が出力部５のフリップフロップで保持され、第２チャンネルの出力データＯＵＴ２として出力される。この繰り返しにより、第１チャンネルの入力データＩＮ１と第２チャンネルの入力データＩＮ２は、共通のＦＩＲフィルタ部４によってフィルタ処理が施され、出力データＯＵＴ１，ＯＵＴ２が出力される。
【０００８】
このように、図２のデジタルフィルタでは、１つのＦＩＲフィルタ部４で２チャンネルのフィルタ処理を行うことが可能になり、回路の簡素化を図ることができる。
【０００９】
【発明が解決しようとする課題】
しかしながら、従来のデジタルフィルタでは、第１チャンネルと第２チャンネルが同一のサンプリング周波数である必要があり、適用範囲が限られていた。また、ＦＩＲフィルタ部４は複数の乗算器と加算器を必要とし、更なる回路規模の簡素化が望まれていた。
【００１０】
本発明は、前記従来技術が持っていた課題を解決し、サンプリング周波数の異なる入力データを処理することが可能で、更に回路規模を簡素化した多チャンネル用のデジタルフィルタを提供するものである。
【００１１】
【課題を解決するための手段】
前記課題を解決するために、本発明は、デジタルフィルタにおいて、複数チャネルの時分割多重された入力データ、該入力データの周期の間を補間する補間データ及び加算結果を格納するデータ格納部と、フィルタ処理のためのフィルタ係数が格納されたフィルタ係数格納部と、出力レベルを制御するためのボリューム係数が格納された出力係数格納部と、前記複数チャネルの処理されたデータを所定の割合で混合して出力データを生成するためのパン係数が格納されたパン係数格納部と、前記データ格納部に格納されたデータと、前記フィルタ係数、前記ボリューム係数及び前記パン係数との乗算演算を行って乗算結果を生成する乗算部と、前記フィルタ係数格納部、前記出力係数格納部、前記パン係数格納部及び前記乗算部と接続し、制御信号に基づいて前記フィルタ係数、前記ボリューム係数若しくは前記パン係数のいずれか１つを選択して該乗算部に供給するセレクタと、前記乗算結果と従前に生成された乗算結果との加算演算を行い前記加算結果を出力する累積加算部と、前記乗算部に対して前記フィルタ係数、前記ボリューム係数及び前記パン係数を順次与えるために前記制御信号を生成し、該乗算部と前記累積加算部によって前記フィルタ処理、前記出力レベルの制御及び前記出力データの生成を行わせる制御部とを備えている。
【００１２】
本発明によれば、以上のようにデジタルフィルタを構成したので、次のような作用が行われる。
複数チャネルの時分割多重された入力データと、この入力データの周期の間を補間する補間データとが切り替えてデータ格納部に与えられ、最新の複数個の入力データと補間データがこのデータ格納部に格納される。
一方、制御部では、フィルタ係数、ボリューム係数及びパン係数を順次選択するための制御信号が生成され、セレクタに与えられる。セレクタでは、制御部から与えられる制御信号に基づいて、フィルタ係数格納部に格納されたフィルタ係数、出力係数格納部に格納されたボリューム係数、及びパン係数格納部に格納されたパン係数が順次選択されて、乗算部に与えられる。
乗算部では、データ格納部に格納されたデータとセレクタで選択された係数との乗算が行われ、その乗算結果が累積加算部に与えられる。累積換算部では、乗算部から与えられた乗算結果と従前に生成された乗算結果との加算演算が行われ、その加算結果が出力される。このように、制御部の制御に従って、乗算部と累積加算部によってフィルタ処理、出力レベルの制御、及び各チャネルのデータの混合が行われ、出力データが生成される。
【００１９】
【発明の実施の形態】
（第１の実施形態）
図１は、本発明の第１の実施形態を示すデジタルフィルタの構成図である。
このデジタルフィルタは、データ格納部１０、乗算部２０、フィルタ係数格納部３０、累積加算部４０、データ出力部５１，５２、及び制御部６０で構成されている。
【００２０】
データ格納部１０は、複数チャンネルのデータが時分割多重されて入力される入力データＤＴＩＮから、各チャンネル毎に最新の複数個のデータをシフトして保持するものである。ここで、例えば入力される第１と第２チャンネルのサンプリング周波数の比が２：１の場合、第１チャンネルのデータは各フレームに挿入され、第２チャンネルのデータは２フレームに１回の割合で挿入された入力データＤＴＩＮが与えられる。
【００２１】
このデータ格納部１０は、それぞれ第１チャンネルと第２チャンネルに対応したシフトレジスタ１１１，１１２を有しており、制御部６０から与えられるシフト信号ＳＦＴ１，ＳＦＴ２に従って、入力データＤＴＩＮを保持すると共に、今までに保持したデータを順次シフトして過去の複数個のデータを格納するようになっている。
【００２２】
シフトレジスタ１１１，１１２の各段の出力側は、それぞれセレクタ１２１，１２２の入力側に接続されている。セレクタ１２１，１２２は、制御部６０から与えられる選択信号ＳＥＬａに従って、それぞれシフトレジスタ１１１，１１２の出力データを選択して出力するものである。セレクタ１２１，１２２の出力側は、セレクタ１３の入力側に接続されている。セレクタ１３は、制御部６０から与えられる選択信号ＳＥＬｂに従って、セレクタ１２１，１２２のいずれか一方の出力データを選択して出力するものであり、このセレクタ１３の出力側が、乗算部２０の一方の入力側に接続されている。
【００２３】
乗算部２０の他方の入力側には、フィルタ係数格納部３０が接続されている。フィルタ係数格納部３０は、入力データＤＴＩＮのフィルタ処理のためのフィルタ係数を予め格納したもので、制御部６０から与えられる制御信号ＦＩＬに従って、所定のフィルタ係数を選択して乗算部２０に出力するものである。
【００２４】
乗算部２０は、データ格納部１０から出力されたデータと、フィルタ係数格納部３０から与えられたフィルタ係数を掛け合わせるもので、この乗算部２０の出力側に累積加算部４０が接続されている。
【００２５】
累積加算部４０は加算器４１とデータラッチ４２を有し、この加算器４１の第１の入力側に乗算部２０からのデータが与えられ、加算器４１の出力側がデータラッチ４２の入力側に接続され、更にこのデータラッチ４２の出力側が、加算器４１の第２の入力側に接続された構成となっている。
【００２６】
この累積加算部４０では、まず、制御部６０から与えられるクリア信号ＣＬＲによって、データラッチ４２の内容が０に消去される。次に、乗算器２０から与えられるデータと、データラッチ４２に保持されているデータ（即ち、０）が加算器４１によって加算され、制御部６０から与えられる保持信号ＨＬＤに従って、この加算結果がデータラッチ４２に保持される。以下、乗算器２０からデータが出力される毎に保持信号ＨＬＤが与えられ、この乗算器２０からのデータが累積加算されて、データラッチ４２に保持されるようになっている。
【００２７】
データラッチ４２の出力側には、データ出力部５１，５２が接続されている。データ出力部５１，５２は、それぞれ制御部６０から与えられるラッチ信号ＬＡＴ１，ＬＡＴ２に従い、累積加算部４０の最終的な加算結果を保持して第１チャンネル及び第２チャンネルの出力データＯＵＴ１，ＯＵＴ２として出力するものである。
【００２８】
制御部６０は、クロック信号ＣＬＫに基づいて、上記の各部に対する動作制御用のタイミング信号を生成して出力するものである。
【００２９】
図３は、図１の動作を示すタイミングチャートである。以下、この図３を参照しつつ、図１の動作を説明する。
入力データＤＴＩＮに第１チャンネルのデータＣＨ１が入力されると、制御部６０からデータ格納部１０のシフトレジスタ１１１にシフト信号ＳＦＴ１が与えられる。これにより、シフトレジスタ１１１に保持されていた過去の第１チャンネルのデータが順次後段にシフトされると共に、初段には最新のデータＣＨ１が格納される。また、制御部６０からデータ格納部１０のセレクタ１３に対して、第１チャンネル（即ち、セレクタ１２１）側を選択させるための選択信号ＳＥＬｂが出力される。更に、制御部６０から累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０のデータラッチ４２の内容は、消去されて０になる。
【００３０】
次に、制御部６０からデータ格納部１０のセレクタ１２１に対して、１番目のデータを選択させるための選択信号ＳＥＬａが出力されると共に、フィルタ係数格納部３０に対して、１番目のフィルタ係数を選択して出力させるための制御信号ＦＩＬが出力される。これにより、シフトレジスタ１１１の１番目のデータと、フィルタ係数格納部３０の１番目のフィルタ係数が乗算部２０によって掛け合わされ、その乗算結果が累積加算部４０に出力される。累積加算部４０の加算器４１では、乗算部２０から与えられた乗算結果とデータラッチ４２に保持されている累積結果（この場合は、０）が加算される。この時点で、制御部６０からデータラッチ４２に保持信号ＨＬＤが与えられ、加算器４１の加算結果がこのデータラッチ４２に新たな累積結果として保持される。
【００３１】
その後、制御部６０からデータ格納部１０のセレクタ１２１に対して、２番目、３番目、…のデータを選択させるための選択信号ＳＥＬａと共に、フィルタ係数格納部３０に対して、２番目、３番目、…のフィルタ係数を選択して出力させるための制御信号ＦＩＬが、順次出力される。これにより、シフトレジスタ１１１の２番目、３番目、…のデータと、フィルタ係数格納部３０の２番目、３番目、…のフィルタ係数が乗算部２０によってそれぞれ掛け合わされる。そして、これらの乗算結果は、制御部６０から累積加算部４０に順次与えられる保持信号ＨＬＤに従って累積加算されて保持される。
【００３２】
シフトレジスタ１１１に格納された第１チャンネルのデータに対するフィルタ処理が終了すると、制御部６０からデータ出力部５１に対して、ラッチ信号ＬＡＴ１が出力される。これにより、累積加算部４０のデータラッチ４２に保持されているデータが、データ出力部５１に保持されて出力データＯＵＴ１として出力される。
【００３３】
次に、入力データＤＴＩＮに第２チャンネルのデータＣＨ２が入力されると、制御部６０からデータ格納部１０のシフトレジスタ１１２にシフト信号ＳＦＴ２が与えられる。これにより、シフトレジスタ１１２に保持されていた過去の第２チャンネルのデータが順次後段にシフトされると共に、初段には最新のデータＣＨ２が格納される。また、制御部６０からデータ格納部１０のセレクタ１３に対して、第２チャンネル（即ち、セレクタ１２２）側を選択させるための選択信号ＳＥＬｂが出力される。更に、制御部６０から累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０のデータラッチ４２の内容は、消去されて０になる。
【００３４】
この後の動作は、第１チャンネルの場合と同様である。そして、シフトレジスタ１１２に格納された第２チャンネルのデータに対するフィルタ処理が終了すると、制御部６０からデータ出力部５２に対して、ラッチ信号ＬＡＴ２が出力される。これにより、累積加算部４０のデータラッチ４２に保持されているデータが、データ出力部５２に保持されて出力データＯＵＴ２として出力される。
【００３５】
以上のように、この第１の実施形態のデジタルフィルタは、時分割多重されて入力される入力データＤＴＩＮのチャンネル毎に、そのデータをシフトして保持する２つのシフトレジスタ１１１，１１２を有している。そして、これらのシフトレジスタ１１１，１１２に保持されたデータを順次読み出してフィルタ処理を行うための、乗算部２０、フィルタ係数格納部３０及び累積加算部４０を有している。これにより、入力されるチャンネルに応じてフィルタ処理を行うことができるので、サンプリング周波数の異なる複数チャンネルのフィルタ処理が可能になるという利点がある。更に、乗算部２０と累積加算部４０は、入力されるチャンネル数やシフトレジスタ１１１等の段数に拘らず、それぞれ１組だけでよいので、回路規模を簡素化することができるという利点がある。
【００３６】
（第２の実施形態）
図４は、本発明の第２の実施形態を示すデジタルフィルタの構成図である。
このデジタルフィルタは、入力データＤＴＩＮの１サンプリング周期の間に、補間データを挿入して出力データを生成する補間処理機能を備えたもので、図１中の要素と共通の要素には共通の符号が付されている。
【００３７】
このデジタルフィルタでは、図１中のデータ格納部１０に代えて、補間データを生成するための機能が追加されたデータ格納部１０Ａを設けると共に、これに対応して機能が追加された制御部６０Ａを設けた構成となっている。
【００３８】
データ格納部１０Ａは、制御部６０Ａから与えられる制御信号ＣＯＭに従って、入力データＤＴＩＮと補間用の“０”データを切り替えて入力するセレクタ１４を有している。セレクタ１４の出力側には、それぞれ第１チャンネルと第２チャンネルに対応したシフトレジスタ１１１，１１２が接続されており、制御部６０Ａから与えられるシフト信号ＳＦＴ１，ＳＦＴ２に従って、セレクタ１４から与えられるデータを保持すると共に、今までに保持したデータを順次シフトして過去の複数個のデータを格納するようになっている。
【００３９】
シフトレジスタ１１１，１１２の各段の出力側は、それぞれセレクタ１２１，１２２の入力側に接続されている。セレクタ１２１，１２２は、制御部６０Ａから与えられる選択信号ＳＥＬａに従って、それぞれシフトレジスタ１１１，１１２の出力データを選択して出力するものである。
【００４０】
更に、このデータ格納部１０Ａは、累積加算部４０によってフィルタ処理が施されてフィードバックされるデータを、制御部６０Ａから与えられるシフト信号ＳＦＴ３，ＳＦＴ４に従って保持すると共に、今までに保持したデータを順次シフトして過去の複数個のデータを格納する補間処理用のシフトレジスタ１５１，１５２を有している。
【００４１】
シフトレジスタ１５１，１５２の各段の出力側は、それぞれセレクタ１６１，１６２の入力側に接続されている。セレクタ１６１，１６２は、制御部６０Ａから与えられる選択信号ＳＥＬａに従って、それぞれシフトレジスタ１５１，１５２の出力データを選択して出力するものである。
【００４２】
セレクタ１２１，１２２，１６１，１６２の出力側は、セレクタ１７の入力側に接続されている。セレクタ１７は、制御部６０Ａから与えられる選択信号ＳＥＬｂ，ＳＥＬｃに従って、セレクタ１２１〜１６２のいずれか１つの出力データを選択して出力するもので、このセレクタ１７の出力側が乗算部２０の一方の入力側に接続されている。その他の構成は、図１と同様である。
【００４３】
図５は、図４の動作を示すタイミングチャートである。以下、この図５を参照しつつ、図４の動作を説明する。
入力データＤＴＩＮに第１チャンネルのデータＣＨ１が入力されると、制御部６０Ａからデータ格納部１０Ａのセレクタ１４に、入力データＤＴＩＮ側を選択するための制御信号ＣＯＭが与えられ、更に、制御部６０Ａからデータ格納部１０Ａのシフトレジスタ１１１にシフト信号ＳＦＴ１が与えられる。これにより、シフトレジスタ１１１に保持されていた過去の第１チャンネルのデータが順次後段にシフトされると共に、初段には最新のデータＣＨ１が格納される。また、制御部６０Ａからデータ格納部１０Ａのセレクタ１７に対して、セレクタ１２１側を選択させるための選択信号ＳＥＬｂ，ＳＥＬｃが出力される。これと同時に、制御部６０Ａから累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０のデータラッチ４２の内容は、消去されて０になる。
【００４４】
次に、制御部６０Ａからデータ格納部１０Ａのセレクタ１２１に対して、１番目のデータを選択させるための選択信号ＳＥＬａが出力されると共に、フィルタ係数格納部３０に対して、１番目のフィルタ係数を選択して出力させるための制御信号ＦＩＬが出力される。これにより、シフトレジスタ１１１の１番目のデータと、フィルタ係数格納部３０の１番目のフィルタ係数が乗算部２０によって掛け合わされ、その乗算結果が累積加算部４０に出力される。累積加算部４０の加算器４１では、乗算部２０から与えられた乗算結果とデータラッチ４２に保持されている累積結果（この場合は、０）が加算される。この時点で、制御部６０Ａからデータラッチ４２に保持信号ＨＬＤが与えられ、加算器４１の加算結果が新たな累積結果として、このデータラッチ４２に保持される。
【００４５】
その後、制御部６０Ａからセレクタ１２１に対して、２番目、３番目、…のデータを選択させるための選択信号ＳＥＬａと共に、フィルタ係数格納部３０に対して、２番目、３番目、…のフィルタ係数を選択して出力させるための制御信号ＦＩＬが、順次出力される。これにより、シフトレジスタ１１１の２番目、３番目、…のデータと、フィルタ係数格納部３０の２番目、３番目、…のフィルタ係数が乗算部２０によってそれぞれ掛け合わされる。そして、これらの乗算結果は、制御部６０Ａから順次与えられる保持信号ＨＬＤに従って、累積加算部４０で累積加算されて保持される。
【００４６】
シフトレジスタ１１１に格納された第１チャンネルのデータに対するフィルタ処理が終了すると、制御部６０Ａからデータ格納部１０Ａのシフトレジスタ１５１に対するシフト信号ＳＦＴ３が与えられる。これにより、シフトレジスタ１５１に保持されていた過去の第１チャンネルのフィルタ処理が施されたデータが順次後段にシフトされると共に、初段にはフィルタ処理が施された最新のデータが格納される。また、制御部６０Ａからセレクタ１７に対して、セレクタ１５１側を選択させるための選択信号ＳＥＬｂ，ＳＥＬｃが出力される。これと同時に、制御部６０Ａから累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０のデータラッチ４２の内容は、消去されて０になる。
【００４７】
次に、制御部６０Ａからデータ格納部１０Ａのセレクタ１６１に対して、１番目のデータを選択させるための選択信号ＳＥＬａが出力されると共に、フィルタ係数格納部３０に対して、ａ番目のフィルタ係数を選択して出力させるための制御信号ＦＩＬが出力される。これにより、シフトレジスタ１５１の１番目のデータと、フィルタ係数格納部３０のａ番目のフィルタ係数が乗算部２０によって掛け合わされ、その乗算結果が累積加算部４０に出力される。累積加算部４０の加算器４１では、乗算部２０から与えられた乗算結果とデータラッチ４２に保持されている累積結果（この場合は、０）が加算される。この時点で、制御部６０Ａからデータラッチ４２に保持信号ＨＬＤが与えられ、加算器４１の加算結果が新たな累積結果として、このデータラッチ４２に保持される。
【００４８】
その後、制御部６０Ａからデータ格納部１０Ａのセレクタ１６１に対して、２番目、３番目、…のデータを選択させるための選択信号ＳＥＬａと共に、フィルタ係数格納部３０に対して、ｂ番目、ｃ番目、…のフィルタ係数を選択して出力させるための制御信号ＦＩＬが、順次出力される。これにより、シフトレジスタ１５１の２番目、３番目、…のデータと、フィルタ係数格納部３０のｂ番目、ｃ番目、…のフィルタ係数が乗算部２０によってそれぞれ掛け合わされる。そして、これらの乗算結果は、制御部６０Ａから累積加算部４０に順次与えられる保持信号ＨＬＤに従って、累積加算部４０で累積加算されて保持される。
【００４９】
シフトレジスタ１５１に格納された第１チャンネルのデータに対するフィルタ処理が終了すると、制御部６０Ａからデータ出力部５１に対して、ラッチ信号ＬＡＴ１が出力される。これと同時に、制御部６０Ａからデータ格納部１０Ａのシフトレジスタ１５１に対するシフト信号ＳＦＴ３が与えられる。これにより、累積加算部４０のデータラッチ４２に保持されているデータが、データ出力部５１に保持されて出力データＯＵＴ１として出力される。また、シフトレジスタ１５１に保持されていた過去の第１チャンネルのフィルタ処理が施されたデータが順次後段にシフトされると共に、初段にはフィルタ処理が施された最新の出力データＯＵＴ１が格納される。
【００５０】
次に、制御部６０Ａから累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０のデータラッチ４２の内容は、消去されて０になる。
その後、制御部６０Ａからデータ格納部１０Ａのセレクタ１６１に対して、１番目、２番目、…のデータを選択させるための選択信号ＳＥＬａが出力されると共に、フィルタ係数格納部３０に対して、ａ番目、ｂ番目、…のフィルタ係数を選択して出力させるための制御信号ＦＩＬが順次出力される。これにより、シフトレジスタ１５１の１番目、２番目、…のデータと、フィルタ係数格納部３０のａ番目、ｂ番目、…のフィルタ係数が乗算部２０によってそれぞれ掛け合わされる。そして、その乗算結果が、制御部６０Ａから順次与えられる保持信号ＨＬＤに従って、累積加算部４０で累積加算されて保持される。
【００５１】
シフトレジスタ１５１に格納された第１チャンネルのデータに対するフィルタ処理が終了すると、制御部６０Ａからデータ出力部５１に対して、ラッチ信号ＬＡＴ１が出力される。これにより、累積加算部４０のデータラッチ４２に保持されているデータが、データ出力部５１に保持されて出力データＯＵＴ１として出力される。
【００５２】
次に、制御部６０Ａからデータ格納部１０Ａのセレクタ１４に、補間用の“０”データを選択するための制御信号ＣＯＭが与えられる。これにより、シフトレジスタ１１１に保持されていた過去の第１チャンネルのデータが順次後段にシフトされると共に、初段には補間用の“０”データが格納される。その後の動作は、入力データＤＴＩＮに対する動作と同様である。
【００５３】
そして、次に入力データＤＴＩＮに第２チャンネルのデータＣＨ２が入力されると、制御部６０Ａからセレクタ１７に対して、セレクタ１２２，１６２を選択するための選択信号ＳＥＬｂ，ＳＥＬｃが与えられ、第１チャンネルと同様の処理が行われる。
【００５４】
以上のように、この第２の実施形態のデジタルフィルタは、補間処理を行うことができる構成のデータ格納部１０Ａと、これを制御するための制御部６０Ａを有している。これにより、第１の実施形態の利点に加えて、補間処理によってよりスムーズな出力データＯＵＴ１，ＯＵＴ２を出力することができるという利点がある。
【００５５】
（第３の実施形態）
図６は、本発明の第３の実施形態を示すデジタルフィルタの構成図である。
このデジタルフィルタは、第２の実施形態と同様の補間処理機能に加えて、出力レベルを制御するボリューム処理機能と、複数のチャンネルの入力データを所定の割合で混合した出力データを生成するパン処理機能を備えたもので、図４中の要素と共通の要素には共通の符号が付されている。
【００５６】
このデジタルフィルタは、図４のデータ格納部１０Ａに代えて構成の異なるデータ格納部７０を設けている。更に、フィルタ係数格納部３０に加えて出力係数格納部３１及びパン係数格納部３２を設けると共に、これらのフィルタ係数格納部３０、出力係数格納部３１及びパン係数格納部３２の各係数を切り替えて乗算部２０に与えるためのセレクタ３３を有している。そして、これに対応して機能が追加された制御部６０Ｂを設けた構成となっている。
【００５７】
データ格納部７０は、制御部６０Ｂから与えられる制御信号ＣＯＭに従って、入力データＤＴＩＮと補間用の“０”データを切り替えて入力するセレクタ７１を有している。セレクタ７１の出力側には、第１チャンネルと第２チャンネルに対応したボリューム処理のためのレジスタ（ＲＥＧ）７２１，７２２が接続されている。更に、このデータ格納部７０は、フィルタ処理のためのシフトレジスタ（ＳＲＧ）７３１，７３２、補間処理のためのシフトレジスタ７４１，７４２、及びパン処理のためのレジスタ７５１，７５２を有している。
【００５８】
シフトレジスタ７３１，７３２，７４１，７４２は、累積加算部４０で処理されてフィードバックされたデータを、それぞれ制御部６０Ｂから与えられるシフト信号ＳＦＴ１，ＳＦＴ２，ＳＦＴ３，ＳＦＴ４に従って保持すると共に、今までに保持したデータを順次シフトして過去の複数個のデータを格納するものである。また、レジスタ７５１，７５２は、累積加算部４０で処理されてフィードバックされたデータを保持するものである。
【００５９】
シフトレジスタ７３１，７３２の各段の出力側は、それぞれセレクタ（ＳＥＬ）７６１，７６２の入力側に接続され、シフトレジスタ７４１，７４２の各段の出力側は、それぞれセレクタ７７１，７７２の入力側に接続されている。セレクタ７６１〜７７２は、制御部６０Ｂから与えられる選択信号ＳＥＬａに従って、それぞれシフトレジスタ７３１〜７４２の各段のデータを選択して出力するものである。
【００６０】
セレクタ７６１〜７７２とレジスタ７２１〜７５２の出力側は、セレクタ７８の入力側に接続されている。セレクタ７８は、制御部６０Ｂから与えられる選択信号ＳＥＬｂ，ＳＥＬｃ，ＳＥＬｄに従って、入力側のデータのいずれか一つを選択して出力するものであり、このセレクタ７８の出力側が、乗算部２０の一方の入力側に接続されている。その他の構成は、図４と同様である。
【００６１】
図７は、図６の動作を示すタイミングチャートである。以下、この図７を参照しつつ、図６の動作を説明する。
入力データＤＴＩＮに第１チャンネルのデータＣＨ１が入力されると、制御部６０Ｂからデータ格納部７０のセレクタ７１に、入力データＤＴＩＮ側を選択するための制御信号ＣＯＭが与えられ、このデータＣＨ１がレジスタ７２１に保持される。また、制御部６０Ｂから累積加算部４０にクリア信号ＣＬＲが与えられ、累積加算部４０の保持内容は消去されて０になる。
【００６２】
次に、制御部６０Ｂからセレクタ７８に対して、レジスタ７２１を選択するための選択信号ＳＥＬｂ，ＳＥＬｃ，ＳＥＬｄが与えられると共に、セレクタ３３に対して、出力係数格納部３１を選択するための選択信号ＳＥＬｅが与えられる。これにより、乗算部２０において、レジスタ７２１から出力されたデータＣＨ１に、出力係数格納部３１から出力されたボリューム係数が掛け合わされる。乗算部２０の乗算結果は累積加算部４０に保持され、データ格納部７０にフィードバックされる。この時点で、制御部６０Ｂからシフトレジスタ７３１に対してシフト信号ＳＦＴ１が与えられ、このシフトレジスタ７３１に保持されていた過去の第１チャンネルのボリューム処理されたデータが順次後段にシフトされると共に、初段には最新のボリューム処理されたデータが格納される。
【００６３】
シフトレジスタ７３１に最新のデータが格納された後、制御部６０Ｂによってセレクタ７８がセレクタ７６１側に切り替えられると共に、セレクタ３３がフィルタ係数格納部３０側に切り替えられる。そして、シフトレジスタ７３１に格納された第１チャンネルのボリューム処理されたデータに基づいて、第２の実施形態と同様のフィルタ処理が行われる。
【００６４】
第１チャンネルのフィルタ処理が終了すると、その結果はシフトレジスタ７４１に格納され、今度はこのシフトレジスタ７４１に格納されているフィルタ処理が施されたデータに基づいて、第２の実施形態と同様の補間処理が行われる。第１チャンネルの補間処理が終了すると、その補間処理の結果はレジスタ７５１に格納される。
【００６５】
次に、レジスタ７５１に格納された第１チャンネルのデータと、レジスタ７５２に格納された第２チャンネルのデータが順次読み出され、乗算部２０において、パン係数格納部３２から出力されるそれぞれのパン係数と掛け合わされる。それぞれパン係数が乗算された第１チャネルと第２チャンネルのデータは、累積加算部４０において加算され、データ出力部５１に保持されて出力データＯＵＴ１として出力される。
【００６６】
同様に、入力データＤＴＩＮに第２チャンネルのデータＣＨ２が入力された場合には、レジスタ７２２，７５２、及びシフトレジスタ７３２，７４２等によって第１チャンネルと同様の処理が行われ、データ出力部５２に処理結果のデータが保持されて出力データＯＵＴ２が出力される。
【００６７】
以上のように、この第３の実施形態のデジタルフィルタは、補間処理に加えてボリューム処理とパン処理を行うことができる構成のデータ格納部７０と、出力係数格納部３１及びパン係数格納部３２等と、これを制御するための制御部６０Ｂを有している。これにより、第２の実施形態の利点に加えて、出力レベルを制御したり、複数の入力データを所定の割合で混合した出力データを得ることができるという利点がある。
【００６８】
なお、本発明は、上記実施形態に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
（ａ）  図１、図４及び図６中のデータ格納部１０，１０Ａ，７０は、機能を簡潔に説明するための構成例であり、図示した構成に限定されない。例えば、メモリを使用して適切なアドレス制御をすることにより、同様の機能を果たす構成にすることができる。
【００６９】
（ｂ）  図６のデジタルフィルタは、補間処理機能、ボリューム処理機能、及びパン処理機能をすべて備えているが、必要に応じて、いずれか１つまたは２つの機能を備えた構成にすることができる。
【００７０】
（ｃ）  図６中のパン係数格納部３２において、第１チャンネルと第２チャンネルのパン係数を、それぞれ５０％に設定することにより、ミキシング処理を行うことができる。
【００７１】
（ｄ）  入力データＤＴＩＮは、第１チャンネルと第２チャンネルのデータが時分割多重されたものとして説明したが、３チャンネル以上のデータに対しても同様に適用可能である。その場合は、例えばデータ格納部１０のシフトレジスタ１１及びセレクタ１２を、チャンネル数分だけ準備すれば良い。
【００７２】
【発明の効果】
以上詳細に説明したように、本発明によれば、データ格納部に格納されたデータと、フィルタ係数、ボリューム係数若しくはパン係数との乗算演算を行って乗算結果を生成する乗算部と、乗算部に対してフィルタ係数、ボリューム係数及びパン係数を順次与えることにより、この乗算部と累積加算部によってフィルタ処理、出力レベルの制御及び出力データの生成を行わせる制御部とを備えている。これにより、フィルタ処理、出力レベル制御処理、補間処理及びパン処理を、１つの乗算部で処理することが可能になり、回路規模を増加させず各種のフィルタ処理を行うことができるという効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すデジタルフィルタの構成図である。
【図２】従来のデジタルフィルタの一例を示す構成図である。
【図３】図１の動作を示すタイミングチャートである。
【図４】本発明の第２の実施形態を示すデジタルフィルタの構成図である。
【図５】図４の動作を示すタイミングチャートである。
【図６】本発明の第３の実施形態を示すデジタルフィルタの構成図である。
【図７】図６の動作を示すタイミングチャートである。
【符号の説明】
１０，１０Ａ，７０    データ格納部
２０    乗算部
３０    フィルタ係数格納部
３１    出力係数格納部
３２    パン係数格納部
４０    累積加算部
５１，５２    データ出力部
６０，６０Ａ，６０Ｂ    制御部
【図１】
0003584027.tif 000002
【図２】
0003584027.tif 000003
【図３】
0003584027.tif 000004
【図４】
0003584027.tif 000005
【図５】
0003584027.tif 000006
【図６】
0003584027.tif 000007
【図７】
0003584027.tif 000008