(57)【要約】異なるサンプリングレートの複数のチャネルのフィルタリング処理を少ない回路規模で実現するディジタルフィルタ回路は、第１乃至第ｍの遅延器グループに分けられる遅延回路と、第１乃至第（ｍ−１）の入力遅延信号と第２乃至第ｍのタップの出力信号とを選択的に第１乃至第（ｍ−１）の遅延器グループへ供給する処理工程分割手段と、第１乃至第ｍの選択したタップ係数を供給するタップ係数供給手段と、第１乃至第ｍのタップの出力と第１乃至第ｍの選択したタップ係数とを乗算する乗算回路と、第１乃至第ｍの乗算結果を加算する加算回路と、第１乃至第ｍの乗算結果および複数の加算器の加算結果をそれぞれ累積加算する累積加算部と、複数の累積加算結果および加算回路の出力から、各処理工程のフィルタリング処理結果の出力フォーマットを生成する出力データフォーマット生成部と、を含む。
2012157427.tif 000002
【特許請求の範囲】
【請求項１】
最大合計サンプリングレート（ｎ×Ｆｓ）（ｎ≧２）の異なるサンプリングレートの複数チャネルフィルタリング処理を行うｍ（ｍ≧２）タップ係数のディジタルフィルタ回路であって、
（ｎ×ｍ）個の遅延器からなる遅延回路であって、第１乃至第ｍのタップを持ち、各々がｎ個の遅延器から成る第１乃至第ｍの遅延器グループに分けられる、前記遅延回路と、
前記遅延回路への入力信号を所要サンプル間隔分遅延させた第１乃至第（ｍ−１）の入力遅延信号と前記第２乃至第ｍのタップの出力信号とをそれぞれ選択的に前記第１乃至第（ｍ−１）の遅延器グループへ供給することにより、サンプリングレート（ｋ×Ｆｓ）（ｋ≦ｎ）に基づいて、前記（ｎ×ｍ）個の遅延器をｋ個の処理工程領域に分割可能な処理工程分割手段と、
前記第１乃至第ｍのタップ用にそれぞれ選択された、第１乃至第ｍの選択したタップ係数を供給するタップ係数供給手段と、
前記第１乃至第ｍのタップの出力と前記第１乃至第ｍの選択したタップ係数とを乗算して、それぞれ第１乃至第ｍの乗算結果を出力する第１乃至第ｍの乗算器から成る乗算回路と、
前記第１乃至第ｍの乗算結果を加算する複数の加算器から成る加算回路と、
前記第１乃至第ｍの乗算結果および前記複数の加算器の加算結果をそれぞれ累積加算して、複数の累積加算結果を出力する複数の累積加算器から成る累積加算部と、
前記複数の累積加算結果および前記加算回路の出力から、各処理工程のフィルタリング処理結果の出力フォーマットを生成する出力データフォーマット生成部と、
前記複数の累積加算器に対し、加算の開始信号、前記複数の累積加算結果のクリア信号を出力する累積加算制御部と、
を備えるディジタルフィルタ回路。
【請求項２】
前記処理工程分割手段は、
サンプリングレートが（ｋ×Ｆｓ）（ｋ≦ｎ）であり、そのフィルタリング処理が前記ｋ個の処理工程領域に分割されたチャネルを、処理工程領域に対応して所要サンプル間隔分遅延させた前記第１乃至第（ｍ−１）の入力遅延信号を出力する第１乃至第（ｍ−１）の処理工程毎データ遅延器から成る処理工程毎データ遅延回路と、
処理対象のチャネルの前記サンプリングレート（ｋ×Ｆｓ）（ｋ≦ｎ）に基づいて、前記（ｎ×ｍ）個の遅延器を前記ｋ個の処理工程領域に分割し、前記第１乃至第（ｍ−１）の入力遅延信号と前記第２乃至第ｍのタップの出力とを、それぞれ、前記第１乃至第（ｍ−１）の遅延器グループへ選択的に供給する第１乃至第（ｍ−１）の入力選択器から成る入力選択部と、
から構成される、請求項１に記載のディジタルフィルタ回路。
【請求項３】
前記タップ係数供給手段は、
複数チャネルのサンプリングレート構成に基づいて、各処理工程領域のフィルタリング処理に応じた前記第１乃至第ｍのタップ用のタップ係数を決定する、各々が複数の係数決定器を含む第１乃至第ｍの係数決定器グループから成る係数決定部と、
前記第１乃至第ｍの係数決定器グループが出力するタップ係数群を、前記最大合計サンプリングレート（ｎ×Ｆｓ）で、それぞれ、前記第１乃至第ｍの選択したタップ係数として、前記第１乃至第ｍの乗算器へ選択出力する第１乃至第ｍの係数選択器から成る係数選択部と、
から構成される、請求項１又は２に記載のディジタルフィルタ回路。
【請求項４】
前記ｍが４に等しい場合、
前記加算回路は、
前記第１の乗算結果と前記第２の乗算結果とを加算して、第１の加算結果を出力する第１の加算器と、
前記第３の乗算結果と前記第４の乗算結果とを加算して、第２の加算結果を出力する第２の加算器と、
前記第１の加算結果と前記第２の加算結果とを加算して、第３の加算結果を前記加算回路の出力信号として出力する第３の加算器と、
から構成される、請求項１乃至３のいずれか１つに記載のディジタルフィルタ回路。
【請求項５】
前記累積加算部は、
前記第１乃至第４の乗算結果をそれぞれ累積加算して、それぞれ、第１乃至第４の累積加算結果を出力する第１乃至第４の累積加算器と、
前記第１の加算結果を累積加算して、それぞれ、第５および第６の累積加算結果を出力する第５および第６の累積加算器と、
前記第２の加算結果を累積加算して、それぞれ、第７および第８の累積加算結果を出力する第７および第８の累積加算器と、
から構成される、請求項４に記載のディジタルフィルタ回路。
【請求項６】
前記出力データフォーマット生成部は、
前記第５乃至第８の累積加算結果を選択的に出力する第１の出力データ選択器と、
前記第１乃至第４の累積加算結果を選択的に出力する第２の出力データ選択器と、
から構成される、請求項５に記載のディジタルフィルタ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルフィルタ回路に関し、特に、複数のチャネルのフィルタリング処理を行う複数チャネルフィルタ回路に関する。
【背景技術】
【０００２】
近年、機器の小型化、低消費電力化に伴って、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）やＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）で構成されるディジタル信号処理部も小型化、低消費電力化が要求されている。例えば、通信分野で使用されるディジタルフィルタ回路は、急峻もしくは狭帯域のフィルタ特性や、複数の入力データ列に対する処理が必要である為に、回路規模が大きくなる。従って、特に、複数の異なるサンプリングレートの入力データ列を扱うフィルタ回路について、回路の簡素化の検討が行われている。
従来から種々のディジタルフィルタ回路が提案されている。例えば、非特許文献１に記載されたディジタルフィルタ回路は、複数の入力データ列に対するフィルタリング処理を、１つのフィルタ回路で共通に行うことが可能である。また、特許文献１は、複数の入力データ列に対するフィルタ処理の低消費電力化方法を提案している。以降、複数の入力データ列を、各々チャネルと表現する。
後で、図１を参照して詳細に説明するように、関連の複数チャネルフィルタ回路は、遅延回路と、乗算回路と、加算回路とから構成される。一般に、複数チャネルフィルタ回路が、ｎチャネル、ｍタップ係数の複数チャネルフィルタ回路であるとする。ここで、ｎは２以上の整数であり、ｍは２以上の整数である。この場合、遅延回路は（ｎ×ｍ）個の遅延器から構成され、乗算回路はｍ個の乗算器から構成される。各乗算器は、遅延器ｎ個間隔に取り出した遅延器出力とタップ係数とを入力値とする。加算回路は、各乗算器における乗算結果を加算する。
サンプリングレートＦｓのｎ本のチャネルを、サンプリングレート（ｎ×Ｆｓ）のｎ時分割フォーマットで、複数チャネルフィルタ回路に入力する。したがって、複数チャネルフィルタ回路は、（ｎ×Ｆｓ）レートの各タイミングで、各チャネルのフィルタ演算結果を時分割で出力する。
このように、関連の複数チャネルフィルタ回路は、入力データを時分割で入力し、時分割された各タイミングで１つのチャネルの処理を行うため、単一チャネルフィルタ回路をｎ個並列に構成する場合と比較して、回路規模が特に大きい乗算器の数が（１／ｎ）で実装可能な効率的な構成となっている。
また、本発明に関連する他の先行技術文献も種々知られている。
例えば、特許文献２は、周波数の異なる複数のシステム信号を単一のＡ／Ｄ変換器でサンプリングする技術において、Ａ／Ｄ変換器のサンプリングレートを可能な限り低く、かつ後段のディジタル信号処理用クロックを各システムのクロックの整数倍にするための、Ａ／Ｄ変換器のサンプリングレート決定方法を開示している。
また、特許文献３は、レートが同一の複数の基底帯域信号（例えば、Ｉチャネル信号、Ｑチャネル信号）を時分割で処理するフィルタに関する技術的思想を開示している。
さらに、特許文献４は、同一のフィルタ回路で遮断特性を変えることなく、演算用クロックの周波数のみを切り替えることにより異なるレートの入力信号を処理するために、フィルタ回路の前段にリサンプル回路を新たに設けた、ディジタルフィルタ回路を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０９−２０５３４６公報
【特許文献２】特開２００９−１１７９２５号公報
【特許文献３】特開平０７−０３８３８１号公報
【特許文献４】特開平０８−１６２９０５号公報
【非特許文献】
【０００４】
【非特許文献１】Ｘｉｌｉｎｘ社，”Ｌｏｇｉｃｏｒｅ  ＩＰ  ＦＩＲ  Ｃｏｍｐｉｌｅｒ  ｖ５．０”，Ｐｒｏｄｕｃｔ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ＤＳ５３４，Ａｐｒｉｌ，１９，２０１０．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、関連の複数チャネルフィルタ回路の構成では、同一サンプリングレートの複数チャネル処理に限定されるという課題がある。
特許文献２は、周波数の異なる複数のシステム信号を単一のＡ／Ｄ変換器で受信する際のＡ／Ｄ変換器のサンプリングレートを、後段のディジタル信号処理を効率的に行えるように決定する方法を開示しているに過ぎず、フィルタ処理に関する発明ではない。
特許文献３は、上述した従来の複数チャネルフィルタ回路に相当する技術思想を開示しているに過ぎない。
特許文献４では、異なる周波数の演算用クロックを使用する必要があり、また、新たに外部リサンプラを使用する必要がある。
本発明の目的は、異なるサンプリングレートの複数のチャネルのフィルタリング処理を少ない回路規模で実現する、ディジタルフィルタ回路を提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、異なるサンプリングレートの複数の入力データ列に対して、同一回路で各々異なるサンプリングレートに対するフィルタリング処理を行うことを特徴とするディジタルフィルタ回路である。
すなわち、前記課題の解決と目的を達成する為に、本発明に係る最大合計サンプリングレート（ｎ×Ｆｓ）（ｎ≧２）の異なるサンプリングレートの複数チャネルフィルタリング処理を行うｍ（ｍ≧２）タップ係数のディジタルフィルタ回路は、（ｎ×ｍ）個の遅延器からなる遅延回路であって、第１乃至第ｍのタップを持ち、各々がｎ個の遅延器から成る第１乃至第ｍの遅延器グループに分けられる、遅延回路と、遅延回路への入力信号を所要サンプル間隔分遅延させた第１乃至第（ｍ−１）の入力遅延信号と第２乃至第ｍのタップの出力信号とをそれぞれ選択的に第１乃至第（ｍ−１）の遅延器グループへ供給することにより、サンプリングレート（ｋ×Ｆｓ）（ｋ≦ｎ）に基づいて、（ｎ×ｍ）個の遅延器をｋ個の処理工程領域に分割可能な処理工程分割手段と、第１乃至第ｍのタップ用にそれぞれ選択された、第１乃至第ｍの選択したタップ係数を供給するタップ係数供給手段と、第１乃至第ｍのタップの出力と第１乃至第ｍの選択したタップ係数とを乗算して、それぞれ第１乃至第ｍの乗算結果を出力する第１乃至第ｍの乗算器から成る乗算回路と、第１乃至第ｍの乗算結果を加算する複数の加算器から成る加算回路と、第１乃至第ｍの乗算結果および複数の加算器の加算結果をそれぞれ累積加算して、複数の累積加算結果を出力する複数の累積加算器から成る累積加算部と、複数の累積加算結果および加算回路の出力から、各処理工程のフィルタリング処理結果の出力フォーマットを生成する出力データフォーマット生成部と、複数の累積加算器に対し、加算の開始信号、複数の累積加算結果のクリア信号を出力する累積加算制御部と、を備える。
【発明の効果】
【０００７】
本発明のディジタルフィルタ回路によれば、従来の複数チャネルフィルタ回路に対し、最小限の回路追加で最大合計サンプリングレート（ｎ×Ｆｓ）の異なるサンプリングレートの複数チャネルフィルタ処理を行うことができる。
【図面の簡単な説明】
【０００８】
図１は関連の複数チャネルフィルタ回路（ディジタルフィルタ回路）の一構成例を示すブロック図である。
図２は本発明の一実施の形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）の一構成例を示すブロック図である。
図３は本発明の一実施の形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）における時分割入力フォーマットの一例を示す図である。
図４は本発明の一実施の形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）における、入力信号のサンプリングレートと処理工程分割数、各処理工程領域が担当する積和演算の関係を示す表である。
図５は本発明の一実施の形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）における係数設定部の出力係数例である。
【発明を実施するための形態】
【０００９】
まず図１を参照して、本発明の理解を容易にするために、関連の複数チャネルフィルタ回路（ディジタルフィルタ回路）について説明する。
図１に示されるように、複数チャネルフィルタ回路（ディジタルフィルタ回路）は、遅延回路１と、乗算回路２と、加算回路３とから構成される。
一般に、複数チャネルフィルタ回路（ディジタルフィルタ回路）が、ｎチャネル、ｍタップ係数の複数チャネルフィルタ回路であるとする。ここで、ｎは２以上の整数であり、ｍは２以上の整数である。この場合、遅延回路１は（ｎ×ｍ）個の遅延器から構成され、乗算回路２はｍ個の乗算器から構成される。各乗算器は、遅延器ｎ個間隔に取り出した遅延器の出力とタップ係数とを入力値とする。加算回路３は、各乗算器における乗算結果を加算する。
図１に示した複数チャネルフィルタ回路は、チャネル数ｎが４に等しく、タップ数ｍが４に等しい例を示している。すなわち、図１に示した複数チャネルフィルタ回路は、４チャネル、４タップ係数の複数チャネルフィルタ回路から成る。
この場合、遅延回路１は第１乃至第１６の遅延器１−０〜１−１５から構成され、乗算回路２は第１乃至４の乗算器２−０〜２−３から構成され、加算回路３は第１乃至第３の加算器３−０〜３−２から構成される。
図１に示されるように、チャネル＃０の入力データが、Ｉｎ０−０、Ｉｎ０−１、Ｉｎ０−２、Ｉｎ０−３、・・・からなり、チャネル＃１の入力データが、Ｉｎ１−０、Ｉｎ１−１、Ｉｎ１−２、Ｉｎ１−３、・・・からなり、チャネル＃２の入力データが、Ｉｎ２−０、Ｉｎ２−１、Ｉｎ２−２、Ｉｎ２−３、・・・からなり、チャネル＃３の入力データが、Ｉｎ３−０、Ｉｎ３−１、Ｉｎ３−２、Ｉｎ３−３、・・・からなるとする。
このような場合、図示の４チャネル、４タップ係数の複数チャネルフィルタ回路には、サンプリングレートＦｓの４本のチャネルが、サンプリングレート（４×Ｆｓ）の４時分割フォーマットで入力される。
すなわち、４時分割入力データは、Ｉｎ０−０、Ｉｎ１−０、Ｉｎ２−０、Ｉｎ３−０、Ｉｎ０−１、Ｉｎ１−１、Ｉｎ２−１、Ｉｎ３−１、Ｉｎ０−２、Ｉｎ１−２、Ｉｎ２−２、Ｉｎ３−２、Ｉｎ０−３、Ｉｎ１−３、Ｉｎ２−３、Ｉｎ３−３、・・・となる。
第１乃至第１６の遅延器１−０〜１−１５の各々は、サンプリングレート（４×Ｆｓ）の逆数に実質的に等しい単位遅延Ｔを供給する。すなわち、Ｔ＝１／（４×Ｆｓ）である。第１乃至第１５の遅延器１−０〜１−１５は、例えば、それぞれ、所定ビット幅のＤフリップフロップから構成され、全体として１６段のシフトレジスタを構成する。尚、単位遅延Ｔは、サンプル間隔とも呼ばれる。
遅延回路１は、第１乃至第４のタップＴ０、Ｔ１，Ｔ２，およびＴ３を持つ。遅延回路１を構成する第１乃至第１６の遅延器１−０〜１−１５は、第１乃至第４の遅延器グループに分けられる。すなわち、第１乃至第４の遅延器１−０〜１−３は第１の遅延器グループに属し、第５乃至第８の遅延器１−４〜１−７は第２の遅延器グループに属し、第９乃至第１２の遅延器１−８〜１−１１は第３の遅延器グループに属し、第１３乃至第１６の遅延器１−１２〜１−１５は第４の遅延器グループに属する。第１の遅延器グループ（１−０〜１−３）は、第１のタップＴ０と第２のタップＴ１との間に配置かれ、第２の遅延器グループ（１−４〜１−７）は、第２のタップＴ１と第３のタップＴ２とに間に配置され、第３の遅延器グループ（１−８〜１−１１）は、第３のタップＴ２と第４のタップＴ３との間に配置かれ、第４の遅延器グループ（１−１２〜１−１５）は、第４のタップＴ３と遅延回路１の入力端子とに間に配置されている。
上記４時分割入力データは、上述した順序で遅延回路１の入力端子に供給され、遅延回路１で遅延される。その結果、この遅延回路１で単位遅延Ｔの１６倍に等しい遅延時間１６Ｔ（＝４／Ｆｓ）だけ遅延されると、第１乃至第１６の遅延器１−０〜１−１５の出力端子からは、それぞれ、図１に示されるような、Ｉｎ０−０、Ｉｎ１−０、Ｉｎ２−０、Ｉｎ３−０、Ｉｎ０−１、Ｉｎ１−１、Ｉｎ２−１、Ｉｎ３−１、Ｉｎ０−２、Ｉｎ１−２、Ｉｎ２−２、Ｉｎ３−２、Ｉｎ０−３、Ｉｎ１−３、Ｉｎ２−３、Ｉｎ３−３が出力される。
乗算回路２において、第１の乗算器２−０の一方の入力端子には、遅延回路１の第１のタップＴ０の出力信号が供給され、他方の入力端子には、第１のタップ係数Ｃ０が供給される。第１の乗算器２−０は、第１のタップＴ０の出力信号と第１のタップ係数Ｃ０とを乗算して、第１の乗算結果を出力する。同様に、第２の乗算器２−１の一方の入力端子には、遅延回路１の第２のタップＴ１の出力信号が供給され、他方の入力端子には、第２のタップ係数Ｃ１が供給される。第２の乗算器２−１は、第２のタップＴ１の出力信号と第２のタップ係数Ｃ１とを乗算して、第２の乗算結果を出力する。第３の乗算器２−２の一方の入力端子には、遅延回路１の第３のタップＴ２の出力信号が供給され、他方の入力端子には、第３のタップ係数Ｃ２が供給される。第３の乗算器２−２は、第３のタップＴ２の出力信号と第３のタップ係数Ｃ２とを乗算して、第３の乗算結果を出力する。第４の乗算器２−３の一方の入力端子には、遅延回路１の第４のタップＴ３の出力信号が供給され、他方の入力端子には、第４のタップ係数Ｃ３が供給される。第４の乗算器２−３は、第４のタップＴ３の出力信号と第４のタップ係数Ｃ３とを乗算して、第４の乗算結果を出力する。
加算回路３において、第１の加算器３−０は、第１の乗算結果と第２の乗算結果とを加算して、第１の加算結果を出力する。第２の加算器３−１は、第３の乗算結果と第４の乗算結果とを加算して、第２の加算結果を出力する。第３の加算器３−２は、第１の加算結果と第２の加算結果とを加算して、第３の加算結果を出力する。この第３の加算結果は、当該４チャネル、４タップ係数の複数チャネルフィルタのフィルタ出力（（４×Ｆｓ）データフィルタ出力）として出力される。
上述したように、（４×Ｆｓ）のレートで動作する第１乃至第１６の遅延器１−０〜１−１５の４個間隔で遅延器の出力（すなわち、第１乃至第４のタップＴ０〜Ｔ３の出力信号）を引き出し、当該遅延器の出力（第１乃至第４のタップＴ０〜Ｔ３の出力信号）と第１乃至第４のタップ係数Ｃ０〜Ｃ３とをそれぞれ第１乃至第４の乗算器２−０〜２−３にて（４×Ｆｓ）レートのタイミング毎に乗算する。（４×Ｆｓ）レートの同タイミングで乗算された出力（第１乃至第４の乗算器２−０〜２−３から出力される第１乃至第４の乗算結果）は加算回路３にて加算され、フィルタ出力となる。
したがって、（４×Ｆｓ）レートのうちチャネル＃０の処理タイミングでは、遅延回路１から乗算回路２への出力（すなわち、第１乃至第４のタップＴ０〜Ｔ３の出力信号）は、下記の式１で表される。
｛Ｉｎ０−０、Ｉｎ０−１、Ｉｎ０−２、Ｉｎ０−３｝      …  式１
この出力は、後段の乗算回路２と加算回路３で第１乃至第４のタップ係数Ｃ０〜Ｃ３と積和演算され、チャネル＃０の積和出力は、下記の式２で表される。
Ｏｕｔ０−０  ＝  Ｃ０×Ｉｎ０−０  ＋  Ｃ１×Ｉｎ０−１
＋  Ｃ２×Ｉｎ０−２  ＋  Ｃ３×Ｉｎ０−３  …  式２
同様に、チャネル＃１、チャネル＃２、チャネル＃３の積和出力は、それぞれ、下記の式３、式４、及び式５で表される。
Ｏｕｔ１−０  ＝  Ｃ０×Ｉｎ１−０  ＋  Ｃ１×Ｉｎ１−１
＋  Ｃ２×Ｉｎ１−２  ＋  Ｃ３×Ｉｎ１−３  …  式３
Ｏｕｔ２−０  ＝  Ｃ０×Ｉｎ２−０  ＋  Ｃ１×Ｉｎ２−１
＋  Ｃ２×Ｉｎ２−２  ＋  Ｃ３×Ｉｎ２−３  …  式４
Ｏｕｔ３−０  ＝  Ｃ０×Ｉｎ３−０  ＋  Ｃ１×Ｉｎ３−１
＋  Ｃ２×Ｉｎ３−２  ＋  Ｃ３×Ｉｎ３−３  …  式５
このように、（４×Ｆｓ）レートの各タイミングで、各チャネルのフィルタ演算結果が時分割で出力される。
上述したように、関連の複数チャネルフィルタ回路（ディジタルフィルタ回路）は、入力データを時分割で入力し、時分割された各タイミングで１つのチャネルの処理を行うため、単一チャネルフィルタ回路をｎ個並列に構成する場合と比較して、回路規模が特に大きい乗算器の数が（１／ｎ）で実装可能な効率的な構成となっている。
しかしながら、前述したように、関連の複数チャネルフィルタ回路（ディジタルフィルタ回路）の構成では、同一サンプリングレートの複数チャネル処理に限定されるという課題がある。
次に、本発明の実施の形態の構成について図面を参照して説明する。
図２は本発明の一実施形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）の一構成例を示すブロック図である。図３は本発明の一実施形態による複数チャネルフィルタ回路（ディジタルフィルタ回路）における時分割入力フォーマットの一例を示す図である。
図示の実施形態に係る複数チャネルフィルタ回路（ディジタルフィルタ回路）は、最大合計サンプリングレート（ｎ×Ｆｓ）の異なるサンプリングレートの複数チャネルフィルタリング処理を行うｍタップ係数のディジタルフィルタ回路である。ここで、ｎは２以上の整数、ｍは２以上の整数である。
図示の実施形態に係る複数チャネルフィルタ回路は、図１に示した関連の複数チャネルフィルタ回路と同様に、（ｎ×ｍ）個の遅延器から成る遅延回路１と、遅延器のｎ個間隔で取り出した遅延器の出力と係数選択部７（後述する）の出力とを入力値とするｍ個の乗算器から成る乗算回路２と、各乗算器における乗算結果を加算する加算回路３と、を備える。
遅延回路１は、第１乃至第ｍのタップＴ０〜Ｔ（ｍ−１）を持ち、各々がｎ個の遅延器から成る第１乃至第ｍの遅延器グループに分けられる。乗算器２は、第１乃至第ｍの乗算器２−０〜２−（ｍ−１）から成る。加算回路３は、後述するように、複数の加算器から成る。
そして、本実施形態に係る複数チャネルフィルタ回路は、更に、処理工程毎データ遅延回路４と、入力選択部５と、係数決定部６と、係数選択部７と、累積加算部８と、出力データフォーマット生成部９と、累積加算制御部１０とを備えている。
処理工程毎データ遅延回路４は、サンプリングレートが（ｋ×Ｆｓ）（ｋ≦ｎ）であり、そのフィルタリング処理がｋ個の処理工程領域に分割されたチャネルを、処理工程領域に対応して所要サンプル間隔分遅延させた第１乃至第（ｍ−１）の入力遅延信号を出力する第１乃至第（ｍ−１）の処理工程データ遅延器４−０〜４−（ｍ−２）から成る。
入力選択部５は、処理対象のチャネルのサンプリングレート（ｋ×Ｆｓ）（ｋ≦ｎ）に基づいて、（ｎ×ｍ）個の遅延器をｋ個の処理工程領域に分割し、第１乃至第（ｍ−１）の入力遅延信号と第２乃至第ｍのタップＴ１〜Ｔ（ｍ−１）の出力とを、それぞれ、第１乃至第（ｍ−１）の遅延器グループへ選択的に供給する。
すなわち、処理工程毎データ遅延回路４と入力選択部５との組合せは、遅延回路１への入力信号を所要サンプル間隔分遅延させた第１乃至第（ｍ−１）の入力遅延信号と第２乃至第ｍのタップＴ１〜Ｔ（ｍ−１）の出力信号とを選択的に第１乃至第（ｍ−１）の遅延器グループへ入力することにより、サンプリングレート（ｋ×Ｆｓ）（ｋ≦ｎ）に基づいて、（ｎ×ｍ）個の遅延器をｋ個の処理工程領域に分割可能な処理工程分割手段（４，５）として働く。
係数決定部６は、複数チャネルのサンプリングレート構成に基づいて、各処理工程領域のフィルタリング処理に応じた第１乃至第ｍのタップＴ０〜Ｔ（ｍ−１）用のタップ係数を決定する。係数決定部６は、各々が複数の係数決定器（後述する）を含む第１乃至第ｍの係数決定器グループから成る。
係数選択部７は、第１乃至第ｍの係数決定器グループが出力するタップ係数群を、最大合計サンプリングレート（ｎ×Ｆｓ）で、それぞれ、第１乃至第ｍの選択したタップ係数として、第１乃至第ｍの乗算器２−０〜２−（ｍ−１）へ選択出力する。
すなわち、係数決定部６と係数選択部７との組合せは、第１乃至第ｍのタップＴ０〜Ｔ（ｍ−１）用にそれぞれ選択された、第１乃至第ｍの選択したタップ係数を供給するタップ係数供給手段（６，７）として動作する。
乗算回路２において、第１乃至第ｍの乗算器２−０〜２−（ｍ−１）は、それぞれ、第１乃至ｍのタップＴ０〜Ｔ（ｍ−１）の出力と第１乃至第ｍの選択したタップ係数とを乗算して、それぞれ第１乃至第ｍの乗算結果を出力する。
加算回路３は、第１乃至第ｍの乗算結果を加算する複数の加算器から成る。
累積加算部８は、各処理工程のｋ個の乗算もしくは積和演算結果を累積加算する。すなわち、累積加算部８は、第１乃至第ｍの乗算結果および上記複数の加算器の加算結果をそれぞれ累積加算して、複数の累積加算結果を出力する複数の累積加算器（後述する）から成る。
出力データフォーマット生成部９は、上記複数の累積加算結果および上記加算回路３の出力から、各処理工程のフィルタリング処理結果の出力フォーマットを生成する。
累積加算制御部１０は、複数の累積加算器に対し、加算の開始信号、複数の累積加算結果のクリア信号を出力する。
図２に示した複数チャネルフィルタ回路は、図１に示した従来の複数チャネルフィルタ回路と同様に、最大チャネル数ｎが４に等しく、タップ数ｍが４に等しい場合の例を示している。
したがって、遅延回路１は第１乃至第１６の遅延器１−０〜１−１５から構成され、乗算回路２は第１乃至４の乗算器２−０〜２−３から構成され、加算回路３は第１乃至第３の加算器３−０〜３−２から構成される。
これら遅延回路１、乗算回路２、および加算回路３の接続関係や動作は、図１を参照して説明したそれらと同様であるので、説明の簡略化のためにそれらの説明については省略する。
処理工程毎データ遅延回路４は、第１乃至第３の処理工程毎データ遅延器４−０、４−１、および４−２から構成されている。入力選択部５は、第１乃至第３の入力選択器５−０，５−１，および５−２から構成されている。
第１の処理工程毎データ遅延器４−０は、３個のＤフリップフロップが縦続接続された３段のシフトレジスタから構成されている。第１の処理工程毎データ遅延器４−０は、遅延回路１の入力端子に供給される入力データを３Ｔ（３サンプル間隔）だけ遅延させて、遅延させたデータを第１の入力遅延信号として第１の入力選択器５−０の一方の入力端子に供給している。第１の入力選択器５−０の他方の入力端子は、遅延回路１の第２のタップＴ１に接続されている。第１の入力選択器５−０は、第１の処理工程毎データ遅延器４−０で遅延されたデータ（第１の入力遅延信号）と第２のタップＴ１の出力信号との一方を選択して、選択した信号を第１の遅延器グループ（１−０〜１−３）へ供給する。
第２の処理工程毎データ遅延器４−１は、２個のＤフリップフロップが縦続接続された２段のシフトレジスタから構成されている。第２の処理工程毎データ遅延器４−１は、遅延回路１の入力端子に供給される入力データを２Ｔ（２サンプル間隔）だけ遅延させて、遅延させたデータを第２の入力遅延信号として第２の入力選択器５−１の一方の入力端子に供給している。第２の入力選択器５−１の他方の入力端子は、遅延回路１の第３のタップＴ２に接続されている。第２の入力選択器５−１は、第２の処理工程毎データ遅延器４−１で遅延されたデータ（第２の入力遅延信号）と第３のタップＴ２の出力信号との一方を選択して、選択した信号を第２の遅延器グループ（１−４〜１−７）へ供給する。
第３の処理工程毎データ遅延器４−２は、１個のＤフリップフロップから構成されている。第３の処理工程毎データ遅延器４−２は、遅延回路１の入力端子に供給される入力データを１Ｔ（１サンプル間隔）だけ遅延させて、遅延させたデータを第３の入力遅延信号として第３の入力選択器５−２の一方の入力端子に供給している。第３の入力選択器５−２の他方の入力端子は、遅延回路１の第４のタップＴ３に接続されている。第３の入力選択器５−２は、第３の処理工程毎データ遅延器４−２で遅延されたデータ（第３の入力遅延信号）と第４のタップＴ３の出力信号との一方を選択して、選択した信号を第３の遅延器グループ（１−８〜１−１１）へ供給する。
係数決定部６は、１６個の係数決定器から構成されている。すなわち、係数決定部６は、第１乃至第１６の係数決定器６−０−０，６−０−１，６−０−２，６−０−３，６−１−０，６−１−１，６−１−２，６−１−３，６−２−０，６−２−１，６−２−２，６−２−３，６−３−０，６−３−１，６−３−１，６−３−２，および６−３−３から構成される。第１乃至第１６の係数決定器６−０−０〜６−３−３は、４個ずつ第１乃至第４の係数決定器グループに分けられる。
すなわち、第１乃至第４の係数決定器６−０−０，６−０−１，６−０−２，および６−０−３は第１の係数決定器グループ６−０−Ｘ（０≦Ｘ≦３）に属し、第５乃至第８の係数決定器６−１−０，６−１−１，６−１−２，および６−１−３は第２の係数決定器グループ６−１−Ｘに属し、第９乃至１２の係数決定器６−２−０，６−２−１，６−２−２，および６−２−３は第３の係数決定器グループ６−２−Ｘに属し、第１３乃至第１６の係数決定器６−３−０，６−３−１，６−３−１，６−３−２，および６−３−３は第４の係数決定器グループ６−３−Ｘに属する。
すなわち、第１の係数決定器グループ（６−０−０〜６−０−３）は、第１のタップＴ０用のタップ係数を決定するためのものであり、第２の係数決定器グループ（６−１−０〜６−１−３）は、第２のタップＴ１用のタップ係数を決定するためのものであり、第３の係数決定器グループ（６−２−０〜６−２−３）は、第３のタップＴ２用のタップ係数を決定するためのものであり、第４の係数決定器グループ（６−３−０〜６−３−３）は、第４のタップＴ３用のタップ係数を決定するためのものである。
係数選択部７は、第１乃至第４の係数選択器７−０，７−１，７−２，および７−３から構成されている。第１の係数選択器７−０は、第１の係数決定器グループ（６−０−０〜６−０−３）に属する１つの係数決定器を選択して、第１の選択したタップ係数を第１の乗算器２−０へ供給する。第２の係数選択器７−１は、第２の係数決定器グループ（６−１−０〜６−１−３）に属する１つの係数決定器を選択して、第２の選択したタップ係数を第２の乗算器２−１へ供給する。第３の係数選択器７−２は、第３の係数決定器グループ（６−２−０〜６−２−３）に属する１つの係数決定器を選択して、第３の選択したタップ係数を第３の乗算器２−２へ供給する。第４の係数選択器７−３は、第４の係数決定器グループ（６−３−０〜６−３−３）に属する１つの係数決定器を選択して、第４の選択したタップ係数を第４の乗算器２−３へ供給する。
累積加算部８は、第１乃至第８の累積加算器８−０−０，８−０−１，８−０−２，８−０−３，８−１−０，８−１−１，８−１−２，および８−１−３から構成される。
第１の累積加算器８−０−０は、第１の乗算器２−０から出力される第１の乗算結果を累積して、第１の累積加算結果を出力する。第２の累積加算器８−０−１は、第２の乗算器２−１から出力される第２の乗算結果を累積して、第２の累積加算結果を出力する。第３の累積加算器８−０−２は、第３の乗算器２−２から出力される第３の乗算結果を累積加算して、第３の累積加算結果を出力する。第４の累積加算器８−０−３は、第４の乗算器２−３から出力される第４の乗算結果を累積加算して、第４の累積加算結果を出力する。
第５の累積加算器８−１−０は、第１の加算器３−０から出力される第１の加算結果を後述のように累積加算して、第５の累積加算結果を出力する。第６の累積加算器８−１−１は、第１の加算器３−０から出力される第１の加算結果を後述のように累積加算して、第６の累積加算結果を出力する。第７の累積加算器８−１−２は、第２の加算器３−１から出力される第２の加算結果を後述のように累積加算して、第７の累積加算結果を出力する。第８の累積加算器８−１−３は、第２の加算器３−１から出力される第２の加算結果を後述のように累積加算して、第８の累積加算結果を出力する。
出力データフォーマット生成部９は、第１および第２の出力データ選択器９−０および９−１から構成される。第１の出力データ選択器９−０は、第５乃至第８の累積加算器８−１−０〜８−１−３から出力される第５乃至第８の累積加算結果を選択的に出力する。第２の出力データ選択器９−１は、第１乃至第４の累積加算器８−０−０〜８−０−３から出力される第１乃至第４の累積加算結果を選択的に出力する。
図２における入力データは、図３に示すサンプリングレート（２×Ｆｓ）の１チャネルと、サンプリングレートＦｓの２チャネルが、最大合計サンプリングレート（４×Ｆｓ）でチャネル＃０、チャネル＃１、チャネル＃０、チャネル＃２、・・・の順に、最大合計サンプリングレート（４×Ｆｓ）で動作する遅延回路１に入力される。
詳述すると、サンプリングレート（２×Ｆｓ）の１チャネル（チャネル＃０）の入力データは、Ｉｎ０−０、Ｉｎ０−１、Ｉｎ０−２、Ｉｎ０−３、Ｉｎ０−４、Ｉｎ０−５、Ｉｎ０−６、Ｉｎ０−７、・・・からなる。サンプリングレートＦｓの２チャネルのうちの一方（チャネル＃１）の入力データは、Ｉｎ１−０、Ｉｎ１−１、Ｉｎ１−２、Ｉｎ１−３、・・・からなり、他方（チャネル＃２）の入力データは、Ｉｎ２−０、Ｉｎ２−１、Ｉｎ２−２、Ｉｎ２−３、・・・からなる。
この場合、最大合計サンプリングレート（４×Ｆｓ）の時分割入力データは、Ｉｎ０−０、Ｉｎ１−０、Ｉｎ０−１、Ｉｎ２−０、Ｉｎ０−２、Ｉｎ１−１、Ｉｎ０−３、Ｉｎ２−１、Ｉｎ０−４、Ｉｎ１−２、Ｉｎ０−５、Ｉｎ２−２、Ｉｎ０−６、Ｉｎ１−３、Ｉｎ０−７、Ｉｎ２−３、・・・となる。
その際、入力される各チャネルのデータは、各チャネルのサンプリングレート（ｋ×Ｆｓ）（ｋ≦４）に応じて、ｋ個の処理工程を担当する遅延回路１上の処理工程領域に、処理工程毎データ遅延回路４にて所要サンプル間隔分遅延された後に入力される。
すなわち、第１乃至第１６の遅延器１−０〜１−１５は、サンプリングレートＦｓの入力データの処理工程＃０領域として使用される。一方、第１乃至第８の遅延器１−０〜１−７は、サンプリングレート（２×Ｆｓ）の入力データの処理工程＃０領域として使用され、第９乃至第１６の遅延器１−８〜１−１５は、サンプリングレート（２×Ｆｓ）の入力データの処理工程＃１領域として使用される。
フィルタリング処理の処理工程の分割について、４タップ係数のフィルタリング処理を例に挙げて説明する。
入力信号を｛Ｉｎ０、Ｉｎ１、Ｉｎ２、Ｉｎ３・・・｝、第１乃至第４のタップ係数を｛Ｃ０、Ｃ１、Ｃ２、Ｃ３｝、出力信号を｛Ｏｕｔ０、Ｏｕｔ１、Ｏｕｔ２、Ｏｕｔ３・・・｝とすると、出力信号は、下記の式６で表される。
Ｏｕｔ０  ＝  Ｃ０×Ｉｎ０＋Ｃ１×Ｉｎ１＋Ｃ２×Ｉｎ２＋Ｃ３×Ｉｎ３
Ｏｕｔ１  ＝  Ｃ０×Ｉｎ１＋Ｃ１×Ｉｎ２＋Ｃ２×Ｉｎ３＋Ｃ３×Ｉｎ４
Ｏｕｔ２  ＝  Ｃ０×Ｉｎ２＋Ｃ１×Ｉｎ３＋Ｃ２×Ｉｎ４＋Ｃ３×Ｉｎ５
Ｏｕｔ３  ＝  Ｃ０×Ｉｎ３＋Ｃ１×Ｉｎ４＋Ｃ２×Ｉｎ５＋Ｃ３×Ｉｎ６
：
…  式６
図４は、本実施形態における入力信号のサンプリングレート（ｋ×Ｆｓ）と、処理工程分割数と、各処理工程領域が担当する積和演算と、の間の関係を示す表である。
本実施形態におけるサンプリングレート（２×Ｆｓ）の入力信号に対しては、処理工程＃０の積和演算処理（Ｏｕｔ１、Ｏｕｔ３、Ｏｕｔ５、・・・）、処理工程＃１の積和演算処理（Ｏｕｔ０、Ｏｕｔ２、Ｏｕｔ４、・・・）が、第２の入力選択部５−１を挟んだ第１乃至第１６の遅延器１−０〜１−１５のそれぞれ前半部（１−０〜１−７）、後半部（１−８〜１−１５）の処理工程領域を用いて行われる。
各遅延器１−０〜１−１５の動作タイミングにおいて、前段の第９の遅延器１−８の出力がサンプリングレート（２×Ｆｓ）の入力データである場合には、第２の入力選択器５−１は、第２の処理工程毎データ遅延器４−１の出力を選択して後段（１−０〜１−７）に出力する。前段の第９の遅延器１−８の出力がサンプリングレートＦｓの入力データである場合には、第２の入力選択器５−１は、前段の処理工程＃１領域の第９の遅延器１−８の出力（すなわち、第３のタップＴ２の出力）を選択して後段に出力する。
第２の処理工程毎データ遅延器４−１は、サンプリングレート（２×Ｆｓ）の入力データの処理工程＃１領域（１−８〜１−１５）よりも２サンプル間隔遅延した入力データ（第２の入力遅延信号）を、処理工程＃０領域（１−０〜１−７）に出力し、両処理工程領域において同タイミングで処理工程の異なる積和演算を実行できるようにする。
また、サンプリングレートＦｓの入力信号に対しては、処理工程＃０の積和演算処理（Ｏｕｔ０、Ｏｕｔ１、Ｏｕｔ２、・・・）が、第１乃至第１５の遅延器１−０〜１−１５の全体に亘る処理工程＃０領域を用いて、各チャネル時分割に行われる。
なお、第１および第３の入力選択器５−０、５−２は、第２の入力選択器５−１と共にサンプリングレート（４×Ｆｓ）のチャネルが１チャネル入力された場合に、第１乃至第１６の遅延器１−０〜１−１５上を４個の処理工程領域に分け、各処理工程領域への入力データの選択を行う。また、第１および第３の処理工程毎データ遅延器４−０、４−２は、第２の処理工程毎データ遅延器４−１と共にサンプリングレート（４×Ｆｓ）のチャネルが１チャネル入力された場合に、第１、第３、および第２の入力選択部５−０、５−２、５−１に入力するデータを、３サンプル間隔（３Ｔ）、１サンプル間隔（１Ｔ）、２サンプル間隔（２Ｔ）だけ遅延させる。
このように、第１乃至第１６の遅延器１−０〜１−１５上の領域を、入力信号のサンプリングレートに応じた処理工程数に分割して、処理工程毎の積和演算処理を行うので、回路構成上のタップ係数の数はｋの取りうる全ての値の公倍数であることが望ましい。本実施形態の構成では、ｋ＝１、２、４の場合を考慮に入れているので、タップ係数の数としては４の倍数であることが望ましい。
前記のように入力されてくる異なるサンプリングレートの複数のチャネルに応じた処理工程毎の積和演算処理を行うため、係数決定部６は複数チャネルのレート構成に基づいたタップ係数を決定し、出力する。
図５は、本実施形態の入力データのレート構成（（２×Ｆｓ）入力データ×１＋Ｆｓ入力データ×２）における各係数決定部６の出力係数である。
なお、図５は前記レート構成に特化した出力係数テーブルであるが、係数決定器６−０−０〜６−３−３は、最大合計サンプリングレートが（４×Ｆｓ）になるチャネルのレート構成パターン数分の出力係数を保持しておき、チャネルのレート構成に基づいて選択出力する。
係数選択部７は、係数決定部６が出力する係数を、第１乃至第１６の遅延器１−０〜１−１５と同じ（４×Ｆｓ）のレートで、係数決定器６−ｘ−０、６−ｘ−１、６−ｘ−２、６−ｘ−３、６−ｘ−０、・・・の順に順次出力を選択する。
加算回路３において、第１の加算器３−０は、第１の乗算器２−０の第１の乗算結果と、第２の乗算器２−１の第２の乗算結果とを加算し、第１の加算結果を出力する。第２の加算器３−１は、第３の乗算器２−２の第３の乗算結果と、第４の乗算器２−３の第４の乗算結果とを加算して、第２の加算結果を出力する。第３の加算器３−２は、第１の加算器３−０の第１の加算結果と、第２の加算器３−１の第２加算結果とを更に加算して、第３の加算結果を出力する。
第５および第７の累積加算器８−１−０、８−１−２は、サンプリングレート（２×Ｆｓ）のチャネルに対する第１および第２の加算器３−０、３−１の第１および第２の加算結果に対し、４時分割フォーマット中当該チャネルが占めるタイミング分の累積加算を、当該チャネルの処理タイミングに合わせて行う。
なお、第６および第８の累積加算器８−１−１、８−１−３は、サンプリングレート（２×Ｆｓ）のチャネルが２チャネル入力された場合の２チャネル目のデータに対する累積加算器である。また、第１乃至第４の累積加算器８−０−０〜８−０−３は、サンプリングレート（４×Ｆｓ）のチャネルが１チャネル入力された場合の処理工程毎乗算結果に対する累積加算器である。
累積加算制御部１０は、各累積加算器８−０−０〜８−１−３に対し、加算の開始信号、累積加算結果のクリア信号を出力する。
出力データフォーマット生成部９において、第１の出力データ選択器９−０は、サンプリングレート（２×Ｆｓ）のチャネルに対する処理工程＃０、処理工程＃１の累積加算結果を入力し、出力フォーマットを生成して出力する。すなわち、第１の出力データ選択器９−０は、第５乃至第８の累積加算器８−１−０、８−１−１、８−１−２、および８−１−３から出力される第５乃至第８の累積加算結果を選択的に出力する。
なお、サンプリングレートＦｓの入力データに対するフィルタ演算結果は、第３の加算器３−２より時分割で出力される。
また、第２の出力データ選択器９−１は、サンプリングレート（４×Ｆｓ）のチャネルが入力された場合に、処理工程毎の累積加算結果を入力し、出力フォーマットを生成して出力する。すなわち、第２の出力データ選択器９−１は、第１乃至第４の累積加算器８−０−０、８−０−１、８−０−２、および８−０−３から出力される第１乃至第４の累積加算結果を選択的に出力する。
図２のブロック図中に、本実施形態のサンプリングレート（２×Ｆｓ）の１チャネルと、サンプリングレートＦｓの２チャネルが入力された場合の第１乃至第１６の遅延器１−０〜１−１５の出力が処理タイミングに沿って表示されている。
第１の乗算器２−０は、第１の乗算結果として、｛Ｃ０×Ｉｎ０−３｝、｛Ｃ０×Ｉｎ１−０｝、｛Ｃ１×Ｉｎ０−４｝、および｛Ｃ０×Ｉｎ２−０｝をこの順番に出力する。第２の乗算器２−１は、第２の乗算結果として、｛Ｃ２×Ｉｎ０−５｝、｛Ｃ１×Ｉｎ１−１｝、｛Ｃ３×Ｉｎ０−６｝、および｛Ｃ１×Ｉｎ２−１｝をこの順番に出力する。第３の乗算器２−２は、第３の乗算結果として、｛Ｃ０×Ｉｎ０−４｝、｛Ｃ２×Ｉｎ１−２｝、｛Ｃ１×Ｉｎ０−５｝、および｛Ｃ２×Ｉｎ２−２｝をこの順番に出力する。第４の乗算器２−３は、第４の乗算結果として、｛Ｃ２×Ｉｎ０−６｝、｛Ｃ３×Ｉｎ１−３｝、｛Ｃ３×Ｉｎ０−７｝、および｛Ｃ３×Ｉｎ２−３｝をこの順番に出力する。
第１の加算器３−０は、第１の加算結果として、｛（Ｃ０×Ｉｎ０−３）＋（Ｃ２×Ｉｎ０−５）｝、｛（Ｃ０×Ｉｎ１−０）＋（Ｃ１×Ｉｎ１−１）｝、｛（Ｃ１×Ｉｎ０−４）＋（Ｃ３×Ｉｎ０−６）｝、および｛（Ｃ０×Ｉｎ２−０）＋（Ｃ１×Ｉｎ２−１）｝をこの順番に出力する。第２の加算器３−１は、第２の加算結果として、｛（Ｃ０×Ｉｎ０−４）＋（Ｃ２×Ｉｎ０−６）｝、｛（Ｃ２×Ｉｎ１−２）＋（Ｃ３×Ｉｎ１−３）｝、｛（Ｃ１×Ｉｎ０−５）＋（Ｃ３×Ｉｎ０−７）｝、および｛（Ｃ２×Ｉｎ２−２）＋（Ｃ３×Ｉｎ２−３）｝をこの順番に出力する。第３の加算器３−２は、第３の加算結果として、｛−｝、｛（Ｃ０×Ｉｎ１−０）＋（Ｃ１×Ｉｎ１−１）＋（Ｃ２×Ｉｎ１−２）＋（Ｃ３×Ｉｎ１−３）｝、｛−｝、｛（Ｃ０×Ｉｎ２−０）＋（Ｃ１×Ｉｎ２−１）＋（Ｃ２×Ｉｎ２−２）＋（Ｃ３×Ｉｎ２−３）｝をこの順番に出力する。
第５の累積加算器８−１−０は、第５の累積加算結果として、｛（Ｃ０×Ｉｎ０−３）＋（Ｃ２×Ｉｎ０−５）｝、｛−｝、｛（Ｃ０×Ｉｎ０−３）＋（Ｃ２×Ｉｎ０−５）＋（Ｃ１×Ｉｎ０−４）＋（Ｃ３×Ｉｎ０−６）｝、および｛−｝をこの順番に出力する。第７の累積加算器８−１−２は、第７の累積加算結果として、｛（Ｃ０×Ｉｎ０−４）＋（Ｃ２×Ｉｎ０−６）｝、｛−｝、｛（Ｃ０×Ｉｎ０−４）＋（Ｃ２×Ｉｎ０−６）＋（Ｃ１×Ｉｎ０−５）＋（Ｃ３×Ｉｎ０−７）｝、および｛−｝をこの順番に出力する。
このように、異なるサンプリングレートの複数チャネル入力データに対し、各チャネルのサンプリングレートに応じて分割した処理工程を、遅延回路１上の各処理工程領域にて行うことで、最大合計サンプリングレート（４×Ｆｓ）の複数チャネルフィルタ処理が可能になる。
具体的には、｛サンプリングレート（４×Ｆｓ）の入力データが１チャネル｝、｛サンプリングレート（２×Ｆｓ）の入力データが２チャネル｝、｛サンプリングレート（２×Ｆｓ）の入力データが１チャネル＋サンプリングレートＦｓの入力データが２チャネル｝、および｛サンプリングレートＦｓの入力データが４チャネル｝等のサンプリングレート構成の複数チャネルフィルタ処理が、本実施形態の構成により可能になる。なお、｛サンプリングレートＦｓの入力データが４チャネル｝は、従来の複数チャネルフィルタ処理に相当する。
本実施形態では簡単のため４タップ係数の場合を例に挙げて説明したが、一般に通信分野で用いられる急峻もしくは狭帯域のフィルタで要求されるタップ数は数十〜百数十タップと大きくなる。この場合、遅延回路１、乗算回路２、加算回路３の個数は、従来の複数チャネルフィルタ回路と変わらない。また、本発明の実施形態の構成で新たに追加される、処理工程毎データ遅延回路４、入力選択部５、累積加算部８、出力データフォーマット生成部９、および累積加算制御部１０の個数は、タップ数が大きくなったとしても、本実施形態の図２に示した個数から増加することはなく、増加するのは、比較的回路規模の小さい選択回路から構成される係数決定部６、および係数選択部７のみである。
次に、本実施形態に係るディジタルフィルタ回路の効果について説明する。
以上説明した通り、本発明の実施形態に係るディジタルフィルタ回路によれば、従来技術のディジタルフィルタ回路に最小限の回路を追加するだけで、最大合計サンプリングレート（ｎ×Ｆｓ）の異なるサンプリングレートの複数の入力データ列に対して、１つの回路でフィルタリング処理を行うことができる。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
例えば、上記実施形態では、ｎ＝４の場合を記述したが、それに限られるものではなく、引き出しタップ間の遅延回路１、係数決定部６、累積加算部８を増やした構成にすることで、ｎ＞４の場合にも対応可能である。
なお、図２の実施形態では、遅延回路１と後段の係数選択部７、乗算回路２、加算回路３が同一レートで動作する構成を記述したが、各処理工程領域内で遅延回路１のタップ出力を遅延回路１の動作レートのＬ倍のレートで選択出力し、係数選択部７、乗算回路２、加算回路３をＬ倍のレートで動作させた後に新たな累積加算器において前述のＬ倍のレートで選択した遅延器出力に対応した積和演算結果を累積加算することで、上記実施形態と同様のフィルタリング処理を行うことが可能であり、かつ乗算器の数を（１／Ｌ）に削減することが出来る。
また、図２の実施形態では、フィルタ出力を入力サンプリングレート毎に個別に出力データフォーマット生成部９から出力するように記述したが、それに限られるものではなく、各サンプリングレートの入力データに対応するフィルタ出力を統合した時分割フォーマットに再生成するようにしてもよい。
また、図２の実施形態では、複数チャネルを構成する入力データのサンプリングレートをＦｓの２のべき乗倍（１倍、２倍、４倍）の場合の構成を記述したが、これに限られたものではなく、例えば３分割した処理工程領域を遅延回路１上に確保するための入力選択部５を更に追加することにより、サンプリングレート（３×Ｆｓ）を含んだ最大合計サンプリングレート（４×Ｆｓ）までの複数チャネル、すなわちＦｓの逓倍のサンプリングレートのチャネルに関するフィルタリング処理が可能になる。
更に、図２の実施形態の構成では、各チャネルのフィルタ処理毎に係数決定部６にて個別の係数を設定可能であるため、例えば同じサンプリングレートの入力データに対して、異なるフィルタ特性、より具体的には異なるタップ係数を与えることも可能である。その際に所要タップ数が大きい方に合わせて遅延回路１を構成し、タップ数が少ない特性のチャネルに関してはタップ係数の両端を零で埋めて係数決定部６に保持しておくことが望ましい。
【産業上の利用可能性】
【００１０】
本発明は、異なるサンプリングレートの複数の入力データ列を処理するディジタルフィルタ回路に利用される。
【符号の説明】
【００１１】
１  ・・・  遅延回路
１−０〜１−１５  ・・・  遅延器
２  ・・・  乗算回路
２−０〜２−３  ・・・  乗算器
３  ・・・  加算回路
３−０〜３−２  ・・・  加算器
４  ・・・  処理工程毎データ遅延回路
４−０〜４−２  ・・・    処理工程毎データ遅延器
５  ・・・  入力選択部
５−０〜５−２  ・・・  入力選択器
６  ・・・  係数決定部
６−０−０〜６−３−３  ・・・  係数決定器
７  ・・・  係数選択部
７−０〜７−３  ・・・  係数選択器
８  ・・・  累積加算部
８−０−０〜８−１−３  ・・・  累積加算器
９  ・・・  出力データフォーマット生成部
９−０〜９−１  ・・・  出力データ選択器
１０  ・・・  累積加算制御部
Ｔ０〜Ｔ３  ・・・  遅延回路のタップ
この出願は、２０１１年５月１７日に出願された、日本特許出願第２０１１−１１０２８６号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2012157427.tif 000003
【図２】
2012157427.tif 000004
【図３】
2012157427.tif 000005
【図４】
2012157427.tif 000006
【図５】
2012157427.tif 000007
【国際調査報告】
2012157427.tif 000008
2012157427.tif 000009
2012157427.tif 000010
2012157427.tif 000011