JPH0353658B2 - - Google Patents

Info

Publication number
JPH0353658B2
JPH0353658B2 JP59170214A JP17021484A JPH0353658B2 JP H0353658 B2 JPH0353658 B2 JP H0353658B2 JP 59170214 A JP59170214 A JP 59170214A JP 17021484 A JP17021484 A JP 17021484A JP H0353658 B2 JPH0353658 B2 JP H0353658B2
Authority
JP
Japan
Prior art keywords
memory
request
data
control device
cache 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 - Lifetime
Application number
JP59170214A
Other languages
Japanese (ja)
Other versions
JPS6148053A (en
Inventor
Juzo Oomori
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP59170214A priority Critical patent/JPS6148053A/en
Publication of JPS6148053A publication Critical patent/JPS6148053A/en
Publication of JPH0353658B2 publication Critical patent/JPH0353658B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 (技術分野) 本発明は、メモリ制御装置に関し、特にセツト
アソシアテイブ方式かつストアスワツプ方式のキ
ヤツシユメモリを備えた情報処理システムにおけ
る、キヤツシユメモリデータの主メモリ装置への
はき出し手段にかかるメモリ制御装置に関するも
のである。
DETAILED DESCRIPTION OF THE INVENTION (Technical Field) The present invention relates to a memory control device, and particularly to a memory control device for transferring cache memory data to a main memory device in an information processing system equipped with a set associative type and store swap type cache memory. The present invention relates to a memory control device related to an output means.

(従来技術) 大型の情報処理システムにおいては、演算制御
装置の処理速度向上に対し主メモリ装置用メモリ
素子の処理速度は相対的に改善されていない。両
者の処理速度の差を吸収するために、メモリ制御
装置内にストアスワツプ方式のキヤツシユメモリ
を設置し、平均メモリアクセスタイムの短縮及び
主メモリ装置の負荷改善を行なつたシステムがあ
る。ストアスルー方式のキヤツシユメモリのみを
もつシステムでは動作中常に最新メモリデータは
主メモリ装置上に存在するが、ストアスワツプ方
式のキヤツシユメモリをもつ前記のようなシステ
ムでは、メモリデータによつては最新メモリデー
タが主メモリ装置上に存在するとは限らず、キヤ
ツシユメモリ上にのみ存在する場合がある。この
ような主メモリ装置データの非最新性は、システ
ム構成における装置間論理的接続の動的変更に対
して大きな支障となる。第1〜第3図は各装置間
接続の例を示したものである。メモリ制御装置1
01,102は主メモリ装置201,202,2
03,204に接続されており、更に演算制御装
置301,302、及び入出力制御装置401,
402に接続されている。装置間の実線は論理
的,物理的に接続された状態を示し、破線は物理
的には接続されているが論理的には切断された状
態を示す。第1図に示すすべての装置は論理的に
接続され、いわゆるマルチプロセツサとして運用
されている。第2図に示すシステムは2つに分け
られ、デユプレツクスシステムとして両者が独立
に運用される。更に第3図に示すメモリ制御装置
102は故障中等の理由で切離された状態にあ
る。これらのシステム構成間の状態変更はシステ
ムを利用中のユーザに対し影響を与えずに行なわ
れることが望ましい。特にシステムがオンライン
で使用されているとき末端の各ユーザに影響を与
えることは避けなければならない。
(Prior Art) In large-scale information processing systems, the processing speed of the memory element for the main memory device has not been improved relative to the improvement in the processing speed of the arithmetic and control unit. In order to absorb the difference in processing speed between the two, there is a system in which a store-swap type cache memory is installed in the memory control device to shorten the average memory access time and improve the load on the main memory device. In systems that have only store-through type cache memory, the latest memory data always exists in the main memory device during operation, but in systems like the one described above that have store-swap type cache memory, depending on the memory data, the latest memory data always exists in the main memory device. Memory data does not necessarily reside on the main memory device, but may reside only on cache memory. Such non-currentness of main memory device data poses a major hindrance to dynamic changes in logical connections between devices in the system configuration. 1 to 3 show examples of connections between devices. Memory control device 1
01, 102 are main memory devices 201, 202, 2
03, 204, and further connected to arithmetic control units 301, 302, and input/output control units 401,
402. A solid line between devices indicates a state in which they are logically and physically connected, and a broken line indicates a state in which they are physically connected but logically disconnected. All the devices shown in FIG. 1 are logically connected and operated as a so-called multiprocessor. The system shown in FIG. 2 is divided into two parts, and both are operated independently as a duplex system. Further, the memory control device 102 shown in FIG. 3 is in a disconnected state due to a failure or the like. It is desirable that state changes between these system configurations be performed without affecting users who are using the system. Especially when the system is used online, it must be avoided to affect end users.

メモリ制御装置101,102内にストアスワ
ツプ方式のキヤツシユメモリを持つシステムで
は、第1図〜第3図に示すように1つの主メモリ
装置からみて論理的に接続されるのは1つのメモ
リ制御装置のみであるような構成が一般的にとら
れる。これにより主メモリ装置のデータは、この
主メモリ装置が論理的に接続されたメモリ制御装
置内のキヤツシユメモリに登録されても、論理的
に非接続のメモリ制御装置内のキヤツシユメモリ
に登録されることなく、キヤツシユメモリ間のデ
ータは排他的となり、両者のデータ干渉制御が不
要となる。
In a system having store-swap type cache memory in the memory control units 101 and 102, only one memory control unit is logically connected to one main memory unit, as shown in FIGS. 1 to 3. Generally, the configuration is such that only As a result, even if the main memory device data is registered in the cache memory in the memory control device to which this main memory device is logically connected, it will be registered in the cache memory in the memory control device to which the main memory device is logically unconnected. Therefore, the data between the cache memories becomes exclusive, and there is no need to control data interference between the two.

このような構成において例えば第3図のシステ
ム構成から第1図のシステム構成に移行すると
き、移行後メモリ制御装置102に論理的接続さ
れる主メモリ装置203,204の最新データは
メモリ制御装置101内のキヤツシユメモリ上に
存在するため、単に論理的接続関係を切換えるだ
けでは、システム構成移行後の主メモリ装置20
3,204へのメモリアクセスを正常に行なえな
い。
In such a configuration, for example, when transitioning from the system configuration shown in FIG. 3 to the system configuration shown in FIG. Because the main memory device 20 exists in the cache memory within the main memory device 20, it is not possible to simply switch the logical connection relationship after system configuration migration.
Memory access to 3,204 cannot be performed normally.

メモリデータの最新性の矛盾なく第3図のシス
テム構成から第1図のシステム構成に移行するた
めの方法としては以下のような方法がある。
The following method can be used to transition from the system configuration shown in FIG. 3 to the system configuration shown in FIG. 1 without inconsistency in the latestness of memory data.

第1の方法は、1度システムを停止させ装置間
論理的接続関係の変更を行なつてからシステムの
イニシヤライズ(主メモリデータの継続性は不
要)から始まる再立上げを行なう方法であるが、
この場合停止から再立上げ完了まで多くの時間を
必要としシステムを使用中のユーザに対し大きな
影響を与える。
The first method is to stop the system once, change the logical connections between devices, and then restart the system starting with system initialization (main memory data continuity is not required).
In this case, a lot of time is required from the time the system is stopped until the restart is completed, which has a large impact on the users who are using the system.

第2の方法は、演算制御装置301,302の
処理を命令の区切りで停止保留し、新たな入出力
動作の起動も抑止し、現在実行中の入出力動作が
完了したところでメモリ制御装置101内のキヤ
ツシユメモリデータの主メモリ装置へのはき出し
を行なう。このはき出し完了により主メモリ装置
203,204のデータが最新状態となる。この
後装置間論理的接続関係の変更を行ない主メモリ
データの継続性を維持したまま処理再開を行な
う。この方法では第1の方法よりはユーザーに影
響を与えないが、現在実行中の入出力動作の停止
待ちにかなりの時間を必要とするためやはりユー
ザーに大きな影響を与える。
The second method is to suspend the processing of the arithmetic control units 301 and 302 at the command break, and also to prevent the start of new input/output operations. Exports the cache memory data to the main memory device. Upon completion of this writing, the data in the main memory devices 203 and 204 becomes the latest state. Thereafter, the logical connection relationship between the devices is changed and processing is restarted while maintaining the continuity of the main memory data. Although this method does not affect the user as much as the first method, it still has a large impact on the user because it requires a considerable amount of time to wait for the input/output operation currently being executed to stop.

第3の方法は、演算制御装置301,302の
処理を命令の区切りで停止,保留し、処理中の入
出力処理はそのままメモリ制御装置101でのメ
モリアクセス処理を抑止,保留する。メモリアク
セスが抑止されたところでメモリ制御装置101
内のキヤツシユメモリデータの主メモリ装置への
はき出しを行ない、はき出しが完了したところで
装置間論理的接続関係の変更を行ない、主メモリ
データの継続性を維持したままで処理再開を行な
う。この方法の場合キヤツシユメモリデータの主
メモリ装置へのはき出し時間程度のユーザーから
見たシステム停止はあまり問題とならないが、キ
ヤツシユメモリデータはき出しの間の入出力処理
のメモリアクセス処理抑止によコマンドオーバー
ラン及びデータオバーランの多発の収拾が出来な
くなる恐れがある。
The third method is to stop and suspend the processing of the arithmetic control units 301 and 302 at the command break, and to inhibit and suspend the memory access processing in the memory control unit 101 as the input/output processing is currently being processed. When memory access is inhibited, the memory control device 101
The internal cache memory data is flushed out to the main memory device, and when the flushing is completed, the logical connection relationship between the devices is changed, and processing is restarted while maintaining the continuity of the main memory data. With this method, system stoppage from the user's perspective is not a big problem during the time it takes for the cache memory data to be flushed to the main memory device. There is a risk that the frequent occurrence of overruns and data overruns will not be able to be brought under control.

キヤツシユメモリへの演算制御装置とが入出力
装置からのメモリアクセスを正常に処理しながら
キヤツシユメモリデータの主メモリ装置へのはき
出し処理を遂行出来れば上記のような方法をとら
なくても済むが、主メモリ装置へのはき出し済み
のキヤツシユメモリデータへのメモリアクセスが
あつたとき処理に不都合が生じる。上記のような
処理は第1図に示すシステム構成と第2図に示す
システム構成間の移行についても同様なことが言
える。
If the arithmetic control unit for the cache memory can process the memory access from the input/output device normally while writing out the cache memory data to the main memory unit, there is no need to use the above method. However, when there is a memory access to the cache memory data that has already been written to the main memory device, problems occur in the processing. The same process as described above can be applied to transition between the system configuration shown in FIG. 1 and the system configuration shown in FIG.

以上のように、従来のこのようなシステムは、
システム構成変更を有効に行なえる手段がない等
の欠点を有していた。
As mentioned above, conventional systems like this
This system has drawbacks such as the lack of effective means for changing the system configuration.

(発明の目的) 本発明の目的は、従来のメモリ制御装置におけ
る欠点を除去すると共にメモリ制御装置内のスト
アスワツプ方式のキヤツシユメモリデータの主メ
モリ上へのはき出し処理において、キヤツシユメ
モリの最後の行のはき出し処理に入るまでは、入
出力処理によるメモリアクセスを未はき出しのキ
ヤツシユメモリデータに対しては許し、またキヤ
ツシユメモリミスヒツト時の新規ブロツク割付を
未はき出し行のみに限定することにより、入出力
処理によるメモリアクセス抑止時間を短縮し、シ
ステム構成の動的変更を改善することにある。
(Object of the Invention) An object of the present invention is to eliminate the drawbacks of conventional memory control devices, and to eliminate the last memory By allowing memory access by input/output processing to the unextracted cache memory data until starting the row extrusion process, and by limiting new block allocation to only unextracted rows when a cache memory miss occurs. The objective is to shorten the memory access inhibition time due to input/output processing and improve dynamic changes in system configuration.

(発明の構成) 本発明によれば、複数の演算制御装置、複数の
入出力制御装置、複数の主メモリ装置及び前記演
算制御装置と前記入出力制御装置とから前記主メ
モリ装置に対するメモリアクセス要求を中介する
複数のメモリ制御装置を含み、前記各メモリ制御
装置内には前記各演算制御装置及び入出力制御装
置によつて共有されたセツトアソシアテイブ方式
かつストアスワツプ方式のキヤツシユメモリを有
する情報処理システムにおいて、前記キヤツシユ
メモリの行を指定してその行への新規ブロツク登
録の禁止を行なう回路と、前記キヤツシユメモリ
の行を指定してその行のデータを対応する前記主
メモリ装置へはき出し回路と、前記入出力制御装
置から前記メモリ制御装置へのメモリアクセスを
抑止する回路とを設けたことを特徴とするメモリ
制御装置が得られる。
(Structure of the Invention) According to the present invention, a plurality of arithmetic control devices, a plurality of input/output control devices, a plurality of main memory devices, and a memory access request from the arithmetic control devices and the input/output control device to the main memory device. information including a plurality of memory control devices interposed between the memory control devices, each memory control device having a set associative type and store swap type cache memory shared by each of the arithmetic control units and input/output control devices. In the processing system, a circuit for specifying a line in the cache memory and prohibiting new block registration to that line; and a circuit for specifying a line in the cache memory and transferring the data in that line to the corresponding main memory device. There is obtained a memory control device characterized in that it includes an output circuit and a circuit for inhibiting memory access from the input/output control device to the memory control device.

(実施例) 次に本発明の実施例について図面を参照して説
明する。
(Example) Next, an example of the present invention will be described with reference to the drawings.

第4図は本発明の一実施例を示す。第4図にお
いて、本発明の一実施例は演算制御装置301お
よび入出力制御装置401に接続され、更に主メ
モリ装置201に接続されており、前記各演算制
御装置および入出力制御装置によつて共有された
セツトアソシアテイブ方式またはストアスワツプ
方式のキヤツシユメモリを有するメモリ制御装置
101で、前記キヤツシユメモリの行を指定し
て、その行への新規ブロツク登録の禁止を行う回
路119と、前記キヤツシユメモリ装置201へ
はき出すはき出し制御回路123と、前記入出力
制御装置401から前記メモリ制御装置101へ
のメモリアクセスを抑止する回路124とを含
む。
FIG. 4 shows an embodiment of the present invention. In FIG. 4, one embodiment of the present invention is connected to an arithmetic control device 301 and an input/output control device 401, and further connected to a main memory device 201, and is connected to an arithmetic control device 301 and an input/output control device 401. In a memory control device 101 having a shared set associative type or store swap type cache memory, a circuit 119 for specifying a line in the cache memory and prohibiting new block registration to that line; It includes a write control circuit 123 that writes data to the cache memory device 201, and a circuit 124 that inhibits memory access from the input/output control device 401 to the memory control device 101.

更に、このメモリ制御装置101は前記入出力
制御装置401に接続されるリクエスト受付ポー
ト回路111,126と、演算制御装置301に
接続されるリクエスト受付ポート回路110,1
27と、はき出し制御回路123に接続されるは
き出し列アドレスカウンタ122と、前記リクエ
スト受付ポート回路110,111,126,1
27およびはき出し列アドレスカウンタ122に
接続されるステージ1リクエストレジスタ112
と、該ステージ1リクエストレジスタ112に接
続されるステージ2リクエストレジスタ113
と、該ステージ2リクエストレジスタ113に接
続され、更にその出力が主メモリ装置201に接
続されているステージ3リクエストレジスタ11
4とを含む。
Furthermore, this memory control device 101 includes request reception port circuits 111 and 126 connected to the input/output control device 401, and request reception port circuits 110 and 1 connected to the arithmetic control device 301.
27, an output column address counter 122 connected to the output control circuit 123, and the request reception port circuits 110, 111, 126, 1
27 and the stage 1 request register 112 connected to the exposed column address counter 122.
and a stage 2 request register 113 connected to the stage 1 request register 112.
and a stage 3 request register 11 connected to the stage 2 request register 113 and whose output is further connected to the main memory device 201.
4.

ステージ1リクエストレジスタ112は書込デ
ータレジスタ115,アドレスアレイ130およ
びアドレス比較回路121に接続され、更に前記
行指定新規割付禁止ビツト119,前記はき出し
制御回路123および入出力制御装置リクエスト
受付抑止ビツト124に接続されている。行指定
新規割付禁止ビツト119はリプレイスメント回
路132に接続されている。はき出し制御回路1
23は演算制御装置に接続されており、入出力制
御装置リクエスト受付抑止ビツト124は入出力
制御装置401に接続されている。
The stage 1 request register 112 is connected to the write data register 115, the address array 130, and the address comparison circuit 121, and is further connected to the row designation new allocation prohibition bit 119, the write control circuit 123, and the input/output control device request reception inhibition bit 124. It is connected. The row designation new allocation prohibition bit 119 is connected to the replacement circuit 132. Extrusion control circuit 1
23 is connected to the arithmetic and control unit, and the input/output control unit request reception inhibiting bit 124 is connected to the input/output control unit 401.

書込データレジスタ115は読出データ選択回
路125およびキヤツシユメモリ131に接続さ
れている。アドレスアレイ130はアドレスアレ
イレジスタ116を介してアドレスアレイデータ
選択回路117に接続されている。
Write data register 115 is connected to read data selection circuit 125 and cache memory 131. Address array 130 is connected to address array data selection circuit 117 via address array register 116.

ステージ2リクエストレジスタ113はキヤツ
シユメモリ131と、リプレイスメント回路13
2とに接続されている。
The stage 2 request register 113 has a cache memory 131 and a replacement circuit 13.
It is connected to 2.

ステージ3リクエストレジスタ14は主メモリ
リクエストバツフア120とステージ1リクエス
トレジスタ112とに接続されている。更に主メ
モリリクエストバツフア120はキヤツシユメモ
リ131と書込データレジスタ115に接続され
ている。キヤツシユメモリ131は読出データレ
ジスタ118を介して読出データ選択回路125
と主メモリ装置201に接続されている。読出デ
ータ選択回路125は書込データレジスタ115
および読出データレジスタ118のいずれかを選
択し、そのデータを演算制御装置301および入
出力制御装置401に供給するように構成されて
いる。
Stage 3 request register 14 is connected to main memory request buffer 120 and stage 1 request register 112. Furthermore, main memory request buffer 120 is connected to cache memory 131 and write data register 115. The cache memory 131 is connected to the read data selection circuit 125 via the read data register 118.
and is connected to the main memory device 201. The read data selection circuit 125 is the write data register 115
and read data register 118, and supply the selected data to arithmetic control device 301 and input/output control device 401.

次に通常のメモリアクセスのメモリ制御装置1
01内の動作例について説明する。演算制御装置
301または入出力制御装置401からメモリア
クセスメモリ制御装置101に対して行なわれ
と、その動作指定コード,アドレス及びストアデ
ータ等のリクエスト情報がリクエスト受付ポート
回路110または111に受取られる。次にリク
エスト受付ポート回路から1つのリクエスト情報
が選択されてステージ1リクエストレジスタ11
2に送られる。ステージ1リクエストレジスタ1
12では動作指定コードの解読が行なわれ、以下
動作指定に従つた動作が行なわれる。
Next, memory control device 1 for normal memory access
An example of the operation in 01 will be explained. When a memory access is made to the memory control device 101 from the arithmetic control device 301 or the input/output control device 401, request information such as an operation designation code, address, and store data is received by the request reception port circuit 110 or 111. Next, one piece of request information is selected from the request reception port circuit and the stage 1 request register 11
Sent to 2. Stage 1 request register 1
At step 12, the operation designation code is decoded, and the following operations are performed in accordance with the operation designation.

動作指定が読出しリクエストのとき、まずアド
レスアレイ130の索引が行なわれ所要のデータ
がキヤツシユメモリ上に存在するか否かを調べ
る。存在するとき(キヤツシユメモリヒツトと呼
ぶ)はキヤツシユメモリ131から対応するデー
タが続出データレジスタ118に読出され要求元
装置に送出される。またステージ2リクエストレ
ジスタ113から、参照されたキヤツシユメモリ
ブロツクのリプレイメント回路132への反映が
行なわれる。
When the operation designation is a read request, the address array 130 is first indexed to check whether the required data exists on the cache memory. When a cache memory hit exists (referred to as a cache memory hit), the corresponding data is read from the cache memory 131 to the successive data register 118 and sent to the requesting device. Also, the referenced cache memory block is reflected from the stage 2 request register 113 to the replacement circuit 132.

動作指定が書込みリクエストで、アドレスアレ
イ130索引の結果対応するデータがキヤツシユ
メモリ上に存在するときは、書込データレジスタ
115からキヤツシユメモリ131の対応するデ
ータへの書込みが行なわれる。主メモリ装置20
1への書込みはこのとき行なわれない。
If the operation designation is a write request and the corresponding data exists on the cache memory as a result of address array 130 indexing, writing to the corresponding data in cache memory 131 from write data register 115 is performed. Main memory device 20
Writing to 1 is not performed at this time.

このとき読出しのときと同様にリプレイスメン
ト回路132への反映が行なわれる。ところでア
ドレスアレイ130の中にはキヤツシユメモリブ
ロツク対応に修飾ビツトが設けられている。この
修飾ビツトがオンのときは対応ブロツクの最新デ
ータが主メモリ装置201にはなくてキヤツシユ
メモリ131にのみ存在することを示す。修飾ビ
ツトは書込みが行なわれたときにオンにする必要
がある。書込みリクエストでキヤツシユメモリ上
に対応データが存在するときには、アドレスアレ
イ130のデータがアドレスアレイレジスタ11
6に読出され前記修飾ビツトの値を調べ。この修
飾ビツトがオフであるときは、前記書込みリクエ
スト情報はステージ3リクエストレジスタ114
を経由してステージ1リクエストレジスタ112
に返されてアドレスアレイ130の対応ブロツク
の修飾ビツトをオンにするためのアドレスアレイ
130への登録動作が行なわれる。
At this time, the information is reflected to the replacement circuit 132 in the same way as when reading. By the way, in address array 130, modification bits are provided corresponding to cache memory blocks. When this modification bit is on, it indicates that the latest data of the corresponding block is not present in the main memory device 201 but only in the cache memory 131. Qualifier bits must be turned on when a write is performed. When the corresponding data exists in the cache memory due to a write request, the data in the address array 130 is transferred to the address array register 11.
6 and examines the value of the modification bit. When this modification bit is off, the write request information is stored in stage 3 request register 114.
Stage 1 request register 112 via
The data is returned to address array 130, and a registration operation is performed in address array 130 to turn on the modification bit of the corresponding block in address array 130.

読出しリクエストまたは書込みリクエストでア
ドレスアレイ130索引の結果所要データキヤツ
シユメモリ上に存在しないとき(キヤツシユメモ
リミスヒツトと呼ぶ)は以下の動作が行なわれ
る。ステージ2リクエストレジスタはリプレイス
メント回路132がアクセスされ、新規に割付け
が行なわれるブロツクの行番号が決定される。
When a read request or a write request is performed and the required data does not exist in the cache memory as a result of address array 130 indexing (referred to as a cache memory miss), the following operations are performed. The stage 2 request register is accessed by the replacement circuit 132 to determine the row number of the block to be newly allocated.

この番号により、アドレスアレイ130から読
出されたデータが入れられているアドレスアレイ
レジスタ116からリプレイスされるブロツクの
アドレスアレイデータがアドレスアレイデータ選
択回路117により選択されステージ3リクエス
トレジスタ114の1部データとなる。ステージ
2リクエストレジスタ113の情報もステージ3
リクエストレジスタ114に送られる。
Based on this number, the address array data selection circuit 117 selects the address array data of the block to be replaced from the address array register 116 in which the data read from the address array 130 is stored, and selects it as part of the data in the stage 3 request register 114. Become. The information in the stage 2 request register 113 is also stage 3
It is sent to the request register 114.

ステージ3リクエストレジスタ114からは主
メモリ装置201にブロツク転送要求が出され、
また主メモリリクエストバツフア120に主メモ
リ装置へのリクエスト中のリクエスト情報が格納
される。このリクエスト情報の種類としては、ブ
ロツク転送データを書込むべきキヤツシユメモリ
の列アドレス,行アドレスとか要求元からのリク
エストが書込みリクエストのときは、ストアデー
タ等がある。
A block transfer request is issued from the stage 3 request register 114 to the main memory device 201.
Further, request information being requested to the main memory device is stored in the main memory request buffer 120. The types of this request information include the column address and row address of the cache memory where the block transfer data is to be written, and store data when the request from the request source is a write request.

ステージ3リクエストレジスタ114の内容は
ステージ1リクエストレジスタに戻され、アドレ
スアレイ130への新規割付ブロツク情報の登録
が行なわれる。要求元からのリクエストが書込み
リクエストのときは、同時に前記修飾ビツトがオ
ンされる。リプレイスされたアドレスアレイのブ
ロツクの修飾ビツトがオンであつたときには、リ
プレイスされるブロツクの最新データは主メモリ
装置201には存在せず、キヤツシユメモリ13
1の対応するブロツクにのみ存在するため、この
データを主メモリ装置へ戻す必要がある。このと
きにはリプレイスされたブロツクのアドレスを含
むステージ1リクエストレジスタ112のリクエ
スト情報はステージ2リクエストレジスタ113
に送られ、さらにステージ3リクエストレジスタ
114からリプレイスされたブロツクのアドレス
で主メモリ装置201に対しブロツク書込要求が
行なわれる。このときの主メモリ装置201への
書込データは、キヤツシユメモリ131のデータ
が読出データレジスタ118を経由して送られ
る。要求元からのリクエストが読出しリクエスト
のときは、主メモリ装置201からブロツク転送
データが読出されてくると、書込データレジスタ
115に前記データが入れられる。このとき主メ
モリリクエストバツフア120から前記データを
書込むべきキヤツシユメモリの行アドレス,列ア
ドレスが取出され、キヤツシユメモリ131に前
記書込データレジスタ115のデータが書込まれ
る。また前記データは要求元に読出データ選択回
路125を経由して送られる。要求元からのリク
エストが書込リクエストのときは、主メモリ装置
201からのブロツク転送データが送られてきた
とき主メモリリクエストバツフア120からスト
アデータが取出され前記ブロツク転送データとマ
ージされて書込データレジスタ115に入れられ
る。
The contents of stage 3 request register 114 are returned to stage 1 request register, and new allocation block information is registered in address array 130. When the request from the request source is a write request, the modification bit is turned on at the same time. When the modification bit of the block in the replaced address array is on, the latest data of the block to be replaced does not exist in the main memory device 201 and is stored in the cache memory 13.
Since it only exists in one corresponding block, it is necessary to return this data to the main memory device. At this time, the request information in the stage 1 request register 112 including the address of the replaced block is transferred to the stage 2 request register 113.
Further, a block write request is made to the main memory device 201 using the address of the replaced block from the stage 3 request register 114. At this time, the data to be written to the main memory device 201 is sent from the cache memory 131 via the read data register 118. When the request from the request source is a read request, when the block transfer data is read from the main memory device 201, the data is stored in the write data register 115. At this time, the row address and column address of the cache memory to which the data is to be written are taken out from the main memory request buffer 120, and the data in the write data register 115 is written into the cache memory 131. Further, the data is sent to the request source via the read data selection circuit 125. When the request from the request source is a write request, when block transfer data is sent from the main memory device 201, store data is extracted from the main memory request buffer 120, merged with the block transfer data, and written. The data is placed in the data register 115.

以上のリクエスト処理は、複数個のリクエスト
がパイプライン的に処理されるため、リクエスト
処理間のアドレス干渉が発生するが、これを回避
するためにアドレス比較回路121が設けられて
いる。アドレス比較回路121にはリクエスト処
理中のアドレスが貯わえられ、このアドレスと新
たにステージ1リクエストレジスタ112に入つ
てきたアドレスが比較され、一致すると前記ステ
ージ1リクエストレジスタ112のリクエスト処
理は抑止される。
In the above request processing, since a plurality of requests are processed in a pipeline manner, address interference occurs between request processings, but an address comparison circuit 121 is provided to avoid this. The address comparison circuit 121 stores the address currently being processed, and compares this address with the address that has newly entered the stage 1 request register 112. If they match, the request processing of the stage 1 request register 112 is inhibited. Ru.

次に本発明の一実施の動的変更時におけるキヤ
ツシユメモリデータの主メモリ装置へのはき出し
を説明する。
Next, a description will be given of how cache memory data is written to the main memory device during dynamic change according to one embodiment of the present invention.

本実施例においては以下の個別動作機能をメモ
リ制御装置内に設けたもので、各機能を演算制御
装置等のマイクロ命令制御により実現するもので
ある。
In this embodiment, the following individual operation functions are provided in the memory control device, and each function is realized by microinstruction control of an arithmetic control device or the like.

機能その1は、行指定新規割付禁止ビツト11
9である。本禁止ビツトはキヤツシユメモリの各
行対応に設けられ要求元からのリクエストにより
設定,解除が可能である。本禁止ビツトが設定さ
れると、キヤツシユメモリミスヒツト時に対応す
る行をリプレイスの対照とすることが禁止され
る。ただし、キヤツシユメモリヒツト時には対応
する行に対する読出し書込みのアクセスは許され
る。キヤツシユメモリには一般的に障害キヤツシ
ユメモリの行単位切離しの目的で行対応のデグレ
ードビツトが設けられている装置が多いが、この
デグレートビツトが対応する行のリプレイス対象
とすることの抑止及びキヤツシユメモリヒツト抑
止を行なうのに対し、上記行指定新規割付禁止ビ
ツトは前者のみの動作を行なう。
The first function is the line specification new allocation prohibition bit 11.
It is 9. This prohibition bit is provided for each row of the cache memory and can be set or canceled upon request from the request source. When this prohibition bit is set, the corresponding line is prohibited from being replaced in the event of a cache memory miss. However, when a cache memory hit occurs, read/write access to the corresponding row is permitted. In many devices, cache memory is generally equipped with row-based degrade bits for the purpose of detaching faulty cache memory row by row, but it is possible to prevent rows corresponding to these degrade bits from being replaced. and cache memory hit inhibition, whereas the row-specified new allocation prohibition bit performs only the former operation.

機能その2は、行単位のキヤツシユメモリデー
タの主メモリ装置へのはき出し機能である。この
行単位のはき出し動作は要求元からのリクエスト
により指示され、はき出し制御回路123および
はき出し列アドレスカウンタ122により制御さ
れる。要求元から行はき出しリクエストがくると
はき出し制御回路123が起動され、はき出し列
アドレスカウンタ122がイニシヤライズされ
る。はき出し列アドレスカウンタ122の列アド
レス及び要求元から指定された行アドレスがはき
出しリクエストとしてステージ1リクエストレジ
スタ112でははき出しリクエストを受付ける
と、アドレスアレイ130の指定された行,列の
索引を行なう。索引の結果そのブロツクの有効ビ
ツトオフまたは、修飾ビツトオフであればそこで
処理を終了する。有効ビツトオンかつ修飾ビツト
オンのときの動作は、前記の通常メモリアクセス
リクエストのキヤツシユメモリミスヒツトしたと
きの処理に対しブロツク転送処理を行なわない点
とアドレスアレス130の対応ブロツクの有効ビ
ツトをオフにする点を除けば同様の動作を行な
う。これによりキヤツシユメモリ上にのみある最
新データを主メモリ装置にはき出すことになる。
The second function is to output cache memory data line by line to the main memory device. This row-by-row printing operation is instructed by a request from a request source, and is controlled by a printing control circuit 123 and a printing column address counter 122. When a row printout request is received from a request source, the printout control circuit 123 is activated and the printout column address counter 122 is initialized. When the stage 1 request register 112 receives a print request with the column address of the print column address counter 122 and the row address specified by the request source as a print request, the designated row and column of the address array 130 are indexed. If the index results in a valid bit-off or a qualified bit-off for that block, processing ends there. The operation when the valid bit is on and the modification bit is on is that block transfer processing is not performed in response to the cache memory miss of the normal memory access request mentioned above, and the valid bit of the corresponding block of address address 130 is turned off. The same operation is performed except for this point. This causes the latest data that is only on the cache memory to be flushed out to the main memory device.

機能その3は入出力制御装置リクエスト受付抑
止ビツト124の設置である。本抑止ビツトは要
求元装置からのリクエストにより設定,解除可能
である。本ビツトの値は全入出力制御装置に送出
され、設定されているとき入出力制御装置ではメ
モリ制御装置101へのメモリアクセスを抑止す
る。メモリ制御装置101から各要求元装置への
リクエスト受付抑止信号は、すでにリクエスト受
付ポート回路110,111等のビジーを伝える
目的で存在するため、前記入出力制御装置リクエ
スト受付抑止ビツトの内容はその信号と共用する
ことが可能である。
The third function is the installation of an input/output control device request reception suppression bit 124. This inhibition bit can be set or canceled by a request from the requesting device. The value of this bit is sent to all input/output control devices, and when set, the input/output control device inhibits memory access to the memory control device 101. Since the request reception inhibition signal from the memory control device 101 to each requesting device already exists for the purpose of conveying that the request reception port circuits 110, 111, etc. are busy, the content of the input/output control device request reception inhibition bit is based on that signal. It is possible to share it with

次に上記各機能を組合わせて第3図から第1図
のシステム構成への動的変更を演算制御装置30
1が実行するときの動作手順例を示す。
Next, the arithmetic and control unit 30 combines the above functions to dynamically change the system configuration from FIG. 3 to the system configuration shown in FIG.
An example of the operation procedure when 1 is executed is shown below.

メモリ制御装置101のキヤツシユメモリ行
N(キヤツシユメモリは行0から行Nで構成さ
れるとする)の新規割付禁止ビツト設定。
Setting the new allocation prohibition bit for cache memory row N (assuming that the cache memory is composed of rows 0 to N) of the memory control device 101.

メモリ制御装置101のキヤツシユメモリ行
Nの行はき出し指示。
Instructs to write out the cache memory row N of the memory control device 101.

の行Nはき出し終了後N−1の新規割付禁
止ビツト設定。
After completing row N, set the new allocation prohibition bit for N-1.

メモリ制御装置101のキヤツシユメモリ行
N−1の行はき出し指示。
An instruction to write out the cache memory row N-1 of the memory control device 101.

以下,の動作を行1のはき出し終了まで繰
返す。
The following operations are repeated until the end of row 1.

メモリ制御装置101の入出力制御装置リク
エスト受付抑止ビツト124を設定。
Set the input/output control device request reception suppression bit 124 of the memory control device 101.

メモリ制御装置101のキヤツシユメモリ行
0の行はき出し指示。
Instructs to write out row 0 of the cache memory of the memory control device 101.

の行0はき出し終了後、装置間論理接続状
態を第1図のように変更。
After writing out line 0, change the logical connection status between devices as shown in Figure 1.

メモリ制御装置101の行Nから行1までの
新規割付禁止ビツト解除、及び入出力制御装置
リクエスト受付抑止ビツトの解除。
Clearing the new allocation prohibition bit from row N to row 1 of the memory control device 101, and canceling the input/output control device request reception inhibition bit.

前記手順によりシステム構成変更後メモリ制御
装置102に論理的に接続される主メモリ装置2
03,204のデータを最新状態にすることがで
きる。前記手順の第3図において演算制御装置3
02もメモリ制御装置101に論理的接続されて
いる場合は手順の前に演算制御装置301は演
算制御装置302に対し装置間通信手段により処
理抑止要求を送出し、演算制御装置302からの
メモリ制御装置101へのメモリアクセスを止め
る。またメモリ制御装置101内のキヤツシユメ
モリの1部の行が障害状態等の理由で切離されて
いるときは、上記手順においてその行をはき出し
対象から除外しなければならない。上記手順にお
いて処理時間を最つとも必要とするのはキヤツシ
ユメモリデータの主メモリ装置へのはき出し処理
であるが、以上説明したように (発明の効果) 本発明は以上説明したようにキヤツシユメモリ
データのはき出し中すべて入出力制御装置のメモ
リアクセスを抑止する場合に比較して、この抑止
時間をキヤツシユメモリの行数分の1に減らすこ
とが可能となり、システム構成の動的変更時にお
ける入出力処理のオーバーランの危険性を小さく
することができる。
The main memory device 2 that is logically connected to the memory control device 102 after the system configuration is changed by the above procedure.
03,204 data can be updated to the latest state. In FIG. 3 of the above procedure, the arithmetic and control unit 3
If 02 is also logically connected to the memory control device 101, the arithmetic control device 301 sends a processing suppression request to the arithmetic control device 302 through the inter-device communication means before the procedure, and the memory control from the arithmetic control device 302 is performed. Stop memory access to device 101. Further, when a part of the row of the cache memory in the memory control device 101 is disconnected due to a failure state or the like, that row must be excluded from the target of extraction in the above procedure. In the above procedure, the process that requires the most processing time is the process of writing out the cache memory data to the main memory device, but as explained above (effects of the invention), the present invention Compared to the case where all memory accesses of the input/output control device are inhibited while memory data is being written out, this inhibition time can be reduced to 1/the number of lines in the cache memory. The risk of input/output processing overrun can be reduced.

【図面の簡単な説明】[Brief explanation of drawings]

第1図,第2図,第3図はメモリ制御装置にお
ける各種のシステム構成を示す図、第4図は本発
明の一実施例を示すブロツク図である。 101,102……メモリ制御装置、110,
111,126,127……リクエスト受付ポー
ト回路、112……ステージ1リクエストレジス
タ、113……ステージ2リクエストレジスタ、
114……ステージ3リクエストレジスタ、11
5……書込データレジスタ、116……アドレス
アレイレジスタ、117……アドレスアレイデー
タ選択回路、118……読出データレジスタ、1
19……行指定新規割付禁止ビツト、120……
主メモリリクエストバツフア、121……アドレ
ス比較回路、122……はき出し列アドレスカウ
ンタ、123……はき出し制御回路、124……
入出力制御装置リクエスト受付抑止ビツト、12
5……読出データ選択回路、130……アドレス
アレイ、131……キヤツシユメモリ、132…
…リプレイスメント回路、201,202,20
3,204……主メモリ装置、301,302…
…演算制御装置、401,402……入出力制御
装置。
1, 2, and 3 are diagrams showing various system configurations in a memory control device, and FIG. 4 is a block diagram showing an embodiment of the present invention. 101, 102... memory control device, 110,
111, 126, 127...Request reception port circuit, 112...Stage 1 request register, 113...Stage 2 request register,
114...Stage 3 request register, 11
5...Write data register, 116...Address array register, 117...Address array data selection circuit, 118...Read data register, 1
19...Line specification new allocation prohibition bit, 120...
Main memory request buffer, 121...Address comparison circuit, 122...Extrusion column address counter, 123...Extrusion control circuit, 124...
Input/output control device request reception suppression bit, 12
5...Read data selection circuit, 130...Address array, 131...Cache memory, 132...
...Replacement circuit, 201, 202, 20
3,204...Main memory device, 301,302...
... Arithmetic control device, 401, 402 ... Input/output control device.

Claims (1)

【特許請求の範囲】[Claims] 1 複数の演算制御装置、複数の入出力制御装
置、複数の主メモリ装置及び前記演算制御装置と
前記入出力制御装置とから前記主メモリ装置に対
するメモリアクセス要求を仲介する複数のメモリ
制御装置を含み、前記各メモリ制御装置内には前
記各演算制御装置及び入出力制御装置によつて共
有されたセツトアソシアテイブ方式かつストアス
ワツプ方式のキヤツシユメモリを有する情報処理
システムにおいて、前記キヤツシユメモリの行を
指定してその行へ新規ブロツク登録の禁止を行な
う回路と、前記キヤツシユメモリの行を指定して
その行のデータを対応する前記主メモリ装置へは
き出す回路と、前記入出力制御装置から前記メモ
リ制御装置へのメモリアクセスを抑止する回路と
を設けたことを特徴とするメモリ制御装置。
1 includes a plurality of arithmetic control devices, a plurality of input/output control devices, a plurality of main memory devices, and a plurality of memory control devices that mediate memory access requests from the arithmetic control devices and the input/output control devices to the main memory device. In an information processing system, each of the memory control devices includes a cache memory of a set associative type and a store swap type, which is shared by each of the arithmetic control units and input/output control units. a circuit that specifies a line in the cache memory and prohibits new block registration in that line; a circuit that specifies a line in the cache memory and writes data in that line to the corresponding main memory device; 1. A memory control device comprising: a circuit for inhibiting memory access to the memory control device.
JP59170214A 1984-08-15 1984-08-15 Memory control device Granted JPS6148053A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59170214A JPS6148053A (en) 1984-08-15 1984-08-15 Memory control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59170214A JPS6148053A (en) 1984-08-15 1984-08-15 Memory control device

Publications (2)

Publication Number Publication Date
JPS6148053A JPS6148053A (en) 1986-03-08
JPH0353658B2 true JPH0353658B2 (en) 1991-08-15

Family

ID=15900783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59170214A Granted JPS6148053A (en) 1984-08-15 1984-08-15 Memory control device

Country Status (1)

Country Link
JP (1) JPS6148053A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5764384A (en) * 1980-10-06 1982-04-19 Ibm Main memory clearing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5764384A (en) * 1980-10-06 1982-04-19 Ibm Main memory clearing system

Also Published As

Publication number Publication date
JPS6148053A (en) 1986-03-08

Similar Documents

Publication Publication Date Title
KR100491435B1 (en) System and method for maintaining memory coherency in a computer system having multiple system buses
US5802582A (en) Explicit coherence using split-phase controls
US6122712A (en) Cache coherency controller of cache memory for maintaining data anti-dependence when threads are executed in parallel
EP0072179B1 (en) Clearing invalid addresses in cache memory
CA1124888A (en) Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
JP2516300B2 (en) Apparatus and method for optimizing the performance of a multi-processor system
EP0077451B1 (en) Storage subsystem including a bypassable cache
US6088769A (en) Multiprocessor cache coherence directed by combined local and global tables
US5201041A (en) Cache bypass apparatus
US6625698B2 (en) Method and apparatus for controlling memory storage locks based on cache line ownership
US4912631A (en) Burst mode cache with wrap-around fill
JPS6042503B2 (en) Cache control mechanism in multiprocessing systems
JPH0576060B2 (en)
JP3236287B2 (en) Multiprocessor system
EP0533427B1 (en) Computer memory control system
US5737568A (en) Method and apparatus to control cache memory in multiprocessor system utilizing a shared memory
US6490662B1 (en) System and method for enhancing the reliability of a computer system by combining a cache sync-flush engine with a replicated memory module
EP0567355B1 (en) A method and apparatus for operating a multiprocessor computer system having cache memories
EP0375864A2 (en) Cache bypass
US6021466A (en) Transferring data between caches in a multiple processor environment
JPS63253448A (en) Multi-computer device
JPH0353658B2 (en)
US20060095668A1 (en) Method for processor to use locking cache as part of system memory
JPH042978B2 (en)
JPH0816885B2 (en) Cache memory control method