(57)【要約】【課題】  共有メモリ型マルチプロセッサシステムにおいて、ＭＭＵ内に各ＣＰＵとＭＵとの対応関係とメモリ構成を指示する構成情報を保持して、この構成情報に基づいてＭＭＵ内でＭＵ単位にＣＰＵを割り付け可能にすることにより、性能の低下を回避しながらＣＰＵ間の影響を排除したシステムを構築可能とすること。【解決手段】  主記憶装置（ＭＭＵ）２０は、情報を記憶するメモリ装置（ＭＵ）２３と、ＣＰＵ１０と接続しＣＰＵ１０のアクセス要求を処理するアクセス制御部３０と、アクセス制御部３０とＭＵ２３との接続を切り換えるクロスバスイッチ２２とを有し、アクセス制御部３０はそれぞれの構成情報保持部３１に設定された構成情報（Ｓ０〜Ｓ３）に従ってクロスバスイッチ２２を制御してＣＰＵ１０から受け取ったアクセス要求を構成情報で決められたＭＵ２３に対して実行する。【選択図】      図１
2005258874.tif 000002
【特許請求の範囲】
【請求項１】
複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、前記アクセス制御部はそれぞれに設定されＣＰＵとメモリ装置との対応関係を指示する構成情報に従ってクロスバスイッチを制御して前記ＣＰＵから受け取ったアクセス要求を構成情報で決められたメモリ装置に対して実行することを特徴とする主記憶システム。
【請求項２】
複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、
前記アクセス制御部は、ＣＰＵとメモリ装置との対応関係を指示する構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有し、前記クロスバスイッチを制御して生成されたルーティングアドレスで指定されたメモリ装置と接続して前記アクセス要求を実行することを特徴とする主記憶システム。
【請求項３】
複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチと、前記各アクセス制御部から前記メモリ装置の１つに対する使用要求を受けて前記メモリ装置毎に調停を行い前記クロスバスイッチを制御して前記アクセス制御部と前記メモリ装置との接続を切り換える調停部とを有し、
前記アクセス制御部は、ＣＰＵとメモリ装置との対応関係を指示する構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有することを特徴とする主記憶システム。
【請求項４】
前記構成情報は、前記主記憶装置内のメモリ装置をどのように分割するかを指定する分割情報と、分割した際の前記ＣＰＵと前記メモリ装置との対応を指定する対応情報とを含むことを特徴とする請求項１、２、又は３の主記憶システム。
【請求項５】
それぞれの前記主記憶装置において、同じＣＰＵと接続する前記アクセス制御部に設定される前記構成情報を同一とすることにより、前記全ての主記憶装置をインタリーブ可能としたことを特徴とする請求項４の主記憶システム。
【請求項６】
前記主記憶装置に実装する前記アクセス制御装置を前記ＣＰＵと同数としそれぞれが互いに異なる１つの前記ＣＰＵと接続し、前記１つのＣＰＵが複数のメモリ装置を使用し前記複数のＣＰＵが前記１つのメモリ装置を共有するように前記構成情報を設定したことを特徴とする請求項１乃至５のいずれかの主記憶システム。
【請求項７】
複数のＣＰＵからアクセスされる主記憶装置において、
情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、前記アクセス制御部はそれぞれに設定されＣＰＵとメモリ装置との対応関係を指示する構成情報に従ってクロスバスイッチを制御して前記ＣＰＵから受け取ったアクセス要求を構成情報で決められたメモリ装置に対して実行することを特徴とする主記憶装置。
【請求項８】
複数のＣＰＵからアクセスされる主記憶装置において、
情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、
前記アクセス制御部は、ＣＰＵとメモリ装置との対応関係を指示する構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有し、前記クロスバスイッチを制御して生成されたルーティングアドレスで指定されたメモリ装置と接続して前記アクセス要求を実行することを特徴とする主記憶装置。
【請求項９】
複数のＣＰＵからアクセスされる主記憶装置において、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチと、前記各アクセス制御部から前記メモリ装置の１つに対する使用要求を受けて前記メモリ装置毎に調停を行い前記クロスバスイッチを制御して前記アクセス制御部と前記メモリ装置との接続を切り換える調停部とを有し、
前記アクセス制御部は、ＣＰＵとメモリ装置との対応関係を指示する構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有することを特徴とする主記憶装置。
【請求項１０】
前記構成情報は、前記複数のメモリ装置をどのように分割するかを指定する分割情報と、分割した際の前記ＣＰＵと前記メモリ装置との対応を指定する対応情報とを含むことを特徴とする請求項７、８、又は９の主記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＣＰＵとの対応を制御する主記憶システム及び主記憶装置に関し、特に、主記憶装置の構成単位のメモリ装置とＣＰＵとの対応を主記憶装置内で制御する技術に関する。
【背景技術】
【０００２】
従来のマルチＣＰＵ(central processing unit）の共有メモリ方式の主記憶システムの構成とその変更方法について図面を参照して説明する。図６は変更前の構成を示し、図７は変更後の構成を示している。図６、図７はＭＭＵ４０−１、ＭＭＵ４０−２、ＭＭＵ４０−３、ＭＭＵ４０−４の４つの主記憶装置（ＭＭＵと略す：main memory unit)からなる主記憶システムとＣＰＵ１０−１、ＣＰＵ１０−２、ＣＰＵ１０−３、ＣＰＵ１０−４０の４つのＣＰＵ１０とが接続されるシステム構成を例示している。図６ではＣＰＵ１０−ＭＭＵ４０間接続の一部を省略しているが、ＣＰＵ１０−ＭＭＵ４０間の接続関係は図２のＣＰＵ１０−ＭＭＵ２０間の接続関係と同じである。
【０００３】
ＣＰＵ１０−ＭＭＵ４０間の接続はバスで接続する方法がよく知られているが、高速なデータ転送を実現する場合はバスではなく、図６、図７に示すようにそれぞれ専用の転送パスで接続することが知られている。例えば、特開２００１−１４７９１１号公報の図１には４つの演算処理装置（ＣＰＵ）と４つのＭＭＵ間を接続してインタリーブする構成が示されている。
【０００４】
また、主記憶へのアクセスを高速化するために主記憶装置を構成するメモリ装置（ＭＵと略す：memory unit）をインタリーブすることが知られている。図６は各ＭＭＵ４０がそれぞれ４つのＭＵを含む構成を例示しており、ＣＰＵ１０からは４つのＭＭＵ４０全て合わせた１６個のＭＵをインタリーブする構成としている。
【０００５】
図６ではＣＰＵ１０−１とＣＰＵ１０−２とのグループとＣＰＵ１０−３とＣＰＵ１０−４とのグループに分けてそれぞれが記憶領域を分けて使用する構成を示している。この構成ではＣＰＵ１０のグループ毎に記憶領域を分け合っているが、ＭＵを分け合っているわけではないので、主記憶へのアクセスにおいてＣＰＵグループ間で競合が発生する。このため、各ＣＰＵ１０は他のＣＰＵ１０から影響を受けてしまい、影響によって主記憶アクセスが大幅に遅れたりする。
【０００６】
このＣＰＵ１０間の影響を抑えるためにはＣＰＵ１０毎或いはＣＰＵ１０のグループ毎に使用するＭＵを分け合うような構成にする必要がある。このための方法として従来は図７のように割り当てる方法が知られていた。例えば、特開昭５６−２２１５６号公報ではアクセス要求元に応じてアクセスアドレスの上位ビットを変更することにより実現している。
【０００７】
図７では、ＭＭＵ４０−１とＭＭＵ４０−２をＣＰＵ１０−１とＣＰＵ１０−２に割り当て、図示しないがＭＭＵ４０−３とＭＭＵ４０−４をＣＰＵ１０−３とＣＰＵ１０−４に割り当てた構成を例示している。割り当て方はこれ以外でもよいがＭＭＵ４０単位に割り当てをしていた。
【０００８】
図７の割り当て構成ではＣＰＵ１０−１とＣＰＵ１０−２はＭＭＵ４０−１又はＭＭＵ４０−２にしかアクセスしないため、ＣＰＵ１０−ＭＭＵ４０間のデータ転送は図８に示した転送パスしか有効に使用されない。従って図２のような接続構成を組み込んでも半数の転送パスが有効に使用されないため、ＣＰＵ１０−ＭＭＵ４０間の転送能力が低下しメモリアクセス性能の低下が避けられない。
【０００９】
この性能低下を避けようとすれば図９に示すＣＰＵ１０−ＭＭＵ４０間の接続構成が考えられるが、このためにはＣＰＵ１０−ＭＭＵ４０間の接続構成を変更する必要があり、例えばＣＰＵ１０−ＭＭＵ４０間がケーブルで接続されている場合はケーブルの接続を人手で変更しなければならない。或いは、はじめから冗長に転送パスを組み込んでおかなければならない。
【００１０】
或いは人手による物理構成の変更作業を不要とするためにはＣＰＵ１０−ＭＭＵ４０間の接続を自由に変更可能なクロスバスイッチのような手段をＣＰＵ１０−ＭＭＵ４０間に設けなければならないならないが、大幅なＨＷ量の増加を伴うことになる。
【００１１】
【特許文献１】特開２００１−１４７９１１号公報、図１
【特許文献２】特開昭５６−２２１５６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
従来の共有メモリ方式の主記憶構成において、図６のようにインタリーブされた主記憶についてＣＰＵ毎に使用可能な主記憶領域を全ＭＵに対して割り当てる方法では、全てのＣＰＵが全てのメモリをアクセスするため、ＣＰＵグループ毎に他ＣＰＵグループのメモリアクセスの影響を受けてしまうという問題がある。
【００１３】
これを回避するために図７のようにＭＭＵ単位で再構築する場合には図８のように使用しない転送パスが生じるため、ＣＰＵあたりのＣＰＵ−ＭＭＵ間最大転送性能が低下するという問題がある。
【００１４】
この性能低下を回避するためには、図９のようにＣＰＵ−ＭＭＵ間接続を変更するか、転送に使用しない転送パスがあっても最大性能が出せるように予め転送パスを冗長に設けておく必要があるが、現実にはコスト対性能比が著しく悪化することになるという問題がある。
【００１５】
例えば、接続の変更は目的の接続を有する装置への交換や、ケーブル接続の場合はケーブル交換をするなどの人手作業が必要となり容易には出来なくコストに大きな負担がかかる。また、予め冗長の転送パスを設けることはコスト／性能比の大幅な悪化を招くことは明らかである。
【００１６】
本発明の目的は、共有メモリ型マルチプロセッサシステムにおいて、ＭＭＵ内に各ＣＰＵとＭＵとの対応関係とメモリ構成を指示する構成情報を保持して、この構成情報に基づいてＭＭＵ内でＭＵ単位にＣＰＵを割り付け可能にすることにより、性能の低下を回避しながらＣＰＵ間の影響を排除できるように主記憶システム及び情報処理装置を提供することにある。
【課題を解決するための手段】
【００１７】
本発明の第１の主記憶システムは、複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、前記アクセス制御部はそれぞれに設定された構成情報に従ってクロスバスイッチを制御して前記ＣＰＵから受け取ったアクセス要求を構成情報で決められたメモリ装置に対して実行することを特徴とする。
【００１８】
本発明の第２の主記憶システムは、複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、
前記アクセス制御部は、構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有し、前記クロスバスイッチを制御して生成されたルーティングアドレスで指定されたメモリ装置と接続して前記アクセス要求を実行することを特徴とする。
【００１９】
本発明の第３の主記憶システムは、複数の主記憶装置から構成され複数のＣＰＵからアクセスされる主記憶システムにおいて、
前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチと、前記各アクセス制御部から前記メモリ装置の１つに対する使用要求を受けて前記メモリ装置毎に調停を行い前記クロスバスイッチを制御して前記アクセス制御部と前記メモリ装置との接続を切り換える調停部とを有し、
前記アクセス制御部は、構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有することを特徴とする。
【００２０】
本発明の第４の主記憶システムは、本発明の第１、第２、又は第３の主記憶システムにおいて、前記構成情報が、前記主記憶装置内のメモリ装置をどのように分割するかを指定する分割情報と、分割した際の前記ＣＰＵと前記メモリ装置との対応を指定する対応情報とを含むことを特徴とする。
【００２１】
本発明の第５の主記憶システムは、本発明の第１、第２、又は第３の主記憶システムにおいて、それぞれの前記主記憶装置において、同じＣＰＵと接続する前記アクセス制御部に設定される前記構成情報を同一とすることにより、前記全ての主記憶装置をインタリーブ可能としたことを特徴とする。
【００２２】
本発明の第６の主記憶システムは、本発明の第１乃至第５のいずれかの主記憶システムにおいて、前記主記憶装置に実装する前記アクセス制御装置を前記ＣＰＵと同数としそれぞれが互いに異なる１つの前記ＣＰＵと接続し、前記１つのＣＰＵが複数のメモリ装置を使用し前記複数のＣＰＵが前記１つのメモリ装置を共有するように前記構成情報を設定したことを特徴とする。
【００２３】
本発明の第１の主記憶装置は、複数のＣＰＵからアクセスされ、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、前記アクセス制御部はそれぞれに設定された構成情報に従ってクロスバスイッチを制御して前記ＣＰＵから受け取ったアクセス要求を構成情報で決められたメモリ装置に対して実行することを特徴とする。
【００２４】
本発明の第２の主記憶装置は、複数のＣＰＵからアクセスされ、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチとを有し、
前記アクセス制御部は、構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有し、前記クロスバスイッチを制御して生成されたルーティングアドレスで指定されたメモリ装置と接続して前記アクセス要求を実行することを特徴とする。
【００２５】
本発明の第３の主記憶装置は、複数のＣＰＵからアクセスされ、前記主記憶装置は、情報を記憶する複数のメモリ装置と、ＣＰＵと接続しＣＰＵのアクセス要求を処理する複数のアクセス制御部と、複数のアクセス制御部と複数のメモリ装置との接続を切り換えるクロスバスイッチと、前記各アクセス制御部から前記メモリ装置の１つに対する使用要求を受けて前記メモリ装置毎に調停を行い前記クロスバスイッチを制御して前記アクセス制御部と前記メモリ装置との接続を切り換える調停部とを有し、
前記アクセス制御部は、構成情報を保持する構成情報保持部と、前記構成情報に従って前記メモリ装置に供給するアドレスと使用要求するメモリ装置を指定するルーティングアドレスとを生成するアドレス生成部とを有することを特徴とする。
【００２６】
本発明の第４の主記憶装置は、本発明の第１、第２、又は第３の主記憶装置おいて、前記構成情報が、前記複数のメモリ装置をどのように分割するかを指定する分割情報と、分割した際の前記ＣＰＵと前記メモリ装置との対応を指定する対応情報とを含むことを特徴とする。
【発明の効果】
【００２７】
ＭＭＵ内に接続先となるＣＰＵ毎に設けた構成情報を基にアクセスするＭＵを決定しているので、主記憶システムとして柔軟なシステム構成の構築ができることである。例えば、ＭＭＵ内でＣＰＵグループ毎にＭＵを割り当てることにより、ＣＰＵ間の影響を回避するとともに性能低下も回避することができるという効果がある。
【発明を実施するための最良の形態】
【００２８】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
図１は本発明のＭＭＵ２０の構成を示したブロック図であり、図２は本発明のＣＰＵ１０とＭＭＵ２０（主記憶装置の略）との接続関係を示した図である。
【００２９】
図２を参照すると本発明のシステムは４つのＭＭＵ２０（ＭＭＵ２０−１、ＭＭＵ２０−２、ＭＭＵ２０−３、ＭＭＵ２０−４）からなる主記憶システムと、４つのＣＰＵ１０（ＣＰＵ１０−１、ＣＰＵ１０−２、ＣＰＵ１０−３、ＣＰＵ１０−４）と、これらの間を接続する転送パスで構成される。以降の説明ではこの構成で説明するが、ＣＰＵ１０やＭＭＵ２０の数を限定するものではない。
【００３０】
ＣＰＵ１０はＭＭＵ２０に対して４つのポートを持ち、それぞれのポートはＭＭＵ２０−１、ＭＭＵ２０−２、ＭＭＵ２０−３、ＭＭＵ２０−４に接続しコマンドやＭＭＵ用アドレスやデータを転送する。コマンドとは主記憶に対するメモリアクセス要求の内容を定義するもので、要求内容としては主記憶からのデータの読み出しや、主記憶へのデータの書込等がある。ＭＭＵ用アドレスはＣＰＵ１０上のアドレスとインタリーブ構成に基づいてＭＭＵ２０用に生成されたアドレスである。
【００３１】
図１を参照すると、ＭＭＵ２０は、４つのＭＵ２３（ＭＵ２３−１〜ＭＵ２３−３、ＭＵはメモリ装置の略）と、４つのアクセス制御部３０（アクセス制御部３０−１〜アクセス制御部３０−４）と、ＭＵ２３とアクセス制御部３０との接続関係を切り換え可能にして接続するクロスバスイッチ２２と、各アクセス制御部３０からの使用要求を調停して調停結果に応じてクロスバスイッチ２２の接続関係を切り替える制御を行う調停部２１とを含んでいる。
【００３２】
ＭＵ２３は、通常複数のＲＡＭ(random access memory)のような半導体記憶素子で構成される記憶手段であり、指示を受けてデータの書込や読み出しを行う。クロスバスイッチ２２は４つのアクセス制御部３０と４つのＭＵ２３とを同時に接続する機能を有する。例えば、アクセス制御部３０−１とＭＵ２３−２との接続、アクセス制御部３０−２とＭＵ２３−３との接続、アクセス制御部３０−３とＭＵ２３−１との接続、アクセス制御部３０−４とＭＵ２３−４との接続を並列して実現する。
【００３３】
アクセス制御部３０は４つのＣＰＵ１０に対応して４つ設けられ、図示しないがＣＰＵ１０からメモリアクセス要求を受け付けて処理する制御手段を有し調停部２１に対して使用するＭＵ２３を指定する情報とアクセス内容を指示する制御情報を使用要求として与え、ＭＵ２３にコマンドに基づいて生成したアドレスとアクセス内容を指示する制御情報とをクロスバスイッチ２２を介して与え、さらに構成情報保持部３１とアドレス生成部３２とを有する。なお、通常アクセス制御部３０は接続可能なＣＰＵ１０の数と同じだけ設けて１対１で接続しているが、１対１でなくてもかまわない。ただし１対１以外の場合は機能に制限が付く場合がある。
【００３４】
構成情報保持部３１は、ＭＭＵ２０内のＭＵ２３のインタリーブ構成やＭＵ２３をどのように分割するかを制御する分割情報とＭＵ２３を分割した場合どのＭＵ２３をどのＣＰＵに割り当てるかという対応関係を制御する対応情報とからなる構成情報を保持する記憶手段である。図１では、Ｓ０とＳ１が分割情報に相当し、Ｓ２とＳ３が対応情報に相当する。各アクセス制御部３０はそれぞれ決められたＣＰＵ１０と接続されるので、各メモリアクセス制御部３０内の構成情報保持部３１はそれぞれ接続先のＣＰＵ１０とＭＵ２３との対応関係を決定するための構成情報を保持することができる。
【００３５】
構成情報はＣＰＵ１０からのメモリアクセス要求に構成情報変更コマンドを定義することによりＣＰＵ１０から変更可能とするが、システム全体の管理や診断を実行するサービスプロセッサ等を用いた別の方法、別のパスにより変更するようにしてもよい。なお、構成情報を変更しないシステムでは不揮発性のメモリ素子に記憶するようにしてもよい。図１では、構成情報としてＳ０〜Ｓ３の４ビットを示しているが、ＭＵ２３の構成数により必要なビット数だけ設ければよい。
【００３６】
アドレス生成部３２はＣＰＵ１０から転送されるＭＭＵ用のアドレスと構成情報に基づいて４つのＭＵ２３のどれに対するアクセスかを決定するルーティングアドレス（ＲＡと略す）とＭＵ２３の内部アドレスであるＭＵ内アドレス（ＭＡと略す）を生成する回路である。ＭＭＵ用アドレスでメモリアクセス要求される際の要求アドレスはルーティングアドレスの基となるＲ０とＲ１の２ビットと残りのｎビット（ＰＡとする）からなり、Ｒ０とＲ１は要求アドレスの下位２ビットが割り当てられる。
【００３７】
なお、ＭＵ内アドレスはクロスバスイッチ２２を介して該当するＭＵ２３に供給され、ＲＡは調停部２１に供給され調停されて調停部２１による調停で使用される。調停部２１によりアクセス制御部３０はメモリアクセス実行タイミングに該当するＭＵ２３とクロスバスイッチ２２を介して接続される。
【００３８】
調停部２１は、各アクセス制御部３０のアドレス生成部３２から供給されるＲＡと各アクセス制御部３０から生成される制御情報からなる使用要求に基づいてＭＵ２３単位に調停を行う。従ってＭＵ２３−１〜ＭＵ２３−４が同時に並列して接続可能であり、それぞれのＭＵ２３に対して読み出しや書込が並列して実行可能である。例えば図３の構成ではＣＰＵ１０−１とＣＰＵ１０−２は同じＭＵを共有するため、アクセス制御部３０−１とアクセス制御部３０−２との間では競合が起こりその際に調停が必要となる。
【００３９】
ここで、構成情報とアドレス生成の方法について説明する。構成情報のＳ０とＳ１は４つのＭＵ２３をどのように分割しインタリーブするかを指示する情報であり、Ｓ２とＳ３はＭＵ２３を分割した時にどのＭＵ２３を割り当てるかを指定する情報である。各ＭＵ２３とＳ２，Ｓ３の２ビットの関係はＭＵ２３−１が“００”、ＭＵ２３−２が“０１”、ＭＵ２３−３が“１０”、ＭＵ２３−４が“１１”に対応する。
【００４０】
Ｓ０とＳ１の組合せによりＲＡとＭＡは次のように生成される。Ｓ０＝“０”、Ｓ１＝“０”の場合、ＭＵ２３を分割せず４つのＭＵ２３を全てインタリーブする構成を指定し、アドレス生成部３２はＲＡ＝（Ｒ０，Ｒ１）、ＭＡ＝ＰＡ（１〜ｎ）を生成する。
【００４１】
Ｓ０＝“０”、Ｓ１＝“１”のときはＭＵ２３−１とＭＵ２３−２を含むグループとＭＵ２３−３とＭＵ２３−４とを含むグループとに分割しそれぞれグループ内でインタリーブすることを指示し、ＲＡ＝（Ｓ２，Ｒ１）、ＭＡ＝（ＰＡ（２〜ｎ）、Ｒ０）を生成する。
【００４２】
アクセス制御部３０−１の場合Ｓ２＝０であればＣＰＵ１０−１がＭＭＵ２０−１内でＭＵ２３−１とＭＵ２３−２を割り当てられることを意味する。同様にアクセス制御部３０−２ではＣＰＵ１０−２がＭＭＵ２０−１内でＭＵ２３−１とＭＵ２３−２を割り当てられることを意味する。図３のＡＣ１（アクセス制御部３０−１の略）とＡＣ２（アクセス制御部３０−２の略）はこのように設定されている。
【００４３】
Ｓ０＝“１”のときは全てのＭＵ２３を分割し同一のＭＭＵ２０内でのＭＵ２３間のインタリーブはしないことを指示し、ＲＡ＝（Ｓ２，Ｓ３）、ＭＡ＝（ＰＡ（３〜ｎ）、Ｒ０，Ｒ１）を生成する。この場合、Ｓ２，Ｓ３はそれぞれアクセス制御部３０が接続するＣＰＵをどのＭＵ２３に割り当てるかを指定する情報となる。例えばＭＭＵ２０−２のアクセス制御部３０−３でＳ２，Ｓ３＝００とすればＣＰＵ２のＭＭＵ２０−１に対するアクセスはＭＭＵ２０−２内のＭＵ２３−１へ割り当てることを意味する。
【００４４】
次に、本発明の動作について図面を参照して説明する。ここでは図６に示すシステム構成を図３に示すような主記憶システムに変更する際の動作と図３におけるメモリアクセス動作を説明する。
【００４５】
まず、図６に相当する構成では全てのＭＭＵ２０の全てのアクセス制御部３０内の構成情報保持部３１には、共通してＳ０〜Ｓ４として“００ＸＸ”が設定されている。“Ｘ”は値が“０”でも“１”でもよいことを示しているが通常“０”とする。このように設定することにより全てのＣＰＵ１０が全てのＭＵ２３をインタリーブして１６ウェイのインタリーブでアクセス可能な構成となる。
【００４６】
この構成では、課題で説明したように、各ＣＰＵ１０は全体として高いメモリアクセス性能を実現できているが、一方でＣＰＵ間の競合による影響を受けやすくなるので、ＣＰＵ１０をグループ分けしてそれぞれ干渉しない業務を実行する際には図３のようにＭＵ２３を分割して各ＣＰＵグループに割り当てた方が効率がよくなる。図３の構成では、各ＭＭＵ４０は、ＭＵ２３−１とＭＵ２３−２をＣＰＵ１０−１とＣＰＵ１０−２のグループに割り当て、ＭＵ２３−３とＭＵ２３−４をＣＰＵ１０−３とＣＰＵ１０−４のグループに割り当てている。
【００４７】
図３の構成を実現するために、各ＭＭＵ２０のアクセス制御部３０−１とアクセス制御部３０−２内のそれぞれの構成情報保持部３１にＳ０〜Ｓ３＝“０１０Ｘ”を設定し、各ＭＭＵ２０のアクセス制御部３０−３とアクセス制御部３０−４内のそれぞれの構成情報保持部３１にＳ０〜Ｓ３＝“０１１Ｘ”を設定する。設定はＣＰＵ１０の１つから実行してもよいし、サービスプロセッサ等から図示しないパスを使用して設定してもよい。
【００４８】
次に図３の構成におけるＣＰＵ１０−１からＭＭＵ２０−１へのアクセスの動作について説明する。各ＭＭＵ２０内の構成情報は同じ設定がされて各ＭＭＵ２０は対称となっており、ＭＭＵ２０間でのインタリーブが可能であるものとする。
【００４９】
まず、ＣＰＵ１０−１はメモリアクセス要求が必要になると、必要なコマンド、ＭＭＵ用のアドレス、書込の際は書込用データを生成し、ＭＭＵ２０−１に対してメモリアクセス要求を送る。このとき生成されるＭＭＵ用アドレスのビット長は、ＭＭＵ２０のメモリ容量により決まる。
【００５０】
例えば４つのＭＭＵ２０から構成される主記憶システムのメモリ容量がｍビットのアドレスで指定され、ＣＰＵ１０がバイト単位のアドレスを持ちＣＰＵ１０−ＭＭＵ２０間の転送データ幅が１６バイトの場合、ｍ−４ビットで主記憶アドレスを指定できるが、ＭＭＵ２０間がインタリーブされるため、ｍ−４ビットのアドレスの内２ビットが４つのＭＭＵ２０を指定する情報として用いられためにＭＭＵ用アドレスはｍ−４−２ビット長となる。すなわちｍ−４−２＝ｎ＋２の関係にある。
【００５１】
ＭＭＵ２０−１の動作について説明を続けると、ＭＭＵ２０−１は、ＣＰＵ１０−１のメモリアクセス要求をアクセス制御部３０−１で受け付ける。これはＣＰＵ１０とＭＭＵ２０との接続関係で予め決められている。アクセス制御部３０−１はメモリアクセス要求を受け取ると、アドレス生成部３２でルーティングアドレス（ＲＡ）とＭＵ内アドレス（ＭＡ）を生成するとともに、図示しないが調停部２１とＭＵ２３への制御に必要な制御情報を作成し調停部へ使用要求を送る。
【００５２】
アドレス生成部３２は、構成情報保持部３１の構成情報（Ｓ０〜Ｓ３）に基づいてすでに説明した所定の方法でアドレスを生成する。この場合、Ｓ０、Ｓ１＝“０１”であるので、構成情報のＳ２と要求アドレスのＲ１とによりＲＡ＝（Ｓ２，Ｒ１）を生成し、ＭＡ＝（ＰＡ（２〜ｎ）、Ｒ０）を生成する。
【００５３】
生成したＲＡは調停部２１に対する制御信号とともに使用要求として調停部２１へ送られる。使用要求に含まれる制御信号はＭＵ２３を占有する時間がわかるための書込や読み出し等の処理内容の情報を含む。調停部２１は各アクセス制御部３０から使用要求を受け取ることにより調停を行う。調停部２１はＭＵ２３へのアクセスを許可するとクロスバスイッチ２２を制御して許可した期間に要求元のアクセス制御部３０をアクセス先のＭＵ２３に接続するよう切り換え、要求元のアクセス制御部３０に使用許可を通知する。
【００５４】
アクセス制御部３０−１は、調停部２１から使用許可通知を受けると必要な情報（制御情報、ＭＡ、書込の場合は書込データ）を出力し、読み出しの場合はＭＵ２３から読み出したデータを受け取る。アクセス制御部３０−１は、書込が終了するとＣＰＵ１０−１から次のメモリアクセス要求を受信できるようにし、読み出しの場合は要求元のＣＰＵ１０−１へ読み出しデータを返送し次のメモリアクセス要求を受信できるようにする。
【００５５】
ＣＰＵ１０−１以外も同様に動作するので、ＭＵ２３が競合しなければ各ＣＰＵ１０は他のＣＰＵ１０の影響を受けずにメモリアクセスを実行できる。図３の構成では、ＭＭＵ２０内でＭＵ２３を分割してＣＰＵ１０に割り当てるようにしているので、ＣＰＵ１０−１とＣＰＵ１０−２のグループとＣＰＵ１０−３とＣＰＵ１０−４のグループとの間で、アクセスするＭＵ２３が競合することがない。従って、他のＣＰＵグループの影響を排除できるとともに、各ＣＰＵ１０は全てのＭＭＵ２０を利用できるので、転送性能の低下を回避することができる。
【００５６】
図３ではＣＰＵグループ間の分割例を示したが、ＣＰＵ１０−１とＣＰＵ１０−２からなるグループをＭＵ２３−１とＭＵ２３−２に割り当て、ＣＰＵ１０−３をＭＵ２３−３に割り当て、ＣＰＵ１０−４をＭＵ２３−４に割り当てるようにすることもできる。この構成を図４に示す。
【００５７】
図４の構成では、各ＭＭＵ２０のアクセス制御部３０−１とアクセス制御部３０−２の構成情報に“０１０ｘ”を設定し、各ＭＭＵ２０のアクセス制御部３０−３の構成情報に“１ｘ１０”を設定し、各ＭＭＵ２０のアクセス制御部３０−４の構成情報に“１ｘ１１”を設定することにより実現できる。この構成ではＣＰＵ１０−１とＣＰＵ１０−２はＭＵ２３を８ウェイでインタリーブし、ＣＰＵ１０−３とＣＰＵ１０−４はＭＵ２３を４ウェイでインタリーブできる。
【００５８】
このように、ＭＵ２３のインタリーブを細かく制御できるので、ＭＵ２３の１つに障害が発生した場合のＭＵ２３の切り離しにおいても、障害ＭＵ２３を１つのＣＰＵ１０に割り当ててそのＣＰＵ１０のみの性能低下に限定するようにすることもできる。
【００５９】
さらに、各ＣＰＵ１０で必要とするメモリ容量が大きく異なる場合の構成例を図５に示す。図５の構成では、ＣＰＵ１０−１が大きなメモリ容量を必要とし、ＣＰＵ１０−２とＣＰＵ１０−３が小さなメモリ容量でよい場合の構成を示している。
【００６０】
図５の構成は、図４とＭＵ２３の分割は同じで、ＣＰＵの割り当てが異なっている。図５の構成は、ＣＰＵ１０−１に各ＭＭＵ２０のＭＵ２３−１とＭＵ２３−２が割り当てられ、ＣＰＵ１０−２とＣＰＵ１０−３に各ＭＭＵ２０のＭＵ２３−３が割り当てられ、ＣＰＵ１０−４に各ＭＭＵ２０のＭＵ２３−４が割り当てられている。
【００６１】
この構成を実現するためには、各ＭＭＵ２０のアクセス制御部３０−１の構成情報に“０１０ｘ”を設定し、各ＭＭＵ２０のアクセス制御部３０−２とアクセス制御部３０−３の構成情報に同じ“１ｘ１０”を設定し、各ＭＭＵ２０のアクセス制御部３０−４の構成情報に“１ｘ１１”を設定することにより実現できる。
【００６２】
このような設定をすることにより、ＣＰＵ１０毎に使用するメモリ容量が大きく異なるようなシステムにおいて主記憶システムを共有する場合に転送性能の低下を低く抑えながらＣＰＵ間の影響を除外し割り当てるメモリ容量を最適化することが可能となる。
【００６３】
例えば、ＣＰＵ１０で実行されるジョブの中には、ＣＰＵ台数は少なくて良いが主記憶容量が多く必要なものがあったり、主記憶容量は少なくて良いがＣＰＵ台数が多く必要なものがあったりする。図５の構成では、性能の低下を回避しながらＣＰＵ毎に使用する主記憶領域の大きさをＣＰＵ個別に設定できるので、ジョブの特性に適合したシステム構成が構築可能となる。
【図面の簡単な説明】
【００６４】
【図１】本発明のＭＭＵの構成を示したブロック図である。
【図２】本発明のＣＰＵ−ＭＭＵ間の接続を示したブロック図である。
【図３】本発明のＭＵを分割しＣＰＵに割り当てた構成の一例である。
【図４】本発明のＭＵをＣＰＵに割り当てた構成の一例である。
【図５】本発明のＭＵをＣＰＵに割り当てた構成の一例である。
【図６】従来技術の全ＣＰＵがＭＵを共有する構成の一例である。
【図７】従来技術のＭＭＵをＣＰＵに割り当てた構成の一例である。
【図８】従来技術のＭＭＵをＣＰＵに割り当てた構成の一例におけるＣＰＵ−ＭＭＵ間の接続で使用されるパスを示した図である。
【図９】従来技術のＭＭＵをＣＰＵに割り当てた構成の一例におけるＣＰＵ−ＭＭＵ間の接続を変更した後の図である。
【符号の説明】
【００６５】
１０    ＣＰＵ
２０    ＭＭＵ
２１    調停部
２２    クロスバスイッチ
２３    ＭＵ
３０    アクセス制御部
３１    構成情報保持部
３２    アドレス生成部
４０    ＭＭＵ
【図１】
2005258874.tif 000003
【図２】
2005258874.tif 000004
【図３】
2005258874.tif 000005
【図４】
2005258874.tif 000006
【図５】
2005258874.tif 000007
【図６】
2005258874.tif 000008
【図７】
2005258874.tif 000009
【図８】
2005258874.tif 000010
【図９】
2005258874.tif 000011