(57)【要約】【課題】  メモリ装置をアクセスする複数のマスタに対して、必要なデータを円滑に転送する。【解決手段】  メモリ装置（ＭＥＭ０）と、上記メモリ装置の動作を制御可能なメモリ制御装置（ＳＬ０）と、それぞれ上記メモリ制御装置を介して上記メモリ装置へアクセス可能な複数のバスマスタ（ＭＳ０〜ＭＳ３）とを含む情報処理システムにおいて、上記メモリ装置からのデータ転送をいつまでに開始できるかという時間情報を、アクセス要求にかかる上記バスマスタに通知可能な制御回路（ＳＤＣＯＮ）を上記メモリ制御装置内に設ける。バスマスタは、通知された時間情報を上記メモリ装置へのアクセス要求発するか否かの判断材料とすることができ、それによって各バスマスタは無駄なアクセス要求の発生を回避し、クセスする複数のマスタに対するデータ転送の円滑化を達成する。【選択図】        図１
2006163711.tif 000002
【特許請求の範囲】
【請求項１】
メモリ装置と、上記メモリ装置の動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリ装置へアクセス可能な複数のバスマスタと、を含む情報処理システムであって、
上記メモリ制御装置は、上記メモリ装置からのデータ転送をいつまでに開始できるかという時間情報を、アクセス要求にかかる上記バスマスタに通知可能な制御回路を含んで成る情報処理システム。
【請求項２】
メモリ装置と、上記メモリ装置の動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリへアクセス可能な複数のバスマスタと、を含む情報処理システムであって、
上記バスマスタは、上記メモリアクセスにかかる要求データを受け取るまでの最大許容時間情報を上記メモリ制御装置に通知する機能を含んで成る情報処理システム。
【請求項３】
上記複数のバスマスタからのアクセス要求の競合の調停、及び上記複数のバスマスタから通知された上記最大許容時間情報の調停を行うアクセス調停装置を含む請求項２記載の情報処理システム。
【請求項４】
上記メモリ制御装置は、上記最大許容時間情報に基づいて上記メモリに対するアクセス順位を決定する請求項３記載の情報処理システム。
【請求項５】
上記メモリ制御装置は、上記バスマスタからのアクセス要求に対する上記メモリのアクセス状況に応じて上記アクセス順位を変更可能な請求項４記載の情報処理システム。
【請求項６】
メモリ制御装置は、上記バスマスタからのアクセス要求情報を保持可能なバッファと、時間情報を保存可能なレジスタとを含み、上記バッファに保持されているアクセス要求情報と、上記バッファに保持されているアクセス要求情報とに基づいて上記データ到達時間を計算する請求項１記載の情報処理システム。
【請求項７】
メモリ装置と、上記メモリの動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリ装置へアクセス可能な複数のバスマスタと、を含む情報処理システムであって、
上記メモリ制御装置は、上記バスマスタからのアクセス要求を保持可能なバッファを含み、上記バッファの利用権を上記バスマスタ毎に設定可能な情報処理システム。
【請求項８】
上記メモリ制御装置は、上記バスマスタによる上記バッファの利用権を予約可能なフラグ回路を含む請求項７記載の情報処理システム。
【請求項９】
上記バスマスタは、上記フラグ設定回路に設定された上記バッファの利用権の予約を解除する機能を有する請求項８記載の情報処理システム。
【請求項１０】
上記複数のバスマスタと、上記メモリ制御装置とが一つの半導体チップに形成された請求項１乃至９の何れか１項記載の情報処理システム。
【請求項１１】
上記複数のバスマスタと、上記メモリ制御装置と、上記メモリとが一つの半導体チップに形成された請求項１乃至９の何れか１項記載の情報処理システム。
【請求項１２】
上記複数のバスマスタと、上記メモリ制御装置とは第１半導体チップに形成され、上記メモリ装置は、上記第１半導体チップとは異なる第２半導体チップに形成され、上記第１半導体チップと上記第２半導体チップとが共通の封止体によって封止されて成る請求項１乃至９の何れか１項記載の情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報の処理を可能とする情報処理システムに関し、例えば画像データを取り扱う装置に適用して有効な技術に関する。
【背景技術】
【０００２】
従来のメモリ制御方法としては、例えば、ＣＰＵ（中央演算回路）とそれ以外のメモリをアクセスする複数のマスタとメモリから構成される情報処理装置では、各マスタからのメモリアクセス要求が競合した場合、これらメモリアクセス要求の優先順位に従って、処理を行っている。このようなメモリ制御方法としては、メモリをアクセスするマスタであるホストコンピュータ側の制御回路と、ハードディスク装置側の制御回路ＦＩＦＯメモリのデータがオーバーフローやアンダーフローしない程度に、ＤＲＡＭをアクセスするためのアクセス権を切り替えてデータ転送を行う技術が知られている（例えば特許文献１参照）。
【０００３】
また、メモリをアクセスするマスタであるＣＰＵと液晶表示装置及びＣＲＴ表示装置と、メモリから構成される情報処理装置のメモリ制御方法で、液晶表示用及びＣＲＴ表示装置が装備しているＦＩＦＯメモリのデータがオーバーフローやアンダーフローしない程度に、ＣＰＵからＤＲＡＭへのアクセスを優先させ、データ転送を行う技術が知られている（例えば特許文献２参照）。
【０００４】
さらにメモリをアクセスするマスタであるＣＰＵとＤＭＡ装置と、メモリから構成される情報処理装置のメモリ制御方法で、ＤＭＡ装置が装備しているＦＩＦＯメモリのデータがオーバーフローやアンダーフローしない程度に、ＣＰＵからＤＲＡＭへのアクセスを優先させ、データ転送を行う技術が知られている（特許文献３参照）記載される。
【０００５】
【特許文献１】特開平９−２３１１５８号公報
【特許文献２】特開２０００−３５７７８号公報
【特許文献３】特開２０００−３１５１８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本願発明者は、以下のような動画像録画や再生、グラフィックス処理を実現する制御技術について以下のような検討を行った。
【０００７】
動画像の録画では、撮像装置で撮像した動画像を、デジタルデータへ変換して、いったんメモリ装置へ取り込む。その次に、メモリへ取り込まれた動画像データは、すぐに表示装置へ転送され、動画像が表示される。これらの処理と同時に、取り込まれた動画像データを読み出して圧縮処理を行い、圧縮データを再度メモリへ書き込む。
【０００８】
再生する場合は、メモリへ格納している圧縮データを読み出し、伸張処理を行い、再度メモリへ書き込む。その後、伸張されたデータを読み出し、表示装置へ転送し、動画像を表示する。
【０００９】
このように、動画像の録画や再生においては、撮像、表示、及び圧縮や伸張処理は、同時に実行され、さらに１秒間に３０画面分の処理を行う必要がある。つまり、１画面分の処理を３０分の１秒以内に終了させなければならない。
【００１０】
グラフィックス処理では、ジオメトリ処理が行われ、その後レンダリング処理が行われる。
【００１１】
ジオメトリ処理は、３次元図形を表すため、図形の座標計算を行うことである。レンダリング処理は、画像表示装置へ表示するために、ジオメトリ処理後の図形に、色、明るさ、奥行き、絵柄といった視覚的効果を付け足す処理である。画像はメモリへ格納されており、現在の画像を読み出して、ジオメトリ処理が行われ、その後、レンダリング処理が行われ、新しい画像が生成され、再度メモリへ格納される。
【００１２】
最後に、メモリへ格納された画像は画像表示装置に表示される。
【００１３】
このようなグラフィックス処理では、ジオメトリ処理、レンダリング処理及び表示は同時に処理され、加えて１秒間に３０画面分のグラフィックス処理を行う必要がある。つまり、１画面分のグラフィックス処理を３０分の１秒以内に終了させなければならない。
【００１４】
しかし、上記従来技術では、マスタ側の処理を一定時間以内に終了させることを保障することができないので、場合によっては圧縮処理が滞り、録画データに欠落が生じたり、表示画面が乱れたり、情報処理システムの動作品質を低下させてしまうおそれがある。
【００１５】
本発明の目的は、メモリ装置をアクセスする複数のマスタに対して、必要なデータを円滑に転送するための技術を提供することにある。
【００１６】
また、本発明の別の目的は、バスマスタにおける処理の効率化を図るための技術を提供することにある。
【００１７】
本発明の上記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１９】
すなわち、メモリ装置と、上記メモリ装置の動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリ装置へアクセス可能な複数のバスマスタと、を含む情報処理システムにおいて、上記メモリ装置からのデータ転送をいつまでに開始できるかという時間情報を、アクセス要求にかかる上記バスマスタに通知可能な制御回路を上記メモリ制御装置内に設ける。
【００２０】
上記の手段によれば、上記メモリ装置からのデータ転送をいつまでに開始できるかという時間情報が、アクセス要求にかかるバスマスタに通知される。バスマスタは、通知された時間情報を上記メモリ装置へのアクセス要求発するか否かの判断材料とすることができ、それによって各バスマスタは無駄なアクセス要求の発生を回避することができる。このことが、メモリ装置をアクセスする複数のマスタに対するデータ転送の円滑化を達成する。また、上記メモリ装置からのデータ転送をいつまでに開始できるかという時間情報が、アクセス要求にかかるバスマスタに通知されることにより、各バスマスタは、内部処理を柔軟に調整することができ、このことが、バスマスタ内の処理の効率化を達成する。
【００２１】
そして、メモリ装置と、上記メモリ装置の動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリへアクセス可能な複数のバスマスタとを含む情報処理システムにおいて、上記バスマスタは、上記メモリアクセスにかかる要求データを受け取るまでの最大許容時間情報を上記メモリ制御装置に通知する機能を含む。
【００２２】
上記の手段によれば、上記メモリアクセスにかかる要求データを受け取るまでの最大許容時間情報が上記メモリ制御装置に通知されることから、上記メモリ制御装置では、通知された時間情報に基づいて優先順位の変更などが可能とされ、最大許容時間を逸脱したデータ転送を回避することができ、このことが、データ転送の円滑化を達成する。
【００２３】
このとき、上記複数のバスマスタからのアクセス要求の競合の調停、及び上記複数のバスマスタから通知された上記最大許容時間情報の調停を行うアクセス調停装置を設けることができる。
【００２４】
上記メモリ制御装置は、上記最大許容時間情報に基づいて上記メモリに対するアクセス順位を決定するように構成することができる。
【００２５】
さらに、上記メモリ制御装置は、上記バスマスタからのアクセス要求に対する上記メモリのアクセス状況に応じて上記アクセス順位を変更可能に構成することができる。
【００２６】
メモリ制御装置は、上記バスマスタからのアクセス要求情報を保持可能なバッファと、時間情報を保存可能なレジスタとを備え、上記バッファに保持されているアクセス要求情報と、上記バッファに保持されているアクセス要求情報とに基づいて上記データ到達時間を計算するように構成することができる。
【００２７】
また、メモリと、上記メモリの動作を制御可能なメモリ制御装置と、それぞれ上記メモリ制御装置を介して上記メモリへアクセス可能な複数のバスマスタとを含む情報処理システムにおいて、上記メモリ制御装置は、上記バスマスタからのアクセス要求を保持可能なバッファを含み、上記バッファの利用権を上記バスマスタ毎に設定可能に構成することができる。
【００２８】
上記バスマスタによる上記バッファの利用権を予約可能なフラグ回路を上記メモリ制御装置内に設けることができる。
【００２９】
上記バスマスタには、上記フラグ設定回路に設定された上記バッファの利用権の予約を解除する機能を設けることができる。
【００３０】
上記複数のバスマスタと、上記メモリ制御装置とを一つの半導体チップに形成することができる。
【００３１】
上記複数のバスマスタと、上記メモリ制御装置と、上記メモリとを一つの半導体チップに形成することができる。
【００３２】
上記複数のバスマスタと、上記メモリ制御装置とを第１半導体チップに形成し、上記メモリ装置を第２半導体チップに形成し、上記第１半導体チップと上記第２半導体チップとを共通の封止体によって封止することができる。
【発明の効果】
【００３３】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００３４】
すなわち、メモリ装置をアクセスする複数のマスタに対するデータ転送の円滑化を図ることができる。また、バスマスタ内の処理を柔軟に調整することができ、それによってバスマスタ内の処理の効率化を図ることができる。
【発明を実施するための最良の形態】
【００３５】
＜実施の形態１＞
図１には、本願にかかる情報処理システムの構成例が示される。
【００３６】
図１に示される情報処理システムは、特に制限されないが、中央演算回路ＣＰＵを装備するマイクロコンピュータＭＳ０、データ圧縮／伸張回路ＭＡＣＣを装備する画像処理装置ＭＳ１、データ入力装置ＭＳ２、データ出力装置ＭＳ３、アクセス調停装置ＡＲＢ、内蔵メモリ装置ＯＣＲＡＭ、メモリ制御装置ＳＬ０、撮像装置ＣＣＤ、画像表示装置ＬＣＤ、メモリ装置ＭＥＭ０を含み、クロックＣＬＫに同期して動作する。
【００３７】
特に制限されないが、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２、データ出力装置ＭＳ３、アクセス調停装置ＡＲＢ、メモリ制御装置ＳＬ０および内蔵メモリ装置ＯＣＲＡＭは、同一基板上に形成される。
【００３８】
特に制限されないが、メモリ装置ＭＥＭ０および内蔵メモリ装置ＯＣＲＡＭはＤＲＡＭ、ＳＲＡＭ及び不揮発性メモリで構成することが可能である。  マイクロコンピュータＭＳ０は、例えば中央演算装置ＣＰＵと、アクセス要求のためのリクエストバッファｒｑｍ０と、アクセス要求に対する応答のためのレスポンスバッファｒｓｍ０から構成される。
【００３９】
画像処理装置ＭＳ１は、データ圧縮／伸張装置ＭＡＣＣと、アクセス要求のためのリクエストバッファｒｑｍ１と、アクセス要求に対する応答のためのレスポンスバッファｒｓｍ１から構成される。
【００４０】
データ入力装置ＭＳ２は、画像入力回路ＶＩＦと、アクセス要求のためのリクエストバッファｒｑｍ２と、アクセス要求に対する応答のためのレスポンスバッファｒｓｍ２を含んで成り、撮像装置ＣＣＤからの動画像データｄｉｎを取り込む。
【００４１】
データ出力装置ＭＳ３は、画像出力装置ＬＩＦと、アクセス要求のためのリクエストバッファｒｑｍ３と、アクセス要求に対する応答のためのレスポンスバッファｒｓｍ３を含み、画像表示装置ＬＣＤに動画像データｄｏｕｔを出力する。
【００４２】
メモリ制御装置ＳＬ０は、メモリ制御回路ＳＤＣＯＮと、レジスタ回路ｓｒｅｇと、アクセス要求のためのリクエストバッファｒｅｑ０と、アクセス要求に対する応答のためのレスポンスバッファｒｅｓ０を含み、上記メモリ装置ＭＥＭ０の動作を制御する。
【００４３】
内蔵メモリ装置ＯＣＲＡＭは、メモリアレイＲＡＭとメモリ制御回路ＳＤＣＯＮと、レジスタ回路ｒｒｅｇと、アクセス要求のためのリクエストバッファｒｅｇ１と、アクセス要求に対する応答のためのレスポンスバッファｒｅｓ１を含んで構成される。
【００４４】
上記マイクロコンピュータＭＳ０と、画像処理装置ＭＳ１と、データ入力装置ＭＳ２と、データ出力装置ＭＳ３は、何れもバスマスタとされ、それぞれの固有のマスタ識別番号が設定されており、マイクロコンピュータＭＳ０のマスタ識別番号ｍｉｄは「０」に、画像処理装置ＭＳ１のマスタ識別番号ｍｉｄは「１」に、データ入力装置ＭＳ２のマスタ識別番号ｍｉｄは「２」に、データ出力装置ＭＳ３のマスタ識別番号ｍｉｄは「３」に設定されている。
【００４５】
上記構成の動作を説明する。
【００４６】
先ず、画像を録画する場合の動作を簡単に説明する。
【００４７】
撮像装置ＣＣＤで撮像して得られた動画像データｄｉｎは、データ入力装置ＭＳ２によって取り込まれ、アクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０を介して、メモリ装置ＭＥＭ０へ転送される。
【００４８】
マイクロコンピュータＭＳ０は、アクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０とを介してメモリ装置ＭＥＭ０から動画データを読み出し、それに回転処理を施す。その処理結果はアクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０とを介して、再度、メモリ装置ＭＥＭ０へ書き込まれる。
【００４９】
データ出力装置ＭＳ３は、メモリ装置ＭＥＭ０からアクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０とを介して、マイクロコンピュータＭＳ０によって回転処理が施された動画像データを読み出し、それを動画像表示のための画像表示装置ＬＣＤへ転送する。
【００５０】
画像処理装置ＭＳ１は、メモリ装置ＭＥＭ０から、アクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０とを介して、マイクロコンピュータＭＳ０によって回転処理が施された画像データを読み出し、データ圧縮を施す。その処理結果はアクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０とを介して、再度メモリ装置ＭＥＭ０へ書き込まれる。
【００５１】
アクセス調停装置ＡＲＢとメモリ制御装置ＳＬ０は互いに連携し、上述した録画に必要な処理を一定の時間内に完了し、録画を滞りなく実行するために、データ転送制御を行う。
【００５２】
次に、データ入力装置ＭＳ２からメモリ装置ＭＥＭ０へのアクセス要求について説明する。
【００５３】
データ入力装置ＭＳ２は、装備している画像入力回路ＶＩＦによって撮像装置ＣＣＤで撮像している動画像のデータを順に取り込み、それをリクエストバッファｒｑｍ２へ転送する。
【００５４】
リクエストバッファｒｑｍ２からメモリ装置ＭＥＭ０へのデータを転送する場合、データ入力装置ＭＳ２は、アクセス調停装置ＡＲＢへ、アクセス要求として、制御信号ｃｎｔ２より、マスタ識別番号ｍｉｄと、ライト命令と、転送したいデータ量、（以下、転送データサイズ）と、転送先アドレスとを送信する。さらに信号ｌａｔ２より、何時までにデータ転送を開始したいかという時間情報（以下「要求ライトレイテンシ」）を送信する。
【００５５】
次に、メモリ装置ＭＥＭ０からデータ出力装置ＭＳ３へのデータ転送について説明する。データ出力装置ＭＳ３によって、メモリ装置ＭＥＭ０へ保存されている動画像データは、メモリ制御装置ＳＬ０とアクセス調停装置ＡＲＢを介し、レスポンスバッファｒｓｍ３へ順に転送される。そして、画像表示装置ＬＣＤで動画像を表示させるため、画像出力回路ＬＩＦは画像表示装置ＬＣＤへ、動画像のデータを順に転送する。
【００５６】
メモリ装置ＭＥＭ０からレスポンスバッファｒｓｍ３へデータを転送する場合は、データ出力装置ＭＳ３が、アクセス調停装置ＡＲＢへ、アクセス要求として、マスタ識別番号ｍｉｄと、制御信号ｃｎｔ３よりリード命令と、転送データサイズと、転送元アドレスとを送信し、さらに、レイテンシ信号ｌａｔ３より、データを受け取るまでのデータ到達時間情報（以下「要求リードレイテンシ」）を送信する。
【００５７】
次に、回転処理を行うためのマイクロコンピュータＭＳ０とメモリ装置ＭＥＭ０間のアクセス要求について説明する。
【００５８】
メモリ装置ＭＥＭ０からレスポンスバッファｒｓｍ０へデータを転送する場合は、マイクロコンピュータＭＳ０はアクセス調停装置ＡＲＢへ、アクセス要求として、制御信号ｃｎｔ０よりマスタ識別番号ｍｉｄと、リード命令と、転送データサイズと、転送元アドレスとを送信し、さらに、レイテンシ信号ｌａｔ０より、要求リードレイテンシを送信する。
【００５９】
リクエストバッファｒｑｍ０から、メモリ装置ＭＥＭ０へデータを転送する場合は、アクセス調停装置ＡＲＢへ、アクセス要求として、制御信号ｃｎｔ０よりマスタ識別番号ｍｉｄと、ライト命令と、転送データサイズと、転送先アドレスとを送信し、さらにレイテンシ信号ｌａｔ２より要求ライトレイテンシを送信する。
【００６０】
次に、データ圧縮を行う場合の画像処理装置ＭＳ１とメモリ装置ＭＥＭ０間のアクセス要求について説明する。
【００６１】
メモリ装置ＭＥＭ０が保存している動画像データをレスポンスバッファｒｓｍ１へ転送する場合は、画像処理装置ＭＳ１が、アクセス調停装置ＡＲＢへ、アクセス要求として、制御信号ｃｎｔ１よりマスタ識別番号ｍｉｄと、リード命令と、転送データサイズと、転送元アドレス送信し、さらに、レイテンシ信号ｌａｔ１より要求リードレイテンシを送信する。
【００６２】
リクエストバッファｒｑｍ１から、メモリ装置ＭＥＭ０へデータを転送する場合は、アクセス調停装置ＡＲＢへ、アクセス要求として、信号ｃｎｔ１よりマスタ識別番号ｍｉｄと、ライト命令と、転送データサイズと、転送先アドレスを送信し、さらに、レイテンシ信号ｌａｔ１より要求ライトレイテンシを送信する。
【００６３】
メモリ制御装置ＳＬ０は、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３の各バスマスタからのアクセス要求が、リクエストバッファｒｅｑ０に受け付けられた場合、メモリ装置ＭＥＭ０へのデータ転送をいつまでに開始できるかという時間情報（以下「転送可能ライトレイテンシ」）と、メモリ装置ＭＥＭ０からのデータ転送をいつまでに開始できるかという時間情報（以下転送可能リードレイテンシ）を、状態信号ｓｔａｔを通じて、予めアクセス調停装置ＡＲＢへ送信する。これら転送可能ライトレイテンシおよび転送可能リードレイテンシは、状態信号ｒｓｔａｔを通じて、常に、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３に伝達される。
【００６４】
さらに、メモリ制御装置ＳＬ０は、アクセス要求のためのリクエストバッファｒｅｑ０がどの程度、空き状態となっているかどうかを示す情報（以下空きバッファ数）を状態信号statよりアクセス調停回路ARBへ伝え、さらにアクセスアクセス調停回路ARBは状態信号statの情報を状態信号ｒｓｔａｔより伝える。
【００６５】
これによりマイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３は、常にデータの到達時間や、リクエストバッファｒｅｑ０の状態を知ることができるため、データの到達時間までに、次の処理をどこまで前もって行うかを柔軟に調節することができ、マスタ内の処理を効率的に行うことができる。
【００６６】
また、アクセス調停装置ＡＲＢでは、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３からアクセス要求と、それぞれの装置の要求ライトレイテンシあるいは要求リードレイテンシが同時に入力されアクセスが競合した場合、先ず、アクセス調停装置ＡＲＢはリクエストバッファｒｅｑ０が空いているかをチェックする。リクエストバッファｒｅｑ０が空いていなければ、メモリ制御装置ＳＬ０へのアクセス要求を行わない。リクエストバッファｒｅｑ０が空いていれば、アクセス要求の命令がリード命令の場合、要求リードレイテンシとメモリ制御装置ＳＬ０からの転送可能リードレイテンシとを比較する。要求リードレイテンシが転送可能リードレイテンシ以下のアクセス要求のみを選択する。
【００６７】
また、アクセス要求の命令がライト要求の場合、要求ライトレイテンシとメモリ制御装置ＳＬ０からの転送可能ライトレイテンシとを比較する。要求ライトレイテンシが転送可能ライトレイテンシ以下のアクセス要求のみを選択する。
【００６８】
次に、上記述で選択されたアクセス要求は、アクセス調停装置ＡＲＢが内部に装備している、それぞれのマスタ（マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３）に対する第一アクセス優先レベルを比較し、最も高い優先レベルのアクセス要求をさらに選択する。
【００６９】
最も高い優先レベルのアクセス要求がひとつしか存在しない場合、そのアクセス要求に対してアクセス許可を与える。また、同じ優先レベルのアクセス要求が複数存在する場合、選択されたアクセス要求の中で、要求ライトレイテンシと転送可能ライトレイテンシの差、あるいは要求リードレイテンシと転送可能リードレイテンシの差が最も小さなアクセス要求に対し、アクセス許可を与える。
【００７０】
アクセス調停装置ＡＲＢによって、アクセス許可を与えられたアクセス要求が画像処理装置ＭＳ１からのリードアクセス要求の場合、制御信号ｃｎｔ４を通じて、マスタ識別番号ｍｉｄと、リード命令と、転送データサイズと、転送元アドレスとが、メモリ制御装置ＳＬ０のリクエストバッファｒｅｑ０へ転送される。
【００７１】
このように、マスタ側からの要求リードレイテンシに対して、その要求が満たされるかどうかをチェックし、さらに、要求リードレイテンシと可能リードレイテンシの差が最も小さなアクセス要求に対し、アクセス許可を与えることで、要求リードレイテンシを満たしながら、緊急度の高い要求を優先的に処理することができる。
【００７２】
メモリ制御装置ＳＬ０は、例えば、画像処理装置ＭＳ１のリード命令を含んだアクセス要求をリクエストバッファｒｅｑ０へ受け取った場合、その直後に、メモリ制御回路ＳＤＣＯＮは、現在、受け取ったアクセス要求に対する実際のリードレイテンシ（以下、実リードレイテンシ）及び空バッファ数を計算する。
【００７３】
実リードレイテンシは信号ｌａｔ０４を通じて、空きバッファ数は、信号ｓｔａｔを通じて、画像処理装置ＭＳ１のマスタ識別番号ｍｉｄは制御信号ｃｎｔ４を通じて、アクセス調停装置ＡＲＢへ転送する。
【００７４】
アクセス調停装置ＡＲＢは、メモリ制御回路ＳＤＣＯＮからの実リードレイテンシを、レイテンシ信号ｌａｔ１より、また空バッファ数を信号ｒｓｔａｔより、マスタ識別番号ｍｉｄは、制御信号ｃｎｔ１を通じて、画像処理装置ＭＳ１へ転送する。
【００７５】
また、メモリ制御装置ＳＬ０は、次のアクセス要求がリクエストバッファｒｅｑ０へ受け付けられた場合の転送可能ライトレイテンシと、転送可能リードレイテンシを、信号ｓｔａｔを通じてアクセス調停装置へ送信する。これらレイテンシはアクセス調停装置ＡＲＢを介して、信号ｒｓｔａｔを通じて、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３へ送信される。
【００７６】
最後に、メモリ制御回路ＳＤＣＯＮはメモリ装置ＭＥＭ０に保存している動画データを読み出し、レスポンスバッファｒｅｓ０へ転送する。レスポンスバッファｒｅｓ０によって、読み出されたデータはデータバスｔｒｂｕｓを通じて、アクセス調停装置ＡＲＢへ転送される。アクセス調停装置ＡＲＢはメモリ制御装置ＳＬ０からの読み出したデータを、データバスｒｂｕｓを通じて要求元の画像処理装置ＭＳ１のレスポンスバッファｒｓｍ１へ転送する。
【００７７】
上記の例では、画像処理装置ＭＳ１のアクセス要求が許可され、メモリ装置ＭＥＭ０へのアクセスが生じた場合の制御方法について説明したが、内蔵メモリ装置ＯＣＲＡＭへのアクセスについても同様の制御がなされる。また、メモリ装置ＭＥＭ０や内蔵メモリ装置ＯＣＲＡＭをアクセスする他のマスタについても同様の制御がなされる。
【００７８】
次に、主要部のさらに詳細な構成及び動作について説明する。
【００７９】
図２には上記メモリ装置ＭＥＭ０からデータを読み出す際の動作が示される。また、図３には上記メモリ装置ＭＥＭ０へデータを書き込む際の動作が示される。
【００８０】
メモリ装置ＭＥＭ０には、ＥＤＯ−ＤＲＡＭ、ＳＤＲＡＭ、ＤＤＲ−ＳＤＲＡＭ、ＳＲＡＭ、擬似ＳＲＡＭなどの揮発性メモリ及びＭＲＡＭや相変化メモリなどの不揮発性メモリを用いることができるが、本メモリの読み出し及び書き込み動作には、ＳＤＲＡＭを例に説明する。ＳＤＲＡＭの入出力データバスｍｂｕｓのバス幅は、特に制限されないが３２ｂｉｔとし、動作クロックの周期を７.５ｎｓとし説明する。
【００８１】
また、ＳＤＲＡＭを動作させるための、それぞれの命令と命令の間の最小時間は、ＳＤＲＡＭの動作仕様で定められており、様々な組み合わせが実現できる。本例では、バンクアクテイブ命令ＡＣと読み出し命令ＲＤ間の最小時間Ｔｒｃｄは２クロックサイクル、読み出し命令ＲＤとデータ出力までの時間を示すキャスレイテンシＣＬを２クロックサイクル、最後の出力データからプリチャージ命令までの最大時間Ｔｐｒｅを１クロックサイクル、プリチャージ命令から次のバンクアクテイブ命令までの最小時間Ｔｒｐを２クロックサイクル、バンクアクテイブ命令ＡＣとバンクアクテイブ命令ＡＣとの間の最小時間Ｔｒｃを６クロックサイクル、書き込み動作時の最終データ入力からプリチャージ命令ＰＲＥまでの最小時間Ｔｒｗｌを２クロックサイクルと、設定した場合について説明する。
【００８２】
さらに、マスタからのアクセス要求に含まれるデータ転送サイズは、様々なサイズが実現できるが、本例では、データ転送サイズが１６Ｂｙｅの場合について説明する。なお、１クロックサイクルは、動作クロックの１周期分の時間を表す。
【００８３】
メモリ制御装置ＳＬ０はメモリ装置ＭＥＭ０からデータを読み出す際は、図２に示されるように、制御信号ｃｎｔ５より命令としてバンクアクテイブ命令ＡＣ、読み出し命令ＲＤ、プリチャージ命令ＰＲＥを、アドレスとして、バンクアドレスＢＫ０、ロウアドレスＲ０、カラムアドレスＣ０を出力する。
【００８４】
リード命令が出力されると、クロックＣＬＫ換算で２サイクル後に、データＤ０からＤ３が、入出力データバスｍｂｕｓを通じてメモリ制御装置ＳＬ０へ転送される。データ転送回数Ｂｓｔは、ＳＤＲＡＭの入出力データバスｍｂｕｓのバス幅が３２ｂｉｔ、つまり４バイトであり、マスタが要求したデータ転送サイズが１６バイトであるため４回となる。
【００８５】
次に、メモリ制御装置ＳＬ０はメモリ装置ＭＥＭ０へデータを書き込む際は、図３に示されるように、制御信号ｃｎｔ５より命令としてバンクアクテイブ命令ＡＣ、書き込み命令ＷＴ、プリチャージ命令ＰＲＥを、アドレスとして、バンクアドレスＢＫ０、ロウアドレスＲ０、カラムアドレスＣ０を出力する。
【００８６】
ライト命令を出力すると同時にデータＤ０からＤ３を、入出力データバスｍｂｕｓを通じて、順にメモリ装置ＭＥＭ０へ転送する。データ転送回数Ｂｓｔは、ＳＤＲＡＭの入出力データバスｍｂｕｓのバス幅が３２ｂｉｔ、つまり４バイトであり、要求元が要求したデータ転送サイズが１６バイトであるため４回となる。
【００８７】
図４には、本例におけるアクセス調停装置ＡＲＢの構成例が示される。
【００８８】
この回路は、レイテンシ保持回路（ｌａｔ０ｆ、ｌａｔ１ｆ、ｌａｔ２ｆ、ｌａｔ３ｆ、ｌａｔ４ｆ、ｌａｔ６ｆ）と、状態信号保持回路ｌａｔｓｔａｔと、ｌａｔｒｍｓｔａｔと、第一アクセス優先レベル回路（ｐｒｉ０、 ｐｒｉ１、 ｐｒｉ２、ｐｒｉ３）と、第一アクセス優先レベルレジスタｐｒｉｒｅｇと、アクセス許可回路ＣＮＴ１で構成されている。
【００８９】
制御信号ｃｎｔ０とレイテンシ信号ｌａｔ０はマイクロコンピュータＭＳ０へ、制御信号ｃｎｔ１とレイテンシ信号ｌａｔ１は画像処理装置ＭＳ１へ、制御信号ｃｎｔ２とレイテンシ信号ｌａｔ２は、データ入力装置ＭＳ２へ、制御信号ｃｎｔ３とレイテンシ信号ｌａｔ３はデータ出力装置ＭＳ３へ、それぞれ接続されており、制御信号ｃｎｔ４とレイテンシ信号ｌａｔ４はメモリ制御装置ＳＬ０へ、制御信号ｃｎｔ６とレイテンシ信号ｌａｔ６は内蔵メモリ装置ＯＣＲＡＭへ、それぞれ接続されている。
【００９０】
また、データバスｒｂｕｓ、ｗｂｕｓ及び状態信号ｒｓｔａｔは、マイクロコンピュータＭＳ０と、画像処理装置ＭＳ１と、データ入力装置ＭＳ２と、データ出力装置ＭＳ３へ接続され、データバスｔｒｂｕｓ、ｔｗｂｕｓ及び状態信号ｓｔａｔはメモリ制御装置ＳＬ０へ、データバスｒｍｒｒｂｕｓ、ｒｍｗｗｂｕｓ及び状態信号ｒｍｓｔａｔは内蔵メモリ装置ＯＣＲＡＭへ、それぞれ接続されている。
【００９１】
レイテンシ保持回路ｌａｔ０ｆはレイテンシ信号ｌａｔ０の値を保持し、レイテンシ保持回路ｌａｔ１ｆはレイテンシ信号ｌａｔ１の値を保持し、レイテンシ保持回路ｌａｔ２ｆはレイテンシ信号ｌａｔ２の値を保持し、レイテンシ保持回路ｌａｔ３ｆはレイテンシ信号ｌａｔ３の値を保持し、レイテンシ保持回路ｌａｔ６ｆはレイテンシ信号ｌａｔ６の値を保持する。
【００９２】
第一アクセス優先レベル回路ｐｒｉ０は、マイクロコンピュータＭＳ０の第一アクセス優先レベルを決定し、第一アクセス優先レベル回路ｐｒｉ１は、画像処理装置ＭＳ１の第一アクセス優先レベルを決定し、第一アクセス優先レベル回路ｐｒｉ２は、データ入力装置ＭＳ２の第一アクセス優先レベルを決定し、第一アクセス優先レベル回路ｐｒｉ３は、データ出力装置ＭＳ３の第一アクセス優先レベルを決定する。
【００９３】
第一アクセス優先レベル回路ｐｒｉ０からｐｒｉ３の優先レベルは、特に制限されないが、マイクロコンピュータＭＳ０が、アクセス優先レベルレジスタｐｒｉｒｅｇに、それぞれの要求元の優先レベルをプログラムすることにより、初期設定される。さらに、マスタのアクセス要求に対する許可及び不許可によって、第一アクセス優先レベル回路ｐｒｉ０からｐｒｉ３は、その優先レベルを動的に変えることができる。
【００９４】
次に、アクセス調停装置ＡＲＢの動作を説明する。
【００９５】
電源投入後、マイクロコンピュータＭＳ０は、全てのバスマスタの第一アクセス優先レベルをアクセス優先レベルレジスタｐｒｉｒｅｇへ書き込む。第一アクセス優先レベル回路（ｐｒｉ０、ｐｒｉ１、ｐｒｉ２、ｐｒｉ３）は、アクセス優先レベルレジスタｐｒｉｒｅｇの値を参照し、第一アクセス優先レベルを設定する。
【００９６】
メモリ制御装置ＳＬ０は、アクセス要求がリクエストバッファｒｅｑ０へ受け付けられた場合の、転送可能ライトレイテンシあるいは転送可能リードレイテンシを、状態信号ｓｔａｔを通じてアクセス調停装置へ送信する。さらに、メモリ制御装置ＳＬ０は、現在のリクエストバッファｒｅｑ０の空きバッファ数を、状態信号ｓｔａｔを通じて送信する。これら、転送可能ライトレイテンシあるいは転送可能リードレイテンシ及び空きバッファ数は、状態信号保持回路ｌａｔｓｔａｔへ保持される。
【００９７】
マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２、データ出力装置ＭＳ３は、それぞれのアクセス要求を、制御信号ｃｎｔ０、ｃｎｔ１、ｃｎｔ２、ｃｎｔ３を通じてアクセス調停装置ＡＲＢへ入力し、それと同時に、要求リードレイテンシあるいは要求ライトレイテンシをレイテンシ信号ｌａｔ０、ｌａｔ１、ｌａｔ２、ｌａｔ３を通じて、アクセス調停装置ＡＲＢへ入力する。レイテンシ信号ｌａｔ０、ｌａｔ１、ｌａｔ２、ｌａｔ３からの値は、それぞれレイテンシ保持回路ｌａｔ０ｆ、ｌａｔ１ｆ、ｌａｔ２ｆ、ｌａｔ３ｆ、ｌａｔ４ｆへ保持される。
【００９８】
これらマスタからアクセス要求が競合した場合、先ず、アクセス許可回路ＣＮＴ１は、状態信号保持回路ｌａｔｓｔａｔに保持されている状態信号によって、リクエストバッファｒｅｑ０が空いているかを確認する。リクエストバッファｒｅｑ０が空いていなければ、メモリ制御装置ＳＬ０へのアクセス要求を行わない。リクエストバッファｒｅｑ０が空いていれば、アクセス要求がリード要求の場合、レイテンシ保持回路（ｌａｔ０ｆ、ｌａｔ１ｆ、ｌａｔ２ｆ、ｌａｔ３ｆ、ｌａｔ４ｆ）へ保持されている要求リードレイテンシと状態信号保持回路ｌａｔｓｔａｔに保持されている転送可能リードレイテンシとを比較する。要求リードレイテンシが転送可能リードレイテンシ以下のアクセス要求のみを選択する。
【００９９】
また、アクセス要求がライト要求の場合、レイテンシ保持回路（ｌａｔ０ｆ、ｌａｔ１ｆ、ｌａｔ２ｆ、ｌａｔ３ｆ、ｌａｔ４ｆ）へ保持されている要求ライトレイテンシと状態信号保持回路ｌａｔｓｔａｔに保持されている転送可能ライトレイテンシとを比較する。要求ライトレイテンシが転送可能ライトレイテンシ以下のアクセス要求のみを選択する。
【０１００】
次に、上記述で選択されたアクセス要求に対する第一アクセス優先レベル回路（ｐｒｉ０、ｐｒｉ１、ｐｒｉ２、ｐｒｉ３）へ保持されている第一アクセス優先レベルを比較し、最も高い優先レベルのアクセス要求をさらに選択する。
【０１０１】
最も高い優先レベルのアクセス要求がひとつしか存在しない場合、そのアクセス要求に対してデータ転送許可を与える。また、同じ優先レベルのアクセス要求が複数存在する場合、選択されたアクセス要求なかで、レイテンシ保持回路へ保持されている要求ライトレイテンシと転送可能ライトレイテンシの差、あるいは要求リードレイテンシと転送可能リードレイテンシの差が最も小さなアクセス要求に対し、アクセス許可を与える。
【０１０２】
最終的にアクセス許可回路ＣＮＴ１によって、アクセス許可を与えられたアクセス要求が画像処理装置ＭＳ１からのライト命令を含むアクセス要求の場合、アクセス許可回路ＣＮＴ１は信号ｃｎｔ４からライト命令を含んだアクセス要求を、メモリ制御装置ＳＬ０へ転送する。これと同時に、データバスｗｂｕｓを通じてアクセス許可回路ＣＮＴ１へ入力された書き込みデータを、ライトデータバスｔｗｂｕｓを通じてメモリ制御装置ＳＬ０へ転送する。
【０１０３】
アクセス許可回路ＣＮＴ１は、アクセス要求が許可されたマスタに対応する第一アクセス優先レベル回路の優先レベルを最も低い値にする。また、アクセス要求が不許可になったマスタに対応する第一アクセス優先レベル回路の優先レベルを上げる。
【０１０４】
図５には、本例におけるアクセス調停装置ＡＲＢが行うアクセス調停動作を説明するフローチャートが示される。
【０１０５】
ＳＴＥＰ１ではリード命令を含んだアクセス要求Ａがアクセス調停装置ＡＲＢへ入力され、ＳＴＥＰ７ではリード命令を含んだアクセス要求Ｂが入力されて動作が開始する。ＳＴＥＰ２およびＳＴＥＰ８ではリクエストバッファｒｅｑ０が空いているかを確認する。リクエストバッファｒｅｑ０が空いていなければＳＴＥＰ４へ進み、空いていればＳＴＥＰ３へ進み。ＳＴＥＰ３ではアクセス要求Ａの要求リードレイテンシＲＬＡと転送可能リードレイテンシＬａとの比較を行う。要求リードレイテンシＲＬＡが転送可能レイテンシＬａより小さい場合、つまり、要求リードレイテンシ以内にデータを転送できない場合はＳＴＥＰ４へ進み、要求レイテンシＲＬＡが転送可能レイテンシＬａ以上場合、つまり、要求レイテンシＲＬＡ以内にデータを転送できる場合はＳＴＥＰ６に進む。
【０１０６】
ＳＴＥＰ４では、アクセス要求Ａを発行したマスタへ再要求を行うことを伝える。ＳＴＥＰ４が終了するとＳＴＥＰ５へ進む。ＳＴＥＰ５では、信号ＭＡを０にする。
【０１０７】
ＳＴＥＰ６では、信号ＭＡを１にする。
【０１０８】
ＳＴＥＰ９ではアクセス要求Ｂの要求リードレイテンシＲＬＢと転送可能リードレイテンシＬａとの比較を行う。要求リードレイテンシＲＬＢが転送可能リードレイテンシＬａより小さい場合、つまり要求リードレイテンシ以内にデータを転送できない場合はＳＴＥＰ１０へ進み、要求リードレイテンシＲＬＡが転送可能リードレイテンシＬａ以上場合、つまり、要求リードレイテンシＲＬＢ以内にデータを転送できる場合はＳＴＥＰ１２へ進む。ＳＴＥＰ１０では、アクセス要求Ｂを発行したマスタへ再要求を行うことを通知する。ＳＴＥＰ１０が終了するとＳＴＥＰ１１へ進む。ＳＴＥＰ１では、信号ＭＢを０にする。
【０１０９】
ＳＴＥＰ１２では、信号ＭＢを１にする。
【０１１０】
ＳＴＥＰ５あるいはＳＴＥＰ６、ＳＴＥＰ１１あるいはＳＴＥＰ１２を終了するとＳＴＥＰ１３へ進む。
【０１１１】
ＳＴＥＰ１３では、信号ＭＡ及びＭＢの値をチェックする。信号ＭＡが０で且つＭＢが０の場合、つまり、要求リードレイテンシＲＬＡ及びＲＬＢ双方とも満たせない場合、ＳＴＥＰ１６へ進む。信号ＭＡが１で且つＭＢが０の場合、つまり要求リードレイテンシＲＬＡを満たし、ＲＬＢを満たせない場合、ＳＴＥＰ１７へ進む。信号ＭＡが１で且つＭＢが１の場合、つまり、要求リードレイテンシＲＬＡ及びＲＬＢ双方とも満たせる場合、ＳＴＥＰ１４へ進む。信号ＭＡが０で且つＭＢが１の場合、つまり要求リードレイテンシＲＬＡを満たせず、要求リードレイテンシＲＬＢを満たせる場合ＳＴＥＰ２０へ進む。
【０１１２】
ＳＴＥ１６では、アクセス調停装置ＡＲＢはメモリ制御回路へ、どちらの要求も出力しない。ＳＴＥＰ１７では、リードアクセス要求Ａのみを許可し出力する。ＳＴＥＰ２０では、アクセス要求Ｂのみを許可し出力する。
【０１１３】
ＳＥＴＰ１４では、アクセス要求Ａの第一アクセス優先レベルＰＲＡとアクセス要求Ｂの第一アクセス優先レベルＰＲＢを比較する。アクセス要求Ａの第一アクセス優先レベルＰＲＡが、アクセス要求Ｂの第一アクセス優先レベルＰＲＢより高い場合、ＳＴＥＰ１７へ進む。アクセス要求Ａの第一アクセス優先レベルＰＲＡが、アクセス要求Ｂの第一アクセス優先レベルＰＲＢより低い場合、ＳＴＥＰ２０へ進む。アクセス要求Ａの第一アクセス優先レベルＰＲＡが、アクセス要求Ｂの第一アクセス優先レベルＰＲＢと等しい場合、ＳＴＥＰ１５へ進む。
【０１１４】
ＳＴＥＰ１５では、要求リードレイテンシＲＬＡとＲＬＢの値を比較する。要求リードレイテンシＲＬＡがＲＬＢより小さい場合はＳＴＥＰ１８へ進む。要求リードレイテンシＲＬＡがＲＬＢ以上の場合はＳＴＥＰ１９へ進む。
【０１１５】
ＳＴＥＰ１８では、アクセス要求Ａのみを許可し出力する。ＳＴＥＰ１９では、アクセス要求Ｂのみを許可し出力する。
【０１１６】
図６には、上記アクセス調停装置ＡＲＢ内の第一アクセス優先レベル回路ｐｒｉ０、ｐｒｉ１、ｐｒｉ２、ｐｒｉ３が行う第一アクセス優先レベルの動作を説明するためのフローチャートが示される。
【０１１７】
特に制限されないが、第一アクセス優先レベルは０から１５段階まであり、数値が大きい方が優先レベルの上位である、初期設定が６であるとして説明する。
【０１１８】
ＳＴＥＰ１では、画像処理装置ＭＳ１からアクセス要求Ｂが、アクセス調停装置ＡＲＢへ入力されて動作が開始される。
【０１１９】
ＳＴＥＰ２では、アクセス要求Ｂの許可と不許可がチェックされる。アクセス要求Ｂが許可された場合、ＳＴＥＰ３へ進む。不許可の場合、ＳＴＥＰ４へ進む。ＳＴＥＰ３では第一アクセス優先レベル回路ｐｒｉ１のアクセス優先レベルの値ＰＲＢを最も低い０に設定する。ＳＴＥＰ４では、アクセス優先レベルの値ＰＲＢを１つ上げ７となる。
【０１２０】
図７には、上記メモリ制御装置ＳＬ０の構成例が示される。
【０１２１】
上記メモリ制御装置ＳＬ０は、図７に示されるように、リクエストバッファｒｅｑ０と、レスポンスバッファｒｅｓ０と、レジスタ回路ｓｒｅｇと、メモリ制御回路ＳＤＣＯＮで構成される。
【０１２２】
リクエストバッファｒｅｑ０は、バッファｒｑ０、ｒｑ１、ｒｑ２、ｒｑ３から構成される。レスポンスバッファｒｅｓ０は、バッファｒｓ０、ｒｓ１、ｒｓ２、ｒｓ３から構成される。レジスタ回路ｓｒｅｇはレジスタ回路ｒｅｇとレイテンシレジスタ回路Ｌｒｅｇから構成される。メモリ制御回路ＳＤＣＯＮはレイテンシ計算回路ｃａｌｃと、コマンド生成回路ｃｏｍで構成されている。
【０１２３】
電源投入直後、マイクロコンピュータＭＳ０により、レジスタ回路ｒｅｇには、ＳＤＲＡＭを動作させるための命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ,Ｔｐｒｅ）と、キャスレイテンシＣＬと、ＳＤＲＡＭの入出力データバスｍｂｕｓのバス幅が、例えば４Ｂｙｔｅに設定される（図２及び図３参照）。次に、レイテンシ計算回路ｃａｌｃは、上記命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ）と、キャスレイテンシＣＬを用い、読み出し時のレイテンシＬａｃＲｄと、書き込み時のレイテンシＬａｃＷｔと、読み出しサイクルレイテンシＲｃｙｃと、書き込みサイクルレイテンシＷｃｙｃとを計算し、それをレイテンシレジスタ回路Ｌｒｅｇへ設定する。
【０１２４】
読み出し時のレイテンシＬａｃＲｄはＴｒｃｄ+ＣＬ−１で計算され、書き込み時のレイテンシＬａｃＷｔはＴｒｃｄで計算され、読み出しサイクルレイテンシＲｃｙｃは読み出し時のレイテンシＬａｃＲｄ＋Ｂｓｔｍａｘ−Ｔｐｒｅ+Ｔｒｐで計算され、書き込みサイクルレイテンシＷｃｙｃはＴｒｃｄ−１+Ｂｓｔｍａｘ+Ｔｒｗｌ+Ｔｒｐで計算される。メモリ制御回路ＳＤＣＯＮが受け付けることのできる最大データ転送サイズが３２ＢｙｔｅでＳＤＲＡＭのデータバス幅が４Ｂｙｔｅの場合、Ｂｓｔｍａｘは８(=３２Ｂｙｔｅ／４Ｂｙｔｅ)となる。
【０１２５】
次に、メモリ制御装置ＳＬ０のリクエストバッファｒｅｑ０及びレスポンスバッファｒｅｓ０の各バッファが全て空き状態で、アクセス要求を待っている場合の動作を説明する。
【０１２６】
メモリ制御装置ＳＬ０が要求を待っている間は、制御信号ｓｔａｔを通じて、現時点でアクセス要求を受け付けた場合の転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔと、現在のリクエストバッファの中で、空いているリクエストバッファの数、つまり空きバッファ数を送信する。本例の場合、全てのバッファｒｅｑ０からｒｅｑ３の全てが、空いているリクエストバッファなので、空きバッファ数が４となる。
【０１２７】
転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシは計算回路ｃａｌｃで計算される。計算方法を以下に示す。転送可能リードレイテンシＬａＲＮｅｘｔは読み出し時のレイテンシＬａｃＲｄと、読み出しサイクルレイテンシＲｃｙｃと、実行待ちレイテンシｐｒｅＬａとの総和となる。また、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシは、書き込み時のレイテンシＬａｃＷｔと、書き込みサイクルレイテンシＷｃｙｃと、実行待ちレイテンシｐｒｅＬａとの総和となる。
【０１２８】
実行待ちレイテンシｐｒｅＬａは、現アクセス要求を受け取る前に、すでに受け取ってはいるがバッファｒｑ０からｒｑ３に保持されて、実行待ち状態にある要求に対するレイテンシの総和である。したがって、全てのバッファｒｑ０からｒｑ３にアクセス要求が保持されていないので、実行待ちレイテンシｐｒｅＬａは０となる。
【０１２９】
次に、メモリ制御装置ＳＬ０がロード命令で１６Ｂｙｔｅのアクセス要求を受け取った場合の動作を説明する。
【０１３０】
メモリ制御回路ＳＤＣＯＮのリクエストバッファｒｅｑ０へ、リード命令、データ転送サイズ（１６Ｂｙｔｅ）、転送元アドレスが保持され、アクセス要求の受け取りが完了する。受け取った直後に、レイテンシ計算回路ｃａｌｃは、実際にデータが要求を発行したマスタへ到達する実レイテンシＬａＡｃ及び空きリクエストバッファ数Ｖｒｅｑを計算する。さらに、次のアクセス要求に備えて、転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシを計算する。その後、空きリクエストバッファ数Ｖｒｅｑは、１つ減り、３（＝４−１）となり、信号ｓｔａｔを通じてアクセス調停装置ＡＲＢへ転送され、実レイテンシＬａＡｃは、信号ｌａｔ４を通じてアクセス調停装置ＡＲＢへ転送され、転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシは信号ｓｔａｔを通じてアクセス調停装置ＡＲＢへ転送される。
【０１３１】
次に実レイテンシＬａＡｃの計算方法を以下に示す。
【０１３２】
リード命令の場合、実レイテンシＬａＡｃは、読み出し時のレイテンシＬａｃＲｄと、実行待ちレイテンシｐｒｅＬａの総和となり、ストア命令の場合は、書き込み時のレイテンシＬａｃＷｔと、実行待ちレイテンシｐｒｅＬａの総和となる。この時現アクセス要求が受け取られるまでに、バッファｒｅｑ０からｒｅｑ３には、実行待ちのアクセス要求が保持されていないため、実行待ちレイテンシｐｒｅＬａは０である。実レイテンシＬａＡｃを計算した後、実行待ちレイテンシｐｒｅＬａを更新する。以下に新しく実行待ちレイテンシｐｒｅＬａを計算し、更新する動作を示す。
【０１３３】
レイテンシ計算回路ｃａｌｃは、次のアクセス要求を受け取った際の実レイテンシＬａＡｃを計算する目的と、転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシを計算する目的で、新しく実行待ちレイテンシｐｒｅＬａを計算し、更新する。新しい実行待ちレイテンシｐｒｅＬａは読み出し時のレイテンシＬａｃＲｄと、実サイクルレイテンシＲｃｙＡｃの総和となる。
【０１３４】
次に、転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシの計算方法を以下に示す。
転送可能リードレイテンシＬａＲＮｅｘｔは読み出し時のレイテンシＬａｃＲｄと、読み出しサイクルレイテンシＲｃｙｃと、更新された実行待ちレイテンシｐｒｅＬａとの総和となる。
【０１３５】
また、転送可能ライトレイテンシＬａＷＮｅｘｔレイテンシは、書き込み時のレイテンシＬａｃＷｔと、書き込みサイクルレイテンシＷｃｙｃと、更新された実行待ちレイテンシｐｒｅＬａとの総和となる。
【０１３６】
コマンド発生回路ｃｏｍは、リクエストバッファｒｅｑ０へ入力した、リード命令、データ転送サイズ（１６Ｂｙｔｅ）及びアドレスの情報に基づいて、図２に示す様に、制御信号ｃｎｔ５より命令としてバンクアクテイブ命令ＡＣ、読み出し命令ＲＤ、プリチャージ命令ＰＲＥを、アドレスとして、バンクアドレスＢＫ０、ロウアドレスＲ０、カラムアドレスＣ０を出力し、メモリＭ０及びＭ１から入出力データバスｍｂｕｓを通じてデータを１６バイトのデータを読み出す。
【０１３７】
読み出されたデータは、コマンド発生回路ｃｏｍを介し、レスポンスバッファｒｓ０へ転送され、さらにリードデータバスｔｒｂｕｓを通じてアクセス調停装置ＡＲＢへ転送される。
【０１３８】
以上、リード命令を受け取った場合の動作について説明したが、ライト命令を受け取った場合は、同時に、書き込みデータも受け取る。コマンド発生回路ｃｏｍは、図３に示されるように、制御信号ｃｎｔ５より命令としてバンクアクテイブ命令ＡＣ、書き込み命令ＷＴ、プリチャージ命令ＰＲＥを、アドレスとして、バンクアドレスＢＫ０、ロウアドレスＲ０、カラムアドレスＣ０を出力し、メモリ装置Ｍ０へ入出力データバスｍｂｕｓを通じて１６バイトのデータを書き込む。また、レイテンシ計算回路ｃａｌｃは、リード命令を受け取った場合の動作と同様の動作となる。
【０１３９】
図８には、上記メモリ制御回路ＳＤＣＯＮが計算する上述のレイテンシを、アクセス調停装置へ通達する動作説明のためのフローチャートが示される。
【０１４０】
ＳＴＥＰ１は、メモリ制御装置ＳＬ０がアクセス要求を待っている状態である。
【０１４１】
ＳＴＥＰ７では、バッファｒｅｑ０からｒｅｑ３に保持されているアクセス要求の実行が完了した後、バッファｒｅｑ０からｒｅｑ３に空き状態が新たに生じたかをチェックする。バッファｒｅｑ０からｒｅｑ３の空き状態が新たに生じた場合、ＳＴＥＰ８へ進み、その空き状態が生じていない場合は、ＳＴＥＰ９へ進む。
【０１４２】
ＳＴＥＰ８では、実行待ちレイテンシｐｒｅＬａを計算し、更新する。ＳＴＥＰ８が終了するとＳＴＥＰ９へ進む。
【０１４３】
ＳＴＥＰ９では、最新の実行待ちレイテンシｐｒｅＬａを利用し、転送可能リードレイテンシＬａＲＮｅｘｔ及び転送可能ライトレイテンシＬａＷＮｅｘｔを計算する。ＳＴＥＰ９が終了するとＳＴＥＰ１０へ進む。
【０１４４】
ＳＴＥＰ１０では転送可能リードレイテンシＬａＲＮｅｘｔ及び転送可能ライトレイテンシＬａＷＮｅｘｔを出力する。
【０１４５】
ＳＴＥＰ２では、メモリ制御装置ＳＬ０へアクセス要求が生じた状態である。ＳＴＥＰ３では、アクセス要求を受け取ることができるかをチェックする。要求を受け取ることができればＳＴＥＰ４へ進み、受け取ることができない場合はＳＴＥＰ７へ進む。ＳＴＥＰ４では、実レイテンシＬａＡｃを計算し、ＳＴＥＰ５では、実行待ちレイテンシｐｒｅＬａを計算し、更新する。ＳＴＥＰ５が終了するとＳＴＥＰ６へ進む。ＳＴＥＰ６では計算した実レイテンシＬａＡｃを出力する。
【０１４６】
図９には、上記メモリ制御装置ＳＬ０が行う空きバッファ数を通達する動作のフローチャートが示される。
【０１４７】
ＳＴＥＰ１はメモリ制御回路ＳＤＣＯＮがアクセス要求を待っている状態である。ＳＴＥＰ２ではメモリ制御回路ＳＤＣＯＮへアクセス要求が生じた状態である。
【０１４８】
ＳＴＥＰ３では、アクセス要求を受け取ることができるかをチェックする。アクセス要求を受け取ることができればＳＴＥＰ４へ進み、受け取ることができない場合はＳＴＥＰ６へ進む。ＳＴＥＰ４では、空きトバッファ数を１つ減算し、ＳＴＥＰ５では空きバッファ数を出力する。
【０１４９】
ＳＴＥＰ６では、バッファｒｑ０からｒｑ３に保持されていたアクセス要求が実行され、完了し、バッファｒｑ０からｒｑ３に新たに空き状態が生じたかをチェックする。空き状態が生じていれば、ＳＴＥＰ７へ進み、空き状態が生じていなければ、ＳＴＥＰ５へ進む。
【０１５０】
ＳＴＥＰ７では、空きリクエストバッファ数Ｖｒｅｑを１つ加算し、ＳＴＥＰ５では空きバッファ数を出力する。
【０１５１】
図１０には、本例におけるメモリ制御回路ＳＤＣＯＮのレジスタ回路ｒｅｇ及びレイテンシレジスタ回路Ｌｒｅｇへのプログラム手順を示すフローチャートが示される。
【０１５２】
ＳＴＥＰ１は、メモリ制御回路ＳＤＣＯＮに電源が投入された状態である。電源投入直後、ＳＴＥＰ２へ進み、ＳＴＥＰ２では、マイクロコンピュータＭＳ０により、レジスタ回路ｒｅｇには、ＳＤＲＡＭを動作させるための、命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ,Ｔｐｒｅ）と、キャスレイテンシＣＬと、ＳＤＲＡＭの入出力バスｍｂｕｓのバス幅が、例えば４Ｂｙｔｅに設定される（図２及び図３参照）。次のＳＴＥＰ３でレイテンシ計算回路ｃａｌｃは、レジスタ回路ｒｅｇに上記命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ,Ｔｐｒｅ）と、キャスレイテンシＣＬとを用い、読み出し時のレイテンシＬａｃＲｄを計算する。次のＳＴＥＰ４で書き込み時のレイテンシＬａｃＷｔを計算する。
【０１５３】
次のＳＴＥＰ５で読み出しサイクルレイテンシＲｃｙｃを計算し、次のＳＴＥＰ６で書き込みサイクルレイテンシＷｃｙｃを計算する。最後のＳＴＥＰ７で、読み出し時のレイテンシＬａｃＲｄ、書き込み時のレイテンシＬａｃＷｔ、読み出しサイクルレイテンシＲｃｙｃ、書き込みサイクルレイテンシＷｃｙｃを、レイテンシレジスタ回路Ｌｒｅｇへ設定する。
【０１５４】
図１１には、図８に示されるフローチャートにおけるＳＴＥＰ４とＳＴＥＰ５の処理の詳細が示される。
【０１５５】
ＳＴＥＰ４では、ＳＴＥＰ４１と、ＳＴＥＰ４２及びＳＴＥＰ４３の処理が行われる。ＳＴＥＰ５では、ＳＴＥＰ５１と、ＳＴＥＰ５２と、ＳＴＥＰ５３と、ＳＴＥＰ５４と、ＳＴＥＰ５５と、ＳＴＥＰ５６及びＳＴＥＰ５７の処理が行われる。
【０１５６】
ＳＴＥＰ３では、アクセス要求を受け取ることができるかをチェックする。要求を受け取ることができればＳＴＥＰ４１へ進む。
【０１５７】
ＳＴＥＰ４１では、受け取ったアクセス要求がリード命令か、ライト命令かをチェックする。リード命令であれば、ＳＴＥＰ４２に進み、ライト命令であればＳＴＥＰ４３に進む。
【０１５８】
ＳＴＥＰ４２では、読み出し時のレイテンシＬａｃＲｄと実行待ちレイテンシｐｒｅＬａを加算し、実レイテンシＬａＡＣを求める。その後、ＳＴＥＰ５１へ進む。ＳＴＥＰ５１では、リードサイクルレイテンシＲｃｙＡＣを計算する。その後、ＳＴＥＰ５２へ進む。ＳＴＥＰ５２では、リードサイクルレイテンシＲｃｙＡＣとサイクル時間Ｔｒｃの比較を行う。リードサイクルレイテンシＲｃｙＡＣがサイクル時間Ｔｒｃ以上であればＳＴＥＰ５３へ進み、小さければＳＴＥＰ５６へ進む。
【０１５９】
ＳＴＥＰ５３では、リードサイクルレイテンシＲｃｙＡＣに、現在の実行待ちレイテンシｐｒｅＬａを加算して、新たな実行待ちレイテンシｐｒｅＬａを求める。ＳＴＥＰ５６では、サイクル時間Ｔｒｃに、現在の実行待ちレイテンシｐｒｅＬａを加算して、新たな実行待ちレイテンシｐｒｅＬａを求める。
【０１６０】
ＳＴＥＰ４３では読み出し時のレイテンシＬａｃＷｔと実行待ちレイテンシｐｒｅＬａを加算し、実レイテンシＬａＡＣを求める。その後、ＳＴＥＰ５４へ進む。ＳＴＥＰ５４では、ライトサイクルレイテンシＷｃｙＡＣを計算する。その後、ＳＴＥＰ５５へ進む。ＳＴＥＰ５５では、ライトサイクルレイテンシＷｃｙＡＣとサイクル時間Ｔｒｃの比較を行う。ライトサイクルレイテンシＷｃｙＡＣがサイクル時間Ｔｒｃ以上であればＳＴＥＰ５７へ進み、小さければＳＴＥＰ５６へ進む。
【０１６１】
ＳＴＥＰ５７では、ライトサイクルレイテンシＷｃｙＡＣに、現在の実行待ちレイテンシｐｒｅＬａを加算して、新たな実行待ちレイテンシｐｒｅＬａを求める。ＳＴＥＰ５６では、サイクル時間Ｔｒｃに、現在の実行待ちレイテンシｐｒｅＬａを加算して、新たな実行待ちレイテンシｐｒｅＬａを求める。
【０１６２】
図１２には、図８に示されるフローチャートのＳＴＥＰ８とＳＴＥＰ９との処理の詳細が示される。
【０１６３】
ＳＴＥＰ８では、ＳＴＥＰ８１と、ＳＴＥＰ８２と、ＳＴＥＰ８３と、ＳＴＥＰ８４と、ＳＴＥＰ８５と、ＳＴＥＰ８６と、ＳＴＥＰ８７及びＳＴＥＰ８８の処理を行う。ＳＴＥＰ９では、ＳＴＥＰ９１及びＳＴＥＰ９２の処理を行う。
【０１６４】
ＳＴＥＰ７では、バッファｒｅｑ０からｒｅｑ３に保持されているアクセス要求が実行され、完了し、バッファｒｅｑ０からｒｅｑ３に空き状態が新たに生じたかをチェックする。バッファｒｅｑ０からｒｅｑ３の空き状態が新たに生じた場合、ＳＴＥＰ８１へ進み、その空き状態が生じていない場合は、ＳＴＥＰ９１へ進む。
【０１６５】
ＳＴＥＰ８１では、受け取ったアクセス要求がリード命令かライト命令かをチェックする。リード命令であれば、ＳＴＥＰ８２へ進み、ライト命令であればＳＴＥＰ８６へ進む。
次のＳＴＥＰ８２では、リードサイクルレイテンシＲｃｙＡＣを計算する。次のＳＴＥＰ８３では、リードサイクルレイテンシＲｃｙＡＣとサイクル時間Ｔｒｃの比較を行う。リードサイクルレイテンシＲｃｙＡＣがサイクル時間Ｔｒｃ以上であればＳＴＥＰ８４へ進み、小さければＳＴＥＰ８５へ進む。
【０１６６】
ＳＴＥＰ８４では、現在の実行待ちレイテンシｐｒｅＬａからリードサイクルレイテンシＲｃｙＡＣを減算して、新たな実行待ちレイテンシｐｒｅＬａを計算する。ＳＴＥＰ８５では、現在の実行待ちレイテンシｐｒｅＬａからサイクルレイテンシＴｒｃを減算して、新たな実行待ちレイテンシｐｒｅＬａを計算する。
【０１６７】
次のＳＴＥＰ８６では、ライトサイクルレイテンシＷｃｙＡＣを計算する。次のＳＴＥＰ８６では、ライトサイクルレイテンシＷｃｙＡＣとサイクル時間Ｔｒｃの比較を行う。ライトサイクルレイテンシＷｃｙＡＣがサイクル時間Ｔｒｃ以上であればＳＴＥＰ８８へ進み、小さければＳＴＥＰ８９へ進む。
【０１６８】
ＳＴＥＰ８８では現在の実行待ちレイテンシｐｒｅＬａからライトサイクルレイテンシＷｃｙＡＣを減算して、新たな実行待ちレイテンシｐｒｅＬａを計算する。ＳＴＥＰ８９では、現在の実行待ちレイテンシｐｒｅＬａからサイクルレイテンシＴｒｃを減算して、新たな実行待ちレイテンシｐｒｅＬａを計算する。
【０１６９】
ＳＴＥＰ８９が完了すると、次はＳＴＥＰ９１へ進む。ＳＴＥＰ９１では、転送可能リードレイテンシＬａＲＮｅｘｔを計算する。ＳＴＥＰ９１が完了するとＳＴＥＰ９２へ進む。ＳＴＥＰ９２では、転送可能ライトレイテンシＬａＷＮｅｘｔを計算する。
【０１７０】
ＳＴＥＰ９２が完了するとＳＴＥＰ１０へ進む。ＳＴＥＰ１０では、計算した転送可能リードレイテンシＬａＲＮｅｘｔと、転送可能ライトレイテンシＬａＷＮｅｘｔを出力する。
【０１７１】
上記実施の形態１によれば、以下の作用効果を得ることができる。
【０１７２】
（１）マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２及びデータ出力装置ＭＳ３は、常にデータの到達時間や、リクエストバッファｒｅｑ０の状態を知ることができるため、データの到達時間までに、次の処理をどこまで前もって行うかを柔軟に調節することができ、マスタ内の処理を効率的に行うことができる。
【０１７３】
（２）マスタ側からの要求リードレイテンシに対して、その要求が満たされるかどうかをチェックし、さらに、要求リードレイテンシと可能リードレイテンシの差が最も小さなアクセス要求に対し、データ転送許可を与えることで、要求リードレイテンシを満たしながら、緊急度の高い要求を優先的に処理することができる。このため、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。
＜実施の形態２＞
図１３には、上記メモリ制御装置ＳＬ０の別の構成例であるメモリ制御装置ＳＬ１が示される。尚、上記制御装置以外については上記実施の形態１と同一とされる。
【０１７４】
図１３に示されるメモリ制御装置ＳＬ１は、リクエストバッファｒｅｑ０１と、レスポンスバッファｒｅｑ０１と、レジスタ回路ｓｒｅｇ１と、メモリ制御回路ＳＤＣＯＮ１で構成される。
【０１７５】
リクエストバッファｒｅｑ０１は、バッファｒｑ０１、ｒｑ１１、ｒｑ２１、ｒｑ３１とフラグ回路ｒｆ０,ｒｆ１,ｒｆ２,ｒｆ３から構成される。レスポンスバッファｒｅｓ０１は、バッファｒｓ０１、ｒｓ１１、ｒｓ２１、ｒｓ３１とフラグ回路ｓｆ０、ｓｆ１、ｓｆ２、ｓｆ３から構成される。レジスタ回路ｓｒｅｇ１はレジスタ回路ｒｅｇ１とレイテンシレジスタ回路Ｌｒｅｇ１とレジスタ回路ｒｅｇ２から構成される。メモリ制御回路ＳＤＣＯＮ１はレイテンシ計算回路ｃａｌｃ１と、コマンド生成回路ｃｏｍ１で構成されている。
【０１７６】
電源投入直後、特に限定しないが、マイクロコンピュータＭＳ０により、レジスタ回路ｓｒｅｇ１が初期設定される。この初期設定では、先ず、信号ｃｎｔ４１を通じてライト命令が入力され、データバスｔｗｂｕｓ１を通じて、バッファｒｑ０１、ｒｑ１１、ｒｑ２１、ｒｑ３１及びバッファｒｓ０１、ｒｓ１１、ｒｓ２１、ｒｓ３１のそれぞれが、どのマスタに利用されるかを示すバッファ利用情報が入力され、レジスタ回路ｒｅｇ２へ設定される。
つまり、バッファに対してバスマスタの利用権が設定され、この利用権が設定されたバッファに対しては、他のバスマスタは使用することができない。次に、レジスタ回路ｒｅｇ２のバッファ利用情報は、フラグ回路ｒｆ０,ｒｆ１,ｒｆ２,ｒｆ３及びフラグ回路ｒｓ０,ｒｆｓ１,ｒｆｓ２,ｒｆｓ３へ設定される。
【０１７７】
さらに、信号ｃｎｔ４１を通じてライト命令が入力され、データバスｔｗｂｕｓ１を通じて、図２で示したＳＤＲＡＭを動作させるための、命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ）と、キャスレイテンシＣＬと、ＳＤＲＡＭの入出力バスｍｂｕｓ１のバス幅に関するデータが入力され、レジスタ回路ｒｅｇ１へ設定される。
【０１７８】
次に、レイテンシ計算回路ｃａｌｃ１は、上記命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ）と、キャスレイテンシＣＬとを用い、読み出し時のレイテンシＬａｃＲｄと、書き込み時のレイテンシＬａｃＷｔと、読み出しサイクルレイテンシＲｃｙｃと、書き込みサイクルレイテンシＷｃｙｃを計算しレイテンシレジスタ回路Ｌｒｅｇへ設定する。
【０１７９】
特に制限されないが、レジスタ回路ｒｅｇ２のバッファ利用情報によって、フラグ回路ｒｆ０及びｓｆ０にはデータ入力回路ＭＳ２のみが利用できるような情報が設定され、フラグ回路ｒｆ１及びｓｆ１にはデータ出力回路ＭＳ３のみが利用できるような情報が設定され、フラグ回路ｒｆ２及びｓｆ２には情報処理ＭＳ０のみが利用できるような情報が設定され、フラグ回路ｒｆ３及びｓｆ３には画像処理装置ＭＳ１が利用できるような情報が設定された場合に、アクセス要求が生じた際の動作について説明する。
【０１８０】
バッファｒｑ０１はデータ入力回路ＭＳ２からのアクセス要求のみを受け付け、バッファｒｓ０１はデータ入力回路からのアクセス要求に対するレスポンスのみを処理する。バッファｒｑ１１はデータ出力回路ＭＳ３からのアクセス要求のみを受け付け、バッファｒｓ１１はデータ出力回路からのアクセス要求に対するレスポンスのみを処理する。バッファｒｑ２１はマイクロコンピュータＭＳ０からのアクセス要求のみを受け付け、バッファｒｓ２１はマイクロコンピュータＭＳ０及びデータからのアクセス要求に対するレスポンスのみを処理する。
【０１８１】
ｒｑ３１は画像処理装置ＭＳ１からのアクセス要求のみを受け付け、バッファｒｓ３１は画像処理装置ＭＳ１からのアクセス要求に対するレスポンスのみを処理する。
【０１８２】
レイテンシ計算回路ｃａｌｃ１及びコマンド生成回路ｃｏｍ１の動作は、それぞれ実施の形態１におけるレイテンシ計算回路ｃａｌｃ及びコマンド生成回路ｃｏｍと同一とされる。
【０１８３】
制御信号ｃｎｔ４１より、各マスタからのアクセス要求が入力される。書き込みデータはデータバスｔｗｂｕｓ１から入力され、読み出しデータはデータバスｔｒｂｕｓ１から出力される。制御信号ｓｔａｔ１からは、空きバッファ数及び転送可能レイテンシ（転送可能リードレイテンシ及び転送可能ライトレイテンシ）が出力され、制御信号ｌａｔ４１からは、実レイテンシ（実リードレイテンシ、実ライトレイテンシ）が出力される。
【０１８４】
制御信号ｃｎｔ４１よりメモリ装置ＭＥＭ０を制御する命令が出力される。データバスｍｂｕｓ１を通じて、読み出しデータはメモリ装置ＭＥＭ０からメモリ制御装置ＳＬ１へ転送され、書き込みデータは、メモリ制御装置ＳＬ１からメモリ装置ＭＥＭ０へ転送される。
【０１８５】
次に、メモリ制御装置ＳＬ１のリクエストバッファｒｅｑ０１内のバッファｒｑ０１１とｒｑ１１、及びレスポンスバッファｒｅｓ０１内のバッファｒｓ０１とｒｓ１１が空き状態で、アクセス要求を待っている場合の動作を説明する。
【０１８６】
メモリ制御装置ＳＬ１がアクセス要求を待っている間は、状態信号ｓｔａｔ１を通じて、現時点でアクセス要求を受け付けた場合の転送可能レイテンシと、現在のリクエストバッファの中で、空いているバッファの数、つまり空きリバッファ数をアクセス調停装置ＡＲＢへ送信する。
【０１８７】
本例の場合、バッファｒｅｑ０１が空き状態であり、バッファｒｅｑ０１はデータ入力回路ＭＳ２のみに利用されるため、空きバッファ数が１であることを、アクセス調停装置ＡＲＢを介してデータ入力回路ＭＳ２へ伝える。
【０１８８】
また、バッファｒｅｑ１１も空き状態であり、バッファｒｑ１はデータ出力回路ＭＳ３のみに利用されるため、空きリクエストバッファ数が１であることを、アクセス調停装置ＡＲＢを介してデータ出力回路ＭＳ３へ伝える。
【０１８９】
バッファｒｅｑ２１及びｒｅｑ３１には要求が保持されている占有状態であり、バッファｒｅｑ２１とｒｅｑ３１は、それぞれマイクロコンピュータＭＳ０及び画像処理装置ＭＳ１にのみ利用されるため、空きバッファ数が０であることを、アクセス調停装置ＡＲＢを介してマイクロコンピュータＭＳ０及び画像処理装置ＭＳ１へ伝える。
【０１９０】
マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力回路ＭＳ２及びデータ出力回路ＭＳ３から、アクセス要求があった場合、アクセス調停装置はマスタが利用できるリクエストバッファに空きがあるかをチェックし、空きがあればアクセス要求をメモリ制御回路へ転送する。
【０１９１】
マイクロコンピュータＭＳ０及び画像処理装置ＭＳ１からのアクセス要求に対して空いているリクエストバッファが無いため、これらマスタからの要求はアクセス調停装置ＡＲＢからメモリ制御装置ＳＬ１へは転送されない。
【０１９２】
データ入力回路ＭＳ２及び出力回路ＭＳ３からのアクセス要求に対する空いているリクエストバッファは、それぞれ一つづつ存在するので、アクセス調停装置ＡＲＢは、これらマスタからのアクセス要求をメモリ制御装置ＳＬ１へ転送する。
【０１９３】
受け付けたアクセス要求はレイテンシ計算回路ｃａｌｃ１及びメモリ制御回路ｃｔｌ１によって実施の形態１と同様に処理され、実レイテンシは信号ｌａｔ４１から、空バッファ数及び転送可能レイテンシは状態信号ｓｔａｔ１から出力される。
【０１９４】
以上説明した実施の形態２によれば、マスタ毎に、リクエストバッファｒｅｑ０１を構成するバッファｒｑ０１、ｒｑ１１、ｒｑ２１、ｒｑ３１及び、レスポンスバッファｒｅｓ０１を構成するバッファｒｓ０１、ｒｓ１１、ｒｓ２１、ｒｓ３１の利用権を設定できるので、他のマスタからの要求によってリクエストバッファｒｅｑ０１及びレスポンスバッファｒｅｓ０１が占有されることが無いため、アクセス競合が発生せず、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。
【０１９５】
さらに、メモリをアクセスするマスタは、常に、自らのアクセス要求に対するデータの転送時間を知ることができるため、次の処理を効率良く前もって実行することができ、システム全体の高速処理が可能となる。
＜実施の形態３＞
図１４には、上記メモリ制御回路ＳＬ１の別の構成例であるメモリ制御回路ＳＬ２が示される。尚、メモリ制御回路以外については上記実施の形態１，２の場合と同一とされる。
【０１９６】
図１４に示されるメモリ制御装置ＳＬ２は、リクエストバッファｒｅｑ０２と、レスポンスバッファｒｅｑ１２と、レジスタ回路ｓｒｅｇ２と、計算装置ｃａｌｃ２と、メモリ制御回路ＳＤＣＯＮ２で構成される。
【０１９７】
リクエストバッファｒｅｑ０２は、バッファｒａ、ｒｑ０２、ｒｑ１２、ｒｑ２２、ｒｑ３２と、フラグ回路ｒｏ０，ｒｏ１，ｒｏ２，ｒｏ３と、フラグ回路ｒｖ０,ｒｖ１,ｒｖ２,ｒｖ３を含む。レスポンスバッファｒｅｓ０２は、バッファｓａ、ｒｓ０２、ｒｓ１２、ｒｓ２２、ｒｓ３２と、フラグ回路ｓｏ０，ｓｏ１，ｓｏ２，ｓｏ３と、フラグ回路ｓｖ０、ｓｖ１、ｓｖ２、ｓｖ３から構成される。
【０１９８】
フラグ回路ｒｏ０，ｒｏ１，ｒｏ２，ｒｏ３は、図１３におけるフラグ回路ｒｆ０〜ｒｆ３に対応する。フラグ回路ｓｏ０〜ｓ０３は図１３におけるフラグ回路ｓｆ０〜ｓｆ３に対応する。レイテンシ計算回路ｃａｌｃ２及びコマンド生成回路ｃｏｍ２は、それぞれ実施の形態１におけるレイテンシ計算回路ｃａｌｃ及びコマンド生成回路ｃｏｍと同一機能を有する。
【０１９９】
フラグ回路ｒｏ０〜ｒｏ３、及びフラグ回路ｓｏ０〜ｓｏ３へのフラグ設定は、電源投入直後においてマイクロコンピュータＭＳ０が所定のブートプログラムを実行することによって可能とされる。このフラグ回路ｒｏ０〜ｒｏ３、及びフラグ回路ｓｏ０〜ｓｏ３においてフラグが設定されている場合には、換言すれば、バスマスタによる利用権が設定されている場合には、それに対応するバッファはバスマスタによってよって占有される。また、フラグ回路ｒｏ０〜ｒｏ３、及びフラグ回路ｓｏ０〜ｓｏ３においてフラグが設定されていない場合には、それに対応するバッファについて、以下の予約が可能となる。
【０２００】
バッファｒａ及びｓａは制御信号ｃｎｔ４２から入力されるバッファ予約命令とバッファ予約解除命令を保持する。
【０２０１】
フラグ回路ｒｖ０,ｒｖ１,ｒｖ２,ｒｖ３は、それぞれ、バッファｒｑ０２、ｒｑ１２、ｒｑ２２、ｒｑ３２が、予約状態か否かを示す信号を保持している。
【０２０２】
また、フラグ回路ｓｖ０,ｓｖ１,ｓｖ２,ｓｖ３は、それぞれ、バッファｒｓ０２、ｒｓ１２、ｒｓ２２、ｒｓ３２が予約状態か否かを示す信号を保持する。
【０２０３】
レジスタ回路ｓｒｅｇ２はレジスタ回路ｒｅｇ１とレイテンシレジスタ回路Ｌｒｅｇ１  回路ｃａｌｃ２と、コマンド生成回路ｃｔｌ２で構成されている。
【０２０４】
レジスタ回路ｒｅｇ１と、レイテンシレジスタ回路Ｌｒｅｇ１と、メモリ制御回路ＳＤＣＯＮ２はレイテンシ計算回路ｃａｌｃ２と、コマンド生成回路ｃｏｍ２は、実施の形態１と同様の動作を行う。
【０２０５】
信号ｃｎｔ５２より、各マスタからのアクセス要求が入力される。書き込みデータはデータバスｔｗｂｕｓ２から入力され、読み出しデータはデータバスｔｒｂｕｓ２から出力される。
【０２０６】
状態信号ｓｔａｔ２からは、空きバッファ数及び転送可能レイテンシ（転送可能リードレイテンシ及び転送可能ライトレイテンシ）が出力され、レイテンシ信号ｌａｔ４２からは、実レイテンシ（実リードレイテンシ、実ライトレイテンシ）が出力される。
【０２０７】
制御信号ｃｎｔ５２よりメモリ装置ＭＥＭ０を制御する命令が出力される。入出力データバスｍｂｕｓ２を通じて、読み出しデータは、メモリ装置ＭＥＭ０からメモリ制御装置ＳＬ２へ転送され、書き込みデータは、メモリ制御装置ＳＬ２からメモリ装置ＭＥＭ０へ転送される。
【０２０８】
電源投入直後、マイクロコンピュータＭＳ０がブートプログラムを実行することによって、制御信号ｃｎｔ４２を通じてライト命令を含んだアクセス要求が入力され、データバスｔｗｂｕｓ２を通じて、マスタ番号ｍｎと、マスタ番号ｍｎに対応する最大予約バッファ数が入力されるレジスタ回路ｒｅｇ３へ設定される。
【０２０９】
マスタ番号及び最大予約バッファ数によって、どのマスタが、どのぐらいの数のバッファを予約可能かということがわかる。
【０２１０】
次に、信号ｃｎｔ４２を通じてストア命令が入力され、データバスｔｗｂｕｓ２を通じて、図２及び図３に示されるＳＤＲＡＭを動作させるための命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ,Ｔｐｒｅ）と、キャスレイテンシＣＬと、ＳＤＲＡＭの入出力バスｍｂｕｓ２のバス幅に関するデータが入力され、レジスタ回路ｒｅｇ１へ設定される。
【０２１１】
次に、レイテンシ計算回路ｃａｌｃ２は、上記命令と命令の間の最小時間（Ｔｒｃ,Ｔｒｃｄ,Ｔｒｐ,Ｔｒｗｌ,ＣＬ）を用い、読み出し時のレイテンシＬａｃＲｄと、書き込み時のレイテンシＬａｃＷｔと、読み出しサイクルレイテンシＲｃｙｃと、書き込みサイクルレイテンシＷｃｙｃを計算しレイテンシレジスタ回路Ｌｒｅｇ１へ設定する。
【０２１２】
次に、特に制限されないがバッファｒｑ０２、ｒｑ１２、ｒｑ２２が、画像処理装置ＭＳ１の要求を保持しており、バッファｒｑ３２が空き状態で、バッファｒｓ２０、ｒｓ１２、ｒｓ２２が、画像処理装置ＭＳ１のアクセス要求に対する読み出しデータを保持しており、バッファｒｓ３２が空き状態である場合、データ出力装置ＭＳ３からアクセス要求が生じた場合の動作を説明する。
【０２１３】
データ出力装置ＭＳ３は、制御信号ｃｎｔ３よりバファ予約要求と、マスタ識別番号ｍｉｄの値３をアクセス調停装置ＡＲＢへ送信する。アクセス調停装置ＡＲＢは、ｃｎｔ４２を通じてバッファ予約要求と及びマスタ識別番号ｍｉｄの値３をメモリ制御装置ＳＬ２へ送信する。
【０２１４】
入力されたバッファ予約要求と及びマスタ識別番号ｍｉｄの値３は、バッファｒａ及びｓａへ保持される。
【０２１５】
次に、バッファｒａは、レジスタ回路ｒｅｇ３に保持されているマスタ番号ｍｎの中に、マスタ識別番号ｍｉｄ値３があるかどうかチェックする。
【０２１６】
識別番号ｍｉｄ値３と一致するマスタ番号ｍｎが存在すれば、バッファｒｖ０からｒｖ３内の情報を検索し、バッファｒｑ０２からｒｑ３２の中で空いているバッファを探す。
【０２１７】
空き状態のバッファｒｑ３２であれば、バッファｒｑ３２に対して予約を行う。その際、バッファｒｖ３には識別番号ｍｉｄ値３が保持され、バッファｒｑ３２がデータ出力装置ＭＳ３によってのみ利用可能になる。
【０２１８】
また、バッファｒｑ０２からｒｑ３２の中で空き状態のバッファが存在しなければ、最初に空き状態となったバッファ対し予約を行う。バッファｒｑ３２が最初に空き状態となった場合、バッファｒｑ３２に対して予約を行う。その際、バッファｒｖ３には識別番号ｍｉｄ値３が保持され、バッファｒｑ３２がデータ出力装置ＭＳ３によってのみ利用可能になる。
【０２１９】
次に、バッファｓａは、レジスタ回路ｒｅｇ３に保持されているマスタ番号ｍｎの中に、マスタ識別番号ｍｉｄ値３があるかどうかチェックする。もし、識別番号ｍｉｄ値３と一致するマスタ番号ｍｎが存在すれば、バッファｓｖ０からｓｖ３内の情報を検索し、バッファｒｓ０２からｒｓ３２の中で空いているバッファを探す。
【０２２０】
空き状態のバッファｒｓ３２であれば、バッファｒｓ３２に対して予約を行う。その際、バッファｓｖ３には識別番号ｍｉｄ値３が保持され、バッファｒｓ３２がデータ出力装置ＭＳ３によってのみ利用可能になる。
【０２２１】
また、バッファｒｓ０２からｒｓ３２の中で空き状態のバッファが存在しなければ、最初に空き状態となったバッファ対し予約を行う。バッファｒｓ３２が最初に空き状態となった場合、バッファｒｓ３２に対して予約を行う。その際、バッファｓｖ３には識別番号ｍｉｄ値３が保持され、バッファｒｓ３２がデータ出力装置ＭＳ３によってのみ利用可能になる。
【０２２２】
バッファの予約が完了すると、信号ｓｔａｔ２より、予約が完了したこと知らせる予約完了信号及び識別番号ｍｉｄ値３をアクセス調停装置ＡＲＢへ送信される。その後、データ出力回路ＭＳ３から、リード命令を含んだアクセス要求が生じた場合、バッファｒｑ３２及びｒｓ３２はデータ出力回路ＭＳ３にのみ利用可能な状態となっているので、データ出力回路ＭＳ３の要求がバッファｒｑ３２へエントリーされる。その後、レイテンシ計算回路ｃａｌｃ２及びメモリ制御回路ｃｔｌ２にて処理され、メモリ装置Ｍ０よりデータが読み出されバッファｒｓ３２に転送される。次にバッファｒｓ３２はリードデータバスｔｒｂｕｓ２からデータを、アクセス調停装置ＡＲＢへ出力する。また、識別番号ｍｉｄ値３は、信号ｓｔａｔ２を通じてアクセス調停装置ＡＲＢへ送信される。
【０２２３】
アクセス調停装置ＡＲＢは、データバスｒｂｕｓを通じてデータを、データ出力装置ＭＳ３へ出力する。また、信号ｒｓｔａｔを通じて識別番号ｍｉｄ値３をデータ出力装置ＭＳ３へ送信する。
【０２２４】
次に、バッファの予約解除について説明する。
【０２２５】
データ出力装置ＭＳ３は、制御信号ｃｎｔ３よりバッファ予約解除要求と、マスタ識別番号ｍｉｄの値３をアクセス調停装置ＡＲＢへ送信する。アクセス調停装置ＡＲＢは、ｃｎｔ４２を通じてバッファ予約解除要求と及びマスタ識別番号ｍｉｄの値３をメモリ制御装置ＳＬ２へ送信する。
【０２２６】
入力されたバッファ予約解除要求と及びマスタ識別番号ｍｉｄの値３は、バッファｒａ及びｓａへ保持される。
【０２２７】
次に、バッファｒａは、レジスタ回路ｒｅｇ３に保持されているマスタ番号ｍｎの中に、マスタ識別番号ｍｉｄ値３があるかどうかチェックする。もし、識別番号ｍｉｄ値３と一致するマスタ番号ｍｎが存在すれば、バッファｒｖ０からｒｖ３内の情報を検索し、バッファｒｑ０２からｒｑ３２の中でデータ出力装置ＭＳ３が予約しているバッファを探す。本例では、予約しているバッファｒｑ３２及びｒｓ３２に対して予約解除を行う。予約解除後は、バッファｒｑ３２及びｒｓ３２は、どのマスタにも利用可能となる。
【０２２８】
バッファの予約解除が完了すると、状態信号ｓｔａｔ２より、予約解除が完了したこと知らせる予約解除完了信号及び識別番号ｍｉｄ値３をアクセス調停装置ＡＲＢへ送信される。さらに、アクセス調停装置ＡＲＢは信号ｒｓｔａｔを通じて、データ出力装置ＭＳ３へ、予約解除完了信号及び識別番号ｍｉｄ値３を送信する。これによって、データ出力装置ＭＳ３は、予約解除が完了したことを知ることができる。また、レジスタｒｅｇ３へ保持されているマスタ番号ｍｎとマスタ識別番号ｍｉｄ値３とが一致するが存在しなければ、状態信号ｓｔａｔ２を通じて、マスタ番号不一致情報と、マスタ識別番号ｍｉｄ値３とが、アクセス調停装置ＡＲＢへ送信される。さらに、アクセス調停装置ＡＲＢは信号ｒｓｔａｔを通じて、データ出力装置ＭＳ３へ、マスタ番号不一致情報及び識別番号ｍｉｄ値３を送信する。これによって、データ出力装置ＭＳ３は、予約が不可能であることを知ることができる。
【０２２９】
以上説明した実施の形態によれば、マスタ毎に、リクエストバッファｒｅｑ０１を構成するバッファｒｑ０１、ｒｑ１１、ｒｑ２１、ｒｑ３１及び、レスポンスバッファｒｅｓ０１を構成するバッファｒｓ０１、ｒｓ１１、ｒｓ２１、ｒｓ３１を必要な時間帯に必要な数を予約し、利用権を設定できるので、他のマスタからの要求によってリクエストバッファｒｅｑ０１及びレスポンスバッファｒｅｓ０１が占有されることが無いため、必要な時間帯のみにアクセス競合を発生させず、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。
【０２３０】
また、バッファｒａ、フラグ回路ｒｖ０,ｒｖ１,ｒｖ２,ｒｖ３、バッファｓａ、フラグ回路ｓｖ０，ｓｖ１，ｓｖ２，ｓｖ３は、第三者によって書き換え可能とされるのに対してｒｏ０，ｒｏ１，ｒ０２，ｒｏ３、ｓｏ０，ｓｏ１，ｓｏ２，ｓｏ３はブートプログラムが実行された場合にのみ書き換え可能とされる。ブート時の書き込みは第三者にとって不可能とされるため、図１４に示される構成によれば、バッファの占有状態を確実に形成することができ、しかも必要に応じて予約対応とすることができる。
＜実施の形態４＞
図１５には、本願を適用した情報処理システムの別の構成例が示される。
【０２３１】
図１５に示される情報処理システムは、中央演算回路ＣＰＵを装備するマイクロコンピュータＭＳ０と、グラフィックス回路を装備するグラフィック処理装置ＭＳ６と、データ圧縮／伸張回路ＭＡＣＣを装備する画像処理装置ＭＳ１と、データ入力装置ＭＳ１と、データ出力装置ＭＳ３と、アクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ２と、撮像装置ＣＣＤと、画像表示装置ＬＣＤと、メモリ装置ＭＥＭ０と、内蔵メモリ装置ＯＣＲＡＭとを含んで構成される。そして、この情報処理装置はクロックＣＬＫに同期して動作する。
【０２３２】
特に制限されないが、マイクロコンピュータＭＳ０、グラフィック処理装置ＭＳ６、画像処理装置ＭＳ１、データ入力装置ＭＳ２、データ出力装置ＭＳ３、アクセス調停装置ＡＲＢ、メモリ制御装置ＳＬ２および内蔵メモリ装置ＯＣＲＡＭは同一基板ＣＨＩＰ４上に形成される。
【０２３３】
特に制限されないが、メモリ装置ＭＥＭ０および内蔵メモリ装置ＯＣＲＡＭはＤＲＡＭ、ＳＲＡＭ及び不揮発性メモリで構成することが可能である。
【０２３４】
マイクロコンピュータＭＳ０と、画像処理装置ＭＳ１と、データ入力装置ＭＳ１と、データ出力装置ＭＳ３と、アクセス調停装置ＡＲＢおよび内蔵メモリ装置ＯＣＲＡＭは、実施の形態１で示したそれぞれの装置と同様の動作を行う。
【０２３５】
メモリ制御回路ＳＬ２には、実施の形態１，２及び３で示したメモリ制御機能を実現できるが、本例では、実施の形態３で示したメモリ制御機能を実現する。
【０２３６】
３次元グラフィックス処理では、ジオメトリ処理を行い、その後レンダリング処理を行う。ジオメトリ処理は、特に制限されないが、マイクロコンピュータＭＳ０が行う処理で、３次元図形を表すため、図形の座標計算を行うことである。レンダリング処理は、画像処理装置ＭＳ１が行う処理で、画像表示装置ＬＣＤへ表示するために、ジオメトリ処理後の３次元図形に、色、明るさ、奥行き、絵柄といった視覚的効果を付け足す処理である。
【０２３７】
３次元画像はメモリ装置ＭＥＭ０へ格納されており、現在の３次元画像を読み出して、マイクロコンピュータＭＳ０がジオメトリ処理を行い、その後、グラフィック処理装置ＭＳ６がレンダリング処理を行い、新しい３次元画像を生成し、再度メモリ装置ＭＥＭ０へ格納する。最後に、生成された３次元画像は、出力装置ＭＳ３へ転送され、画像表示装置ＬＣＤへ表示される。
【０２３８】
このように、３Ｄグラフィックス処理において、マイクロコンピュータＭＳ０、グラフィック処理装置ＭＳ６及び画像出力装置ＭＳ３は、メモリ装置ＭＥＭ０をアクセスする。
【０２３９】
このような３次元グラフィックス処理では、ジオメトリ処理、レンダリング処理及び表示同時に処理され、さらに１秒間に３０画面分の３Ｄグラフィックス処理を行う必要がある。
【０２４０】
以上説明したように、グラフィックス処理を行う場合においても、本発明を適用することにより、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。
【０２４１】
さらに、メモリをアクセスするバスマスタは、常に、自らのアクセス要求に対するデータの転送時間を知ることができるため、次の処理を効率良く前もって実行することができ、システム全体の高速処理が可能となる。
【０２４２】
動画像の録画と、３Ｄグラフィックス処理を同時に行う場合は、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、グラフィック処理装置ＭＳ６、画像入力装置ＭＳ２及び画像出力装置ＭＳ３の全ての装置がバスマスタとなって、メモリ装置ＭＥＭ０をアクセスする。
特に制限されないが、マイクロコンピュータＭＳ０は、録画した動画像と３次元グラフィックス画像とが、それぞれで、書き換えられないように、メモリ装置ＭＥＭ０内での格納領域を決めることができる。
【０２４３】
さらに、特に制限されないが、画像出力装置ＭＳ３は、マイクロコンピュータＭＳ０の指示によって、表示装置ＬＣＤの画面を録画用の画面と３Ｄグラフィックス用の画面に分割し表示を行う。
【０２４４】
以上説明したように、グラフィックス処理と動画像録画を同時に行う場合においても、本発明を適用することにより、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。さらに、メモリをアクセスするバスマスタは、常に、自らのアクセス要求に対するデータの転送時間を知ることができるため、次の処理を効率良く前もって実行することができ、システム全体の高速処理が可能となる。
＜実施の形態５＞
図１６には、本願にかかる情報処理システムの別の構成例が示され。
【０２４５】
図１６に示される情報処理システムは、中央演算回路ＣＰＵ０を装備するマイクロコンピュータＭＳ０と、中央演算回路ＣＰＵ１を装備する画像処理装置ＭＳ１と、データ入力装置ＭＳ２と、データ出力装置ＭＳ３と、アクセス調停装置ＡＲＢと、メモリ制御装置ＳＬ０と、撮像装置ＣＣＤと、画像表示装置ＬＣＤと、メモリ装置ＭＥＭ０と、で、内蔵メモリ装置ＯＣＲＡＭとを含んで構成される。そして、この情報処理装置はクロックＣＬＫに同期して動作する。
【０２４６】
マイクロコンピュータＭＳ０と、画像処理装置ＭＳ１と、データ入力装置ＭＳ２と、データ出力装置ＭＳ３と、アクセス調停装置ＡＲＢと、内蔵メモリ装置ＯＣＲＡＭは、実施の形態１で示したそれぞれの装置と同様の動作を行う。
【０２４７】
メモリ制御装置ＳＬ０には、実施の形態１，２及び３で示したメモリ制御方法を実現できるが、本例では、実施の形態１で示したメモリ制御方法を実現する。
【０２４８】
特に制限されないが、マイクロコンピュータＭＳ０、画像処理装置ＭＳ１、データ入力装置ＭＳ２、データ出力装置ＭＳ３、アクセス調停装置ＡＲＢ、メモリ制御装置ＳＬ０および内蔵メモリ装置ＯＣＲＡＭは同一基板上に形成され、情報処理装置ＣＨＩＰ５を形作ることも可能である。
【０２４９】
特に制限されないが、メモリ装置ＭＥＭ０および内蔵メモリ装置ＯＣＲＡＭはＤＲＡＭ、ＳＲＡＭなどの揮発性メモリ及び不揮発性メモリで構成することも可能である。
【０２５０】
マイクロコンピュータＭＳ０は、ハードウエアで実現していたデータ圧縮／伸張処理をソフトウエアで行うことができ、画像処理装置ＭＳ１は、ハードウエアで実現していたグラフィックス処理をソフトウエアで行うことができる。
【０２５１】
したがって、中央演算回路ＣＰＵを装備する情報処理装置を複数利用した場合においても、本発明を適用することにより、必要なデータを必要な時間までに供給できシステム全体を高速にかつ円滑に動作させることが可能となる。
さらにソフトウエアにて処理を行うことで、さまざまな圧縮／伸張の規格にすばやく対応することができる。さらに、新たな機能を容易に拡張できる。
【０２５２】
メモリをアクセスする複数のバスマスタからなる情報処理ユニットと、アクセス調停装置とメモリ制御装置とからなるメモリ制御ユニットとを別の半導体チップ上に形成してもよいが、両者を単一の半導体チップ上に形成してもよい。その場合、単一の半導体チップ上に形成された情報処理装置は、データバスｒｂｕｓ及びｗｂｕｓを別々の半導体チップで形成するよりも幅の広いバスとすることが可能となる上に、両者の距離が短縮されるために、両者間での高速データ転送が可能となる。
【０２５３】
更に、メモリ制御ユニットのみを他者に設計させ、或いは既に設計されている設計資産として情報処理ユニットと同一の半導体チップ上に形成してワンチップの情報処理装置とすることも可能である。
【０２５４】
この場合、メモリ制御装置の回路等の構成を記録媒体に記録し、情報処理部の設計者或いは情報処理装置の設計者に提供することの可能である。
【０２５５】
また、自らが半導体装置の製造を行う場合、他者が提供する情報処理ユニットに、本発明のメモリ制御ユニット或いはメモリ制御ユニットとメモリ装置とを組み合わせ、半導体装置を提供して他者に供給することも可能である。
【０２５６】
他方、メモリ制御ユニットをメモリ内に設けることも可能である。メモリ制御ユニットを情報処理ユニット或いはメモリモジュール内に形成することで、情報処理システムの製造者の負荷を低減することが可能となり、情報処理システムの小型化も可能となる。
また、半導体装置の製造プロセスの進歩にあわせ、メモリの一部或いは全部を情報処理装置と同一の半導体チップ上に形成することも可能である。つまりワンチップの情報処理システムの実現であり、システムの一層の小型化が可能となる。
【０２５７】
また、図１７にはパッケージ例が示され、図１８には、図１７における線分Ａ−Ａ’線切断断面が示される。尚、１７においては、図１８におけるカバーＣＯＶＥＲが省略されている。図１７及び図１８に示されるように、単一チップにより形成された情報処理装置Ｓ−ＭＳと、それぞれ単一チップにより形成されたメモリ装置Ｓ−ＭＥ１，Ｓ−ＭＥ２とを含むモジュールとを１つのパッケージで封止することができる。この構成は、マルチチップモジュール或いはマルチチップパッケージなどとして知られている。ここで、上記情報処理装置Ｓ−ＭＳは、図１における情報処理装置ＣＨＩＰ１に対応し、メモリ装置Ｓ−ＭＥ１は、図１におけるメモリＭＥＭＯに対応する。
【０２５８】
図１９には、本発明にかかる情報処理装置の別の構成例が示される。図１９に示されるのが、図１に示されるのと大きく相違するのは、メモリ装置ＭＥＭ０とその動作を制御するメモリ制御装置ＳＬ０とが一つのメモリチップＣＨＩＰ７に含まれている点である。このようにしても上記の例と同様の作用効果を奏する。
【０２５９】
以上、複数のバスマスタからのアクセス要求に対して、必要なデータを必要な時間までにバスマスタへ供給できる情報処理システムの実施形態を説明してきたが、本発明は上記実施形態に限定されるわけでは無く、本願発明の思想を逸脱しない範囲で、他にも様々な実施形態を採用することが可能である。
【０２６０】
以上本発明者によってなされた発明を具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【０２６１】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である画像処理を可能とするシステムに適用した場合について説明したが、本発明はそれに限定されるものではなく、情報処理を可能とするシステム広く適用することができる。
【０２６２】
本発明は、複数のバスマスタを含むことを条件に適用することができる。
【図面の簡単な説明】
【０２６３】
【図１】本願にかかる情報処理システムの全体的な構成例ブロック図である。
【図２】上記情報処理システムにおける主要部の動作タイミング図である。
【図３】上記情報処理システムにおける主要部の動作タイミング図である。
【図４】上記情報処理システムに含まれるアクセス調停装置の構成例ブロック図である。
【図５】上記アクセス調停装置の動作を示すフローチャートである。
【図６】上記アクセス調停装置の動作を示すフローチャートである。
【図７】上記メモリ制御装置の構成例ブロック図である。
【図８】上記メモリ制御回路の動作を示すフローチャートである。
【図９】上記メモリ制御回路の動作を示すフローチャートである。
【図１０】上記メモリ制御回路へのプログラム手順を示すフローチャートである。
【図１１】図８における主要部の詳細なフローチャートである。
【図１２】図８における主要部の詳細なフローチャートである。
【図１３】上記メモリ制御回路の別の構成例ブロック図である。
【図１４】上記メモリ制御回路の別の構成例ブロック図である。
【図１５】上記情報処理システムの別の構成例風呂区図である。
【図１６】上記情報処理システムの別の構成例風呂区図である。
【図１７】上記情報処理システムがパッケージに封止された状態の平面図である。
【図１８】図１７におけるＡ−Ａ’線切断断面図である。
【図１９】上記情報処理システムの別の構成例ブロック図である。
【符号の説明】
【０２６４】
ＭＳ０  マイクロコンピュータ
ＭＳ１  画像処理装置
ＭＳ２  データ入力装置
ＭＳ３  データ出力装置
ＣＰＵ  中央演算回路
ＭＡＣＣ  データ圧縮／伸張回路
ＶＩＦ  データ入力回路
ＬＩＦ  データ出力回路
ＡＲＢ  アクセス調停装置
ＳＬ０  メモリ制御装置
ＳＤＣＯＮ  メモリ制御回路
ＣＣＤ  撮像装置
ＬＣＤ  表示装置
ＭＥＭ０  メモリ装置
ＯＣＲＡＭ  内蔵メモリ装置
ｒｑｍ０,ｒｑｍ１,ｒｑｍ２,ｒｑｍ３,ｒｅｑ０  リクエストバッファ
ｒｓｍ０,ｒｓｍ１,ｒｓｍ２,ｒｓｍ３,ｒｅｓ０  レスポンスバッファ
ｓｒｅｇ  レジスタ回路
ｃｎｔ０,ｃｎｔ１,ｃｎｔ２,ｃｎｔ３,ｃｎｔ４,ｃｎｔ５，ｃｎｔ６  制御信号
ｓｔａｔ,ｒｓｔａｔ  状態信号
ｌａｔ０,ｌａｔ１,ｌａｔ２,ｌａｔ３,ｌａｔ４，ｌａｔ６  レイテンシ信号
ｗｂｕｓ,ｒｂｕｓ,ｔｗｂｕｓ,ｔｒｂｕｓ，ｒｍｒｂｕｓ，ｒｍｗｂｕｓ  データバス
ｍｂｕｓ  入出力データバス
ＣＨＩＰ１  情報処理装置
ＣＬＫ  クロック
Ｔｒｃｄ,Ｔｒｃ,Ｔｒｐ,Ｔｒｗｌ,Ｔｐｒｅ  最小時間間隔
ＣＬ  キャスレイテンシ
Ｂｓｔ  データ転送回数
ＢＫ  バンクアドレス
Ｒ０，Ｒ１  ロウアドレス
ＲＤ  リード命令
Ｃ０  カラムアドレス
ＷＴ  ライト命令
Ｄ０，Ｄ１，Ｄ２，Ｄ３  データ
ｌａｔ０ｆ，ｌａｔ１ｆ，ｌａｔ２ｆ，ｌａｔ３ｆ，ｌａｔ４ｆ，ｌａｔ６ｆ  レイテンシ保持回路
ｌａｔｓｔａｔ  状態信号保持回路
ｐｒｉ０，ｐｒｉ１，ｐｒｉ２，ｐｒｉ３  第一アクセス優先レベル回路
ｐｒｉｒｅｇ  第一アクセス優先レベルレジスタ
ｍｉｄｒｅｇ  マスタ識別レジスタ
ＣＮＴ１  アクセス許可回路
ｒｑ０，ｒｑ１，ｒｑ２，ｒｑ３,ｒｓ０，ｒｓ１，ｒｓ２，ｒｓ３  バッファ
ｒｅｇ  レジスタ回路
Ｌｒｅｇ  レイテンシレジスタ回路
ｃａｌｃ  レイテンシ計算回路
ｃｏｍ  コマンド生成回路
ＳＬ１  メモリ制御装置
ｒｅｑ０１  リクエストバッファ
ｒｅｑ１１  レスポンスバッファ
ｓｒｅｇ１  レジスタ回路
ＳＤＣＯＮ１  メモリ制御回路
ｒｑ０１，ｒｑ１１，ｒｑ２１，ｒｑ３１，ｒｓ０１，ｒｓ１１，ｒｓ２１，ｒｓ３１  バッファ
ｒｆ０,ｒｆ１,ｒｆ２,ｒｆ３,ｓｆ０,ｓｆ１,ｓｆ２  フラグ回路
ｓｒｅｇ１  レジスタ回路
ｒｅｇ１，ｒｅｇ２  レジスタ回路
Ｌｒｅｇ１  レイテンシレジスタ回路
ＳＤＣＯＮ１  メモリ制御回路
ｃａｌｃ１  レイテンシ計算回路
ｃｏｍ１  コマンド生成回路
ｃｎｔ４１,ｃｎｔ５１  制御信号
ｌａｔ４１  レイテンシ信号
ｓｔａｔ１,ｒｓｔａｔ１  状態信号
ｔｗｂｕｓ１,ｔｒｂｕｓ１  データバス
ｍｂｕｓ１  入出力データバス
ＳＬ２  メモリ制御装置
ｒｅｑ０２  リクエストバッファ
ｒｅｓ０２  レスポンスバッファ
ｓｒｅｇ２  レジスタ回路
ＳＤＣＯＮ２  メモリ制御回路
ｒｑ０２,ｒｑ１２,ｒｑ２２,ｒｑ３２,ｒｓ０２,ｒｓ１２,ｒｓ２２,ｒｓ３１２,ｒａ,ｓａ  バッファ
ｒｖ０,ｒｖ１,ｒｖ２,ｒｖ３,ｓｖ０,ｓｖ１,ｓｖ２  フラグ回路
ｓｒｅｇ２  レジスタ回路
ｒｅｇ１，ｒｅｇ３  レジスタ回路
Ｌｒｅｇ１  レイテンシレジスタ回路
ＳＤＣＯＮ２  メモリ制御回路
Ｃａｌｃ２  レイテンシ計算回路
ｃｏｍ２  コマンド生成回路
ｃｎｔ４２,ｃｎｔ５２  制御信号
ｌａｔ４２  レイテンシ信号
ｓｔａｔ２,ｒｓｔａｔ２  状態信号
ｔｗｂｕｓ２,ｔｒｂｕｓ２  データバス
ｍｂｕｓ２  入出力データバス
ＭＳ６  情報処理装置
ＧＲＡ  グラフィックス回路
ＣＰＵ  中央演算回路
【図１】
2006163711.tif 000003
【図２】
2006163711.tif 000004
【図３】
2006163711.tif 000005
【図４】
2006163711.tif 000006
【図５】
2006163711.tif 000007
【図６】
2006163711.tif 000008
【図７】
2006163711.tif 000009
【図８】
2006163711.tif 000010
【図９】
2006163711.tif 000011
【図１０】
2006163711.tif 000012
【図１１】
2006163711.tif 000013
【図１２】
2006163711.tif 000014
【図１３】
2006163711.tif 000015
【図１４】
2006163711.tif 000016
【図１５】
2006163711.tif 000017
【図１６】
2006163711.tif 000018
【図１７】
2006163711.tif 000019
【図１８】
2006163711.tif 000020
【図１９】
2006163711.tif 000021