JPS62162153A - Data-replace control system for buffer memory device - Google Patents

Data-replace control system for buffer memory device

Info

Publication number
JPS62162153A
JPS62162153A JP61313524A JP31352486A JPS62162153A JP S62162153 A JPS62162153 A JP S62162153A JP 61313524 A JP61313524 A JP 61313524A JP 31352486 A JP31352486 A JP 31352486A JP S62162153 A JPS62162153 A JP S62162153A
Authority
JP
Japan
Prior art keywords
block
replacement
bits
replace
bit
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.)
Pending
Application number
JP61313524A
Other languages
Japanese (ja)
Inventor
Nobuhiko Kuribayashi
栗林 暢彦
Takashi Chiba
隆 千葉
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 JP61313524A priority Critical patent/JPS62162153A/en
Publication of JPS62162153A publication Critical patent/JPS62162153A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To decrease peripheral circuits in number and to simplify the control by making a replace-bit number necessary for N-pieces of block to be (NXlog2N), and parity-checking the replace bit together with other control bits. CONSTITUTION:N is to be 1, 2, 4, 8, 16, 32,... i.e. a positive integer and an exponetial number of 2 where the replace bits are (logN)-pieces. Accordingly the number of all replace bits is (NXlog2N). The last replace bit R(logN.0), R(logN.1), R(logN.N-1) of respective blocks are used in deciding the HOT/ COLD between the groups of N/2-pieces blocks. Based on the result of the said decision in respective decision-stages, the AND-logic of respective decisions is taken, to decide a farthest-COLD block to be a block to be replaced.

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、計算機のバッファ記憶装置の制御方式に関し
、特にセット・アソシアティブ方式等のバッファ記憶装
置におけるブロックのLRU(Least Recen
tly Used )管理による置き換え制御方式に関
する。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to a control method for a buffer storage device of a computer, and particularly to a control method for controlling a block LRU (Least Receiver) in a buffer storage device such as a set-associative method.
This invention relates to a replacement control method using (tly Used) management.

〔技術の背景〕[Technology background]

最近の大型計算機の多くは、CPUからの主記憶アクセ
ス時間を短縮するためにCPU内にセットアソシアティ
ブ方式のキャッシュを設けている。
Many of the recent large-scale computers are equipped with a set-associative cache within the CPU in order to shorten the main memory access time from the CPU.

VU(ベクトルユニット)の接続されたシステムにおい
ては、VUは、直接主記憶をアクセスするので、CPU
のキャッシュと主記憶との間で一致制御が必要となる。
In a system in which VUs (vector units) are connected, the VUs directly access main memory, so the CPU
Coherency control is required between the cache and main memory.

箪1図はその1符11を云1.たもので 1は十紀倚装
置MSU、2は主記憶制御装置MCU、3は中央処理装
置CPU、4はヘクトル処理装置VU。
The 1st figure of the chest says 11 and 1. 1 is a storage unit MSU, 2 is a main memory control unit MCU, 3 is a central processing unit CPU, and 4 is a vector processing unit VU.

5はTAGlとデータバッファより構成されているキャ
ッシュ、6はTAG2,7はTAG2制御回路を示す。
5 is a cache composed of a TAGl and a data buffer, 6 is a TAG2, and 7 is a TAG2 control circuit.

CPUが主記憶よりブロックフェッチを行うと。When the CPU fetches a block from main memory.

キャッシュのTAGIおよびデータバッファにアドレス
およびデータをそれぞれ登録すると同時に。
At the same time as registering the address and data in the cache's TAGI and data buffer, respectively.

TAG2へプロッタフェッチアドレスを登録する。Register the plotter fetch address in TAG2.

vUが主記憶装置にストアすると、ストアアドレスがT
AG2へ送られてきて、CPUのキャッシュのアドレス
と一致するかどうかのチェックを行う。一致するとCP
Uに対してキャッシュのTAGIへ一致したアドレスを
送ってバッファインバリデーション(BT)を行う。一
致しない場合はバッファインバリデーションは行わない
。TAG2はBLKO,BLKIの2つのブロックによ
り構成されていて、常に最近使用のもので占められるよ
うにするため、各BLOCKに対応するデータの使用状
況を、TAG2制御回路7がリプレイスピッI−を用い
て管理し、データの置き換え制御を行う。その置き換え
アルゴリズムは、LRtJと呼ばれる。
When vU is stored in main memory, the store address is T.
The address is sent to AG2 and checked to see if it matches the address in the CPU's cache. CP when matched
Buffer invalidation (BT) is performed by sending the matching address to TAGI of the cache for U. If they do not match, buffer invalidation is not performed. TAG2 is composed of two blocks, BLKO and BLKI, and in order to always be occupied by recently used data, the TAG2 control circuit 7 uses a replace pin I- to check the usage status of data corresponding to each BLOCK. management and control data replacement. The replacement algorithm is called LRtJ.

