(57)【要約】    【課題】      ＤＭＡの設定という一般的な設定手法を用いて、柔軟かつ多機能なリサンプリング処理を可能にすること。    【解決手段】  データ変換処理装置では、ＣＰＵ１０がＤＭＡ５に対しアドレスを含む入力チャネル情報および出力チャネル情報、及び転送量などのパラメータをセットすると、ＤＭＡ５はＣＰＵ１０から指定されたパラメータに従って入力チャネルおよび出力チャネルを介してデータ転送を行う。例えば、そのパラメータ設定により、ＤＭＡ５を介し第一の入力部３０からリサンプリング部２への転送を指定できると共に、その転送内容をメモリ１から第一の出力部４０へ転送することを指定でき、この２つのＤＭＡ転送により、第一の入力部３０から第一の出力部４０への転送が行われる。  【選択図】      図１
2006268294.tif 000002
【特許請求の範囲】
【請求項１】
入力部からのデータをリサンプルして出力部へ出力するデータ変換処理装置であって、
入力するデータを異なる周波数でサンプリングし出力するリサンプリング部と、
前記リサンプリング部の出力するデータを蓄積するメモリと、
前記入力部からのデータを入力チャネルおよび出力チャネルを介し前記リサンプリング部に出力すると共に、前記メモリに蓄積されたデータを出力チャネルおよび入力チャネルを介し前記出力部へ転送するよう制御するＤＭＡと、
を有するデータ変換処理装置。
【請求項２】
前記リサンプリング部および前記メモリは、それぞれ対応して複数設けられ、
前記ＤＭＡは、複数の入力チャネルのうちの一部を前記複数のメモリのそれぞれの出力と接続し、複数の出力チャネルのうちの一部を前記複数のリサンプリング部のそれぞれの入力と接続し、
前記複数の入力部からのデータを対応する前記入力チャネルおよび出力チャネルを介し前記複数のリサンプリング部に出力すると共に、前記複数のメモリに蓄積されたデータを対応する前記出力チャネルおよび入力チャネルを介して前記複数の出力部へ転送するよう制御する、請求項１記載のデータ変換処理装置。
【請求項３】
前記ＤＭＡは、複数の入力チャネルをいくつかのグループに区分けして対応する入力識別情報を設定すると共に、複数の出力チャネルをいくつかのグループに区分けして対応する出力識別情報を設定し、
前記ＤＭＡは、前記入力識別情報および出力識別情報に基づいて、前記複数の入力部からのデータを対応する前記入力チャネルおよび出力チャネルを介し前記複数のリサンプリング部に出力すると共に、前記複数のメモリに蓄積されたデータを対応する前記出力チャネルおよび入力チャネルを介して前記複数の出力部へ転送するよう制御する、請求項２記載のデータ変換処理装置。
【請求項４】
前記リサンプリング部は、前記ＤＭＡの制御に基づき前記複数の入力部からのデータを、サンプリング処理を変更してサンプリング処理すると共に、そのサンプリング結果を前記ＤＭＡを介し前記複数の出力部へ出力する、請求項２記載のデータ変換処理装置。
【請求項５】
前記リサンプリング部は、前記ＤＭＡの制御に基づく前記入力識別情報および出力識別情報に従って、前記複数の入力部からのデータを、サンプリング処理を変更してサンプリング処理すると共に、そのサンプリング結果を前記ＤＭＡを介し前記複数の出力部へ出力する、請求項３記載のデータ変換処理装置。
【請求項６】
前記リサンプリング部は、前記複数の入力部からのデータをサンプリング処理した後、重畳して加算する、請求項２または請求項３記載のデータ変換処理装置。
【請求項７】
前記メモリは、リングバッファ構造であり、
前記メモリに余裕がない場合、前記リサンプリング部は対応する処理を中断し、
前記リサンプリング部に処理する余裕がない場合、前記ＤＭＡは対応する前記リサンプリング部への転送を中断する、請求項１記載のデータ変換処理装置。
【請求項８】
前記リサンプリング部は、
制御部と、
フィルタ処理を行うデジタルフィルタ部と、
前記フィルタ部に縦続する補間部と、で構成され、
前記制御部は、設定されたサンプリング比と入力データ数とに基づいて設定されたインパルス応答を選択し、前記デジタルフィルタ部と前記補間部によるフィルタ演算およびサンプリング処理に使用する、請求項６記載のデータ変換処理装置。
【請求項９】
前記制御部は、
特定の周波数帯の減衰もしくは増幅を行うインパルス応答を選択する、請求項８記載のデータ変換処理装置。
【請求項１０】
前記制御部は、
前記ＤＭＡからの各出力チャネルの出力識別情報に基づいて前記インパルス応答と前記サンプリング比とを選択する、請求項８記載のデータ変換処理装置。
【請求項１１】
前記制御部は、
前記ＤＭＡが各入力チャネルおよび出力チャネルごとに指定する転送量に基づいて前記インパルス応答と前記サンプリング比とを選択する、請求項８記載のデータ変換処理装置。
【請求項１２】
前記制御部は、
前記ＤＭＡにおける転送完了数と、転送予定数もしくは他のチャネルの転送完了数との差分に基づき前記インパルス応答と前記サンプリング比とを選択する、請求項８記載のデータ変換処理装置。
【請求項１３】
前記リサンプリング部は、
入力データをリサンプリング処理によりＰ／Ｑ倍して出力データとする場合（Ｐ，Ｑは自然数）、
前記制御部は、
前記デジタルフィルタ部に対しては、サンプリング比をＭ／Ｎの整数比に近似してフィルタ処理するよう制御する一方（Ｍ，Ｎは自然数）、
前記補完部に対しては、前記デジタルフィルタ部によりフィルタ処理された出力を算出補完処理により（Ｐ・Ｎ／Ｑ・Ｍ）倍して出力するよう制御する、請求項８記載のデータ変換処理装置。
【請求項１４】
前記デジタルフィルタ部は、
ＤＤＡ（Ｄｉｇｉｔａｌ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ａｎａｌｙｚｅｒ）アルゴリズムにより入力データが入力する度に出力データを出力するか否かを求めてＭ／Ｎの整数比に近似したサンプリング比を算出すると共に、誤差変数を取り出して各誤差変数とその初期値との差分である出力データの位相を算出して、算出した前記サンプリング比と前記出力データの位相とにフィルタ処理を行うことによりエイリアシングによる歪を除去ながらＭ／Ｎの整数比に近似したサンプリング比にてサンプリング処理を行う、請求項１３記載のデータ変換処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルサンプルされた音声や画像をリサンプル処理するデータ変換処理装置に関するものである。
【背景技術】
【０００２】
デジタルサンプルされた音声や画像は、それぞれスピーカやＣＲＴなどの表示装置に接続するためさまざまな加工が必要である。例えば、音声の場合は、入力と出力で異なるサンプリング周波数であれば入力データに対してローパスフィルタや線形補間を用いた再サンプリングが必要であり、さらに複数入力から１つの出力を得たいのなら再サンプリング後に各々データを重畳する必要がある。
【０００３】
ここで、従来のデータ変換処理装置として、例えば、特許文献１がある。図１１を用いて従来のデータ変換処理装置について説明する。
【０００４】
図１１に示す従来のデータ変換処理装置は、メモリ１、リサンプリング部２、重畳部３、制御部４を有している。
【０００５】
リサンプリング部２は、複数の入力データのうち一つを選択し低域フィルタによる高周波成分のカットと、直線補間もしくはスプライン補間を用いた算術演算を行い、その結果をメモリ１に書き込む。リサンプリング部２におけるフィルタ処理は、０点挿入や間引きを用いて周波数特性のよいＭ／Ｎの整数比のサンプリング数にできるが、細かいサンプリング数の調整ができない。そのため、フィルタ処理の結果に対し直線補間もしくはスプライン補間を用いて任意のサンプリング数に変換する。また、フィルタは低域通過型のフィルタが選択され、音声処理などで歪のない処理を行うため、通常は有限長（ＦＩＲ）でかつ左右対称の直線位相型に制限する。上記の作業は時分割に実施され、複数入力それぞれに応じたメモリ１の領域に処理したデータが蓄えられる。
【０００６】
重畳部３は、メモリ１に蓄えられている複数のリサンプリング後の結果を、同一周波数のものとして加算して出力する。また、加算だけでなくそれぞれの入力系列のゲイン調整ため乗算も行う。これらは時分割に処理される。
【０００７】
制御部４は、入力データに応じて、リサンプリング部２と重畳部３との時分割制御を制御する。以上により、複数の入力データを時分割処理し、効率的に出力データを得る。
【特許文献１】特開平８−３２１７４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、前述の従来技術においては、入力と出力の制御が定まっているため、複数の出力を得ることができないと共に、出力データを入力データとしてリサンプル処理を繰り返すなどができず、柔軟性を欠いている、という課題がある。
【０００９】
例えば、１次元処理の結果を蓄積し、再度、直交成分方向で１次元処理を行えば、２次元、すなわち画像の加工が可能となるが、これを行うには再度データ変換処理装置を使用するような制御を加えないといけない。
【００１０】
本発明は、このような点に鑑み、簡単かつ柔軟にデータをリサンプル処理して出力することができるデータ変換処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明のデータ変換処理装置では、入力部からのデータをリサンプルして出力部へ出力するデータ変換処理装置であって、入力するデータを異なる周波数でサンプリングし出力するリサンプリング部と、前記リサンプリング部の出力するデータを蓄積するメモリと、前記入力部からのデータを入力チャネルおよび出力チャネルを介し前記リサンプリング部に出力すると共に、前記メモリに蓄積されたデータを出力チャネルおよび入力チャネルを介し前記出力部へ転送するよう制御するＤＭＡと、を有する構成を採る。
【００１２】
特に、前記データ変換処理装置において、前記リサンプリング部および前記メモリは、それぞれ対応して複数設けられ、前記ＤＭＡは、複数の入力チャネルのうちの一部を前記複数のメモリのそれぞれの出力と接続し、複数の出力チャネルのうちの一部を前記複数のリサンプリング部のそれぞれの入力と接続し、前記複数の入力部からのデータを対応する前記入力チャネルおよび出力チャネルを介し前記複数のリサンプリング部に出力すると共に、前記複数のメモリに蓄積されたデータを対応する前記出力チャネルおよび入力チャネルを介して前記複数の出力部へ転送するよう制御する、構成を採る。
【００１３】
また、前記データ変換処理装置において、前記ＤＭＡは、複数の入力チャネルをいくつかのグループに区分けして対応する入力識別情報を設定すると共に、複数の出力チャネルをいくつかのグループに区分けして対応する出力識別情報を設定し、前記ＤＭＡは、前記入力識別情報および出力識別情報に基づいて、前記複数の入力部からのデータを対応する前記入力チャネルおよび出力チャネルを介し前記複数のリサンプリング部に出力すると共に、前記複数のメモリに蓄積されたデータを対応する前記出力チャネルおよび入力チャネルを介して前記複数の出力部へ転送するよう制御する、構成を採る。
【００１４】
また、前記データ変換処理装置において、前記リサンプリング部は、前記ＤＭＡの制御に基づき前記複数の入力部からのデータを、サンプリング処理を変更してサンプリング処理すると共に、そのサンプリング結果を前記ＤＭＡを介し前記複数の出力部へ出力する、構成を採る。
【００１５】
また、前記データ変換処理装置において、前記リサンプリング部は、前記ＤＭＡの制御に基づく前記入力識別情報および出力識別情報に従って、前記複数の入力部からのデータを、サンプリング処理を変更してサンプリング処理すると共に、そのサンプリング結果を前記ＤＭＡを介し前記複数の出力部へ出力する、構成を採る。
【００１６】
また、前記データ変換処理装置において、前記リサンプリング部は、前記複数の入力部からのデータをサンプリング処理した後、重畳して加算する、構成を採る。
【００１７】
また、前記データ変換処理装置において、前記メモリは、リングバッファ構造であり、前記メモリに余裕がない場合、前記リサンプリング部は対応する処理を中断し、前記リサンプリング部に処理する余裕がない場合、前記ＤＭＡは対応する前記リサンプリング部への転送を中断する、構成を採る。
【００１８】
また、前記データ変換処理装置において、前記リサンプリング部は、制御部と、フィルタ処理を行うデジタルフィルタ部と、前記フィルタ部に縦続する補間部と、で構成され、前記制御部は、設定されたサンプリング比と入力データ数とに基づいて設定されたインパルス応答を選択し、前記デジタルフィルタ部と前記補間部によるフィルタ演算およびサンプリング処理に使用する、構成を採る。
【００１９】
また、前記データ変換処理装置において、前記制御部は、特定の周波数帯の減衰もしくは増幅を行うインパルス応答を選択する、構成を採る。
【００２０】
また、前記データ変換処理装置において、前記制御部は、前記ＤＭＡからの各出力チャネルの出力識別情報に基づいて前記インパルス応答と前記サンプリング比とを選択する、構成を採る。
【００２１】
また、前記データ変換処理装置において、前記制御部は、前記ＤＭＡが各入力チャネルおよび出力チャネルごとに指定する転送量に基づいて前記インパルス応答と前記サンプリング比とを選択する、構成を採る。
【００２２】
また、前記データ変換処理装置において、前記制御部は、前記ＤＭＡにおける転送完了数と、転送予定数もしくは他のチャネルの転送完了数との差分に基づき前記インパルス応答と前記サンプリング比とを選択する、構成を採る。
【００２３】
また、前記データ変換処理装置において、前記リサンプリング部は、入力データをリサンプリング処理によりＰ／Ｑ倍して出力データとする場合（Ｐ，Ｑは自然数）、前記制御部は、前記デジタルフィルタ部に対しては、サンプリング比をＭ／Ｎの整数比に近似してフィルタ処理するよう制御する一方（Ｍ，Ｎは自然数）、前記補完部に対しては、前記デジタルフィルタ部によりフィルタ処理された出力を算出補完処理により（Ｐ・Ｎ／Ｑ・Ｍ）倍して出力するよう制御する、構成を採る。
【００２４】
また、前記データ変換処理装置において、前記デジタルフィルタ部は、ＤＤＡ（Ｄｉｇｉｔａｌ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ａｎａｌｙｚｅｒ）アルゴリズムにより入力データが入力する度に出力データを出力するか否かを求めてＭ／Ｎの整数比に近似したサンプリング比を算出すると共に、誤差変数を取り出して各誤差変数とその初期値との差分である出力データの位相を算出して、算出した前記サンプリング比と前記出力データの位相とにフィルタ処理を行うことによりエイリアシングによる歪を除去ながらＭ／Ｎの整数比に近似したサンプリング比にてサンプリング処理を行う、構成を採る。
【発明の効果】
【００２５】
本発明のデータ変換処理装置によれば、ＤＭＡの設定という一般的な設定手法を用いて、柔軟かつ多機能なリサンプリング処理が可能である。
【発明を実施するための最良の形態】
【００２６】
（実施の形態１）
図１は、本発明の実施の形態１に係るデータ変換処理装置の構成を示すブロック図である。
【００２７】
図１において、本実施の形態１のデータ変換処理装置は、メモリ１、リサンプリング部２、ＤＭＡ５、ＣＰＵ１０、システムメモリ１１、第一の入力部３０、第二の入力部３１、第一の出力部４０、第二の出力部４１を有している。なお、本実施の形態１では、説明の便宜上、第一の入力部３０、第二の入力部３１、第一の出力部４０、第二の出力部４１により説明しているが、入力部および出力部は、それぞれ２台に限らず、１台またはそれ以外の複数台でも勿論良い。
【００２８】
ＤＭＡ５は、複数の入力チャネルおよび出力チャネルを持ち、ここでは、複数の入力チャネルと複数の出力チャネルを介し、メモリ１、リサンプリング部２、ＣＰＵ１０、システムメモリ１１、第一の入力部３０、第二の入力部３１、第一の出力部４０、第二の出力部４１をそれぞれ繋げている。ＤＭＡ５は、複数の入力チャネルおよび出力チャネル毎に、各チャネルを識別するためのアドレス等を含む入力チャネル情報および出力チャネル情報と、各チャネルにおける転送量等のパラメータを持ち、それらのパラメータがＣＰＵ１０等によってセットされるように構成されている。
【００２９】
また、ＤＭＡ５は、ＣＰＵ１０等からのパラメータによって指定された入力チャネルから出力チャネルへ転送を行うが、それらは並列して行うことができる。並列できる数は、パラメータセットの実装数と、並列実行のための転送方式とに依存することになる。並列転送は、物理的な転送手段の数を限定し、時分割でパラメータセットごとの実行を行うか、パラメータセットごとに物理的な転送手段を用意するかなど様々である。並列転送を用いれば、第一の入力部３０からシステムメモリ１１への転送、システムメモリ１１から第一の出力部４０への転送を同時に実行することができる。
【００３０】
ここでは、ＤＭＡ５の入力チャネルの一つもしくは複数に、リサンプリング部２を接続する。なお、複数の場合は、複数のリサンプリング部２が用意される。１または複数のリサンプリング部２の出力は、メモリ１に接続される。複数のリサンプリング部２がある場合は、メモリ１の内容がアドレスにより分割管理される。分割管理は、リサンプリング部２ごとに行うか、転送先アドレスで行うかであるがこれは実装次第である。メモリ１の出力は、ＤＭＡ５の入力チャネルの一つに接続する。メモリ１が分割管理されている場合、ＤＭＡ５の入力チャネルにそれぞれ分配される。なお、複数のリサンプリング部２に対応して複数のメモリ１が設けられていても勿論よい。
【００３１】
次に動作を説明する。
【００３２】
ＣＰＵ１０からＤＭＡ５に対し、上述のパラメータ、すなわち複数の入力チャネルおよび出力チャネルのアドレスを含む入力チャネル情報および出力識別情報や、転送量などのパラメータがセットされると、ＤＭＡ５は起動して、ＣＰＵ１０から指定されたパラメータに従って入力チャネルおよび出力チャネルを介してデータ転送を行う。
【００３３】
例えば、ＤＭＡ５へのパラメータ設定により、ＤＭＡ５およびその入力チャネルおよび出力チャネルを介し第一の入力部３０からリサンプリング部２への転送を指定できる。また、別のパラメータ設定により、ＤＭＡ５およびその入力チャネルおよび出力チャネルを介し上記の転送された内容を格納するメモリ１から第一の出力部４０へ当該内容の転送が指定できる。この２つのパラメータ設定によるＤＭＡ転送の指定により、第一の入力部３０から第一の出力部４０への転送が行われる。
【００３４】
ところで、リサンプリング部２は、入力データの１つに対して指定されたフィルタのインパルス応答と掛け合わせたものを発生する。また、それに対して直線補間などを用い所望のサンプル位置の応答を算出し、その結果を重畳しながら保存および出力する。重畳数は、インパルス応答の数に依存する。この一連の処理は、例えば、図２に示すフィルタを用いたリサンプリング処理と同じである。
【００３５】
図２は、本実施の形態１のリサンプリング部２による一連の処理を説明する図である。
【００３６】
図２は、本実施の形態１のリサンプリング部２が、入力データをインパルス応答と乗算してその乗算結果を直線補間し、直線補間した結果を重畳して出力データとすることを示している。
【００３７】
しかし、メモリ１に格納する結果が未だ計算できていない場合に、メモリ１からＤＭＡ５へリサンプリング部２の結果の転送を行うと、誤った結果が第一の出力部４０に出力されることになる。このため、メモリ１にリサンプリング部２からの結果がどのくらいできているかを示すフラグをメモリ１からＤＭＡ５に入れるようにして、ＤＭＡ５から第一の出力部４０への転送を抑制する。
【００３８】
さらに、メモリ１の容量が限られている場合、メモリ１をリングバッファ構造とする。この場合は、上記のリサンプリング部２からの結果がどのくらいできているかを示すフラグに加え、メモリ１にどれだけ空きがあるかを示すフラグをメモリ１からリサンプリング部２に入れ、リサンプリング部２からメモリ１への出力を抑制する。
【００３９】
さらに、ＤＭＡ５からリサンプリング部２に入れるデータも滞る可能性があるため、リサンプリング部２から入力を抑制するフラグを、ＤＭＡ５に入れる必要がある。
【００４０】
結果的に、ＤＭＡ５、メモリ１、リサンプリング部２の各装置間において、互いのデータの転送を抑制するハンドシェイクフラグである転送制御フラグが必要となる。よって、本実施の形態１のＤＭＡ５、メモリ１、リサンプリング部２の各装置間の関係は、例えば、図３に示すパイプライン制御の関係となる。
【００４１】
図３は、本実施の形態１のＤＭＡ５、メモリ１、リサンプリング部２の各装置間の関係を示している。
【００４２】
図３に示すように、本実施の形態１では、ＤＭＡ５、メモリ１、リサンプリング部２、ＤＭＡ５、メモリ１、・・・という方向に、転送を抑制するハンドシェイクフラグである転送制御フラグが転送される一方、その反対の方向、すなわち、リサンプリング部２、メモリ１、ＤＭＡ５、リサンプリング部２、メモリ１、・・・という方向に、データが転送されることになる。
【００４３】
以上のように、本実施の形態１のデータ変換処理装置では、ＣＰＵ１０がＤＭＡ５に対し複数の入力チャネルおよび出力チャネルのアドレスを含む入力チャネル情報および出力チャネル情報、転送量などのパラメータを設定して、ＤＭＡ５およびその複数の入力チャネルおよび出力チャネルを介した複数の入力部３０，３１から複数の出力部４０，４１へのデータの転送を制御するようにしたので、ＤＭＡ５という汎用的な手段により簡単にメモリ１や、リサンプリング部２、複数の入力部３０，３１、複数の出力部４０，４１の間の入力と出力とを制御することが可能となる。
【００４４】
なお、ＤＭＡ５内で複数の入力チャネルおよび出力チャネルを用い同時に総入力数と総出力数が管理されていれば、データの転送を抑制する転送制御フラグに代え、すなわち転送制御フラグなしに、ＤＭＡ５自身で判断して転送を抑制してもよい。
【００４５】
また、本実施の形態１の説明では、１台のリサンプリング部２と、そのリサンプリング部２に対応する１台のメモリ１とによりデータ変換処理装置を構成して説明したが、本発明では、これに限らず、複数台のリサンプリング部２と、その複数台のリサンプリング部２に対応する複数台のメモリ１とを設け、ＤＭＡ５の入力チャネルの一部は複数のメモリ１のそれぞれの出力と接続し、ＤＭＡ５の出力チャネルの一部は複数のリサンプリング部２のそれぞれの入力と接続するようにしたデータ変換処理装置を構成するようにしても勿論、良い。
【００４６】
（実施の形態２）
実施の形態１のデータ変換処理装置は、１つの入力を加工して１つの出力にすることができる装置であったが、複数の入力を加工して１つの出力にすることができる実施の形態２のデータ変換処理装置について説明する。
【００４７】
図４は、実施の形態２のデータ変換処理装置のリサンプリング部２の構成を示すブロック図である。
【００４８】
図４において、本実施の形態２のデータ変換処理装置のリサンプリング部２は、制御部２０、デジタルフィルタ部２１、補間部２２、重畳部２３を有している。なお、リサンプリング部２以外の構成は、図１に示す実施の形態１のデータ変換処理装置と同様である。
【００４９】
次に動作を説明する。なお、ここでは、実施の形態２特有のデータ変換処理装置のリサンプリング部２の動作を中心に説明する。
【００５０】
重畳部２３は、メモリ１へ書き込む前のデータ列と、補間部２２で計算したデータ列との加算を行い、メモリ１に書き込む。この結果、デジタルフィルタ部２１と補間部２２とで生成したインパルス応答列と、メモリ１で蓄えられた系列との重畳が実施されることになる。ただし、メモリ１に何も蓄えられていない状態では、重畳を行わず、単にメモリ１に書き込むだけである。
【００５１】
ここで、制御部２０は、設定されたサンプリング比と入力データ数とに基づいて設定されたインパルス応答を選択し、デジタルフィルタ部２１と補間部２２によるフィルタ演算およびサンプリング処理に使用するが、インパルス応答の選択としては、特定の周波数帯の減衰もしくは増幅を行うインパルス応答を選択するのが望ましい。また、制御部２０は、ＤＭＡ５からの各出力チャネルの出力識別情報に基づいてインパルス応答とサンプリング比とを選択するようにしても勿論よい。
【００５２】
ＤＭＡ５は、入力および出力ごとに、アドレスもしくはデータに付属して識別子をパラメータとして加える。識別子は、それぞれ、データ系列を判定するための入力識別情報と出力識別情報とを持っている。つまり、入力識別情報は、処理毎にＣＰＵ１０や外部からの指令等により複数の入力チャネルをいくつかのグループ、すなわちデータ系列に区分けして設定されるものであり、出力識別情報は、処理毎にＣＰＵ１０により複数の出力チャネルをいくつかのグループ、すなわちデータ系列に区分けして設定されるもので、処理毎や外部からの指令等に入力識別情報と出力識別情報とが対応しているものである。
【００５３】
例えば、制御部２０は、ＤＭＡ５からアドレスもしくはデータに付属した前記識別子の入力識別情報を用いて入力データ系列を判定する。例えば、第一の入力部３０からの転送と、第二の入力部３１からの転送とを行う場合、両者のソースを識別するための入力識別情報が付けられるため、制御部２０は、入力するデータ系列がどのソース、すなわちこの場合であれば、第一の入力部３０または第二の入力部３１のいずれから来たものかを判定できる。この判定により、リサンプリング部２内の内部パイプライン処理のテンポラリ情報の退避や、フィルタ係数の切り替えなどを行う。
【００５４】
さらに、制御部２０は、出力識別情報を用いて出力データの系列判定を行い、メモリ１に書き込むべきアドレスを生成する。例えば、第一の入力部３０からの転送と、第二の入力部３１からの転送とで、同じ出力識別情報が与えられれば、同じ系列の出力とみなし結果として、両者のリサンプリングと重畳を行うことになる。
【００５５】
さらに、出力識別情報を用いてメモリ１の管理に多様性を持たせることで、異なる複数のデータ系列を作成したり、複数のデータ系列が１つのデータ系列に混在したものを作成したりすることが可能となる。
【００５６】
例えば、オーディオデータを出力する場合、異なるデータ系列で左右（ＬＲ）を同じタイミングで作成する必要がある。この場合、出力識別情報として、左右（ＬＲ）を同じタイミングで作成する旨を示す情報を組み込み、制御部２０がその情報に基づいて連続アドレスにおいてＬ側を偶数アドレス、Ｒ側を奇数アドレスに配置するようなアドレス生成を行えばよい。こうすることによって、ＬＲのオーディオデータが交互に混在した系列ができる。
【００５７】
図５は、第一の入力部３０から４４．１ＫＨｚの音声データと、第二の入力部３１から２４．０ＫＨｚの音楽データと、システムメモリ１１内に蓄えられている２０．０ＫＨｚのソースＸとから、４８．０ＫＨｚの第一の出力部４０と、４４．１ＫＨｚの第二の出力部４１とへ同時に変換して出力する場合のリサンプリング部２における内部処理等の一例を示す図である。
【００５８】
なお、図５におけるリサンプリング処理は、図４におけるリサンプリング部２内のデジタルフィルタ部２１および補間部２２により達成されるものであり、図５におけるリサンプリング重畳処理は、図４におけるリサンプリング部２内のデジタルフィルタ部２１、補間部２２および重畳部２３により達成されるものである。
【００５９】
具体的には、図５の場合、第一の入力部３０と、第二の入力部３１と、システムメモリ１１内のソースＸとの３つは、ＤＭＡ５の設定により、ＤＭＡ５とその入力チャネルおよび出力チャネルとを介し、リサンプリング部２にて１つの同一周波数、すなわち第一の出力部４０の４８．０ＫＨｚでリサンプリング重畳された系列となり、４８．０ＫＨｚで第一の出力部４０に出力される。
【００６０】
一方、システムメモリ１１内の２０．０ＫＨｚのソースＸは、ＤＭＡ５を介しリサンプリング部２にて１００ＫＨｚのデータ系列としてリサンプリングされ、システムメモリ１１内に１００ＫＨｚのソースＹとして一旦変換されて蓄積されるとともに、再度第二の入力部３１の２４．０ＫＨｚの音楽データと合わせて、４４．１ＫＨｚにてリサンプリング重畳された系列となり、４４．１ＫＨｚで第二の出力部４１へ出力される。
【００６１】
以上のように、本実施の形態２によれば、リサンプリング部２を、デジタルフィルタ部２１、補間部２２および重畳部２３により構成し、ＤＭＡ５の設定により、ＤＭＡ５とその入力チャネルおよび出力チャネルとを介しリサンプリング部２にて音声データや音楽データ等のある周波数の入力データを異なる周波数のデータにリサンプリングしたり、異なる複数の周波数のデータが１つの周波数の出力データになるようにリサンプリングして重畳するようにしたので、柔軟なデータ変換処理が可能となり、複数の入力を加工して１つの出力にすることができることになる。
【００６２】
なお、さらに、デジタルフィルタ部２１、補間部２２、重畳部２３のいずれかにおいて入力識別情報を用い一定の減衰を行えば、ソースごとに好みのボリュームで合成させることができることになる。
【００６３】
（実施の形態３）
実施の形態３では、リサンプリング部２の詳細について、図６から図９を用いて説明する。
【００６４】
実施の形態３では、リサンプリング部２のデジタルフィルタ部２１が、リサンプリング処理によって生じるエイリアシングを除去または削除しながらリサンプリング処理することを特徴としている。なお、実施の形態３のリサンプリング部２の構成は、図４に示す実施の形態２のリサンプリング部２と同じであるので、図４を参照して、本実施の形態３のリサンプリング部２の詳細同を説明するものとする。
【００６５】
例えば、元の周波数成分を、図６の（ａ）とすると、単純にサンプリング点を変更すれば、図６（ｂ）となる。この場合、図６（ｂ）に示すように、周波数成分の重なりが発生し、その重なり部分にてエイリアシングという歪が生じてしまう。
【００６６】
図６（ｃ）は、本実施の形態３のリサンプリング部２として、低域通過型フィルタを用いた後にサンプリング点を変更した場合を示している。この場合、図６（ｃ）に示すように、重なりが生じる部分を低域フィルタで減衰させているため、エイリアシングによる歪が大幅に緩和される。つまり、低域通過型の周波数応答であるインパルスレスポンスを予め設定し、入力系列と重畳計算させることで出力を得ることになるが、インパルス応答の数の多さによって周波数特性、すなわち減衰量や、遷移時間は良くなる。
【００６７】
ここで、低域通過型のフィルタに対し、各帯域の減衰量を指定したフィルタ特性を組み合わせることで、そのデータの帯域制御も同時に可能となる。一般に、イコライザ機能と呼ばれる処理であり、単に、上記のフィルタ特性を掛け合わせたインパルス応答を前もって算出しておくだけでよい。
【００６８】
また、リサンプリング部２にて、入力数を整数倍（Ｍとする）で補間し、整数倍（Ｎとする）で間引く手法を取り入れることで、Ｍ／Ｎ倍でサンプリングされたデータを得ることができる。なお、Ｍ，Ｎは自然数である。
【００６９】
つまり、Ｍ／Ｎ倍でサンプリングされたデータを得るためには、リサンプリング部２のデジタルフィルタ部２１は、入力サンプル間に（Ｍ−１）個の０点を挿入し、フィルタのインパルス応答を重畳させ、その結果からＮ個づつ間引くことになる。ただし、０点挿入をした部分の重畳計算は、結果が０になることが分かっており、さらに間引かれる点は計算しなくてよいので、実際は入力系列に対して位相の異なる、上記Ｍで導かれるインパルス応答を重畳して結果を得ることになる。
【００７０】
インパルス応答の数は、それをリサンプリング部２の制御部２０等が予め記憶しているか、あるいは外部から与えられるかで、予め決定されている必要がある。例えば、本実施の形態３の場合、（インパルス応答長×Ｍ）分のデータを用意する必要があるが、Ｍが大きな数であたった場合、装置の実現に無理が生じる。従って、大抵の場合、Ｍおよびそれに連動してＮは限定される。インパルス応答は、実施の形態の形態２で述べたように、入力データに付加する識別子の入力識別情報で切り替えることとする。
【００７１】
ここで、ＭとＮが定められたデジタルフィルタ部２１の実現を、ＤＤＡ（Ｄｉｇｉｔａｌ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ａｎａｌｙｚｅｒ）アルゴリズムを用いて実施する手法を述べる。先ずＤＤＡアルゴリズムの原理を図７と図８を用いて説明する。
【００７２】
図７は、本実施の形態３で利用するＤＤＡアルゴリズムの一例を示すフローチャートである。
【００７３】
ＭとＮ、すなわちＭ／Ｎ倍でリサンプリングするため入力数の補完する際の倍数Ｍと間引く際の倍数Ｎとが与えられ、Ｎ＞Ｍと仮定すると、入力データが入力するたびに出力データを出力する否か、およびその出力データの位相を図７に示すＤＤＡアルゴリズムのフローチャートを用いて算出できる。
【００７４】
なお、入力データが入力するたびに出力データを出力する否かが、リサンプリング部２におけるサンプリング周波数を示すことになり、出力データの位相が、エイリアシング等による歪を調整するフィルタ係数の選択のためのパラメータを示すことになる。
【００７５】
ここでは、入力データ数をＸ軸、出力データ数をＹ軸としており、ｅを誤差変数と呼ぶ。
【００７６】
まず、初期値として、それぞれ、ｃ＝２Ｍ、ｄ＝２Ｍ−２Ｎ、誤差変数ｅ＝２Ｍ−Ｎ、（Ｘ、Ｙ）＝（０，０）を設定する（Ｓ７００）。
【００７７】
次に、入力データ数をＸ軸、出力データ数をＹ軸とした平面上に、（Ｘ、Ｙ）の点をプロットすると共に、Ｘを１だけインクリメント、すなわちＸ＝Ｘ＋１を行なう（Ｓ７１０）。
【００７８】
次に、Ｘが最終であるか否かを判断し（Ｓ７２０）、Ｘが最終であれば（Ｓ７２０“Ｙ”）、このＤＤＡアルゴリズムを終了する一方（Ｓ７３０）、Ｘが最終でなければ（Ｓ７２０“Ｎ”）、続いてｅ＜０、すなわち誤差変数ｅが０より小さいか否かを判断する（Ｓ７４０）。
【００７９】
ここで、誤差変数ｅが０より小さい場合は（Ｓ７４０“Ｙ”）、ｅ＝ｅ＋ｃ、すなわち誤差変数ｅをｃだけインクリメントして（Ｓ７５０）、前述のステップ７１０の（Ｘ、Ｙ）の点をプロットおよびＸの１インクリメント処理に戻る。その一方、誤差変数ｅが０以上の場合は（Ｓ７４０“Ｎ”）、Ｙ＝Ｙ＋１およびｅ＝ｅ＋ｄ、すなわちＹを１インクリメントすると共に誤差変数ｅをｄだけインクリメントして（Ｓ７６０）、前述のステップ７１０の処理に戻る。
【００８０】
以上説明したＤＤＡアルゴリズムによる処理により、Ｎ＞Ｍの場合で、ＮをＸ軸にとり、ＭをＹ軸にとった場合に、Ｘが値を更新するときでも、Ｙが値を更新しない場合があるので、入力データＸが入力するたびに出力データＹを出力するか否かを判断することができ、これによりＭ／Ｎ倍でリサンプリングできることになる。
【００８１】
次に、エイリアシング等による歪を調整するフィルタ係数の選択のためのパラメータである出力の位相について、図８により説明する。
【００８２】
図８は、Ｎ＝５、Ｍ＝３の場合に、Ｘ軸とＹ軸および誤差変数ｅの変化を示す図である。
【００８３】
図８は、Ｘ軸にＮをとり、Ｙ軸にＭをとり、図７に示すＤＤＡアルゴリズムにより線分を求め、誤差変数ｅを求めたもので、Ｘ軸方向を基本に変数を変化させるごとに、Ｙ軸方向の変数を調べることで、入力に対して出力を行うか否かがわかる。また、その出力Ｙの位相は、誤差変数ｅから誤差変数ｅの初期値ｅ０を減算した（ｅ−ｅ０）として、割り出すことができる。
【００８４】
具体的には、図８において、Ｘ＝０のときは誤差変数ｅ０＝１、Ｘ＝１のときは誤差変数ｅ１＝−３、Ｘ＝２のときは誤差変数ｅ２＝３、Ｘ＝３のときは誤差変数ｅ３＝−１、・・・となっており、その出力Ｙ＝１のときの位相は、誤差変数ｅ１から初期値ｅ０を減算した（ｅ１−ｅ０）＝−４を割り出すことができる。つまり、Ｙ＝１のときは、この出力の位相差（ｅ１−ｅ０）＝−４によりエイリアシングによる歪を調整するためのフィルタ係数を選択するようにする。
【００８５】
なお、図８において、“ΔＹ＋＋”は、ΔＹ＝ΔＹ＋１のことであり、そのＸの更新タイミングでＹがインクリメントされることを示している。
【００８６】
よって、この方式は、図７から分かるように、整数演算のみなので、丸め誤差等の累積が生じない。このようにデジタルフィルタ部２１で、エイリアシング等の歪除去と、Ｍ／Ｎの大まかなリサンプリングが可能となる。
【００８７】
次に、リサンプリング部２の補間部２２は、デジタルフィルタ部２１の上記ＭとＮの範囲を超えるリサンプリングを行う。
【００８８】
ここでは、リサンプリング部２の補間部２２は、例えば、直線補間を行うものとし、直線補間によるリサンプリング方式を説明する。直線補間の場合、リサンプリング部２が全体的にＰ／Ｑでリサンプリングを行うこととすると、デジタルフィルタ部２１がＭ／Ｎでリサンプリングを行うので、最終的にリサンプリング部２からの出力をＰ／Ｑにするには、補完部２２にて（Ｐ・Ｎ）／（Ｑ・Ｍ）倍を行う必要がある。なお、Ｐ，Ｑとも、Ｍ，Ｎと同様に自然数である。
【００８９】
図９（ａ）は、リサンプリング部２の入力データ系列を示し、Δの出力位置でリサンプリングを行う場合を示す図である。
【００９０】
つまり、Δの位置が分かれば、それを挟む入力サンプル値と、算出した重みとを用いて出力サンプル値を算出することができる。この計算を繰り返して、図９（ｂ）に示すΔ、２×Δ、３×Δ、４×Δ、・・・という出力データ系列が得られる。
【００９１】
なお、Δに関しては、図７に示すＤＤＡアルゴリズムを用いた算出方式では、複雑となるため、入力Ｘに対する出力ステップを固定小数点もしくは浮動小数点で表現しそれを加算していく方式とする。
【００９２】
ここで、補完部２２のサンプリング数は（Ｐ・Ｎ）／（Ｑ・Ｍ）であるので、補間部２２の入力に対する出力ステップは、（Ｑ・Ｍ）／（Ｐ・Ｎ）となる。なお、説明の便宜上、Δは、この出力ステップと同じであり、１．０以下としているが、実際には正規化された、すなわち整数で１づつ加算される系における入力サンプル位置と、挟まれる出力サンプル位置の距離でΔを置き換えることになる。
【００９３】
このようにして、補間部２２は、正確な位置のリサンプリングを行うことができる。
【００９４】
なお、補間部２２による補間の方式は、直線補間以外に近傍４点を用いたスプライン補間や、デジタルフィルタ部２１を縦続構成で使用する方式を用いても良い。ただし、デジタルフィルタ部２１を縦続して使用する構成では、ＭとＮが素因数となるリサンプリングのみとなる。
【００９５】
以上のように、本実施の形態３によれば、リサンプリング部２にて、デジタルフィルタ部２１が入力数を整数倍（Ｍとする）で補間し、整数倍（Ｎとする）で間引くＭ／Ｎでリサンプリングを行うために、ＤＤＡ（Ｄｉｇｉｔａｌ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ａｎａｌｙｚｅｒ）アルゴリズムを用いて実施するようにしたので、簡単にＭ／Ｎを求めることが出来、ＭとＮが定められたデジタルフィルタ部２１の簡単に実現することができる。
【００９６】
（実施の形態４）
本実施の形態４も、基本的には、ＤＭＡ５のパラメータ設定と、メモリ１、リサンプリング部２およびＤＭＡ５の各装置間のハンドシェイクフラグである転送制御フラグとにより、全体が制御されるが、衛星放送などデータに対して時刻情報が付属されており、その時刻と端末時刻とにずれが生じる場合、サンプリング間隔を調製したりする必要がある。実施の形態３までは、リサンプリングに必要なパラメータは固定で静的であったが、本実施の形態４では、動的にパラメータを変更する実施の形態について、図１０を用いて説明する。
【００９７】
先ず、リサンプリング部２のサンプリング比が予め決まっており、上記の入力識別情報で切り替える方式に代わり、ＤＭＡ５に設定されたパラメータによりサンプリング比で上記の入力識別情報で切り替える方法を示す。
【００９８】
図１０は、本実施の形態４におけるＤＭＡ５のパラメータ設定例である。
【００９９】
図１０において、本実施の形態４におけるＤＭＡ５に設定するパラメータとしては、例えば、０〜７のパラメータの論理チャネル（ＣＨ）１０１、入力元である入力部やメモリ、転送比を示す入力属性１０２、入力アドレス１０３、出力先である出力部やメモリを示す出力属性１０４、出力アドレス１０５、転送量１０６、転送完了数１０７を有している。特に、入力属性１０２の転送比（リサンプリング比）は、変換に影響するパラメータである。これらのパラメータは、ＤＭＡ５が転送するデータに識別子として付属させる。
【０１００】
図１０において、論理チャネル（ＣＨ）１０１で０番を示すものは、第一の入力部３０からリサンプリング部２で転送比０．５、すなわちサンプリング数を半分として、メモリ１の領域Ｘに転送することを示し、転送完了数１０７から現在０×１２バイトの転送が終わっていることを示す。
【０１０１】
また、図１０において、論理チャネル（ＣＨ）１０１で１番を示すものは、第二の入力部３１からリサンプリング部２で転送比０．２５、すなわちサンプリング数を１／４としメモリ１の領域Ｘに転送することを示し、転送完了数１０７から現在０×２８バイトの転送が終了していることを示す。両者は、出力アドレス１０５により同じメモリ１の領域Ｘを指定しているので重畳して格納される。
【０１０２】
また、図１０において、論理チャネル（ＣＨ）１０１で２番を示すものは、上記の転送結果を格納するメモリ１からそのまま第一の出力部４０に転送することを示しており、転送完了数１０７から現在０×５バイトの転送が終わっていることを示す。
【０１０３】
このように、本実施の形態４では、リサンプリング部２に予めリサンプリング数を設定するのではなく、入力属性１０２の一つとして任意の値を設定可能な転送比（リサンプリング比）をＤＭＡ５がリサンプリング部２に対し転送するデータに入力属性１０２として載せることにより、動的に転送比（リサンプリング比）を変更することが可能になる。
【０１０４】
なお、転送比（リサンプリング比）の代わりに、転送量１０６を、例えば、入力の転送量と出力の転送量とに分けて設定可能にし、入力の転送量と出力の転送量との両者を識別子に載せて整数比で与えるようにしても、勿論問題ない。
【０１０５】
また、転送量１０６ではなく、転送完了数１０７を用いて、転送比（リサンプリング比）を設定するようにしても勿論よい。
【０１０６】
次に、転送完了数１０７から転送比（リサンプリング比）を微調整する方法を述べる。
【０１０７】
入力属性１０２に設定する転送比（リサンプリング比）は、固定となるが、第一の入力部３０に入ってくるサンプルが外部から与えられている場合、外部のクロックと、内部のクロックとの揺らぎとにより、正確な転送比とならない場合がある。例えば、論理チャネル（ＣＨ）１０１で、０番と１番の転送の両者が誤差の累積がずれてくる可能性がある。そこで、転送完了数１０７を正規化する。
【０１０８】
つまり、上記の例で、論理チャネル（ＣＨ）１０１が０番の場合は０．５を掛けて０×９、論理チャネル（ＣＨ）１０１が１番の場合は０．２５を掛けて０×ａとなる。これらの差分が一定に保つよう識別子として出力する転送比にフィードバック制御をかけることで、これらの揺らぎを吸収することができる。
【０１０９】
例えば、ここでは、論理チャネル（ＣＨ）１０１が０番の方が、転送が進んでいるので、入力属性１０２の転送比を０．５から０．４９にするなどが考えられる。入力属性１０２の転送比（リサンプリング比）の変更値に関して述べると、ＤＭＡ５において、一定の時間間隔で転送完了数１０７をサンプリングし、時間に対する増減を調べれば簡単に算出できる。
【０１１０】
正規化された転送完了数１０７の差分が時刻Ａで４であり、時刻Ｂで５であれば、（５−４）／（Ｂ−Ａ）の割合で外部クロックが揺らいだと判断し、その割合でいずれかの転送比を調整する。
【０１１１】
以上のように、本実施の形態４によれば、ＤＭＡ５のパラメータを使用して、リサンプリング部２に予めリサンプリング数を設定するのではなく、例えば、ＤＭＡ５がリサンプリング部２に転送するデータに対し入力属性１０２の一つとして任意に設定した転送比（リサンプリング比）を載せること等により、転送比（リサンプリング比）を動的に変更することが可能になり、様々なデータ系列のリサンプリングと重畳の調整が動的に可能となる。
【０１１２】
また、入力属性１０２の一つとして任意に設定した転送比（リサンプリング比）の代わりに、転送量１０６を、例えば、入力の転送量と出力の転送量とに分けて設定可能にし、入力の転送量と出力の転送量との両者を識別子に載せて整数比で与えるようにしても勿論良いし、さらには、転送量１０６ではなく転送完了数１０７を用い転送完了数１０７を正規化して転送比（リサンプリング比）を動的に変更するようにしても勿論よい。
【産業上の利用可能性】
【０１１３】
本発明のデータ変換処理装置は、ＤＭＡの設定という一般的な設定手法を用いて、柔軟かつ多機能なリサンプリング処理が可能になる、という有利な効果を奏し、入力部からの音声データや映像データ等のデータをリサンプルして出力部へ出力するオーディオ処理や画像処理を使用する機器に有用である。
【図面の簡単な説明】
【０１１４】
【図１】本発明の実施の形態１に係るデータ変換処理装置の構成を示すブロック図
【図２】実施の形態１のリサンプリング部による一連の処理を説明する図
【図３】実施の形態１のＤＭＡ、メモリ、リサンプリング部の各装置間の関係を示す図
【図４】実施の形態２のデータ変換処理装置のリサンプリング部の構成を示すブロック図
【図５】実施の形態２におけるリサンプリング部における内部処理等の一例を示す図
【図６】（ａ）〜（ｃ）それぞれ、実施の形態３のリサンプリング部がリサンプリング処理の際に除去または削除するエイリアシングの発生などを示す図
【図７】実施の形態３のリサンプリング部が利用するＤＤＡアルゴリズムの一例を示すフローチャート
【図８】実施の形態３のリサンプリング部が利用するＤＤＡアルゴリズムによるＸ軸とＹ軸および誤差変数ｅの変化を示す図
【図９】（ａ），（ｂ）それぞれ、実施の形態３のリサンプリング部における直線補間による入力データ系列と出力データ系列とを示す図
【図１０】実施の形態４におけるＤＭＡのパラメータ設定例を示す説明図
【図１１】従来のデータ変換処理装置の説明図
【符号の説明】
【０１１５】
１  メモリ
２  リサンプリング部
５  ＤＭＡ
１０  ＣＰＵ
１１  システムメモリ
２０  制御部
２１  デジタルフィルタ部
２２  補間部
２３  重畳部
３０  第一の入力部
３１  第二の入力部
４０  第一の出力部
４１  第二の出力部
【図１】
2006268294.tif 000003
【図２】
2006268294.tif 000004
【図３】
2006268294.tif 000005
【図４】
2006268294.tif 000006
【図５】
2006268294.tif 000007
【図６】
2006268294.tif 000008
【図７】
2006268294.tif 000009
【図８】
2006268294.tif 000010
【図９】
2006268294.tif 000011
【図１０】
2006268294.tif 000012
【図１１】
2006268294.tif 000013