(57)【特許請求の範囲】
【請求項１】
複数の転送要求を発行することが可能なマスタ装置と、上記転送要求に対する応答機能を含む複数のスレーブ装置が接続されるデータ転送装置であって、
マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、
上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、
マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を有し、
上記転送先セレクタは、
上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、
カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、
上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする
データ転送装置。
【請求項２】
上記所定値は０である
請求項１記載のデータ転送装置。
【請求項３】
上記マスタ装置は、上記複数のスレーブ装置からデータを読み出して転送する転送要求を発行する機能を有し、
上記データ転送装置のデータ転送監視部は、一の転送要求に応答して上記スレーブ装置から読み出されたデータが上記マスタ装置に転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する
請求項１または２記載のデータ転送装置。
【請求項４】
上記マスタ装置は、上記複数のスレーブ装置に対してデータを転送して書き込む転送要求を発行する機能を有し、
上記データ転送装置のデータ転送監視部は、一の転送要求に応答して書き込むべきデータが上記スレーブ装置に対して転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する
請求項１から３のいずれか一に記載のデータ転送装置。
【請求項５】
複数の転送要求を発行することが可能なマスタ装置と、
上記転送要求に対する応答機能を含む複数のスレーブ装置と、
上記マスタ装置と上記複数のスレーブ装置が接続されるデータ転送装置と、有し、
上記データ転送装置は、
マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、
上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、
マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を含み、
上記転送先セレクタは、
上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、
カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、
上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする
データ転送システム。
【請求項６】
上記所定値は０である
請求項５記載のデータ転送システム。
【請求項７】
上記マスタ装置は、上記複数のスレーブ装置からデータを読み出して転送する転送要求を発行する機能を有し、
上記データ転送装置のデータ転送監視部は、一の転送要求に応答して上記スレーブ装置から読み出されたデータが上記マスタ装置に転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する
請求項５または６記載のデータ転送システム。
【請求項８】
上記マスタ装置は、上記複数のスレーブ装置に対してデータを転送して書き込む転送要求を発行する機能を有し、
上記データ転送装置のデータ転送監視部は、一の転送要求に応答して書き込むべきデータが上記スレーブ装置に対して転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する
請求項５から７のいずれか一に記載のデータ転送システム。
【請求項９】
複数の転送要求を発行することが可能なマスタ装置と、
上記転送要求に対する応答機能を含み、データ保持部を有する複数のスレーブ装置と、
上記マスタ装置と上記複数のスレーブ装置が接続される第１および第２のデータ転送装置と、を有し、
上記マスタ装置は、
上記複数のスレーブ装置のデータ保持部からデータを読み出して転送する転送要求を発行する機能、および上記複数のスレーブ装置に対してデータを転送してデータ保持部に書き込む転送要求を発行する機能を含み、
上記第１および第２のデータ転送装置は、
マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、
上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、
マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を含み、
上記転送先セレクタは、
上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、
カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、
上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする
データ転送システム。
【請求項１０】
上記第１のデータ転送装置のデータ転送監視部は、一の転送要求に応答して上記スレーブ装置から読み出されたデータが上記マスタ装置に転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力し、
上記第２のデータ転送装置のデータ転送監視部は、一の転送要求に応答して書き込むべきデータが上記スレーブ装置に対して転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する
請求項９記載のデータ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の転送要求を出力することができるマスタ装置と、メモリ等の複数のスレーブ装置との間のデータ転送の保証を行うデータ転送装置およびデータ転送システムに関するものである。
【背景技術】
【０００２】
転送要求を出力するマスタ装置とスレーブ装置間でデータ転送する場合において、データ転送の順番を守る必要がある場合、一般的に、マスタ装置は、１つの転送要求を出力し、その転送終了後、次の転送要求を出力する、という手順を取る。
このような転送の場合、転送対象スレーブが複数存在しても、応答順序は保証されるが、データ転送効率を上げることが難しい。
【０００３】
そこで、データ転送効率を上げるために、転送要求を複数先行して出力する手法がある。
マスタ装置が複数のスレーブ装置に対して転送要求を先行して出力する装置（方法）としては、以下に示すような装置（方法）が知られている。
【０００４】
第１は、マスタ装置が、対象のスレーブ装置を意識して転送要求を区切って発行する装置（方法）である。
【０００５】
第２は、マスタ装置が、内部に十分なバッファを持ち、管理できる機能など、どんな応答順序でも問題なく動作できるように設計されている装置である。
【０００６】
第３は、転送要求順序を記憶でき、システムとして十分なデータバッファを持つ、外部ブリッジにより、応答順序の保証をする装置である（たとえば特許文献１，２参照）。
【０００７】
特許文献１には、内部にマスターキューとスレーブキューとを別々に持ち、マスターキュー管理部とスレーブキュー管理部により個別にキューの管理を行うバス制御装置が記載されている。
【０００８】
特許文献２には、マスタデバイスからの要求に基づいて、複数のスレーブデバイスへのアクセス制御を行うバスコントローラが記載されている。このバスコントローラは、マスタデバイスからのアクセス要求のアドレスの示すスレーブデバイスと、現在アクセスを行っているスレーブデバイスの一致を判断し、マスタデバイスからのアクセス要求に基づいてスレーブデバイスへアクセスを開始するタイミングを決定する。
【特許文献１】特開２００１−１７５５８８号公報
【特許文献２】特開２００１−１８８７４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところが、前述した第１および第２の装置では、対象のスレーブ装置を意識して転送要求を区切って発行する機能や、内部に十分なバッファを持ち、管理できる機能など、を持つように設計されていないマスタ装置においては、回路変更が必要になる。
【００１０】
また、第３の装置においては、内部にバッファを持つ構造となるため、転送データ量や対象スレーブ数により、バッファの規模が増大するという不利益がある。
【００１１】
特許文献１に記載されているバス制御装置においては、内部にマスターキュー、スレーブキューを有して、マスタ側、スレーブ側で別々にキュー管理を行う必要があり、制御の複雑化を招くという不利益がある。
【００１２】
特許文献２に記載されているバスコントローラにおいては、大規模なバッファなしにスレーブ装置へのアクセス制御を実現できるものの、具体的な制御は、アクセスフラグ、スレーブフラグをそれぞれ２段有しており、同一スレーブに対して、実質２つの転送要求までの処理しかできないという不利益がある。
【００１３】
本発明は、回路変更や大規模なバッファが不要で、簡単な制御により３つ以上の転送要求に対する処理をも実現することができるデータ転送装置およびデータ転送システムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明の第１の観点は、複数の転送要求を発行することが可能なマスタ装置と、上記転送要求に対する応答機能を含む複数のスレーブ装置が接続されるデータ転送装置であって、マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を有し、上記転送先セレクタは、上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする。
【００１５】
本発明の第２の観点のデータ転送システムは、複数の転送要求を発行することが可能なマスタ装置と、上記転送要求に対する応答機能を含む複数のスレーブ装置と、上記マスタ装置と上記複数のスレーブ装置が接続されるデータ転送装置と、有し、上記データ転送装置は、マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を含み、
上記転送先セレクタは、上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする。
【００１７】
好適には、上記マスタ装置は、上記複数のスレーブ装置からデータを読み出して転送する転送要求を発行する機能を有し、上記データ転送装置のデータ転送監視部は、一の転送要求に応答して上記スレーブ装置から読み出されたデータが上記マスタ装置に転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する。
【００１８】
好適には、上記マスタ装置は、上記複数のスレーブ装置に対してデータを転送して書き込む転送要求を発行する機能を有し、上記データ転送装置のデータ転送監視部は、一の転送要求に応答して書き込むべきデータが上記スレーブ装置に対して転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する。
【００１９】
本発明の第３の観点のデータ転送システムは、複数の転送要求を発行することが可能なマスタ装置と、上記転送要求に対する応答機能を含み、データ保持部を有する複数のスレーブ装置と、上記マスタ装置と上記複数のスレーブ装置が接続される第１および第２のデータ転送装置と、を有し、上記マスタ装置は、上記複数のスレーブ装置のデータ保持部からデータを読み出して転送する転送要求を発行する機能、および上記複数のスレーブ装置に対してデータを転送してデータ保持部に書き込む転送要求を発行する機能を含み、上記第１および第２のデータ転送装置は、マスタ装置からの転送要求に対するスレーブ装置からの応答信号の入力ごとにカウントアップまたはカウントダウンし、データ転送完了信号を入力するとカウントダウンまたはカウントアップする転送要求カウンタと、上記転送要求カウンタのカウント値および現在転送対象のスレーブ装置に関する情報に基づいて転送要求対象のスレーブ装置を判定して選択し、マスタ装置と選択したスレーブ装置とをデータ転送可能とする転送先セレクタと、マスタ装置による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号を上記転送要求カウンタに出力するデータ転送監視部と、を含み、上記転送先セレクタは、上記転送要求カウンタから現在のカウント値を取得し、カウント値が所定値のときは複数のスレーブ装置のいずれも選択可能で、カウント値が当該所定値以外のときは現在転送対象のスレーブ装置のみを選択し、当該カウント値が所定値以外のときに現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を受けると、当該転送要求の要求対象である当該他のスレーブ装置への転送を遮断し、上記現在転送対象のスレーブ装置とのデータ転送が完了し、データ転送完了信号により上記転送要求カウンタがカウントダウンまたはカウントアップしてカウント値が上記所定値になると、現在転送対象のスレーブ装置以外の他のスレーブ装置への転送要求を当該他のスレーブ装置に転送して、当該他のスレーブ装置と上記マスタ装置とのデータ転送を可能とする。
【００２０】
好適には、上記第１のデータ転送装置のデータ転送監視部は、一の転送要求に応答して上記スレーブ装置から読み出されたデータが上記マスタ装置に転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力し、上記第２のデータ転送装置のデータ転送監視部は、一の転送要求に応答して書き込むべきデータが上記スレーブ装置に対して転送されたことを確認して、上記データ転送完了信号を上記転送要求カウンタに出力する。
【発明の効果】
【００２１】
本発明によれば、転送要求順に応答が返ってくることを前提に設計されている機能ブロック（複数のスレーブへの転送を想定していない機能ブロック）を、回路を変更することなしに、複数スレーブに接続することができ、またその応答順序も保証される。
マスタ装置は、対象スレーブの応答性能を意識せず、転送要求の連続発行が行える。
このように、転送要求の連続発行が行えるので、スレーブ装置が転送要求順に応答する場合、同一スレーブ装置に対してのデータ転送効率を高めることができる。
また、本発明によれば、転送要求（リクエスト）信号のみの制御で実現しているので、内部に大きなバッファ等を持つ必要がなく、小規模回路で実現できる利点がある。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施形態を図面に関連付けて説明する。
【００２３】
＜第１実施形態＞
図１は、本発明の第１の実施形態に係るデータ転送システムの構成例を示す図である。
【００２４】
本データ転送システム１は、図１に示すように、マスタ装置２、複数(本実施形態では２)のスレーブ装置３−１，３−２、およびデータ転送装置(ブリッジ装置)４を有する。
【００２５】
マスタ装置２は、データ転送効率を上げるために複数の転送要求を出力することができ、異なる宛先（スレーブ装置）に対して転送要求ＲＥＱを出力する機能を有し、スレーブ装置３−１、またはスレーブ装置３−２から読み出した(リードした)データ（リードデータ）に対して処理を行う機能を有する。
すなわち、本第１の実施形態はリード系の構成例を示している。
【００２６】
マスタ装置２は、機能ブロック２１、およびＤＭＡ(Direct Memory Access)コントローラ（ＤＭＡＣ）２２を含む。
【００２７】
機能ブロック２１は、ＤＭＡＣ２２の転送要求により、データ転送装置４を介してスレーブ装置３−１または３−２のメモリからのリードデータに対して所定の処理を行う。
【００２８】
ＤＭＡＣ（Ｒ０）２２は、スレーブ装置３−１またはスレーブ装置３−２のメモリに格納されているデータのリードのためのリクエスト(要求)ＲＥＱとレスポンス(応答)ＡＣＫのためのトランザクション制御機能および機能ブロック２１へのデータ転送制御機能を有する。
【００２９】
スレーブ装置３−１は、メモリコントローラ３１−１、およびたとえばＤＲＡＭにより形成されるデータ保持部としてのメモリ３２−１を有する。
メモリコントローラ３１−１は、データ転送装置４の転送調停に従って転送されたトランザクション用制御信号であるデータ転送要求(リクエスト)に対する応答(レスポンス)のデータ転送装置４に対する転送制御、およびデータ転送装置４の転送調停に従って転送された各種コマンド（たとえばリードコマンド）に応じてメモリ３２−１へのアクセスを制御し、リードデータのデータ転送装置４に対する転送制御を行う。
【００３０】
スレーブ装置３−２は、メモリコントローラ３１−２、およびたとえばＤＲＡＭにより形成されるデータ保持部としてのメモリ３２−２を有する。
メモリコントローラ３１−２は、データ転送装置４の転送調停に従って転送されたトランザクション用制御信号であるデータ転送要求(リクエスト)に対する応答(レスポンス)のデータ転送装置４に対する転送制御、およびデータ転送装置４の転送調停に従って転送された各種コマンド（たとえばリードコマンド）に応じてメモリ３２−２へのアクセスを制御し、リードデータのデータ転送装置４に対する転送制御を行う。
【００３１】
なお、本実施形態において、スレーブ装置３−１，３−２におけるデータ保持部としてメモリを例に説明しているが、たとえばバッファ等のデータ保持機能を有するものであれば、本発明は適用可能である。
【００３２】
本実施形態においては、ＤＭＡＣ２２はマスタとして、メモリコントローラ３１−１，３１−２はスレーブとして動作する。また、図中の破線矢印は転送要求信号(スレーブ装置を指定する信号を含む)ＲＥＱと応答信号ＡＣＫの方向、実線矢印はデータの方向を表している。
【００３３】
データ転送装置４は、データ転送効率を上げるために複数の転送要求を出力することができるマスタ装置２が、異なる宛先、すなわち複数のスレーブ装置３−１，３−２に対して転送要求を出力した場合に、宛先ごとに転送要求を自動分割することで、データ転送の応答順序を保証する機能を有する。
【００３４】
データ転送装置４は、図１に示すように、転送要求カウンタ４１、転送先セレクタとしてのアドレスデコーダ・セレクタ４２、およびデータ転送監視部４３を有する。
【００３５】
転送要求カウンタ４１は、マスタ装置２のＤＭＡＣ２２からの転送要求ＲＥＱに対するスレーブ装置３−１またはスレーブ装置３−２からの応答信号ＡＣＫの入力ごとに＋１ずつカウントアップし、データ転送監視部４３からのデータ転送完了信号ＴＲＦＥを入力するとカウントダウンする。
【００３６】
転送先セレクタとしてのアドレスデコーダ・セレクタ４２は、転送要求カウンタ４１のカウント値および現在転送対象のスレーブ装置に関する情報に基づいて、転送要求対象のスレーブ装置を判定して選択し、マスタ装置２とスレーブ装置３−１またはスレーブ装置３−２を接続する。
アドレスデコーダ・セレクタ４２は、転送要求カウンタ４１から現在のカウント値を取得し、カウント値ＶＣＮＴが初期値と同様の、たとえば０(所定値)のときはスレーブ装置３−１，３−２のどちらでも選択可能、カウント値ＶＣＮＴが０以外のときは現在転送対象のスレーブ装置３−１またはスレーブ装置３−２のみが選択が可能になっている。
なお、アドレスデコーダとなっているのは、本実施形態のシステムでは、スレーブ装置の指定にアドレス信号の上位ビットを利用しているためである。
【００３７】
データ転送監視部４３は、マスタ装置２のＤＭＡＣ２２による転送要求に対するデータ転送の終了を監視し、終了を確認するとデータ転送完了信号ＴＲＦＥを転送要求カウンタ４１に出力する。
【００３８】
次に、第１の実施形態の動作を、図１から図９に関連に付けて説明する。
【００３９】
この例では、図１に示すように、マスタ装置２が、“ＲＥＱ・Ｓ１−１”、“ＲＥＱ・Ｓ１−２”、“ＲＥＱ・Ｓ１−３”、“ＲＥＱ・Ｓ２−１”の順で転送要求信号を出力している場合を例に説明する。“ＲＥＱ・Ｓ１”はスレーブ装置３−１への転送要求を、“ＲＥＱ・Ｓ２”はスレーブ装置３−２への転送要求を示している。また、“−”の後の数字は一つのスレーブ装置に出力する転送要求の順番を示している。
また、図中、“ＤＡＴＡ・Ｓ１−１”は転送要求“ＲＥＱ・Ｓ１−１”に対応するスレーブ装置３−１からのリードデータを、“ＤＡＴＡ・Ｓ１−２”は転送要求“ＲＥＱ・Ｓ１−２”に対応するスレーブ装置３−１からのリードデータを、“ＤＡＴＡ・Ｓ１−３”は転送要求“ＲＥＱ・Ｓ１−３”に対応するスレーブ装置３−１からのリードデータを、“ＤＡＴＡ・Ｓ２−１”は転送要求“ＲＥＱ・Ｓ２−１”に対応するスレーブ装置３−２からのリードデータを、それぞれ示している。
【００４０】
図１は初期時の転送要求カウンタ４１のカウント値ＶＣＮＴが０の場合を示し、図２は転送要求カウンタ４１のカウント値ＶＣＮＴが１の場合を示し、図３は転送要求カウンタ４１のカウント値ＶＣＮＴが２の場合を示し、図４は転送要求カウンタ４１のカウント値ＶＣＮＴが３の場合を示し、図５は転送要求カウンタ４１のカウント値ＶＣＮＴが３から２にカウントダウンした場合を示し、図６は転送要求カウンタ４１のカウント値ＶＣＮＴが２から１にカウントダウンした場合を示し、図７は転送要求カウンタ４１のカウント値ＶＣＮＴが１から０にカウントダウンした場合を示し、図８は転送要求が異なるスレーブ装置に出された結果に転送要求カウンタ４１のカウント値ＶＣＮＴが０から１にカウントアップした場合を示し、図９は転送要求カウンタ４１のカウント値ＶＣＮＴが１から０にカウントダウンした場合を示している。
【００４１】
図１に示すように、マスタ装置２が“ＲＥＱ・Ｓ１−１”、“ＲＥＱ・Ｓ１−２”、“ＲＥＱ・Ｓ１−３”、“ＲＥＱ・Ｓ２−１”の順で転送要求をデータ転送装置４に出力している。
転送要求信号“ＲＥＱ・Ｓ１−１”の発行時、転送要求カウンタ４１のカウント値ＶＣＮＴが０であるので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４に対して転送される。
このとき、データ転送装置４においては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図２に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが１になる。そして、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−１”に対するデータ“ＤＡＴＡ・Ｓ１−１”がリードされる。
【００４２】
転送要求信号“ＲＥＱ・Ｓ１−２”の発行時は、転送要求カウンタ４１のカウント値ＶＣＮＴが１であるが、その前の転送要求が同じスレーブ装置３−１に対するものであったので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４に対して転送される。
このとき、データ転送装置４においては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図３に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが２になる。そして、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−２”に対するデータ“ＤＡＴＡ・Ｓ１−２”がリードされる。
【００４３】
転送要求信号“ＲＥＱ・Ｓ１−３”の発行時は、転送要求カウンタ４１のカウント値ＶＣＮＴが２であるが、その前の転送要求が同じスレーブ装置３−１に対するものであったので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４に対して転送される。
このとき、データ転送装置４においては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図４に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが３になる。そして、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−３”に対するデータ“ＤＡＴＡ・Ｓ１−３”がリードされる。
【００４４】
転送要求信号“ＲＥＱ・Ｓ２−１”の発行時は、現在の転送要求カウンタ４１のカウント値ＶＣＮＴが０でなく、かつ異なるスレーブ装置３−２のメモリコントローラ３１−２への転送要求なので、図５に示すように、アドレスデコーダ・セレクタ４２で遮断され、スレーブ装置３−２には出力されない。
【００４５】
転送要求信号“ＲＥＱ・Ｓ１−１”に対応するリードデータ“ＤＡＴＡ・Ｓ１−１”が、図５に示すように、スレーブ装置３−１のメモリコントローラ３１−１からデータ転送装置４のデータ転送監視部４３を介してマスタ装置２に転送される。
マスタ装置２へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが２になる。
【００４６】
同様に、転送要求信号“ＲＥＱ・Ｓ１−２”に対応するリードデータ“ＤＡＴＡ・Ｓ１−２”が、図６に示すように、スレーブ装置３−１のメモリコントローラ３１−１からデータ転送装置４のデータ転送監視部４３を介してマスタ装置２に転送される。
マスタ装置２へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが１になる。
【００４７】
同様に、転送要求信号“ＲＥＱ・Ｓ１−３”に対応するリードデータ“ＤＡＴＡ・Ｓ１−３”が、図７に示すように、スレーブ装置３−１のメモリコントローラ３１−１からデータ転送装置４のデータ転送監視部４３を介してマスタ装置２に転送される。
マスタ装置２へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが０になる。
【００４８】
図７に示すように、スレーブ装置３−１のメモリコントローラ３１−１からリードデータ“ＤＡＴＡ・Ｓ１−３”がマスタ装置２に転送され、データ転送装置４の転送要求カウンタ４１のカウント値ＶＣＮＴが０になると、アドレスデコーダ・セレクタ４２はスレーブ装置３−１，３−２のどちらでも選択可能になり、この段階で転送要求信号“ＲＥＱ・Ｓ２−１”がスレーブ装置３−２のメモリコントローラ３１−２に出力される。
そして、スレーブ装置３−２のメモリコントローラ３１−２からの転送応答がデータ転送装置４に対して転送される。
このとき、データ転送装置４においては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−２からの転送応答が転送要求カウンタ４１に入力される。
その結果、図８に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが１になる。そして、メモリコントローラ３１−２によりメモリ３２−２がアクセスされ、転送要求“ＲＥＱ・Ｓ２−１”に対するデータ“ＤＡＴＡ・Ｓ２−１”がリードされる。
【００４９】
転送要求信号“ＲＥＱ・Ｓ２−１”に対応するリードデータ“ＤＡＴＡ・Ｓ２−１”が、図９に示すように、スレーブ装置３−２のメモリコントローラ３１−２からデータ転送装置４のデータ転送監視部４３を介してマスタ装置２に転送される。
マスタ装置２へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが０になる。
【００５０】
上記の動作により、マスタはスレーブを意識することなく転送要求の連続発行が可能となり、また転送要求とデータの順序も保証される。
【００５１】
以上説明したように、本実施形態によれば、データ転送装置４が、マスタ装置のＤＭＡＣ２２からの転送要求ＲＥＱに対するスレーブ装置３−１またはスレーブ装置３−２からの応答信号ＡＣＫの入力ごとにカウントアップし、データ転送監視部４３からのデータ転送完了信号ＴＲＦＥを入力するとカウントダウンする転送要求カウンタ４１と、転送要求カウンタ４１のカウント値および現在転送対象のスレーブ装置に関する情報に基づいて、転送要求対象のスレーブ装置を判定して選択し、マスタ装置２とスレーブ装置３−１またはスレーブ装置３−２を接続するアドレスデコーダ・セレクタ４２と、マスタ装置２のＤＭＡＣ２２による転送要求に対するデータ転送の終了を監視し、終了を確認すると転送完了信号ＴＲＦＥを転送要求カウンタ４１に出力するデータ転送監視部４３とを有することから、以下の効果を得ることができる。
【００５２】
転送要求順に応答が返ってくることを前提に設計されている機能ブロック（複数のスレーブへの転送を想定していない機能ブロック）を、回路を変更することなしに、複数スレーブに接続することができ、またその応答順序も保証される。
マスタ装置は、対象スレーブの応答性能を意識せず、転送要求の連続発行が行える。
このように、転送要求の連続発行が行えるので、スレーブ装置が転送要求順に応答する場合同一スレーブ装置に対してのデータ転送効率を高めることができる。
転送要求（リクエスト）信号のみの制御で実現しているので、内部に大きなバッファ等を持つ必要がなく、小規模回路で実現できる利点がある。
【００５３】
＜第２実施形態＞
図１０は、本発明の第２の実施形態に係るデータ転送システムの構成例を示す図である。
【００５４】
本第２の実施形態のデータ転送システム１Ａが第１の実施形態のデータ転送システム１と異なる点は、リード動作ではなく、書き込み(ライト)動作に対応したライト系回路構成となっていることにある。
【００５５】
これに応じて、マスタ装置２ＡのＤＭＡＣ（Ｗ０）２２Ａは、スレーブ装置３−１またはスレーブ装置３−２のメモリ３２−１，３２−２へのデータのライトのためのリクエスト(要求)ＲＥＱとレスポンス(応答)ＡＣＫのためのトランザクション制御機能、および機能ブロック２１からの外部から入力した、あるいは所定の処理をして生成したデータのデータ転送制御機能を有する。
【００５６】
その他の構成は基本的に第１の実施形態と同様であることから、その詳細な説明は省略する。
【００５７】
次に、第２の実施形態の動作を、図１０から図１９に関連付けて説明する。
【００５８】
この例では、図１０に示すように、マスタ装置２Ａが、“ＲＥＱ・Ｓ１−１”、“ＲＥＱ・Ｓ１−２”、“ＲＥＱ・Ｓ１−３”、“ＲＥＱ・Ｓ２−１”の順で転送要求信号を出力している場合を例に説明する。“ＲＥＱ・Ｓ１”はスレーブ装置３−１への転送要求を、“ＲＥＱ・Ｓ２”はスレーブ装置３−２への転送要求を示している。また、“−”の後の数字は一つのスレーブ装置に出力する転送要求の順番を示している。
また、図中、“ＤＡＴＡ・Ｓ１−１”は転送要求“ＲＥＱ・Ｓ１−１”に対応するスレーブ装置３−１へのライトデータを、“ＤＡＴＡ・Ｓ１−２”は転送要求“ＲＥＱ・Ｓ１−２”に対応するスレーブ装置３−１へのライトデータを、“ＤＡＴＡ・Ｓ１−３”は転送要求“ＲＥＱ・Ｓ１−３”に対応するスレーブ装置３−１へのライトデータを、“ＤＡＴＡ・Ｓ２−１”は転送要求“ＲＥＱ・Ｓ２−１”に対応するスレーブ装置３−２へのライトデータを、それぞれ示している。
【００５９】
図１０は初期時の転送要求カウンタ４１のカウント値ＶＣＮＴが０の場合を示し、図１１は転送要求カウンタ４１のカウント値ＶＣＮＴが１の場合を示し、図１２は転送要求カウンタ４１のカウント値ＶＣＮＴが２の場合を示し、図１３は転送要求カウンタ４１のカウント値ＶＣＮＴが３の場合を示し、図１４は異なるスレーブ装置３−２への転送要求信号が遮断される場合を示し、図１５は転送要求カウンタ４１のカウント値ＶＣＮＴが３から２にカウントダウンした場合を示し、図１６は転送要求カウンタ４１のカウント値ＶＣＮＴが２から１にカウントダウンした場合を示し、図１７は転送要求カウンタ４１のカウント値ＶＣＮＴが１から０にカウントダウンした場合を示し、図１８は転送要求が異なるスレーブ装置に出された結果に転送要求カウンタ４１のカウント値ＶＣＮＴが０から１にカウントアップした場合を示し、図１９は転送要求カウンタ４１のカウント値ＶＣＮＴが１から０にカウントダウンした場合を示している。
【００６０】
図１０に示すように、マスタ装置２Ａが“ＲＥＱ・Ｓ１−１”、“ＲＥＱ・Ｓ１−２”、“ＲＥＱ・Ｓ１−３”、“ＲＥＱ・Ｓ２−１”の順で転送要求をデータ転送装置４Ａに出力している。
転送要求信号“ＲＥＱ・Ｓ１−１”の発行時、転送要求カウンタ４１のカウント値ＶＣＮＴが０であったので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４Ａに対して転送される。
このとき、データ転送装置４Ａにおいては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図１１に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが１になる。
【００６１】
転送要求信号“ＲＥＱ・Ｓ１−２”の発行時は、転送要求カウンタ４１のカウント値ＶＣＮＴが１であるが、その前の転送要求が同じスレーブ装置３−１に対するものであったので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４Ａに対して転送される。
このとき、データ転送装置４Ａにおいては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図１２に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが２になる。
【００６２】
転送要求信号“ＲＥＱ・Ｓ１−３”の発行時は、転送要求カウンタ４１のカウント値ＶＣＮＴが２であるが、その前の転送要求が同じスレーブ装置３−１に対するものであったので、アドレスデコーダ・セレクタ４２からスレーブ装置３−１のメモリコントローラ３１−１に転送要求が出力され、スレーブ装置３−１のメモリコントローラ３１−１からの転送応答がデータ転送装置４Ａに対して転送される。
このとき、データ転送装置４Ａにおいては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−１からの転送応答が転送要求カウンタ４１に入力される。
その結果、図１３に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが３になる。
【００６３】
転送要求信号“ＲＥＱ・Ｓ２−１”の発行時は、現在の転送要求カウンタ４１のカウント値ＶＣＮＴが０でなく、かつ異なるスレーブ装置３−２のメモリコントローラ３１−２への転送要求なので、図１４に示すように、アドレスデコーダ・セレクタ４２で遮断され、スレーブ装置３−２には出力されない。
【００６４】
転送要求信号“ＲＥＱ・Ｓ１−１”に対応するライトデータ“ＤＡＴＡ・Ｓ１−１”が、図１５に示すように、マスタ装置２Ａからデータ転送装置４Ａのデータ転送監視部４３を介してスレーブ装置３−１のメモリコントローラ３１−１に転送される。
マスタ装置２Ａからスレーブ装置３−１へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが２になる。
また、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−１”に対するデータ“ＤＡＴＡ・Ｓ１−１”がライトされる。
【００６５】
同様に、転送要求信号“ＲＥＱ・Ｓ１−２”に対応するライトデータ“ＤＡＴＡ・Ｓ１−２”が、図１６に示すように、マスタ装置２Ａからデータ転送装置４Ａのデータ転送監視部４３を介してスレーブ装置３−１のメモリコントローラ３１−１に転送される。
マスタ装置２Ａからスレーブ装置３−１へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが１になる。
また、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−２”に対するデータ“ＤＡＴＡ・Ｓ１−２”がライトされる。
【００６６】
同様に、転送要求信号“ＲＥＱ・Ｓ１−３”に対応するライトデータ“ＤＡＴＡ・Ｓ１−３”が、図１７に示すように、マスタ装置２Ａからデータ転送装置４Ａのデータ転送監視部４３を介してスレーブ装置３−１のメモリコントローラ３１−１に転送される。
マスタ装置２Ａからスレーブ装置３−１へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが０になる。
また、メモリコントローラ３１−１によりメモリ３２−１がアクセスされ、転送要求“ＲＥＱ・Ｓ１−３”に対するデータ“ＤＡＴＡ・Ｓ１−３”がライトされる。
【００６７】
図１７に示すように、マスタ装置２Ａからライトデータ“ＤＡＴＡ・Ｓ１−３”がスレーブ装置３−１のメモリコントローラ３１−１に転送され、データ転送装置４Ａの転送要求カウンタ４１のカウント値ＶＣＮＴが０になると、アドレスデコーダ・セレクタ４２はスレーブ装置３−１，３−２のどちらでも選択可能になり、この段階で転送要求信号“ＲＥＱ・Ｓ２−１”がスレーブ装置３−２のメモリコントローラ３１−２に出力される。
そして、スレーブ装置３−２のメモリコントローラ３１−２からの転送応答がデータ転送装置４Ａに対して転送される。
このとき、データ転送装置４Ａにおいては、アドレスデコーダ・セレクタ４２を通してスレーブ装置３−２からの転送応答が転送要求カウンタ４１に入力される。
その結果、図１８に示すように、転送要求カウンタ４１のカウント値ＶＣＮＴが１になる。
【００６８】
転送要求信号“ＲＥＱ・Ｓ２−１”に対応するライトデータ“ＤＡＴＡ・Ｓ２−１”が、図１９に示すように、マスタ装置２Ａからデータ転送装置４Ａのデータ転送監視部４３を介してスレーブ装置３−２のメモリコントローラ３１−２に転送される。
マスタ装置２Ａからスレーブ装置３−２へのデータ転送が完了すると、データ転送監視部４３から転送要求カウンタ４１に対してデータ転送完了信号ＴＲＦＥが出力される。これにより、転送要求カウンタ４１がダウンカウントし、そのカウント値ＶＣＮＴが１つ減り、カウント値ＶＣＮＴが０になる。
また、メモリコントローラ３１−２によりメモリ３２−２がアクセスされ、転送要求“ＲＥＱ・Ｓ２−１”に対するデータ“ＤＡＴＡ・Ｓ２−１”がライトされる。
【００６９】
上記の動作により、マスタはスレーブを意識することなく転送要求の連続発行が可能となり、また転送要求とデータの順序も保証される。
【００７０】
以上のように、本第２の実施形態によれば、第１の実施形態のリード動作時と同様に、同一のスレーブ装置に対するライト転送要求は連続して出力し、そのデータ転送終了後に、異なるスレーブ装置へのライト転送要求を出力することで、応答順序を守りながら効率的なデータ転送が実現できる。
【００７１】
＜第３実施形態＞
図２０は、本発明の第３の実施形態に係るデータ転送システム１Ｂの構成例を示す図である。
【００７２】
本第３の実施形態は、第１の実施形態のリード系と第２の実施形態のライト系の機能を併せ持つシステムとして形成され、マスタ装置２Ｂの機能ブロックが、レンダリング処理等の画像合成処理を行うグラフィックスエンジンにより形成されている。
【００７３】
図２０のデータ転送システム１Ｂは、マスタ装置２Ｂ、スレーブ装置３Ｂ−１，３Ｂ−２、並びにリード系の第１のデータ転送装置４Ｒおよびライト系の第２のデータ転送装置４Ｗを有する。
【００７４】
マスタ装置２Ｂは、グラフィックスエンジン２１Ｂ、リード系ＤＭＡＣ（Ｒ０）２２Ｒ、およびライト系ＤＭＡＣ（Ｗ０）２２Ｗを有する。
【００７５】
マスタ装置２Ｂ、スレーブ装置３Ｂ−１，３Ｂ−２、並びにリード系データ転送装置４Ｒおよびライト系データ転送装置４Ｗの構成および機能は、基本的に第１および第２の実施形態において説明した構成および機能と同様であり、その詳細な説明は省略する。
【００７６】
図２０のデータ転送システム１Ｂにおいては、たとえばマスタ装置２Ｂのグラフィックスエンジン２１Ｂは、リード系ＤＭＡＣ２２Ｒ、第１のデータ転送装置４Ｒ、スレーブ装置３Ｂ−１のメモリコントローラ３１Ｂ−１、およびスレーブ装置３Ｂ−２のメモリコントローラ３１Ｂ−２のデータ転送制御機能により、スレーブ装置３Ｂ−２のメモリ３２Ｂ−２に格納されているアイコン５１，５２、スレーブ装置３Ｂ−１のメモリ３２Ｂ−１に格納されている背景５３を必要に応じてリードしながら(読み出しながら)合成画像を生成する。
そして、マスタ装置２Ｂのグラフィックスエンジン２１Ｂは、ライト系ＤＭＡＣ２２Ｗ、第２のデータ転送装置４Ｗ、およびスレーブ装置３Ｂ−１のメモリコントローラ３１Ｂ−１のデータ転送制御機能により、スレーブ装置３Ｂ−１のメモリ３２Ｂ−１に合成画像５４を格納する。
【００７７】
第３の実施形態によれば、マスタ装置２Ｂのグラフィックスエンジン２１Ｂは、メモリの応答特性を意識することなく転送要求の連続発行を行うことができ、データ転送順序も保証することができる。
【００７８】
＜第４実施形態＞
図２１は、本発明の第４の実施形態に係るデータ転送システムの構成例を示す図である。
【００７９】
本第４の実施形態のデータ転送システム１Ｃが第３の実施形態のデータ転送システム１Ｂと異なる点は、マスタ装置２Ｃの機能ブロックがグラフィックスエンジンに代えてＪＰＥＧ圧縮伸張エンジン２１Ｃにより形成されていることにある。
その他の構成は、基本的に第３の実施形態と同様である。
【００８０】
図２１のデータ転送システム１Ｃにおいては、たとえばマスタ装置２ＣのＪＰＥＧ圧縮伸張エンジン２１Ｃは、リード系ＤＭＡＣ２２Ｒ、第１のデータ転送装置４Ｒ、スレーブ装置３Ｃ−１のメモリコントローラ３１Ｃ−１、およびスレーブ装置３Ｃ−２のメモリコントローラ３１Ｃ−２のデータ転送制御機能により、連続したアドレスにマッピングされている、スレーブ装置３Ｃ−１のメモリ３２Ｃ−１とスレーブ装置３Ｃ−２のメモリ３２Ｃ−２に跨って存在する画像６１をリードしながら(読み出しながら)ＪＰＥＧ規格に従った画像圧縮処理を行う。
そして、マスタ装置２ＣのＪＰＥＧ圧縮伸張エンジン２１ＣＢは、ライト系ＤＭＡＣ２２Ｗ、第２のデータ転送装置４Ｗ、およびスレーブ装置３Ｃ−１のメモリコントローラ３１Ｃ−１のデータ転送制御機能により、スレーブ装置３Ｃ−１のメモリ３２Ｃ−１に圧縮画像６２を格納する。
【００８１】
また、マスタ装置２ＣのＪＰＥＧ圧縮伸張エンジン２１Ｃは、必要に応じて、リード系ＤＭＡＣ２２Ｒ、第１のデータ転送装置４Ｒ、スレーブ装置３Ｃ−１のメモリコントローラ３１Ｃ−１のデータ転送制御機能により、スレーブ装置３Ｃ−１のメモリ３２Ｃ−１に格納された圧縮画像６２をリードし、ＪＰＥＧ規格に従った画像伸張処理を行い、たとえば図示しない処理系に転送する。
【００８２】
第４の実施形態によれば、マスタ装置２ＣのＪＰＥＧ圧縮伸張エンジン２１Ｃは、メモリの応答特性を意識することなく転送要求の連続発行を行うことができ、データ転送順序も保証することができる。
【００８３】
なお、以上説明した実施形態においては、データ転送装置における転送要求カウンタが転送要求の入力ごとにカウントアップし、データ転送完了信号の入力ごとにカウントダウンするように構成したが、転送要求カウンタが転送要求の入力ごとにカウントダウンし、データ転送完了信号の入力ごとにカウントアップするように構成することも可能である。この場合も、上述した各実施形態の効果と同様の効果を得ることが可能である。
【図面の簡単な説明】
【００８４】
【図１】第１の実施形態に係るデータ転送システムの構成例を示す図である。
【図２】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１の場合を示す図である。
【図３】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が２の場合を示す図である。
【図４】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が３の場合を示す図である。
【図５】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が３から２にカウントダウンした場合を示す図である。
【図６】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が２から１にカウントダウンした場合を示す図である。
【図７】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１から０にカウントダウンした場合を示す図である。
【図８】第１の実施形態の動作を説明するための図であって、転送要求が異なるスレーブ装置に出された結果に転送要求カウンタのカウント値が０から１にカウントアップした場合を示す図である。
【図９】第１の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１から０にカウントダウンした場合を示す図である。
【図１０】第２の実施形態に係るデータ転送システムの構成例を示す図である。
【図１１】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１の場合を示す図である。
【図１２】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が２の場合を示す図である。
【図１３】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が３の場合を示す図である。
【図１４】第２の実施形態の動作を説明するための図であって、異なるスレーブ装置への転送要求信号が遮断される場合を示す図である。
【図１５】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が３から２にカウントダウンした場合を示す図である。
【図１６】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が２から１にカウントダウンした場合を示す図である。
【図１７】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１から０にカウントダウンした場合を示す図である。
【図１８】第２の実施形態の動作を説明するための図であって、転送要求が異なるスレーブ装置に出された結果に転送要求カウンタのカウント値が０から１にカウントアップした場合を示す図である。
【図１９】第２の実施形態の動作を説明するための図であって、転送要求カウンタのカウント値が１から０にカウントダウンした場合を示す図である。
【図２０】第３の実施形態に係るデータ転送システムの構成例を示す図である。
【図２１】第４の実施形態に係るデータ転送システムの構成例を示す図である。
【符号の説明】
【００８５】
１，１Ａ〜１Ｃ・・・データ転送システム、２，２Ａ〜２Ｃ・・・マスタ装置、２１・・・機能ブロック、２２，２２Ａ，２２Ｒ，２２Ｗ・・・ＤＭＡコントローラ（ＤＭＡＣ）、３−１，３−２、３Ｂ−１，３Ｂ−２、３Ｃ−１，３Ｃ−２・・・スレーブ装置、４、４Ａ、４Ｒ，４Ｗ・・・データ転送装置(ブリッジ装置)、４１・・・転送要求カウンタ、４２・・・アドレスデコーダ・セレクタ（転送先セレクタ）、４３・・・データ転送監視部。
【図１】
0004582032.tif 000002
【図２】
0004582032.tif 000003
【図３】
0004582032.tif 000004
【図４】
0004582032.tif 000005
【図５】
0004582032.tif 000006
【図６】
0004582032.tif 000007
【図７】
0004582032.tif 000008
【図８】
0004582032.tif 000009
【図９】
0004582032.tif 000010
【図１０】
0004582032.tif 000011
【図１１】
0004582032.tif 000012
【図１２】
0004582032.tif 000013
【図１３】
0004582032.tif 000014
【図１４】
0004582032.tif 000015
【図１５】
0004582032.tif 000016
【図１６】
0004582032.tif 000017
【図１７】
0004582032.tif 000018
【図１８】
0004582032.tif 000019
【図１９】
0004582032.tif 000020
【図２０】
0004582032.tif 000021
【図２１】
0004582032.tif 000022