(57)【要約】【課題】  チャネル分割処理の際に発生するレイテンシを削減して効率良くチャネル分割処理を実行し得る。【解決手段】  データ処理装置１１は、チャネル分割回路１２０、バス２１１、メモリコントローラ１１３およびメモリ１１５を有する。チャネル分割回路１２０は、マルチチャネルデータのうちの第１チャネルデータのみを１周期遅延させて第１遅延チャネルデータを出力する第１遅延回路と、マルチチャネルデータのうちの第２チャネルデータのみを１周期遅延させて第２遅延チャネルデータを出力する第２遅延回路と、第１チャネルデータと第１遅延チャネルデータとを結合して得られる第１結合データを複数周期に亘って記憶するとともに、第２チャネルデータと第２遅延回路の出力とを結合して得られる第２結合データを複数周期に亘って記憶する。チャネル分割回路１２０は、第１チャネルデータ群および第２チャネルデータ群を選択的にバス２１１に出力する。【選択図】    図３
2008299969.tif 000002
【特許請求の範囲】
【請求項１】
マルチチャネルデータを第１チャネルデータ群と第２チャネルデータ群とに分割してバスに出力するデータ処理装置であって、
チャネル分割回路と、
第１チャネルデータと第２チャネルデータとの組を所定周期毎に含むマルチチャネルデータが格納されているメモリと、
前記メモリから前記マルチチャネルデータを前記所定周期毎に順次読み出し、当該読み出されたマルチチャネルデータを前記バスを介して前記チャネル分割回路に転送するメモリコントローラと、
を有しており、
前記チャネル分割回路は、
前記メモリコントローラにより転送されたマルチチャネルデータのうちの第１チャネルデータのみを前記所定周期だけ遅延させて第１遅延チャネルデータを出力する第１遅延回路と、
前記メモリコントローラから転送されたマルチチャネルデータのうちの第２チャネルデータのみを前記所定周期だけ遅延させて第２遅延チャネルデータを出力する第２遅延回路と、
前記第１チャネルデータと前記第１遅延チャネルデータとを結合して得られる第１結合データを前記所定周期の複数に亘って記憶するとともに、前記第２チャネルデータと前記第２遅延回路の出力とを結合して得られる第２結合データを前記所定周期の複数に亘って記憶するチャネルデータ保持回路と、
前記チャネルデータ保持回路から第１チャネルデータ群および第２チャネルデータ群を選択的に読み出し前記バスに出力する選択出力回路と、
を含むことを特徴とするデータ処理装置。
【請求項２】
請求項１記載のデータ処理装置であって、前記選択出力回路は、前記第１チャネルデータ群および前記第２チャネルデータ群を前記バスを介して前記メモリコントローラに転送し、前記メモリコントローラは、前記選択出力回路から転送された第１チャネルデータ群および第２チャネルデータ群をそれぞれ前記メモリの互いに異なる記憶領域に格納することを特徴とするデータ処理装置。
【請求項３】
請求項１または２記載のデータ処理装置であって、前記第１チャネルデータおよび前記第２チャネルデータは同一のワード長を有することを特徴とするデータ処理装置。
【請求項４】
請求項１から３のうちのいずれか１項に記載のデータ処理装置であって、前記チャネル分割回路は、前記マルチチャネルデータの転送の際並びに前記第１チャネルデータ群および前記第２チャネルデータ群の出力の際に前記バスについてのバスマスタとして動作し、前記メモリコントローラはバススレーブとして動作することを特徴とするデータ処理装置。
【請求項５】
請求項４記載のデータ処理装置であって、前記チャネル分割回路は、前記メモリコントローラとの間でバースト転送を実行するデータ転送制御部を含むことを特徴とするデータ処理装置。
【請求項６】
請求項５記載のデータ処理装置であって、前記データ転送制御部は、ＤＭＡコントローラ（ダイレクト・メモリ・アクセス・コントローラ）であることを特徴とするデータ処理装置。
【請求項７】
請求項１から６のうちのいずれか１項に記載のデータ処理装置であって、前記プロセッサ、前記チャネル分割回路、前記メモリコントローラおよび前記バスは、単一の半導体集積回路に組み込まれていることを特徴とするデータ処理装置。
【請求項８】
マルチチャネルデータを第１チャネルデータ群と第２チャネルデータ群とに分割してバスに出力するデータ処理装置であって、
チャネル分割回路と、
第１チャネルデータと第２チャネルデータとの組を所定周期毎に含むマルチチャネルデータが格納されているメモリと、
前記メモリから前記マルチチャネルデータを前記所定周期毎に順次読み出し、当該読み出されたマルチチャネルデータを前記バスを介して前記チャネル分割回路に転送するメモリコントローラと、
を有しており、
前記チャネル分割回路は、
前記メモリコントローラから転送されたマルチチャネルデータを前記所定周期だけ遅延させて第１遅延マルチチャネルデータを出力する第１遅延回路と、
前記第１遅延マルチチャネルデータを前記所定周期だけ遅延させて第２遅延マルチチャネルデータを出力する第２遅延回路と、
前記マルチチャネルデータのうちの第１チャネルデータと前記第１遅延マルチチャネルデータのうちの第１チャネルデータとを結合して得られる第１チャネルデータ群と、前記第１遅延マルチチャネルデータのうちの第２チャネルデータと前記第２遅延マルチチャネルデータのうちの第２チャネルデータとを結合して得られる第２チャネルデータ群とを交互に選択し前記バスに出力する選択出力回路と、
を含むことを特徴とするデータ処理装置。
【請求項９】
請求項８記載のデータ処理装置であって、前記選択出力回路は、前記第１チャネルデータ群および前記第２チャネルデータ群を前記バスを介して前記メモリコントローラに転送し、前記メモリコントローラは、前記選択出力回路から転送された第１チャネルデータ群および第２チャネルデータ群をそれぞれ前記メモリの互いに異なる記憶領域に格納することを特徴とするデータ処理装置。
【請求項１０】
請求項８または９記載のデータ処理装置であって、前記第１チャネルデータおよび前記第２チャネルデータは同一のワード長を有することを特徴とするデータ処理装置。
【請求項１１】
請求項８から１０のうちのいずれか１項に記載のデータ処理装置であって、前記チャネル分割回路は、前記マルチチャネルデータの転送の際並びに前記第１チャネルデータ群および前記第２チャネルデータ群の出力の際に前記バスについてのバスマスタとして動作し、前記メモリコントローラはバススレーブとして動作することを特徴とするデータ処理装置。
【請求項１２】
請求項８から１１のうちのいずれか１項に記載のデータ処理装置であって、前記プロセッサ、前記チャネル分割回路、前記メモリコントローラおよび前記バスは、単一の半導体集積回路に組み込まれていることを特徴とするデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステレオオーディオ信号などのマルチチャネル信号を複数のチャネル信号に分割する技術に関する。
【背景技術】
【０００２】
ＣＤ（Compact Disk）などの光ディスクに記録されるオーディオ信号として、Ｌチャネル信号（Left channel signal）とＲチャネル信号（Right channel signal）とからなるステレオオーディオ信号が記録される場合、これらＬチャネル信号とＲチャネル信号とが混在して記録されることがある。Ｒチャネル信号とＬチャネル信号に個別に音声処理を施すには、光ディスクから読み出されたステレオオーディオ信号をＬチャネル信号とＲチャネル信号とに分割しＲＡＭ（Random Access Memory）などのメモリに格納する処理（以下、「チャネル分割処理」と呼ぶ。）が必要である。この種のチャネル分割処理に関する従来技術は、たとえば、特許文献１（特開平７−２１９０８０号公報）に開示されている。
【０００３】
図１は、チャネル分割処理を実行する従来のデータ処理装置１０の概略構成を示すブロック図である。データ処理装置１０は、集積回路である半導体回路１００、ＲＯＭ（Read Only Memory）１０４およびＲＡＭ（Random Access Memory）１０５からなり、半導体回路１００は、ＣＰＵなどのプロセッサ１０１と、ＲＯＭ１０４に接続された第１メモリコントローラ１０２と、ＲＡＭ１０５に接続された第２メモリコントローラ１０３と、内部バス２０１とを有している。プロセッサ１０１は、内部バス２０１の使用権を司るバスマスタであり、第１メモリコントローラ１０２および第２メモリコントローラ１０３はバススレーブである。ＲＯＭ１０４は、プロセッサ１０１で実行されるべき各種プログラムを記録しており、プロセッサ１０１は、第１メモリコントローラ１０２を介してチャネル分割用の命令プログラムをＲＯＭ１０４からロードしこれを実行できる。ＲＡＭ１０５には、光ディスクから読み出されたステレオデータが格納されている。
【０００４】
図２は、チャネル分割処理の手順を説明するための概略図である。図２に示されるように、ＲＡＭ１０５に記録されているステレオデータは、上位１６ビットのＲチャネルデータＲｉと下位１６ビットのＬチャネルデータＬｉとの組からなる３２ビットデータ｛Ｒｉ，Ｌｉ｝（ｉは０〜１０２３）を周期的に含む。図１のプロセッサ１０１は、先ず、チャネル分割用の命令プログラムを第１メモリコントローラ１０２を介してＲＯＭ１０４からロードしこれを実行する。次いで、プロセッサ１０１は、当該命令プログラムに従って第２メモリコントローラ１０３に読み出し命令を発して当該第２メモリコントローラ１０３をしてＲＡＭ１０５から３２ビットデータ｛Ｒｉ，Ｌｉ｝を順次読み出させ、且つ当該読み出された３２ビットデータ｛Ｒｉ，Ｌｉ｝を内部バス２０１を介してプロセッサ１０１に転送させる。プロセッサ１０１は、当該転送された３２ビットデータ｛Ｒｉ，Ｌｉ｝をＲチャネルデータＲｉとＬチャネルデータＬｉとに分割する。プロセッサ１０１は、さらにＲチャネルデータＲｉとＬチャネルデータＬｉとをそれぞれ内部バス２０１を介して第２メモリコントローラ１０３に転送するとともに、当該第２メモリコントローラ１０３に書き込み命令を発する。第２メモリコントローラ１０３は、当該書き込み命令に従い、プロセッサ１０１から転送されたＲチャネルデータＲｉとＬチャネルデータＬｉとをそれぞれＲＡＭ１０５の指定領域に格納する。結果として、図２に示される通り、ＲチャネルデータＲ０〜Ｒ１０２３のみからなるＲチャネルデータ群と、ＬチャネルデータＬ０〜Ｌ１０２３のみからなるＬチャネルデータ群とがＲＡＭ１０５に格納される。
【特許文献１】特開平７−２１９０８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のチャネル分割処理では、プロセッサ１０１の処理負荷が大きく且つ比較的長い処理時間を要するため、チャネル分割処理を実行している間、プロセッサ１０１はチャネル分割処理以外の処理をほとんど実行できない。特に、プロセッサ１０１が第２メモリコントローラ１０３を介してＲＡＭ１０５からステレオデータを読み出す際並びにＲＡＭ１０５にデータを書き込む際に発生する待ち時間（レイテンシ：latency）が大きく、これが半導体回路１００を含むシステム全体の性能を低下させるという問題がある。
【０００６】
上記に鑑みて本発明の目的は、チャネル分割処理の際に発生するレイテンシを削減して効率良くチャネル分割処理を実行し得るデータ処理装置を提供することである。
【課題を解決するための手段】
【０００７】
前記目的を達成すべく、本発明に係る第１のデータ処理装置は、マルチチャネルデータを第１チャネルデータ群と第２チャネルデータ群とに分割してバスに出力するデータ処理装置であって、チャネル分割回路と、第１チャネルデータと第２チャネルデータとの組を所定周期毎に含むマルチチャネルデータが格納されているメモリと、前記メモリから前記マルチチャネルデータを前記所定周期毎に順次読み出し、当該読み出されたマルチチャネルデータを前記バスを介して前記チャネル分割回路に転送するメモリコントローラと、を有しており、前記チャネル分割回路は、前記メモリコントローラにより転送されたマルチチャネルデータのうちの第１チャネルデータのみを前記所定周期だけ遅延させて第１遅延チャネルデータを出力する第１遅延回路と、前記メモリコントローラから転送されたマルチチャネルデータのうちの第２チャネルデータのみを前記所定周期だけ遅延させて第２遅延チャネルデータを出力する第２遅延回路と、前記第１チャネルデータと前記第１遅延チャネルデータとを結合して得られる第１結合データを前記所定周期の複数に亘って記憶するとともに、前記第２チャネルデータと前記第２遅延回路の出力とを結合して得られる第２結合データを前記所定周期の複数に亘って記憶するチャネルデータ保持回路と、前記チャネルデータ保持回路から第１チャネルデータ群および第２チャネルデータ群を選択的に読み出し前記バスに出力する選択出力回路と、を含むことを特徴とする。
【０００８】
本発明に係る第２のデータ処理装置は、マルチチャネルデータを第１チャネルデータ群と第２チャネルデータ群とに分割してバスに出力するデータ処理装置であって、チャネル分割回路と、第１チャネルデータと第２チャネルデータとの組を所定周期毎に含むマルチチャネルデータが格納されているメモリと、前記メモリから前記マルチチャネルデータを前記所定周期毎に順次読み出し、当該読み出されたマルチチャネルデータを前記バスを介して前記チャネル分割回路に転送するメモリコントローラと、を有しており、前記チャネル分割回路は、前記メモリコントローラから転送されたマルチチャネルデータを前記所定周期だけ遅延させて第１遅延マルチチャネルデータを出力する第１遅延回路と、前記第１遅延マルチチャネルデータを前記所定周期だけ遅延させて第２遅延マルチチャネルデータを出力する第２遅延回路と、前記マルチチャネルデータのうちの第１チャネルデータと前記第１遅延マルチチャネルデータのうちの第１チャネルデータとを結合して得られる第１チャネルデータ群と、前記第１遅延マルチチャネルデータのうちの第２チャネルデータと前記第２遅延マルチチャネルデータのうちの第２チャネルデータとを結合して得られる第２チャネルデータ群とを交互に選択し前記バスに出力する選択出力回路と、を含むことを特徴とする。
【発明の効果】
【０００９】
本発明に係る第１のデータ処理装置のチャネル分割回路においては、第１遅延回路が、メモリコントローラから転送されたマルチチャネルデータのうちの第１チャネルデータのみを１周期遅延させて第１遅延チャネルデータを生成し、これと並行して、第２遅延回路が、前記メモリコントローラから転送されたマルチチャネルデータのうちの第２チャネルデータのみを１周期遅延させて第２遅延チャネルデータを生成する。また、チャネルデータ保持回路は、前記第１チャネルデータと前記第１遅延チャネルデータとを結合して得られる第１結合データを複数周期に亘って記憶し、これと並行して、前記第２チャネルデータと前記第２遅延回路の出力とを結合して得られる第２結合データを複数周期に亘って記憶する。そして、選択出力回路は、チャネルデータ保持回路から第１チャネルデータ群および第２チャネルデータ群を選択的に読み出しバスに出力する。このようなチャネル分割回路は、従来のチャネル分割処理と比べて、チャネル分割処理の際に生ずるレイテンシを短縮化できるので、システム全体の処理能力の向上を可能にするものである。
【００１０】
本発明に係る第２のデータ処理装置のチャネル分割回路においては、第１遅延回路が、メモリコントローラから転送されたマルチチャネルデータを１周期遅延させて第１遅延マルチチャネルデータを生成し、第２遅延回路がさらに第１遅延マルチチャネルデータを１周期遅延させて第２遅延マルチチャネルデータを生成する。また、マルチチャネルデータのうちの第１チャネルデータと第１遅延マルチチャネルデータのうちの第１チャネルデータとを結合して第１チャネルデータ群が生成され、第１遅延マルチチャネルデータのうちの第２チャネルデータと第２遅延マルチチャネルデータのうちの第２チャネルデータとを結合して第２チャネルデータ群が生成される。そして、選択出力回路は、これら第１チャネルデータ群と第２チャネルデータ群とを交互に選択しバスに出力する。このようなチャネル分割回路も、従来のチャネル分割処理と比べると、チャネル分割処理の際に生ずるレイテンシを短縮化できるので、システム全体の処理能力の向上を可能にするものである。
【発明を実施するための最良の形態】
【００１１】
以下、本発明に係る種々の実施例について説明する。
【００１２】
図３は、本発明の実施例に係るデータ処理装置１１の概略構成を示すブロック図である。データ処理装置１１は、集積回路である半導体回路１１０、ＲＯＭ（Read Only Memory）１１４およびＲＡＭ（Random Access Memory）１１５からなり、半導体回路１１０は、ＣＰＵなどのプロセッサ１１１と、チャネル分割回路１２０と、ＲＯＭ１１４に接続された第１メモリコントローラ１１２と、ＲＡＭ１１５に接続された第２メモリコントローラ１１３と、内部バス２１１とを有している。プロセッサ１１１は内部バス２１１の使用権を司るバスマスタである。また、チャネル分割回路１２０は、バスマスタおよびバススレーブの双方の機能を有しており、プロセッサ１１１がバスマスタであるときはチャネル分割回路１２０はバススレーブとして動作する。第１メモリコントローラ１１２および第２メモリコントローラ１１３は常にバススレーブである。ＲＯＭ１１４は、プロセッサ１１１で実行されるべき各種プログラムを記録しており、プロセッサ１１１は、第１メモリコントローラ１１２を介してチャネル分割用の命令プログラムをＲＯＭ１１４からロードしこれを実行できる。ＲＡＭ１１５には、光ディスクから読み出されたステレオデータが格納されている。
【００１３】
図４は、本発明の第１の実施例に係るチャネル分割回路１２０の概略構成を示す図である。図４のチャネル分割回路１２０は、内部バス２１１に接続されたデータ転送制御部３４８を有している。データ転送制御部３４８は、バースト転送機能を持つＤＭＡコントローラであることが望ましい。また、データ転送制御部３４８は、ＲＡＭ１１５から転送された３２ビットＲＤ［３１：０］からなるステレオデータ（マルチチャネルデータ）３００を受信する。
【００１４】
第１遅延回路３０１は、ステレオデータ３００のうちの上位１６ビットＲＤ［３１：１６］のＲチャネルデータ３０４をラッチし、第２遅延回路３０２は、当該ステレオデータ３００のうちの下位１６ビットＲＤ［１５：０］のＬチャネルデータ３０６をラッチする。第１遅延回路３０１および第２遅延回路３０２は、それぞれ、クロックジェネレータ（図示せず）から供給された動作クロックＣＬＫに同期して動作し、動作クロックＣＬＫの所定サイクル数に相当する時間だけ入力信号を遅延させる。本実施例では、ステレオデータ３００は図２に示したようなフォーマットを有することとする。このフォーマットによれば、ステレオデータ３００は、上位１６ビットのＲチャネルデータ（第１チャネルデータ）Ｒｉと下位１６ビットのＬチャネルデータ（第２チャネルデータ）Ｌｉとの組｛Ｒｉ，Ｌｉ｝が周期的に配列して構成されている。第１遅延回路３０１および第２遅延回路３０２の各々は、チャネルデータの組｛Ｒｉ，Ｌｉ｝のビット長（＝３２ビット）に相当する所定周期だけ入力データを遅延させる機能を有する。
【００１５】
第１遅延回路３０１から出力された１６ビットの遅延Ｒチャネルデータ３０３と、ステレオデータ３００から分岐した１６ビットのＲチャネルデータ３０４とは結合して３２ビットの第１結合データ３０７を構成する。Ｒチャネルデータ保持回路３０９は、端子Ｄに入力された第１結合データ３０７の１６周期分を合計３２×１６ビットの容量を持つ記憶領域Ｍ０〜Ｍ１５に記憶する機能を有する。より具体的には、プロセッサ１１１から４ビットの第１選択制御信号３４３がＲチャネルデータ保持回路３０９の端子ＳＥＬに供給されている。Ｒチャネルデータ保持回路３０９は、記憶領域Ｍ０〜Ｍ１５のうち第１選択制御信号３４３の値で指定される記憶領域Ｍｉ（ｉは０〜１５のいずれか）に入力データ３０７を記憶する。たとえば、第１選択制御信号３４３の値が「０」のときは、これに対応する記憶領域Ｍ０に入力データ３０７が格納され、第１選択制御信号３４３の値が「１」のときは、これに対応する記憶領域Ｍ１に入力データ３０７が格納される。これら記憶領域Ｍ０〜Ｍ１５にそれぞれ保持されているＲチャネルデータＲ０〜Ｒ１５は並列に選択出力回路３４５の端子Ｓ０〜Ｓ１５に出力される。
【００１６】
一方、第２遅延回路３０２から出力された１６ビットの遅延Ｌチャネルデータ３０５と、ステレオデータ３００から分岐した１６ビットのＬチャネルデータ３０６とは結合して３２ビットの第２結合データ３０８を構成する。Ｌチャネルデータ保持回路３１０は、端子Ｄに入力された第２結合データ３０８の１６周期分を３２×１６ビットの容量を持つ記憶領域Ｋ０〜Ｋ１５に記憶する機能を有する。より具体的には、プロセッサ１１１から４ビットの第２選択制御信号３４４がＬチャネルデータ保持回路３１０の端子ＳＥＬに供給されている。Ｌチャネルデータ保持回路３１０は、記憶領域Ｋ０〜Ｋ１５のうち第２選択制御信号３４４の値で指定される記憶領域Ｋｉ（ｉは０〜１５のいずれか）に入力データ３０８を記憶する。たとえば、第２選択制御信号３４４の値が「０」のときは、これに対応する記憶領域Ｋ０に入力データ３０８が格納され、第２選択制御信号３４４の値が「１」のときは、これに対応する記憶領域Ｋ１に入力データ３０８が格納される。これら記憶領域Ｋ０〜Ｋ１５にそれぞれ保持されているＬチャネルデータＬ０〜Ｌ１５は並列に選択出力回路３４５の端子Ｓ１６〜Ｓ３１に出力される。
【００１７】
選択出力回路３４５は、プロセッサ１１１からの５ビットの第３選択制御信号３４６の値で指定される端子Ｓｊ（ｊは０〜３１のいずれか）への入力データを選択し、当該選択された入力データを３２ビットＷＤ［３１：０］の書込データ３４７としてデータ転送制御部３４８に供給する。たとえば、第３選択制御信号３４６の値が「０」のときは、これに対応する端子Ｓ０への入力データが選択され、第３選択制御信号３４６の値が「１」のときは、これに対応する端子Ｓ１への入力データが選択される。データ転送制御部３４８は、当該書込データ３４７を内部バス２１１を介して第２メモリコントローラ１１３（図３）にバースト転送する。第２メモリコントローラ１１３は、チャネル分割回路１２０から転送されたＲチャネルデータ群とＬチャネルデータ群とをそれぞれＲＡＭ１１５の互いに異なる記憶領域に格納することとなる。
【００１８】
上記第１実施例に係るチャネル分割回路１２０の動作を図５〜図８を参照しつつ以下に詳細に説明する。図５（Ａ）〜（Ｃ）は、チャネル分割回路１２０の動作状態を概略的に示すタイミングチャートである。図６〜図８は、チャネル分割回路１２０内の各種データ信号および制御信号の状態を表すタイミングチャートであり、図６は、期間Ｐ３における信号状態を表し、図７は、期間Ｐ４における信号状態を表し、図８は、期間Ｐ５における信号状態を表している。
【００１９】
図５（Ａ），（Ｂ）に示されるように、最初の期間Ｐ１では、図３のプロセッサ１１１がバスマスタとして動作し、第１メモリコントローラ１１２がバススレーブとして動作する。このとき、図５（Ｃ）に示されるように、プロセッサ１１１は、第１メモリコントローラ１１２にチャネル分割用プログラムのリード命令を発する。第１メモリコントローラ１１２は、このリード命令に応じて、半導体回路１１０の外部に設けられたＲＯＭ１１４から当該プログラムを読み込み、当該プログラムを内部バス２１１を介してチャネル分割回路１２０に転送する。続く期間Ｐ２では、プロセッサ１１１はバスマスタとして動作し、ＲＯＭ１１４からロードしたプログラムに従い、バススレーブであるチャネル分割回路１２０に対してチャネル分割処理の開始を命令する。
【００２０】
次の期間Ｐ３では、チャネル分割回路１２０は、プロセッサ１１１からの命令に応じてバスマスタとして動作し、バススレーブである第２メモリコントローラ１１３に対してステレオデータ３００のリード命令を発する。第２メモリコントローラ１１３は、このリード命令に応じて、ステレオデータ３００を各周期毎に順次読み出し、当該読み出されたステレオデータ３００を内部バス２１１を介してチャネル分割回路１２０にバースト転送する。このとき、ステレオデータ３００は、ＲＡＭ１１５から３２ビット単位で１６回読み出され、バースト長１６のデータとしてチャネル分割回路１２０にバースト転送される。チャネル分割回路１２０は、第２メモリコントローラ１１３から受信したステレオデータ３００に対してチャネル分割処理を実行する。
【００２１】
この期間Ｐ３では、チャネルデータの組｛Ｒ０，Ｌ０｝，｛Ｒ１，Ｌ１｝，…，｛Ｒ１５，Ｌ１５｝が順次チャネル分割回路１２０のデータ転送制御部３４８（図４）に転送される。図６に示されるようにデータ転送制御部３４８は、時刻Ｔ１〜Ｔ１７の間に、チャネルデータの組｛Ｒ０，Ｌ０｝，｛Ｒ１，Ｌ１｝，…，｛Ｒ１５，Ｌ１５｝をステレオデータ３００として第１遅延回路３０１および第２遅延回路３０２に供給する。第１遅延回路３０１は、ステレオデータ３００から分岐した上位１６ビットデータ３０４の系列Ｒ０，Ｒ１，…，Ｒ１５を保持し、このデータ系列Ｒ０，Ｒ１，…，Ｒ１５を１周期遅延させた後に遅延Ｒチャネルデータ３０３の系列として出力する。Ｒチャネルデータ保持回路３０９の端子Ｄには第１結合データ３０７の系列｛Ｒ１，Ｒ０｝，｛Ｒ２，Ｒ１｝，…，｛Ｒ１６，Ｒ１５｝が順次入力されることとなる。Ｒチャネルデータ保持回路３０９は、これら第１結合データ３０７の系列｛Ｒ１，Ｒ０｝，｛Ｒ２，Ｒ１｝，…，｛Ｒ１６，Ｒ１５｝を１つ置きに保持する。具体的には、図６に示されるように、第１選択制御信号３４３の値「０」に応じて第１結合データ３０７の組｛Ｒ１，Ｒ０｝が記憶領域Ｍ０に保持され、第１選択制御信号３４３の値「１」に応じて第１結合データ３０７の組｛Ｒ３，Ｒ２｝が記憶領域Ｍ１に保持され、第１選択制御信号３４３の値「６」に応じて第１結合データ３０７の組｛Ｒ１３，Ｒ１２｝が記憶領域Ｍ６に保持され、第１選択制御信号３４３の値「７」に応じて第１結合データ３０７の組｛Ｒ１５，Ｒ１４｝が記憶領域Ｍ７に保持される。
【００２２】
一方、第２遅延回路３０２は、ステレオデータ３００から分岐した下位１６ビットデータ３０６の系列Ｌ０，Ｌ１，…，Ｌ１５を保持し、このデータ系列Ｌ０，Ｌ１，…，Ｌ１５を１周期遅延させた後に遅延Ｌチャネルデータ３０５の系列として出力する。Ｌチャネルデータ保持回路３１０の端子Ｄには第２結合データ３０８の系列｛Ｌ１，Ｌ０｝，｛Ｌ２，Ｌ１｝，…，｛Ｌ１６，Ｌ１５｝が順次入力されることとなる。Ｌチャネルデータ保持回路３１０は、これら第２結合データ３０８の組｛Ｌ１，Ｌ０｝，｛Ｌ２，Ｌ１｝，…，｛Ｌ１６，Ｌ１５｝を１つ置きに保持する。具体的には、図６に示されるように、第２選択制御信号３４４の値「０」に応じて第２結合データ３０８の組｛Ｌ１，Ｌ０｝が記憶領域Ｋ０に保持され、第２選択制御信号３４４の値「１」に応じて第２結合データ３０８の組｛Ｌ３，Ｌ２｝が記憶領域Ｋ１に保持され、第２選択制御信号３４４の値「６」に応じて第２結合データ３０８の組｛Ｌ１３，Ｌ１２｝が記憶領域Ｋ６に保持され、第２選択制御信号３４４の値「７」に応じて第２結合データ３０８の組｛Ｌ１５，Ｌ１４｝が記憶領域Ｋ７に保持される。
【００２３】
次の期間Ｐ４では、図５（Ａ），（Ｂ）に示されるようにチャネル分割回路１２０はバスマスタとして動作し、第２メモリコントローラ１１３はバススレーブとして動作する。チャネル分割回路１２０は、第２メモリコントローラ１１３に対してステレオデータ３００のリード命令を発するとともに、チャネル分割後の書込データをＲＡＭ１１５に記憶するためのライト命令を発する。第２メモリコントローラ１１３は、リード命令に応じて、ステレオデータ３００を各周期毎に順次読み出し、当該読み出されたステレオデータ３００を内部バス２１１を介してチャネル分割回路１２０にバースト転送する。このとき、ステレオデータ３００は、ＲＡＭ１１５から３２ビット単位で１６回読み出され、バースト長１６のデータとしてチャネル分割回路１２０にバースト転送される。一方、第２メモリコントローラ１１３は、ライト命令に応じて、チャネル分割回路１２０からバースト転送された書込データをＲＡＭ１１５に格納する。
【００２４】
この期間Ｐ４では、チャネル分割回路１２０の選択出力回路３４５は、図７に示されるように、第３選択制御信号３４６の値「０」〜「１５」に応じて、それぞれ、端子Ｓ０〜Ｓ１５への入力データ信号を順次選択し、当該選択されたデータ信号を書込データ３４７としてデータ転送制御部３４８に出力する。データ転送制御部３４８は、書込データ３４７をバースト長１６のデータとして第２メモリコントローラ１１３にバースト転送する。
【００２５】
これと並行して、チャネルデータの組｛Ｒ１６，Ｌ１６｝，｛Ｒ１７，Ｌ１７｝，…，｛Ｒ３１，Ｌ３１｝が順次チャネル分割回路１２０のデータ転送制御部３４８（図４）に転送される。図７に示されるように、データ転送制御部３４８は、時刻Ｔ１９〜Ｔ３５の間に、チャネルデータの組｛Ｒ１６，Ｌ１６｝，｛Ｒ１７，Ｌ１７｝，…，｛Ｒ３１，Ｌ３１｝をステレオデータ３００として第１遅延回路３０１および第２遅延回路３０２に供給する。第１遅延回路３０１は、ステレオデータ３００から分岐した上位１６ビットデータ３０４の系列Ｒ１６，Ｒ１７，…，Ｒ３１を保持し、このデータ系列Ｒ１６，Ｒ１７，…，Ｒ３１を１周期遅延させた後に遅延Ｒチャネルデータ３０３の系列として出力する。Ｒチャネルデータ保持回路３０９の端子Ｄには第１結合データ３０７の系列｛Ｒ１７，Ｒ１６｝，｛Ｒ１８，Ｒ１７｝，…，｛Ｒ３１，Ｒ３０｝が順次入力されることとなる。Ｒチャネルデータ保持回路３０９は、これら第１結合データ３０７の組｛Ｒ１７，Ｒ１６｝，｛Ｒ１８，Ｒ１７｝，…，｛Ｒ３１，Ｒ３０｝を１つ置きに保持する。具体的には、図７に示されるように、第１選択制御信号３４３の値「８」に応じて第１結合データ３０７の組｛Ｒ１７，Ｒ１６｝が記憶領域Ｍ８に保持され、第１選択制御信号３４３の値「９」に応じて第１結合データ３０７の組｛Ｒ１９，Ｒ１８｝が記憶領域Ｍ９に保持され、第１選択制御信号３４３の値「１４」に応じて第１結合データ３０７の組｛Ｒ２９，Ｒ２８｝が記憶領域Ｍ１４に保持され、第１選択制御信号３４３の値「１５」に応じて第１結合データ３０７の組｛Ｒ３１，Ｒ３０｝が記憶領域Ｍ１５に保持される。
【００２６】
一方、第２遅延回路３０２は、ステレオデータ３００から分岐した下位１６ビットデータ３０６の系列Ｌ１６，Ｌ１７，…，Ｌ３１を保持し、このデータ系列Ｌ１６，Ｌ１７，…，Ｌ３１を１周期遅延させた後に遅延Ｌチャネルデータ３０５の系列として出力する。Ｌチャネルデータ保持回路３１０の端子Ｄには第２結合データ３０８の系列｛Ｌ１７，Ｌ１６｝，｛Ｌ１８，Ｌ１７｝，…，｛Ｌ３１，Ｌ３０｝が順次入力されることとなる。Ｌチャネルデータ保持回路３１０は、これら第２結合データ３０８の組｛Ｌ１７，Ｌ１６｝，｛Ｌ１８，Ｌ１７｝，…，｛Ｌ３１，Ｌ３０｝を１つ置きに保持する。具体的には、図７に示されるように、第２選択制御信号３４４の値「８」に応じて第２結合データ３０８の組｛Ｌ１７，Ｌ１６｝が記憶領域Ｋ８に保持され、第２選択制御信号３４４の値「９」に応じて第２結合データ３０８の組｛Ｌ１９，Ｌ１８｝が記憶領域Ｋ９に保持され、第２選択制御信号３４４の値「１４」に応じて第２結合データ３０８の組｛Ｌ２９，Ｌ２８｝が記憶領域Ｋ１４に保持され、第２選択制御信号３４４の値「１５」に応じて第２結合データ３０８の組｛Ｌ３１，Ｌ３０｝が記憶領域Ｋ１５に保持される。
【００２７】
次の期間Ｐ５では、図５（Ａ），（Ｂ）に示されるようにチャネル分割回路１２０はバスマスタとして動作し、第２メモリコントローラ１１３はバススレーブとして動作する。チャネル分割回路１２０は、第２メモリコントローラ１１３に対してチャネル分割後の書込データをＲＡＭ１１５に記憶するためのライト命令を発する。第２メモリコントローラ１１３は、ライト命令に応じて、チャネル分割回路１２０からバースト転送された書込データをＲＡＭ１１５に格納する。
【００２８】
この期間Ｐ５では、チャネル分割回路１２０の選択出力回路３４５は、図８に示されるように、第３選択制御信号３４６の値「１６」〜「３１」に応じて、それぞれ、端子Ｓ１６〜Ｓ３１への入力データ信号を順次選択し、当該選択されたデータ信号を書込データ３４７としてデータ転送制御部３４８に出力する。データ転送制御部３４８は、書込データ３４７をバースト長１６のデータとして第２メモリコントローラ１１３にバースト転送する。その後、上記期間Ｐ３〜Ｐ５におけるチャネル分割処理と同様の処理が繰り返し実行される。
【００２９】
上記の通り、第１の実施例に係るチャネル分割処理では、バスアクセスを効率的に行うことにより、従来技術と比べてチャネル分割処理の際に発生するレイテンシを削減することができるので、チャネル分割処理の高速化やシステム全体の処理能力の向上が可能になる。特に、チャネルデータ群をまとめてバースト転送することにより、チャネル分割処理による内部バス２１１の占有率が低下するので、半導体回路１１０を含むシステム全体の処理能力を向上させることができる。
【００３０】
次に、本発明の第２実施例に係るチャネル分割回路について説明する。図９は、第２実施例に係るチャネル分割回路１２０の概略構成を示す図である。図９のチャネル分割回路１２０は、内部バス２１１に接続されたデータ転送制御部４４８を有している。データ転送制御部４４８は、ＲＡＭ１１５から転送された３２ビットＲＤ［３１：０］からなるステレオデータ（マルチチャネルデータ）４００を受信する。
【００３１】
第１遅延回路４０１は３２ビットのステレオデータ４００を保持し、第２遅延回路４０２は、第１遅延回路４０１の３２ビット出力を保持する。第１遅延回路４０１および第２遅延回路４０２は、それぞれ、クロックジェネレータ（図示せず）から供給された動作クロックＣＬＫに同期して動作し、動作クロックＣＬＫの所定サイクル数に相当する時間だけ入力信号を遅延させる。第２実施例では、第１実施例の場合と同様にステレオデータ４００は図２に示したようなフォーマットを有することとする。このフォーマットによれば、ステレオデータ４００は、上位１６ビットのＲチャネルデータ（第１チャネルデータ）Ｒｉと下位１６ビットのＬチャネルデータ（第２チャネルデータ）Ｌｉとの組｛Ｒｉ，Ｌｉ｝が周期的に配列して構成されている。第１遅延回路４０１および第２遅延回路４０２の各々は、チャネルデータの組｛Ｒｉ，Ｌｉ｝のビット長（＝３２ビット）に相当する１周期だけ入力データを遅延させる機能を有する。
【００３２】
第１遅延回路４０１の３２ビット出力から分岐した上位１６ビットの遅延Ｒチャネルデータ４０３と、ステレオデータ４００から分岐した上位１６ビットのＲチャネルデータ４０４とは結合して３２ビットの第１結合データ４０７を構成する。一方、第２遅延回路３０２の３２ビット出力から分岐した下位１６ビットの遅延Ｌチャネルデータ４０５と、第１遅延回路４０１の３２ビット出力から分岐した下位１６ビットの遅延Ｌチャネルデータ４０６とは結合して３２ビットの第２結合データ４０８を構成する。第１結合データ４０７は選択出力回路４０９の端子Ｄ０に入力され、第２結合データ４０８は選択出力回路４０９の端子Ｄ１に入力される。
【００３３】
選択出力回路４０９は、プロセッサ１１１からの１ビットの選択制御信号４１０の値で指定される端子Ｄｉ（ｉは０または１のいずれか）への入力データを選択し、当該選択された入力データを３２ビットＷＤ［３１：０］の書込データ４１１としてデータ転送制御部４４８に供給する。すなわち、選択制御信号４１０の値が「０」のときは、これに対応する端子Ｄ０への入力データが選択され、選択制御信号４１０の値が「１」のときは、これに対応する端子Ｄ１への入力データが選択される。データ転送制御部４４８は、当該書込データ４１１を内部バス２１１を介して第２メモリコントローラ１１３（図３）にバースト転送する。第２メモリコントローラ１１３は、チャネル分割回路１２０から転送されたＲチャネルデータ群とＬチャネルデータ群とをそれぞれＲＡＭ１１５の互いに異なる記憶領域に格納することとなる。
【００３４】
上記第２実施例に係るチャネル分割回路１２０の動作を図１０および図１１を参照しつつ以下に詳細に説明する。図１０（Ａ）〜（Ｃ）は、チャネル分割回路１２０の動作状態を概略的に示すタイミングチャートである。図１１は、チャネル分割回路１２０内の各種データ信号および制御信号の状態を表すタイミングチャートである。
【００３５】
図１０（Ａ），（Ｂ）に示されるように、最初の期間Ｐ１では、図３のプロセッサ１１１がバスマスタとして動作し、第１メモリコントローラ１１２がバススレーブとして動作する。このとき、図１０（Ｃ）に示されるように、プロセッサ１１１は、第１メモリコントローラ１１２にチャネル分割用プログラムのリード命令を発する。第１メモリコントローラ１１２は、このリード命令に応じて、半導体回路１１０の外部に設けられたＲＯＭ１１４から当該プログラムを読み込み、当該プログラムを内部バス２１１を介してチャネル分割回路１２０に転送する。続く期間Ｐ２では、プロセッサ１１１はバスマスタとして動作し、ＲＯＭ１１４からロードしたプログラムに従い、バススレーブであるチャネル分割回路１２０に対してチャネル分割処理の開始を命令する。
【００３６】
次の期間Ｐ３では、チャネル分割回路１２０は、プロセッサ１１１からの命令に応じてバスマスタとして動作し、バススレーブである第２メモリコントローラ１１３に対してステレオデータ３００のリード命令を発する。第２メモリコントローラ１１３は、このリード命令に応じて、ステレオデータ３００を各周期毎に順次読み出し、当該読み出されたステレオデータ３００を内部バス２１１を介してチャネル分割回路１２０に転送する。チャネル分割回路１２０は、第２メモリコントローラ１１３から受信したステレオデータ３００に対してチャネル分割処理を実行する。
【００３７】
この期間Ｐ３では、チャネルデータの最初の組｛Ｒ０，Ｌ０｝がチャネル分割回路１２０のデータ転送制御部４４８（図９）に転送される。図１１に示されるように、データ転送制御部４４８は、時刻Ｔ１〜Ｔ２の間に、チャネルデータの組｛Ｒ０，Ｌ０｝をステレオデータ４００として第１遅延回路３０１に供給する。第２遅延回路４０２は、第１遅延回路３０１の３２ビット出力をラッチする。
【００３８】
次の期間Ｐ４では、図１０（Ａ），（Ｂ）に示される通り、チャネル分割回路１２０はバスマスタとして動作し、第２メモリコントローラ１１３はバススレーブとして動作する。チャネル分割回路１２０は、第２メモリコントローラ１１３に対してステレオデータ３００のリード命令を発するとともに、チャネル分割後の書込データをＲＡＭ１１５に記憶するためのライト命令を発する。第２メモリコントローラ１１３は、リード命令に応じて、ステレオデータ３００を各周期毎に順次読み出し、当該読み出されたステレオデータ３００を内部バス２１１を介してチャネル分割回路１２０に転送する。一方、第２メモリコントローラ１１３は、ライト命令に応じて、チャネル分割回路１２０から転送された書込データをＲＡＭ１１５に格納する。
【００３９】
この期間Ｐ４では、選択出力回路４０９は、図１１に示されるように、選択制御信号４１０の値「０」に応じて端子Ｄ０に入力された第１結合データ４０７の組｛Ｒ１，Ｌ０｝を選択しこれを書込データ４１１としてデータ転送制御部４４８に供給する。データ転送制御部４４８は、３２ビットＷＤ［３１：０］の書込データ４１１を第２メモリコントローラ１１３に転送することとなる。これと並行して、次のチャネルデータの組｛Ｒ１，Ｌ１｝がチャネル分割回路１２０のデータ転送制御部４４８に転送される。図１１に示されるようにデータ転送制御部４４８は、時刻Ｔ３〜Ｔ４の間に、チャネルデータの組｛Ｒ１，Ｌ１｝をステレオデータ４００として第１遅延回路３０１に供給する。第１遅延回路３０１は、そのチャネルデータの組｛Ｒ１，Ｌ１｝をラッチし保持する。また、第２遅延回路４０２は、第１遅延回路３０１の３２ビット出力であるチャネルデータの組｛Ｒ０，Ｌ０｝をラッチし保持する。
【００４０】
次の期間Ｐ５では、図１０（Ａ），（Ｂ）に示される通り、チャネル分割回路１２０はバスマスタとして動作し、バススレーブである第２メモリコントローラ１１３にライト命令を発する。第２メモリコントローラ１１３は、このライト命令に応じて、チャネル分割回路１２０から転送された書込データをＲＡＭ１１５に格納する。図１１に示されるように、選択制御信号４１０の値「１」に応じて端子Ｄ１に入力された第２結合データ４０８の組｛Ｌ１，Ｌ０｝を選択しこれを書込データ４１１としてデータ転送制御部４４８に供給する。データ転送制御部４４８は、書込データ４１１を第２メモリコントローラ１１３に転送することとなる。その後、上記期間Ｐ３〜Ｐ５におけるチャネル分割処理と同様の処理が繰り返し実行される。
【００４１】
上記の通り、第２の実施例に係るチャネル分割処理では、バスアクセスを効率的に行うことにより、従来技術と比べてチャネル分割処理の際に発生するレイテンシを削減することができるので、チャネル分割処理の高速化やシステム全体の処理能力の向上が可能になる。
【図面の簡単な説明】
【００４２】
【図１】チャネル分割処理を実行する従来のデータ処理装置の概略構成を示すブロック図である。
【図２】チャネル分割処理の手順を説明するための概略図である。
【図３】本発明の実施例に係るデータ処理装置の概略構成を示すブロック図である。
【図４】本発明の第１の実施例に係るチャネル分割回路の概略構成を示す図である。
【図５】（Ａ）〜（Ｃ）は、チャネル分割回路の動作状態を概略的に示すタイミングチャートである。
【図６】チャネル分割回路内の各種データ信号および制御信号の状態を表すタイミングチャートである。
【図７】チャネル分割回路内の各種データ信号および制御信号の状態を表すタイミングチャートである。
【図８】チャネル分割回路内の各種データ信号および制御信号の状態を表すタイミングチャートである。
【図９】本発明の第２実施例に係るチャネル分割回路の概略構成を示す図である。
【図１０】（Ａ）〜（Ｃ）は、チャネル分割回路の動作状態を概略的に示すタイミングチャートである。
【図１１】チャネル分割回路内の各種データ信号および制御信号の状態を表すタイミングチャートである。
【符号の説明】
【００４３】
１０，１１  データ処理装置
１００，１１０  半導体回路
１０１，１１１  プロセッサ
１０２，１１２  第１メモリコントローラ
１０３，１１３  第２メモリコントローラ
１０４，１１４  ＲＯＭ
１０５，１１５  ＲＡＭ
２０１，２１１  内部バス
３００  ステレオデータ（マルチチャネルデータ）
３０１  第１遅延回路
３０２  第２遅延回路
３０９  Ｒチャネルデータ保持回路
３１０  Ｌチャネルデータ保持回路
３４５  選択出力回路
３４８  データ転送制御部
４０１  第１遅延回路
４０２  第２遅延回路
４０９  選択出力回路
４４８  データ転送制御部
【図１】
2008299969.tif 000003
【図２】
2008299969.tif 000004
【図３】
2008299969.tif 000005
【図４】
2008299969.tif 000006
【図５】
2008299969.tif 000007
【図６】
2008299969.tif 000008
【図７】
2008299969.tif 000009
【図８】
2008299969.tif 000010
【図９】
2008299969.tif 000011
【図１０】
2008299969.tif 000012
【図１１】
2008299969.tif 000013