(57)【特許請求の範囲】
【請求項１】
仮想的な境界を有するメモリに記憶されている、前記境界を跨いだ画像データを転送するためのシステムであって、
所定のデータ処理を行う１以上のモジュール装置と、前記１以上のモジュール装置と前記メモリとの間のデータの入出力を制御するメモリ制御装置とを有し、
前記各装置が共通接続されると共に、前記メモリ制御装置のみがバスマスタとなるメモリバスを備え、且つ、前記１以上のモジュール装置の夫々は、前記画像データのＸアドレスを記憶するＸレジスタ及びＹアドレスを記憶するＹレジスタと、前記Ｘアドレス及びＹアドレスのマーカーデータを格納するＸアドレス用マーカーレジスタ及びＹアドレス用マーカーレジスタと、デコード部と、を有するインタフェース部を備え、
さらに、前記メモリバスは、データ転送要求処理、初期化処理、および、データ転送処理のうちの少なくとも１つの処理を実行するためのコマンドを転送可能なコマンドバスとデータを転送可能なデータバスとを含んでおり、
前記デコード部は、前記データ転送処理を開始するときのＸアドレス及びＹアドレスを前記Ｘレジスタ及びＹレジスタにセットするコマンドと、
前記仮想的な境界で分けられた新しいページ領域のＸアドレス及びＹアドレスの開始値を前記マーカーデータとして前記Ｘアドレス用マーカーレジスタ及びＹアドレス用マーカーレジスタにそれぞれセットするコマンドと、
前記ＸレジスタのＸアドレスをインクリメントするコマンドと、
前記ＹレジスタのＹアドレスをインクリメントするコマンドと、
前記Ｘアドレス用マーカーレジスタのマーカーデータを前記Ｘレジスタにセットするコマンドと、
前記Ｙアドレス用マーカーレジスタのマーカーデータを前記Ｙレジスタにセットするコマンドと、を含む専用プロトコルで制御されることを特徴とするデータ転送システム。
【請求項２】
請求項１において、前記インタフェース部は、前記コマンドバスで伝送されるコマンドをデコードして、デコード結果に対応する情報をモジュール装置内部に送ることを特徴とするデータ転送システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリに記憶された多量の画像データ等を特殊なコマンドを用いてモジュール装置に転送するためのシステムに関する。
【０００２】
【従来の技術】
図２に従来のデータ転送システムの構成例を示す。このデータ転送システムは、ＣＰＵ（中央処理装置）１０と、データを記憶するダイナミックランダムアクセスメモリ（ＤＲＡＭ）４０と、ＤＲＡＭ４０にアドレス線５６およびデータ線５７で接続されＤＲＡＭ４０を制御するＤＲＡＭコントローラ３０と、２つのモジュール装置２０、２１とを有していて、モジュール装置２０およびモジュール装置２１の夫々は、データ線５２、制御線５３、および、データ線５４、制御線５５を介してＤＲＡＭコントローラ３０に接続されていると共に、データバス５０およびアドレスバス５１が各装置１０、２０、２１、３０に共通に接続されている。
【０００３】
そして、ＤＲＡＭコントローラ３０は、制御線５３を介して送受される制御信号を用いながらデータ線５２を介して、モジュール装置２０に対するデータの入出力を行うと共に、制御線５５を介して送受される制御信号を用いながらデータ線５４を介して、モジュール装置２１に対するデータの入出力を行う。このように、ＤＲＡＭコントローラとモジュール装置間の夫々において、制御線、データ線を設けた構成にして、ＤＲＡＭ４０に記憶されているデータをモジュール装置に転送するようにしていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来のデータ転送システムによれば、モジュール装置にデータを転送する際には、モジュール固有のコマンド体系を用いて処理を行っていた。
【０００５】
このため、複数のモジュール装置へのデータ転送の際には、夫々のモジュール装置に応じたコマンド体系を用いてデータ転送を行わなくてはならず、効率的なデータ転送が行えず、しかも、システム内の配線も複雑になっていてシステムのＬＳＩ化の支障になっていた。
【０００６】
本発明は、このような従来の課題を解決するためになされたもので、その目的は、１つのコマンド体系で複数のモジュール装置にデータ転送可能な手段を提供する点にある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、請求項１に係る発明は、仮想的な境界を有するメモリに記憶されている、前記境界を跨いだ画像データを転送するためのシステムであって、所定のデータ処理を行う１以上のモジュール装置と、前記１以上のモジュール装置と前記メモリとの間のデータの入出力を制御するメモリ制御装置とを有し、前記各装置が共通接続されると共に、前記メモリ制御装置のみがバスマスタとなるメモリバスを備え、且つ、前記１以上のモジュール装置の夫々は、前記画像データのＸアドレスを記憶するＸレジスタ及びＹアドレスを記憶するＹレジスタと、前記Ｘアドレス及びＹアドレスのマーカーデータを格納するＸアドレス用マーカーレジスタ及びＹアドレス用マーカーレジスタと、デコード部と、を有するインタフェース部を備え、さらに、前記メモリバスは、データ転送要求処理、初期化処理、および、データ転送処理のうちの少なくとも１つの処理を実行するためのコマンドを転送可能なコマンドバスとデータを転送可能なデータバスとを含んでおり、前記デコード部は、前記データ転送処理を開始するときのＸアドレス及びＹアドレスを前記Ｘレジスタ及びＹレジスタにセットするコマンドと、前記仮想的な境界で分けられた新しいページ領域のＸアドレス及びＹアドレスの開始値を前記マーカーデータとして前記Ｘアドレス用マーカーレジスタ及びＹアドレス用マーカーレジスタにそれぞれセットするコマンドと、前記ＸレジスタのＸアドレスをインクリメントするコマンドと、前記ＹレジスタのＹアドレスをインクリメントするコマンドと、前記Ｘアドレス用マーカーレジスタのマーカーデータを前記Ｘレジスタにセットするコマンドと、前記Ｙアドレス用マーカーレジスタのマーカーデータを前記Ｙアドレスにセットするコマンドと、を含む専用プロトコルで制御されることを特徴とするデータ転送システム、である。
【０００８】
これによれば、各装置がメモリバスに共通接続されていて、しかも、１つのコマンド体系でデータ転送要求処理、初期化処理、および、データ転送処理を実行可能であるので、メモリ制御装置が簡易なコマンドセットを用いてメモリに記憶されている大容量のデータを１度に複数の装置に転送することが可能となる。
【００１０】
また、メモリバスは、コマンドを転送可能なコマンドバスとデータを転送可能なデータバスが備えられているので、データ転送と同時にコマンドを送ることができ、迅速なデータ転送を実現できる。
さらに、請求項２に係る発明は、請求項１において、前記インタフェース部は、前記コマンドバスで伝送されるコマンドをデコードして、デコード結果に対応する情報をモジュール装置内部に送ることを特徴とする。
【００１１】
これによれば、インタフェース部がデコード処理を行ってモジュール装置内部に、動作制御を行うためのコントロール信号を生成させる機能を有するので、インタフェース部自体をモジュール毎に適合させて製造するだけで、各種のモジュール装置をメモリバスに接続することが容易となる。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しつつ説明する。
図１は、本発明の実施の形態に係るデータ転送システムの構成図である。
【００１５】
このデータ転送システムは、図示しないＲＯＭ等の記憶媒体に予め記述された手順にしたがった動作を行うＣＰＵ（中央処理装置）１００と、複数のモジュール装置２００、…、２１０（図１では理解の容易化のため２台のみ図示）と、画像データ等を記憶するためのダイナミックランダムアクセスメモリであるＤＲＡＭ４００と、このＤＲＡＭ４００とアドレス線４０１、データ線４０２を介して接続され、ＤＲＡＭ４００と各装置間との間のデータ転送処理を行うＤＲＡＭコントローラ３００とを有している。
【００１６】
さらに、ＤＲＡＭコントローラ３００のみがバスマスタとなるメモリバス（ＲＢＵＳ）には、ＲバスＩ／Ｆ１１０、ＲバスＩ／Ｆ２０１、ＲバスＩ／Ｆ２１１、および、ＲバスＩ／Ｆ３１０の夫々によって、ＣＰＵ（中央処理装置）１００、モジュール装置２００、モジュール装置２１０、ＤＲＡＭコントローラ３００が接続されている。
【００１７】
また、ＲＢＵＳは、データ転送用バス（データバス）であるＲＤＡＴ、データ転送に関するコマンドの転送用バス（コマンドバス）であるＲＣＭＤ、および、図示しないクロック供給部から供給されるクロックを伝送するバスであるＲＣＬＫを含んでなる。したがって、メモリバスは、コマンドバスとデータバスを含んでいるので、データ転送と同時にコマンドを送ることができ、迅速なデータ転送を実現できる。そして、ＲＢＵＳは、このバスに接続される装置間におけるデータの伝送が専用プロトコルで制御されるように構成されている。
【００１８】
図３は、ＲバスＩ／Ｆの構成を示しており、この明細書中では特に説明に必要なもののみを記載して理解の容易化を図る。図３に示すように、ＲバスＩ／Ｆは、ＲＤＡＴを介して授受するデータを変換するデータ変換部６００と、ＲＣＭＤを介して授受するコマンドをデコードし、デコード結果に対応するコントロール信号を生成するデコード部６１０と、現在の２次元アドレスを記憶するＸレジスタ６１１、Ｙレジスタ６１２と、後に説明する２種類のマーカーレジスタＭＸ６１３、ＭＹ６１４とを有していて、ＲＣＬＫを介して供給されるクロックを装置内部の必要箇所に供給可能となっている。なお、６１１〜６１４からは、２次元のアドレス値（アドレスＸ、アドレスＹ）が出力されるようになっている。
【００１９】
データ変換部６００が行うデータ変換としては、例えば１６ビットデータを８ビットデータにするビット長変換やデータのアクセス方向を双方向（読み込みおよび書込）から単方向（読み込みのみ）にするデータアクセス方向の変換等が挙げられる。また、デコード部６１０によって生成されるコントロール信号は、装置内部の所定箇所に送られ、装置がコントロール信号に応じた動作を行うようになっている。コントロール信号には、自身のモジュールに対するＲＢＵＳの有効期間を示す信号、リード／ライト信号、モジュール内部のバッファ、レジスタのアドレス信号等が含まれる。このように、ＲバスＩ／Ｆがデコード処理を行ってモジュール装置内部に、動作制御を行うためのコントロール信号を生成させる機能を有するので、インタフェース部自体をモジュール毎に適合させて製造するだけで、各種のモジュール装置をメモリバスに接続することが容易となる。
【００２０】
また、このシステムではＲＣＭＤを介してコマンドが授受されそのフォーマットは、図４に示すように、４ビットのオペコードとＲＤＡＴ上のデータがバイト（「０」）であるかワード（「１」）であるかを示す１ビットのバイトビットと６ビットのオペランドとからなっていて、図５、図６に示すような各種のコマンドが伝送可能になっている。
【００２１】
さて、モジュール装置２００がＤＲＡＭ４００内に記憶されているデータの読み出しを要求し、そのデータをＤＲＡＭコントローラ３００がモジュール装置２００に転送する場合の動作について説明する。
【００２２】
まず、ＤＲＡＭコントローラ３００は、一度サービスを開始したＤＲＡＭのデータ転送が終了する毎に、ＲＣＭＤ上にＡＲＥＱ（Ask for REQuest:ＤＲＡＭサービス・リクエスト要求）コマンドを発行し、夫々のモジュール装置からのＤＲＡＭデータ転送サービスの要求を受け付ける（ＤＲＡＭサービス・リクエスト要求）。
【００２３】
次に、ＤＲＡＭデータの読み出し要求のあるモジュール装置２００は、ＲＣＭＤ上のＡＲＥＱコマンドを受信すると、即座に、ＡＲＥＱコマンドと同じクロック・サイクル内にＲＤＡＴ上の予め割り当てられた１ビットをアサートする（ＤＲＡＭサービス・リクエスト）。
【００２４】
次に、ＤＲＡＭコントローラ３００は、ＲＤＡＴの状態をモニターし、夫々のモジュール装置からのＤＲＡＭデータ転送サービス要求状態を把握する。そして、ＤＲＡＭデータ転送サービス要求のあったモジュール装置のうちで最もサービス・プライオリティの高いモジュール装置２００へのＤＲＡＭデータ転送サービスを次のＤＲＡＭデータ転送サービスとして選択することを決定する。なお、サービス・プライオリティは予め設定しておけばよく、この実施の形態ではモジュール装置２００のサービス・プライオリティが最も高い場合を想定している。
【００２５】
そこで、ＤＲＡＭコントローラ３００は、モジュール装置２００に対して、ＤＲＡＭデータ転送サービス要求が受理されたことを通知するために、次のクロックサイクルで、モジュール装置２００からのＤＲＡＭデータ転送サービス要求ＩＤをオペランドとしたＴＸＩＤ（Transmitt ID: サービス開始ＩＤ送信）コマンドを発行する。なお、ＤＲＡＭデータ転送サービス要求ＩＤは、各モジュール装置に対して予め設定しておく（ＤＲＡＭサービスＩＤ通知）。なお、（ＤＲＡＭサービス・リクエスト要求）、（ＤＲＡＭサービス・リクエスト）、（ＤＲＡＭサービスＩＤ通知）がデータ転送要求処理に対応する。
【００２６】
次のＤＲＡＭデータ転送サービスを選択したＤＲＡＭコントローラ３００は、ＤＲＡＭ４００内の所望のデータをリードするためにメモリアクセス動作を開始する。ＤＲＡＭコントローラ３００は、ＤＲＡＭからのリード・データが読み出されるまでのアクセスタイムを使用して、モジュール装置２００の入力バッファ（図示せず）に対する初期アドレス設定等をＳＥＴＸ（Ｘアドレス設定）コマンド、ＳＥＴＹ（Ｙアドレス設定）コマンド等を用いて実行する。
【００２７】
ＤＲＡＭ４００からデータリードが開始されると、ＤＲＡＭデータはＲＤＡＴ上で転送される。このＤＲＡＭデータ転送に同期して、ＲＣＭＤを用いＤＲＡＭアクセスのアドレッシング・シーケンス・コマンド（図６中のＩＮＣＸからＳＥＴＭＹまでのコマンドを指す）を転送する。
【００２８】
具体的には、ＩＮＣＸ（Ｘアドレス・インクリメント）コマンド、ＩＮＣＹ（Ｙアドレス・インクリメント）コマンド、ＳＥＴＸ（マーカーＸアドレス設定）コマンド、ＳＥＴＹ（マーカーＹアドレス設定）コマンド、ＧＭＸ（マーカーＸアドレス・ジャンプ）コマンド、ＧＭＹ（マーカーＹアドレス・ジャンプ）コマンド等をデータ転送と同期して使用することにより、ＤＲＡＭのページ単位のあらゆるアクセスアドレスシーケンスを表現できる（ＤＲＡＭデータ転送）。なお、この（ＤＲＡＭデータ転送）がデータ転送処理に対応し、そのうち特に、前記初期アドレス設定が初期化処理に対応する。
【００２９】
ここで、具体的なコマンドを用いたアドレス・シーケンス動作について特定のシーンを想定してさらに詳細に説明する。
ＤＲＡＭ４００には、画像データ等が記憶されている場合には、ページ、バンク等のデータ記憶上の仮想的な境界が存在し、これらの境界をまたいだデータのリード／ライトアクセスを行う場合には、ＤＲＡＭコントローラ３００は通常のサイクル以外の付加サイクルが必要となる。そのため、ページ境界をまたいだアクセスであるバーストアクセスを行う場合には、データ転送速度を高速化するため、データアクセス順序を最適化して、ページ境界をまたぐページブレークの発生回数を減少させる必要がある。
【００３０】
例えば、縦３画素、横３画素（１画素は１つのアドレスを占める）の３×３ブロック内にページ境界が存在しない場合には、図７（ページブレイクの無い場合のアクセス順序）に示すようなデータアクセス順序になるが、ページ境界が存在する場合には、ページブレーク回数を減らす目的で、例えば図８に示すような順序でデータアクセスを行う必要がある。バーストアクセス毎にページ境界の位置は任意であるため、アドレッシングデータコマンドはあらゆるデータアクセス順序に対応できる必要がある。
【００３１】
図８のアクセス順序をアドレッシングシーケンスの例として、アドレッシングシーケンスコマンドを用いた、ＤＲＡＭ４００からの、ＤＲＡＭコントローラ３００によるモジュール装置２００へのデータアクセスについて説明する。
【００３２】
前述のデータ転送処理後、ＤＲＡＭコントローラ３００は、ＤＲＡＭ４００内の３×３ブロックのデータを読み出すためのメモリアクセス動作を開始する。
ＤＲＡＭコントローラ３００は、ＤＲＡＭ４００へのリードコマンド発行後、データがリードされるまでのアクセスサイクルの間に、モジュール装置２００内のバッファのうちの、アクセスポインタ（Ｘ，Ｙ）とマーカー（ＭＸ，ＭＹ）を０として初期化する。
【００３３】
具体的には、「Ｏｐｃｏｄｅ；ＳＥＴＸ，Ｏｐｅｒａｎｄ；ｘ＝０」なるコマンドによって、オペランドの値ｘ＝０が、ＲバスＩ／Ｆ２０１内のＸレジスタ、ＭＸレジスタにセットされる。また、「Ｏｐｃｏｄｅ；ＳＥＴＹ，Ｏｐｅｒａｎｄ；ｙ＝０」なるコマンドによって、オペランドの値ｙ＝０が、ＲバスＩ／Ｆ２０１内のＹレジスタ、ＭＹレジスタにセットされる。
【００３４】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「０」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「１」で図示）のアドレッシングを示すＩＮＣＸコマンドをＲＣＭＤ上に発行する。
【００３５】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＸ，Ｏｐｅｒａｎｄ；ｄｘ＝１」なるコマンドによって、次の読み出しデータ（図８「１」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタには１インクリメントされた値、Ｙレジスタにはそのままの値がセットされる。
【００３６】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「１」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「２」で図示）のアドレッシングを示すＩＮＣＹコマンドをＲＣＭＤ上に発行する。
【００３７】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＹ，Ｏｐｅｒａｎｄ；ｄｙ＝１」なるコマンドによって、次の読み出しデータ（図８「２」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタにはマーカーＭＸ＝０の値、Ｙレジスタには１インクリメントされた値がセットされる。
【００３８】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「２」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「３」で図示）のアドレッシングを示すＩＮＣＸコマンドをＲＣＭＤ上に発行する。
【００３９】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＸ，Ｏｐｅｒａｎｄ；ｄｘ＝１」なるコマンドによって、次の読み出しデータ（図８「２」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタには１インクリメントした値、Ｙレジスタにはそのままの値がセットされる。
【００４０】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「３」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「４」で図示）のアドレッシングを示すＧＭＹコマンドをＲＣＭＤ上に発行する。
【００４１】
具体的には、「Ｏｐｃｏｄｅ；ＧＭＹ，Ｏｐｅｒａｎｄ；ｄｘ＝１」なるコマンドによって、次の読み出しデータ（図８「４」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタには１インクリメントした値、ＹレジスタにはマーカーＭＹ＝０の値がセットされる。
【００４２】
次に、ＤＲＡＭコントローラ３００は、読み出しデータ（図８「４」で図示）をアクセスするが、ここでページ境界をまたぐため、データが読み出されるまでにアクセスサイクルが発生する。このアクセスサイクルの間にマーカーＭＸをセットする。
【００４３】
具体的には、「Ｏｐｃｏｄｅ；ＳＥＴＭＸ，ＧＭＹ，Ｏｐｅｒａｎｄ；「─」」なるコマンドによって、次のページ境界をアクセスするための準備として、マーカーＭＸに、新しいページ領域のアクセスアドレスの開始値をセットする。
【００４４】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「４」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「５」で図示）のアドレッシングを示すＩＮＣＹコマンドをＲＣＭＤ上に発行する。
【００４５】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＹ，Ｏｐｅｒａｎｄ；「─」」なるコマンドによって、次の読み出しデータ（図８「５」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタにはマーカーＭＸの値、Ｙレジスタには１インクリメントした値がセットされる。
【００４６】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「５」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「６」で図示）のアドレッシングを示すＩＮＣＹコマンドをＲＣＭＤ上に発行する。
【００４７】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＹ，Ｏｐｅｒａｎｄ；ｄｙ＝１」なるコマンドによって、次の読み出しデータ（図８「６」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタにはマーカーＭＸの値、Ｙレジスタには１インクリメントした値がセットされる。
【００４８】
次に、ＤＲＡＭコントローラ３００は、読み出しデータ（図８「６」で図示）をアクセスするが、ここでページ境界をまたぐため、データが読み出されるまでにアクセスサイクルが発生する。このアクセスサイクルの間にアクセスポインタとして機能するＸとマーカーＭＸをセットする。
【００４９】
具体的には、「Ｏｐｃｏｄｅ；ＳＥＴＸ，Ｏｐｅｒａｎｄ；ｘ＝０」なるコマンドによって、次のページ領域のアクセスするための準備として、ＲバスＩ／Ｆ２０１内のＸレジスタとマーカーＭＸの値を、新たなページ領域のアクセスアドレスの開始値にセットする。
【００５０】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「６」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「７」で図示）のアドレッシングを示すＩＮＣＸコマンドをＲＣＭＤ上に発行する。
【００５１】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＸ，Ｏｐｅｒａｎｄ；ｄｘ＝１」なるコマンドによって、次の読み出しデータ（図８「７」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタには１インクリメントした値、Ｙレジスタにはそのままの値がセットされる。
【００５２】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「７」で図示）に同期して、ＤＲＡＭコントローラ３００は、次の読み出しデータ（図８「８」で図示）のアドレッシングを示すＩＮＣＸコマンドをＲＣＭＤ上に発行する。
【００５３】
具体的には、「Ｏｐｃｏｄｅ；ＩＮＣＸ，Ｏｐｅｒａｎｄ；ｄｘ＝１」なるコマンドによって、次の読み出しデータ（図８「８」で図示）を格納するアドレッシング情報として、ＲバスＩ／Ｆ２０１内のＸレジスタには１インクリメントした値、Ｙレジスタにはそのままの値がセットされる。
【００５４】
次に、ＤＲＡＭコントローラ３００は、読み出しデータ（図８「８」で図示）をアクセスするが、ここでページ境界をまたいだアクセスが行われるので、データが読み出されるまでにアクセスサイクルが発生する。このアクセスサイクルの間にマーカーＭＸをセットする。
【００５５】
具体的には、「Ｏｐｃｏｄｅ；ＳＥＴＭＸ，Ｏｐｅｒａｎｄ；「−」」なるコマンドによって、次のページ領域をアクセスするための準備として、ＲバスＩ／Ｆ２０１内のマーカーＭＸの値を、新たなページ領域のアクセスアドレスの開始値にセットする。
【００５６】
次に、ＤＲＡＭ４００からの読み出しデータ（図８「８」で図示）に同期して、ＤＲＡＭコントローラ３００は、リードデータの終了を示すＴＸＤＯＮＥコマンドをＲＣＭＤ上に発行する。
【００５７】
具体的には、「Ｏｐｃｏｄｅ；ＴＸＤＯＮＥ，Ｏｐｅｒａｎｄ；ｄｘ＝１」」なるコマンドによって、データ転送終了が示される。
このように、最後に、ＤＲＡＭコントローラ３００は、ＤＲＡＭデータ転送サービスの終了に同期して、ＴＸＤＯＮＥ（転送終了）コマンドを発行し、１つのＤＲＡＭ転送サービスが終了する（ＤＲＡＭデータ転送終了）。
【００５８】
以上のようにして、簡易なコマンドセットを用いて大容量のＤＲＡＭデータ転送が迅速に行える。このように、ＤＲＡＭコントローラ３００がＲＢＵＳのバスマスタとなって、簡易なコマンドセットを用いて、ＣＰＵ１００、モジュール装置２００、…、２１０の制御動作を行い、ＤＲＡＭ４００に記憶されているデータを一度に複数の装置に対して転送することが可能となる。
【００５９】
さらに、ＲＢＵＳがデータ転送専用プロトコルで制御されるので、ＣＰＵ１００、モジュール装置２００、…、２１０とＤＲＡＭ４００との間の大容量（ページ単位の画像データ等）のデータ転送が容易となる。
【００６０】
また、この実施の形態では、各モジュール装置はＲＢＵＳに対してデータ転送要求を行うことができるが、ＣＰＵ１００も同じくＲＢＵＳに接続されているので、ＣＰＵ１００も他のモジュール装置と同様に、専用プロトコルを用いてＲＢＵＳを使用してデータ転送要求を行うことができ、もって、ＣＰＵ１００も含めた全てのモジュールが同じプロトコルでデータ転送処理可能となる。
【００６１】
以上説明してきたように、１以上のモジュール装置２００、…、２１０、および、ＤＲＡＭコントローラ３００を共通接続すると共に、ＤＲＡＭコントローラ３００のみがバスマスタとなるようにＲＢＵＳを設けておき、さらに、ＲＢＵＳが、データ転送要求処理、初期化処理、および、データ転送処理のうちの少なくとも１つの処理を実行するためのコマンドを転送可能な専用プロトコルで制御されるようにしておいて、いずれかのモジュール装置が、１以上のコマンドを用いて、ＤＲＡＭ４００に記憶されているデータをアクセスすることによって、簡易なコマンドセットを用いてメモリに記憶されている大容量のデータを１度に複数の装置に転送することが可能となる。
【００６２】
【発明の効果】
以上説明したように、請求項１に係る発明によれば、簡易なコマンドセットを用いてメモリに記憶されている大容量のデータを１度に複数の装置に転送することが可能となる。
【００６３】
また、メモリバスは、コマンドを転送可能なコマンドバスとデータを転送可能なデータバスとを含むから、データ転送と同時にコマンドを送ることができ、迅速なデータ転送を実現できる。
さらに、請求項２に係る発明によれば、インタフェース部自体をモジュール毎に適合させて製造するだけで、各種のモジュール装置をメモリバスに接続することが容易となる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るデータ転送システムの構成図である。
【図２】従来のデータ転送システムの構成図である。
【図３】ＲバスＩ／Ｆの構成図である。
【図４】コマンドのフォーマットの説明図である。
【図５】コマンドの説明図である。
【図６】コマンドの説明図である。
【図７】本発明の実施の形態の説明図である。
【図８】本発明の実施の形態の説明図である。
【符号の説明】
１００  ＣＰＵ（中央処理装置）
１１０  ＲバスＩ／Ｆ
１２０  ＧバスＩ／Ｆ
２００  モジュール装置
２０１  ＲバスＩ／Ｆ
２０２  ＧバスＩ／Ｆ
２１０  モジュール装置
２１１  ＲバスＩ／Ｆ
２１２  ＧバスＩ／Ｆ
３００  ＤＲＡＭコントローラ
３１０  ＲバスＩ／Ｆ
３２０  ＧバスＩ／Ｆ
４００  ＤＲＡＭ
４０１  アドレス線
４０２  データ線
６００  データ変換部
６１０  デコード部
６１１  Ｘレジスタ
６１２  Ｙレジスタ
６１３  ＭＸ（マーカー）
６１４  ＭＹ（マーカー）
【図１】
0004017050.tif 000002
【図２】
0004017050.tif 000003
【図３】
0004017050.tif 000004
【図４】
0004017050.tif 000005
【図５】
0004017050.tif 000006
【図６】
0004017050.tif 000007
【図７】
0004017050.tif 000008
【図８】
0004017050.tif 000009