たとえばTAG2のBLKO,BLKI両方にすでに登
録済みであるとして、さらにブロックフェッチアドレス
を登録する場合には、LRUかリプレイスビットの内容
によって最新でないアドレスを決定し、そのアドレスを
CPUへ転送してキャッシュのパンファインバリデーシ
ョンを行い。
For example, if you want to register a block fetch address that has already been registered in both BLKO and BLKI of TAG2, determine which address is not the latest based on the contents of the LRU or replace bit, transfer that address to the CPU, and store it in the cache. Performed bread fine validation.

その結果置き換え対象となったTAG2の一方のBLO
CKに対してブロックフェッチアドレスを登録するよう
にさせる。
As a result, one BLO of TAG2 was replaced.
Make CK register a block fetch address.

リプレイスピントはブロックごとに設けられ。Replace pinto is provided for each block.

それぞれ対応するブロックの最新の使用時点の序列を表
している。このリプレイスビットにエラーが存在した場
合、置き換え制御は最適なものとならず、キャッシュの
効率は低下する。
Each represents the order of the corresponding block at the time of latest use. If an error exists in this replacement bit, replacement control will not be optimal and cache efficiency will decrease.

従来の計算機では、TAG2制御回路7がリプレイスビ
ットをまとめて管理していたため、エラーチェック用の
パリティビットは、リプレイスビット全体に対して付加
されていた。
In the conventional computer, the TAG2 control circuit 7 collectively managed the replace bits, so the parity bit for error checking was added to all the replace bits.

〔発明の目的および構成〕[Object and structure of the invention]

本発明の目的は、バッファ記憶装置におけるLRU管理
のための制御回路を簡単で信頼度の高いものとし、かつ
少ないハードウェア量により実現することにあり、その
ための構成として2Nを2のべき乗数としてN個のブロ
ックからなるバッファと、各ブロックのデータ置き換え
をリプレイスビットにもとづいて制御する置き換え制御
回路とをそなえたセットアソシアティブ方式のバッファ
記憶装置において。
An object of the present invention is to make a control circuit for LRU management in a buffer storage device simple and highly reliable, and to realize it with a small amount of hardware.For this purpose, 2N is a power of 2. In a set-associative type buffer storage device that includes a buffer consisting of N blocks and a replacement control circuit that controls data replacement of each block based on a replace bit.

上記ヱき換え制御回路は、各ブロックごとにlog2N
個のリプレイスビットをそなえ、かつ上記各ブロックの
log2N個のリプレイスビット中の各1個ずつを使用
して各ブロックを2個ずつ組み合わせたlog、 N段
のトーナメント形式の論理を組み立てた使用順位判定論
理回路をそなえることにより、置き換えブロックを決定
するように構成され。
The above switching control circuit has log2N for each block.
Use order determination using log, N-stage tournament style logic that combines two of each block using one of each of the log2N replacement bits of each block. It is configured to determine a replacement block by providing a logic circuit.

は、当該ブロックの他の制御ビットと一緒にパリティを
とってチェ7りされることを特徴とするものである。
is characterized in that it is checked for parity together with other control bits of the block.

〔発明の実施例〕[Embodiments of the invention]

以下に9本発明の詳細を実施例にしたがって説明する。 The details of the present invention will be explained below based on examples.

バッファをN個のブロックに分割して使用する場合、ブ
ロックごとに、リプレイスビットを(log2N]個持
つ必要がある。
When a buffer is divided into N blocks and used, each block needs to have (log2N) replacement bits.

はじめにブロック数が2個の場合、および4個の場合に
ついて説明し、最後にN個に一般化した場合について説
明する。
First, a case where the number of blocks is two and a case where there are four will be explained, and finally a case where the number of blocks is generalized to N will be explained.

なお、新ブロックのうち使用層の新しい方をHOT、古
い方をC0LDと表す。
Note that among the new blocks, the newer used layer is represented by HOT, and the older one is represented by C0LD.

(1)ブロック数が2個の場合 第2図に示すように、各ブロックBLKO,,BLKI
に各1個のリプレイスビットをR6,R5を設ける。置
き換えのアルゴリズムは2次の通りである。
(1) When the number of blocks is 2, each block BLKO,,BLKI
One replace bit each is provided in R6 and R5. The replacement algorithm is as follows.

は、BLKIがHOTであり、BLKOを置き換える。, BLKI is HOT and replaces BLKO.

■ RO,R1の値が0.1または1.0の場合は、B
LKOがHOTであり、BLKIを置き換える。
■ If the value of RO, R1 is 0.1 or 1.0, B
LKO is HOT and replaces BLKI.

置き換えた場合は、そのブロックへ新たなデータを登録
するが、そのとき以前のリプレイスビットを反転させて
登録する。それにより置き換えたブロックがHOTとな
る。
When replacing, new data is registered in that block, but at that time, the previous replacement bit is inverted and registered. As a result, the replaced block becomes HOT.

第3図に置き換えブロックを判定する回路の1例を示す
。図中、8は排他的論理和EORゲート。
FIG. 3 shows an example of a circuit for determining a replacement block. In the figure, 8 is an exclusive OR EOR gate.

9はインバータ、10はバッファである。9 is an inverter, and 10 is a buffer.

ブロックを参照した場合、参照したブロックがHOTに
なるようにリプレイスビットを設定する。
When a block is referenced, the replace bit is set so that the referenced block becomes HOT.

ただし、連続して参照される場合など必ずしも反転する
必要がない場合もある。ここで、新たに設定するリプレ
イスビットをNewRO,2NewR1トすると、論理
は次のようになる。
However, there are cases where it is not necessary to invert, such as when it is referenced continuously. Here, when the newly set replacement bits are set as NewRO and 2NewR1, the logic becomes as follows.

NewRO−(BLKOの置き換え)■RONewR1
= CB、L K 1の置き換え)■R1さらに整理す
ると。
NewRO- (replacement of BLKO)■RONewR1
= CB, L K 1 replacement) ■R1 Let's organize it further.

NewRO= (RO■R1)■RO=RINewRI
 = (ROΦR1)ΦR1=ROと表すことができる
。なお1式中の■は、排他的論理和EORを示す。これ
は、第4図に示すインバータ11およびANDゲート1
2の簡単な回路により実現される。
NewRO= (RO■R1)■RO=RINewRI
= (ROΦR1)ΦR1=RO. Note that ■ in equation 1 indicates exclusive OR EOR. This is the inverter 11 and AND gate 1 shown in FIG.
This is realized by two simple circuits.

第5図は、第3図および第4図の回路を用いて実行され
た置き換え制御の動作例を示したもので。
FIG. 5 shows an example of operation of replacement control executed using the circuits of FIGS. 3 and 4.

動作順番号P、、P、、・・・、P、。の順番に、動作
内容の行に示す登録あるいは参照の動作が行われた場合
の、ROおよびR1の値、HOTブロック。
Operation sequence number P,,P,,...,P,. The values of RO and R1, and the HOT block when the registration or reference operation shown in the operation content row is performed in the order of .

置き換えブロックを示している。Replacement block is shown.

なおPoのINITIAL状態では、BLKOおよびB
LKIはクリアされている。そのため。
Note that in the INITIAL state of Po, BLKO and B
LKI has been cleared. Therefore.

P、およびP、の登録では置き換えは起こらず。No replacement occurs in the registration of,P,and,P,.

次のPb=  P?、Pqの登録になって置き換えが行
われる。
Next Pb=P? , Pq are registered and replaced.

(2)ブロック数が4個の場合 第6図に示すように、各ブロックBLKO乃至BLK3
に、各2個のリプレイスビット(ROO。
(2) When the number of blocks is 4, each block BLKO to BLK3 is
and two replace bits each (ROO.

RIO)、  (ROI、R11)、  (RO2,R
12)、  (RO3,R13)を設ける。
RIO), (ROI, R11), (RO2, R
12), (RO3, R13) are provided.

各リプレイスビットの役割とHOT、C0LDの判定条
件は次の通りである。
The role of each replace bit and the determination conditions for HOT and C0LD are as follows.

