JP2000163316A - 計算機システム - Google Patents

計算機システム

Info

Publication number
JP2000163316A
JP2000163316A JP10336858A JP33685898A JP2000163316A JP 2000163316 A JP2000163316 A JP 2000163316A JP 10336858 A JP10336858 A JP 10336858A JP 33685898 A JP33685898 A JP 33685898A JP 2000163316 A JP2000163316 A JP 2000163316A
Authority
JP
Japan
Prior art keywords
address
memory module
bank
computer system
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10336858A
Other languages
English (en)
Other versions
JP4240610B2 (ja
Inventor
Hideki Aoki
秀貴 青木
Masanao Ito
昌尚 伊藤
Yoshiko Tamaoki
由子 玉置
Keimei Fujii
啓明 藤井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP33685898A priority Critical patent/JP4240610B2/ja
Publication of JP2000163316A publication Critical patent/JP2000163316A/ja
Application granted granted Critical
Publication of JP4240610B2 publication Critical patent/JP4240610B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 既存のメモリモジュールをバンク構成の異な
るメモリモジュールで置き換えた場合にも、ストライド
アクセスによる主記憶装置の性能低下を緩和するアドレ
ス割り付けを提供する。 【解決手段】 本発明の計算機システムでは、相互結合
網20がアドレスマッピング回路40を備えるとととも
に、主記憶装置30を構成する各メモリモジュール50
がアドレスマッピング回路60を備えており、主記憶ス
キューのためのアドレス変換を2段階でおこなう。アド
レスマッピング回路60でおこなうアドレス変換は、メ
モリモジュール50内のバンク構成に適した方式となっ
ている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は多バンク構成の主記
憶装置を有する計算機システムに関し、特に、主記憶ス
キューをおこなう計算機システムに関する。
【0002】
【従来の技術】計算機システムの主記憶装置の構成方式
として、多数のバンクで構成するインタリーブ方式が知
られている。図2に、主記憶装置を構成するバンク数が
16の場合の、インタリーブ方式によるアドレスの割り
付けを示す。16個のバンクには順に0から15までの
番号が付けられており、連続するアドレスは順次異なる
バンクに割り付けられている。このインタリーブ方式で
は、連続アドレスに順次アクセスする場合、異なるバン
クを順次アクセスすることになるため、高速な主記憶ア
クセスが可能となる。しかし,ある特定のアドレス間隔
(ストライド)でアクセスすると、アクセスが特定のバ
ンクあるいはバンク群に集中し、主記憶アクセス性能が
低下する問題が知られている。例えば,図2のアドレス
割り付けにおいて、アドレス0を起点にストライド16
でアクセスする場合を考える。この時、アドレス0,1
6,32,48,・・・とアクセスするが,これらのア
ドレスはすべてバンク0に割り付けられているため、バ
ンク競合により高速な主記憶アクセスが不可能となる。
図3に、ストライドとそれに対するアクセス要求のバン
クへの分散状況との関係を示す。アクセス要求がより多
くのバンクに分散した方が、バンク競合を避けられ、高
い主記憶処理性能を得ることができる。
【0003】なお、ここで言うアドレスとは,メモリの
各アクセス単位のメモリ位置に付けた番号を指す。以
下、特に断らない限り,本明細書におけるアドレスの定
義は上記の通りとする。
【0004】この主記憶装置のアクセス要求処理性能の
低下を緩和する手段として、主記憶スキューが知られて
いる。主記憶スキューは,D. J. Kuck:“ILLIAC IV Sof
tware and Application Programming”, IEEE Transact
ions on Computers, Vol.C-17, No.8, pp.758-770, Aug
ust 1968あるいはP. Budnik and D. J. Kuck:“The Org
anization and Use of Parallel Memories”, IEEE Tra
nsactions on Computers, pp.1566-1569, December 197
1で数学的な基礎があたえられている。その方法は一通
りではなく様々なバリエーションがあり,そのいくつか
がD. T. HarperIII and J. R. Jump:“Vector Access P
erformance in Parallel Memories Using a Skewed Sto
rage Scheme”, IEEE Transactions on Computers, Vo
l.C-36(12), pp.1440-1449, December 1987あるいは同
じ著者らによる“Performance Evaluation of Vector A
ccesses in Parallel Memories Using a Skewed Storag
e Scheme”, Conference Proceedings of the 13th Ann
ual International Symposium on Computer Architectu
re, pp.324-328, June 1986, IEEEあるいは米国特許4,9
18,600に示されている。
【0005】図4に、主記憶スキューをおこなう計算機
システムの例を示す。この全体を符号1で示す計算機シ
ステムは、データの処理をおこなう4個のプロセッサ1
1と、データを記憶する主記憶装置31とを有し、それ
らが相互結合網21を介して相互に結合されている。主
記憶装置31は4個のメモリモジュール51から成り、
メモリモジュール51はそれぞれ4個のバンク91を有
する。主記憶装置31全体では、16個のバンクを有す
る。相互結合網21は、主記憶スキューをおこなうため
のアドレスマッピング回路41を有する。アドレスマッ
ピング回路41では、主記憶アクセス要求に付随するア
ドレス情報をもとに、その主記憶アクセス要求を送出す
るバンクを決定する。バンク番号BKとアドレスADR
とメモリモジュール数N(ここではN=16)の関係
は、(数1)で表される。
【0006】(数1) BK=(ADR+ADR÷N)mod N ここで、mod NはNのモジュロを取ることを表す。
この主記憶スキューをおこなう計算機システム1におけ
るアドレス割り付けを、図5に示す。図5に示す通り、
図4の計算機システムにおける主記憶スキューは,アド
レスがバンク数(ここでは16)だけ進むごとに、割り
付けるバンクをひとつずつすらすものとなっている。こ
の主記憶スキューによるメモリ割り付けをおこなった場
合の、ストライドとそれに対するアクセス要求のバンク
への分散状況との関係を、図6に示す。
【0007】図3と図6との比較からわかるように、主
記憶スキューをおこなうことにより,アクセス要求が特
定のバンクまたはバンク群に集中しその結果性能が低下
するようなストライドの種類を、少なくすることができ
る。
【0008】
【発明が解決しようとする課題】主記憶装置の性能を向
上させるために、現在のメモリモジュールを,高速化の
ための諸技術を導入した別構成のメモリモジュールに交
換する手法が考えられる。ここで、バンク数のより多い
メモリモジュールに交換した場合,図4に示した従来の
計算機システムでは、ストライドによっては,アクセス
要求のバンクへの分散状況がバンク数の増加に見合わな
い、すなわち、バンク数を増やしても増やしたほどの効
果が得られないという問題がある。
【0009】例えば、主記憶装置全体は32バンクから
成り,あるストライドではそのうち8バンクにのみアク
セス要求が集中するとする。ここで、各メモリモジュー
ル内のバンク数を4倍にし、主記憶装置全体で128バ
ンクの構成としても、そのストライドでは依然として8
バンクにアクセス要求が集中し,結果として性能が上が
らないといった問題である。
【0010】この問題は、従来の計算機システムでは,
最初のバンク構成(上記の例では32バンク)に合わせ
た主記憶スキューをおこなうが、その主記憶スキューは
メモリモジュールの交換による新しいバンク構成(上記
の例では128バンク)には適したものでないことから
生じる。
【0011】本発明の目的は、上記の問題を解決し,メ
モリモジュールの交換によりバンク数を増やした場合
に、その新しいバンク構成に適した主記憶スキューを実
現することで、主記憶装置の性能を向上させることにあ
る。
【0012】
【課題を解決するための手段】上記課題を解決するため
に、本発明の計算機システムは,データの処理をおこな
う1個または複数個のプロセッサと、データを記憶する
主記憶装置と、該プロセッサと該主記憶装置を相互に結
合する相互結合網とを備え、該相互結合網は1個または
複数個のアドレスマッピング回路を有し、該主記憶装置
は複数個のメモリモジュールを有し、各々のメモリモジ
ュールはアドレスマッピング回路を有し、相互結合網内
の該アドレスマッピング回路と、メモリモジュール内の
アドレスマッピング回路の2段階でアドレス変換をおこ
なう。
【0013】また、メモリモジュール内のアドレスマッ
ピング回路でおこなうアドレス変換は、メモリモジュー
ルのバンク構成に適した方式となっている。
【0014】
【発明の実施の形態】本発明に従う計算機システムの例
を図1に示す。プロセッサ10は4個示されているがそ
の個数は本質でなく、1個のプロセッサでも良い。この
プロセッサに対し、主記憶装置30は複数個(図では4
個)のメモリモジュール50で構成され、プロセッサ1
0と主記憶装置30の各メモリモジュールとは相互結合
網20で結合される。相互結合網20にはアドレスマッ
ピング回路40を備え、ストライドされたアクセスの際
にも特定のメモリモジュールへのアクセス要求の集中を
軽減するようなアドレス変換がなされる。さらに、主記
憶装置30を構成する各メモリモジュール50にもそれ
ぞれアドレスマッピング回路60を備えており、アドレ
スマッピング回路60でおこなうアドレス変換は、メモ
リモジュール50内のバンク構成に適した方式となって
いる。全体として主記憶スキューのためのアドレス変換
を2段階でおこなう。
【0015】以下、図面を用いて本発明の実施例を説明
する。
【0016】図7に、本発明の一実施例による計算機シ
ステムの要部構成を示す。全体を符号2で示す本実施例
の計算機システムは、データの処理をおこなう4個のプ
ロセッサ12と、データを記憶する主記憶装置32とを
有し,それらが相互結合網22を介して相互に結合され
ている。相互結合網22は、4個のプロセッサ12それ
ぞれに対応する4個の網制御装置92を有し、網制御装
置92はそれぞれアドレスマッピング回路42を備え
る。主記憶装置32は4個のメモリモジュール52を有
し、メモリモジュール52はそれぞれアドレスマッピン
グ回路62を備える。
【0017】プロセッサ12は、相互結合網22に対し
てそれぞれ2個のアクセスポートを有する。また、網制
御装置92は,プロセッサ12に対して2個のアクセス
ポートを有する。プロセッサ12と網制御装置92は1
対1に対応しており(プロセッサ#0と網制御装置#
0、プロセッサ#1と網制御装置#1など),対応する
プロセッサ12と網制御装置92の2個のアクセスポー
ト間にそれぞれアクセスパスが張られ、プロセッサ12
と網制御装置92の間のアクセスパスが二重化されてい
る。各アクセスパスの上を1サイクルあたり最大1個の
アクセス要求が流れ、各プロセッサ12から対応する網
制御装置92に対しては、1サイクルあたり最大2個の
アクセス要求が送られる。
【0018】メモリモジュール52は、4個の網制御装
置92それぞれに対応する4個のアクセスポートを有す
る。また、網制御装置92は,4個のメモリモジュール
52それぞれに対応する4個のアクセスポートを有す
る。各網制御装置92と各メモリモジュール52の対応
するポート間にアクセスパスが張られ、全体としては、
4個の網制御装置92と4個のメモリモジュール52と
が全対全で結合されている。各アクセスパスの上を、1
サイクルあたり最大1個のアクセス要求が流れる。
【0019】本実施例の計算機システム2では、プロセ
ッサ12から主記憶装置32に送るアクセス要求とし
て、主記憶装置からデータをプロセッサ内のレジスタ
(図示せず)あるいはキャッシュ(図示せず)に格納す
るフェッチ要求、および、プロセッサ内のレジスタある
いはキャッシュからデータを主記憶装置に格納するスト
ア要求などがある。しかし本実施例では以下、簡単化の
ためストアアクセスに関する動作を例に取って説明す
る。図面についても、主にストア要求に関する装置部分
を示し,他の要求のための回路は省略する。
【0020】プロセッサ12がストアアクセス要求を発
行すると、その要求は二重化されたアクセスパスを介し
て対応する網制御装置92に送られる。各プロセッサ1
2は対応する網制御装置92に対して、ストア要求を1
サイクルあたり最大2個発行できる。網制御装置92
は、プロセッサ12からストア要求を受け取ると,スト
ア要求で指定されたアドレスが属するいずれかのメモリ
モジュール52へ、ストア要求を転送する。各網制御装
置92は、4個のメモリモジュール52それぞれに対し
て独立に、ストア要求を1サイクルあたり最大1個発行
できる。これにより,各網制御装置92から主記憶装置
32全体に対しては、ストア要求を1サイクルあたり最
大4個発行できる。
【0021】図7に示した本実施例の計算機システム2
で使われるメモリモジュール52として、最初は図8に
示すメモリモジュール52Aを用い、のちに性能向上の
ために図9に示すメモリモジュール52Bに交換するも
のとする。
【0022】図8に示すメモリモジュール52Aは、ア
ドレスマッピング回路62Aと,2個のバンクグループ
82からなる。各バンクグループ82は4個のバンク7
2からなり、ストア要求を1サイクルあたり最大1個受
けることができる。メモリモジュール52A内の2個の
バンクグループ82は独立に動作し、網制御装置92か
ら並列にアクセス可能となっている。これにより、メモ
リモジュールの数より多いデータ要素を並列に処理可能
となる。
【0023】一方、図9に示すメモリモジュール52B
は,アドレスマッピング回路62Bと,8個のバンクグ
ループ82からなる。各バンクグループ82は、図8に
示したものと同一である。すなわち、各バンクグループ
82は4個のバンク72からなり,ストア要求を1サイ
クルあたり最大1個受けることができる。メモリモジュ
ール52B内の8個のバンクグループ82は独立に動作
し、網制御装置92から並列にアクセス可能となってい
る。
【0024】図8に示したメモリモジュール52A全体
では、ストア要求を1サイクルあたり最大2個受けるこ
とができるのに対し、図9に示したメモリモジュール5
2B全体では、ストア要求を1サイクルあたり最大8個
受けることができる。また総バンク数も増えるため、バ
ンク競合が起こりにくくなる。これらにより、メモリモ
ジュール52Bを用いて主記憶装置32を構築した方
が,より高い処理性能を得ることができる。
【0025】図10に、プロセッサ12が発行するスト
アアクセス要求に付随するアドレスフィールドを示す。
本実施例の計算機システム2では、アドレスは20ビッ
トで指定される。データは主記憶装置32に8バイト単
位で格納され、1要素8バイトがアクセス単位となる。
図において上位アドレスとは、先に定義したアドレス、
すなわち,主記憶装置32のアクセス単位に付けられた
番号を意味する。本実施例では、以下,この上位アドレ
スを単にアドレスということがある。上位アドレスは1
7ビットからなる。一方、下位アドレスは,データの1
要素内のバイトアドレスを指す。本実施例では、データ
要素が8バイトの大きさを有するため、下位アドレスは
3ビットからなる。
【0026】図8に示したメモリモジュール52Aを用
いて主記憶装置32を構築した場合、図10のアドレス
フィールドがさらに図11に示すように解釈される。ア
ドレスの最上位ビットを第0ビットとした時、第15ビ
ットと第16ビットの2ビットよりなるMMフィールド
は、図7の計算機システムにインタリーブ方式でアドレ
スを割り付ける時に、そのアドレスが割り付けられるメ
モリモジュール番号を示す。第14ビットはBGフィー
ルドで、MMフィールドで決まるメモリモジュール内で
そのアドレスが割り付けられているバンクグループ番号
を示す。そして、第12ビットと第13ビットの2ビッ
トよりなるBKフィールドは,そのバンクグループ内で
そのアドレスが割り付けられるバンク番号を示す。第0
ビットから第11ビットはバンク内オフセットを表すフ
ィールドであり、バンク内でそのアドレスが割り当てら
れたアクセス単位の記憶位置を表す。
【0027】一方、図9に示したメモリモジュール52
Bを用いて主記憶装置32を構築した場合、図10のア
ドレスフィールドは図12に示すように解釈される。第
15ビットと第16ビットの2ビットよりなるMMフィ
ールドは、図7の計算機システムにインタリーブ方式で
アドレスを割り付ける時に、そのアドレスが割り付けら
れるメモリモジュール番号を示す。第12ビットから第
14ビットの3ビットはBGフィールドで、MMフィー
ルドで決まるメモリモジュール内でそのアドレスが割り
付けられているバンクグループ番号を示す。そして、第
10ビットと第11ビットの2ビットよりなるBKフィ
ールドは、そのバンクグループ内でそのアドレスが割り
付けられるバンク番号を示す。第0ビットから第9ビッ
トはバンク内オフセットを表すフィールドであり、バン
ク内でそのアドレスが割り当てられたアクセス単位の記
憶位置を表す。
【0028】以下、プロセッサ12からストアアクセス
要求が発行された際の動作を説明する。
【0029】プロセッサ12がストアアクセス要求を発
行すると、その要求は二重化されたアクセスパスを介し
て対応する網制御装置92に送られる。既に述べた通
り、各プロセッサ12は対応する網制御装置92に対し
て、ストア要求を1サイクルあたり最大2個発行するこ
とができる。
【0030】網制御装置92は、プロセッサ12からス
トア要求を1サイクルあたり最大2個受け取る。ストア
要求を受け取ると、まず,アドレスマッピング回路42
を用いて、そのストア要求に付随するアドレスを,本実
施例における主記憶スキュースキームに従って、アクセ
スすべきメモリモジュール番号を含むアドレスに変換す
る。その後、変換したアドレスからストア要求を転送す
べきメモリモジュール52を決定し、そのメモリモジュ
ール52へストア要求を転送する。各網制御装置92
は、4個のメモリモジュール52それぞれに対して独立
に,ストア要求を1サイクルあたり最大1個転送するこ
とができる。これにより、各網制御装置92から主記憶
装置32全体に対しては、ストア要求を1サイクルあた
り最大4個転送することができる。
【0031】図13に、アドレスマッピング回路42で
おこなうアドレス変換の方法を示す。アドレスマッピン
グ回路42は、モジュロ4の2ビット加算器101を備
えている。加算器101は、変換前アドレスの第13〜
14ビットと第15〜16ビットを4のモジュロで加算
し、その結果を変換後アドレスの第15〜16ビットと
する。この加算の際に生じる桁上げは無視する(すなわ
ち、モジュロ4の加算をおこなう)。第0〜14ビット
および第17〜19ビットについては、変換前アドレス
と変換後アドレスで変わらない。変換後アドレスの第1
5〜16ビットを、アクセスすべきメモリモジュール番
号とする。図14に、各メモリモジュールに割り付けら
れるアドレスを示す。メモリモジュール番号MMとアド
レスADRの関係は、(数2)で表される。
【0032】(数2) MM=(ADR+ADR÷4)mod 4 図14のアドレス割り付けにおいて、プロセッサ12か
ら網制御装置92に一定のアドレス間隔(ストライド)
のストア要求を発行していく場合の、ストライドとそれ
に対するストア要求のメモリモジュール52への分散状
況との関係を、図15に示す。また,図14のアドレス
割り付けにおいて,プロセッサ12から網制御装置92
に対して、一定のアドレス間隔(ストライド)のストア
要求を1サイクルあたり2個ずつ発行していく場合の、
ストライドとそれに対する網制御装置92の処理性能と
の関係を、図16に示す。ただし,この場合の性能と
は,プロセッサ12がストア要求を発行し始めてから十
分時間が経過し、1サイクルあたりの網制御装置92か
ら主記憶装置32へのストア要求転送数が定常状態にな
った時の性能であり、1サイクルに1要求を転送できる
場合の性能を1としている。網制御装置92の処理性能
に着目するため、主記憶装置32におけるストア要求の
滞りは起こらないと仮定している。ストライドが16の
倍数の時は、プロセッサ12から網制御装置92に1サ
イクルあたり2要求が送られてくるのに対し、網制御装
置92から主記憶装置32へは1サイクルあたり1要求
しか転送することができない。網制御装置92への要求
入力ピッチが処理能力を越えるため、プロセッサ12の
ストア要求発行を適宜抑止する必要が生じる。
【0033】比較のため、図17に,網制御装置92が
アドレスマッピング回路42でアドレス変換をおこなわ
ない場合の、各メモリモジュール52に割り付けられる
アドレスを示す。また、その場合の,ストライドとそれ
に対するストア要求のメモリモジュール52への分散状
況との関係を図18に、ストライドとそれに対する網制
御装置92の処理性能との関係を図19に示す。図15
と図18の比較からわかるように、アドレスマッピング
回路42のアドレス変換により,ストア要求が特定メモ
リモジュール52へ集中するストライドの種類を少なく
することができる。また、図16と図19の比較からわ
かるように,アドレスマッピング回路42のアドレス変
換により、網制御装置92の処理性能が低下するストラ
イドの種類を少なくすることができる。
【0034】網制御装置92からメモリモジュール52
にストア要求を転送する際、図20に示すように、スト
ア要求に付随するアドレスのうち,第15〜16ビット
(MMフィールド)を落として転送する。これによっ
て、必要な信号線の本数を減らすことができる。
【0035】網制御装置92は、ストア要求を一時的に
保持するバッファ等を備えてもよい。これにより、スト
ア要求の転送先が一時的にある特定のメモリモジュール
52に集中しても、網制御装置92におけるストア要求
の保持能力を越えない限りは,プロセッサ12からのス
トア要求を抑止しないで済む。また、アドレスマッピン
グ回路42でおこなうアドレス変換は,図13とは異な
っていてもよい。例えば、図13のモジュロ4の2ビッ
ト加算器101に代えて,2ビットの排他的論理和回路
を利用してもよい。
【0036】続いて、メモリモジュール52内でのスト
ア要求の処理の流れを説明する。
【0037】まず、図8に示したメモリモジュール52
Aを使った場合について説明する。メモリモジュール5
2Aは、4個の網制御装置92それぞれから,ストア要
求を1サイクルあたり最大1個受け取る。ストア要求を
受け取ると、まず,アドレスマッピング回路62Aを用
いて、そのストア要求に付随するアドレスを,本実施例
における主記憶スキュースキームに従って、アクセスす
べきバンクグループ番号およびバンク番号を含むアドレ
スに変換する。その後、変換したアドレスからストア要
求を転送すべきバンクグループ82およびバンク72を
決定し、当該バンクグループ82の当該バンク72でス
トア処理をおこなう。各バンクグループ82は、独立に
ストア処理をおこなうことができる。
【0038】図21に、アドレスマッピング回路62A
でおこなうアドレス変換の方法を示す。アドレスマッピ
ング回路62Aは、排他的論理和回路102を備えてい
る。排他的論理和回路102は、変換前アドレスの第0
〜2ビットと第3〜5ビットと第6〜8ビットと第9〜
11ビットと第12〜14ビットを入力として、3ビッ
ト幅のビットごとに排他的論理和を取り、その結果を変
換後アドレスの第12〜14ビットとする。第0〜11
ビットおよび第15〜17ビットについては、変換前ア
ドレスと変換後アドレスで変わらない。変換後アドレス
の第14ビットをアクセスすべきバンクグループ番号と
し、第12〜13ビットをバンクグループ内のバンク番
号とする。図22に、メモリモジュール62Aを用いて
主記憶装置32を構築した場合の、メモリモジュール,
バンクグループ,バンクの各階層へのアドレス割り付け
を示す。また、本アドレス割り付けにおけるストライド
とそれに対するストア要求のメモリモジュール、バンク
グループ,バンクへの分散状況との関係を、図23に示
す。
【0039】比較のため、図24に,メモリモジュール
52Aがアドレスマッピング回路62Aでアドレス変換
をおこなわない場合の、メモリモジュール,バンクグル
ープ,バンクの各階層へのアドレス割り付けを示す。ま
た、その場合の,ストライドとそれに対するストア要求
のメモリモジュール、バンクグループ,バンクへの分散
状況との関係を、図25に示す。図23と図25の比較
からわかるように,アドレスマッピング回路62Aのア
ドレス変換により、ストライドが2の倍数であれば、同
じストライドに対してストア要求が送られるバンクグル
ープおよびバンクの数が増え、より高い主記憶処理性能
を得ることができる。
【0040】次に、図9に示したメモリモジュール52
Bを使った場合について説明する。メモリモジュール5
2Bは、4個の網制御装置92それぞれから,ストア要
求を1サイクルあたり最大1個受け取る。ストア要求を
受け取ると、まず,アドレスマッピング回路62Bを用
いて、そのストア要求に付随するアドレスを,本実施例
における主記憶スキュースキームに従って、アクセスす
べきバンクグループ番号およびバンク番号を含むアドレ
スに変換する。その後、変換したアドレスからストア要
求を転送すべきバンクグループ82およびバンク72を
決定し、当該バンクグループ82の当該バンク72でス
トア処理をおこなう。各バンクグループ82は、独立に
ストア処理をおこなうことができる。
【0041】図26に、アドレスマッピング回路62B
でおこなうアドレス変換の方法を示す。アドレスマッピ
ング回路62Bは、排他的論理和回路103を備えてい
る。排他的論理和回路103は、変換前アドレスの第0
〜4ビットと第5〜9ビットと第10〜14ビットを入
力として、5ビット幅のビットごとに排他的論理和を取
り,その結果を変換後アドレスの第10〜14ビットと
する。第0〜9ビットおよび第15〜17ビットについ
ては、変換前アドレスと変換後アドレスで変わらない。
変換後アドレスの第12〜14ビットをアクセスすべき
バンクグループ番号とし、第10〜11ビットをバンク
グループ内のバンク番号とする。図27ないし図30
に、メモリモジュール62Aを用いて主記憶装置30を
構築した場合の、メモリモジュール、バンクグループ,
バンクの各階層へのアドレス割り付けを示す。また、本
アドレス割り付けにおけるストライドとそれに対するス
トア要求のメモリモジュール、バンクグループ,バンク
への分散状況との関係を,図31に示す。
【0042】比較のため、図32ないし図35に,メモ
リモジュール52Aがアドレスマッピング回路62Bで
アドレス変換をおこなわない場合の、メモリモジュー
ル、バンクグループ,バンクの各階層へのアドレス割り
付けを示す。また、その場合の,ストライドとそれに対
するストア要求のメモリモジュール、バンクグループ,
バンクへの分散状況との関係を,図36に示す。図31
と図36の比較からわかるように、アドレスマッピング
回路62Bのアドレス変換により、ストライドが2の倍
数であれば,同じストライドに対してストア要求が送ら
れるバンクグループおよびバンクの数が増え、より高い
主記憶処理性能を得ることができる。
【0043】なお、図23と図31の比較からわかるよ
うに,主記憶装置32を構成するメモリモジュールを図
8のメモリモジュール52Aから図9のメモリモジュー
ル52Bに交換することで、同じストライドに対してス
トア要求が送られるバンクグループおよびバンクの数が
増え、より高い処理性能を持つ主記憶装置32が実現さ
れる。
【0044】図8のメモリモジュール52Aおよび図9
のメモリモジュール52Bは、ストア要求を一時的に保
持するバッファ等を備えてもよい。これにより、ストア
要求の転送先が一時的にある特定のバンクグループ82
あるいは特定のバンク72に集中しても、メモリモジュ
ール52Aまたはメモリモジュール52Bにおけるスト
ア要求の保持能力を越えない限りは、網制御装置92か
らのストア要求を抑止しないで済む。また、アドレスマ
ッピング回路62Aまたはアドレスマッピング回路62
Bでおこなうアドレス変換は、図21または図26と異
なっていてもよい。例えば,図21の3ビット排他的論
理和回路102に代えて、モジュロ8の3ビット加算器
を利用してもよい。また、図26の5ビット排他的論理
和回路103に代えて,モジュロ32の5ビット加算器
を利用してもよい。
【0045】本発明の特徴は、主記憶スキューを実現す
るためのアドレスマッピング回路を相互結合網内とメモ
リモジュール内の2箇所に設け、アドレス変換を2段階
でおこなっていることにある。これにより、メモリモジ
ュールの交換によりバンクグループおよびバンクの構成
が変わった場合でも、その新しい構成に適した主記憶ス
キューを実現し、高い主記憶性能を得ることができる。
【0046】ここで比較のために、従来の計算機システ
ムでメモリモジュールを交換することを考えてみる。図
37に示す従来の計算機システム3は、メモリモジュー
ル53がアドレスマッピング回路を持たないことと、網
制御装置93内のアドレスマッピング回路43でおこな
うアドレス変換がアドレスマッピング回路42でおこな
うアドレス変換と異なることを除いては、図7に示した
本発明の一実施例による計算機システム2と同様の構成
である。図37の計算機システム3で使われるメモリモ
ジュール53として、最初は図38に示すメモリモジュ
ール53Aを用い、のちに性能向上のために図39に示
すメモリモジュール53Bに交換するものとする。図3
8のメモリモジュール53Aは、アドレスマッピング回
路を持たず、アドレス変換をおこなわないことを除いて
は,バンクグループおよびバンクの構成などすべて図8
のメモリモジュール52Aと同様である。また、図39
のメモリモジュール53Bは,アドレスマッピング回路
を持たず,アドレス変換をおこなわないことを除いて
は、バンクグループおよびバンクの構成などすべて図9
のメモリモジュール52Bと同様である。
【0047】図40に、アドレスマッピング回路43で
おこなうアドレス変換の方法を示す。アドレスマッピン
グ回路43では、計算機システム3でメモリモジュール
53Aを用いた場合に、計算機システム2でメモリモジ
ュール52Aを用いた場合と同じアドレス割り付け、す
なわち図22のアドレス割り付けになるよう,アドレス
変換をおこなう。アドレスマッピング回路43は、モジ
ュロ4の2ビット加算器104と,排他的論理和回路1
05とを備えている。加算器104は、変換前アドレス
の第13〜14ビットと第15〜16ビットを4のモジ
ュロで加算し、その結果を変換後アドレスの第15〜1
6ビットとする。排他的論理和回路105は、変換前ア
ドレスの第0〜2ビットと第3〜5ビットと第6〜8ビ
ットと第9〜11ビットと第12〜14ビットを入力と
して、3ビット幅のビットごとに排他的論理和を取り,
その結果を変換後アドレスの第12〜14ビットとす
る。第0〜11ビットおよび第17〜19ビットについ
ては、変換前アドレスと変換後アドレスで変わらない。
計算機システム3でメモリモジュール53Aを用いた場
合のアドレス割り付けは、計算機システム2でメモリモ
ジュール52Aを用いた場合のアドレス割り付け(図2
2)と同じである。また、ストライドとそれに対するス
トア要求のメモリモジュール,バンクグループ、バンク
への分散状況との関係も,計算機システム2でメモリモ
ジュール53Aを用いた場合のもの(図23)と同じで
ある。
【0048】ここで、計算機システム3のメモリモジュ
ール53として,メモリモジュール53Bを用いた場合
を考える。この場合のアドレス割り付けを、図41ない
し図44に示す。また、本アドレス割り付けにおけるス
トライドとそれに対するストア要求のメモリモジュー
ル、バンクグループ,バンクへの分散状況との関係を,
図45に示す。図31と図45の比較からわかるよう
に、本発明による計算機システム2は従来の計算機シス
テム3と比べて、ストライドが64の倍数であれば,同
じストライドに対してストア要求が送られるバンクの数
が増え、より高い主記憶処理性能を得ることができる。
【0049】
【発明の効果】以上説明したように、本発明による計算
機システムでは,メモリモジュールの交換によりバンク
構成が変わった場合でも、その新しいバンク構成に適し
た主記憶スキューを実現することで、主記憶装置の性能
を向上させることができる。
【図面の簡単な説明】
【図1】本発明による計算機システムの要部構成を示す
ブロック図。
【図2】主記憶スキューをおこなわないインタリーブ方
式におけるアドレス割り付けを示す図。
【図3】図2のアドレス割り付けをおこなった場合の、
ストライドと,それに対するアクセス要求のバンクへの
分散状況との関係を表す図。
【図4】主記憶スキューをおこなう従来の計算機システ
ムの全体構成を示すブロック図。
【図5】図4の計算機システムで主記憶スキューをおこ
なった場合のアドレス割り付けを示す図。
【図6】図5のアドレス割り付けをおこなった場合の、
ストライドと,それに対するアクセス要求のバンクへの
分散状況との関係を表す図。
【図7】本発明の一実施例による計算機システムの全体
構成を示すブロック図。
【図8】図7の計算機システムに用いるメモリモジュー
ルの一例の構成を表すブロック図。メモリモジュールを
2バンクグループ、各バンクグループを4バンクで構成
したものである。
【図9】図7の計算機システムに用いるメモリモジュー
ルの一例の構成を表すブロック図。メモリモジュールを
8バンクグループ、各バンクグループを4バンクで構成
したものである。
【図10】図7の計算機システムのプロセッサが発行す
るアクセス要求に付随するアドレスフィールドを示す
図。
【図11】図7の計算機システムの主記憶装置を図8の
メモリモジュールで構築した場合の、プロセッサから網
制御装置に送られるストア要求に付随するアドレスフィ
ールドを示す図。
【図12】図7の計算機システムの主記憶装置を図9の
メモリモジュールで構築した場合の、プロセッサから網
制御装置に送られるストア要求に付随するアドレスフィ
ールドを示す図。
【図13】図7の計算機システムのアドレスマッピング
回路42でおこなうアドレス変換の方法を表す図。
【図14】図13のアドレス変換をおこなった場合の、
各メモリモジュールに割り付けられるアドレスを示す
図。
【図15】図14のアドレス割り付けをおこなった場合
の、ストライドと,それに対するストア要求のメモリモ
ジュールへの分散状況との関係を表す図。
【図16】図14のアドレス割り付けをおこなった場合
の、ストライドと,それに対する網制御装置の処理性能
との関係を表す図。
【図17】図13のアドレス変換をおこなわない場合
の、各メモリモジュールに割り付けられるアドレスを示
す図。
【図18】図17のアドレス割り付けをおこなった場合
の、ストライドと,それに対するストア要求のメモリモ
ジュールへの分散状況との関係を表す図。
【図19】図17のアドレス割り付けをおこなった場合
の、ストライドと,それに対する網制御装置の処理性能
との関係を表す図。
【図20】図7の計算機システムで、網制御装置からメ
モリモジュールへストア要求を転送する際の、アドレス
幅の削減方法を表す図。
【図21】図8のメモリモジュールのアドレスマッピン
グ回路62Aでおこなうアドレス変換の方法を表す図。
【図22】図7の計算機システムで図8のメモリモジュ
ール52Aを使用した場合の、アドレス割り付けを示す
図。
【図23】図22のアドレス割り付けをおこなった場合
の、ストライドとそれに対するストア要求のメモリモジ
ュール、バンクグループ,バンクへの分散状況との関係
を表す図。
【図24】図21のアドレス変換をおこなわない場合
の、アドレス割り付けを示す図。
【図25】図24のアドレス割り付けをおこなった場合
の、ストライドとそれに対するストア要求のメモリモジ
ュール、バンクグループ,バンクへの分散状況との関係
を表す図。
【図26】図9のメモリモジュールのアドレスマッピン
グ回路62Bでおこなうアドレス変換の方法を表す図。
【図27】図7の計算機システムで図9のメモリモジュ
ール52Bを使用した場合の、アドレス割り付けの一部
を示す図。
【図28】図7の計算機システムで図9のメモリモジュ
ール52Bを使用した場合の、アドレス割り付けの一部
を示す図。
【図29】図7の計算機システムで図9のメモリモジュ
ール52Bを使用した場合の、アドレス割り付けの一部
を示す図。
【図30】図7の計算機システムで図9のメモリモジュ
ール52Bを使用した場合の、アドレス割り付けの一部
を示す図。
【図31】図27〜30のアドレス割り付けをおこなっ
た場合の、ストライドとそれに対するストア要求のメモ
リモジュール、バンクグループ,バンクへの分散状況と
の関係を表す図。
【図32】図26のアドレス変換をおこなわない場合
の、アドレス割り付けの一部を示す図。
【図33】図26のアドレス変換をおこなわない場合
の、アドレス割り付けの一部を示す図。
【図34】図26のアドレス変換をおこなわない場合
の、アドレス割り付けの一部を示す図。
【図35】図26のアドレス変換をおこなわない場合
の、アドレス割り付けの一部を示す図。
【図36】図32〜35のアドレス割り付けをおこなっ
た場合の、ストライドとそれに対するストア要求のメモ
リモジュール、バンクグループ,バンクへの分散状況と
の関係を表す図。
【図37】従来の計算機システムの一例の全体構成を示
すブロック図。
【図38】図37の計算機システムに用いるメモリモジ
ュールの一例の構成を表すブロック図。メモリモジュー
ルを2バンクグループ、各バンクグループを4バンクで
構成したものである。
【図39】図37の計算機システムに用いるメモリモジ
ュールの一例の構成を表すブロック図。メモリモジュー
ルを8バンクグループ、各バンクグループを4バンクで
構成したものである。
【図40】図37の計算機システムのアドレスマッピン
グ回路43でおこなうアドレス変換の方法を表す図。
【図41】図37の計算機システムで図39のメモリモ
ジュール53Bを使用した場合の、アドレス割り付けの
一部を示す図。
【図42】図37の計算機システムで図39のメモリモ
ジュール53Bを使用した場合の、アドレス割り付けの
一部を示す図。
【図43】図37の計算機システムで図39のメモリモ
ジュール53Bを使用した場合の、アドレス割り付けの
一部を示す図。
【図44】図37の計算機システムで図39のメモリモ
ジュール53Bを使用した場合の、アドレス割り付けの
一部を示す図。
【図45】図41〜44のアドレス割り付けをおこなっ
た場合の、ストライドとそれに対するストア要求のメモ
リモジュール、バンクグループ,バンクへの分散状況と
の関係を表す図。
【符号の説明】
10 プロセッサ 20 相互結合網 30 主記憶装置 40 アドレスマッピング回路 50 メモリモジュール 60 アドレスマッピング回路。
フロントページの続き (72)発明者 玉置 由子 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 藤井 啓明 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 Fターム(参考) 5B060 HA02 HA05 HA08

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】1個または複数個のプロセッサと、複数の
    メモリジュールを含む主記憶装置と、前記プロセッサと
    前記主記憶装置の前記複数のメモリモジュールとの間を
    相互に結合する相互結合網とを備える計算機システムに
    おいて、 前記相互結合網には第1のアドレスマッピング回路を有
    し、 前記メモリモジュールの各々には第2のアドレスマッピ
    ング回路を有し、 前記第1、第2のアドレスマッピング回路の2段階でア
    ドレス変換をおこなうことを特徴とする計算機システ
    ム。
  2. 【請求項2】前記第2のアドレスマッピング回路でおこ
    なうアドレス変換が、当該メモリモジュールのバンク構
    成に適した方式でおこなわれることを特徴とする、請求
    項1記載の計算機システム。
  3. 【請求項3】前記相互結合網がバス構造であることを特
    徴とする、請求項1記載の計算機システム。
  4. 【請求項4】前記相互結合網が1段あるいは多段のスイ
    ッチ構造であることを特徴とする、請求項1記載の計算
    機システム。
JP33685898A 1998-11-27 1998-11-27 計算機システム Expired - Fee Related JP4240610B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33685898A JP4240610B2 (ja) 1998-11-27 1998-11-27 計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33685898A JP4240610B2 (ja) 1998-11-27 1998-11-27 計算機システム

Publications (2)

Publication Number Publication Date
JP2000163316A true JP2000163316A (ja) 2000-06-16
JP4240610B2 JP4240610B2 (ja) 2009-03-18

Family

ID=18303316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33685898A Expired - Fee Related JP4240610B2 (ja) 1998-11-27 1998-11-27 計算機システム

Country Status (1)

Country Link
JP (1) JP4240610B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322209A (ja) * 2004-05-06 2005-11-17 ▲萬▼國電腦股▲ふん▼有限公司 シリコン記憶媒体制御方法およびシリコン記憶媒体
JP2010073220A (ja) * 2009-12-28 2010-04-02 Sony Corp アドレス変換回路、アドレス変換方法、および演算システム
US7908453B2 (en) * 2004-06-30 2011-03-15 Fujitsu Semiconductor Limited Semiconductor device having a dynamically reconfigurable circuit configuration
JP2014534529A (ja) * 2011-10-31 2014-12-18 カビウム・インコーポレーテッド ネットワークプロセッサにおけるマルチコア相互接続
JP2015108972A (ja) * 2013-12-04 2015-06-11 富士通株式会社 演算装置、演算装置の決定方法及びプログラム
JP2017208087A (ja) * 2016-05-09 2017-11-24 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag メモリのアクセスに用いる方法及び装置
JP2018533787A (ja) * 2015-09-25 2018-11-15 クアルコム,インコーポレイテッド 統合メモリ管理ユニット(mmu)を使用したメモリ管理機能の提供
JP7386901B2 (ja) 2019-05-10 2023-11-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 高性能なベクトル処理のためのアドレス生成
JP7408954B2 (ja) 2019-09-02 2024-01-09 日本電気株式会社 メモリ制御方法、メモリ制御装置、プログラム

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322209A (ja) * 2004-05-06 2005-11-17 ▲萬▼國電腦股▲ふん▼有限公司 シリコン記憶媒体制御方法およびシリコン記憶媒体
US7908453B2 (en) * 2004-06-30 2011-03-15 Fujitsu Semiconductor Limited Semiconductor device having a dynamically reconfigurable circuit configuration
JP2010073220A (ja) * 2009-12-28 2010-04-02 Sony Corp アドレス変換回路、アドレス変換方法、および演算システム
JP2014534529A (ja) * 2011-10-31 2014-12-18 カビウム・インコーポレーテッド ネットワークプロセッサにおけるマルチコア相互接続
JP2018045700A (ja) * 2011-10-31 2018-03-22 カビウム・インコーポレーテッド ネットワークプロセッサにおけるマルチコア相互接続
JP2015108972A (ja) * 2013-12-04 2015-06-11 富士通株式会社 演算装置、演算装置の決定方法及びプログラム
JP2018533787A (ja) * 2015-09-25 2018-11-15 クアルコム,インコーポレイテッド 統合メモリ管理ユニット(mmu)を使用したメモリ管理機能の提供
JP2017208087A (ja) * 2016-05-09 2017-11-24 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag メモリのアクセスに用いる方法及び装置
US10782884B2 (en) 2016-05-09 2020-09-22 Infineon Technologies Ag Method and apparatus for use in accessing a memory
JP7386901B2 (ja) 2019-05-10 2023-11-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 高性能なベクトル処理のためのアドレス生成
JP7408954B2 (ja) 2019-09-02 2024-01-09 日本電気株式会社 メモリ制御方法、メモリ制御装置、プログラム

Also Published As

Publication number Publication date
JP4240610B2 (ja) 2009-03-18

Similar Documents

Publication Publication Date Title
JP3628706B2 (ja) メモリインタフェースユニット、共有メモリスイッチシステムおよび関連の方法
US7346750B2 (en) Memory interleave system
KR100963721B1 (ko) 메모리 시스템, 처리 시스템 및 메모리 시스템 내 사용 방법
JP2576846B2 (ja) クラスタ制御装置及びクラスタ接続多重多重プロセッシング・システム
US7369133B1 (en) Apparatus, system, and method for a partitioned memory for a graphics system
US6925520B2 (en) Self-optimizing crossbar switch
US5392443A (en) Vector processor with a memory assigned with skewed addresses adapted for concurrent fetching of a number of vector elements belonging to the same vector data
EP0503770A1 (en) Interleaved multiprocessor memory system
JPS61103258A (ja) 多重プロセッサ・システム
KR20040080431A (ko) 원격 직접 메모리 액세스 프로토콜을 갖는 통신링크의통합을 위한 방법 및 장치
US10769080B2 (en) Distributed and shared memory controller
JPH10301842A (ja) メモリ制御装置
US9335934B2 (en) Shared memory controller and method of using same
JP2000163316A (ja) 計算機システム
JP2021521529A (ja) ネットワークスイッチのキュー
US5287480A (en) Cache memory for independent parallel accessing by a plurality of processors
JP2561261B2 (ja) バッファ記憶アクセス方法
JP2002055879A (ja) マルチポートキャッシュメモリ
JPH076122A (ja) データ要求方法とその装置
CN115330587A (zh) 图形处理器的分布式存储互联结构、显卡及访存方法
JP3413843B2 (ja) ベクトルデータの要素を並列処理するベクトルプロセッサ
JP2853652B2 (ja) プロセッサ間通信におけるパケット送信方法およびその装置
JP3686795B2 (ja) アドレス生成装置、データ転送処理装置、ベクトル処理装置、ベクトル計算機、情報処理装置
JPS5858752B2 (ja) アドレス変換装置
Latif et al. An Autonomic NoC Architecture Using Heuristic Technique for Virtual-Channel Sharing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051025

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20051025

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060417

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080924

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081209

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081222

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140109

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees