JPH04195563A - Controller for memory system - Google Patents

Controller for memory system

Info

Publication number
JPH04195563A
JPH04195563A JP2328018A JP32801890A JPH04195563A JP H04195563 A JPH04195563 A JP H04195563A JP 2328018 A JP2328018 A JP 2328018A JP 32801890 A JP32801890 A JP 32801890A JP H04195563 A JPH04195563 A JP H04195563A
Authority
JP
Japan
Prior art keywords
data
cache
block
cache block
main storage
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
JP2328018A
Other languages
Japanese (ja)
Inventor
Susumu Kobashi
小橋 進
Takeshi Sanbe
健 三部
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2328018A priority Critical patent/JPH04195563A/en
Publication of JPH04195563A publication Critical patent/JPH04195563A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To rewrite only changed data in each unit less than a cache block by storing whether each data unit smaller than the cache block is changed or not and controlling rewriting in a main storage based upon a decoded result. CONSTITUTION:Respective storage means 4, 11 store information indicating data state in accordance with subblocks divided as data units smaller than the cache block. A constituting means 35 reads out the data of corresponding subblocks and the tag information of the subblocks based upon the data state information stored in the storage means 4, 11 in accordance with a write request to a main storage device 14 and constitutes write data in the device 14. A control means 46 controls the transfer of the data constituted by the means 35. Consequently only the changed data out of data managed in each block unit can be rewritten in the main storage 14 in each unit smaller than the block.

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はキャッシュメモリの更新と主記憶の更新がス
トアイン方式により管理される記憶システムにおけるキ
ャッシュメモリ制御装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a cache memory control device in a storage system in which cache memory updates and main memory updates are managed by a store-in method.

[従来の技術] 第6図〜第8図は1例えば日経エレクトロニクス「32
ビットMPU、マルチプロセサ向きにバス・スヌープ機
能を内蔵J  (1989年7月24日号(No、47
8)p!73〜p179)に示された従来のキャッシュ
メモリの制御装置である。図において、(1) と(8
)は中央演算処理装置、(2)と(9)はそれぞれ中央
演算処理装置(1)と(8)に対するプロセッサバス、
(3)と(io)は中央演算処理装置(1)°と(8)
に対するキャッシュメモリ管理ユニット、(5)と(1
2)はそれぞれキャッシュメモリ管理ユニット(3)と
(10)が管理するキャッシュブロックのデータで4ワ
ード長である。(4)と(i、i)はそれぞれデ−夕部
(6)と(13)の状態を記憶する状態記憶部であり、
その状態には「無効」、「共有」、「更新」の3つの状
態がある。これらの状態の意味はつぎの通りである。「
無効」はキャッシュブロックのデータが無効である状態
、「共有」はキャッシュブロックのデータとそれに対応
する主記憶のデータとが一致している状態、「更新」は
キャッシュブロックのデータが更新されてそれに対応す
る主記憶のデータと一致していない状態を表す。
[Prior art] Figures 6 to 8 are 1, for example, Nikkei Electronics "32
Bit MPU with built-in bus snoop function for multiprocessors (July 24, 1989 issue (No. 47)
8) p! 73 to p179) is the conventional cache memory control device shown in FIG. In the figure, (1) and (8
) is the central processing unit, (2) and (9) are the processor buses for the central processing units (1) and (8), respectively;
(3) and (io) are central processing units (1)° and (8)
Cache memory management unit for (5) and (1
2) is data of cache blocks managed by cache memory management units (3) and (10), each having a length of 4 words. (4) and (i, i) are state storage sections that store the states of data sections (6) and (13), respectively;
There are three states: "invalid", "shared", and "updated". The meanings of these states are as follows. "
"Invalid" is a state in which the data in the cache block is invalid, "Shared" is a state in which the data in the cache block and the corresponding main memory data match, and "Updated" is a state in which the data in the cache block has been updated and Indicates a state that does not match the corresponding main memory data.

(7)はシステムバス、 (14)は主記憶、 (15
)は主記憶(14)内のデータ部(6)と(13)とに
対応する4ワ一ド分のデータであり、  (16)は4
ワ一ド分のデータ(15)の各ワードに対するアドレス
を表す。
(7) is the system bus, (14) is the main memory, (15
) is data for 4 words corresponding to data sections (6) and (13) in main memory (14), and (16) is 4 words worth of data corresponding to data sections (6) and (13) in main memory (14).
It represents an address for each word of one word of data (15).

つぎにキャッシュメモリ管理ユニット(3)で読み出し
時にキャッシュミスした場合の動作について説明する。
Next, the operation when a cache miss occurs during reading in the cache memory management unit (3) will be explained.

第6図において、キャッシュメモリ管理ユニット(3)
と(10)はPA番地から始まる4ワード長のキャッシ
ュブロック(6)と(13)を持っている。初期状態と
して、キャッシュブロック(6)がA。
In FIG. 6, cache memory management unit (3)
and (10) have 4-word cache blocks (6) and (13) starting from the PA address. In the initial state, cache block (6) is A.

B、C,Dのデータを有し、その状態記憶部(4)が無
効状態を示し、キャッシュブロック(13)がG、B、
C,Dのデータを有し、その状態記憶部(11)が共有
状態を示していたとする。
It has data of B, C, D, its state storage unit (4) indicates an invalid state, and its cache block (13) has data of G, B,
Assume that data of C and D is included, and the state storage unit (11) thereof indicates a shared state.

第7図は、キャッシュメモリ管理ユニット(3)と(l
O)のキャッシュブロック(6)と(13)および状態
記憶部(4)と(11)と主記憶(14)のデータ(1
5)との関係を示したもので、第6図の初期状態は第7
図の(a)に相当する。この初期状態から第7図(b)
のように、中央演算処理装置(8)がキャッシュブロッ
ク(13)の第1ワード目をGからHに書き替えたとす
ると、主記憶内のデータ(15)は変更されず、キャッ
シュブロック(13)のみが書き替えられる。このとき
キャッシュブロック(13)の状態記憶部(11)は更
新状態を示す。また、キャッシュブロック(6)の状態
記憶部(4)の内容は変化せず。
FIG. 7 shows the cache memory management unit (3) and (l
Cache blocks (6) and (13) of O), state memory sections (4) and (11), and data (1) of main memory (14).
5), and the initial state in Figure 6 is in Figure 7.
This corresponds to (a) in the figure. From this initial state, Fig. 7(b)
As shown in the figure, if the central processing unit (8) rewrites the first word of the cache block (13) from G to H, the data (15) in the main memory is not changed and the cache block (13) only can be rewritten. At this time, the state storage section (11) of the cache block (13) indicates the updated state. Furthermore, the contents of the state storage section (4) of the cache block (6) remain unchanged.

