(57)【特許請求の範囲】
【請求項１】
１つ以上の演算処理装置と前記演算処理装置からデータを転送する時間間隔を可変に制御する転送制御装置とから構成される処理装置と、１つ以上の前記処理装置から共有して使用され記憶単位であるＢａｎｋで構成される主記憶部と、前記処理装置間と前記主記憶部とを接続するパイプライン方式のＢｕｓと、前記処理装置間を接続し前記処理装置が前記Ｂｕｓを使用する為の競合調停を行う際に自処理装置からの転送命令を他の全処理装置に送る制御線とを有する情報処理装置において、
前記転送制御装置は、前記演算処理装置からデータの転送命令を受け付けデータ転送を行うＣＰＵ接続手段と、
前記主記憶部のＢａｎｋアクセス状況を管理し前記Ｂａｎｋへアクセスするデータの転送命令の発行時にアクセスが可能か不可能かの判断を行うＢａｎｋ  Ｂｕｓｙ管理手段と、
前記演算処理装置からデータの転送命令を受け付けたとき前記Ｂｕｓの使用状況から前記転送命令と転送するデータとの時間間隔であるＭｏｄｅを設定するＭｏｄｅ管理手段と、
前記Ｂｕｓに接続される前記処理装置からの前記制御線を介してＢｕｓに対する前記転送命令の要求の調停を行い前記Ｂｕｓの使用権をいずれかの処理装置に与えるＢｕｓ競合調停手段と、
前記Ｂｕｓとインタフェースを持ち前記演算処理装置からのデータの転送を行うＢｕｓ接続手段と、
前記ＣＰＵ接続手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｍｏｄｅ管理手段と前記Ｂｕｓ競合調停手段と前記Ｂｕｓ接続手段とを制御するＲＱ転送制御手段と、
を備え、
前記Ｍｏｄｅ管理手段は、前記ＢｕｓのＤａｔａ  Ｃｙｃｌｅの使用状況をＢｕｓ全体のＴｉｍｉｎｇレジスタにより管理するＢｕｓ  Ｂｕｓｙ管理手段と、
前記演算処理装置からのデータの転送命令がＷｒｉｔｅ命令のとき前記Ｂｕｓ全体のＴｉｍｉｎｇレジスタの値に対応しデータを前記Ｂｕｓに転送するＴｉｍｉｎｇを規定するＭｏｄｅを設定するＭｏｄｅ設定手段と、
前記Ｂｕｓ上に発行された転送命令の前記Ｍｏｄｅを識別し所属する前記処理装置に対しＣａｃｈｅ間またはＣａｃｈｅと主記憶部間のデータ転送を行うＴｉｍｉｎｇを判断するＭｏｄｅ識別手段と、
前記Ｂｕｓ  Ｂｕｓｙ管理手段と前記Ｍｏｄｅ設定手段と前記Ｍｏｄｅ識別手段とをＭｏｄｅ管理制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記主記憶部は、Ｂａｎｋアクセス手段からの制御によりデータを記憶するＢａｎｋと、
前記Ｂｕｓとインタフェースを持ちＢｕｓとのデータ転送を行うＭＭ接続手段と、
前記Ｂｕｓからデータの転送命令に設定されている前記Ｍｏｄｅによりデータが送られてくるＴｉｍｉｎｇを識別するＭｏｄｅ制御手段と、
前記処理装置内にある前記Ｂａｎｋ  Ｂｕｓｙ管理手段と同一の機能を持つＢａｎｋ  Ｂｕｓｙ管理手段と、
前記Ｂａｎｋと対をなしデータの転送命令のアクセスを制御するＢａｎｋアクセス手段と、
前記ＭＭ接続手段と前記Ｍｏｄｅ制御手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂａｎｋアクセス手段の制御とデータの転送命令を受け取ったときにこの転送命令のデータを受け取るまで待ち合わせるＭＭ制御手段と、
を備えることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記Ｍｏｄｅ制御手段は、前記Ｂｕｓからの転送命令に設定されているＭｏｄｅによりＤａｔａが送られてくるＴｉｍｉｎｇを識別するＭｏｄｅ識別手段と、
前記Ｍｏｄｅ識別手段を制御する識別制御手段と、
を備えることを特徴とする請求項２記載の情報処理装置。
【請求項４】
１つ以上の演算処理装置と前記演算処理装置からデータを転送する時間間隔を可変に制御する転送制御装置とから構成される処理装置と、１つ以上の前記処理装置から共有して使用され記憶単位であるＢａｎｋで構成される主記憶部と、前記処理装置間と前記主記憶部とを接続するパイプライン方式のＢｕｓと、前記処理装置間を接続し前記処理装置が前記Ｂｕｓを使用する為の競合調停を行う際に自処理装置からの転送命令を他の全処理装置に送る制御線とを有する情報処理装置において、
前記転送制御装置は、前記演算処理装置からデータの転送命令を受け付けデータ転送を行うＣＰＵ接続手段と、
前記主記憶部のＢａｎｋアクセス状況を管理し前記Ｂａｎｋへアクセスするデータの転送命令の発行時にアクセスが可能か不可能かの判断を行うＢａｎｋ  Ｂｕｓｙ管理手段と、
前記演算処理装置からデータの転送命令を受け付けたとき前記Ｂｕｓの使用状況から前記転送命令と転送するデータとの時間間隔であるＭｏｄｅを設定するＭｏｄｅ管理手段と、
前記Ｂｕｓに接続される前記処理装置からの前記制御線を介してＢｕｓに対する前記転送命令の要求の調停を行い前記Ｂｕｓの使用権をいずれかの処理装置に与えるＢｕｓ競合調停手段と、
前記Ｂｕｓとインタフェースを持ち前記演算処理装置からのデータの転送を行うＢｕｓ接続手段と、
前記ＣＰＵ接続手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｍｏｄｅ管理手段と前記Ｂｕｓ競合調停手段と前記Ｂｕｓ接続手段とを制御するＲＱ転送制御手段と、
を備え、
前記転送制御装置は、前記演算処理装置からデータの転送命令を受け付けデータ転送を行うＣＰＵ接続手段と、
前記主記憶部のＢａｎｋアクセス状況を管理し前記Ｂａｎｋへアクセスするデータの転送命令の発行時にアクセスが可能か不可能かの判断を行うＢａｎｋ  Ｂｕｓｙ管理手段と、
前記Ｂｕｓの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段とこのＢｕｓ  Ｂｕｓｙ管理手段を制御するＢｕｓ管理制御手段とを含むＢｕｓ管理手段と、
前記Ｂｕｓに接続される前記処理装置からの前記制御線を介してＢｕｓに対する前記転送命令の要求の調停を行い前記Ｂｕｓの使用権をいずれかの処理装置に与えるＢｕｓ競合調停手段と、
前記Ｂｕｓとインタフェースを持ち前記演算処理装置からのデータの転送を行うＢｕｓ接続手段と、
前記ＣＰＵ接続手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂｕｓ管理手段と前記Ｂｕｓ競合調停手段と前記Ｂｕｓ接続手段とを制御するＲＱ転送制御手段と、
を備えることを特徴とする情報処理装置。
【請求項５】
前記主記憶部は、Ｂａｎｋアクセス手段からの制御によりデータを記憶するＢａｎｋと、
前記Ｂｕｓとインタフェースを持ちＢｕｓとのデータ転送を行うＭＭ接続手段と、
前記Ｂｕｓの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段とこのＢｕｓ  Ｂｕｓｙ管理手段を制御するＢｕｓ管理制御手段とを含むＢｕｓ管理手段と、
前記処理装置内にある前記Ｂａｎｋ  Ｂｕｓｙ管理手段と同一の機能を持つＢａｎｋ  Ｂｕｓｙ管理手段と、
前記Ｂａｎｋと対をなしデータの転送命令のアクセスを制御するＢａｎｋアクセス手段と、
前記ＭＭ接続手段と前記Ｂｕｓ管理手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂａｎｋアクセス手段の制御とデータの転送命令を受け取ったときにこの転送命令のデータを受け取るまで待ち合わせるＭＭ制御手段と、
を備えることを特徴とする請求項１、または４記載の情報処理装置。
【請求項６】
前記Ｂｕｓ管理手段は、前記Ｂｕｓ  Ｂｕｓｙ管理手段内のＢｕｓ全体のＴｉｍｉｎｇレジスタに加えて有効Ｔｉｍｉｎｇレジスタを備えることを特徴とする請求項４、または５記載の情報処理装置。
【請求項７】
前記有効Ｔｉｍｉｎｇレジスタは、Ｂｕｓ全体のＴｉｍｉｎｇレジスタに登録されたＴｉｍｉｎｇが所属する処理装置から前記Ｂｕｓに有効なデータの転送命令を出力したことを示し、前記Ｂｕｓ全体のＴｉｍｉｎｇレジスタにセットされたとき同じＴｉｍｉｎｇでセットされることを特徴とする請求項４、５、または６記載の情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は情報処理装置に関し、特に複数の演算処理装置からＰｉｐｅｌｉｎｅ方式を用いたシステムバスを介してメモリへのＷｒｉｔｅ動作時にデータ転送時の時間間隔を可変にしシステムバスの使用効率の向上を計る情報処理装置に関する。
【０００２】
【従来の技術】
従来の情報処理装置は、図１６に従来技術の情報処理装置の構成図を示す。従来技術の情報処理装置は、全て同型の処理装置（以下  ＰＵ）１１、１２および図示されていない複数のＰＵと、複数の記憶単位（以下  Ｂａｎｋ）で構成され該ＰＵに共有される主記憶部（以下  ＭＭ）１３と、これらを接続するシステムバス（以下  Ｂｕｓ）１４と、該ＰＵを相互に接続する制御線１５で構成する。
Ｂｕｓ１４は、１つのＰＵとＢｕｓ間インターフェースの転送性能と、ＢｕｓとＭＭ間インタフェースの転送性能が等しく、且つ、ＭＭ内のＢａｎｋインタフェースの転送性能がメモリ素子の動作時間に依存し、且つ、Ｂｕｓ上のリクエスト（以下  ＲＱ）の動作指示を意味するｆｉｅｌｄとメモリアクセス時に参照するアドレスを意味するｆｉｅｌｄを転送するＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａを転送するＤａｔａ  Ｃｙｃｌｅの２  ｓｔａｔｅで１  Ｂｕｓ  Ｃｙｃｌｅを構成している。該Ｂｕｓの動作はＰｉｐｅｌｉｎｅ方式である。Ｂｕｓにおいて、ＲＱから該ＲＱに対応するＤａｔａ（以下  Ｒｅｓｐｏｎｓｅ  Ｄａｔａ）は一定時間後に転送されてくる。以後、ＲＱを発行してからデータを転送するまでの時間間隔をＬａｔｅｎｃｙと呼ぶ。また、ＲＱの送出とＤａｔａの送出の間、Ｂｕｓは開放された状態となり、この間に別のＲＱを実行する事が可能である。
制御線１５は、各ＰＵがＢｕｓを使用する為の競合調停を行う際に、自ＰＵからのＲＱの種別を他の全てのＰＵに送る為、及びＳｙｓｔｅｍ内のＣａｃｈｅ  ｃｏｈｅｒｅｎｃｅを保つ目的で、Ｂｕｓに発行されたＲＱに対して自ＰＵ内の演算処理装置内にあるＣａｃｈｅのＳｔａｔｕｓに関する情報を他の全てのＰＵに送る為に用いられる。Ｃａｃｈｅ  Ｃｏｈｅｒｅｎｃｙ  ｐｒｏｔｏｃｏｌはｓｎｏｏｐ方式を用いる。
転送制御装置２３は、ＣＰＵとインタフェースを持ち該ＣＰＵと転送制御装置間のデータ転送を行うＣＰＵ接続手段３１と、ＭＭのＢａｎｋへのアクセス状況を管理し、ＢａｎｋへアクセスするＲＱ発行時にアクセスが可能か不可能かの判断を行う為に参照されるＢａｎｋ  Ｂｕｓｙ管理手段３２と、Ｂｕｓに接続される各ＰＵからの前記制御線１５を介してＢｕｓに対するＲＱ発行の要求の調停を行い、Ｂｕｓの使用権をいずれかのＰＵに与えるＢｕｓ競合調停手段３４と、Ｂｕｓとインタフェースを持ち該Ｂｕｓと前記転送制御装置２３間のデータ転送を行うＢｕｓ接続手段３５と、ＣＰＵ接続手段３１とＢａｎｋ  Ｂｕｓｙ管理手段３２とＢｕｓ競合調停手段３４とＢｕｓ接続手段３５を制御するＲＱ転送制御手段３６とで構成する。
図８は、メモリへのＲｅａｄ動作時のタイムチャートである。図８のＣｙｃｌｅのＡ、ＤはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａ  Ｃｙｃｌｅを、ＲＱはＲｅａｄ  ＲＱを、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａを、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙをそれぞれ示している。
時刻０においてＲｅａｄ  ＲＱがＰＵ内で処理され、時刻２において前記ＲＱはＢｕｓに発行され、時刻４において前記ＲＱはＭＭ内で処理をされ、時刻６から時刻１０間において前記ＲＱはＢａｎｋアクセスを行い、時刻１１においてＭＭは前記ＲＱのデータを読みだし、時刻１３において前記データはＭＭ内で転送され、時刻１５において前記データはＢｕｓに転送され、時刻１７において前記データはＰＵ内で転送される。ＲＱが発行されてからデータが転送されるまでのＢｕｓ上のＬａｔｅｎｃｙは、１２時刻である。図１７は、メモリへのＷｒｉｔｅ動作時のタイムチャートである。図のＣｙｃｌｅのＡ、ＤはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａ  Ｃｙｃｌｅを、ＲＱはＲｅａｄ  ＲＱを、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａを、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙをそれぞれ示している。
時刻０においてＷｒｉｔｅ  ＲＱがＰＵ内で処理され、時刻２において前記ＲＱはＢｕｓ発行され、時刻４から時刻１２において前記ＲＱはＭＭ内でデータの待ち合わせのために持ち回られ、時刻１４から時刻１８においてＭＭは前記ＲＱのＢａｎｋアクセスを行い、時刻１３においてライトデータはＰＵ内で転送され、時刻１５において前記データはＢｕｓに転送され、時刻１７において前記データはＭＭ内で転送され、時刻１９において前記データはＢａｎｋに書き込まれる。ＲＱが発行されてからデータが転送されるまでのＢｕｓ上のＬａｔｅｎｃｙは、Ｒｅａｄ動作時と同様に１２時刻である。
図１８は、あるＣＰＵのメモリへのＲｅａｄアドレスが他のＣＰＵのＣａｃｈｅにＤｉｒｔｙでＨｉｔした場合のＣａｃｈｅ間データ転送の動作（以下  Ｃ  Ｗｒｉｔｅ）時のタイムチャートを示す。図のＣｙｃｌｅのＡ、ＤはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａ  Ｃｙｃｌｅを、ＲＱはＲｅａｄ  ＲＱを、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａを、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙをそれぞれ示している。
時刻０から時刻１７は、図９の動作と同様である。ここで、前記Ｒｅａｄ  ＲＱで要求しているアドレスがＢｕｓのＳｎｏｏｐの結果、他のＰＵ内のＣＰＵのＣａｃｈｅにＤｉｒｔｙでＨｉｔしＤｉｒｔｙでＨｉｔしたＣＰＵからＲｅａｄ  ＲＱの発行元のＣＰＵへのＣａｃｈｅ間のデータ転送のＲＱ（Ｃ  Ｗｒｉｔｅ  ＲＱ）が生じる。時刻１８においてＣ  Ｗｒｉｔｅ  ＲＱがＤｉｒｔｙでＨｉｔしたＣＰＵを持つＰＵ内で処理され、時刻２０において前記ＲＱはＢｕｓ発行され、時刻２２においてＲｅａｄ  ＲＱ発行元のＰＵ内で処理され、時刻３１おいてＣａｃｈｅ間の転送データはＣ  Ｗｒｉｔｅ  ＲＱの発行ＰＵ内で転送され、時刻３３において前記データはＢｕｓに転送され、時刻３５において前記データはＲｅａｄ  ＲＱ発行元のＰＵ内で転送される。ＲＱが発行されてから対応するデータが転送されるまでのＢｕｓ上のＬａｔｅｎｃｙは、前記Ｒｅａｄ動作時及び前記Ｗｒｉｔｅ動作時と同様に１２時刻である。
従来の情報処理装置は、図９、１０、１２のタイムチャートによると、ＲＱの種類に共通して、ＲＱとＤａｔａ間に一定のＬａｔｅｎｃｙがあり、該Ｌａｔｅｎｃｙがシステム性能に影響を及ぼしていた。また、特開昭５７−５００４４５には、システムバスよりのシステムクロックにて特定のコードアドレス及びトランザクション型制御信号の発生及び確認を行うシステムバスの制御により、システムの能力増大と高速化を図る技術が記載されている。また、特開平０４−３７２０４３には、アドレス信号とデータ信号の出力タイミングをクロックに対して逆位相にすることで最大転送速度を最適化する技術が記載されている。
【０００３】
【発明が解決しようとする課題】
上述した従来の情報処理装置は、第一の問題点は、メモリへのライト動作時、ライト動作を要求するＣＰＵの発行するアドレス情報とライトデータ間はＬａｔｅｎｃｙの時間間隔があり、該Ｌａｔｅｎｃｙがメモリへのライト動作の性能に潜在的な性能悪化をもたらしている。
その理由は、システムバスが、ｐｉｐｅｌｉｎｅ方式である為である。
第二の問題点は、Ｃａｃｈｅ間のデータ転送時、データ転送元のＣＰＵからのアドレス情報と転送データ間はＬａｔｅｎｃｙの時間間隔があり、該ＬａｔｅｎｃｙがＣａｃｈｅ間のデータ転送の性能に潜在的な性能悪化をもたらしている。
その理由は、第一の問題点の理由と同様に、システムバスが、ｐｉｐｅｌｉｎｅ方式である為である。
第三の問題点は、Ｃａｃｈｅ間のデータ転送の遅れが、前記転送のＤａｔａを受ける側のＣＰＵの動作を一時的に止め複数のＣＰＵを持つシステムの性能低下を引き起こす原因になる。その理由は、第一の問題点の理由と同様に、システムバスが、ｐｉｐｅｌｉｎｅ方式である為である。
【０００４】
本発明の目的は、システムバスのＬａｔｅｎｃｙを可変にし前記システムバスの効率的な使用を可能にする情報処理装置を提供することにある。
【０００７】
【課題を解決するための手段】
本発明の情報処理装置は、１つ以上の演算処理装置と前記演算処理装置からデータを転送する時間間隔を可変に制御する転送制御装置とから構成される処理装置と、１つ以上の前記処理装置から共有して使用され記憶単位であるＢａｎｋで構成される主記憶部と、前記処理装置間と前記主記憶部とを接続するパイプライン方式のＢｕｓと、前記処理装置間を接続し前記処理装置が前記Ｂｕｓを使用する為の競合調停を行う際に自処理装置からの転送命令を他の全処理装置に送る制御線とを有する情報処理装置において、前記転送制御装置は、前記演算処理装置からデータの転送命令を受け付けデータ転送を行うＣＰＵ接続手段と、前記主記憶部のＢａｎｋアクセス状況を管理し前記Ｂａｎｋへアクセスするデータの転送命令の発行時にアクセスが可能か不可能かの判断を行うＢａｎｋ  Ｂｕｓｙ管理手段と、前記演算処理装置からデータの転送命令を受け付けたとき前記Ｂｕｓの使用状況から前記転送命令と転送するデータとの時間間隔であるＭｏｄｅを設定するＭｏｄｅ管理手段と、前記Ｂｕｓに接続される前記処理装置からの前記制御線を介してＢｕｓに対する前記転送命令の要求の調停を行い前記Ｂｕｓの使用権をいずれかの処理装置に与えるＢｕｓ競合調停手段と、前記Ｂｕｓとインタフェースを持ち前記演算処理装置からのデータの転送を行うＢｕｓ接続手段と、前記ＣＰＵ接続手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｍｏｄｅ管理手段と前記Ｂｕｓ競合調停手段と前記Ｂｕｓ接続手段とを制御するＲＱ転送制御手段とを備え、前記Ｍｏｄｅ管理手段は、前記ＢｕｓのＤａｔａ  Ｃｙｃｌｅの使用状況をＢｕｓ全体のＴｉｍｉｎｇレジスタにより管理するＢｕｓ  Ｂｕｓｙ管理手段と、前記演算処理装置からのデータの転送命令がＷｒｉｔｅ命令のとき前記Ｂｕｓ全体のＴｉｍｉｎｇレジスタの値に対応しデータを前記Ｂｕｓに転送するＴｉｍｉｎｇを規定するＭｏｄｅを設定するＭｏｄｅ設定手段と、前記Ｂｕｓ上に発行された転送命令の前記Ｍｏｄｅを識別し所属する前記処理装置に対しＣａｃｈｅ間またはＣａｃｈｅと主記憶部間のデータ転送を行うＴｉｍｉｎｇを判断するＭｏｄｅ識別手段と、前記Ｂｕｓ  Ｂｕｓｙ管理手段と前記Ｍｏｄｅ設定手段と前記Ｍｏｄｅ識別手段とをＭｏｄｅ管理制御手段と、
を備えることを特徴とする。
【０００９】
さらに、本発明の情報処理装置において、前記主記憶部は、Ｂａｎｋアクセス手段からの制御によりデータを記憶するＢａｎｋと、前記Ｂｕｓとインタフェースを持ちＢｕｓとのデータ転送を行うＭＭ接続手段と、前記Ｂｕｓからデータの転送命令に設定されている前記Ｍｏｄｅによりデータが送られてくるＴｉｍｉｎｇを識別するＭｏｄｅ制御手段と、前記処理装置内にある前記Ｂａｎｋ  Ｂｕｓｙ管理手段と同一の機能を持つＢａｎｋ  Ｂｕｓｙ管理手段と、前記Ｂａｎｋと対をなしデータの転送命令のアクセスを制御するＢａｎｋアクセス手段と、前記ＭＭ接続手段と前記Ｍｏｄｅ制御手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂａｎｋアクセス手段の制御とデータの転送命令を受け取ったときにこの転送命令のデータを受け取るまで待ち合わせるＭＭ制御手段とを備えることを特徴とする。
【００１０】
さらに、本発明の情報処理装置において、前記Ｍｏｄｅ制御手段は、前記Ｂｕｓからの転送命令に設定されているＭｏｄｅによりＤａｔａが送られてくるＴｉｍｉｎｇを識別するＭｏｄｅ識別手段と、前記Ｍｏｄｅ識別手段を制御する識別制御手段とを備えることを特徴とする。
【００１１】
さらに、本発明の情報処理装置において、前記転送制御装置は、前記演算処理装置からデータの転送命令を受け付けデータ転送を行うＣＰＵ接続手段と、前記主記憶部のＢａｎｋアクセス状況を管理し前記Ｂａｎｋへアクセスするデータの転送命令の発行時にアクセスが可能か不可能かの判断を行うＢａｎｋ  Ｂｕｓｙ管理手段と、前記Ｂｕｓの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段とこのＢｕｓ  Ｂｕｓｙ管理手段を制御するＢｕｓ管理制御手段とを含むＢｕｓ管理手段と、前記Ｂｕｓに接続される前記処理装置からの前記制御線を介してＢｕｓに対する前記転送命令の要求の調停を行い前記Ｂｕｓの使用権をいずれかの処理装置に与えるＢｕｓ競合調停手段と、前記Ｂｕｓとインタフェースを持ち前記演算処理装置からのデータの転送を行うＢｕｓ接続手段と、前記ＣＰＵ接続手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂｕｓ管理手段と前記Ｂｕｓ競合調停手段と前記Ｂｕｓ接続手段とを制御するＲＱ転送制御手段とを備えることを特徴とする。
【００１２】
さらに、本発明の情報処理装置において、前記主記憶部は、Ｂａｎｋアクセス手段からの制御によりデータを記憶するＢａｎｋと、前記Ｂｕｓとインタフェースを持ちＢｕｓとのデータ転送を行うＭＭ接続手段と、前記Ｂｕｓの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段とこのＢｕｓ  Ｂｕｓｙ管理手段を制御するＢｕｓ管理制御手段とを含むＢｕｓ管理手段と、前記処理装置内にある前記Ｂａｎｋ  Ｂｕｓｙ管理手段と同一の機能を持つＢａｎｋ  Ｂｕｓｙ管理手段と、前記Ｂａｎｋと対をなしデータの転送命令のアクセスを制御するＢａｎｋアクセス手段と、前記ＭＭ接続手段と前記Ｂｕｓ管理手段と前記Ｂａｎｋ  Ｂｕｓｙ管理手段と前記Ｂａｎｋアクセス手段の制御とデータの転送命令を受け取ったときにこの転送命令のデータを受け取るまで待ち合わせるＭＭ制御手段とを備えることを特徴とする。
【００１３】
さらに、本発明の情報処理装置において、前記Ｂｕｓ管理手段は、前記Ｂｕｓ  Ｂｕｓｙ管理手段内のＢｕｓ全体のＴｉｍｉｎｇレジスタに加えて有効Ｔｉｍｉｎｇレジスタを備えることを特徴とする。
【００１４】
さらに、本発明の情報処理装置において、前記有効Ｔｉｍｉｎｇレジスタは、Ｂｕｓ全体のＴｉｍｉｎｇレジスタに登録されたＴｉｍｉｎｇが所属する処理装置から前記Ｂｕｓに有効なデータの転送命令を出力したことを示し、前記Ｂｕｓ全体のＴｉｍｉｎｇレジスタにセットされたとき同じＴｉｍｉｎｇでセットされることを特徴とする。
【００１５】
【発明の実施の形態】
本発明の一つの実施の形態について図面を参照して説明する。
図１は本発明の第１の実施の形態の構成を示すブロック図である。
図３は、本発明の第一および第二の実施の形態のＲｅａｄ動作の流れ図である。
図４は、本発明の第一および第二の実施の形態のＷｒｉｔｅ動作の流れ図である。
図５は、本発明の第一および第二の実施の形態のＣａｃｈｅ間およびＣａｃｈｅとＭＭ間のＤａｔａ転送を行うＣ  Ｗｒｉｔｅ動作の流れ図である。
図６は、本発明の第一の実施の形態のＲＱ／Ｄａｔａのフォーマットである。
図８は、本発明の第一、第二の実施の形態および従来技術のＲｅａｄ動作のタイムチャートである。
図９は、本発明の第一および第二の実施の形態のＷｒｉｔｅ動作のタイムチャートである。
図１０は、本発明の第一および第二の実施の形態のＣ  Ｗｒｉｔｅ動作のタイムチャートである。
図１１は、本発明の第一の実施の形態のＲｅａｄ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
図１２は、本発明の第一の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
図１３は、本発明の第一の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値とＭｏｄｅの関係の一覧を示す図である。
【００１６】
本発明の第一の実施の形態は、図１を参照すると、全て同型の処理装置（以下  ＰＵ）１１、１２および図示されていない複数のＰＵと、複数の記憶単位（以下  Ｂａｎｋ）で構成されＰＵ１１、１２に共有される主記憶部（以下  ＭＭ）１３と、これらを接続するシステムバス（以下  Ｂｕｓ）１４と、ＰＵ１１、１２を相互に接続する制御線１５とから構成される。
Ｂｕｓ１４は、ＰＵ１１またはＰＵ１２とＢｕｓ１４間インターフェースの転送性能と、Ｂｕｓ１４とＭＭ１３間インタフェースの転送性能が等しく、且つ、ＭＭ１３内のＢａｎｋ４６、４７とのインタフェースの転送性能がメモリ素子の動作時間に依存し、且つ、Ｂｕｓ１４上のリクエスト（以下  ＲＱ）の動作指示を意味するｆｉｅｌｄとメモリアクセス時に参照するアドレスを意味するｆｉｅｌｄとを転送するＡｄｄｒｅｓｓ  Ｃｙｃｌｅと、Ｄａｔａを転送するＤａｔａ  Ｃｙｃｌｅの２  ｓｔａｔｅで１  Ｂｕｓ  Ｃｙｃｌｅを構成している。Ｂｕｓ１４の基本動作はＰｉｐｅｌｉｎｅ方式である。
ＭＭ１３に対するＲｅａｄ動作は、ＲＱから一定時間（以下  Ｌａｔｅｎｃｙ）後に必ずＭＭ１３からＲｅｓｐｏｎｓｅ  Ｄａｔａが転送されてくる。ＭＭ１３に対するＷｒｉｔｅ動作、またはＣａｃｈｅ間のＷｒｉｔｅ動作はＲＱからＬａｔｅｎｃｙ内に有効なＤａｔａが存在しない最速なＤａｔａ  Ｃｙｃｌｅ（Ｌａｔｅｎｃｙ後のＤａｔａ  Ｃｙｃｌｅが最も遅いＤａｔａ  Ｃｙｃｌｅ）でＷｒｉｔｅ  Ｄａｔａを転送する。いずれのケースでも、ＲＱの送出とＤａｔａの送出の間はＢｕｓ１４は開放された状態となり、この間に別のＲＱを実行することが可能である。
制御線１５は、ＰＵ１１、１２がＢｕｓ１４を使用する為の競合調停を行う際に、自ＰＵからのＲＱの種別を他の全てのＰＵに送る為、及びＳｙｓｔｅｍ内のＣａｃｈｅ  ｃｏｈｅｒｅｎｃｅを保つ目的で、Ｂｕｓ１４に発行されたＲＱに対して自ＰＵ内の演算処理装置内にあるＣａｃｈｅのＳｔａｔｕｓに関する情報を他の全てのＰＵに送る為に用いられる。Ｃａｃｈｅ  Ｃｏｈｅｒｅｎｃｙ  ｐｒｏｔｏｃｏｌは、ｓｎｏｏｐ方式を用いる。
各ＰＵ１１、１２（代表としてＰＵ  １１で説明）は、同型でＣａｃｈｅを備える演算処理装置（以下  ＣＰＵ）２１、２２および図示されていない複数のＣＰＵと、ＣＰＵ２１、２２とＢｕｓ１４とのデータ転送を制御する転送制御装置２３で構成される。
転送制御装置２３は、ＣＰＵ２１、２２とインタフェースを持ちＣＰＵ２１、２２と転送制御装置間のデータ転送を行うＣＰＵ接続手段３１と、ＭＭ１３のＢａｎｋ４６、４７へのアクセス状況を管理し、ＢａｎｋへアクセスするＲＱ発行時にアクセスが可能か不可能かの判断を行う為に参照されるＢａｎｋ  Ｂｕｓｙ管理手段３２と、ＲＱによるＢｕｓ１４のＤａｔａ  Ｃｙｃｌｅの使用状況を管理し、ＲＱとＤａｔａのＢｕｓ  Ｃｙｃｌｅの間隔に関する情報をＲＱに付加情報（以下  Ｍｏｄｅ）として設定するＭｏｄｅ管理手段３３と、Ｂｕｓ１４に接続される各ＰＵからの前記制御線１５を介してＢｕｓ１４に対するＲＱ発行の要求の調停を行い、Ｂｕｓ１４の使用権をいずれかのＰＵに与えるＢｕｓ競合調停手段３４と、Ｂｕｓ１４とインタフェースを持ち該Ｂｕｓと前記転送制御装置２３間のデータ転送を行うＢｕｓ接続手段３５と、ＣＰＵ接続手段３１とＢａｎｋ  Ｂｕｓｙ管理手段３２とＭｏｄｅ管理手段３３とＢｕｓ競合調停手段３４とＢｕｓ接続手段３５を制御するＲＱ転送制御手段３６とから構成されている。
【００１７】
次に転送制御装置２３の各手段を説明する。Ｂａｎｋ  Ｂｕｓｙ管理手段３２は、各ＰＵからのＲＱをＢｕｓ競合調停手段３４で調停した結果、Ｂｕｓを獲得したＰＵのＲＱにより使用されるＢａｎｋに対してＢａｎｋの使用状況の登録とアクセスの不可能である時間（以下  Ｂａｎｋ  Ｂｕｓｙ）の管理を行う。
【００１８】
Ｂａｎｋ  Ｂｕｓｙ管理手段３２は、メモリリードＲＱ（以下  Ｒｅａｄ  ＲＱ）時のＢａｎｋ  Ｂｕｓｙを管理するＲｅａｄ  Ｂｕｓｙ管理手段３２１と、メモリライトＲＱ（以下  Ｗｒｉｔｅ  ＲＱ）時のＢａｎｋ  Ｂｕｓｙを管理するＷｒｉｔｅ  Ｂｕｓｙ管理手段３２２と、Ｒｅａｄ  Ｂｕｓｙ管理手段３２１とＷｒｉｔｅ  Ｂｕｓｙ管理手段３２２を制御するＢａｎｋ  Ｂｕｓｙ制御手段３２３とから構成される。
【００１９】
Ｍｏｄｅ管理手段３３は、Ｒｅａｄ  ＲＱによりＲｅｓｐｏｎｓｅ  Ｄａｔａが使用するＤａｔａ  Ｃｙｃｌｅと、Ｗｒｉｔｅ  ＲＱおよびＣａｃｈｅ間およびＣａｃｈｅとＭＭ間のＤａｔａ転送を行うＲＱ（以下  Ｃ  Ｗｒｉｔｅ  ＲＱ）により使用されるＤａｔａ  Ｃｙｃｌｅとを各々登録するＢｕｓ全体のＴｉｍｉｎｇレジスタを備えてＢｕｓのＤａｔａ  ｃｙｃｌｅの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段３３１と、Ｗｒｉｔｅ  ＲＱおよびＣ  Ｗｒｉｔｅ  ＲＱを発行するときＢｕｓ  Ｂｕｓｙ管理手段３３１のＤａｔａ  ｃｙｃｌｅの使用状況を参照しＤａｔａをＢｕｓ１４上に発行するＴｉｍｉｎｇを規定するＭｏｄｅを設定するＭｏｄｅ設定手段３３２と、Ｂｕｓ１４上に発行されたＲＱのＭｏｄｅを識別し所属するＰＵに対するＣ  Ｗｒｉｔｅ  ＲＱのＤａｔａがＢｕｓ１４に発行されるＴｉｍｉｎｇを判断するＭｏｄｅ識別手段３３３と、Ｂｕｓ  Ｂｕｓｙ管理手段３３１とＭｏｄｅ設定手段３３２とＭｏｄｅ識別手段３３３とを制御するＭｏｄｅ管理制御手段３３４とから構成される。
【００２０】
Ｂｕｓ接続手段３５は、Ｂｕｓ競合調停手段３４による調停の結果、自ＰＵがＢｕｓ１４を獲得したＲＱに対応するＤａｔａを、Ｍｏｄｅ管理手段３３により設定されたＭｏｄｅの規定するＴｉｍｉｎｇでＢｕｓ１４に発行されるまで一時的に保持するＤＡＴＡ保持手段３５１と、
Ｂｕｓ１４とインタフェースを持ちＢｕｓ１４へのデータ転送を行う転送手段３５２と、
Ｂｕｓ１４からのＲＱを識別し所属するＰＵへのＲＱを検出するＲＱ識別手段３５３と、
ＤＡＴＡ保持手段３５１とＢｕｓ接続手段３５２とＲＱ識別手段３５３とを制御する接続制御手段３５４とから構成される。
【００２１】
転送制御手段３６は、ＣＰＵから発行されたＲＱおよびＢｕｓからのＲＱを解読するＲＱ解読手段３６１と、ＲＱのアクセスするＢａｎｋがＢｕｓｙ状態である場合、Ｂｕｓｙが解除されるまでの間、または、Ｂｕｓ競合調停手段３４による調停の結果によって所属するＰＵがＢｕｓを獲得できなかった場合にＲＱを一時的に保持し、さらに保持されているＲＱがある場合、後続のＲＱを一時的に保持するＲＱ保持手段３６２と、ＲＱ解読手段３６１とＲＱ保持手段３６２とを制御するＲＱ制御手段３６３とから構成される。
【００２２】
次にＭＭ１３の構成を図１を参照して説明する。ＭＭ１３は、Ｂｕｓ１４とインタフェースを持ちＢｕｓ１４とＭＭ１３間のデータ転送を行うＭＭ接続手段４１と、Ｂｕｓ１４からのＲＱに設定されているＭｏｄｅによりＤａｔａの送られて来るＴｉｍｉｎｇを識別するＭｏｄｅ制御手段４２と、各ＰＵ内にある前記のＢａｎｋ  Ｂｕｓｙ管理手段３２と同一の機能を持つＢａｎｋ  Ｂｕｓｙ管理手段４３と、複数のＢａｎｋ４６、４７と対をなしＲｅａｄ／Ｗｒｉｔｅのアクセスを制御するＢａｎｋアクセス手段４４、４５および図示されていない複数のＢａｎｋアクセス手段と、同型で前記Ｂａｎｋアクセス手段４４、４５からの制御によりＤａｔａを記憶するＢａｎｋ  ４６、４７および図示されていない複数のＢａｎｋと、ＭＭ接続手段４１とＭｏｄｅ制御手段４２とＢａｎｋ  Ｂｕｓｙ管理手段４３とＢａｎｋアクセス手段４４、４５を制御し、メモリへのＷｒｉｔｅ動作のＲＱを受け取った場合に該ＲＱに対応するＤａｔａを受け取るまでＲＱを待ち合わせるＭＭ制御手段４８とから構成される。
【００２３】
次にＭＭ１３を構成する各手段を説明する。ＭＭ接続手段４１は、Ｂｕｓ１４からのＲＱを識別しＭＭ１３へのＲＱを検出するＲＱ識別手段４１２と、Ｂｕｓ１４とインタフェースを持ちＢｕｓ１４へのデータ転送を行う転送手段４１１と、ＲＱ識別手段４１２と転送手段４１１を制御する接続制御手段４１３とから構成される。
Ｍｏｄｅ制御手段４２は、Ｂｕｓ１４からのＲＱに設定されているＭｏｄｅによりＤａｔａの送られて来るＴｉｍｉｎｇを識別するＭｏｄｅ識別手段４２１と、Ｍｏｄｅ識別手段４２１を制御する識別制御手段４２２とから構成される。
Ｂａｎｋ  Ｂｕｓｙ管理手段４３は、各ＰＵ内にある前記のＢａｎｋ  Ｂｕｓｙ管理手段３２と同一の機能を持つＲｅａｄ  Ｂｕｓｙ管理手段４３１とＷｒｉｔｅ  Ｂｕｓｙ管理手段４３２とＢａｎｋ  Ｂｕｓｙ制御手段４３３とから構成される。
各Ｂａｎｋアクセス手段４４、４５（代表としてＢａｎｋアクセス手段４４で説明）は、Ｂａｎｋ４６からのＤａｔａの読みだし動作のアクセスを制御するＲｅａｄアクセス手段４４１と、Ｂａｎｋ４６へのＤａｔａの書き込み動作のアクセスを制御するＷｒｉｔｅアクセス手段４４２と、Ｒｅａｄアクセス手段４４１とＷｒｉｔｅアクセス手段４４２を制御するアクセス制御手段４４３とから構成される。
ＭＭ制御手段４８は、Ｂｕｓ１４からのＲＱの動作指示を示すＴｙｐｅからＭＭ１３への動作を解読するＲＱ解読手段４８１と、メモリへのＷｒｉｔｅ動作のＲＱを受け取った場合に該ＲＱに対応するＤａｔａを受け取るまでＲＱを待ち合わせるＲＱ待機手段４８２と、ＲＱ解読手段４８１とＲＱ待機手段４８２とを制御するＲＱ制御手段４８３とから構成される。
また、システム内のメモリは一つの論理アドレスに定義され、ＣＰＵからは、物理アドレスに変換されたアドレスがＲＱのアドレスとして用いられる。
【００２４】
次に、第一の実施の形態のＲｅａｄ動作とＷｒｉｔｅ動作とＣ  Ｗｒｉｔｅ動作を図１、図３、図４、図５、図６、図８、図９、図１０、図１１、図１２、図１３を用いて説明する。ＣＰＵ２１がＢａｎｋ４６に対しＲｅａｄ  ＲＱを発行した場合のＲｅａｄ動作について説明する。図６に示すフォーマットは、ＢｕｓへのＲＱを示す有効ビット（Ｖ）、ＲＱの動作指示（Ｔｙｐｅ）、Ｗｒｉｔｅ動作時に有効な付加情報（Ｍｏｄｅ）、アクセスするＢａｎｋ内アドレスとＢａｎｋ番号（Ａｄｄｒｅｓｓ）の４つのｆｉｅｌｄで構成される。Ｒｅａｄ  ＲＱは、Ｒｅａｄ動作指示（命令フォーマットは図示せず）がＴｙｐｅ  ｆｉｅｌｄに含まれる。Ｄａｔａは、転送データで構成される。各ステップを以下  Ｓと記す。
【００２５】
図３を参照すると、Ｓ１でＣＰＵ２１がＲｅａｄ  ＲＱを転送制御装置２３に発行する。ＲＱ転送制御装置３６では、ＲＱをＣＰＵ接続手段３１を介しＲＱ解読手段３６１で受け取る。
【００２６】
Ｓ２でＲＱ解読手段３６１は、ＲＱのＴｙｐｅからＲｅａｄ  ＲＱであることを解読するとＲＱ制御手段３６３にＲｅａｄ  ＲＱに関する制御情報を渡す。
【００２７】
Ｓ３でＲＱ制御手段３６３は、所属するＰＵ内のＣＰＵが以前に発行されたＲＱがＲＱ保持手段３６２内に保持されているか確認する。保持されているＲＱがあれば、Ｓ４としてＳ２で解読されたＲＱをＲＱ保持手段３６２の保持されているＲＱの列の最後尾に保持し、Ｓ５としてＲＱ保持手段３６２にある最も古いＲＱをＳ６以降の動作対象として選択する。ＲＱ保持手段３６２で保持されているＲＱが無ければ、Ｓ２で解読されたＲＱをＳ６以降の動作対象として選択する。
【００２８】
Ｓ６でＢａｎｋ  Ｂｕｓｙ管理手段３２は、選択されたＲＱがＲｅａｄ  ＲＱであることを示す情報とアクセスするＢａｎｋ番号を受け取り、Ｒｅａｄ  Ｂｕｓｙ管理手段３２１を参照し該当するＢａｎｋ（ここではＢａｎｋ４６）に対してアクセスが可能かを確認する。アクセス可能であればＳ７以降の処理を行い、アクセス不可能であればＲｅａｄ  ＲＱをＲＱ保持手段３６２にて一時的に保持する（Ｓ４に戻る）。
【００２９】
Ｓ７でＢｕｓ競合調停手段３４は、各ＰＵがＢｕｓへのＲＱ発行する際に生じるＰＵ間での競合の調停を行う。この際、Ｂｕｓ競合調停手段３４は、所属するＰＵ１１を除いた他の全てのＰＵから調停に必要な情報を制御線１５を介して受け取り、同時に他の全てのＰＵが調停に必要な情報を他の全てのＰＵに送る。システム内の全てのＰＵにおいて、この調停に関する処理は同期している。Ｂｕｓ競合調停手段３４による調停の結果、所属するＰＵのＲｅａｄ  ＲＱがＢｕｓに対して発行可能な状態になると、Ｂａｎｋ  Ｂｕｓｙ管理手段３２のＢａｎｋ  Ｂｕｓｙの状態を更新し、Ｓ８以降の処理を行い、発行不可能な状態のときは該ＲＱをＲＱ保持手段３６２にて一時的に保持する（Ｓ４に戻る）。
【００３０】
Ｓ８でＢｕｓ接続手段３５は、ＲＱ転送制御手段３６からＲｅａｄ  ＲＱを受け取り転送手段３５２を用いてＢｕｓに対してＲｅａｄ  ＲＱを発行する。
【００３１】
Ｓ９でＭｏｄｅ管理手段３３は、Ｂｕｓに対してＲｅａｄ  ＲＱを発行してからＬａｔｅｎｃｙ後に該ＲＱのＲｅｓｐｏｎｓｅ  ＤａｔａがＢｕｓ上に存在する、すなわちＢｕｓのＤａｔａ  Ｃｙｃｌｅを使用することを意味する情報をＢｕｓ管理手段３３１に登録する。
Ｂｕｓ  Ｂｕｓｙ管理手段３３１内のレジスタ値の変化を図１１に示す。Ｂｕｓ全体のＴｉｍｉｎｇレジスタとは、Ｂｕｓ上に有効なＤａｔａが存在するＴｉｍｉｎｇの情報を持つ。ここでは、Ｌａｔｅｎｃｙが７Ｂｕｓ  Ｃｙｃｌｅである場合について説明する。ＢｕｓにＲＱが発行される１Ｂｕｓ  Ｃｙｃｌｅ前を時刻Ｔとし、ＲＱが発行された時を時刻Ｔ＋１とする。時刻Ｔ＋１では、発行されたＲｅａｄ  ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａのタイミング（Ｌａｔｅｎｃｙ後）に、Ｂｕｓ上に有効なＤａｔａが存在することを示すため、レジスタの最上位に１をセットする。このレジスタを毎Ｂｕｓ  Ｃｙｃｌｅごとに右シフトし、最下位に１が来たタイミングでＢｕｓに上記Ｒｅａｄ  ＲＱのＲｅｓｐｏｎｓｅ  ＤａｔａがＢｕｓに存在することを意味する。
【００３２】
Ｓ１０でＭＭ接続手段４１は、Ｂｕｓ上のＲＱを取り込みＲＱ識別手段４１１でＲＱのＴｙｐｅからＲＱの識別を行い、ＭＭへのＲＱである場合はＳ１１以降の処理を行い、ＭＭへのＲＱでなければ動作しない。
【００３３】
Ｓ１１でＭＭ制御手段４８は、ＲＱ解読手段４８１にてＲＱ識別手段４１１からＲＱを受け取りさらにＲＱのＴｙｐｅを解読し、Ｒｅａｄ  ＲＱである場合はＳ１２以降の処理を行い、Ｒｅａｄ  ＲＱでなければその他の動作を行う。
【００３４】
Ｓ１２でＲＱ解読手段４８１は、ＲＱのＡｄｄｒｅｓｓ  ｆｉｅｌｄに含まれるＢａｎｋ番号からアクセスするＢａｎｋを解読する（ここでは、Ｂａｎｋ４６へのアクセスと解読される）。
【００３５】
Ｓ１３でＢａｎｋ  Ｂｕｓｙ管理手段４３は、ＲＱ解読手段４８１からＲＱがＲｅａｄ  ＲＱであることを示す情報をアクセスするＢａｎｋ番号を受け取りＲｅａｄ  Ｂｕｓｙ管理手段４３１を参照し、該当するＢａｎｋ（ここではＢａｎｋ４６）に対してアクセスが可能かを確認する。アクセス可能であればＳ１３以降の処理を行い、アクセス不可能であれば障害と識別し障害を処理する動作を行う（ここでは障害を処理する動作に関しては言及しない）。また、アクセス可能であるＢａｎｋに関する情報を受け取ると、Ｂａｎｋ  Ｂｕｓｙの状態を更新する。
【００３６】
Ｓ１４でＢａｎｋアクセス手段４４は、ＲＱ解読手段４８１からのＲｅａｄ指示をＲｅａｄアクセス手段４４１で受け取り、ＲＱのＡｄｄｒｅｓｓ  ｆｉｅｌｄに含まれるＢａｎｋ内アドレスで指定されたアドレスからＤａｔａを読みだす。
【００３７】
Ｓ１５でＢａｎｋから読み出されたＤａｔａは、Ｂａｎｋアクセス手段４４、ＭＭ制御手段４８を介してＭＭ接続手段４１内の転送手段４１２からＢｕｓへ転送される。このＤａｔａは、Ｒｅａｄ  ＲＱがＢｕｓに発行されてからＬａｔｅｎｃｙ後にＢｕｓへ転送される。
【００３８】
Ｓ１６でＲｅａｄ  ＲＱ発行元ＰＵ１１は、ＲＱ識別手段３５３でＲＱをＢｕｓ上に発行してからＬａｔｅｎｃｙ後にＢｕｓ上にあるＤａｔａを該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａをして受け取る。
【００３９】
Ｓ１７でＲＱ転送制御手段３６は、前記Ｒｅｓｐｏｎｓｅ  Ｄａｔａを受け取りＣＰＵ接続手段３１を介してＲｅａｄ  ＲＱを発行したＣＰＵ２１にＤａｔａを返し、一連のＲｅａｄ動作を終了する。
【００４０】
図８は、第一の実施の形態におけるＲｅａｄ  ＲＱの動作のタイムチャートである。図８において、ＣｙｃｌｅのＡはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅを示し、ＣｙｃｌｅのＤはＢｕｓのＡｄｄｒｅｓｓ  ＣｙｃｌｅのＤａｔａ  Ｃｙｃｌｅを示し、ＲＱはＲｅａｄ  ＲＱを示し、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａを示し、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙを示している。Ｒｅａｄ  ＲＱの動作のタイムチャートにおいて、第一の実施の形態は従来の技術と同じである（従来技術のＲｅａｄ動作時の説明を参照のこと）。
【００４１】
次に、第一の実施の形態のＷｒｉｔｅの動作を図１、図４、図６を用いて説明する。ＣＰＵ２１がＢａｎｋ４６に対しＷｒｉｔｅ  ＲＱを発行した場合の動作について説明する。
【００４２】
図４を参照すると、Ｓ１でＣＰＵ２１がＷｒｉｔｅ  ＲＱ、および該ＲＱに対応するＷｒｉｔｅ  Ｄａｔａを転送制御装置２３に発行する。ＲＱ転送制御装置３６では、ＲＱとＤａｔａをＣＰＵ接続手段３１を介しＲＱ解読手段３６１で受け取る。
【００４３】
Ｓ２でＲＱ解読手段３６１は、ＲＱのＴｙｐｅからＷｒｉｔｅ  ＲＱである事を解読するとＲＱ制御手段３６３にＷｒｉｔｅ  ＲＱに関する制御情報を渡す。
Ｓ３でＲＱ制御手段３６３は、所属するＰＵ内のＣＰＵが以前に発行されたＲＱがＲＱ保持手段３６２内に保持されているか確認する。保持されているＲＱがあれば、Ｓ４としてＳ２で解読されたＲＱをＲＱ保持手段３６２の保持されているＲＱの列の最後尾に保持し、Ｓ５としてＲＱ保持手段３６２にある最も古いＲＱをＳ６以降の動作対象として選択する。ＲＱ保持手段３６２で保持されているＲＱが無ければ、Ｓ２で解読されたＲＱをＳ６以降の動作対象として選択する。
【００４４】
Ｓ６でＢａｎｋ  Ｂｕｓｙ管理手段３２は、選択されたＲＱがＷｒｉｔｅ  ＲＱである事を示す情報とアクセスするＢａｎｋ番号を受け取り、Ｗｒｉｔｅ  Ｂｕｓｙ管理手段３２１を参照し該当するＢａｎｋ（ここではＢａｎｋ４６）に対してアクセスが可能かを確認する。アクセス可能であればＳ７以降の処理を行い、アクセス不可能であればＷｒｉｔｅ  ＲＱを一時的に保持する（Ｓ４に戻る）。
【００４５】
Ｓ７でＢｕｓ競合調停手段３４は、各ＰＵがＢｕｓへのＲＱ発行する際に生じるＰＵ間での競合の調停を行う。この際、Ｂｕｓ競合調停手段３４は、所属するＰＵ１１を除いた他の全てのＰＵから調停に必要な情報を制御線１５を介して受け取り、同時に、他の全てのＰＵが調停に必要な情報を他の全てのＰＵに送る。システム内の全てのＰＵにおいて、この調停に関する処理は同期している。Ｂｕｓ競合調停手段３４による調停の結果、所属するＰＵのＷｒｉｔｅ  ＲＱがＢｕｓに対して発行可能な状態になると、Ｂａｎｋ  Ｂｕｓｙ管理手段３２のＢａｎｋ  Ｂｕｓｙの状態を更新し、Ｓ８以降の処理を行い、発行不可能な状態であると該ＲＱをＲＱ保持手段３６２にて一時的に保持する（Ｓ４に戻る）。
【００４６】
Ｓ８でＢｕｓ競合調停手段３４による調停の結果、所属するＰＵのＷｒｉｔｅ  ＲＱがＢｕｓに対して発行可能な状態になると、Ｍｏｄｅ管理手段３３は、該ＲＱがＷｒｉｔｅ  ＲＱである情報を受け取り、Ｂｕｓ管理手段３３１でＢｕｓのＤａｔａ  Ｃｙｃｌｅの使用状況を確認する。ＢｕｓはＰｉｐｅｌｉｎｅ方式により動作する為、Ｗｒｉｔｅ  ＲＱに対応するＷｒｉｔｅ  ＤａｔａはＷｒｉｔｅ  ＲＱがＢｕｓ上に発行されてからＬａｔｅｎｃｙ後にＢｕｓ上に転送できるが、Ｌａｔｅｎｃｙ以前に使用されていないＤａｔａ  Ｃｙｃｙｌｅがある場合、Ｗｒｉｔｅ  ＲＱがＢｕｓに発行されてから最早の使用されていないＤａｔａ  ＣｙｃｌｅでＤａｔａをＢｕｓに転送することが可能である。この場合、Ｗｒｉｔｅ  Ｄａｔａを転送するタイミングすなわち、Ｄａｔａ  Ｃｙｃｌｅを使用するタイミングを意味する情報をＢｕｓ  Ｂｕｓｙ管理手段３３１に登録し、Ｍｏｄｅ設定手段３３２にてＷｒｉｔｅ  ＲＱにＤａｔａ  Ｃｙｃｌｅを使用するタイミングの情報をＭｏｄｅとして設定する。
Ｂｕｓ  Ｂｕｓｙ管理手段３３１内のレジスタ値の変化を図１２に示す（第一の実施の形態におけるＲｅａｄ  ＲＱ動作のＳ９参照）。図１２を参照すると、レジスタ値（Ｔ）の状態が現在のＢａｓの使用状態を示している。Ｄａｔａ  Ｃｙｃｌｅを使用するタイミングであるＤａｔａ  Ｃｙｃｌｅはレジスタ値の０の位置が該当する。例えば、レジスタ値「ｘｘｘｘｘ０」であれば０の位置が最右端であるから１番目のＢｕｓ  Ｃｙｃｌｅを使用しＢｕｓ上にＷｒｉｔｅ  ＲＱが発行されるＢａｓのタイミングであることを示している。同様にレジスタ値「ｘｘｘｘ０１」であれば０の位置が２番目であるから２番目のＢｕｓ  Ｃｙｃｌｅを使用しＢｕｓ上にＷｒｉｔｅ  ＲＱが発行されるＢａｓのタイミングであることを示している。このＢａｓのタイミングが図１３に示すＭｏｄｅと対応している。すなわち、Ｗｒｉｔｅ  ＲＱが発行されるとき図１２で示すレジスタ値（Ｔ）の参照したときレジスタ値に対応したＭｏｄｅが決定する。
また、Ｗｒｉｔｅ  ＲＱが発行されるときレジスタ値の０の位置に１がセットされる。前記レジスタ値（Ｔ）「ｘｘｘｘｘ０」であれば「ｘｘｘｘｘ１」となり、前記「ｘｘｘｘ０１」であれば「ｘｘｘｘ１１」となる。１Ｂｕｓ  Ｃｙｃｌｅが経過するとレジスタ値は右シフトされた状態がレジスタ値（Ｔ＋１）である。すなわち前記「ｘｘｘｘｘ１」は「０ｘｘｘｘｘ」となり、前記「ｘｘｘｘ１１」は「０ｘｘｘｘ１」となる。最も左のＢｉｔにはＬａｔｅｎｃｙではＤａｔａが存在しないことを意味する０がセットされる。
【００４７】
Ｓ９でＢｕｓ接続手段３５は、ＲＱ転送制御手段３６からＷｒｉｔｅ  ＲＱとＷｒｉｔｅ  Ｄａｔａを、Ｍｏｄｅ管理手段３３からＭｏｄｅを受け取り、Ｍｏｄｅによって指定されたＤａｔａ  Ｃｙｃｌｅまでの間、Ｗｒｉｔｅ  ＤａｔａをＤａｔａ保持手段３５１で一時的に保持する。
【００４８】
Ｓ１０でＢｕｓ接続手段３５は、転送手段３５２を用いてＢｕｓに対してＷｒｉｔｅ  ＲＱを発行する。
【００４９】
Ｓ１１でＭＭ接続手段４１は、Ｂｕｓ上のＲＱを取り込みＲＱ識別手段４１１でＲＱのＴｙｐｅからＲＱの識別を行い、ＭＭへのＲＱである場合はＳ１２以降の処理を行い、ＭＭへのＲＱでない場合は動作しない。
【００５０】
Ｓ１２でＭＭ制御手段４８は、ＲＱ解読手段４８１にてＲＱ識別手段４１１からＲＱを受け取りさらにＲＱのＴｙｐｅを解読し、Ｗｒｉｔｅ  ＲＱである場合は、前記Ｗｒｉｔｅ  ＲＱに対応するＷｒｉｔｅ  Ｄａｔａを受け取るまでＲＱの有効ビット、Ｂａｎｋ内アドレス、Ｂａｎｋ番号をＲＱ待機手段４８２において一時的に待機させ、Ｓ１３以降の処理を行う。Ｗｒｉｔｅ  ＲＱでない場合はその他の動作を行う。
【００５１】
Ｓ１３でＲＱ解読手段４８１は、ＲＱのＡｄｄｒｅｓｓに含まれるＢａｎｋ番号からアクセスするＢａｎｋを解読する（ここでは、Ｂａｎｋ４６へのアクセスと解読される）。
【００５２】
Ｓ１４でＭｏｄｅ制御手段４２では、ＲＱのＭｏｄｅをＭｏｄｅ識別手段４２１で受け取る。Ｍｏｄｅ識別手段４２１では、Ｍｏｄｅの内容から受け取ったＷｒｉｔｅ  ＲＱに対応するＷｒｉｔｅ  Ｄａｔａが何Ｂｕｓ  ｃｙｃｌｅ後のＤａｔａ  ＣｙｃｌｅにＢｕｓ上に存在するかを識別する。
【００５３】
Ｓ１５でＷｒｉｔｅ  ＲＱ発行元ＰＵ１１のＢｕｓ接続手段３５では、Ｄａｔａ保持手段３５１に保持しているＤａｔａを、該ＲＱのＭｏｄｅが指定するＤａｔａ  ｃｙｃｌｅにＢｕｓへ転送する。
【００５４】
Ｓ１６でＭＭ接続手段４１は、Ｍｏｄｅ制御手段４２からの指示によりＲＱ識別手段４１２にてＭｏｄｅの指示するＤａｔａ  ＣｙｃｌｅにあるＤａｔａをＢｕｓより受け取る。
【００５５】
Ｓ１７でＢａｎｋ  Ｂｕｓｙ管理手段４３は、ＲＱ解読手段４８１からＲＱがＷｒｉｔｅ  ＲＱであることを示す情報と、ＲＱ待機手段４８２からアクセスするＢａｎｋ番号を受け取りＷｒｉｔｅ  Ｂｕｓｙ管理手段４３１を参照し、該当するＢａｎｋ（ここではＢａｎｋ４６）に対してアクセスが可能かを確認する。アクセス可能であればＳ１３以降の処理を行い、アクセス不可能であれば障害と識別し障害を処理する動作を行う（ここでは障害を処理する動作に関しては言及しない）。また、アクセス可能であるＢａｎｋに関する情報を受け取ると、Ｂａｎｋ  Ｂｕｓｙの状態を更新する。
【００５６】
Ｓ１８でＢａｎｋアクセス手段４４は、ＲＱ解読手段４８１からのＷｒｉｔｅ指示をＷｒｉｔｅアクセス手段４４１で受け取り、ＲＱ待機手段４８２からＲＱのＢａｎｋ内アドレスを受け取り、指定されたアドレスにＤａｔａを書き込み、一連のＷｒｉｔｅ動作を終了する。
【００５７】
図１１は、第一の実施の形態におけるＷｒｉｔｅ  ＲＱの動作のタイムチャートを説明する。図のＣｙｃｌｅのＡ、ＤはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａ  Ｃｙｃｌｅを、ＲＱはＷｒｉｔｅ  ＲＱを、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  Ｄａｔａを、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙをそれぞれ示している。
図１１では、Ｗｒｉｔｅ  ＲＱがＢｕｓに発行されてからＷｒｉｔｅ  ＤａｔａがＢｕｓ上に存在するまでの最速のタイミングを実線で表し、ＭｏｄｅによりＷｒｉｔｅ  Ｄａｔａの存在するＤａｔａ  Ｃｙｃｌｅのタイミングの変化を点線で表す。時刻０においてＷｒｉｔｅ  ＲＱがＰＵ内で処理され、時刻１においてライトデータはＰＵ内で転送され、時刻２において前記ＲＱはＢｕｓ発行され、時刻３において前記データはＢｕｓに転送され、時刻４において前記ＲＱはＭＭ内で処理され、時刻５において前記データはＭＭ内で転送され、時刻６から時刻１０においてＭＭは前記ＲＱのＢａｎｋアクセスを行い、時刻１１において前記データはＢａｎｋに書き込まれる。ＲＱが発行されてからデータが転送されるまでのＢｕｓ上のＬａｔｅｎｃｙは０時刻、すなわちＬａｔｅｎｃｙがないことを意味する。
図中で点線は、Ｌａｔｅｎｃｙが１Ｂｕｓ  Ｃｙｃｌｅ毎遅れた場合を表している。最も遅く前記データがＢｕｓに発行されるのは、時刻１５であり、このときのＬａｔｅｎｃｙは、Ｒｅａｄ動作時のＬａｔｅｎｃｙと等しく１２時刻となる。
【００５８】
次に第一の実施の形態で、ＣＰＵ２１がＢａｎｋ４６に対しＲｅａｄ  ＲＱを発行し、該ＲＱが、ＰＵ１２内に存在するＣａｃｈｅ  ＬｉｎｅにＤｉｒｔｙでＨｉｔし、ＰＵ１２がＰＵ１１に対しＣ  Ｗｒｉｔｅ  ＲＱを発行した場合のＣ  Ｗｒｉｔｅ動作について図４、図５、図６、図９、を用いて説明する。図５は第一の実施の形態のＣ  Ｗｒｉｔｅ  ＲＱの動作の流れ図であり、図３のＲｅａｄ  ＲＱの動作の流れ図と説明および図４のＷｒｉｔｅ  ＲＱの動作の流れ図と説明とを引用する。説明には図１の名称と符合を使用する。ただし、図４のＷｒｉｔｅ  ＲＱの動作の説明を引用する場合、Ｗｒｉｔｅ  ＲＱをＣ  Ｗｒｉｔｅ  ＲＱに差し替える。
【００５９】
Ｓ１でＣＰＵ２１がＲｅａｄ  ＲＱを転送制御装置２３に発行する。以降の処理は、Ｒｅａｄ  ＲＱの動作の説明Ｓ１と同様であるので省略する。
Ｓ２では、Ｒｅａｄ  ＲＱの動作の説明Ｓ２からＳ７と同様であるので省略する。
Ｓ３では、Ｒｅａｄ  ＲＱの動作の説明Ｓ８と同様であるので省略する。
Ｓ４では、Ｒｅａｄ  ＲＱの動作の説明Ｓ９と同様であるので省略する。
Ｓ５でＲｅａｄ  ＲＱを発行したＰＵ以外の全てのＰＵ（ここでは、ＰＵ１２）では、システム内のＣａｃｈｅ  Ｃｏｈｅｒｅｎｃｙを保つ為、毎Ａｄｄｒｅｓｓ  ＣｙｃｌｅにＢｕｓをＳｎｏｏｐする。
Ｓ６でＰＵ１２では、ＳｎｏｏｐしたＲＱのＡｄｄｒｅｓｓ  ｆｉｅｌｄと自ＰＵ内に存在するＣａｃｈｅ  Ｌｉｎｅを比較し、前記Ｒｅａｄ  ＲＱの要求するＤａｔａが前記Ｃａｃｈｅ  ＬｉｎｅにＤｉｒｔｙでＨｉｔした場合、Ｓ７以降の処理を行い、ＤｉｒｔｙでＨｉｔしない場合、Ｓ８の処理を行う。
Ｓ７でＰＵ１２は、前記Ｒｅａｄ  ＲＱが自ＰＵ内にＤｉｒｔｙでＨｉｔし、Ｃ  Ｗｒｉｔｅ  ＲＱを発行することを他の全てのＰＵ（ここでは、ＰＵ１１）に対して制御線１５を使って通知する。よって前記Ｒｅａｄ  ＲＱを発行したＣＰＵ２１は、前記Ｒｅａｄ  ＲＱによってＣ  Ｗｒｉｔｅ  ＲＱが発行されることを識別する。
Ｓ８でＰＵ１２は、前記Ｒｅａｄ  ＲＱが自ＰＵ内にＤｉｒｔｙでＨｉｔしなかったことを他の全てのＰＵ（ここでは、ＰＵ１１）に対して制御線１５を使って通知する。この場合、ＰＵ１１は制御線１５の情報による動作はしない。
Ｓ９では、Ｒｅａｄ  ＲＱの動作の説明Ｓ１０からＳ１４と同様であるので省略する。
Ｓ１０では、Ｒｅａｄ  ＲＱの動作の説明Ｓ１５からＳ１６と同様であるので省略する。
Ｓ１１でＲｅａｄ  ＲＱ発行元のＣＰＵ２１では、自身の発行したＲｅａｄ  ＲＱに対してＳ７でＰＵ１２からＣ  Ｗｒｉｔｅ  ＲＱによりＤａｔａが供給されることが通知されているので、ＭＭ１３からのＲｅｓｐｏｎｓｅ  Ｄａｔａを無効にする。
Ｓ１２でＤｉｒｔｙでＨｉｔしたＣａｃｈｅ  Ｌｉｎｅを持つＣＰＵ（この場合ＰＵ１２に所属している）は、Ｒｅａｄ  ＲＱの発行元のＰＵ１１に対して該ＲＱのＲｅｓｐｏｎｓｅとしてＣ  Ｗｒｉｔｅ  ＲＱを発行する。
Ｓ１３は、Ｗｒｉｔｅ  ＲＱの動作の説明Ｓ２からＳ９と同様であるので省略する。ただし、ＰＵ１２に動作である為に符合は参照しない。
Ｓ１４は、Ｗｒｉｔｅ  ＲＱの動作の説明Ｓ１０、Ｓ１１、Ｓ１４、Ｓ１５と同様であるので省略する。ただし、ＰＵ１２に動作である為に符合は参照しない。
Ｓ１５でＰＵ１１は、Ｃ  Ｗｒｉｔｅ  ＲＱに対してＲｅａｄ  ＲＱの動作の説明Ｓ１６と同様に動作する。この時、Ｍｏｄｅ識別手段３３３により、Ｃ  Ｗｒｉｔｅ  ＲＱのＭｏｄｅにより指定されたＴｉｍｉｎｇでＢｕｓからＤａｔａを受け取る。
Ｓ１６は、Ｒｅａｄ  ＲＱの動作の説明Ｓ１７と同様であり、一連のＣ  Ｗｒｉｔｅ  ＲＱ動作を終了する。
図１０を参照し、第一の実施の形態におけるＣ  Ｗｒｉｔｅ  ＲＱの動作をタイムチャートで説明する。図１０において、ＣｙｃｌｅのＡ、ＤはＢｕｓのＡｄｄｒｅｓｓ  Ｃｙｃｌｅ、Ｄａｔａ  Ｃｙｃｌｅを、ＲＱはＲｅａｄ  ＲＱとＣ  Ｗｒｉｔｅ  ＲＱを、Ｄａｔａは該ＲＱのＲｅｓｐｏｎｓｅ  ＤａｔａとＣ  Ｗｒｉｔｅ  ＲＱのＤａｔａを、ＬａｔｅｎｃｙはＢｕｓのＬａｔｅｎｃｙをそれぞれ示している。図１０では、Ｒｅａｄ  ＲＱがＢｕｓに発行されたことによりＣ  Ｗｒｉｔｅ  ＤａｔａがＢｕｓ上に発行され、該Ｃ  Ｗｒｉｔｅ  ＲＱによるＤａｔａがＢｕｓ上に最速のタイミングで存在する場合を表す。
【００６０】
時刻０から時刻１８までは、従来技術のＲｅａｄ動作と同様である（従来技術のＣ  Ｗｒｉｔｅ  ＲＱの動作説明参照のこと）。時刻１９においてライトデータはＰＵ内で転送され、時刻２０において前記ＲＱはＢｕｓ発行され、時刻２１において前記データはＢｕｓに転送され、時刻２２において前記ＲＱはＲｅａｄ  ＲＱ発行元のＰＵ内で処理され、時刻２３において前記データはＲｅａｄ  ＲＱ発行元のＰＵ内で転送される。Ｃ  Ｗｒｉｔｅ  ＲＱが発行されてから対応するデータが転送されるまでのＢｕｓ上のＬａｔｅｎｃｙは０時刻、すなわちＬａｔｅｎｃｙがないことを意味する。
図中で点線は、Ｌａｔｅｎｃｙが最も遅れた場合を表している。最も遅く前記データがＢｕｓに発行されるのは、時刻３３であり、このときのＬａｔｅｎｃｙは、Ｒｅａｄ動作時のＬａｔｅｎｃｙと等しく１２時刻となる。
【００６１】
次に、本発明の第二の実施の形態について図面を参照して説明する。図２は、本発明の第二の実施の形態を示すブロック図である。図７は、本発明の第二の実施の形態のＲＱ／Ｄａｔａのフォーマットである。図１４は、本発明の第二の実施の形態のＲｅａｄ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。図１５は、本発明の第二の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
【００６２】
本発明の第二の実施の形態では、第一の実施の形態における各ＰＵ内に含まれるＭｏｄｅ管理手段３３をＢｕｓ管理手段４９に置き換え、ＭＭ１３に含まれるＭｏｄｅ管理手段４２を各ＰＵ内に含まれる前記Ｂｕｓ管理手段４９に置き換えた構成である。
各ＰＵ１１、１２内のＢｕｓ管理手段４９と、ＭＭ１３内のＢｕｓ管理手段４９は同一の手段である。
【００６３】
第二の実施の形態でＢｕｓ管理手段４９は、Ｒｅａｄ  ＲＱによりＲｅｓｐｏｎｓｅ  Ｄａｔａが使用するＤａｔａ  Ｃｙｃｌｅと、Ｃａｃｈｅ間およびＣａｃｈｅとＭＭ間のＤａｔａ転送を行うＷｒｉｔｅ  ＲＱ（以下  Ｃ  Ｗｒｉｔｅ  ＲＱ）により使用されるＤａｔａ  Ｃｙｃｌｅとを各々登録する２種のレジスタと、ＲＱによるＢｕｓのＤａｔａ  ｃｙｃｌｅの使用状況を管理するＢｕｓ  Ｂｕｓｙ管理手段４９１と、Ｂｕｓ  Ｂｕｓｙ管理手段４９１を制御するＢｕｓ管理制御手段４９２とから構成される。
【００６４】
次に第二の実施の形態のＲｅａｄ動作とＷｒｉｔｅ動作とＣ  Ｗｒｉｔｅ動作を図２、図３、図４、図５、図７、図８、図９、図１０、図１４、図１５を用いて説明する。
ただし図３において、第二の実施の形態のＲｅａｄ  ＲＱの動作の説明ではＳ１２’が含まれる。図７は、Ａｄｄｒｅｓｓ／Ｄａｔａ  Ｃｙｃｌｅのフォーマットを示し、有効ビット（Ｖ）、ＲＱの動作指示（Ｔｙｐｅ）、アクセスするＢａｎｋ内アドレスとＢａｎｋ番号（Ａｄｄｒｅｓｓ）の３つのｆｉｅｌｄで構成される。Ｒｅａｄ  ＲＱは、Ｒｅａｄ動作指示（命令フォーマットは図示せず）がＴｙｐｅ  ｆｉｅｌｄに含まれる。Ｄａｔａは、転送データで構成される。
【００６５】
ＣＰＵ２１がＢａｎｋ４６に対しＲｅａｄ  ＲＱを発行した場合のＲｅａｄ動作について図３を用いて説明する。
【００６６】
Ｓ１でＣＰＵ２１がＲｅａｄ  ＲＱを転送制御装置２３に発行する。以下第一の実施の形態におけるＳ１からＳ１２と同様である。
【００６７】
ただし、Ｓ９の動作が異なる。Ｓ９ではＢｕｓ管理手段４９１内のレジスタ値の変化を図１４に示す。図１４に示すように、Ｂｕｓ管理手段４９１内に第一の実施の形態のＢｕｓ  Ｂｕｓｙ管理手段３３１内のＢｕｓ全体のＴｉｍｉｎｇレジスタに加えて有効Ｔｉｍｉｎｇレジスタを備えている。この有効Ｔｉｍｉｎｇレジスタは、Ｂｕｓ全体のＴｉｍｉｎｇレジスタに登録されたＴｉｍｉｎｇが所属するＰＵからＢｕｓに有効なＲＱを出力したことを示し毎Ｂｕｓ  Ｃｙｃｌｅに右シフトする。この有効Ｔｉｍｉｎｇレジスタは、時刻Ｔ＋１において、Ｂｕｓ全体のＴｉｍｉｎｇレジスタにセットされた１が所属するＰＵに有効であれば同じＴｉｍｉｎｇで１がセットされ、有効でなければ０がセットされる。
【００６８】
Ｓ１２’でＢｕｓ管理手段４９は、ＭＭ制御手段４８からＭＭ１３が受け取ったＲＱがＲｅａｄ  ＲＱである情報を受け取り、Ｂｕｓ  Ｂｕｓｙ管理手段４９１に該ＲＱのＲｅｓｐｏｎｓｅ  ＤａｔａがＢｕｓを使用するＤａｔａ  Ｃｙｃｌｅのタイミングを登録する。Ｂｕｓ  Ｂｕｓｙ管理手段４９１のレジスタの動作は、Ｓ９のＢｕｓ  Ｂｕｓｙ管理手段４９１と同様である（ただし、「所属するＰＵ」を「所属するＭＭ」に読み替える）。
【００６９】
Ｓ１３からＳ１７では、第一の実施の形態におけるＲｅａｄ動作の説明と同様である。以上により、一連のＲｅａｄ動作を終了する。
【００７０】
図８は、第二の実施の形態におけるＲｅａｄ  ＲＱの動作のタイムチャートである。Ｒｅａｄ  ＲＱの動作のタイムチャートにおいて、第二の実施の形態は第一の実施の形態および従来の技術と同じである（第一の実施の形態のＲｅａｄ  ＲＱのタイムチャートの説明参照のこと）。
【００７１】
次に第二の実施の形態で、ＣＰＵ２１がＢａｎｋ４６に対しＷｒｉｔｅ  ＲＱを発行した場合のＷｒｉｔｅ動作について図４を用いて説明する。ただし図４において、第二の実施の形態のＷｒｉｔｅ  ＲＱの動作説明ではＳ８の代わりにＳ８’とし、Ｓ１４の代わりにＳ１４’とし、Ｓ１５の代わりにＳ１５’とし、Ｓ１６の代わりにＳ１６’とする。
【００７２】
Ｓ１でＣＰＵ２１がＷｒｉｔｅ  ＲＱを転送制御装置２３に発行する。以下第一の実施の形態におけるＷｒｉｔｅ  ＲＱの動作の説明のＳ１からＳ７と同様である。
第二の実施の形態におけるＷｒｉｔｅ動作では、第一の実施の形態におけるＳ８の処理は行わずＳ８’の処理をする。
【００７３】
Ｓ８’でＢｕｓ競合調停手段３４による調停の結果、所属するＰＵのＷｒｉｔｅ  ＲＱがＢｕｓに対して発行可能な状態になると、Ｂｕｓ管理手段３３は、該ＲＱがＷｒｉｔｅ  ＲＱである情報を受け取り、Ｂｕｓ  Ｂｕｓｙ管理手段４９１でＢｕｓのＤａｔａ  Ｃｙｃｌｅの使用状況を確認する。ＢｕｓはＰｉｐｅｌｉｎｅ方式により動作する為、Ｗｒｉｔｅ  ＲＱに対応するＷｒｉｔｅ  ＤａｔａはＷｒｉｔｅ  ＲＱがＢｕｓ上に発行されてからＬａｔｅｎｃｙ後にＢｕｓ上に転送できるが、Ｌａｔｅｎｃｙ以前に使用されていないＤａｔａ  Ｃｙｃｙｌｅがある場合、Ｗｒｉｔｅ  ＲＱがＢｕｓに発行されてから最早の使用されていないＤａｔａ  ＣｙｃｌｅでＤａｔａをＢｕｓに転送することが可能である。
この場合、Ｗｒｉｔｅ  Ｄａｔａを転送するタイミング、すなわち、Ｄａｔａ  Ｃｙｃｌｅを使用するタイミングを意味する情報をＢｕｓ  Ｂｕｓｙ管理手段４９１に登録する。
Ｂｕｓ  Ｂｕｓｙ管理手段４９１内のレジスタ値の変化を図１５に示す（第一の実施の形態におけるＷｒｉｔｅ  ＲＱ動作のＳ８、第二の実施の形態におけるＲｅａｄ  ＲＱ動作のＳ９参照）。
Ｂｕｓ全体のＴｉｍｉｎｇレジスタの動作は、第一の実施の形態のＷｒｉｔｅ  ＲＱ動作を同様である。また、有効Ｔｉｍｉｎｇレジスタの動作は、第一の実施の形態と同様に時刻Ｔ＋１において、Ｂｕｓ全体のＴｉｍｉｎｇレジスタにセットされた１が所属するＰＵに有効であれば同じＴｉｍｉｎｇで１がセットされ、有効でなければ０がセットされる。
【００７４】
Ｓ９からＳ１３では、第一の実施の形態におけるＷｒｉｔｅ動作の説明Ｓ９からＳ１３と同様である。
第二の実施の形態におけるＷｒｉｔｅ動作では、第一の実施の形態におけるＳ１４の処理は行わずＳ１４’の処理をする。
【００７５】
Ｓ１４’でＢｕｓ管理手段４９は、ＭＭ制御手段４８からＭＭが受け取ったＲＱがＷｒｉｔｅ  ＲＱである情報を受け取り、Ｂｕｓ  Ｂｕｓｙ管理手段４９１に該ＲＱのＷｒｉｔｅ  ＤａｔａがＢｕｓを使用するＤａｔａ  ＣｙｃｌｅのタイミングをＳ８’と同様に登録する。
第二の実施の形態におけるＷｒｉｔｅ動作では、第一の実施の形態におけるＳ１５の処理は行わずＳ１５’の処理をする。
【００７６】
Ｓ１５’でＷｒｉｔｅ  ＲＱ発行元ＰＵ１１のＢｕｓ接続手段３５は、Ｄａｔａ保持手段３５１に保持しているＤａｔａを、Ｓ３でＢｕｓ  Ｂｕｓｙ管理手段４９１に登録してあるＢｕｓのＤａｔａ  ＣｙｃｌｅにＷｒｉｔｅ  ＲＱのＷｒｉｔｅ  ＤａｔａをＢｕｓ上に転送する。
第二の実施の形態におけるＷｒｉｔｅ動作では、第一の実施の形態におけるＳ１６の処理は行わずＳ１６’の処理をする。
【００７７】
Ｓ１６’でＭＭ接続手段４１は、Ｂｕｓ管理手段４９からＢｕｓ  Ｂｕｓｙ管理手段４９１の登録してあるＢｕｓのＤａｔａ  ＣｙｃｌｅにＷｒｉｔｅ  ＲＱのＷｒｉｔｅ  Ｄａｔａが転送される指示を受け、ＲＱ識別手段４１１にて前記の指示でＤａｔａ  ＣｙｃｌｅにあるＤａｔａをＢｕｓより受け取る。
【００７８】
Ｓ１７からＳ１８では、第一の実施の形態におけるＷｒｉｔｅ動作の説明と同様である。
以上により、一連のＷｒｉｔｅ  ＲＱの動作を終了する。
【００７９】
図９は、第二の実施の形態におけるＷｒｉｔｅ  ＲＱの動作のタイムチャートである。Ｗｒｉｔｅ  ＲＱの動作のタイムチャートにおいて、第二の実施の形態は第一の実施の形態および従来の技術と同じである（第一の実施の形態のＷｒｉｔｅ  ＲＱのタイムチャートの説明参照のこと）。
【００８０】
次に第二の実施の形態のＣ  Ｗｒｉｔｅ動作を説明する。ＣＰＵ２１がＢａｎｋ４６に対しＲｅａｄ  ＲＱを発行し、該ＲＱがＰＵ１２内に存在するＣａｃｈｅ  ＬｉｎｅにＤｉｒｔｙでＨｉｔし、ＰＵ１２がＰＵ１１に対しＣ  Ｗｒｉｔｅ  ＲＱを発行する動作について図５を用いて説明する。第二の実施の形態におけるＣ  Ｗｒｉｔｅ  動作は、第一の実施の形態のＣ  Ｗｒｉｔｅ動作の説明におけるＲｅａｄ  動作の説明とＷｒｉｔｅ動作の説明をそれぞれ第二の実施の形態のＲｅａｄ動作の説明とＷｒｉｔｅ  動作の説明に置き換える。
図５はＣ  Ｗｒｉｔｅ  ＲＱの動作の流れ図であり、図４のＲｅａｄ  ＲＱの動作の流れ図と説明、および図５のＷｒｉｔｅ  ＲＱの動作の流れ図と説明を引用する。説明には図２の名称と符合を使用する。ただし、Ｗｒｉｔｅ  ＲＱの動作の説明を引用する場合、Ｗｒｉｔｅ  ＲＱをＣ  Ｗｒｉｔｅ  ＲＱに差し替える。
【００８１】
すなわち、Ｗｒｉｔｅ  ＲＱの動作時にＭｏｄｅによる制御と有効Ｔｉｍｉｎｇレジスタによる制御の違いで動作結果は図１０のタイムチャートとなり第一の実施形態と同様となる。
【００８２】
【発明の効果】
以上説明したように、本発明の第一の効果は、第一の実施の形態において、メモリに対するＷｒｉｔｅ動作が行われるＲＱ発行時にＭｏｄｅによるＲＱとＤａｔａ間の時間を可変にするのでＢｕｓ上でＲＱとＤａｔａ間をＬａｔｅｎｃｙ以下にすることが可能となる。これにより、Ｗｒｉｔｅ  ＲＱ発行時またはＣ  Ｗｒｉｔｅ  ＲＱ発行時において、Ｄａｔａを供給されるＣＰＵがＲＱを受けてからＤａｔａを受けるまでの待ち時間をＢｕｓ上でＬａｔｅｎｃｙ以下にすることが可能となり、前記待ち時間による性能低下を押さえることが可能となる。
【００８３】
第二の効果は、第二の実施の形態において、メモリに対するＷｒｉｔｅ動作が行われるＲＱ発行時に各ＰＵ、ＭＭで同期を取るレジスタを設けたため、Ｂｕｓ上でＲＱとＤａｔａ間をＬａｔｅｎｃｙ以下にすることが可能となる。これにより、Ｗｒｉｔｅ  ＲＱ発行時またはＣ  Ｗｒｉｔｅ  ＲＱ発行時において、該ＲＱによりＤａｔａを供給されるＣＰＵがＲＱを受けてからＤａｔａを受けるまでの待ち時間をＢｕｓ上でＬａｔｅｎｃｙ以下にすることが可能となり、前記待ち時間による性能低下を押さえることが可能となる。
【図面の簡単な説明】
【図１】本発明の第一の実施の形態の構成を示すブロック図である。
【図２】本発明の第二の実施の形態の構成を示すブロック図である。
【図３】本発明の第一および第二の実施の形態のＲｅａｄ動作の流れ図である。
【図４】本発明の第一および第二の実施の形態のＷｒｉｔｅ動作の流れ図である。
【図５】本発明の第一および第二の実施の形態のＣ  Ｗｒｉｔｅ動作の流れ図である。
【図６】本発明の第一の実施の形態のＲＱ／Ｄａｔａのフォーマットである。
【図７】本発明の第二の実施の形態のＲＱ／Ｄａｔａのフォーマットである。
【図８】本発明の第一、第二の実施の形態及び従来技術のＲｅａｄ動作のタイムチャートである。
【図９】本発明の第一および第二の実施の形態のＷｒｉｔｅ動作のタイムチャートである。
【図１０】本発明の第一および第二の実施の形態のＣａｃｈｅ間およびＣａｃｈｅとＭＭ間のＤａｔａ転送を行うＣ  Ｗｒｉｔｅ動作のタイムチャートである。
【図１１】本発明の第一の実施の形態のＲｅａｄ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
【図１２】本発明の第一の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
【図１３】本発明の第一の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値とＭｏｄｅの関係の一覧を示す図である。
【図１４】本発明の第二の実施の形態のＲｅａｄ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
【図１５】本発明の第二の実施の形態のＷｒｉｔｅ動作時のＢｕｓ  Ｂｕｓｙ管理手段におけるレジスタ値の変化の一覧を示す図である。
【図１６】従来技術の構成図である。
【図１７】従来技術のＷｒｉｔｅ動作のタイムチャートである。
【図１８】従来技術のＣ  Ｗｒｉｔｅ動作のタイムチャートである。
【符号の説明】
１１、１２    ＰＵ
１３    ＭＭ
１４    Ｂｕｓ
１５    制御線
２１、２２    ＣＰＵ
２３    転送制御装置
３１    ＣＰＵ接続手段
３２    Ｂａｎｋ  Ｂｕｓｙ管理手段
３２１    Ｒｅａｄ  Ｂｕｓｙ管理手段
３２２    Ｗｒｉｔｅ  Ｂｕｓｙ管理手段
３２３    Ｂａｎｋ  Ｂｕｓｙ制御手段
３３    Ｍｏｄｅ管理手段
３３１    Ｂｕｓ  Ｂｕｓｙ管理手段
３３２    Ｍｏｄｅ設定手段
３３３    Ｍｏｄｅ識別手段
３３４    Ｍｏｄｅ管理制御手段
３４    Ｂｕｓ競合調停手段
３５    Ｂｕｓ接続手段
３５１    Ｄａｔａ保持手段
３５２    転送手段
３５３    ＲＱ識別手段
３５４    接続制御手段
３６    ＲＱ転送制御手段
３６１    ＲＱ解読手段
３６２    ＲＱ保持手段
３６３    ＲＱ制御手段
４１    ＭＭ接続手段
４１１    転送手段
４１２    ＲＱ識別手段
４１３    接続制御手段
４２    Ｍｏｄｅ制御手段
４２１    Ｍｏｄｅ識別手段
４２２    識別制御手段
４３    Ｂａｎｋ  Ｂｕｓｙ管理手段
４３１    Ｒｅａｄ  Ｂｕｓｙ管理手段
４３２    Ｗｒｉｔｅ  Ｂｕｓｙ管理手段
４３３    Ｂａｎｋ  Ｂｕｓｙ制御手段
４４、４５    Ｂａｎｋアクセス手段
４４１    Ｒｅａｄアクセス手段
４４２    Ｗｒｉｔｅアクセス手段
４４３    アクセス制御手段
４６、４７    Ｂａｎｋ
４８    ＭＭ制御手段
４８１    ＲＱ解読手段
４８２    ＲＱ待機手段
４８３    ＲＱ制御手段
４９    Ｂｕｓ管理手段
４９１    Ｂｕｓ  Ｂｕｓｙ管理手段
４９２    Ｂｕｓ管理制御手段
【図１】
0003570877.tif 000002
【図２】
0003570877.tif 000003
【図３】
0003570877.tif 000004
【図４】
0003570877.tif 000005
【図５】
0003570877.tif 000006
【図６】
0003570877.tif 000007
【図７】
0003570877.tif 000008
【図８】
0003570877.tif 000009
【図９】
0003570877.tif 000010
【図１０】
0003570877.tif 000011
【図１１】
0003570877.tif 000012
【図１２】
0003570877.tif 000013
【図１３】
0003570877.tif 000014
【図１４】
0003570877.tif 000015
【図１５】
0003570877.tif 000016
【図１６】
0003570877.tif 000017
【図１７】
0003570877.tif 000018
【図１８】
0003570877.tif 000019