(57)【要約】【課題】複数の装置でメモリバスを共用してメモリへのアクセスを行うシステムにおいて、メモリバスへのアクセス要求の競合が起こりやすく、メモリを用いた処理の効率が低下する。【解決手段】ページメモリの各アドレスに対応してアドレスデコーダ回路７６にフラグを設ける。データの書き込みが行われていないアドレスに対応するフラグには「０」を設定し、以降、この「０」のフラグのアドレスに対するＣＰＵ５２の読み出し要求に対しては、アドレスデコーダ回路７６がアドレス一致信号を出力し、それに対応して固定値出力回路７８はＣＰＵ５２に固定値「０」を読み出しデータとして返す。一方、メモリバス調停回路６２はアドレス一致信号を受けると、外部デバイス５４，５６に対し、アクセス権を付与し、外部デバイス５４等がメモリバスを使用してメモリ５８との間でＤＭＡ転送を行う。【選択図】        図１
2005062946.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータ処理装置からメモリへのアクセスを行うシステムにおけるメモリ制御装置であって、
前記データ処理装置に選択的に前記メモリへのアクセス権を与えるアクセス権付与部と、
前記データ処理装置と前記メモリとの間に介在し、前記データ処理装置の要求に基づいて前記メモリに対する書き込み動作及び読み出し動作を行うメモリアクセス部と、
を有し、
前記メモリアクセス部は、
前記データ処理装置と前記メモリとの間でのデータの受け渡しを行うメモリデータ入出力手段と、
前記メモリの記憶領域を分割して定められた複数の分割領域に対応させて、当該分割領域に対するデータ更新動作に関する更新情報値を記憶する更新情報値記憶手段と、
データの書き込みを要求された前記分割領域に対応する前記更新情報値を第１の値にセットし、一方、記憶内容の初期化を要求された前記分割領域に対応する前記更新情報値を第２の値にセットする更新情報値設定手段と、
前記データ処理装置から要求された前記メモリに対する読み出し動作が、前記更新情報値が前記第２の値である前記分割領域に対するものであることを検知して、初期化領域アクセス信号を出力する初期化領域アクセス検知手段と、
前記初期化領域アクセス信号に応答して、前記メモリデータ入出力手段を介さずに、当該読み出し動作を要求したデータ処理装置に所定の初期化値を返す初期化値出力手段と、
を有することを特徴とするメモリ制御装置。
【請求項２】
請求項１に記載のメモリ制御装置において、
前記アクセス権付与部は、
いずれかの前記データ処理装置に対し前記アクセス権を付与している間、他の前記データ処理装置への前記アクセス権の付与を禁止する付与禁止手段と、
前記初期化領域アクセス信号に応答して、前記アクセス権の付与禁止を解除する禁止解除手段と、
を有することを特徴とするメモリ制御装置。
【請求項３】
請求項２に記載のメモリ制御装置であって、前記複数のデータ処理装置として、中央演算装置と、前記メモリにダイレクトメモリアクセス可能な外部デバイスとを含む前記システムにおけるメモリ制御装置において、
前記初期化領域アクセス検知手段は、前記中央演算装置が要求する前記読み出し動作に対しての検知結果に基づいて前記初期化領域アクセス信号を出力し、
前記禁止解除手段は、前記初期化領域アクセス信号に応答して、前記外部デバイスへの前記アクセス権の付与禁止を解除すること、
を特徴とするメモリ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリ制御装置に関し、特に複数のデータ処理装置からメモリにアクセスする場合における処理の効率化に関する。
【０００２】
【従来の技術】
従来より、複数のデータ処理装置として中央演算装置（ＣＰＵ）と外部デバイスとを含み、それら複数のデータ処理装置でメモリバスを共用しメモリにアクセスするシステムが存在する。その一例であるプリンタシステムでは、画像を保持するページメモリを有し、このページメモリはＣＰＵにて生成された画像データを書き込まれ、その書き込まれた画像データは、外部デバイスである印刷装置からダイレクトメモリアクセス（ＤＭＡ）により読み出され印刷される。
【０００３】
図６は、ＣＰＵと外部デバイスとでメモリバスを共用する従来のシステムの概略の構成を示す模式図である。このシステムではＣＰＵ２と、２つの外部デバイス４，６とがメモリ８に対しアクセスを行う。これらＣＰＵ２及び外部デバイス４，６とメモリ８との間にはメモリバスコントローラ１０が介在し、このメモリバスコントローラ１０が、メモリ８とのデータの受け渡しを制御する。ＣＰＵ２及び外部デバイス４，６はメモリ８へのアクセスを希望する場合には、メモリバス調停回路１２に対してバスリクエスト信号を送信する。メモリバス調停回路１２はバスリクエスト信号を送ってきたＣＰＵ２又は外部デバイス４，６に対してアクセス権を付与する。アクセス権はバスグラント信号によって、対応する装置２，４，６に通知され、またコントローラ１０に対して、アクセス権を付与された装置を識別するバス調停セレクト信号（Ｓｅｌｅｃｔ信号）が供給される。メモリバス調停回路１２は複数の装置２，４，６からのアクセス権要求が競合した場合にはそれを調停して、いずれか１つの装置にアクセス権を付与する。
【０００４】
メモリバスコントローラ１０はアドレスバスセレクト回路２２及びデータバスセレクト回路２４を備える。図７はメモリバスコントローラ１０の概略の構成を示す模式図であり、この図にはアドレスバスセレクト回路２２及びデータバスセレクト回路２４のより詳しい構成が示されている。アドレスバスセレクト回路２２、データバスセレクト回路２４はそれぞれ切換器２６，２８を有する。アドレスバスセレクト回路２２が有する切換器２６は、ＣＰＵ２及び２つの外部デバイス４，６がメモリアドレスを出力するアドレス信号線のうちいずれかを選択してメモリ８のアドレス信号線に接続する。またデータバスセレクト回路２４の切換器２８は、ＣＰＵ２及び２つの外部デバイス４，６のデータ信号線のうちいずれかを選択してメモリ８のデータ信号線に接続する。これら切換器２６，２８の切り換え制御は、バス調停セレクト信号に基づいて行われ、それぞれ現在、アドレス権を付与されているものに対応する信号線がメモリ８に接続される。
【０００５】
さて、プリンタのような画像処理装置では、ページメモリに印刷画像を展開し、印刷するという処理の中で、ページメモリのクリアをする処理が必要となる。近年、画像データの多値化、カラー化に伴い、データ量が多くなってきており、ページメモリのクリア処理にも時間がかかるようになってきた。これを解決する技術が特許文献１及び特許文献２に示されている。特許文献１に示される技術は、複数に分割されたメモリのアドレス空間毎に、そのアドレス空間に先頭アドレスに書き込みアクセスが行われていない場合、そのアドレス空間から読み出されたデータを所定値にマスクするというものである。また特許文献２に示される技術は、メモリのアクセス状態を記憶し、ライト動作があったアドレスへのリード動作に対してはメモリの内容を出力し、ライト動作がないアドレスへのリードに対しては固定値、例えば初期化値である０を返すというものである。これらの技術によれば、実際のメモリの内容に関わらず、リード動作に対して初期化値を返すことができ、メモリをクリアする動作を省略することができる。
【０００６】
【特許文献１】
特開平１１−２４２６２８号公報
【特許文献２】
特開平１０−３０７７６２号公報
【０００７】
【発明が解決しようとする課題】
ＣＰＵと外部デバイスとでメモリバスを共用するプリンタシステムでは、例えば、複数ページを印刷する場合、ＣＰＵが１ページ目の描画を完了した後、２ページ目の描画を開始すると同時に、メモリに描画された１ページ目の印刷データが読み出され印刷装置にＤＭＡ転送される。このとき、２ページ目のメモリクリア（ＤＭＡライト動作）とＣＰＵによる描画のためのメモリアクセス（リード動作又はライト動作）、及び印刷装置への１ページ目の印刷データのデータ転送（ＤＭＡリード動作）が行われることになり、メモリバスの稼働率が高くなる。そのため場合によっては、処理が競合して待ち時間が生じることもある。さらに、これに他の外部装置（ＥＮＥＴ，ＨＤＤなど）のＤＭＡ転送が重なると、さらにバス稼働率が高くなる。
【０００８】
ここで、上述の特許文献１，２の技術を用いれば、メモリクリア処理を省くことができ、メモリバスの負荷を軽減することができるが、当該技術は本来的にはメモリバスの調停や稼働率の改善という観点を有さない。そのため、上述のような複数の装置でメモリバスを共用する場合の問題点は必ずしも好適に解決されない。
【０００９】
本発明は上記問題点を解決することを目的とし、複数の装置でメモリバスが共用されるシステムにおいてメモリ制御が効率的に行われ、メモリバスの負荷を軽減することができるメモリ制御装置を提供することをその目的の一つとする。
【００１０】
【課題を解決するための手段】
本発明に係るメモリ制御装置は、複数のデータ処理装置からメモリへのアクセスを行うシステムにおけるメモリ制御装置であって、前記データ処理装置に選択的に前記メモリへのアクセス権を与えるアクセス権付与部と、前記データ処理装置と前記メモリとの間に介在し、前記データ処理装置の要求に基づいて前記メモリに対する書き込み動作及び読み出し動作を行うメモリアクセス部と、を有し、前記メモリアクセス部は、前記データ処理装置と前記メモリとの間でのデータの受け渡しを行うメモリデータ入出力手段と、前記メモリの記憶領域を分割して定められた複数の分割領域に対応させて、当該分割領域に対するデータ更新動作に関する更新情報値を記憶する更新情報値記憶手段と、データの書き込みを要求された前記分割領域に対応する前記更新情報値を第１の値にセットし、一方、記憶内容の初期化を要求された前記分割領域に対応する前記更新情報値を第２の値にセットする更新情報値設定手段と、前記データ処理装置から要求された前記メモリに対する読み出し動作が、前記更新情報値が前記第２の値である前記分割領域に対するものであることを検知して、初期化領域アクセス信号を出力する初期化領域アクセス検知手段と、前記初期化領域アクセス信号に応答して、前記メモリデータ入出力手段を介さずに、当該読み出し動作を要求したデータ処理装置に所定の初期化値を返す初期化値出力手段と、を有する。
【００１１】
本発明によれば、メモリの記憶領域が複数の分割領域に区分され、それら分割領域に対応させて更新情報値が定義される。この更新情報値は、対応する分割領域のデータ更新動作として初期化を要求された場合に第２の値にセットされる。一方、初期化のためでなく有効なデータを書き込む動作を要求された場合に第１の値にセットされる。ここで、初期化を要求された場合には、更新情報値をセットするだけでよく、実際に当該分割領域に初期化値を書き込む動作は行う必要がない。更新情報値に第２の値をセットされている分割領域に対する読み出し動作がデータ処理装置から要求された場合には、当該分割領域から実際にデータを読み出すことは行われず、初期化値出力手段から初期化値がデータ処理装置に返される。ここで、更新情報値記憶手段及び初期化値出力手段はメモリではなくメモリアクセス部に設けられるので、更新情報値が第２の値の分割領域に対する読み出し動作において、メモリアクセス部とメモリとの間でデータの受け渡しはなく、メモリバスは用いられない。そこで、メモリアクセス部は、この空いているメモリバスを、他のデータ処理装置からの、更新情報値が第１の値の分割領域に対する読み出し動作要求（この場合には実際にメモリからデータが読み出される）や、初期化のためではないデータの書き込み動作要求に供することができる。すなわち、あるデータ処理装置に対して初期化値出力手段が初期化値を返している状態では、その終了を待たずに、他のデータ処理装置に対するメモリアクセス動作を行うことができ、メモリバスの負荷を抑えつつ、効率的なメモリ制御が実現される。
【００１２】
他の本発明に係るメモリ制御装置においては、前記アクセス権付与部が、いずれかの前記データ処理装置に対し前記アクセス権を付与している間、他の前記データ処理装置への前記アクセス権の付与を禁止する付与禁止手段と、前記初期化領域アクセス信号に応答して、前記アクセス権の付与禁止を解除する禁止解除手段と、を有する。
【００１３】
いずれかのデータ処理装置に付与されたアクセス権は、原則としてそのデータ処理装置が処理完了又は割り込み等によって、その処理を終えてメモリを解放するまで有効であるが、本発明によれば、データ処理装置が更新情報値に第２の値をセットされた分割領域を読み出す処理を行っている最中に、アクセス権付与部はそのデータ処理装置に選択的に与えられたアクセス権を解除し、他のデータ処理装置に対するアクセス権の付与を可能とする。これにより、他のデータ処理装置がメモリに対するアクセスを必要とした場合に、そのデータ処理装置にアクセス権を付与して、メモリの利用を可能とすることができる。
【００１４】
本発明の好適な態様は、前記複数のデータ処理装置として、中央演算装置と、前記メモリにダイレクトメモリアクセス可能な外部デバイスとを含む前記システムにおけるメモリ制御装置であって、前記初期化領域アクセス検知手段が、前記中央演算装置が要求する前記読み出し動作に対しての検知結果に基づいて前記初期化領域アクセス信号を出力し、前記禁止解除手段が、前記初期化領域アクセス信号に応答して、前記外部デバイスへの前記アクセス権の付与禁止を解除するメモリ制御装置である。
【００１５】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら説明する。図１は、本発明の実施の形態に係るプリンタシステムの概略の構成を示す模式図である。このシステムではＣＰＵ５２と、２つの外部デバイス５４，５６とがメモリ５８に対しアクセスを行う。ここで、外部デバイス５４，５６は例えば印刷装置など、メモリ５８上に格納された印刷データを読み出して使用する装置である。メモリ５８にはページメモリ領域が確保され、ＣＰＵ５２が描画処理を行って、このページメモリに１ページ分の画像データを書き込み、その画像データが印刷データとして外部デバイス５４，５６からの読み出し動作に応じて、当該デバイスへＤＭＡ転送される。
【００１６】
これらＣＰＵ５２及び外部デバイス５４，５６とメモリ５８との間にはメモリバスコントローラ６０が介在し、このメモリバスコントローラ６０が、メモリ５８とのデータの受け渡しを制御する。ＣＰＵ５２及び外部デバイス５４，５６はメモリ５８へのアクセスを希望する場合には、メモリバス調停回路６２に対してバスリクエスト信号を送信する。メモリバス調停回路６２はバスリクエスト信号を送ってきたＣＰＵ５２又は外部デバイス５４，５６に対して選択的にアクセス権を付与する。アクセス権が付与されたことはバスグラント信号によって対応する装置５２，５４，５６に通知され、またメモリバスコントローラ６０に対して、アクセス権を付与された装置を識別するバス調停セレクト信号（Ｓｅｌｅｃｔ信号）が供給される。メモリバス調停回路６２は複数の装置５２，５４，５６からのアクセス権要求が競合した場合には、要求を受けた順序や優先度に応じて、それら要求間の調停を行い、順番にアクセス権を付与する。
【００１７】
メモリバスコントローラ６０はアドレスバスセレクト回路７２、データバスセレクト回路７４、アドレスデコーダ回路７６、及び固定値出力回路７８を備える。図２はメモリバスコントローラ６０の主要部の概略の構成を示す模式図であり、この図にはアドレスバスセレクト回路７２、データバスセレクト回路７４、及び固定値出力回路７８のより詳しい構成が示されている。アドレスデコーダ回路７６の構成は図３に示している。
【００１８】
アドレスバスセレクト回路７２、データバスセレクト回路７４はそれぞれ切換器８０，８２を有する。アドレスバスセレクト回路７２が有する切換器８０は、ＣＰＵ５２及び２つの外部デバイス５４，５６がメモリアドレスを出力するアドレス信号線のうちいずれかを選択してメモリ５８のアドレス信号線に接続する。またデータバスセレクト回路７４の切換器８２は、ＣＰＵ５２及び２つの外部デバイス５４，５６のデータ信号線のうちいずれかを選択してメモリ５８のデータ信号線に接続する。これら切換器８０，８２の切り換え制御は、バス調停セレクト信号に基づいて行われ、それぞれ現在、アドレス権を付与されているものに対応する信号線がメモリ５８に接続される。
【００１９】
本装置では、ＣＰＵ５２のデータ信号線に固定値出力回路７８が接続される。固定値出力回路７８は、固定値レジスタ８４、データセレクタ８６を含んで構成される。一方、アドレスデコーダ回路７６は、アドレス比較回路９０、アドレス範囲指定レジスタ９２、一群のアクセスフラグレジスタ９４を含んで構成される。なお、アクセスフラグレジスタ９４の補助として外部フラグメモリ９６が使用されることもある。アドレスデコーダ回路７６のアドレス比較回路９０にはＣＰＵ５２のアドレス信号線が接続されると共に、ＣＰＵ５２の読み出し／書き込み信号が入力され、一方、後述するアドレス一致信号を出力する。
【００２０】
以下、本発明に特有の構成であるアドレスデコーダ回路７６及び固定値出力回路７８を中心に本システムにおけるメモリ制御動作を説明する。
【００２１】
メモリ５８には描画、印刷の単位となるページに対応して、ページメモリとして使用される領域が確保され、そのアドレス空間がアドレス範囲指定レジスタ９２にセットされる。アドレス範囲指定レジスタ９２に指定されたアドレス空間により表されるメモリ領域を、所定サイズの分割領域に分割し、その各分割領域に対応して更新情報値を表すフラグが設定される。各アクセスフラグレジスタ９４はこのフラグを格納する。例えば、分割領域は１アドレスに対応する領域に指定することができる。ページメモリとして指定されたアドレス空間のサイズが大きい場合や、分割領域のサイズが小さい場合には、分割領域数が多くなる。このような場合において、アドレスデコーダ回路７６内のアクセスフラグレジスタ９４で足りないときには、外部フラグメモリ９６もフラグの格納に用いる。
【００２２】
アクセスフラグレジスタ９４（及び外部フラグメモリ９６）は、アドレス範囲指定レジスタ９２にページメモリの新たな範囲を設定するときに、値「０」にクリアされる。本システムではＣＰＵ５２が描画処理を行い、この際、ページメモリに対する読み出し／書き込み動作が行われる。
【００２３】
まずＣＰＵ５２から書き込み動作の要求があった場合には、アドレス比較回路９０は、書き込まれるアドレスに対応するアクセスフラグレジスタ９４にフラグ「１」をセットする。その一方で、ＣＰＵ５２から出力される書き込みアドレス、書き込みデータはそれぞれアドレスバスセレクト回路７２、データバスセレクト回路７４を経由して、メモリ５８に渡され、指定されたアドレスにデータが書き込まれる。
【００２４】
次に、ＣＰＵ５２からメモリ５８に対する読み出し動作の要求があった場合を説明する。この場合には、アドレス比較回路９０は、読み出すアドレスがアクセスフラグレジスタ９４に「０」をセットされているアドレスのうちのいずれかと一致するか否かを調べる比較処理を行う。例えば、アドレス比較回路９０は、まず読み出しアドレスがアドレス範囲指定レジスタ９２の設定範囲内に含まれるか否かを調べ、含まれる場合には、そのアドレスに対応するアクセスフラグレジスタ９４の格納内容を調べる。そのアクセスフラグレジスタ９４の内容が「０」である場合には、「一致」と判定してアドレス一致信号を生成する。
【００２５】
アドレス一致信号は固定値出力回路７８及びメモリバス調停回路６２へ出力される。メモリ５８から読み出されるデータは固定値出力回路７８のデータセレクタ８６を経由してＣＰＵ５２に転送することができる。アドレス比較回路９０からのアドレス一致信号はデータセレクタ８６に入力される。データセレクタ８６には固定値レジスタ８４が接続され、この固定値レジスタ８４には初期化値「０」が固定的に設定されている。データセレクタ８６はアドレス一致信号を入力されると、固定値レジスタ８４から初期化値を読み出してＣＰＵ５２に読み出しデータとして返す。すなわち、アクセスフラグレジスタ９４のフラグに基づいて、読み出し先がページメモリ設定後まだデータを書き込まれていないアドレスであることが検知されると、データセレクタ８６は実際にメモリ５８から読み出されたデータではなく、固定値レジスタ８４からの初期化値を選択してＣＰＵ５２へのデータ信号線へ出力する。一方、読み出し先がページメモリ設定後、既にデータ書き込みが行われたアドレスである場合には、データセレクタ８６にはアドレス一致信号が入力されず、これによりデータセレクタ８６は実際にメモリ５８から読み出されたデータを選択してＣＰＵ５２へのデータ信号線に出力する。
【００２６】
ちなみに、ＣＰＵ５２が１ページ分の描画処理を完了すると、そのページを格納する全てのアドレスにデータが書き込まれる（すなわち、対応するアクセスフラグレジスタ９４に値「１」が設定される）。ここで、ＣＰＵ５２に対して固定値出力回路７８を設けたことにより、ＣＰＵ５２による描画処理において、ページメモリに実際に「０」を書き込んで初期化する処理は別段行われないことに留意する。すなわち、ページメモリのクリア処理が省略される。これにより処理時間の短縮が図られると同時に、ＣＰＵ５２によるメモリ５８の読み出し動作において、実際にメモリ５８へのアクセスが不要となり、その分、メモリバスの使用率を低下させることができる。
【００２７】
ここで本システムではＣＰＵ５２があるページの描画処理を行っている間、外部デバイス５４等は先に生成されているページの画像データをＤＭＡ転送によりメモリ５８から読み出し、これを印刷データとして印刷処理を行う。上述のように、ＣＰＵ５２による処理においてメモリバスの負荷が低下されることにより、それにより生じるメモリバスの空き時間を利用して、外部デバイス５４等がＤＭＡ転送を行うことが可能となり、描画から印刷までの一連の処理時間が短縮される。以下、この点に関する本システムの動作を説明する。
【００２８】
ＣＰＵ５２が先行する１ページの画像データをメモリ５８上のページメモリ領域に書き込んだ段階から以下説明する。ＣＰＵ５２は１ページの画像データをページメモリに格納する処理を完了すると、次ページの画像データに関する処理を開始する。この処理ではＣＰＵ５２は、メモリ５８に先に生成された画像を格納するページメモリとは別の領域に１ページ分のページメモリを設定し、そのページメモリをクリアする。その後、そのページメモリに対し書き込み／読み込み動作を行いつつ、新たなページに対応する画像データを生成し、その生成した画像データを当該ページメモリに対する書き込み動作により格納する。
【００２９】
ここで、新たなページメモリのクリア処理は、ＣＰＵ５２が当該ページメモリのアドレス空間をアドレスデコーダ回路７６に与えると、アドレスデコーダ回路７６が当該ページメモリに対応するアクセスフラグレジスタ９４に値「０」をセットすることにより実現される。すなわち、既に述べたように、このクリア処理では、実際にメモリ５８にアクセスして書き込むことは行われない。
【００３０】
またＣＰＵ５２がページメモリに対する読み出し動作を行う場合、ＣＰＵ５２はメモリバス調停回路６２に対し、バスリクエスト信号を送信する。メモリバス調停回路６２はＣＰＵ５２の要求と他の外部デバイス５４等からの要求とを調停した結果、ＣＰＵ５２にアクセス権を与えることとした場合には、バスグラント信号をＣＰＵ５２に返すと共に、バス調停セレクト信号により切換器８０，８２を、それぞれＣＰＵ５２のアドレス信号線、データ信号線を選択するように切り換え制御する。
【００３１】
一方、ＣＰＵ５２はアクセス権を得たことにより、そのアドレス信号線に対して、読み出し先のメモリアドレスを指定する信号を与える。アドレスデコーダ回路７６はこのアドレスに対応するアクセスフラグレジスタ９４の値が「０」である場合には、アドレス一致信号を出力する。アドレス一致信号が出力された場合、データセレクタ８６は、固定値レジスタ８４から得られる初期値「０」をデータ信号線に送出する。すなわち、この場合には、切換器８２からデータセレクタ８６に入力されるデータが何であるかに無関係に、ＣＰＵ５２には「０」が返され、ＣＰＵ５２はこれをメモリから読み出されたデータとして取り扱う。ちなみに、データアドレス一致信号が出力されない場合には、ＣＰＵ５２が指定したアドレスに対応してメモリ５８から読み出されたデータが切換器８２を介してＣＰＵ５２のデータ信号線に出力され、データセレクタ８６はこのデータをＣＰＵ５２へ渡す。
【００３２】
さて、上に述べたアドレスデコーダ回路７６がアドレス一致信号を出力した場合、そのアドレス一致信号はメモリバス調停回路６２にも与えられる。アドレス一致信号が出力された場合には上述のように、ＣＰＵ５２に対して読み出しデータを返すことに関して、実際にメモリ５８にアクセスすることは不要である。そこで、メモリバス調停回路６２はアドレス一致信号を入力された場合には、ＣＰＵ５２へのアクセス権付与に伴い禁止していた他の装置からのバスリクエスト信号の受付をバスサイクルの終了を待たずに可能とする。例えば、外部デバイス５４が先行ページのデータを読み出すためにバスリクエスト信号を送出した場合、メモリバス調停回路６２はこの外部デバイス５４にアクセス権を付与することとして、外部デバイス５４にバスグラント信号を返す。ここで、この外部デバイス５４へのアクセス権の付与は、ＣＰＵ５２と固定値出力回路７８との間のデータの受け渡しが完了していなくても実行される。
【００３３】
外部デバイス５４にアクセス権が付与されると、メモリバス調停回路６２はバス調停セレクト信号により、切換器８０，８２を、それぞれ外部デバイス５４のアドレス信号線、データ信号線を選択するように切り換え制御する。
【００３４】
一方、外部デバイス５４はアクセス権を得たことにより、そのアドレス信号線に対して、読み出し先のメモリアドレスを指定する信号を与える。このメモリアドレスは切換器８０を介してメモリ５８に指定され、対応するアドレスから読み出されたデータが切換器８２を介して外部デバイス５４に返される。なお、この外部デバイス５４の読み出し動作において、ＣＰＵ５２からそのアドレス信号線にアドレス信号がまだ出力されているとしても、切換器８０がＣＰＵ５２からのアドレス信号ではなく、外部デバイス５４からのアドレス信号を選択してメモリ５８に与えるので支障はない。
【００３５】
なお、ここではＣＰＵ５２の読み出し動作と並行して外部デバイス５４の読み出し動作を行う場合を説明したが、ＣＰＵ５２の読み出し動作と並行して他の装置からメモリ５８への書き込み動作を行うこともできる。
【００３６】
図４、図５は、以上の本システムの動作における各信号のタイミング図であり、いずれもＣＰＵ５２の読み出し動作が先に要求され、例えば外部デバイス５４の読み出し動作がその後に要求された場合を示している。図４は、ＣＰＵ５２の読み出し動作が、アクセスフラグレジスタ９４の値が「１」であるアドレスに対するものである場合であり、逆に図５は、アクセスフラグレジスタ９４の値が「０」であるアドレスに対する読み出し動作であり、アドレス一致信号が出力される場合である。これら図において、「ＣＰＵ  ＢＲ」、「ＣＰＵ  ＢＧ」、「外部ＢＲ」、「外部ＢＧ」はそれぞれ、ＣＰＵ５２からのバスリクエスト信号、ＣＰＵ５２へのバスグラント信号、外部デバイス５４からのバスリクエスト信号、外部デバイス５４へのバスグラント信号を表し、いずれも信号レベルがＬｏｗ状態（図において縦方向に表す電圧値が下がった状態）にてバスリクエスト又はバスグラントがなされていることを表す。また、「ＣＰＵ  Ｒ／Ｗ」はＣＰＵ５２からの読み出し要求信号（図においてＣＰＵ  Ｒｅａｄ）と書き込み要求信号を表す。「ＣＰＵ  Ａｄｄｒｅｓｓ」、「外部Ａｄｄｒｅｓｓ」、「メモリＡｄｄｒｅｓｓ」はそれぞれＣＰＵ５２が指定するメモリアドレス、外部デバイス５４が指定するメモリアドレス、実際にメモリ５８に指定されるメモリアドレスを表す。「ＣＰＵ  Ｄａｔａ」、「外部Ｄａｔａ」、「メモリＤａｔａ」はそれぞれＣＰＵ５２のデータ信号線上のデータ信号、外部デバイス５４のデータ信号線上のデータ信号、メモリバス上を受け渡されるデータ信号を表す。
【００３７】
図４に示す場合には、ＣＰＵ５２の読み出し要求（ＣＰＵ  Ｒｅａｄ）に対して、実際にメモリ５８へのアクセスが行われる（図示する期間Ａ）。そのため、外部デバイス５４のバスリクエスト信号（外部ＢＲ）に対するバスグラント信号（外部ＢＧ）は、ＣＰＵ５２とメモリ５８との間のデータ転送の最終段階（期間Ａの終わり）にて出力され、その最終段階が完了した後、外部デバイス５４がＤＭＡ転送のため、読み出しアドレス（外部Ａｄｄｒｅｓｓ）を出力することができる（図示する期間Ｂ）。そしてこの指定されたアドレスがメモリ５８に「メモリＡｄｄｒｅｓｓ」信号として渡され、それにより指定されたアドレスから読み出されたメモリ５８のデータがメモリバス、外部デバイス５４のデータ信号線を伝送される（図示する期間Ｃ）。
【００３８】
一方、図５に示す場合では、ＣＰＵ５２の読み出し要求（ＣＰＵ  Ｒｅａｄ）と共にその指定アドレスが入力されると、アドレスデコーダ回路７６がそのアドレスに応じてアドレス一致信号を出力する。アドレス一致信号が出力されると、固定値出力回路７８がＣＰＵ５２の読み出し要求に対して固定値レジスタ８４から固定値「０」を返す動作（図示する期間Ａ’）を開始する一方で、メモリバス調停回路６２が外部デバイス５４に対しバスグラント信号（外部ＢＧ）を出力する。外部デバイス５４はバスグラント信号を受けるとＤＭＡ転送のために読み出しアドレス（外部Ａｄｄｒｅｓｓ）を出力する（図示する期間Ｂ’）。この外部デバイス５４から指定された読み出しアドレスはメモリ５８に「メモリＡｄｄｒｅｓｓ」信号として渡され、その指定されたアドレスから読み出されたメモリ５８のデータがメモリバス、外部デバイス５４のデータ信号線をそれぞれ伝送される（図示する期間Ｃ’）。
【００３９】
図４に示す場合には、ＣＰＵ５２に関する読み出し動作（期間Ａの動作）と、外部デバイス５４に関する読み出し動作（期間Ｂ及び期間Ｃの動作）とは順次、実行される。これに対し、図５に示す場合には、ＣＰＵ５２に関する読み出し動作（期間Ａ’の動作）を、メモリバスを使用せず行うことができ、それにより空いたメモリバスを使用して、外部デバイス５４によるメモリ５８へのアクセス動作（期間Ｂ’及び期間Ｃ’の動作）を実行することができる。
【００４０】
以上のように本システムでは、アクセスフラグレジスタ９４の値が「１」のアドレスにＣＰＵ５２が読み出し動作を行う場合には図４に示す動作が行われるが、アクセスフラグレジスタ９４の値が「０」のアドレスに読み出し動作を行う場合には図５に示す動作が行われることになるので、メモリバスの負荷が軽減され、また複数の装置で負荷が軽減されたメモリバスを効率的に利用して、アクセス権の割り当ての待ち時間を少なくし、処理の高速化が図られる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るプリンタシステムの概略の構成を示す模式図である。
【図２】本システムのメモリバスコントローラの主要部の概略の構成を示す模式図である。
【図３】本システムのメモリバスコントローラに備えられるアドレスデコーダ回路の構成を示す模式図である。
【図４】アクセスフラグレジスタの値が「１」であるアドレスに対するＣＰＵの読み出し動作における各信号のタイミング図である。
【図５】アクセスフラグレジスタの値が「０」であるアドレスに対するＣＰＵの読み出し動作における各信号のタイミング図である。
【図６】ＣＰＵと外部デバイスとでメモリバスを共用する従来のシステムの概略の構成を示す模式図である。
【図７】従来のシステムにおけるメモリバスコントローラの概略の構成を示す模式図である。
【符号の説明】
５２  ＣＰＵ、５４，５６  外部デバイス、５８  メモリ、６０  メモリバスコントローラ、６２  メモリバス調停回路、７２  アドレスバスセレクト回路、７４  データバスセレクト回路、７６  アドレスデコーダ回路、７８  固定値出力回路、８０，８２  切換器、８４  固定値レジスタ、８６  データセレクタ、９０  アドレス比較回路、９２  アドレス範囲指定レジスタ、９４  アクセスフラグレジスタ。
【図１】
2005062946.tif 000003
【図２】
2005062946.tif 000004
【図３】
2005062946.tif 000005
【図４】
2005062946.tif 000006
【図５】
2005062946.tif 000007
【図６】
2005062946.tif 000008
【図７】
2005062946.tif 000009