■ BLKOとBLKIの間のHOT、C0LDの判定
は、ROOとROIのビットによって行う。判定条件は
、前項(1)の場合と同じである。
(2) HOT and C0LD between BLKO and BLKI are determined by the ROO and ROI bits. The determination conditions are the same as in the previous section (1).

すなわち、(0,O)または(1,1)の場合は、BL
KOがC0LDと判定する。(1,0)または(0,1
)の場合は、BLKIがC0LDと判定する。
That is, in the case of (0, O) or (1, 1), BL
KO is determined to be C0LD. (1,0) or (0,1
), it is determined that BLKI is C0LD.

■ BLK2とBLK3との間のHOT、C0LDの判
定も同様に行う。
(2) The determination of HOT and C0LD between BLK2 and BLK3 is performed in the same way.

■ BLKo、1とBLK2,3との間のHOT。■ HOT between BLKo, 1 and BLK2, 3.

GOLDの判定については、RIO,R11゜R12,
R13ビツトのすべてのEORが0の場合に、BLKo
、1がC0LDと判定する。
For GOLD determination, RIO, R11°R12,
If all EORs of R13 bits are 0, BLKo
, 1 is determined to be C0LD.

■ 上記3つの判定結果から、もっとも古いブロックを
置き換える。
■ Replace the oldest block based on the three judgment results above.

置き換えたブロックへ新たなデータを登録する場合、リ
プレイスビット(ROX、RIX)以前のりプレイスピ
ンドの内容を反転させて登録する。
When registering new data in a replaced block, the contents of the paste pin before the replace bits (ROX, RIX) are inverted and registered.

これにより、置き換えたブロックは、もっともHOTな
ブロックとなる。
As a result, the replaced block becomes the HOT block.

ブロックを参照した場合も、ブロックをもっともHOT
となるように設定する。NewROO。
When you refer to a block, you can also select the HOT block.
Set it so that New ROO.

NewR01,NewR02,NeGIIRO3は、ブ
o7り数が2個の場合と同様に1次のように更新される
NewR01, NewR02, and NeGIIRO3 are updated linearly as in the case where the number of entries is two.

NewROO=ROI NewRO1=ROO NewRO2=RO3 NesvRO3=RO2 NewR10,NewR11,NewR12,Ne1y
R13についても、同様に NetwR10= RIOe(BLKo、1の置き換え) NewR11= R11■(BLKO,lの置き換え) Ne皆R12− Rl2■(BLK2,3の置き換え) Ne匈R13= R13■(BLK2.3の置き換え) となる。論理的には、さらに簡略にできるが、実際の設
計では、  (BLKo、1の置き換え)。
NewROO=ROI NewRO1=ROO NewRO2=RO3 NesvRO3=RO2 NewR10, NewR11, NewR12, Nely
Similarly for R13, NetR10= RIOe (replacement of BLKo, 1) NewR11= R11■ (replacement of BLKO, l) Ne all R12- Rl2■ (replacement of BLK2, 3) Ne R13= R13■ (BLK2.3 ). Logically, it can be further simplified, but in actual design, (replacement of BLKo, 1).

(BLK2,3の置き換え)は、置き換えブロックを作
成する上でつくられるので2 これ以上は簡略にしない
(Replacement of BLK2 and 3) is created when creating the replacement block, so 2 will not be simplified any further.

第7図は、上記した置き換えブロックを決定するための
判定回路の1例である。図中、13乃至17はEORゲ
ート 18乃至20はインバータ。
FIG. 7 shows an example of a determination circuit for determining the above-mentioned replacement block. In the figure, 13 to 17 are EOR gates, and 18 to 20 are inverters.

21乃至24はANDゲートである。21 to 24 are AND gates.

第8図は、上記した新しいリプレイスビットの作成回路
の1例である。図中、25乃至28はEEORゲートで
ある。
FIG. 8 shows an example of the above-described new replacement bit creation circuit. In the figure, 25 to 28 are EEOR gates.

第9図は、第7図および第8図の回路を用いて実行され
た置き換え制御の動作例であり、第5図に対応するもの
である。動作順番号P0のINITIAL状態ではすべ
てのブロックはクリアされている。したがって、P、か
らR4までの登録動作では、置き換えが生しない。
FIG. 9 is an operation example of replacement control executed using the circuits of FIGS. 7 and 8, and corresponds to FIG. 5. In the INITIAL state of operation order number P0, all blocks are cleared. Therefore, no replacement occurs in the registration operations from P to R4.

(3)ブロック数がN個の場合 Nは、l、2,4.8.16.32.・・・つまり正の
整数でかつ2のべき乗の数である。このときリプレイス
ビットは(log N)個とする。その結果、全リプレ
イスビット数は、  (NXlog2N)となる。
(3) When the number of blocks is N, N is l, 2, 4.8.16.32. ...In other words, it is a positive integer and a power of 2. At this time, the number of replacement bits is (log N). As a result, the total number of replaced bits is (NXlog2N).

第10図は、このようなN個のブロックについて置き換
えブロックを決定するために使用されるリプレイスビッ
トの判定処理アルゴリズムの説明図であり、2を単位と
して(log、 N )段で順位を判定するトーナメン
ト構造(あるいはトリー構造)をとっている。
FIG. 10 is an explanatory diagram of a replacement bit determination processing algorithm used to determine a replacement block for such N blocks, and the ranking is determined in (log, N) stages with 2 as a unit. It has a tournament structure (or tree structure).

たとえばBLKOには、リプレイスビットR00、R1
0,−R(log N、  0)が与えられ、最後のB
LK (N−1>には、RO(N−1)、R1(N  
L) 、 −R(log N ・N −1)が与えられ
る。
For example, BLKO has replace bits R00, R1
0,−R(log N, 0) is given, and the last B
LK (N-1> has RO(N-1), R1(N
L), −R(log N ・N −1) is given.

各ブロックの第1番目のリプレイスビットR00、R1
0,・・・、RO−N−1は、全ブロックを2個ずつの
グループに区切ったとき、各2個のブロック間での1(
OT、C0LDを判定するために使用される。これらの
グループは(RQQ、ROl)、  (RO2,RO3
)、・・・、  (RO−N−2゜RO−N−1>で表
される。
First replacement bit of each block R00, R1
0, ..., RO-N-1 is 1 (
Used to determine OT and COLD. These groups are (RQQ, ROl), (RO2, RO3
),..., (RO-N-2°RO-N-1>).

各ブロックの第2番目のリプレイスビットR10、R1
1,・・・、R1・N−1は、順次の2個ずつのブロッ
クの2グル一プ間でのHOT、C0LDを判定するため
に使用される。
2nd replace bit R10, R1 of each block
1, . . . , R1·N-1 are used to determine HOT and C0LD between two groups of two sequential blocks.

このようにして、各ブロックの最後のリプレイスビット
R(log N・0) 、  R(log N・1) 
In this way, the last replacement bit of each block R(log N・0), R(log N・1)
.

−、R(log N−N  1 )は2N/2個ずつの
ブロックのグループ間でのHOT、C0LDを判定する
ために使用される。
-, R(log N-N 1 ) is used to determine HOT, C0LD between groups of 2N/2 blocks.

以上の各判定段階での判定結果にもとづいて。Based on the judgment results at each judgment stage above.

各判定のAND論理をとり、もっともC0LDなブロッ
クを置き換えブロックと判定する。
The AND logic of each determination is taken, and the block that is the most C0LD is determined to be the replacement block.

たとえばブロックXを置き換えた場合は、そのリプレイ
スビットROX、  RI X、  ・=、  R(l
ogN−X)のすべてを反転させて登録する。
For example, when block X is replaced, its replacement bits ROX, RI
ogN-X) and register them.

これによりそのブロックは、もっともHOTなブロック
となる。また参照した場合は、その参照されたブロック
がもっともHOTとなるように。
This makes that block the HOT block. Also, when referenced, the referenced block will be the HOT.

次の条件にしたがってROX、RIX、・・・、R(l
og N、  X)を設定する。
ROX, RIX, ..., R(l
og N, X).

NewROλ=RO・X+1(ただしX=0.2,4,
6,8.−)NewRO−X+1=RIX NewRIX=RIXΦ(Bl、にχ、x+1の置き換
え)NewRl  ・X+1=RI HX41■(BL
KX、X+1の置き換え)NewR2X=R2X■(B
LKX、X+1.X+2.X+3の置き換え)NewR
2・X+1= R2・X+1■(BLKX、 X+1 、 X+2. 
X+3の置き換え)NewR2−X+2= R2−X+2 e(BLKX、X+l、X+2.X+3
の置き換え)NewR2−X+3= R2・X+3■(BLKX、X+I、X+2.X+3の
置き換え)以下同様である。
NewROλ=RO・X+1 (where X=0.2, 4,
6,8. -) NewRO-X+1=RIX NewRIX=RIXΦ(Replacement of χ, x+1 to Bl) NewRl ・X+1=RI HX41■(BL
Replacement of KX, X+1) NewR2X=R2X■(B
LKX, X+1. X+2. Replacement of X+3) NewR
2・X+1=R2・X+1■(BLKX, X+1, X+2.
Replacement of X+3) NewR2-X+2= R2-X+2 e(BLKX, X+l, X+2.X+3
(Replacement of BLKX, X+I, X+2.X+3) NewR2-X+3=R2.X+3 (Replacement of BLKX, X+I,

次に2本発明方式の1実施例装置について説明する。Next, a second embodiment of the present invention system will be described.

第11図は、第1図に示す計算機システムにおける記憶
制御装置内のTAG2を中心とする回路に本発明方式を
適用した実施例構成を示す。
FIG. 11 shows the configuration of an embodiment in which the method of the present invention is applied to a circuit centered on TAG2 in the storage control device in the computer system shown in FIG.

第11図において、6はTAG2であり、2つのブロッ
クBLKOおよびBLKIからなるキャッシュのアドレ
スコピーが格納される。7はTA02制御回路、29は
TAG21Nレジスタ、30はBFAレジスタ、31は
セレクタSEL、32はTAG20UTレジスタ、33
および34は一致回路、35はU、 L、 P、 Rf
dl?i11回路を示すTAG2.6のブロックは、5
12ラインから成る。ブロックサイズは、128バイト
である。他方CPUキャッシュのブロックサイズは、6
4バイトである。
In FIG. 11, 6 is TAG2, in which an address copy of the cache consisting of two blocks BLKO and BLKI is stored. 7 is the TA02 control circuit, 29 is the TAG21N register, 30 is the BFA register, 31 is the selector SEL, 32 is the TAG20UT register, 33
and 34 are matching circuits, 35 are U, L, P, Rf
dl? The block of TAG2.6 showing the i11 circuit is 5
It consists of 12 lines. The block size is 128 bytes. On the other hand, the block size of the CPU cache is 6
It is 4 bytes.

TAG2にはU、L、P、Rなどの補助制御ビットが一
緒に含まれている。U、LビットはTAG2のブロック
サイズ128バイトの上位(U)64バイト、下位(L
)64バイトを指示するビットである。またPはパリテ
ィビット、Rはリプレイスビットである。
TAG2 also includes auxiliary control bits such as U, L, P, and R. The U and L bits are the upper (U) 64 bytes and lower (L) of the TAG2 block size of 128 bytes.
) This bit indicates 64 bytes. Further, P is a parity bit, and R is a replacement bit.

TAG21Nレジスタ29およびBFAレジスタ30へ
は、入力されたアドレスデータが同時に加えろイ(ろか
、TAG21Nレジスタは、これをITだけ保持し、B
FAレジスタ30はある一定時間保持する。それにより
、VU  5TOREアドレスが入力されないタイミン
グにおいて、セレクタ5EL31を開き、TAG2 1
Nレジスタ29を通して、TAG2ヘアドレスデータを
書き込むことを可能にする。
The input address data should be added to the TAG21N register 29 and the BFA register 30 at the same time.
The FA register 30 holds the data for a certain period of time. As a result, at the timing when the VU 5TORE address is not input, the selector 5EL31 is opened and the TAG2 1
It is possible to write address data to TAG2 through the N register 29.

次にTAG2の登録時の動作について述べる。Next, the operation at the time of registration of TAG2 will be described.

この場合TAG21Nレジスタ29へ入力される、  
登録データは、CPUのブロックフェッチアドレスであ
る。またTAG2.6のブロックBLKOのVALID
をVO,BLKIのVALI DをV、とし。
In this case, it is input to the TAG21N register 29.
The registration data is the block fetch address of the CPU. Also, VALID of block BLKO of TAG2.6
Let VO be VO, and BLKI's VALI D be V.

V=V。・V、とする。V=V.・Let it be V.

さらに、−数回路33が、TAG2のBLKOの内容と
入力登録データとを比較した結果のマツチ信号をMO,
−数回路34によるBLKIのマツチ信号をMlとし。
Furthermore, the minus number circuit 33 outputs a match signal as a result of comparing the contents of BLKO of TAG2 and the input registration data to MO,
- Let the match signal of BLKI by the numerical circuit 34 be Ml.

M ”’ M o + M I とする。M ”’ M     + M I .

以上のV、 M値に応じて、TAG2制御回路7は次の
ような制御動作を行う。
Depending on the above V and M values, the TAG2 control circuit 7 performs the following control operations.

以下余白 以下余白。Margin below Margin below.

なお従来、リプレイスビットRはTAG2とは別に記憶
されていたため、そのパリティは専用に設けられていた
。しかし9本実施例では、第12図にBLKOについて
例示されているように、TAGZ内に他のデータと一諸
に格納されているために、アドレスデータあるいはU、
  L、ビ・ノド等の補助制御ビットとパリティを共有
することができる。
Conventionally, the replace bit R was stored separately from the TAG2, so its parity was provided exclusively. However, in this embodiment, as illustrated for BLKO in FIG. 12, address data or U,
Parity can be shared with auxiliary control bits such as L, bit, etc.

〔発明の効果〕〔Effect of the invention〕

本発明によれば2N個のブロックに対して必要とされる
リプレイスビット数は、  (NXlog2N)個であ
る。しかし、従来方式では、ブロック数が多くなるほど
本発明方式にくらべてリプレイスビット数の増加率が大
きくなり、たとえばブロック数16の場合、ある従来方
式では、120ビツトを必要とするが本発明方式では6
4ビツトで済ますことができる。またリプレイスビット
は、他の制御ビットと一緒にパリティチェックされるた
め1周辺回路が少なくて済み、制御も簡単化される。
According to the present invention, the number of replacement bits required for 2N blocks is (NXlog2N). However, in the conventional method, as the number of blocks increases, the rate of increase in the number of replacement bits increases compared to the method of the present invention. For example, when the number of blocks is 16, a conventional method requires 120 bits, but the method of the present invention requires 120 bits. 6
It can be done with 4 bits. Furthermore, since the replace bit is subjected to parity check together with other control bits, one less peripheral circuit is required, and control is simplified.

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

第1図はバッファ記憶装置の概要図、第2図はリプレイ
スビットの説明図、第3図はブロック数2の場合の置き
換えブロック判定回路の実施例図。 第4図は同じくリプレイスビット作成回路の実施例図5
第5図はその動作例の説明図、第6図はブロック数が4
個の場合のリプレイスビットの説明図、第7図はその置
き換えブロック判定回路の実施例図、第8図は同じくリ
プレイスビット作成回路の実施例図、第9図はその動作
側説明図、第10図はブロック数Nの場合のリプレイス
ビットの説明図、第11図は記憶制御装置の1実施例の
要部構成図、第12図はパリティピントの説明図である
。 図中、1は主記憶装置MS0.2は主記憶制御装置MC
U、3は中央処理装置CPU、4はベクトル処理装置V
tJ、5はキャッシュ、6はTAG2.7はTAG2制
御回路を示す。
FIG. 1 is a schematic diagram of a buffer storage device, FIG. 2 is an explanatory diagram of a replacement bit, and FIG. 3 is an embodiment diagram of a replacement block determination circuit when the number of blocks is two. Figure 4 is also an example diagram 5 of the replace bit creation circuit.
Fig. 5 is an explanatory diagram of an example of its operation, and Fig. 6 shows that the number of blocks is 4.
FIG. 7 is an example diagram of the replacement block determination circuit, FIG. 8 is an example diagram of the replace bit creation circuit, FIG. 9 is an explanatory diagram of its operation side, and FIG. FIG. 11 is an explanatory diagram of replace bits when the number of blocks is N, FIG. 11 is a configuration diagram of a main part of one embodiment of the storage control device, and FIG. 12 is an explanatory diagram of parity focus. In the figure, 1 is the main storage device MS0.2 is the main storage control device MC.
U, 3 is the central processing unit CPU, 4 is the vector processing unit V
tJ, 5 is a cache, 6 is TAG2.7 is a TAG2 control circuit.

Claims (1)

【特許請求の範囲】 Nを2のべき乗数としてN個のブロックからなるバッフ
ァと、各ブロックのデータ置き換えをリプレイスビット
にもとづいて制御する置き換え制御回路とをそなえたセ
ットアソシアティブ方式のバッファ記憶装置において、 上記置き換え制御回路は、各ブロックごとにlog_2
N個のリプレイスビットをそなえ、かつ上記各ブロック
のlog_2N個のリプレイスビット中の各1個ずつを
使用して各ブロックを2個ずつ組み合わせたlog_2
N段のトーナメント形式の論理を組み立てた使用順位判
定論理回路をそなえることにより、置き換えブロックを
決定するように構成され、さらに、上記各ブロックごと
のリプレイスビットは、当該ブロックの他の制御ビット
と一緒にパリティをとってチェックされることを特徴と
するバッファ記憶装置における置き換え制御方式。
[Scope of Claims] A set-associative type buffer storage device comprising a buffer consisting of N blocks, where N is a power of 2, and a replacement control circuit that controls data replacement of each block based on a replace bit. , The above replacement control circuit calculates log_2 for each block.
log_2, which has N replacement bits and combines two of each block using one of each of the log_2N replacement bits of each block above.
It is configured to determine a replacement block by providing a usage order determination logic circuit that has N stages of tournament-style logic assembled, and furthermore, the replacement bit for each block is used together with other control bits of the block. A replacement control method in a buffer storage device, characterized in that parity is checked.
JP61313524A 1986-12-27 1986-12-27 Data-replace control system for buffer memory device Pending JPS62162153A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61313524A JPS62162153A (en) 1986-12-27 1986-12-27 Data-replace control system for buffer memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61313524A JPS62162153A (en) 1986-12-27 1986-12-27 Data-replace control system for buffer memory device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP58118779A Division JPS6010370A (en) 1983-06-30 1983-06-30 Replacement control system in buffer storage device

Publications (1)

Publication Number Publication Date
JPS62162153A true JPS62162153A (en) 1987-07-18

Family

ID=18042347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61313524A Pending JPS62162153A (en) 1986-12-27 1986-12-27 Data-replace control system for buffer memory device

Country Status (1)

Country Link
JP (1) JPS62162153A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5693167A (en) * 1979-12-26 1981-07-28 Fujitsu Ltd Memory replacement control system
JPS5696337A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Resource control system
JPS6342301A (en) * 1986-08-06 1988-02-23 Yoshikawa Kogyo Co Ltd Production of decarburized iron powder

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5693167A (en) * 1979-12-26 1981-07-28 Fujitsu Ltd Memory replacement control system
JPS5696337A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Resource control system
JPS6342301A (en) * 1986-08-06 1988-02-23 Yoshikawa Kogyo Co Ltd Production of decarburized iron powder

Similar Documents

Publication Publication Date Title
US4833642A (en) Cache controller giving versatility to cache memory structure
US4244033A (en) Method and system for operating an associative memory
US5274790A (en) Cache memory apparatus having a plurality of accessibility ports
US5283886A (en) Multiprocessor cache system having three states for generating invalidating signals upon write accesses
US4453230A (en) Address conversion system
JPH0814801B2 (en) Programmable access memory
EP0311034B1 (en) Cache memory control apparatus for a virtual memory data-processing system
US6941308B1 (en) Methods and apparatus for accessing a doubly linked list in a data storage system
US4658356A (en) Control system for updating a change bit
KR910001735B1 (en) Tag control circuit for butter storage
US7558921B2 (en) Method for data set replacement in 4-way or greater locking cache
US5557622A (en) Method and apparatus for parity generation
JPS62162153A (en) Data-replace control system for buffer memory device
US5636365A (en) Hierarchical buffer memories for selectively controlling data coherence including coherence control request means
JPH0551933B2 (en)
EP0598417A2 (en) Data processing system having scanner for searching memory for message having top priority and/or identity code identical with new message
JPH04174042A (en) Control system for cache memory
JPS6342301B2 (en)
JPH0962582A (en) Cache memory device in pseudo set associative system
JPH01226056A (en) Address converter
JPH04191945A (en) Cache memory control system
JPH02224159A (en) Cache memory system with hierarchical structure
JPS617959A (en) Control system of tag storage device
JPH0664553B2 (en) Stack control circuit
JPH06243045A (en) Cache memory