JPH021044A - メモリアクセス制御方法 - Google Patents

メモリアクセス制御方法

Info

Publication number
JPH021044A
JPH021044A JP15469188A JP15469188A JPH021044A JP H021044 A JPH021044 A JP H021044A JP 15469188 A JP15469188 A JP 15469188A JP 15469188 A JP15469188 A JP 15469188A JP H021044 A JPH021044 A JP H021044A
Authority
JP
Japan
Prior art keywords
bus
request
memory access
signal
queue
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
JP15469188A
Other languages
English (en)
Other versions
JP2718702B2 (ja
Inventor
Takeshi Aimoto
毅 相本
Akira Ishiyama
明 石山
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 JP15469188A priority Critical patent/JP2718702B2/ja
Publication of JPH021044A publication Critical patent/JPH021044A/ja
Application granted granted Critical
Publication of JP2718702B2 publication Critical patent/JP2718702B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はメモリアクセス制御方式に関し、特に命令処理
装置や入出力処理装置、記憶制御装置がバス形式で接続
された情報処理装置のメモリスループットを高めるのに
好適な、メモリアクセス制御方式に関する。
〔従来の技術〕
まずメモリアクセスの要求元となる命令処理装置や入出
力処理袋R(以下、これらを総称してリクエスタとio
う)と、記憶制御装置とがバス形式で接続された情報処
理装置におけるメモリアクセス手順について述べる。
第2図(a)は従来のメモリアクセス手順におけるリー
ド要求の手順を示したものである。リクエスタは、バス
アクセス権の仲裁を行うバスアービタにバス権要求(B
USREQ)信号を送る。これを受けたバスアービタは
バスの空きを待ち、複数のリクエスタからのBUSRE
Q信号の中から、予め決められた優先順位に従って、1
つのリクエスタにバス権要求受付(BUSACP)信号
を送る。 BUSACP信号を受信したリクエスタは、
バスにメモリアクセス要求の詳細情報として、例えば、
メモリアドレス(SAB) 、リード要求かライト要求
かの区別信号、データ長、ライト要求の場合はライトデ
ータ等を送出する。記憶制御装置ff(以下、rscU
Jという、)ここでは4ウエハー・インタリーヴ構成を
仮定する)はバスから上述の詳細情報を受信し、Way
O〜3においてメモリアクセス手順を起動する。メモリ
アクセス手順が終了すると、SCUはバスに、終了通知
信号と終了の詳細情報を送出し、リクエスタはこれを受
信する。詳細情報は、例えば、リード要求の場合はリー
ドデータ(SDRバス上のDo”Ds)等である。
第2図(a)の破線で示すSABは1次に処理されるリ
ード要求を示している。従来のSCUは、バス仲裁が終
了して一つのリクエスタがバス権を獲得すると、そのメ
モリ読出しまたは書込みが完了するまでバス権を放さず
1次のアクセス要求は受付けられなかった。このように
、バス転送の最初からバス転送の結果を返すまで、バス
の専有を続けることが、メモリスループット向上を阻み
、また、装置全体の性能向上のネックとなっていた。
上述の如き欠点を除去し、第2図(b)の破線で示すタ
イミングで次要求を処理する方式るものとして、特開昭
55−97655号公報「メモリアクセス方式」に開示
された技術が知られている。この技術は、SCUとリク
エスタ内部に、それぞれ、複数個のバッファを持ち、こ
れにバスアクセス情報を保持し、SCUがメモリアクセ
スを行っている間に、次のリクエストを受付は可能にし
ようとするものである。
〔発明が解決しようとする課題〕
しかしながら、上記従来技術は、SCUがメモリアクセ
スを行っている間に、どのような機構で次のリクエスト
を受付けるかを明示しておらず、特に、SCUと複数の
リクエスタ間がバス形式で結合されている場合に必要と
されるバス権の仲裁については解決されていないため、
バス形式で結合されている情報処理装置のメモリスルー
ブツトの向上には適用できない。
本発明は上記事情に鑑みてなされたもので、その目的と
するところは、従来のメモリアクセス制御方式における
上述の如き問題を解消し、前述のSCUやCPUがバス
形式で結合されている情報処理装置のメモリスルーブツ
トを向上させることを可能とするメモリアクセス制御方
式を提供することにある。
(8題を解決するための手段〕 本発明の上述の目的は、命令処理装置または入出力処理
装置等のリクエスタと記憶制御装置がバス形式で結合さ
れ、バスアービタにより前記各装置間におけるバス権の
受授を行う情報処理装置において、前記記憶制御装置内
のメモリアクセス回路とバスインターフェース回路との
間に、バッファ(該バスインタフェース回路で受付けた
メモリアクセス要求とメモリアクセス制御の間のメモリ
アクセス待ちバッファ、及び、メモリアクセス回路で処
理されリクエスタへの転送待ちのメモリアクセス要求と
バスインタフェースとの間のバス出力待ちバッファ)を
設けて、該バス出力待ちバッファ内にリクエストが存在
する場合には、該バス出力待ちバッファから前記バスア
ービタへ、前記リクエスタから前記バスアービタへのバ
ス権要求とは別のバス権要求を出力し、前記バスアービ
タはこれらバス権要求に基づきバス権受授を行う如く構
成したことを特徴とするメモリアクセス制御方式によっ
て達成される。
また、前記バス権要求に、バス使用サイクル数を示す信
号、および、バス使用形態を示す信号を付加することも
次リクエストを早いタイミングで受付はバススループッ
トを向上する上で有効である。
又、バスの制御信号を要求転送用と結果転送用の2系統
設けることもパススループットを向上する上で有効であ
る。
〔作用〕
上述のバッファは、メモリアクセス待ちまたはバス出力
待ちのリクエスト用のバッファである。
このバッファにより、先行リクエストによりメモリがア
クセス中である場合やバスが使用中である場合に、この
バッファを利用してリクエストの進行を待たせ、メモリ
アクセスやバス転送を独立のステージとして動かすこと
が可能になる。
さらに、上記リクエスタからバスアービタへのバス権要
求とは別にバス出力待ちバッファからのバス権要求を設
け、記憶制御装置内のバス出力待ちバッファにリクエス
トが存在する場合には、記憶制御装置からバスアービタ
ヘバス権要求を送り、バスアービタが記憶制御装置から
のバス権要求と。
他のバス権要求とを選択して、バス終了通知信号送出の
ためのバス権を得るようにしている。これにより、メモ
リアクセス中に次のリクエストが受付けられ、また、終
了通知信号を送出している間に次のメモリアクセスが開
始され、メモリアクセス時間ピッチ(または、バス転送
サイクルピッチ)で、メモリアクセス要求が処理される
ことになる。
この結果、スループットが大幅に向上する。
また、前記バス権要求に、バス使用サイクル数の信号、
および、バス使用形態を示す信号を付加することにより
、バスアービタは、リクエスタから使用バスタイブと使
用バスサイクル数を通知されるので、これに基づいてバ
スアービトレーションを行うことができ、バスの空きを
リクエスト受付時点で予測することが可能となり、次の
リクエストに対して予測した空きサイクルに対応したB
USACP信号を送ることができる。これにより、バス
スルーブツトがさらに向上する。
なお、上記作用を生むための最も不可欠なものは記憶制
御装置内からのバス権要求信号であり。
これによりバスサイクルとメモリサイクルのステージを
分割することが可能となった。バッファはこのステージ
の動作タイミングをフレキシブルにする働きを持つもの
として重要である。
〔実施例〕
以下、本発明の実施例を図面に基づいて詳細に説明する
第3図は、本発明の一実施例を示す情報処理装置のブロ
ック構成図である0本実施例に示す情報処理装置は、マ
ルチプロセッサ構成を採用しており、2個の命令処理装
置 (I Po)10−a。
(IPx)10−b、2個の入出力処理装置(IOPo
)10−c、(IOPl)10−d、1個の記憶制御袋
[(SCU)100および1個のRAM(RAM)30
を、Sバス300により結合することで、基本処理装置
ff (BPU)20が構成されている。
命令処理袋!(IPo)10−aと(IPt)10−b
、入出力処理袋R(IOPo)10−aと(IOPr)
10−d、及びSCU100内のバスリクエスタ(リク
エスト管理50o)はSバス300のバス権が必要にな
ると、バス権要求信号(BUSREQ)12−a 〜1
2d、  12−r(後述)を、バスアービタ200に
送る。バスアービタ200はここではSCU100の内
部に実現されている。バスアービタ200は、バスの空
きを待ち、バス空きサイクルに対応した時点で最も優先
順位の高いリクエストを受付ける。バス権を得たリクエ
スタは。
S/<ス300を用いて、リクエスト(アドレス。
ライトデータまたはリードライトの別等の詳細情報)を
送出する。
BPU20(7)主記憶であるR、AM30は、4ウエ
ー・インタリーヴ構成で連続アドレスで番地付けされて
いる。 5cutooは、リクエストアドレスが自SC
Uのアドレス実装範囲か否かチエツクし、アドレス範囲
が適合したリクエストのみを受付ける。
第1図に5CU100の構成の1例を示す、第1図の実
施例においては、メモリアクセス制御部700−〇〜3
およびRAM30−0〜3は、4つ存在し、4Wayイ
ンタリーヴとして並列に動作する。
第2図および第5図に示すSCUのWayO〜3は、上
記RAM30−0〜3へのアクセスが並列に行われてい
ることを示す6本実施における5CU100は。
バス権仲裁を行なうバスアービタ200、Sバス300
とのインタフェースを行なうバスインタフェース400
,4ウエハ・インタリーブに分解されたリクエストの同
期をとるリクエスト管理部500、各ウェイ毎のリクエ
スト(以後、キューと称す)のバッファであるキュー管
理部600−0〜600−3、および各ウェイ毎のメモ
リアクセスを行なうメモリアクセス制御部700−0〜
700−3からなるLSIとして示される。但し、各構
成要素のうちの1部、例えば、バスアービタ200をL
SIの外に出してもよい。
第1図の5CU100の詳細説明の前に、第4図を参照
して、Sバスおよびバス権受授信号について説明する。
これらのインタフェース信号は、リクエスタ10−i 
(i=a、b、c、d、以下、同様)と、後述するリク
エスト管理500と、SCU100内のバスアービタと
の間で定義されている。リクエスタ10−iは、バスリ
クエスタブロック(B R)8−iやバスインタフェー
スブロック(BI)6−1等を持つ6 まず、バス権受授信号群を説明する。Aス権要求信号(
BUSREQi”r) 12− i −rは、ノ(ス権
要求が存在すること、およびその詳細情報(すなわち、
要求バスタイブ信号(OUSTYPi”r) 14− 
i〜rと要求バス使用サイクル数信号(BUSCNTi
”r)16− i = r上の情報)が有効であること
を示す。
要求バスタイブ信号(BUSTYPi=r) 14− 
i = rは、バスリクエストが、データバス5DB3
20を使用するか否かを示す、データバス5DB320
を使用する場合はライ1〜要求、使用しない場合はリー
ド要求である。要求バス使用サイクル数信号(BUSC
NTi〜r)16−i=rは、データバス5Dr332
0の使用サイクル数を示す。
バスアービタ200は、これらのバス権要求信号を受け
、バスの使用状態とリクエストの優先順位に応じて、バ
ス権要求を受付はバス権要求受付信号(BUSACPi
=r) 20− i ” rをリクエスタ10−1に返
す。
バス権要求が受付けられると、Sバス300を使用して
リクエスト情報が転送される0本実施例においては、S
バス300の使用形態をメモリアクセス要求転送とメモ
リアクセス結果転送とに分類するが、以下の説明では前
者をスタート系バス手順、後者をエンド系バス手順と呼
ぶ、Sバス300は、スタート系バス手順を制御するス
タート系制御信号群302と、エンド系バス手順を制御
するエンド系制御信号群304と、上記アドレスバス5
AB310およびデータバス5DB320、フラグバス
5FB322から構成されている。なお、5FB322
は、データバス5DB320の補助情報で、5DB32
0の4バイトのうちのどのバイトに有効なデータが乗っ
ているかを示す信号である。
スタート系バス手順には、リード要求転送とライト要求
転送がある。リード要求転送の場合は。
リードアドレスをアドレスバス5AB310により転送
し、同時に、スタート系制御信号群302により。
リクエストの詳細情報を転送する。ライト要求転送の場
合は、ライトアドレス、ライトデータをアドレスバス5
AB310、データバス5DB320により転送し、同
時に、スタート系制御信号群302により、リクエスト
の詳細情報を転送する。
スタート系と同様に、エンド系バス手順はリード結果転
送とライト結果転送がある。リード結果転送の場合は、
リードデータをデータバス5DB320により転送し、
同時に、エンド系制御信号群304により、リクエスト
の詳細情報を転送する。ライト結果転送の場合は、エン
ド系制御信号群304により、リクエストの詳細情報の
みを転送する。
上記スタート系制御信号群302.の構成は、スタート
系信号群に有効な情報が乗っているか否かを示すコマン
ド信号BSACT330、リード要求かライト要求かの
別を示すBSRD332 、通常のリードまたはライト
要求か、その他のバス使用要求かの別を示すタイプ信号
BSTYP334、データバス使用サイクル数を示すB
SCNT336、リクエスト元ユニットを識別するBS
UNT338リクエスト元リクエストチェック番号BS
CHK340により構成されている。BSLINT33
8゜BSCHK340はリクエスト付随の情報で、SC
Uで処理が終了すると、終了転送の際のエンド系制御情
報群中の同様の信号(後記BEUNT、 BECHK)
上に送出され、リクエスト元はBEUNTに基づき終了
通知が自装置に対するものか否か、及びB E CHK
に基づき自装置が出した複数の未確認のリクエストの内
どのリクエストに対するエンド通知かを認識させる。リ
クエスト10−1のバスインタフェース6−iは、BE
UNTが自装置の番号と一致する場合、終了通知を取込
む。
次に、エンド系制御信号群302は、エンド系信号群に
有効な情報が乗っているか否かを示すコマンド信号BE
ACT350、リード要求かライト要求かの別を示すB
ERD352 、データバス使用サイクル数を示すBE
CNT354、リクエスト元ユニットを示すBEUNT
356. BEC1lK358により構成されている。
第5図に、第4図で説明したSバス300およびバス権
受授信号のタイミング関係を示す。リードの場合、ライ
トの場合それぞれ、スタート系バス手順により5CLI
100にリクエストを転送し、5CU100でRAM3
0に対するリードまたはライトが行われ、エンド系バス
手順によりリクエスト元へ、リクエストの結果(リード
データ、ライト終了通知等)が転送されて終了する。
第5図(a)に示すリードの場合は、スタート系バス手
順では、バス権を獲得したリクエスタが、スタート系制
御信号群(BSACT330で示した)とアドレス(S
AB310)を送出する。また、エンド系バス手順では
、5CU100内の処理(リード)が一定のところまで
進行するとバスアービタ200に対し、バスリクエスト
信号BUSREQr12−rを送り、バス権を獲得した
後、SCU100がエンド系制御信号群(BEACT3
50で示した)とデータ (SDB320)を送出する
第5図(b)に示すライトの場合は、スタート系バス手
順では、リクエスタがスタート系制御信号群とアドレス
(SAB310)とデータ(SDB320)を送出する
。また、エンド系バス手順では、5CU100がエンド
系制御信号群を送出する。
第4図のバスアービタ200は、リクエスト10− i
  (i = a ” d、以下、同様)やリクエスト
管理部500からのバス権要求信号(BLISREQi
)12− i 、  (BUSREQr) 12− r
及び他の信号(BUSTYPi、 BUSTYPr、 
BUSCNTi、 R11SCNTr)を受けて、バス
アービトレーションを行い、受付けたリクエスト元に対
し、バス権要求受付信号(BUSACPi)  20−
 i 、  (BUSACPr)  20− rを返す
バスインタフェース400は、Sバス300とのインタ
フェース部であり、リクエストの受付とメモリアクセス
結果の転送を行なう。リクエスト受付では、スタート系
バス手順を受付けて、リクエスト管理部500ヘリク工
スト受付通知信号TRUP830を送り、キュー管理部
600−0〜3八、キュー受付通知信号TQ (0〜3
)tJP820−0〜3、アドレス840−0〜3、デ
ータ842−0〜3等の詳細情報を送る。また、メモリ
アクセス結果の転送ではリクエスト管理部500から、
エンド系バス権要求信号RUSOUT82gを受けると
、キュー管理部600−0〜3 ニ対し、BUSOUT
O〜3834−0〜3を送り、出力情報(フェッチデー
タ等)844−0〜3を受取る。バスインタフェース4
00は、これを受けてエンド系バス手順を開始する。
メモリアクセス制御部700−0〜3は、RAM30−
0〜3に対して、リードまたはライトのアクセス手順を
行うブロックで、キュー管理部600−0〜3から送ら
れて来たアドレス85〇−〇〜3や、ストアデータ85
2−0〜3および制御情報に基づいて、ACCREQ信
号836−0〜3を起動信号としてアクセス動作を開始
し、ACCEND信号838−0〜3を終了通知信号と
してフェッチデータ854−0〜3等をキュー管理部6
0〇−〇〜3へ返す、このブロックは、従来のメモリア
クセス制御方式と同様である。
キュー管理部600−0〜3は、バスインタフェース4
00で受付けられたリクエストとメモリアクセス制御部
700−0〜3、または、メモリアクセス制御部700
〜0〜3で処理されたりりエストとバスインタフェース
400の間に存在し、バッファの役割をする。このため
、バス手順とメモリアクセス手順が、必ずしも時間的に
固定した連続動作として処理される必要がなくなる。別
の表現をすれば、バス手順とメモリアクセス手順は、別
々のステージとして動かすことが可能となり、更には、
パイプライン動作を行わせることが可能となる。前述の
如く、5cutooのメモリアクセス制御部700−0
〜3は、4ウエイインタリーヴなので4個存在し、その
ため、バスインタフェース400との間のバッファであ
るキュー管理部600−0〜3も4個存在する。バスイ
ンタフェース400で受付けられたリクエストは、その
BSCNT336と5AB310の下位2ビツトに従っ
て分解され、上述の4個のキュー管理部600−0〜3
にキューイングされる。キュー管理部600−0〜・3
は各Wayに分解され、キューイングされたリクエスト
(以下、これをリクエスト管理部500の「リクエスト
キュー」に対し簡単に「キュー」と呼ぶ)を管理する。
キュー管理部600−0〜3は。
TQ (0〜3)UP信号832−0〜3を指示信号と
してバスインタフェース400からキュー(具体的には
、アドレス840−0〜3.ストアデータ842−0〜
3や詳細情報)を受取り、ラッチする。受付けたキュー
を受付順にメモリアクセス制御700−0〜3に送り、
メモリアクセス制御から受取ったキューをバスインタフ
ェース400からのBUSOUT信号834−0〜3を
指示信号として、フェッチデータ844−0〜3等を受
付順にバスインタフェース400に送る。バスインタフ
ェース400で受付けられたリクエストはメモリアクセ
ス制御700−0〜3がビジーな場合はキュー管理60
0−0〜3でバッファされるが、メモリアクセス制御7
00−0〜3が空くと転送され、メモリアクセスを行な
う。アクセス終了後に直ちにバス出力できない場合は、
キュー管理600−0〜3でバッファされるが、バス出
力が可能になると転送され、バスインタフェース400
から出力される。
以上述べた各キュー管理部600−0〜3等の進行状況
は、他のキュー管理部と同期をとることなく、独立に進
行する。このため、メモリアクセス制御部700−0〜
3の一部がビジーであるため、他のキューでは後続のキ
ューが存在するにもかかわらず処理待ちの状態となって
しまうというような、同期をとる方式の場合に生ずる無
駄を排除することができ、メモリスループットが向上す
る。一方、各キュー管理部600−0〜3に分解された
リクエストをバス出力する際には、同期の問題がある。
この同期化機能を担当するのがリクエスト管理500で
ある。大型機では、SCUでは同期をとらずIPに送り
、IP側で同期をとっている1本発明が対象とするバス
形式で結合されたプロセッサの場合(小型機の場合)、
同期化情報付きでバスに送出する方式よりも同期をSC
U内でとって送る方式の方がバスインタフェースが簡潔
であり、また、IPの制御が容易であり、SCU内の制
御も比較的簡単である。以下、この同期方式を説明する
各キュー管理部600−0〜3で独立に進行する分解さ
れたリクエストの同期は、SCUがリクエストを受取っ
た時点で、リクエスト管理500がリクエスト個有の識
別子(トークン)を分解された各キューに付加すること
、又、メモリアクセスが終了した時点では分解された各
キューのトークンがすべて揃ったか否かを検出しくマツ
チングを検出し)、揃った場合(マツチングが成立した
場合)にはバス権をバスアービタ200に要求しSバス
300にエンド系バス手順に基づいて終了通知を出力す
ることで可能になる。このトークンは、SCU100が
受付けたリクエストに対し、受付順に付加されるリクエ
スト順序番号(トークン番号)で、例えばO〜3の4個
の番号とする。このトークン番号は、0,1,2,3.
O,・・・・・・と巡回的に動く、各リクエストの処理
は受付は時に付加されたこのトークン番号の順に進行し
、同期をとって、バスに出力される。このトークン番号
および同期を管理するブロックが、前述のリクエスト管
理部500である。
まず、トークンを分解された各キューに付加する動作に
ついて述べる。前述の如く、バスインタフェース400
は、リクエストを受けると、リクエスト受付通知信号T
RLIP830をリクエスト管理部500へ送る。これ
を受けてリクエスト管理部500は、トークン番号(T
R)をカウントアツプし、リクエストキューの最終後尾
に受は取ったリクエストの情報(詳細後述)を登録する
と同時に、キュー管理部600−0〜3へ新しいTRを
TRNUM874で送る。
次にメモリアクセス終了時点でのマツチング検出、及び
バス権要求動作について述べる。リクエスト管理500
は、キュー管理部600−0〜3からメモリアクセスの
終了したキューのトークン番号(MQ)を信号(MQN
UM O〜3)872−0〜3により受取り、これとリ
クエスト管理部500内のリクエスト情報やトークン番
号と比較する。
分解された全てのキューのトークン番号とリクエスト管
理500内のトークン番号が一致すると(マツチングが
成立すると) 、MATCHO〜3(870−0〜3)
・を、対応するキュー管理部600−0〜3へ送る。キ
ュー管理O〜3(600−0−3)はMATCHO〜3
(870−0−3)を受け、マツチング済キューを示す
ポインタをカウントアツプする。新しくマツチングが成
立した場合(マツチングは成立しているがバス出力待ち
となっているリクエストが存在する場合も含む)、リク
エスト管理部500は、バスアービタ200にBUSR
EQr信号12−rを送る。バスアービタ200からB
USACPr信号20−rを受取るとバスインタフェー
ス400に対して、前u 8 U S OUT信号82
8を送る。前述の様に、これを受けたバスインタフェー
ス400は、メモリアクセス結果の転送を行なう。
以上述べた如く、リフニス1〜固有のトークン番号を各
キューに付加し、それか全部揃ったことを確認してバス
に出力することにより、独立に進行している各Wayi
t、5CU100内で同期をとってメモリアクセスを完
了することが可能となる。
次に、これまで述べて来た動作を行う5CTJの各ブロ
ックの詳細な構成例を説明する。
第6図は、バスアービタ200の構成図である。
本実施例に示すバスアービタ200は、リクエスタ(第
3図に示したlPo1O−a、IPllo−b 、 I
 OP o 10− c等)対応の受付判定回路210
−i(i=a−d、前述の通り)、リクエスト管理50
0対応の受付判定回路210−rを有する。
受付判定回路210−iおよび210−r内には。
スタート系バス手順、エンド系バス手順、データバス5
DB320が既に何サイクル使用受付られているかを示
すカウンタラッチ(STARTc) 232. (EN
DC) 234 。
(SDBC) 236が存在し、値がOになるまで毎サ
イクル減算器222,224,226で値を更新してい
る。上記ラッチ232と234は、データバス(SOB
)320使用の場合は上記SDBの使用サイクル数をセ
ットし、使用しない場合は「1」がセットされる。これ
らのラッチの値の中で、バス要求信号(BUSREQi
、 BUSREQr、 BUSTYPi、 BUSTY
Pr。
BUSCNTi、 BUSCNTr)が要求する資g(
各制御信号5DB320)がO(空いていること)を示
すならば、バス使用可能信号RESFREEi−r 2
50− iまたは250−rがONになる。
優先順位判定回路260は、予め決められた優先順位に
基づいて複数のバス使用可能信号(RESFREEi=
r) 250− i −rの中からバス使用許可信号(
BLISACPi”r) 20− i −rを送るリク
エスタを決定し、該当する信号20 i ” rをオン
にする。優先順位はリクエスト処理時間を短縮するため
エンド系リクエスト(SCU内部からのリクエスト)を
最優先とし、以下、外部リクエスタからのスタート系リ
クエストl0PO(10−c)。
l0PI (10−d)、IPO(10−a)。
IPI (10−b)の順とする。従って、RESFR
EEr信号250−rがオンの場合は、無条件でBUS
ACPr信号20−rはオンになる。スタート系バス使
用可能信号(RESFREEi) 250− iの幾つ
かがオンの場合、1番優先順位の高いものをRESFR
EEipと表わすことにする。RESFREEr信号2
50− rがオフの場合、及びRESFREEr信号2
50−rがオンであっても5DB320を両方が使用し
ない場合(さらに具体的には、エンド系リクエストがリ
ード要求で、且つスタート系リクエストがライト要求の
場合;これはBUSTYPi”r信号14−i〜rの値
が両方オンの場合である) 、5LlsAcPip信号
2O−ipはオンとなる。この優先順位判定回路260
により、5DB320の使用でリクエストが衝突しない
限り、スタート系リクエストとエンド系リクエストを同
時に受付ることが可能となり、バスのスループットが大
きく向上する。
カウンタラッチ5TARTC232,ENDC234,
5DBC236の更新は以下の様に行なう。優先順位判
定回路260が受付けた(BUSACPi=t、 20
 i ” rをオンにした)リクエストの使用するカウ
ンタラッチ(STARTC232等)は値を受付サイク
ル数に更新する必要がある。セットカウンタ選択回路2
70は、BUSACPi−r信号20 i −rと、B
USTYPi−r信号14 i = rに基づいて更新
するラッチに更新指示信号274を送る。セレクタ切換
信号276は。
ラッチの値(信号278の値)がゼロの場合は、カウン
タセット値選択回N272からの出力信号を、ゼロ以外
の場合は、減算器222,224゜226の出力を選択
することを指示する。カウンタセット値選択回路272
は、BUSACPi”r信号20− i = rとBU
STYPi−r信号14− i ” rに基づいて、更
新するラッチに対応するBIJSCNTi=r信号16
− i ” rの示す値、又はrlJを送る6「1」を
送る場合は、5DB320を使用しないリクエストの場
合、つまりBUSTYPi〜r信号14− i ” r
がゼロの場合である0以上により、カウンタラッチ23
2,234,236の値は、新リクエストを受付ける場
合には、使用予約するサイクルに更新され、ゼロでない
カウンタラッチは毎サイクル1ずつ減じられる。この結
果、カウンタラッチには残り何サイクルの使用予約がさ
れているかを示す値が保持される。
第7図は、バスインタフェース400の構成図である0
図において、BSACTB430. BSRDB432
゜BSTYPB434. BSCNTB436. BS
LINTB438は、スタート系信号制御信号のランチ
である。また、5ABB410は5AB310のラッチ
、5DBB420は5DB320のラッチ、BEACT
B450. BERDB452. BECNTB454
. BEUNTB456は、それぞれ、エンド信号制御
信号のラッチである。
まず、スタート系の受信について述べる。スタート系信
号制御信号は、ラッチ430,432,434゜436
.438に保持され、デコーダ460は、BSTYPB
434がキャンセルアクセス以外のリクエストならば信
号461をONにする。また、比較器464は、5AB
B410にラッチされているアドレスが、5CU100
で扱うべきアドレス範囲に存在するならば、信号465
をONにする。更に、BSACTB430がONならば
、TRUP信号830がONとなり、リクエストを受付
ける。
制御回路462は、キュー管理部600−0〜3に対し
、キュー受付通知信号TQ (0〜3)UP832−0
〜3と同時に、アドレス840−〇〜3、データ842
−0〜3および制御信号841−0〜3を送る。このキ
ュー受付通知信号TQ (0〜3)UP832−0〜3
は、TRUP信号830とともに、リクエスト管理部5
00へも、リクエストの詳細情報831とともに送られ
ラッチされる。
次に、エンド系の送信について述べる。リクエスト管理
部500からBtlSOIJT82gおよび詳細情報8
29を受けると、制御回路466は、キュー管理部60
0−0〜3に対し、BUSOUT O〜3 (834−
0〜3)を送る。これを受けたキュー管理部600−0
〜3からフェッチデータ844−0〜3が送られると、
制御回路466は、エンド系バス手順を開始し、セレク
タ470を切替え、エンド系制御信号ラッチ450,4
52,454゜456を制御して、バス出力する。
第8図は、リクエスト管理部500の構成図である。本
実施例に示すリクエスト管理部500は、リクエストの
制御情報が格納されている制御情報テーブル530と、
この制御情報テーブル530管理のアドレス(前記トー
クン番号を用いている)を保持するラッチHR5LO,
TR512゜MR514およびマツチングユニット56
0により構成されている。なお、上記制御情報テーブル
530は、540,542,544および546の4個
のレジスタにより構成されている。加算器516.51
8,520は、ポインタ情報のカウントアツプ用に用い
るものである。
TR512,HR510、それぞれ、リクエスト管理部
500内のリクエストのうち、最後と最初に受付けられ
たリクエストのトークン番号を保持するラッチである。
MR514は、次にマツチングを成立させるリクエスト
のトークン番号を保持するラッチである。制御情報テー
ブル530は、LINT530− a 、 CHK53
0− b 、 Way (0〜3) 530−c、 C
NT530−d、 RD530−eの5フイールドで構
成されている。Way (0〜3) 530− cは、
リクエストがどのWayのキュー制御に分割されたかを
示し、キューが存在するキュー制御番号(Way番号)
には110 I+が、存在しないところには111 I
+が、それぞれラッチされている(論理的意味とは逆転
している)。
リクエストのラッチについて説明する。バスインタフェ
ース400がスタート系リクエストを受付けると、リク
エスト管理部500へ、TR512のカウントアツプ信
号TRUP830を送る。これを受けて、TR512は
カウントアツプを行い、このTR512の示すトークン
番号に対応する制御情報テーブル530の位置をデコー
ダ532が示す。
このデコーダ532が指す制御情報テーブル530内の
レジスタに、新たなリクエストの制御情報、すなわち前
記リクエストの詳細情報831、Way(0〜3)およ
びキュー受付通知信号TQ (0〜3)UP832−0
〜3がラッチされる。
次に、第8図に基づいて、マツチング機構について説明
する。メモリアクセス制御部700−0〜3での処理が
終了すると、キュー管理部600−0〜3から次にマツ
チングを成立すべきキューのトーク番号MQNUM O
〜3(872−0〜3)が送られる。このMQNUM 
O〜3(872−0〜3)がトークン番号の値と、前記
MR514のトークン番号値を、比較器550,552
,554,556で比較し、一致の場合は111 I+
を出力する。この出力と、MR514が指す番号でセレ
クタ572が出力する制御情報テーブル530のレジス
タのWay情報(530−c)とは、オア回路580゜
582.548,586で論理和をとられ、対応するキ
ューの処理がすべて終了したときに、信号562がON
となる。この結果、Way情報(53〇−c)でキュー
が存在するキュー管理に対し、MATCHO〜3信号(
870−0〜3)が送られ。
MR514をカウントアツプする。
次に、リクエストの終了処理、すなわち、バス権獲得、
バスインタフェース400へのリクエスト情報送付およ
びエンド系バス手順の起動について説明する。MR51
4がカウントアツプされる等の理由により、前記HR5
10とMR514の値に差が生ずるが、これはマツチン
グは成立しているがバスへの終了通知は出力されていな
いリクエストが存在することを意味し、比較器522の
出力信号BUSREQr(12−r )がONとなる。
これに対する応答信号eUsAcPr(20−r )が
バスアービタ200から送られて来ると、HR510が
カウントアツプされ、このHR510の値に対応してセ
レクタ570が出力する制御情報テーブル530の情報
のうち、UNT530− a 、 CHK530− b
 。
CNT530− dおよびRD530−eが、BUSO
UT信号828と同期して、パイインタフェース400
に送られる。バスインタフェース400ではこれらをラ
ッチするとともに、BLISOUT信号828の指示に
基づきエンド系手順を開始する。
第9図は、キュー管理部600−0〜3の構成図である
。キュー管理部600−0〜3は、メモリアクセス制御
部700−0〜3に受渡すまたは受取る情報(すなわち
、アドレス630−a、ストアデータ630−b、制御
情報630− c 、フェッチデータ630−eと、ト
ークン番号600−d)を保持するキュー情報テーブル
630と、このキュー情報テーブル630の管理アドレ
スを保持するラッチHQ616.MQ614.AQ6L
2およびTQ610により構成されている。なお、上記
キュー情報テーブル630は、4個のレジスタ、640
,642,644および646により構成されている。
TQ610.HQ616は、キュー管理部60〇−0〜
3内のキューのうち、最後と最初に受付けられたキュー
のキュ一番号を保持するラッチである0MR614は、
次にマツチングを成立させるキューのキュ一番号を保持
するラッチである。
AR612は、現在メモリアクセス制御部700−〇〜
3で処理中のキュ一番号を、または、メモリアクセス制
御部700−0〜3が処理中でないならば、次に処理さ
れるべきキュ一番号を保持するラッチである。
まず、キューのラッチについて述べる。バスインタフェ
ース400からTQj、tJP832− iが送られる
と、TQ610がカウントアツプされ、 TQ610の
示すキュ一番号に対応するキュー情報テーブル630の
位置をデコーダ622が示す、デコーダ622に示され
たキュー情報テーブル630内のレジスタに新しいキュ
ー情報、すなわちアドレス840−1pストアデータ8
42−1.制御情報841−iがラッチされる。
TQ610がカウントアツプされ、AQ612との間に
差が生じるか、処理中のメモリアクセス制御部700−
0〜3からACCENDi838− iが送られて来る
と、制御回路670は、AQ612からの信号を受けた
デコーダ624が指すフェッチデータ630−eにデー
タ854−0〜3をラッチし、次に信号672により、
AQ612がカウントアツプし、メモリアクセス制御部
700−0〜3に、ACCREQi836− iと同期
して、セレクタ674が選択したキュー制御テーブル6
30の情報850−i、852−iを送る。
次に、キュー制御側のマツチング機構について説明する
。MQ614の値により、セレクタ676に選択された
キューのトークン番号630−dは、MQNUMi87
2− iとしてリクエスト制御部500に送られる。リ
クエスト制御部500において、マツチングが成立した
ことを示すMATC)li870− iを受けると、M
Q614の値はカウントアツプされ次にマツチングをと
るべきキューのトークン番号をMQNUMi872−i
に送る。
最後に、終了手続きについて説明する。
8υ5OUTi834− iを受けるとHQ616の値
はカウントアツプされる。この更新された値で、セレク
タ678が選択するキュー情報テーブル630の終了情
報(フェッチデータ630−e)が、データ信号844
−iでバスインタフェース400へ送られる。
以上1本発明の一実施例に示したが、更に、以下に述べ
る如き態様も、容易に実現し得る。
第一に、ブロックフェッチのターゲットデータをバス転
送する際、第1サイクルに転送を行うことにより、IP
側の処理待ちサイクル数を低減できる。これは、リクエ
ストを受けたバスインタフェース400において、生成
したターゲットデータのWayを示す情報を制御情報の
一部としてリクエスト制御部で保持し、バス出力の際、
バスインタフェース400へ送る。バスインタフェース
400はこれを受けてターゲットデータを第一サイクル
に送るように制御することにより実現できる。
第二に、リクエストを受付けたバスインタフェース40
0において、制御情報として各キューのバス出力順序情
報をキュー制御部600−0〜3に送り、キュー制御部
5oo−o〜3は、この情報に基づき、バス出力順序の
遅いキュー制御部600−o〜3は、ソノ順序に応シテ
MQNUMi872−iを早く送ることにより、不必要
なマツチング待ちサイクルが生ずることを防ぎ、平均の
アクセスサイクル数を低減することができる。
また、上記実施例においては、実施例として、データバ
ス幅4バイト、Way数4の場合を例に挙げて示したが
、本発明はこれに限定されるものではなく、例えば、メ
モリアクセス制御部とキュー制御部を2Way持ち、各
Wayが4バイトの2回フェッチを完了した時点で、リ
クエスト制御部でマツチングを成立させる2Wayモー
ドや、同様のIWayモードを容易に構成することがで
き、コストに応じたメモリスループットを痛供すること
が可能である。
また、上記実施例ではSバスに接続されるScUが一部
の場合を示したが、5CU100の他にアービタ無でエ
ンド系バス権を要求するリクエスタを内蔵した増設5C
U102をSバスに接続する構成も容易に実現できる。
この実施例においては、5CU100と増設SCUは、
スタート系リクエストをSバスから受信し、バスインタ
フェースブロックにおいてアドレス範囲をチエツクし、
リクエストの切分けを行なう、また、増設SCUからの
エンド系バス権要求を5CU100のバスアービタ20
0は、5CU100内部からのエンド系バス権要求と同
様の扱いで受は付ける。この増設SCUにより、より柔
軟なメモリ増設が可能となる。
〔発明の効果〕
以上述べた如く、本発明によれば、IPまたはIOP等
のメモリアクセス・リクエストとSCUがバス形式で結
合され、バスアービタにより前記各装置間におけるバス
権の受授を行う情報処理装置において、前記SCU内の
メモリアクセス回路とバスインタフェース回路との間に
、該バスインタフェース回路で受付けたメモリアクセス
要求とメモリアクセス制御の間にメモリアクセス待ちバ
ッファ、及び、メモリアクセス回路で処理されリクエス
タへの転送待のメモリアクセス要求とバスインタフェー
スとの間にバス出力待ちバッファを設けて、該バス出力
待ちバッファ内にリクエストが存在する場合には、該バ
ス出力待バツファから前記バスアービタへ、前記リクエ
スタから前記バスアービタへのバス権要求とは別のバス
権要求を出力する如く構成したので、前述のSCUやリ
クエスタがバス形式で結合されている情報処理装置のメ
モリスループットを向上させることを可能とするメモリ
アクセス制御方式を実現できるという顕著な効果を奏す
るものである。
【図面の簡単な説明】
第1図は本発明の一実施例を示す情報処理装置のSCU
のブロック構成図、第2図は従来の方式と本発明の方式
との比較タイムチャート、第3図は実施例を示す情報処
理装置のブロック構成図、第4図はSバスおよびバス権
受授信号の説明図、第5図はSバスのタイムチャート、
第6図は第1図に示すバスアービタの構成図、第7図は
同バスインタフェースの構成図、第8図は同リクエスト
管理部の構成図、第9図は同キュー管理部の構成図であ
る。 10−a、 10−b−命令処理袋[(IP)、10−
 c 、 10− d−人出カ処理装置(IOP)、2
0−・・基本処理袋fff (BPU)、30−RAM
、100・・・記憶制御装置(SCU) 、200・・
・バスアービタ、300・・・Sバス、400・・・バ
スインタフェース、500・・・リクエスト管理部、6
0o−〇〜3・・・キュー管理部、700−0〜3・・
・メモリイ〔表方氏 冨 2 図 (む 第 2 図(b) Sバス ay 3 二:::X二〕 図 2θ 冨 図 b 図 ■ 囚

Claims (1)

  1. 【特許請求の範囲】 1、メモリアクセスのためのリクエストを発生するリク
    エスタ装置と、上記リクエストを処理する記憶制御装置
    とがバス形式で結合され、バスアービタにより前記各装
    置間におけるバス権の受授を行う情報処理装置において
    、前記記憶制御装置内にバスへの出力を待つリクエスト
    が存在する場合には、前記記憶制御装置から前記バスア
    ービタへ、前記リクエスタ装置から前記バスアービタへ
    のバス権要求とは別のバス権要求を出力する如く構成し
    たことを特徴とするメモリアクセス制御方式。 2、前記記憶制御装置内にバスインタフェース回路とメ
    モリアクセス回路を持ち、該バスインタフェース回路と
    該メモリアクセス回路との間にバス出力待ちバッファを
    設け、該メモリアクセス回路からのアクセス終了信号、
    又は該バス出力待ちバッファ内からのバス出力待ちリク
    エストの存在信号を前記バス権要求信号とすることを特
    徴とする特許請求の範囲第1項記載のメモリアクセス制
    御方式。 3、前記バス権要求に、バス使用サイクル数の信号を付
    加することを特徴とする、特許請求の範囲第1項記載の
    メモリアクセス制御方式。 4、前記バス権要求に、バス使用サイクル数の信号に加
    えて、バス使用形態を示す信号を付加することを特徴と
    する、特許請求の範囲第1項記載のメモリアクセス制御
    方式。
JP15469188A 1988-01-22 1988-06-24 メモリアクセス制御方法 Expired - Lifetime JP2718702B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15469188A JP2718702B2 (ja) 1988-01-22 1988-06-24 メモリアクセス制御方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP1221688 1988-01-22
JP63-12216 1988-01-22
JP15469188A JP2718702B2 (ja) 1988-01-22 1988-06-24 メモリアクセス制御方法

Publications (2)

Publication Number Publication Date
JPH021044A true JPH021044A (ja) 1990-01-05
JP2718702B2 JP2718702B2 (ja) 1998-02-25

Family

ID=26347787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15469188A Expired - Lifetime JP2718702B2 (ja) 1988-01-22 1988-06-24 メモリアクセス制御方法

Country Status (1)

Country Link
JP (1) JP2718702B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237980A (ja) * 2008-03-27 2009-10-15 Hitachi Ltd マルチポートメモリおよび情報処理システム
CN114257327A (zh) * 2021-12-21 2022-03-29 浙江华锐捷技术有限公司 时间同步方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237980A (ja) * 2008-03-27 2009-10-15 Hitachi Ltd マルチポートメモリおよび情報処理システム
CN114257327A (zh) * 2021-12-21 2022-03-29 浙江华锐捷技术有限公司 时间同步方法及系统
CN114257327B (zh) * 2021-12-21 2023-09-26 浙江华锐捷技术有限公司 时间同步方法及系统

Also Published As

Publication number Publication date
JP2718702B2 (ja) 1998-02-25

Similar Documents

Publication Publication Date Title
US6078983A (en) Multiprocessor system having distinct data bus and address bus arbiters
US4481572A (en) Multiconfigural computers utilizing a time-shared bus
US5155854A (en) System for arbitrating communication requests using multi-pass control unit based on availability of system resources
KR100192529B1 (ko) 원격버스상의 중재를 고정시키는 방법 및 장치
EP0383475A2 (en) Shared resource arbitration
JPH06223042A (ja) マルチプロセッサ・システムにおいて割込みを管理するための装置及び方法
JPH05216811A (ja) 二バス間のトランザクションを制御する再試行方法
EP0384621B1 (en) Data transfer operations between two asynchronous buses
US5649209A (en) Bus coupling information processing system for multiple access to system bus
US20040095355A1 (en) Computer chipsets having data reordering mechanism
EP0814408A2 (en) Bus bridge apparatus
US5255373A (en) Decreasing average time to access a computer bus by eliminating arbitration delay when the bus is idle
EP1187029B1 (en) Peripheral component interconnect arbiter implementation with dynamic priority scheme
US6430641B1 (en) Methods, arbiters, and computer program products that can improve the performance of a pipelined dual bus data processing system
EP1069511B1 (en) Data Transfer Controller with Plural Ports
JPH021044A (ja) メモリアクセス制御方法
EP0479229B1 (en) Minimum contention multiprocessor dual bus system
JPH0528856B2 (ja)
JPH05282242A (ja) バス制御方式
JPH02186464A (ja) メモリアクセス制御方式
JPH022178B2 (ja)
JP2856709B2 (ja) バス間結合システム
JPH0512219A (ja) プロセス転送方式
JPH0895899A (ja) Dma転送制御装置
JPH0234062B2 (ja) Maruchipurosetsusashisutemuniokerumemoriakusesuseigyohoshiki

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071114

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20081114

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081114

Year of fee payment: 11