(57)【要約】【課題】ＰＣＭデータ転送時のデータ処理装置の負荷を抑制する。【解決手段】メディアプロセッサ３０には、プロセッサコア１、ＤＭＡコントローラ２、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。ＤＭＡコントローラ２には、アドレス生成回路１２が設けられる。ＤＭＡコントローラ２は、ローカルバス７及びグローバルバス８に接続され、プロセッサなどを介さずにメモリに格納されているＰＣＭデータなどのデータのＤＭＡ転送制御を行う。ＤＭＡコントローラ２は、アドレスの飛ばしや切り捨てを含むＰＣＭデータ転送を実行することができる構成となっている。アドレス生成回路１２は、データのＤＭＡ転送のとき、転送先のアドレスを決定する情報を生成する。【選択図】図１
2009116685.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶手段と第２の記憶手段との間のＰＣＭデータ転送を制御するデータ処理装置であって、
前記第１の記憶手段に格納されたＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段にデータ転送する際に、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段に格納させ、前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を前記第２の記憶手段にデータ転送する際に、前記第２の記憶手段の飛ばされた隙間のアドレスに前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を格納させるＤＭＡコントローラを具備することを特徴とするデータ処理装置。
【請求項２】
第１の記憶手段と第２の記憶手段との間のＰＣＭデータ転送を制御するデータ処理装置であって、
前記第１の記憶手段に格納されたＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段にデータ転送する際に、データを斬り捨て、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段に格納させ、前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を前記第２の記憶手段にデータ転送する際に、データを切り捨て、前記第２の記憶手段の飛ばされた隙間のアドレスに前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を格納させるＤＭＡコントローラを具備することを特徴とするデータ処理装置。
【請求項３】
前記ＤＭＡコントローラは、前記ＰＣＭデータ転送時のアドレス情報を生成するアドレス生成回路を具備することを特徴とする請求項１又は２に記載のデータ処理装置。
【請求項４】
前記ＤＭＡコントローラは、前記第１の記憶手段からデータ転送される前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを一旦格納する内部バッファを有し、前記内部バッファに格納された前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータが前記第２の記憶手段にデータ転送される際に、データの切り捨てを行うことを特徴とする請求項２又は３に記載のデータ処理装置。
【請求項５】
第１の記憶手段と第２の記憶手段との間のＰＣＭデータ転送を制御するデータ処理装置を用いたデータ転送方法であって、
前記第１の記憶手段に格納されたＬｃｈ  ＰＣＭデータを前記第２の記憶手段にデータ転送する際に、読み出し或いは書き込みのときに、データの切り捨てを行い、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータを前記第２の記憶手段に格納するステップと、
前記Ｌｃｈ  ＰＣＭデータを前記第２の記憶手段に格納後、前記第１の記憶手段に格納されたＲｃｈ  ＰＣＭデータを前記第２の記憶手段にデータ転送する際に、読み出し或いは書き込みのときに、データの切り捨てを行い、前記第２の記憶手段の飛ばされた隙間のアドレスに前記Ｒｃｈ  ＰＣＭデータを格納するステップと、
を具備することを特徴とするデータ処理装置を用いたデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置に係り、特にＰＣＭデータの転送制御が行われるデータ処理装置及びそれを用いたデータ転送方法に関する。
【背景技術】
【０００２】
メモリからのデータ読み出し或いはメモリへの書き込みの手段としてＤＭＡ（Direct  Memory  Access）転送技術が広く用いられる。ＤＭＡ転送を行う場合、メモリやデバイスはＤＭＡコントローラと接続され、ＤＭＡコントローラによりデータの転送制御が行われる。ＤＭＡ転送を用いるとＣＰＵ（Central  Processing  Unit）やプロセッサなどを介さずにメモリやデバイス間のデータ転送を行うことができる（例えば、特許文献１参照。）。また、ＤＭＡコントローラを用いて音声信号やオーディオデータ信号としてのＰＣＭデータがＣＰＵやプロセッサなどを介さずにメモリやデバイス間で高速にデータ転送される（例えば、特許文献２参照。）。
【０００３】
特許文献１及び２などに記載されるデータ処理装置では、別個に連続的にメモリやデバイスに格納されているＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを転送する場合、連続した領域を単位として転送するので、マルチプレクス或いはデマルチプレクス処理のためのプロセッサなどのデータ処理装置の負荷が増大するという問題点がある。また、ワークエリアを確保するためにＰＣＭデータをＤＲＡＭ或いはＳＲＡＭなどの主メモリに退避や復帰させる場合、データの処理量や待機時間が増加するという問題点がある。
【特許文献１】特開２００６−３１３４７８号公報
【特許文献２】特開２００６−５３２４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、ＰＣＭデータ転送時のデータ処理装置の負荷を抑制することができるデータ処理装置及びそれを用いたデータ転送方法を提供する。
【課題を解決するための手段】
【０００５】
本発明の一態様のデータ処理装置は、第１の記憶手段と第２の記憶手段との間のＰＣＭデータ転送を制御するデータ処理装置であって、前記第１の記憶手段に格納されたＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段にデータ転送する際に、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記第２の記憶手段に格納させ、前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を前記第２の記憶手段にデータ転送する際に、前記第２の記憶手段の飛ばされた隙間のアドレスに前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を格納させるＤＭＡコントローラを具備することを特徴とする。
【０００６】
更に、本発明の一態様のデータ処理装置を用いたデータ転送方法は、第１の記憶手段と第２の記憶手段との間のＰＣＭデータ転送を制御するデータ処理装置を用いたデータ転送方法であって、前記第１の記憶手段に格納されたＬｃｈ  ＰＣＭデータを前記第２の記憶手段にデータ転送する際に、読み出し或いは書き込みのときに、データの切り捨てを行い、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータを前記第２の記憶手段に格納するステップと、前記Ｌｃｈ  ＰＣＭデータを前記第２の記憶手段に格納後、前記第１の記憶手段に格納されたＲｃｈ  ＰＣＭデータを前記第２の記憶手段にデータ転送する際に、読み出し或いは書き込みのときに、データの切り捨てを行い、前記第２の記憶手段の飛ばされた隙間のアドレスに前記Ｒｃｈ  ＰＣＭデータを格納するステップとを具備することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ＰＣＭデータ転送時のデータ処理装置の負荷を抑制することができるデータ処理装置及びそれを用いたデータ転送方法を提供することができる。
【発明を実施するための最良の形態】
【０００８】
以下本発明の実施例について図面を参照しながら説明する。
【実施例１】
【０００９】
まず、本発明の実施例１に係るデータ処理装置及びそれを用いたデータ転送方法について、図面を参照して説明する。図１はプロセッサモジュールを示すブロック図である。本実施例では、ＰＣＭデータの書き込み先を変換している。
【００１０】
図１に示すように、メディアプロセッサ３０には、プロセッサコア１、ＤＭＡコントローラ２、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。データ処理装置としてのメディアプロセッサ３０は、映像情報、音声情報、オーディオ情報などのメディア情報をデータ処理する。
【００１１】
プロセッサコア１には、データメモリ１１が設けられる。プロセッサコア１は、ローカルバス７及びグローバルバス８に接続され、ローカルバス７或いはグローバルバス８を介して音声情報やオーディオ情報などをデータ処理する。ここで、映像情報を取り扱うプロセッサコアやネットワーク情報を取り扱うプロセッサコアについては、図示及び説明を省略する。記憶手段としてのデータメモリ１１は、音声情報やオーディオ情報などを格納し、例えば、音声情報や音楽情報としてのＰＣＭ（Pulse  Code  Modulation）データを格納する。
【００１２】
ここで、ＰＣＭとはパルス変調方式の一つであり、パルス符号化変調のことを指し、電話、音声応答、ＣＤ、ＤＶＤ等などに広く使用される。ＰＣＭデータとはアナログ信号を標本化、量子化、及び符号化されたものである。ＰＣＭデータにはＬｃｈ  ＰＣＭデータとRｃｈ  ＰＣＭデータとがあり、音声（スピーチ）の場合に８ｂｉｔ／ｓａｍｐｌｅの情報を有し、オーディオ信号でＣＤの場合に１６ｂｉｔ／ｓａｍｐｌｅの情報を有し、ＤＶＤ−Ａｕｄｉｏの場合に１２ｂｉｔ、１６ｂｉｔ、２０ｂｉｔ、或いは２４ｂｉｔ／ｓａｍｐｌｅの情報を有する。その他に、例えばオーディオ信号処理の中間または最終段階の生成信号として信号処理装置の内部等で３２ｂｉｔ／ｓａｍｐｌｅの情報を有する場合もある。
【００１３】
ＤＭＡコントローラ２には、アドレス生成回路１２が設けられる。ＤＭＡコントローラ２は、ローカルバス７及びグローバルバス８に接続され、プロセッサなどを介さずにメモリ（記憶手段）に格納されているＰＣＭデータなどのデータのＤＭＡ転送制御を行う。ＤＭＡコントローラ２は、アドレスの飛ばしや切り捨てを含むＰＣＭデータなどの転送を実行することができる構成となっている。アドレス生成回路１２は、ＰＣＭデータなどのＤＭＡ転送のとき、転送先のアドレスを決定する情報を生成する。
【００１４】
Ｄ／Ａコンバータ３は、ローカルバス７に接続され、ローカルバス７を介して送信される音声或いはオーディオのデジタル情報が入力され、このデジタル情報をデジタル−アナログ変換して音声或いはオーディオのアナログ情報をスピーカ２１に出力する。ここで、例えばＰＣＭデータが２ｃｈ、３ｃｈ、５．１ｃｈ、或いは７．１ｃｈなどの場合、１ｃｈごとの情報がＤ／Ａコンバータ３から複数のスピーカ２１にそれぞれ出力される。
【００１５】
Ａ／Ｄコンバータ４は、ローカルバス７に接続され、マイク２２から出力される音声のアナログ情報が入力され、このアナログ情報をアナログ−デジタル変換してローカルバス７を介してメディアプロセッサ３０内に送信する。
【００１６】
記憶手段としての主メモリ６は、グローバルバス８に接続され、グローバルバス８を介してメディアプロセッサ３０内で生成された情報やメディアプロセッサ３０の外部から送信される情報などを格納する。ここで、主メモリ６にＤＲＡＭ（Dynamic  Random  Access  Memory）を用いているが、ＳＲＡＭ（Static   Random  Access  Memory）やＤＲＡＭ／ＳＲＡＭ混載を用いてもよい。ここでは、主メモリ６をメディアプロセッサ３０に搭載しているが、メディアプロセッサ３０の外部に設けてもよい。
【００１７】
インターフェース５は、グローバルバス８に接続され、グローバルバス８を介してメディアプロセッサ３０内で生成されたデータを、主メモリ６を介して例えばディスクやメモリカード等他のメディア記録機器や再生機器との入出力処理等を行う。
【００１８】
なお、メディアプロセッサ３０内で生成されるデータとはエンコード処理によりＰＣＭデータをデータ量圧縮したデータ、または逆にデコード処理によりデータ量圧縮されたデータから再生されたＰＣＭデータ等を指す。
【００１９】
他のメディアプロセッサ３１は、メディアプロセッサ３０とグローバルバス８で接続され、グローバルバス８を介してメディアプロセッサ３０と情報のやりとりを行う。
【００２０】
次に、ＰＣＭデータ転送について図２及び図３を参照して説明する。図２はＬｃｈ  ＰＣＭデータ転送を示す図、図３はＲｃｈ  ＰＣＭデータ転送を示す図である。ここでは、アドレス生成回路１２の構成については説明を省略する。
【００２１】
図２に示すように、データメモリ１１には、Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータがアドレスに対して順番に連続的に格納される。つまり、Ｌｃｈ  ＰＣＭデータを格納した領域の最下位のアドレスにｎ番目のサンプルＬ（ｎ）が格納されているとすると、例えばｍが８の場合、上位８ｂｉｔの情報を有するＬ（ｎ）２が格納され、その次２番目のアドレスに下位８ｂｉｔの情報を有するＬ（ｎ）１が格納され、・・・、７番目のアドレスに上位８ｂｉｔの情報を有するＬ（ｎ＋３）２が格納さ、８番目のアドレスに８下位ｂｉｔの情報を有するＬ（ｎ＋３）１が格納される。以下、ｋ番目（ただし、（ｋ＋１）−ｎは４の倍数であるものとする）のサンプルまで格納されているものとする。
【００２２】
次に、Ｒｃｈ  ＰＣＭデータを格納した領域の最下位のアドレスにｎ番目のサンプルＲ（ｎ）が格納されているとすると、上位８ｂｉｔの情報を有するＲ（ｎ）２が格納される。その次２番目のアドレスに下位８ｂｉｔの情報を有するＲ（ｎ）１が格納され、・・・、７番目のアドレスに上位８ｂｉｔの情報を有するＲ（ｎ＋３）２が格納さ、８番目のアドレスに下位８ｂｉｔの情報を有するＲ（ｎ＋３）１が格納される。以下、ｋ番目のサンプルまで格納されているものとする。
【００２３】
ここでは、Ｌｃｈ及びＲｃｈ  ＰＣＭを格納している領域が連続しているが離れていてもよい。また８ｂｉｔの並び順もＬ（ｎ）１、Ｌ（ｎ）２の様な上述とは逆の下位から上位の順の並びでもよい。メディアプロセッサでエンコードするための入力ＰＣＭデータ、或いはデコードした事により生成されたＰＣＭデータは通常この様にチャンネル毎にまとめられている事が多い。
【００２４】
Ｌｃｈ  ＰＣＭデータ転送では、まず、ＤＭＡコントローラ２に基づいて、データメモリ１１のＬ（ｎ）２からＬ（ｎ＋３）１までが順次読み出される（１６×４ｂｉｔ分）。
【００２５】
続いて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の１番目のアドレスにＬ（ｎ）２が、その次の２番目のアドレスにＬ（ｎ）１が格納される。
【００２６】
次に、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の５番目のアドレスにＬ（ｎ＋１）２が、その次の６番目のアドレスにＬ（ｎ＋１）１が格納される。
【００２７】
そして、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の９番目のアドレスにＬ（ｎ＋２）２が、その次の１０番目のアドレスにＬ（ｎ＋２）１が格納される。
【００２８】
次に、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の１３番目のアドレスにＬ（ｎ＋３）２が、その次の１４番目のアドレスにＬ（ｎ＋３）１が格納される。
【００２９】
図３に示すように、Ｒｃｈ  ＰＣＭデータ転送では、まず、ＤＭＡコントローラ２に基づいて、データメモリ１１のＲ（ｎ）２からＲ（ｎ＋３）１までが順次読み出される（１６×４ｂｉｔ分）。
【００３０】
続いて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の３番目のアドレスにＲ（ｎ）２が、その次の４番目のアドレスにＲ（ｎ）１が格納される。
【００３１】
次に、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の７番目のアドレスにＲ（ｎ＋１）２が、その次の８番目のアドレスにＲ（ｎ＋１）１が格納される。
【００３２】
そして、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の１１番目のアドレスにＲ（ｎ＋２）２が、その次の１２番目のアドレスにＲ（ｎ＋２）１が格納される。
【００３３】
次に、ＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の１５番目のアドレスにＲ（ｎ＋３）２が、その次の１６番目のアドレスにＲ（ｎ＋３）１が格納される。以上がＤＭＡ転送処理の１単位となる。
【００３４】
図２及び３で説明したように、Ｌｃｈ  ＰＣＭ及びＲｃｈ  ＰＣＭのデータ転送では、連続した状態で転送せずに、ＤＭＡコントローラ２に基づいて、アドレス変更を行いながら順次Ｌｃｈ  ＰＣＭ及びＲｃｈ  ＰＣＭのデータ転送を行い、且つＬｃｈ  ＰＣＭ及びＲｃｈ  ＰＣＭのデータを交互にお互いを挟み込むように主メモリ６に格納している。このため、読み出し、書き込み、各々のポインタの更新で４命令を要するとし、サンプリング周波数を４８ｋＨｚとした場合、本実施例では、
4(cycle)×48(kHz)＝0.2(Mcycle)・・・・・・・・・・・式（１）
分だけ、マルチプレクス処理のためのプロセッサなどのデータ処理装置の負荷を低減することができる。また、デマルチプレクス処理のためのプロセッサなどのデータ処理装置の負荷も低減することができる。また、ワークエリアを確保するためにＰＣＭデータをＤＲＡＭ或いはＳＲＡＭなどの主メモリ６に退避や復帰させる場合、データの処理量や待機時間の増加を抑制することができる。
【００３５】
上述したように、本実施例のデータ処理装置及びそれを用いたデータ転送方法では、プロセッサコア１、ＤＭＡコントローラ２、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。プロセッサコア１には、ＰＣＭデータを格納するデータメモリ１１が設けられる。ＤＭＡコントローラ２には、アドレス生成回路１２が設けられる。ＤＭＡコントローラ２は、プロセッサなどを介さずにメモリに格納されているＰＣＭデータのＤＭＡ転送制御を行う。ＤＭＡコントローラ２は、アドレスを飛ばしてＰＣＭデータの転送を実行することができる構成となっている。
【００３６】
このため、別個に連続的にデータメモリ１１に格納されているＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを主メモリ６に転送する場合、連続した領域を単位として転送せずに、アドレスの飛ばし処理を行っているので、マルチプレクス或いはデマルチプレクス処理のためのメディアプロセッサ３０の負荷を低減することができる。また、ワークエリアを確保するためにＰＣＭデータを主メモリ６に退避や復帰させる場合、データの処理量や待機時間を抑制することができる。
【００３７】
なお、本実施例では、データメモリ１１に格納されているＰＣＭデータをＬｃｈのデータを読み出して主メモリ６に書き込み、その後Ｒｃｈのデータを読み出して主メモリ６に書き込んでいるが、Ｒｃｈのデータを先に読み出して主メモリ６に書き込み、その後Ｌｃｈのデータを読み出して主メモリ６に書き込んでよい。また、主メモリ６に格納されているＰＣＭデータをデータメモリ１１にデータ転送してもよい。更に、メディアプロセッサ３０の主メモリ６或いはデータメモリ１１とグローバルバス８に接続される別のメディアプロセッサ３１との間でＰＣＭデータ転送を行ってもよい。
【実施例２】
【００３８】
次に、本発明の実施例２に係るデータ処理装置及びそれを用いたデータ転送方法について、図面を参照して説明する。図４はアドレス生成回路を示すブロック図である。本実施例では、ＰＣＭデータ転送での読み出し時にＰＣＭデータを切り捨てている。
【００３９】
図４に示すように、アドレス生成回路１２には、アドレスレジスタ１３、加算器１４、スイッチＳＷ１、及びスイッチＳＷ２が設けられる。アドレス生成回路１２は、メディアプロセッサ３０に設けられ、ＰＣＭデータ転送の書き込み時にＰＣＭデータのアドレスを飛ばす。ここでのＰＣＭデータ転送は、データメモリ１１のアドレス毎に格納される情報が８ｂｉｔ（２ｂｙｔｅ）であり、１６ｂｉｔ×２ｃｈ対応の場合である。
【００４０】
スイッチＳＷ１は、アドレス初期値と加算器１４から出力されるアドレス値とが入力され、制御信号ＳＧ１に基づいて、いずれかのデータを選択出力する。スイッチＳＷ２は、“１”のデータ、“３”のデータ、“１”のデータ、“３”のデータの４種類の増分が入力され、制御信号ＳＧ２に基づいて、いずれか１つの増分を順次選択出力する。
【００４１】
アドレスレジスタ１３は、スイッチＳＷ１から出力されるデータが入力され、そのデータを記憶して加算器１４及びアドレス生成回路１２の外部に出力する。加算器１４は、アドレスレジスタ１３から出力されるアドレス値とスイッチＳＷ２から出力される増分が入力され、加算処理したデータをスイッチＳＷ１に出力する。
【００４２】
次に、ＰＣＭ転送について図５及び図６を参照して説明する。図５はＬｃｈ  ＰＣＭデータ転送を示す図、図６はＲｃｈ  ＰＣＭデータ転送を示す図である。
【００４３】
図５に示すように、データメモリ１１には、Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータがアドレスに対して順序よく連続的に格納される。つまり、Ｌｃｈ  ＰＣＭデータの最下位のアドレスにＰＣＭデータＬ（ｎ）の最上位８ｂｉｔの情報を有するＬ（ｎ）４が格納され、２番目のアドレスに続く下位８ｂｉｔの情報を有するＬ（ｎ）３が格納され、・・・、４番目のアドレスに最下位８ｂｉｔの情報を有するＬ（ｎ）１が格納され、５番目のアドレスにＰＣＭデータＬ（ｎ＋１）の最上位８ｂｉｔの情報を有するＬ（ｎ＋１）４が格納され、・・・、８番目のアドレスに最下位８ｂｉｔの情報を有するＬ（ｎ＋１）１が格納される。以下、Ｌ（ｋ）（ただし、（ｋ＋１）−ｎは２の倍数であるものとする）のサンプルまで格納されているものとする。
【００４４】
Ｒｃｈ  ＰＣＭデータを格納する領域の最下位のアドレスにＰＣＭデータＲ（ｎ）の最上位８ｂｉｔの情報を有するＲ（ｎ）４が格納され、２番目のアドレスに続く下位８ｂｉｔの情報を有するＲ（ｎ）３が格納され、・・・、４番目のアドレスに最下位８ｂｉｔの情報を有するＲ（ｎ）１が格納され、５番目のアドレスにＰＣＭデータＲ（ｎ＋１）の最上位８ｂｉｔの情報を有するＲ（ｎ＋１）４が格納され、・・・、８番目のアドレスに最下位８ｂｉｔの情報を有するＲ（ｎ＋１）１が格納される。以下、Ｒ（ｋ）のサンプルまで格納されているものとする。ここでは、Ｌｃｈ及びＲｃｈ  ＰＣＭを格納している領域が連続しているが離れていても差し支えない。また８ｂｉｔの並び順もＬ（ｎ）１、・・・、Ｌ（ｎ）４の様な上述とは逆の最下位から最上位の順の並びでもよい。
【００４５】
Ｌｃｈ  ＰＣＭデータ転送では、まず、ＤＭＡコントローラ２に基づいて、データメモリ１１のＬ（ｎ）４からＬ（ｎ＋１）１までが読み出される（３２×２ｂｉｔ分）。
【００４６】
次に、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の最下位のアドレスにＬ（ｎ）４が格納される。続いて主メモリ６のその次の２番目のアドレスにＬ（ｎ）３が格納される。なお、アドレス生成回路１２へ入力するアドレス初期値は主メモリ６のＬｃｈ書き込み先領域最下位のアドレスである。続くデータＬ（ｎ）２及びＬ（ｎ）１は切り捨てられる。このためＤＭＡコントローラ２に基づいて、アドレス生成回路１２で生成された、主メモリ６の書き込み先領域の３番目及び４番目のアドレスにはデータを転送せず“０”（ゼロ）を格納する。
【００４７】
続いて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の９番目のアドレスにＬ（ｎ＋１）４が格納される。同様にして主メモリ６の書き込み先領域の１０番目のアドレスにＬ（ｎ＋１）３が格納される。続くＬ（ｎ＋１）２及びＬ（ｎ＋１）１は切り捨てられる。このため、主メモリ６の書き込み先領域の１１番目及び１２番目のアドレスにはデータを転送せず“０”（ゼロ）を格納する。
【００４８】
図６に示すように、Ｒｃｈ  ＰＣＭデータ転送では、まず、ＤＭＡコントローラ２に基づいて、データメモリ１１のＲ（ｎ）４からＲ（ｎ＋１）１までが読み出される（３２×２ｂｉｔ分）。
【００４９】
次に、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６への書き込み時に主メモリ６の書き込み先領域の５番目のアドレスにＲ（ｎ）４が格納される。同様にして主メモリ６の書き込み先領域の６番目のアドレスにＲ（ｎ）３が格納される。なお、アドレス生成回路１２へ入力するアドレス初期値はＲｃｈの場合、主メモリ６の書き込み先領域の５番目のアドレス、Ｌｃｈのアドレス初期値に“５”が加算されたものである。続くＲ（ｎ）２及びＲ（ｎ）１は切り捨てられる。このため、主メモリ６の書き込み先領域の７番目及び８番目のアドレスにはデータを転送せず“０”（ゼロ）を格納する。
【００５０】
続いて、アドレス生成回路１２で生成されるアドレス情報により、主メモリ６の書き込み先領域の１３番目のアドレスにＲ（ｎ＋１）４が格納される。同様にして主メモリ６の書き込み先領域の１４番目のアドレスにＲ（ｎ＋１）３が格納される。続くＲ（ｎ＋１）２及びＲ（ｎ＋１）１は切り捨てられる。このため、主メモリ６の書き込み先領域の１５番目及び１６番目のアドレスにはデータを転送せず“０”（ゼロ）を格納する。
【００５１】
図５及び６で説明したように、Ｌｃｈ  ＰＣＭ及びＲｃｈ  ＰＣＭのデータ転送では、連続した状態で一括転送せずに、ＤＭＡコントローラ２に基づいて、読み出し時のデータが切り捨てられ、書き込み時のアドレスが飛ばされている。このため、実施例１よりもＰＣＭデータ転送量を抑制でき、マルチプレクス処理のためのプロセッサなどのデータ処理装置の負荷を低減することができる。また、デインターリーブ処理のためのプロセッサなどのデータ処理装置の負荷も低減することができる。また、ワークエリアを確保するためにＰＣＭデータをＤＲＡＭ或いはＳＲＡＭなどの主メモリに退避や復帰させる場合、データの処理量や待機時間の増加を抑制することができる。
【００５２】
ここでは、アドレス生成回路１２を１６ｂｉｔ×２ｃｈ対応にしているが、アドレス生成回路１２を１６ｂｉｔ×３ｃｈ対応或いは３２ｂｉｔ×２ｃｈ対応にすることもできる。
【００５３】
１６ｂｉｔ×３ｃｈ対応の場合、図７に示すように、アドレス生成回路１２のスイッチＳＷ２に入力されるデータを変更する。即ち、スイッチＳＷ２に入力されるデータを、例えば“１”のデータ、“５”のデータ、“１”のデータ、“５”のデータの４種類とし、制御信号ＳＧ２に基づいて、スイッチＳＷ２がいずれか１つのデータを順次選択出力する。
【００５４】
３２ｂｉｔ×２ｃｈ対応の場合、図８に示すように、アドレス生成回路１２のスイッチＳＷ２に入力されるデータを変更する。即ち、スイッチＳＷ２に入力されるデータを、例えば“１”のデータ、“１”のデータ、“１”のデータ、“５”のデータの４種類とし、制御信号ＳＧ２に基づいて、スイッチＳＷ２がいずれか１つのデータを順次選択出力する。
【００５５】
なお、図５乃至７ではＳＷ２の選択肢を４としているが、この値に限定されるものではなく、サンプル当たりのｂｙｔｅ数やｃｈ数により適宜設計すればよい。
【００５６】
上述したように、本実施例のデータ処理装置及びそれを用いたデータ転送方法では、プロセッサコア１、ＤＭＡコントローラ２、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。プロセッサコア１には、ＰＣＭデータを格納するデータメモリ１１が設けられる。ＤＭＡコントローラ２には、アドレス生成回路１２が設けられる。アドレス生成回路１２には、アドレスレジスタ１３、加算器１４、スイッチＳＷ１、及びスイッチＳＷ２が設けられる。ＤＭＡコントローラ２は、プロセッサなどを介さずにメモリに格納されているＰＣＭデータのＤＭＡ転送制御を行う。ＤＭＡコントローラ２は、アドレスの飛ばしやデータの切り捨てを含むＰＣＭデータの転送を実行することができる構成となっている。
【００５７】
このため、別個に連続的にデータメモリ１１に格納されているＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを主メモリ６に転送する場合、連続した領域を単位として転送せずに、データの切り捨て及びアドレスの飛ばし処理を行っているので、実施例１よりもマルチプレクス或いはデマルチプレクス処理のためのメディアプロセッサ３０の負荷を低減することができる。また、ワークエリアを確保するためにＰＣＭデータを主メモリ６に退避や復帰させる場合、データの処理量や待機時間を抑制することができる。
【００５８】
なお、本実施例では、データメモリ１１に格納されているＰＣＭデータをＬｃｈのデータを読み出して主メモリ６に書き込み、その後Ｒｃｈのデータを読み出して主メモリ６に書き込んでいるが、Ｒｃｈのデータを先に読み出して主メモリ６に書き込み、その後Ｌｃｈのデータを読み出して主メモリ６に書き込んでよい。また、主メモリ６に格納されているＰＣＭデータをデータメモリ１１にデータ転送してもよい。
【実施例３】
【００５９】
次に、本発明の実施例３に係るデータ処理装置及びそれを用いたデータ転送方法について、図面を参照して説明する。図９はアドレス生成回路を示すブロック図である。本実施例では、ＰＣＭデータ転送での読み出し時にアドレスを飛ばしている。
【００６０】
図９に示すように、アドレス生成回路１２には、アドレスレジスタ１３、加算器１４、スイッチＳＷ１、及びスイッチＳＷ２が設けられる。アドレス生成回路１２は、実施例１と同様にメディアプロセッサ３０に設けられ、ＰＣＭデータ転送の読み出し時にＰＣＭデータのアドレスを飛ばす。ここでのＰＣＭデータ転送は、データメモリ１１のアドレス毎に格納される情報が８ｂｉｔ（１byte）であり、１６ｂｉｔ×２ｃｈ対応の場合である。ＰＣＭデータのアドレスを飛ばすために、スイッチＳＷ２に入力されるデータを変更（実施例２と異なるデータ）している。
【００６１】
スイッチＳＷ１は、イニシャルデータと加算器１４から出力されるデータとが入力され、制御信号ＳＧ１に基づいて、いずれかのデータを選択出力する。スイッチＳＷ２は、例えば“１”のデータ、“Ｎ−１”のデータ、“１”のデータ、“−Ｎ＋１”のデータの４種類のデータが入力され、制御信号ＳＧ２に基づいて、いずれか１つのデータを順次選択出力する。ここで、Ｎはチャンネル当たりのデータサイズ（ｂｙｔｅ）を示す。
【００６２】
アドレスレジスタ１３は、スイッチＳＷ１から出力されるデータが入力され、そのデータを記憶して加算器１４及びアドレス生成回路１２の外部に出力する。加算器１４は、アドレスレジスタ１３から出力されるデータとスイッチＳＷ２から出力されるデータが入力され、加算処理したデータをスイッチＳＷ１に出力する。
【００６３】
上述したように、本実施例のデータ処理装置及びそれを用いたデータ転送方法では、プロセッサコア１、ＤＭＡコントローラ２、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。プロセッサコア１には、ＰＣＭデータを格納するデータメモリ１１が設けられる。ＤＭＡコントローラ２には、アドレス生成回路１２が設けられる。アドレス生成回路１２には、アドレスレジスタ１３、加算器１４、スイッチＳＷ１、及びスイッチＳＷ２が設けられる。ＤＭＡコントローラ２は、プロセッサなどを介さずにメモリに格納されているＰＣＭデータのＤＭＡ転送制御を行う。ＤＭＡコントローラ２は、ＰＣＭデータの転送のときの読み出し時にアドレスの飛ばし処理を実行することができる構成となっている。
【００６４】
このため、別個に連続的にデータメモリ１１に格納されているＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを主メモリ６に転送する場合、連続した領域を単位として転送せずに、読み出し時にアドレスを飛ばしているので、インターリーブ或いはデインターリーブ処理のためのメディアプロセッサ３０の負荷を低減することができる。また、ワークエリアを確保するためにＰＣＭデータを主メモリ６に退避や復帰させる場合、データの処理量や待機時間を抑制することができる。
【実施例４】
【００６５】
次に、本発明の実施例４に係るデータ処理装置及びそれを用いたデータ転送方法について、図面を参照して説明する。図１０はＤＭＡコントローラを示すブロック図である。本実施例では、ＤＭＡコントローラで転送されるＰＣＭデータの転送或いは切り捨て処理が行われる。
【００６６】
図１０に示すように、ＤＭＡコントローラ２ａには、内部バッファ４１、及びセレクタＳＥＬ１乃至６が設けられる。ここでは、Ｌｃｈ側のみ図示及び説明をしているがＲｃｈ側も同様な構成を有する。Ｒｃｈ側の図示及び説明は省略する。
【００６７】
ＤＭＡコントローラ２ａは、実施例１と同様にメディアプロセッサ３０に設けられ、ＰＣＭデータ転送のときに制御信号ＳＧ３乃至６に基づいてデータを切り捨てたり、そのまま転送したりする。
【００６８】
記憶手段としての内部バッファ４１は、データメモリ１１に格納されたＰＣＭデータをデータ転送するときに、このＰＣＭデータを、実施例２と同様な配置で一旦格納する。
【００６９】
データの格納は、例えば内部バッファ４１の最下位のアドレスにＰＣＭデータＬ（ｎ）の最上位８ｂｉｔの情報を有するＬ（ｎ）４が格納され、内部バッファ４１の２番目のアドレスに続く下位８ｂｉｔの情報を有するＬ（ｎ）３が格納され、・・・、内部バッファ４１の４番目のアドレスに最下位８ｂｉｔの情報を有するＬ（ｎ）１が格納され、内部バッファ４１の５番目のアドレスにＰＣＭデータＬ（ｎ＋１）の最上位８ｂｉｔの情報を有するＬ（ｎ＋１）４が格納され、・・・、内部バッファ４１の８番目のアドレスに最下位８ｂｉｔの情報を有するＬ（ｎ＋１）１が格納される。実施例２と同様に図示していないが、Ｒｃｈ  ＰＣＭデータも格納される。
【００７０】
セレクタＳＥＬ５は、“１６”のデータ、“２４”のデータ、“３２”のデータが入力され、制御信号ＳＧ３に基づいて、いずれか１つが選択され制御信号ＳＧ４として出力される。セレクタＳＥＬ６は、“１６”のデータ、“２４”のデータ、“３２”のデータが入力され、制御信号ＳＧ３に基づいて、いずれか１つが選択され制御信号ＳＧ５として出力される。
【００７１】
セレクタＳＥＬ１は、内部バッファ４１に格納されるＬ（ｎ）２の情報と“０”（ゼロ）のデータが入力され、制御信号５に基づいて、いずれかを選択出力する。セレクタＳＥＬ３は、内部バッファ４１に格納されるＬ（ｎ＋１）２の情報と“０”（ゼロ）のデータが入力され、制御信号５に基づいて、いずれかを選択出力する。セレクタＳＥＬ２は、内部バッファ４１に格納されるＬ（ｎ）１の情報と“０”（ゼロ）のデータが入力され、制御信号４に基づいて、いずれかを選択出力する。セレクタＳＥＬ４は、内部バッファ４１に格納されるＬ（ｎ＋１）１の情報と“０”（ゼロ）のデータが入力され、制御信号４に基づいて、いずれかを選択出力する。
【００７２】
ここで、制御信号ＳＧ４及びＳＧ５が“３２”のデータの場合には、セレクタＳＥＬ２、セレクタＳＥＬ４は制御信号ＳＧ４により各々Ｌ（ｎ）１、Ｌ（ｎ＋１）１の方を選択、出力する。またセレクタＳＥＬ５、セレクタＳＥＬ６は制御信号ＳＧ５により各々Ｌ（ｎ）２、Ｌ（ｎ＋１）２の入力の方を選択、出力する。これにより内部バッファ４１に格納されるＰＣＭデータ（３２ｂｉｔのデータ）はそのまま転送される。
【００７３】
制御信号ＳＧ４及びＳＧ５が“２４”のデータの場合には、セレクタＳＥＬ２、セレクタＳＥＬ４は制御信号ＳＧ４により“０” の入力の方を選択、出力する。またセレクタＳＥＬ５、セレクタＳＥＬ６は制御信号ＳＧ５により各々Ｌ（ｎ）２、Ｌ（ｎ＋１）２の入力の方を選択、出力する。これにより内部バッファ４１に格納されるＰＣＭデータの内、Ｌ（ｎ）１及びＬ（ｎ＋１）１の情報が斬り捨てられ、上位２４ｂｉｔ分の情報だけが転送される。
【００７４】
制御信号ＳＧ４及びＳＧ５が“１６”のデータの場合には、セレクタＳＥＬ２、セレクタＳＥＬ４は制御信号ＳＧ４により、またセレクタＳＥＬ５、セレクタＳＥＬ６は制御信号ＳＧ５によりいずれも“０” の入力の方を選択、出力する。これにより内部バッファ４１に格納されるＰＣＭデータの内、Ｌ（ｎ）２、Ｌ（ｎ）１、Ｌ（ｎ＋１）２、及びＬ（ｎ＋１）１の情報が斬り捨てられ、上位１６ｂｉｔ分の情報だけが転送される。
【００７５】
上述したように、本実施例のデータ処理装置及びそれを用いたデータ転送方法では、プロセッサコア１、ＤＭＡコントローラ２ａ、Ｄ／Ａコンバータ３、Ａ／Ｄコンバータ４、インターフェース５、主メモリ６、ローカルバス７、及びグローバルバス８が設けられる。プロセッサコア１には、ＰＣＭデータを格納するデータメモリ１１が設けられる。ＤＭＡコントローラ２ａには、内部バッファ４１、及びセレクタＳＥＬ１乃至６が設けられる。内部バッファ４１は、データメモリ１１から転送されるＰＣＭデータを一旦格納する。内部バッファ４１に格納されたＰＣＭデータは、読み出されてデータ転送される際に、ＤＭＡコントローラ２ａに基づいてデータが切り捨てたり、そのまま転送されたりする。
【００７６】
このため、別個に連続的にデータメモリ１１に格納されているＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータを主メモリ６に転送する場合、連続した領域を単位として転送せずに、一旦内部バッファ４１にデータを格納し、データ転送時に適宜データの切り捨て処理を行っているので、マルチプレクス或いはデマルチプレクス処理のためのメディアプロセッサ３０の負荷を低減することができる。また、ワークエリアを確保するためにＰＣＭデータを主メモリ６に退避や復帰させる場合、データの処理量や待機時間を抑制することができる。
【００７７】
本発明は、上記実施例に限定されるものではなく、発明の趣旨を逸脱しない範囲で、種々、変更してもよい。
【００７８】
例えば、実施例では、記憶手段としてのデータメモリと主メモリの間でＰＣＭデータ転送を行っているが、記憶手段としてのバッファやレジスタでのＰＣＭデータ転送に適用してもよい。
【００７９】
本発明は、以下の付記に記載されているような構成が考えられる。  
（付記１）  ローカルバスに接続され、ＰＣＭデータを格納するデータメモリと、グローバルバスに接続される主メモリと、ＰＣＭデータ転送のときのアドレス情報を生成するアドレス生成回路を有し、前記ローカルバスと前記グローバルバスに接続され、前記データメモリに格納されたＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記主メモリにデータ転送する際に、前記アドレス生成回路のアドレス情報に基づいて、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記主メモリに格納させ、前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を前記主メモリにデータ転送する際に、前記アドレス生成回路のアドレス情報に基づいて、前記主メモリの飛ばされた隙間のアドレスに前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を格納させるＤＭＡコントローラとを具備するデータ処理装置。
【００８０】
（付記２）  ローカルバスに接続され、ＰＣＭデータを格納するデータメモリと、グローバルバスに接続される主メモリと、ＰＣＭデータ転送のときのアドレス情報を生成するアドレス生成回路を有し、前記ローカルバスと前記グローバルバスに接続され、前記データメモリに格納されたＬｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記主メモリにデータ転送する際に、前記アドレス生成回路のアドレス情報に基づいて、データの切り捨てを行い、アドレスを飛ばして前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの一方を前記主メモリに格納させ、前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を前記主メモリにデータ転送する際に、前記アドレス生成回路のアドレス情報に基づいて、データの切り捨てを行い、前記主メモリの飛ばされた隙間のアドレスに前記Ｌｃｈ  ＰＣＭデータ及びＲｃｈ  ＰＣＭデータの他方を格納させるＤＭＡコントローラとを具備するデータ処理装置。
【図面の簡単な説明】
【００８１】
【図１】本発明の実施例１に係るプロセッサモジュールを示すブロック図。
【図２】本発明の実施例１に係るＬｃｈ  ＰＣＭデータ転送を示す図。
【図３】本発明の実施例１に係るＲｃｈ  ＰＣＭデータ転送を示す図。
【図４】本発明の実施例２に係るアドレス生成回路を示すブロック図。
【図５】本発明の実施例２に係るＬｃｈ  ＰＣＭデータ転送を示す図。
【図６】本発明の実施例２に係るＲｃｈ  ＰＣＭデータ転送を示す図。
【図７】本発明の実施例２に係る１６ｂｉｔ×３ｃｈの場合のアドレス生成回路を示すブロック図。
【図８】本発明の実施例２に係る３２ｂｉｔ×２ｃｈの場合のアドレス生成回路を示すブロック図。
【図９】本発明の実施例３に係るアドレス生成回路を示すブロック図。
【図１０】本発明の実施例４に係るＤＭＡコントローラを示すブロック図。
【符号の説明】
【００８２】
１  プロセッサコア
２、２ａ  ＤＭＡコントローラ
３  Ｄ／Ａコンバータ
４  Ａ／Ｄコンバータ
５  インターフェース
６  主メモリ
７  ローカルバス
８  グローバルバス
１１  データメモリ
１２  アドレス生成回路
１３  アドレスレジスタ
１４  加算器
２１  スピーカ
２２  マイク
３０  メディアプロセッサ
３１  他のメディアプロセッサ
４１  内部バッファ
ＳＥＬ１〜６  セレクタ
ＳＧ１〜６  制御信号
ＳＷ１、ＳＷ２  スイッチ
【図１】
2009116685.tif 000003
【図２】
2009116685.tif 000004
【図３】
2009116685.tif 000005
【図４】
2009116685.tif 000006
【図５】
2009116685.tif 000007
【図６】
2009116685.tif 000008
【図７】
2009116685.tif 000009
【図８】
2009116685.tif 000010
【図９】
2009116685.tif 000011
【図１０】
2009116685.tif 000012