無効状態のままである。つぎに、中央演算処理装置(1
)がキャッシュブロック(6)のPA+4番地のデータ
Bを読み出そうとすると、その状態記憶部(4)は無効
状態を示しているからキャッシュメモリ管理ユニット(
3)は中央演算処理装置(1)にウェイト信号を出力し
、システムバス(7)を介して主記憶(14)へのアク
セスを開始する。キャッシュメモリ管理ユニット(lO
)は、キャッシュメモリ管理ユニット(3)がシステム
・バス(7)に出力したPA+4番地のアドレスを自分
のキャッシュタグ(12)と比較し、このときはキャッ
シュブロック(13)がヒツトするがキャッシュブロッ
ク(13)の状態記憶部(113は更新状態を示してい
るから、リトライ信号を出力してキャッシュメモリ管理
ユニット(3)が誤ったデータを取り込むのを禁止する
It remains disabled. Next, the central processing unit (1
) attempts to read data B at address PA+4 of cache block (6), the state storage unit (4) indicates an invalid state, so the cache memory management unit (
3) outputs a wait signal to the central processing unit (1) and starts accessing the main memory (14) via the system bus (7). Cache memory management unit (lO
) compares the address of address PA+4 that the cache memory management unit (3) outputs to the system bus (7) with its own cache tag (12), and at this time, the cache block (13) is hit, but the cache block Since the status storage unit (113) in (13) indicates the updated status, a retry signal is output to prohibit the cache memory management unit (3) from fetching erroneous data.

そして、キャッシュメモリ管理ユニット(10)はキャ
ッシュブロック(13)すなわちPA+4番地から始ま
る4ワード(16バイト)のデータH,B。
The cache memory management unit (10) stores the cache block (13), that is, 4 words (16 bytes) of data H and B starting from address PA+4.

C,Dを主記憶(14)に転送する。この転送によりキ
ャッシュブロック(13)は主記憶(14)のデータと
同じになり共有することになるから、状態記憶部(13
)は共有状態となる(第7図(C))。そこで、キャッ
シュメモリ管理ユニット(3)はキャッシュブロック(
6)に主記憶(14)から正しいデータH,B、C,D
を取り込み、中央演算処理装置け)にキャッシュブロッ
ク(6)を渡しキャッシュブロック(6)の状態記憶部
(4)は共有状態となる(第7図(d))。
Transfer C and D to the main memory (14). Due to this transfer, the cache block (13) becomes the same as the data in the main memory (14) and is shared, so the state memory unit (13)
) becomes a shared state (FIG. 7(C)). Therefore, the cache memory management unit (3) has a cache block (
6) Correct data H, B, C, D from main memory (14)
The cache block (6) is transferred to the central processing unit (CPU), and the state storage section (4) of the cache block (6) becomes shared (FIG. 7(d)).

[発明が解決しようとする課題] 従来のキャッシュメモリ制御装置は以上のように構成さ
れており、主記憶への書き戻し動作をキャッシュブロッ
ク全部に対して行うから、キャッシュブロック内の変更
されていないでまで書き戻すという無駄な動作を行って
いることになる。このため、中央演算処理装置の主記憶
へのデータ転送量が増え、中央演算処理装置の処理速度
が低下するという問題点があった。この発明はこの様な
問題点を解決するためになされたもので、ブロック単位
で管理しているデータのうち変更されているデータのみ
をブロックより小さい単位ごとに主記憶に書き戻すこと
ができるキャッシュメモリ制御装置を得ることを目的と
する。
[Problems to be Solved by the Invention] The conventional cache memory control device is configured as described above, and since the write-back operation to the main memory is performed for all cache blocks, it is possible to write back data to the main memory for all cache blocks. This means that you are performing a wasteful operation of writing back all the way to . Therefore, there is a problem in that the amount of data transferred to the main memory of the central processing unit increases, and the processing speed of the central processing unit decreases. This invention was made to solve these problems, and it is a cache that can write back to main memory only the data that has been changed among the data managed in blocks. The purpose is to obtain a memory control device.

[課題を解決するための手段] この発明に係わるキャッシュメモリ装置の制御方式は、
キャッシュブロックより更に小さいデータ単位に分割し
たサブブロックに対応してデータの状態を示す情報を記
憶する記憶手段と、主記憶装置への書込要求に応じて前
記記憶手段に記憶されたデータの状態情報に基づいて対
応するサブブロックのデータとサブブロックのタグ情報
とを読み出して主記憶装置への書込データを構成する構
成手段と、前記構成手段により構成されたデータを転送
制御する制御手段とを備える。
[Means for Solving the Problems] A control method for a cache memory device according to the present invention includes:
Storage means for storing information indicating the state of data corresponding to sub-blocks divided into data units smaller than the cache block; and the state of the data stored in the storage means in response to a write request to the main storage device. configuring means for reading corresponding sub-block data and sub-block tag information based on the information and configuring write data to the main storage device; and control means for controlling transfer of the data configured by the configuring means. Equipped with

[作用] この発明においては、キャッシュブロック内のより小さ
いデータの単位ごとに、更新されたか否かフラグを立て
、そのフラグの立ち方によって更新されたデータ単位を
主記憶に書き戻データに構成し、主記憶装置へ書込む。
[Operation] In this invention, a flag is set for each smaller data unit in a cache block to determine whether it has been updated, and depending on how the flag is set, the updated data unit is configured as data written back to the main memory. , write to main memory.

[実施例] 第1図はこの発明の一実施例を示す図であり。[Example] FIG. 1 is a diagram showing an embodiment of the present invention.

図において、 (17)と(I8)はキャッシュブロッ
ク(6)と(13)のデータが更新されたか否かをワー
ドごとに記憶してお(4ビツトのフラグである。以降こ
のフラグを更新フラグという。この更新フラグの各ビッ
トは対応するキャッシュブロックのデータの4ワードに
左から順にそれぞれ対応しており、ワードが更新され、
かつキャッシュブロックが更新状態、すなわち状態記憶
部が更新状態にあるときにのみlで、その他の場合はす
べて0である。(22)は更新フラグ(17) (また
は(18))の設定回路である。
In the figure, (17) and (I8) are 4-bit flags that store word by word whether data in cache blocks (6) and (13) have been updated. Each bit of this update flag corresponds to four words of data in the corresponding cache block from left to right, and when a word is updated,
It is l only when the cache block is in an updated state, that is, the state storage unit is in an updated state, and is 0 in all other cases. (22) is a setting circuit for the update flag (17) (or (18)).

また、第4図(a)は設定回路の構成を示す図で、 (
20)は状態記憶部(4)(または(ll))のデータ
を取り込むバスで、 (19)は書き込みアドレスの下
位2ビツトを一時保持するレジスタ、 (21)は書き
込みアドレスの下位2ビツトを設定回路(22)に取り
込むためのバス、 (23)〜(26)は設定回路(2
2)で決定されたデータをそれぞれ更新フラグのO〜3
ビット目に出力するためのバス、 (17)は更新フラ
グである。また、設定回路(22)は、その内部に図4
(b)に示すようなテーブルを持っており、これにより
出力データを決定する。
Moreover, FIG. 4(a) is a diagram showing the configuration of the setting circuit, and (
20) is a bus that takes in the data of the state storage unit (4) (or (ll)), (19) is a register that temporarily holds the lower 2 bits of the write address, and (21) is a bus that sets the lower 2 bits of the write address. The bus for inputting into the circuit (22), (23) to (26) are the setting circuit (2
The data determined in 2) are updated to update flags O to 3.
The bus (17) is an update flag for outputting the bit. In addition, the setting circuit (22) has a configuration shown in FIG.
It has a table as shown in (b), which determines the output data.

第1図に戻って、 (35)はaカデータ構成回路。Returning to FIG. 1, (35) is the a data configuration circuit.

(40)は出力データ構成回路(35)で構成される出
力データ、 (44)は出力データのワード数を表すデ
ータで出力データ構成回路(35)から出力される。
(40) is output data configured by the output data configuration circuit (35), and (44) is data representing the number of words of the output data, which is output from the output data configuration circuit (35).

第5図は、上記の出力データ構成回路(35) 、その
出力データ(40)のワーク数データの詳細を示す図で
、(6)(または(13) )はキャッシュブロックの
データ、  (27)〜(30)はキャッシュブロック
のデータ(6)(または(13) )を出力データ構成
回路(35)に入力するためのバス、 (171(また
は(18) )ば更新フラグ、 (31)〜(34)は
更新フラグ(17) (または(18) )をデータ構
成回路(35)に入力するためのバスである。データ構
成回路(35)はキャッシュブロックのデータ(6)(
または(13) ’)の4ワードのうち、対応する更新
フラグ(17) (または(18) )のビットが1に
なっているワードだけを、キャッシュブロック内での順
序を入れ替えないで、出力バス(36)〜(39)を通
して49−ド長の書き込みデータ用レジスタ(40)に
左詰めで出力する。同時に、書き込み用レジスタ(40
)に出力されるデータの内、0から数えて何ワード目ま
でが有効であるかをデータレジスタ(44)に出力する
FIG. 5 is a diagram showing details of the work number data of the output data configuration circuit (35) and its output data (40), where (6) (or (13)) is the data of the cache block, (27) - (30) are buses for inputting cache block data (6) (or (13)) to the output data configuration circuit (35), (171 (or (18)) is an update flag, (31) - ( 34) is a bus for inputting the update flag (17) (or (18)) to the data configuration circuit (35). The data configuration circuit (35) inputs the data (6) (
or (13) '), only the word whose corresponding update flag (17) (or (18)) bit is 1 is transferred to the output bus without changing the order within the cache block. The data is output through (36) to (39) to the 49-word write data register (40) in a left-justified manner. At the same time, write register (40
) Outputs to the data register (44) the number of valid words counting from 0.

第1図に戻って、 (41)と(42)はサブブロック
のフラグ(17)または(18)を主記憶に転送するた
めのバスで以降はフラグバスと呼ぶ。(45)は書き込
み転送装置で、更新フラグ(17)または(18)をフ
ラグバス(41)または(42)を介して主記憶(14
)内ある書き込み制御装置(46)に転送するとともに
出力データ(40)内の有効データをワード数データ(
44)で示されるワード目までシステムバス(7)を介
して書き込み制御装置(46)に転送する。書き込み制
御装置(46)は送られてきた出力データ内の有効デー
タを更新フラグ(17) (または(18))に基づい
て主記憶に書き込む。
Returning to FIG. 1, (41) and (42) are buses for transferring the flag (17) or (18) of the sub-block to the main memory, and are hereinafter referred to as flag buses. (45) is a write transfer device which transfers the update flag (17) or (18) to the main memory (14) via the flag bus (41) or (42).
) is transferred to the write control device (46), and the valid data in the output data (40) is transferred to the word count data (
The data up to the word indicated by 44) is transferred to the write control device (46) via the system bus (7). The write control device (46) writes valid data in the sent output data to the main memory based on the update flag (17) (or (18)).

つぎに1図に基づいてキャッシュメモリ制御装置で読み
出し時にキャッシュミスした場合の制御方法を説明する
Next, based on FIG. 1, a control method when a cache miss occurs at the time of reading in the cache memory control device will be explained.

第1図において、キャッシュメモリ管理ユニット(3)
とキャッシュメモリ管理ユニット(lO)は。
In FIG. 1, cache memory management unit (3)
and the cache memory management unit (IO).

アドレスPA番地から始まる4ワード長のキャッシュブ
ロック(6)と(13)を持っている。初期状態として
、キャッシュブロック(6)がA、B、C。
It has 4-word cache blocks (6) and (13) starting from address PA. In the initial state, cache blocks (6) are A, B, and C.

Dのデータを有し、その状態記憶部(4)は無効状態を
示し、キャッシュブロック(13)がG、B。
It has data of D, its state storage unit (4) shows an invalid state, and its cache block (13) has data of G and B.

C,Dのデータを有し、その状態記憶部はl)が共有状
態を示していたものとする。キャッシュブロック(6)
 、 (13)に対する更新フラグ(17)、 (18
)はともに0000である。このとき第4図に示すよう
に中央演算処理装置(8)がアドレスPA+4番地のデ
ータ(13)をGからHに書き替えたとすると、主記憶
(14)内のデータは変更されず、キャッシュブロック
(13)のみが書き替えられる。このときキャッジニブ
ロック(13)の状態記憶部(11)は更新状態となり
、更新フラグ(18)は第1ワードに対するビットが1
になって1000になる。また。
It is assumed that the state storage section 1) has data C and D, and that the state storage section 1) indicates a shared state. Cache block (6)
, update flags (17), (18) for (13)
) are both 0000. At this time, if the central processing unit (8) rewrites the data (13) at address PA+4 from G to H as shown in FIG. 4, the data in the main memory (14) will not be changed and the cache block Only (13) is rewritten. At this time, the state storage unit (11) of the Cagini block (13) is in the updated state, and the update flag (18) has the bit for the first word set to 1.
It becomes 1000. Also.

キャッシュブロック(6)は変化せず、その状態記憶部
(4)は無効状態を示したままで更新フラグ(17)も
0000である。このような状態のときに中央演算処理
装置(1)がキャッシュブロック(6)のアドレスPA
+4番地のデータを読み出そうとすると、その状態記憶
部(4)は無効状態を示しているからキャッシュメモリ
管理ユニット(3)は。
The cache block (6) remains unchanged, its state storage section (4) continues to indicate an invalid state, and its update flag (17) is also 0000. In such a state, the central processing unit (1) uses the address PA of the cache block (6).
When attempting to read the data at address +4, the cache memory management unit (3) will read the data at address +4 because its state storage unit (4) indicates an invalid state.

プロセッサバス(2)を介して中央演算処理装置(1)
にウェイト信号を出力し、システムバス(7)を介して
主記憶(14)へのアクセスを開始する。
Central processing unit (1) via processor bus (2)
It outputs a wait signal to the main memory (14) and starts accessing the main memory (14) via the system bus (7).

キャッシュメモリ管理ユニット(10)は、キャッシュ
メモリ管理ユニット(3)がシステムバス(7)に出力
したアドレスを自分のキャッシュタグ(12)と比較し
、このときはキャッシュブロック(13)がヒツトする
がキャッシュブロック(13)の状態記憶部(11)は
更新状態を示しているから、リトライ信号を出力してキ
ャッシュメモリ管理ユニット(3)が誤った内容を取り
込むのを禁止する。そして。
The cache memory management unit (10) compares the address output by the cache memory management unit (3) to the system bus (7) with its own cache tag (12), and at this time, the cache block (13) is hit. Since the state storage section (11) of the cache block (13) indicates the updated state, a retry signal is output to prohibit the cache memory management unit (3) from fetching incorrect contents. and.

キャッシュメモリ管理ユニット(3)はアドレスPA番
地から始まる4ワードのデータ、すなわちキャッシュブ
ロック(13)のうち更新フラグ(18)で示された第
1ワードのHのみを、出力データ構成回路(35)によ
って書き込みデータ用レジスタ(40)に左詰めでセッ
トし、レジスタ(44)には書き込みデータ用レジスタ
(40)のうち最初の1ワードだけが有効であることを
示すOOをセットする。更1乙キャッシュメモリ管理ユ
ニット(lO)内の書き込みデータ転送装置(45)は
更新フラグ(18)と書き込みデータ用レジスタ(40
)の最初の1ワードを主記憶(14)内の書き込み制御
装置(46)に転送する。
The cache memory management unit (3) outputs only the 4-word data starting from the address PA, that is, the H of the first word indicated by the update flag (18) of the cache block (13), to the output data configuration circuit (35). is set in the write data register (40) in a left-justified manner, and OO is set in the register (44), indicating that only the first word of the write data register (40) is valid. Furthermore, the write data transfer device (45) in the 1B cache memory management unit (lO) has an update flag (18) and a write data register (40).
) is transferred to the write controller (46) in the main memory (14).

書き込み制御装置(46)は送られてきたlワードを更
新フラグ(18)にしたがって主記憶(14)に書き込
む。つまり、アドレスPA番地のGがHに書き替えられ
る。するとキャッシュブロック(13)は主記憶(14
)内のデータ(15)とデータを共有することになり(
共有状態)、更新フラグ(18)は0000にリセット
される。そこで、キャッシュメモリ管理ユニット(3)
は、キャッシュブロック(6)に主記憶(14)から正
しいデータを取り込み、中央演算処理装置(1)にキャ
ッシュブロック(6)のアドレスPA+4番地のデータ
を渡しキャッシュブロック(6)は共有状態になる。(
第6図)。このときキャッシュブロック(6)の更新フ
ラグ(17)は0000のままである。
The write control device (46) writes the sent l word into the main memory (14) according to the update flag (18). In other words, G at address PA is rewritten to H. Then, the cache block (13) is transferred to the main memory (14).
) will be shared with data (15) in (
shared state), the update flag (18) is reset to 0000. Therefore, cache memory management unit (3)
reads the correct data from the main memory (14) into the cache block (6), passes the data at address PA+4 of the cache block (6) to the central processing unit (1), and the cache block (6) becomes shared. . (
Figure 6). At this time, the update flag (17) of the cache block (6) remains at 0000.

[発明の効果] 以上のようにこの発明によれば、キャッシュブロックご
とにデータが変更されたか否かを記憶する変更ビットと
は別に、キャッシュブロック内のより小さいデータの単
位ごとに変更されたか否かを記憶する記憶手段と、前記
記憶手段を認識しそれをデコードする手段を設け、前記
デコード結果に基づいて主記憶への書き戻しを制御し得
るように構成したので、キャッシュブロック単位で管理
しているデータのうちで変更されているデータのみを、
lキャッシュブロックより小さい単位ごとに主記憶に書
き戻すことが可能になり、これによって中央演算処理装
置の主記憶へのデータ転送量を低減し中央演算処理装置
の処理速度を向上させることができる。
[Effects of the Invention] As described above, according to the present invention, in addition to the change bit that stores whether or not data has been changed for each cache block, it is also possible to determine whether or not data has been changed for each smaller unit of data in the cache block. Since the cache block is configured to include a storage means for storing the data and a means for recognizing the storage means and decoding it, and to control writing back to the main memory based on the decoding result, the cache block can be managed in units of cache blocks. Only the data that has changed among the data in
It becomes possible to write back to the main memory in units smaller than one cache block, thereby reducing the amount of data transferred to the main memory of the central processing unit and improving the processing speed of the central processing unit.

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

第1図〜第3図はこの発明の一実施例を示す構成図、第
4図は更新フラグ設定回路の詳細図、第5図は出力デー
タ構成回路の詳細図、第6図は従来のキャッシュメモリ
制御方法を示す構成図、第7図は状態記憶部とデータの
関係を説明する図である。 (1) 、 (8)・・・中央演算処理装置、 (3)
 、 (10)・−・キャッシュメモリ管理ユニット、
  (4) 、  (11)・・・状態記憶部、(7)
・・・システムバス、 (14)・・・主記憶。 f22)−・・更新フラグ設定回路、 (17)、 (
1,8)・・・更新フラグ、 (35)・・・出力デー
タ構成回路、 (45)−・・書き込みデータ転送装置
、 (46)・・・書き込み制御回路なお1図中同一符
号は同一または相当部分を示す。
1 to 3 are block diagrams showing one embodiment of the present invention, FIG. 4 is a detailed diagram of an update flag setting circuit, FIG. 5 is a detailed diagram of an output data configuration circuit, and FIG. 6 is a conventional cache FIG. 7 is a block diagram showing the memory control method, and is a diagram explaining the relationship between the state storage section and data. (1), (8)... central processing unit, (3)
, (10) -- Cache memory management unit,
(4), (11)...state storage unit, (7)
...System bus, (14)...Main memory. f22)--update flag setting circuit, (17), (
1, 8)... Update flag, (35)... Output data configuration circuit, (45)... Write data transfer device, (46)... Write control circuit. A considerable portion is shown.

Claims (1)

【特許請求の範囲】 主記憶装置と、この主記憶装置と接続され主記憶装置の
記憶データの一部をブロック単位として記憶し各々独立
に動作する複数のキャッシュメモリ装置とからなるメモ
リシステムを制御する制御装置において、 前記ブロックを更に小さなデータ単位に分割したサブブ
ロックに対応してデータの状態を示す情報を記憶する記
憶手段と、 主記憶装置への書込要求に応じて前記記憶手段に記憶さ
れたデータの状態情報にもとづいて対応するサブブロッ
クのデータとサブブロックのタグ情報とを読みだし主記
憶装置への書込データを構成する書き込みデータ構成手
段と、 前記書き込みデータ構成手段の出力データの主記憶装置
への転送を制御する制御手段と、 を備えたことを特徴とするメモリシステムの制御装置。
[Scope of Claims] Controls a memory system consisting of a main storage device and a plurality of cache memory devices connected to the main storage device and each of which stores part of the data stored in the main storage device in block units and operates independently. A control device comprising: storage means for storing information indicating the state of data corresponding to sub-blocks obtained by dividing the block into smaller data units; and storage means for storing information in the storage means in response to a write request to the main storage device. write data configuring means for configuring data to be written to the main storage device by reading corresponding sub-block data and sub-block tag information based on state information of the data; and output data of the write data configuring means. A control device for a memory system, comprising: a control means for controlling transfer of data to a main storage device; and a control device for a memory system.
JP2328018A 1990-11-28 1990-11-28 Controller for memory system Pending JPH04195563A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2328018A JPH04195563A (en) 1990-11-28 1990-11-28 Controller for memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2328018A JPH04195563A (en) 1990-11-28 1990-11-28 Controller for memory system

Publications (1)

Publication Number Publication Date
JPH04195563A true JPH04195563A (en) 1992-07-15

Family

ID=18205599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2328018A Pending JPH04195563A (en) 1990-11-28 1990-11-28 Controller for memory system

Country Status (1)

Country Link
JP (1) JPH04195563A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281564A (en) * 2002-03-20 2003-10-03 Victor Co Of Japan Ltd Image generating device
JP2022031959A (en) * 2017-06-22 2022-02-22 マイクロン テクノロジー,インク. Nonvolatile memory system, and subsystem thereof
JP2022055355A (en) * 2020-09-28 2022-04-07 モービルアイ ヴィジョン テクノロジーズ リミテッド Preventing overwriting of shared memory line segments

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281564A (en) * 2002-03-20 2003-10-03 Victor Co Of Japan Ltd Image generating device
JP2022031959A (en) * 2017-06-22 2022-02-22 マイクロン テクノロジー,インク. Nonvolatile memory system, and subsystem thereof
JP2022055355A (en) * 2020-09-28 2022-04-07 モービルアイ ヴィジョン テクノロジーズ リミテッド Preventing overwriting of shared memory line segments
US11630774B2 (en) 2020-09-28 2023-04-18 Mobileye Vision Technologies Ltd. Preventing overwriting of shared memory line segments

Similar Documents

Publication Publication Date Title
JPH03253963A (en) Multiprocessor system
JPH09259036A (en) Write-back cache and method for maintaining consistency in write-back cache
JP4434534B2 (en) Processor system
JP2007048296A (en) Method, apparatus and system for invalidating multiple address cache entries
JP2695017B2 (en) Data transfer method
JPH06348593A (en) Data transfer controller
JPH04195563A (en) Controller for memory system
CA1299767C (en) Cache memory control system
JP2580263B2 (en) Buffer storage device
JP3190847B2 (en) Data transfer control device
JPH06103477B2 (en) Parallel cache memory
JPH07152650A (en) Cache control unit
JPS59112327A (en) Controlling method of ring buffer
JPH06266612A (en) Dma controller
JP3074897B2 (en) Memory circuit
JPS61193245A (en) Memory control system
JPS6124737B2 (en)
JPH01102662A (en) Memory device
JPS6135583B2 (en)
JPH01118944A (en) Cache memory controller
JPH11212868A (en) Snoop cash memory control system
JPH0727490B2 (en) Cache memory
JPH04330541A (en) Common data transfer system
JP2001043132A (en) Control method for cache memory
JPH04235648A (en) Logical cache memory device