JP2505021B2 - 主記憶制御装置 - Google Patents

主記憶制御装置

Info

Publication number
JP2505021B2
JP2505021B2 JP5548788A JP5548788A JP2505021B2 JP 2505021 B2 JP2505021 B2 JP 2505021B2 JP 5548788 A JP5548788 A JP 5548788A JP 5548788 A JP5548788 A JP 5548788A JP 2505021 B2 JP2505021 B2 JP 2505021B2
Authority
JP
Japan
Prior art keywords
port
priority
request
requests
main 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.)
Expired - Fee Related
Application number
JP5548788A
Other languages
English (en)
Other versions
JPH01229358A (ja
Inventor
康弘 黒田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5548788A priority Critical patent/JP2505021B2/ja
Publication of JPH01229358A publication Critical patent/JPH01229358A/ja
Application granted granted Critical
Publication of JP2505021B2 publication Critical patent/JP2505021B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 〔概要〕 主記憶装置を共有する複数の処理装置からの主記憶装
置に対するアクセス要求を制御する主記憶制御装置に関
し, バンクビジーチェックおよびプライオリティ回路のハ
ードウェア量を減少させ,かつスループットの低下を防
ぐことができる手段を提供することを目的とし, 接続されるN台の処理装置からのリクエストの1つを
選択するセレクタと,Nより小さくかつ2以上の数である
M個のバンクビジーチェックおよびプライオリティ制御
用のポートとを備え,前記セレクタで選択されたリクエ
ストを,前記ポートの状態に応じて,その1つにセット
することにより,リクエストを複数のポートにフローテ
ィングにセットするように構成する。
〔産業上の利用分野〕
本発明は,主記憶装置を共有する複数の処理装置から
の主記憶装置に対するアクセス要求を制御する主記憶制
御装置に関する。
〔従来の技術〕
第7図および第8図は,それぞれ従来方式の例を示
す。図中,12−0〜12−3は各処理装置からのリクエス
ト情報がセットされるリクエストレジスタ,16はバンク
ビジーチェックおよびプライオリティ回路,20はベクト
ルユニット用のポート,22は制御パイプライン,30,30−
0,30−1はプライオリティポート,31はセレクタ,32はリ
クエストセレクト制御回路,33はセレクタを表す。
第7図に示す主記憶制御装置の例では,ベクトルユニ
ット用の4個のプライオリティポート20と,その他の各
処理装置対応に個別にプライオリティポート30−0,30−
1,…を用意し,これらのポートにセットされたリクエス
トを,すべてバンクビジーチェックおよびプライオリテ
ィ回路16へ送り,バンクビジーチェックおよびプライオ
リティ回路16により,バンクビジーチェックやプライオ
リティ制御等を行い,その結果によって,1つのリクエス
トを,セレクタ31によって選択して,制御パイプライン
22へ送る。なお,R0ないしR7は各ポートに対するリリー
ス信号である。
第8図に示す主記憶制御装置の例では,ベクトルユニ
ット以外の処理装置に対するプライオリティポートを,
ポート30として1つにまとめ,各処理装置からリクエス
トレジスタ12−0等にリクエストがセットされると,リ
クエストセレクト制御回路32により,その1つの取り上
げ,ポート30にセットする。そして,バンクビジーチェ
ックおよびプライオリティ回路16によるセレクト信号に
より,セレクタ31によって,ポート30またはポート20の
1つのリクエストを選択し,制御パイプライン22へ送
る。空きになったポートは,ポートリリース信号RAまた
はRV0〜RV3によって解放される。
〔発明が解決しようとする課題〕
複数の処理装置が接続される主記憶制御装置を,第7
図に示すように,処理装置毎にプライオリティポートを
持つような構成とした場合,ポート間のプライオリティ
をとるときに,多数のポートを同時にチェックしなけれ
ばならないため,プライオリティ回路が非常に複雑にな
り,また,主記憶装置のバンクビジーチェックも,全ポ
ートについて同時にチェックしなければならないため,
そのハードウェア量が膨大になる。
そこで,第8図に示すように,ベクトルユニットのよ
うな高いスループットが要求される装置以外の通常の処
理装置からのリクエストを選択して,1つのプライオリテ
ィポート30にセットするような構成にすることがある。
しかし,第8図に示すような構成にした場合,プライ
オリティポート30が複数の装置に対して1つしかないた
め,1つのリクエストがバンクビジー等により,ポートで
長時間待たされると,ポートを共有する他の処理装置か
らのリクエストも,ポートが空かないため同様に待たさ
れることになる。このとき,ポートが空かないために待
たされたりリクエストに,他に待たされる要因がないと
すれば,そのリクエストを発行した装置から見ると,第
7図に示す構成に比べて,主記憶アクセス時間が長くな
ったように見えるため,スループットが低下するという
問題がある。
本発明は上記問題点の解決を図り,バンクビジーチェ
ックおよびプライオリティ回路のハードウェア量を減少
させ,かつスループットの低下を防ぐことができる手段
を提供することを目的とする。
〔課題を解決するための手段〕
第1図は本発明の原理ブロック図である。
第1図において,10−0〜10−nは主記憶装置に対す
るアクセス要求を出す中央処理装置(CPU)や入出力処
理装置(IOP)等の処理装置,11は主記憶制御装置,12−
0〜12−nは各処理装置からのリクエストがセットされ
るリクエストレジスタ,13はリクエストを選択する制御
を行うリクエストセレクト制御回路,14はリクエストの
1つを選択するセレクタ,15−0〜15−mはバンクビジ
ーチェックおよびプライオリティ制御用のプライオリテ
ィポート,16はバンクビジーチェックおよびプライオリ
ティ回路,17は主記憶装置である。また,RA0〜RAmは各プ
ライオリティポートを解放するポートリリース信号を表
す。
セレクタ14は,N台の処理装置10−0〜10−nからのリ
クエストの1つを選択し,空いているプライオリティポ
ート15−0〜15−mの1つに供給する。プライオリティ
ポートは,本発明では,Nより小さくかつ2以上のM個用
意されている。空いているプライオリティポートが複数
あれば,その中のどれにリクエストをセットしてもよ
い。
バンクビジーチェックおよびプライオリティ回路16
は,プライオリティポート15−0〜15−mにセットされ
たリクエストについて,バンクビジーチェックおよびプ
ライオリティ制御を行う。そして,処理済みとなったリ
クエストを保持するプライオリティポート15−0〜15−
mおよびリクエストセレクト制御回路13に対し,ポート
リリース信号を送出する。
〔作用〕
N台の処理装置からのリクエストを,セレクタ14によ
ってセレクトした後,例えば2個のプライオリティポー
トにフローティングにセットするポート構成をとる。す
なわち,各処理装置と各プライオリティポートとの関係
を,予め固定的に定めないで,各処理装置からのリクエ
ストを,空いているプライオリティポートの1つにセッ
トするようにする。
この場合,N台の処理装置に対して,2個のプライオリテ
ィポートを持つことになるため,1つのポートのリクエス
トが,バンクビジー等により,ポートに保持されたまま
長時間待たされても,他の処理装置からのリクエスト
は,もう一方のプライオリティポートを利用することが
できる。そのため,ポートを共有する装置間で,リクエ
ストの追い越しが可能になる。従って,第8図に示した
ような構成に比べて,ポートが空かないことによる待ち
時間を減少させることができる。
また,第7図に示すような構成に比べて,ポート数が
少ないため,プライオリティ回路が簡単になり,バンク
ビジーチェック回路のハードウェア量についても減少さ
せることができる。
なお,多数の処理装置に接続される主記憶制御装置で
は,処理装置を数装置ずつグループ化し,その各グルー
プに対して,本発明を適用してもよい。
〔実施例〕
第2図は本発明の一実施例,第3図は本発明の一実施
例に係るプライオリティポートの回路例,第4図は本発
明の一実施例に係るリクエストセレクト制御回路の例,
第5図は本発明の一実施例と従来例とを比較するための
タイムチャート,第6図は本発明の他の一実施例を示
す。
第2図において,第1図と同符号のものは第1図に示
すものに対応し,20はベクトルユニット用のプライオリ
ティポート,21はセレクタ,22は制御パイプライン,RA0,R
A1,RV0〜RV3はポートリリース信号,S0〜S3はセレクト信
号を表す。
処理装置(0)〜(3)からのリクエストは,一旦,
装置毎に1つずつあるリクエストレジスタ12−0〜12−
3にそれぞれセットされる。リクエストの内容は,有効
ビット,オペコードおよびアドレスである。
リクエストセレクト制御回路13は,リクエストレジス
タの有効ビットが“有効”になっているリクエストの1
つを選択するセレクト信号S0〜S3を,セレクタ14に対し
て送出し,セレクタ14は,そのリクセストを選択する。
なお,このとき,どの処理装置からのリクエストである
かを識別するための装置IDを,リクエストに付加する。
もし,接続されているリクエストレジスタ12−0等
に,1つもリクエストがないか,プライオリティポートに
空きがなければ,セレクタ14の有効ビット出力をオフに
する。また,2以上のリクエストがある場合には,各処理
装置毎に定められた優先順位により,1つをセレクトする
ものとする。この優先順位は,どのように与えてもよ
い。このとき,セレクトされなかったほうのリクエスト
は,そのままリクエストレジスタに保持される。
セレクタ14によりセレクトされたリクエストは,2つの
プライオリティポート15−0,15−1の状態により,その
どちらか一方にセットされる。片方のみ空きならば,そ
の空きのポートへセットされ,両方とも空いていれば,
例えばプライオリティポート15−0へセットされる。
ベクトルユニットのような高スループットが要求され
る処理装置(4)からのリクエストは,そのままポート
(PV0〜PV3)20にセットされる。
各ポート15−0,15−1,20にセットされたリクエスト
は,アドレスから求められる主記憶のバンクがビジーで
あるかどうかチェックされ,ビジーならば,ポートリリ
ース信号RA0,RA1,RV0〜RV3がオンにならないため,ポー
トに保持されたままとなる。もし,ビジーでなければ,
他ポートとの優先順位により,ポートリリース信号がオ
ンになるかどうかが定まる。すなわち,他ポートに有効
かつビジーでないリクエストが1つもないならば,ポー
トリリース信号はオンとなるが,2つ以上のポートに有効
かつビジーでないリクエストがあれば,優先順位の高い
ポートのポートリリース信号のみがオンとなる。
このとき,セレクタ21は,ポートリリース信号がオン
になったポートをセレクトし,リクエストを制御パイプ
ライン22を介して主記憶装置へ送る。制御パイプライン
22は,ポートリリース信号と装置IDにより,主記憶装置
からのリードデータを各処理装置へ転送するときの制御
またはライトリクエストの完了を各処理装置へ通知する
制御を行う。また,ライトリクエストのときは,主記憶
装置へのライトデータの選択もあわせて行う。
バンクビジーチェックおよびプライオリティ回路16
は,ポートリリース信号がオンになったとき,そのリク
エストに対応するバンクを所定の時間(主記憶のアクセ
ス時間により定まる時間),ビジーにする。
第3図は,第2図に示すプライオリティポート(ポー
トA0,ポートA1)の回路例である。第3図において,V0,V
1はそれぞれポートA0,ポートA1の有効ビットを示すフリ
ップフロップであり,RA0,RA1はそれぞれポートA0,ポー
トA1のリリース信号であり,D0,D1はポートA0,ポートA1
のオペコード等が格納されるデータレジスタである。ま
た,Viは第2図に示すセレクタ14から送られてくるリク
エストの有効信号,Aiはセレクタ14から送られてくるリ
クエストデータである。このリクエストデータには,オ
ペコード,アドレス,装置IDが含まれる。
セレクタ14から送られてきたリクエストは,V0,V1,R
A0,RA1により,以下のようにセットされる。V0,V1が共
にオフならば,ポートA0側にセットされ,フリップフロ
ップV0がオンになる。このときリクエストデータは,ポ
ートA1側のレジストD1にも入力されるが,V1がオンにな
らないため,意味を持たない。
フリップフロップV0,V1の一方のみがオンならば,V0,V
1がオフのポート側にリクエストがセットされる。
V0,V1が共にオンのときは,RA0またはRA1がオン(RA0
およびRA1が同時にオンになることはない)のポートに
リクエストがセットされる。ただし,V0,V1が共にオン
で,RA0,RA1が共にオフのときは,Viがオンにならない
(セレクタ14から有効なリクエストが送られてこない)
ように,第2図に示すリクエストセレクト制御回路13が
制御する。
第4図は,第2図に示すリクエストセレクト制御回路
13およびリクエストレジスタ12−0〜12−3の有効ビッ
トの部分の回路を示したものである。
第4図において,B0〜B3は各リクエストレジスタの有
効ビットを保持するもので,SRフリップフロップで構成
される。SR0〜SR3は,各処理装置から送られてくるリク
エストセット信号で,フリップフロップB0〜B1をオンに
すると共に,リクエストデータをリクエストレジスタに
セットする。
B0〜B3がオンになると,第2図に示すセレクタ14を通
り,ポートA0またはポートA1にリクエストがセットされ
るまでの間,オンを維持する。その間,リクエストレジ
スタにあるリクエストは有効である。B0〜B3は,セレク
タ14のセレクタ信号S0〜S3により,リセットされる。
各処理装置は,SR0〜SR3をオンにした後,対応するB0
〜B3がオフになるまで,次のリクエストを発信してはな
らない。これを保証するためには,B0〜B3の状態を各処
理装置へ送る必要があるが,スループットが低くてもよ
い処理装置では,制御パイプラインから送られてくるラ
イトリクエストの完了通知またはリードデータの受信後
に次のリクエストを発信すことで代用するこができる。
第4図に示すCは,ポートA0,A1にリクエストがいく
つあるかを示すもので,このレジスタの値が“0"か“1"
ならば,ポートリリース信号RA0またはRA1に関係なく,
セレクタ出力の有効信号Viをオンにすることができる。
Cが“2"ならば,RA0またはRA1がオンでなければ,Viをオ
ンにしてはならない。
CTRは,レジスタCの±1を行う回路で,CMがオンのと
き−1,CPがオンのとき+1,共にオフのときは,レジスタ
Cの値をそのまま出力する。なお,CM,CPが共にオンにな
ることはない。decはデコーダで,Cの値により,C0〜C2
オンになる。この例では,リクエストレジスタの優先順
位を固定的に定め,レジスタ番号が小さいほど優先順位
が高いものとしている。ポートへ送るリクエストに付加
する処理装置を識別するための装置IDは,セレクタ14の
セレクト信号S0〜S3をエンコードすることにより得るこ
とができる。
第5図(イ)および(ロ)は,第2図に示す実施例の
動作と,第8図に示す従来例の動作とを比較するための
タイムチャートである。
今,処理装置(0)〜(2)から同時にリクエストレ
ジスタにリクエストがセットされたとする。このうち,
処理装置(0),(1)からのリクエストは,同一バン
クXに対するリクエストであり,処理装置(2)からの
リクエストはバンクYをアクセスするリクエストである
とする。また,リクエストセレクト制御における優先順
位は,レジスタ番号の小さい順に高いものとする。バッ
クビジー時間は,ここでは4τである。
第5図(イ)と(ロ)とを比べてみるとわかるよう
に,リクエストレジスタ(2)にあるバンクYに対する
リクエストの保持時間が,第5図(ロ)に示す従来例の
ほうが,第5図(イ)に示す本発明の実施例よりも,4τ
時間長くなっている。
これは,第5図(ロ)の場合,リクエストレジスタ
(1)からのリクエストが,ポートAでバンクXがビジ
ーのためにリリースされず,ポートAが空かないので、
リクエストレジスタ(2)がセレクトされなかったため
である。処理装置(2)にとっては,主記憶アクセス時
間が長くなったように見える。
一方,第5図(イ)に示す本実施例では,ポートが
A0,A1の2つになっているため,リクエストレジスタ
(1)からのリクエストがポートA1に保持されたままに
なっていても,ポートA0が空いているために,リクエス
トレジスタ(2)のバンクYに対するリクエストは,ポ
ートA0にセットされ,先にリリースされる。すなわち,
リクエストレジスタ(2)からのリクエストが,リクエ
ストレジスタ(1)からのリクエストを追い越したこと
になる。従って,処理装置(2)にとっては,従来例に
比べて主記憶アクセス時間が4τ短く見えることにな
る。
第6図は,主記憶制御装置11に接続される処理装置が
多数ある場合の本発明の一実施例を示している。フロー
ティングにしているプライオリティポートの数が多くな
ると,その制御が複雑になる。そこで,主記憶制御装置
11に接続する処理装置を,ある台数毎にグループ化し,
その各グループにプライオリティポートを2個ずつ割り
当てて,各グループ毎に,2個のプライオリティポートを
共有するようにしている。
第6図の例では,処理装置(0)から(k)までをA
グループとし,処理装置(k+1)から(n)までをB
グループとして,それぞれセレクタ14A,14Bと,プライ
オリティポート15−0,15−1およびプライオリティポー
ト15−2,15−3を設けている。
なお,ポート数とプライオリティ回路の複雑さの関係
は以下の通りである。
ここで,Viは,i番目のポートにバンクビジーでないリ
クエストが存在することを示し,Piは,i番目のポートの
優先順位を示すもととする。優先順位は,順が大きい方
が順位が高いとする。
例えば,第0番目のポートのリリース条件は,V0
“1で,かつP0がkであるときに,kより大きいPi(ただ
しi≠0)でそのViが“1"であるものが存在しないこと
である。これを論理式で書き表すと明らかなように,ポ
ート数が増えると,式が急激に複雑化する。そのため,
プライオリティ回路は複雑になる。
〔発明の効果〕
以上説明したように,本発明によれば,各処理装置毎
にプライオリティポートを用意する場合に比べて,ポー
ト数が少ないため,プライオリティ回路が簡単になり,
またバンクビジーチェック回路のバードウェア量も減ら
すことができる。一方,複数の処理装置で1個のポート
を共有する場合に比べて,ポートを共有する処理装置間
でリクエストの追い越しが可能になるため,スプープッ
トを高くすることができる。
【図面の簡単な説明】 第1図は本発明の原理ブロック図, 第2図は本発明の一実施例, 第3図は本発明の一実施例に係るプライオリティポート
の回路例, 第4図は本発明の一実施例に係るリクエストセレクト制
御回路の例, 第5図は本発明の一実施例と従来例とを比較するための
タイムチャート, 第6図は本発明の他の一実施例, 第7図および第8図は従来方式の例を示す。 図中,10−0〜10−nは処理装置,11は主記憶制御装置,1
2−0〜12−nはリクエストレジスタ,13はリクエストセ
レクト制御回路,14はセレクタ,15−0〜15−mはプライ
オリティポート,16はバンクビジーチェックおよびプラ
イオリティ回路,17は主記憶装置を表す。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】N台の処理装置(10−0,…10−n)に接続
    され,各処理装置からの主記憶アクセスのリクエストに
    対してバンクビジーのチェックと主記憶装置へ送るリク
    エストのプライオリティ制御を行うバンクビジーチェッ
    クおよびプライオリティ回路(16)を備えた主記憶制御
    装置(11)において, 前記処理装置からの主記憶アクセスのリクエストを保持
    する,Nより小さくかつ2以上の数であるM個のポートで
    あって,前記バンクビジーチェックおよびプライオリテ
    ィ回路におけるバンクビジーチェックおよびプライオリ
    ティ制御の対象となるリクエストを各々保持するポート
    (15−0,…15−m)と, 前記ポートに空きがあり,かつ前記処理装置から主記憶
    アクセスのリクエストがある場合に,その主記憶アクセ
    スのリクエストの1つを前記処理装置ごとに定められた
    優先順位に従い選択して,前記空いているポートに設定
    する回路(13,14)とを備え, 前記バンクビジーチェックおよびプライオリティ回路
    は,前記複数のポートに設定されたリクエストを入力
    し,バンクビジーのチェックを行い,バンクビジーでな
    いリクエストが複数ある場合に所定のポートの優先順位
    に従って主記憶装置へ送るリクエストを選択するプライ
    オリティ制御を行うように構成されている ことを特徴とする主記憶制御装置。
JP5548788A 1988-03-09 1988-03-09 主記憶制御装置 Expired - Fee Related JP2505021B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5548788A JP2505021B2 (ja) 1988-03-09 1988-03-09 主記憶制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5548788A JP2505021B2 (ja) 1988-03-09 1988-03-09 主記憶制御装置

Publications (2)

Publication Number Publication Date
JPH01229358A JPH01229358A (ja) 1989-09-13
JP2505021B2 true JP2505021B2 (ja) 1996-06-05

Family

ID=12999985

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5548788A Expired - Fee Related JP2505021B2 (ja) 1988-03-09 1988-03-09 主記憶制御装置

Country Status (1)

Country Link
JP (1) JP2505021B2 (ja)

Also Published As

Publication number Publication date
JPH01229358A (ja) 1989-09-13

Similar Documents

Publication Publication Date Title
US7350006B2 (en) System and method of interrupt handling
US5463741A (en) Duplicated logic and interconnection system for arbitration among multiple information processors
US3447135A (en) Peripheral data exchange
US4412286A (en) Tightly coupled multiple instruction multiple data computer system
EP1345125A2 (en) Dynamic random access memory system with bank conflict avoidance feature
GB1568312A (en) Memory access control apparatus
WO1991020041A1 (en) Multiple request toggling priority arbitration system
US5371893A (en) Look-ahead priority arbitration system and method
CA2478570A1 (en) Data processing apparatus and system and method for controlling memory access
US4151598A (en) Priority assignment apparatus for use in a memory controller
JPS6217876Y2 (ja)
JP2561261B2 (ja) バッファ記憶アクセス方法
EP0374337B1 (en) Load balancing technique in shared memory with distributed structure
JPH0628247A (ja) 動的に再配置されるメモリバンク待ち行列
US6282144B1 (en) Multi-ported memory with asynchronous and synchronous protocol
JPH08235143A (ja) クラスタ構成の並列計算機
EP0081358B1 (en) Data processing system providing improved data transfer between modules
JP2505021B2 (ja) 主記憶制御装置
JPH05233560A (ja) 多重プロセッサ回路用プロセッサ間連絡システムおよびその方法
US20050223129A1 (en) Arbitration of data transfer requests
JPH0330175B2 (ja)
US20100138618A1 (en) Priority Encoders
JP3323142B2 (ja) クロスバ装置、多段クロスバ装置及び情報処理装置
JPS6125178B2 (ja)
JP2731743B2 (ja) 通信レジスタ付並列計算機

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees