JPH04123151A - system bus - Google Patents
system busInfo
- Publication number
- JPH04123151A JPH04123151A JP2241127A JP24112790A JPH04123151A JP H04123151 A JPH04123151 A JP H04123151A JP 2241127 A JP2241127 A JP 2241127A JP 24112790 A JP24112790 A JP 24112790A JP H04123151 A JPH04123151 A JP H04123151A
- Authority
- JP
- Japan
- Prior art keywords
- cache memory
- copy
- system bus
- store
- 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.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔概 要〕
複数のストア・スルー方式のキャッシュメモリとコピー
・バック方式のキャッシュメモリが混在しているシステ
ムにおけるシステムバスに関し、コピー・バック方式の
キャッシュメモリとストア・スルー方式のキャッシュメ
モリが混在しているシステムにおいて、キャッシュメモ
リ内で書き換えた部分を消失させずに、且つ、システム
全体の性能低下を抑制することのできるシステムバスを
提供することを目的とし、
少なくとも1つのコピー・バック方式のキャシュメモリ
と、少なくとも1つのストア・スルー方式のキャシュメ
モリと、共有メモリとを接続するシステムバスであって
、前記各キャッシュメモリが前記共有メモリをアクセス
する際に、当該各キャッシュメモリはストア・スルー方
式かコピー・バック方式かを示す情報伝達手段を具備す
るように構成する。[Detailed Description of the Invention] [Summary] Regarding a system bus in a system in which a plurality of store-through type cache memories and copy-back type cache memories coexist, a plurality of copy-back type cache memories and store-through type cache memories are provided. The purpose of the present invention is to provide a system bus that can suppress performance degradation of the entire system without erasing the rewritten portion of the cache memory in a system in which cache memories of different types are mixed. a system bus that connects at least one copy-back type cache memory, at least one store-through type cache memory, and a shared memory; The cache memory is configured to include information transmission means indicating whether the cache memory is a store-through method or a copy-back method.
本発明は、複数のキャッシュメモリと少なくとも1つの
共有メモリを備えたマルチプロセッサシステムに使用す
るシステムバスに関し、特に、複数のストア・スルー方
式のキャッシュメモリとコピー・バック方式のキャッシ
ュメモリが混在しているシステムにおけるシステムバス
に関する。The present invention relates to a system bus used in a multiprocessor system that includes a plurality of cache memories and at least one shared memory, and in particular, a system bus that is used in a multiprocessor system that includes a plurality of cache memories that use a store-through method and a cache memory that uses a copy-back method. Regarding the system bus in the system.
キャッシュメモリ間でデータの整合性(コヒーレンシー
)を維持する方式として、ストア・スルー方式とコピー
・バック方式が知られている。A store-through method and a copy-back method are known as methods for maintaining data consistency (coherency) between cache memories.
ストア・スルー方式では、キャッシュデータを書き換え
る毎に共有メモリの書き換えも行い、他のキャッシュメ
モリのデータは無効化する。そのため、この方式では常
にキャッシュデータと共有メモリのデータが一致し、ま
た、制御方式が簡単なため、設計が容易であるという利
点がある。しかしながら、いずれかのプロセ・ンサが対
応するキャッシュメモリへの書き込み処理を行う毎にバ
ス・アクセスが生じるので、バス・トラヒツクが増大す
るという欠点がある。In the store-through method, each time cache data is rewritten, the shared memory is also rewritten, and data in other cache memories is invalidated. Therefore, in this method, the cache data always matches the data in the shared memory, and the control method is simple, so it has the advantage of being easy to design. However, since a bus access occurs every time one of the processors performs write processing to the corresponding cache memory, there is a drawback that bus traffic increases.
これに対しコピー・バック方式では、キャッシュデータ
を書き込み時に「ヒツト」シても、そのデータを共有す
るキャシュメモリが他に無ければバス・アクセスは行わ
ない。つまり、バス・アクセスの頻度がストア・スルー
方式に比して少なくなり、システム全体の性能が向上す
るという利点がある。しかしその反面、キャッシュ制御
が複雑化するという欠点をもっている。On the other hand, in the copy-back method, even if cache data is "hit" when written, bus access is not performed unless there is another cache memory that shares the data. In other words, there is an advantage that the frequency of bus access is reduced compared to the store-through method, and the performance of the entire system is improved. However, on the other hand, it has the disadvantage that cache control becomes complicated.
ところで、近年、キャシュメモリとしては、システム全
体の性能を向上させることができるコピー・バック方式
のものが主に利用される傾向にある。そのため、既存の
ストア・スルー方式のキャッシュメモリを使用したシス
テムに対して、新たにコピー・バック方式のキャシュメ
モリがシステムバスを介して繋がれる場合、コピー・バ
ック方式のキャシュメモリとストア・スルー方式のキャ
ッシュメモリドが混在する場合が生じることになる。Incidentally, in recent years, there has been a tendency to mainly use copy-back type cache memories that can improve the performance of the entire system. Therefore, if a new copy-back cache memory is connected via the system bus to a system that uses an existing store-through cache memory, the copy-back cache memory and the store-through cache memory There may be cases where cache memory reads are mixed.
このようなコピー・バック方式のキャッシュメモリとス
トア・スルー方式のキャッシュメモリが混在しているシ
ステムにおいて各キャッシュメモリ間を制御する場合、
各方式の利点をそれぞれ最大限に活かすことができるよ
うなシステムバスが要望されている。When controlling between each cache memory in a system where such copy-back type cache memory and store-through type cache memory are mixed,
There is a need for a system bus that can take full advantage of the advantages of each system.
第7図は従来のシステムバスを使用したキャッシュメモ
リ制御方式の問題点を説明するための図である。同図に
示すキャッシュメモリ制御方式では、キャッシュメモリ
Aがコピー・バック方式のキャッシュメモリであるもの
とする。FIG. 7 is a diagram for explaining the problems of the conventional cache memory control method using a system bus. In the cache memory control method shown in the figure, it is assumed that the cache memory A is a copy-back type cache memory.
■ 他のキャッシュメモリBが共有メモリCをアクセス
して1ブロツクデータのフェッチを開始する。(2) Another cache memory B accesses shared memory C and starts fetching one block of data.
■ キャッシュメモリAは、キャッシュメモリBのアク
セス対象の領域を保有していて且つ当該領域が既に書き
換えられているが未だ共有メモリCに反映されていない
領域であることを検出し、キャッシュメモリBに対して
当該アクセスを一時中断させるための信号を送る。■ Cache memory A owns the area to be accessed in cache memory B, detects that the area has already been rewritten but has not been reflected in shared memory C, and updates cache memory B. sends a signal to temporarily suspend the access.
■ キャッシュメモリAは、共有メモリCの代わりに、
キャッシュメモリBへ当該アクセスの対象である領域の
ブロックデータを転送する。この時、該ブロックデータ
の共有メモリCへの書き込みは行わない、その後、キャ
ッシュメモリAは当該領域のブロックをパージ(追放)
する。■ Cache memory A replaces shared memory C.
The block data of the area to be accessed is transferred to cache memory B. At this time, the block data is not written to shared memory C. After that, cache memory A purges the block in the area.
do.
上述した第7図に示す従来の方式では、キャッシュメモ
リBがキャッシュメモリAと同様のコピー・バック方式
であれば問題は生じない。In the conventional system shown in FIG. 7 described above, no problem occurs if cache memory B uses the same copy-back system as cache memory A.
しかしながら、キャッシュメモリBがストア・スルー方
式のキャッシュメモリであった場合、キャッシュメモリ
A内で書き換えられたプロ・ンクはキャッシュメモリB
にのみ登録され、その後、当該ブロックはキャッシュメ
モリB内のブロック・リプレースによりクリアされてし
まう、この場合、キャッシュメモリA内で書き換えられ
た部分が消失してしまう。However, if cache memory B is a store-through type cache memory, the program rewritten in cache memory A will be stored in cache memory B.
After that, the block will be cleared by block replacement in cache memory B. In this case, the rewritten portion in cache memory A will be lost.
この不都合を解消するため、上記■の段階において当該
ブロックを共有メモリCにも同時に書き込む方式が考え
られる。ところがこの方式では、システムバスに接続さ
れるキャッシュメモリの全てがコピー・バック方式であ
った場合等に、コピー・バック方式が備えている利点(
バス・アクセスの頻度を減らす)を最大限に活かすこと
ができず、そのため、システム全体の性能が低下すると
いう問題が生じる。In order to eliminate this inconvenience, a method can be considered in which the block is simultaneously written into the shared memory C at the step (2) above. However, with this method, the advantages of the copy-back method (
Therefore, the problem arises that the performance of the entire system is degraded.
本発明は、かかる従来技術における課題に鑑み、コピー
・バック方式のキャッシュメモリとストア・スルー方式
のキャッシュメモリが混在しているシステムにおいて、
キャッシュメモリ内で書き換えた部分を消失させずに、
且つ、システム全体の性能低下を抑制することのできる
システムバスを提供することを目的とする。In view of the problems in the prior art, the present invention provides a system in which a copy-back type cache memory and a store-through type cache memory coexist.
Without erasing the rewritten part in the cache memory,
Another object of the present invention is to provide a system bus that can suppress performance degradation of the entire system.
第1図は本発明に係るシステムバスを適用したキャッシ
ュメモリ制御方式の原理を示す図である。FIG. 1 is a diagram showing the principle of a cache memory control method using a system bus according to the present invention.
第1図(a)に示されるように、本発明によれば、少な
くとも1つのコピー・バック方式のキャシュメモリ旧と
、少なくとも1つのストア・スルー方式のキャシュメモ
リ札と、共有メモリ側とを接続するシステムバス(4)
であって、前記各キャッシュメモリ?ILM2が前記共
有メモリCMをアクセスする際に、当該各キャッシュメ
モリMl、M2はストア・スルー方式かコピー・バック
方式かを示す情報伝達手段41.BAaを具備すること
を特徴とするシステムバスが提供される。As shown in FIG. 1(a), according to the present invention, at least one copy-back type cache memory tag, at least one store-through type cache memory tag, and a shared memory side are connected. system bus (4)
And each cache memory mentioned above? When the ILM2 accesses the shared memory CM, information transmission means 41. indicates whether each of the cache memories Ml, M2 is a store-through type or a copy-back type. A system bus is provided that includes a BAa.
また、本発明のシステムバスは、第1図(b)に示され
るようなキャシュメモリ制御方式に適用することができ
る。このキャシュメモリ制御方式は、前記コピー・バッ
ク方式のキャッシュメモリがリプレース方式で動作し、
且つ、当該キャッシュメモリが保有し既に書き換えられ
ていて前記共有メモリに未だ反映されていない領域に対
する他のキャッシュメモリからの該共有メモリへのアク
セスを検出した場合に該アクセスを一時中断させる手段
(P1)と、当該アクセスがストア・スルー方式のキャ
ッシュメモリまたはコピー・バック方式のキャッシュメ
モリのいずれによって行われたのかを判別する手段(P
2)と、該判別の結果に基づき、前記アクセスを行った
キャッシュメモリがコピー・バック方式のキャッシュメ
モリであった場合には当該アクセスの対象である領域の
データを前記共有メモリに書き込むことなく当該コピー
・バック方式のキャンシュメモリへ転送する手段(P3
)と、前記アクセスを行ったキャッシュメモリがストア
スル一方式のキャッシュメモリであった場合には当該ア
クセスの対象である領域のデータを前記共有メモリへ書
き戻す手段(P4)とを備えている。Further, the system bus of the present invention can be applied to a cache memory control method as shown in FIG. 1(b). In this cache memory control method, the copy-back method cache memory operates in a replace method,
and means (P1) for temporarily suspending access to the shared memory from another cache memory to an area owned by the cache memory that has already been rewritten and has not yet been reflected in the shared memory; ), and a means (P
2), and based on the result of the determination, if the accessed cache memory is a copy-back type cache memory, the data in the accessed area is not written to the shared memory. Means for transferring to cache memory using copy-back method (P3
), and means (P4) for writing back data in the accessed area to the shared memory if the accessed cache memory is a store-through type cache memory.
[作 用]
上述した本発明のシステムバスによれば、各キャッシュ
メモリMl、M2が共有メモリCMをアクセスする際に
、当該各キャッシュメモリMl、河2はストア・スルー
方式かコピー・バック方式かを示す情報伝達手段41.
BA、を備えている。[Operation] According to the system bus of the present invention described above, when each of the cache memories Ml and M2 accesses the shared memory CM, it is determined whether each of the cache memories Ml and M2 uses the store-through method or the copy-back method. Information transmission means 41.
It is equipped with BA.
ここで、前記情報伝達手段は、専用の信号線41により
構成することができる。この信号線41のレベルは、ス
トア・スルー方式のキャシュメモリM2の場合には高レ
ベル“1″とし、コピー・バック方式のキャシュメモリ
旧の場合には低レベル”0”とするのが好ましい、すな
わち、信号線41に断線等が生じた場合には、全てのキ
ャッシュメモリをストア・スルー方式のものと判断しで
制御することにより、システムとしての性能は低下する
ものの、各キャッシュメモリ間で異なるデータが保持さ
れるのを防ぐことができる。Here, the information transmission means can be constituted by a dedicated signal line 41. The level of this signal line 41 is preferably set to a high level "1" in the case of the store-through type cache memory M2, and set to a low level "0" in the case of the old copy-back type cache memory. In other words, if a disconnection or the like occurs in the signal line 41, all cache memories are determined to be of the store-through type and are controlled. Although this will reduce the performance of the system, there will be differences between each cache memory. Data can be prevented from being retained.
さらに、前記情報伝達手段は、コマンドバスCBの所定
ピッ)BA、)により構成することができる。Further, the information transmission means can be configured by predetermined pins (BA, ) of the command bus CB.
この所定ビットBAoのレベルは、ストア・スルー方式
のキャシュメモリM2の場合には高レベル“1”とし、
コピー・バック方式のキャシュメモリ旧の場合には低レ
ベル“0”とするのが好ましい。この場合にも、何らか
の事故が住じた場合でも、全てのキャッシュメモリをス
トア・スルー方式のものと判断して各キャッシュメモリ
間で異なるデータが保持されるのを防ぐことができる。The level of this predetermined bit BAo is set to high level "1" in the case of store-through type cache memory M2,
In the case of an old copy-back type cache memory, it is preferable to set the low level to "0". In this case as well, even if some kind of accident occurs, it is possible to determine that all cache memories are of the store-through type and prevent different data from being held between the cache memories.
また、本発明のシステムバスが適用されるキャシュメモ
リ制御方式によれば、成るキャッシュメモリが共有メモ
リに対してアクセスを行った場合に、当該キャッシュメ
モリがストア・スルー方式か、またはコピー・バック方
式かが上記した情報伝達手段により伝達されるので、そ
の情報に応じて、当該アクセスの対象である領域のデー
タの処理を適宜変えるようになっている。Further, according to the cache memory control method to which the system bus of the present invention is applied, when a cache memory consisting of a shared memory is accessed, the cache memory is of a store-through method or a copy-back method. Since the information is transmitted by the above-mentioned information transmission means, the processing of the data in the area to be accessed is changed as appropriate depending on the information.
すなわち、当該アクセスがコピー・バック方式のキャッ
シュメモリによって行われた場合には、当該アクセスの
対象である領域のデータを前記共有メモリに書き込むこ
となく当該コピー・バック方式のキャッシュメモリへ転
送している。これによって、共有メモリへのシステムバ
ス上の無駄なアクセスが不要となり、システム全体の性
能低下を抑制することができる。In other words, when the access is performed using a copy-back type cache memory, the data in the area targeted for the access is transferred to the copy-back type cache memory without writing it to the shared memory. . This eliminates the need for unnecessary access to the shared memory on the system bus, making it possible to suppress performance degradation of the entire system.
一方、当該アクセスがストア・スルー方式のキャッシュ
メモリによって行われた場合には、当該アクセスの対象
である領域のデータを共有メモリへ書き戻すようにして
いる。これによって、コピー・バック方式のキャッシュ
メモリ内で書き換えた部分は、消失させることなく無事
に共有メモリ内に保存することができる。On the other hand, when the access is performed using a store-through type cache memory, the data in the area targeted for the access is written back to the shared memory. As a result, the portion rewritten in the copy-back type cache memory can be safely saved in the shared memory without being lost.
[実施例]
以下、図面を参照して本発明に係るシステムバスの実施
例を詳細に説明する。[Embodiments] Hereinafter, embodiments of the system bus according to the present invention will be described in detail with reference to the drawings.
第2図は本発明のシステムバスを使用した密結合マルチ
プロセッサシステムの構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of a tightly coupled multiprocessor system using the system bus of the present invention.
第2図に示されるように、本システムでは、コピー・バ
ック方式のキャッシュメモリIA(M1)とストア・ス
ルー方式のキャッシュメモリIB(M2)が混在した複
数のキャッシュメモリ(本実施例では図示の簡単化のた
め各方式についてそれぞれ1個のみ図示)が、システム
バス4を介して少なくとも1つの共有メモリ3(CM:
同様に簡単化のため1個のみ図示)に接続されている。As shown in FIG. 2, this system uses a plurality of cache memories (in this embodiment, the cache memory shown in the figure is At least one shared memory 3 (CM: only one for each method is shown for simplicity) is connected via a system bus 4 to at least one shared memory 3 (CM:
Similarly, for simplicity, only one is shown).
また、各キャッシュメモリIA、IBには、それぞれ対
応するキャッシュメモリへのアドレス情報の供給やデー
タ読み出しおよび書き込み等の制御を行う中央処理装置
(CP U) 2A、2Bが接続されている。Furthermore, central processing units (CPU) 2A and 2B are connected to each cache memory IA and IB, respectively, for supplying address information to the corresponding cache memory and controlling data reading and writing.
第3図は第2図のシステムにおける本発明のシステムバ
スの具体的な構成例を示す図である。FIG. 3 is a diagram showing a specific example of the configuration of the system bus of the present invention in the system of FIG. 2.
第3図(a)は、本発明のシステムバスの一実施例とし
て、共有メモリ3 (CM)をアクセスするキャッシュ
メモリが、当該キャッシュメモリはストアスル一方式か
コピー・バック方式かをコマンドバスCBの最上位ビッ
トBAoのレベルにより伝達するようにしたものを示し
ている。具体的に、システムハス4は、例工ば、8本の
コマンド・バスCB(BAo〜BA?)、および、16
本(または、32本)のアドレス/データ・バスADH
(BB0〜BB+s)を備えている。そして、8本のコ
マンド・バスCBに対応したビットBA、〜BA、内の
最上位ビットBA、を高レベル“1”とすることにより
該キャシュメモリ(共有メモリ3をアクセスするキャッ
シュメモリ)がストア・スルー方式のキャシュメモリI
Bであることを示し、また、最上位ビットBADを低レ
ベル“0”とすることにより該キャシュメモリがコピー
・バック方式のキャシュメモリメモリIAであることを
示すようになっている。FIG. 3(a) shows an embodiment of the system bus of the present invention in which a cache memory that accesses shared memory 3 (CM) uses a command bus CB to indicate whether the cache memory is a store-through type or a copy-back type. This shows that the signal is transmitted based on the level of the most significant bit BAo. Specifically, the system bus 4 includes, for example, eight command buses CB (BAo to BA?) and 16
1 (or 32) address/data bus ADH
(BB0 to BB+s). Then, by setting the most significant bit BA of the bits BA, ~BA, corresponding to the eight command buses CB to a high level "1", the cache memory (the cache memory accessing the shared memory 3) is stored.・Through-type cache memory I
By setting the most significant bit BAD to a low level "0", it is indicated that the cache memory is a copy-back type cache memory memory IA.
ここで、コマンド・バスCBの最上位ビットBA。Here, the most significant bit BA of the command bus CB.
のレベルをストア・スルー方式のキャシュメモリ1Bの
場合には高レベルとし、コピー・バック方式のキャシュ
メモリIAの場合には低レベルとするのは、何らかの事
故が生じた場合、情報伝達用のビットBA、は高レベル
“l”となり当該キャッシュメモリをストア・スルー方
式のキャッシュメモリIBと判断して制御することにな
るため、キャッシュデータを書き換える毎に共有メモリ
の書き換えを行ってシステムとしての性能は低下するも
のの、各キャッシュメモリ間で異なるデータが保持され
るのを防ぐようにするためである。また、共有メモリ3
をアクセスするキャッシュメモリがストア・スルー方式
かコピー・バック方式かを示すためのビットは、コマン
ド・バスCBの最上位ビットBA6に限定されるもので
はない。The reason why the level is set to high level in case of store-through type cache memory 1B and low level in case of copy-back type cache memory IA is that if some kind of accident occurs, bits for information transmission are set to high level. Since BA becomes a high level "l" and the cache memory is determined to be a store-through type cache memory IB and is controlled, the shared memory is rewritten every time the cache data is rewritten, and the performance of the system is reduced. This is to prevent different data from being held in each cache memory, although this reduces the amount of data. Also, shared memory 3
The bit indicating whether the cache memory to be accessed is a store-through method or a copy-back method is not limited to the most significant bit BA6 of the command bus CB.
第3図(b)は、本発明のシステムバスの一実施例とし
て、共有メモリ3をアクセスするキャッシュメモリが、
自分はストア・スルー方式かコピー・バック方式かを専
用の信号線41のレベルにより伝達するようにしたもの
を示している。具体的に、システムバス4は、コマンド
・バスCBおよびアドレス/データ・バスADBの他に
、さらに、専用の信号線41を備え、該信号線41を高
レベル“1”とすることにより該キャシュメモリ(共有
メモリ3をアクセスするキャッシュメモリ)がストア・
スルー方式のキャシュメモリIBであることを示し、ま
た、該信号線41を低レベル“0”とすることにより該
キャシュメモリがコピー・バック方式のキャシュメモリ
IAであることを示すようになっている。FIG. 3(b) shows, as an embodiment of the system bus of the present invention, that the cache memory accessing the shared memory 3 is
The figure shows one in which the level of a dedicated signal line 41 is used to communicate whether it is a store-through method or a copy-back method. Specifically, in addition to a command bus CB and an address/data bus ADB, the system bus 4 further includes a dedicated signal line 41, and by setting the signal line 41 to a high level "1", the cache is Memory (cache memory that accesses shared memory 3) is stored and
This indicates that the cache memory is a through-type cache memory IB, and by setting the signal line 41 to a low level "0", it indicates that the cache memory is a copy-back type cache memory IA. .
ここで、システムバス4に付加した専用の信号線41の
レベルをストア・スルー方式のキャシュメモ1月Bの場
合には高レベルとし、コピー・バック方式のキャシュメ
モリIAの場合には低レベルとするのは、上述の場合と
同様に、例えば、断線等の事故が生じた場合でも、全て
のキャッシュメモリをストア・スルー方式のものと判断
して各キャッシュメモリ間で異なるデータが保持される
のを防ぐためである。また、第3図(b)に示されるよ
うに、各コピー・バック方式およびストア・スルー方式
のキャシュメモリIA、 IBは、それぞれ中央処理装
置CPUに設けられた内部キャッシュメモリとして構成
されている。Here, the level of the dedicated signal line 41 added to the system bus 4 is set to a high level in the case of the store-through type cash memory January B, and is set to a low level in the case of the copy-back type cache memory IA. The reason for this is that, as in the case described above, even if an accident such as a disconnection occurs, all cache memories are determined to be of the store-through type and different data is retained between each cache memory. This is to prevent Further, as shown in FIG. 3(b), each of the copy-back type and store-through type cache memories IA and IB is configured as an internal cache memory provided in the central processing unit CPU, respectively.
第4図は第2図におけるコピー・バック方式のキャッシ
ュメモリIAの内部構成を示す図である。FIG. 4 is a diagram showing the internal configuration of the copy-back type cache memory IA in FIG. 2.
同図において、参照符号31はタグ部(タグメモリ)で
あって、アクセスデータの物理アドレスを記憶するアド
レス部と、2つの状態フラグ、すなわちアドレスとデー
タとの対が有効であるか否かを指示するを効指示フラグ
(V)とデータが書き換えられたか否かを指示する変更
済指示フラグ(M)を有している。さらに、32はシス
テムバス4上のアドレスを解読するデコーダ(DEC)
、33はタグ部31に登録されているアドレスとシステ
ムバス4上のアドレスADDの一致/不一致を検出する
比較回路、34は該比較回路の出力と有効指示フラグお
よび変更済指示フラグに応答して一時中断信号INTを
生成するアンドゲート、35はシステムバス4を介して
送られてくる、ストア・スルー方式かコピー・バック方
式かを指示する方式指示信号INOに応答するインバー
タ、36は該インバータの出力と−時中断信号INTに
応答するアンドゲート、37は方式指示信号INDと一
時中断信号INTに応答するアンドゲート、そして38
はアンドゲート36,37の出力に応答して転送サイク
ルを形成する回路を示す。In the figure, reference numeral 31 is a tag section (tag memory), which includes an address section that stores the physical address of access data, and two status flags that indicate whether the pair of address and data is valid or not. It has a valid indication flag (V) indicating whether the data has been rewritten or not, and a changed indication flag (M) indicating whether the data has been rewritten or not. Furthermore, 32 is a decoder (DEC) that decodes the address on the system bus 4.
, 33 is a comparison circuit that detects the match/mismatch between the address registered in the tag unit 31 and the address ADD on the system bus 4, and 34 is a comparison circuit that responds to the output of the comparison circuit, the valid instruction flag, and the changed instruction flag. An AND gate 35 generates a temporary interruption signal INT, an inverter 35 responds to a method instruction signal INO sent via the system bus 4 and instructs whether to use the store-through method or the copy-back method, and 36 an inverter of the inverter. 37 is an AND gate responsive to the output and the time interrupt signal INT; 37 is an AND gate responsive to the mode instruction signal IND and the temporary interrupt signal INT; and 38
shows a circuit that forms a transfer cycle in response to the outputs of AND gates 36 and 37.
なお、比較回路33は、タグ部31のアドレスと外部ア
クセスアドレスADDが一致した時にその出力を“1”
とし、それによってアンドゲート34を「有効Jにする
。また、方式指示信号IND(情報伝達手段41.BA
oに対応)は、ストア・スルー方式を指示する場合には
“1“を呈し、コピー・バック方式を指示する場合には
“0”を呈する。また、アンドゲート36の出力はキャ
ッシュ間転送を起動させるための信号として用いられ、
一方、アンドゲート37の出力は共有メモリ3へのコピ
ー・バックを起動させるための信号として用いられる。Note that the comparison circuit 33 sets its output to "1" when the address of the tag section 31 and the external access address ADD match.
As a result, the AND gate 34 is set to "valid J." Also, the method instruction signal IND (information transmission means 41.BA
(corresponding to o) takes "1" when instructing the store-through method, and takes "0" when instructing the copy-back method. Further, the output of the AND gate 36 is used as a signal for starting inter-cache transfer,
On the other hand, the output of the AND gate 37 is used as a signal to start copying back to the shared memory 3.
第5図は第2図のシステムにおけるキャッシュメモリ制
御形態を時系列的に示す図である。同図(a)〜(c)
を参照しながらキャッシュメモリの制御について説明す
る。FIG. 5 is a diagram chronologically showing the cache memory control form in the system of FIG. 2. Figures (a) to (c)
Cache memory control will be explained with reference to .
〔第5図(a)参照〕
■ キャッシュメモリIBは、自己がストア・スルー方
式であることを指示(第4図の方式指示信号IND参照
)して共有メモリ3をアクセスする。[See FIG. 5(a)] (1) The cache memory IB accesses the shared memory 3 by instructing that it uses the store-through method (see method instruction signal IND in FIG. 4).
すなわち、コマンドバスCBの最上位ビットBA、のレ
ベルを高レベル“1”とする(第3図(a)参照)か、
或いは、専用の信号線41を高レベル“1”とすること
により、自己がストア・スルー方式であることを示して
共有メモリ3をアクセスするようになっている。That is, the level of the most significant bit BA of the command bus CB is set to a high level "1" (see FIG. 3(a)), or
Alternatively, by setting the dedicated signal line 41 to a high level "1", the shared memory 3 is accessed indicating that it is a store-through system.
■ キャッシュメモリIAは、キャッシュメモリIBが
ストア・スルー方式であることを識別すると共に、キャ
ッシュメモリIBに対してアクセスの一時中断を要求(
第4図の一時中断信号INT参照)する。■ Cache memory IA identifies that cache memory IB uses the store-through method, and requests temporary suspension of access to cache memory IB (
(See temporary interruption signal INT in FIG. 4).
■ キャッシュメモリIAは、共有メモリ3に対して、
キャッシュメモリIBからのアクセスをキャンセルする
。■ Cache memory IA is for shared memory 3.
Cancels access from cache memory IB.
〔第5図(b)参照〕
■ キャッシュメモリLAは、上記方式指示信号IND
(BA、、41)により、上記アクセスを行ったキャッ
シュメモリがストア・スルー方式のキャッシュメモリI
Bであることを検出し、当該アクセスの対象である領域
のデータ(ハンチングで表示)を共有メモリ3へ書き戻
す。[See Figure 5(b)] ■ The cache memory LA receives the above method instruction signal IND.
(BA, 41), the cache memory accessed above is stored-through type cache memory I.
B, and writes back the data (indicated by hunting) in the area targeted for access to the shared memory 3.
[第5図(c)参照〕
■ キャッシュメモIJIBは、共有メモリ3をアクセ
スして必要な部分をフェツチする。[See FIG. 5(c)] (cache memo IJIB accesses the shared memory 3 and fetches the necessary portion).
なお、第5図(a)〜(c)には図示していないが、共
有メモリ3をアクセスするキャッシュメモリがコピー・
バック方式のキャッシュメモリであった場合には、従来
と同様に、当該アクセスの対象である領域のデータを共
有メモリ3に書き込むことなく当該コピー・バック方式
のキャッシュメモリへ転送する。Although not shown in FIGS. 5(a) to 5(c), the cache memory that accesses the shared memory 3 performs copying and
If the cache memory is a back type cache memory, the data in the area to be accessed is transferred to the copy back type cache memory without being written to the shared memory 3, as in the conventional case.
第6図は第2図におけるコピー・バック方式のキャッシ
ュメモリが行う処理の一例を示すフローチャートである
。以下、コピー・バック方式のキャッシュメモリIAが
行う処理について、第6図のフローチャートを参照しな
がら説明する。FIG. 6 is a flowchart showing an example of processing performed by the copy-back type cache memory in FIG. The processing performed by the copy-back type cache memory IA will be described below with reference to the flowchart shown in FIG.
まずステップ51では、外部からアクセスされた領域と
自己が保有しているブロックとの一致(YES)または
不一致(N0)を判定し、判定結果がYESの場合には
ステップ52に進み、判定結果がNOの場合にはステッ
プ51を繰り返す、ステ・ンプ52では、当該ブロック
が書き換えられている(YES)か否(N0)を判定し
、判定結果がYESの場合にはステップ53に進み、判
定結果がNOの場合にはこのフローは「エンド」となる
。ステップ53では、その外部アクセスを中断させるた
めの信号(−時中断信号INT)をシステムバス4に送
出する。First, in step 51, it is determined whether the area accessed from the outside matches the block owned by the self (YES) or does not match (N0), and if the determination result is YES, the process proceeds to step 52, where the determination result is If NO, step 51 is repeated. In step 52, it is determined whether the block has been rewritten (YES) or not (N0). If the determination result is YES, the process advances to step 53, and the determination result is If this is NO, this flow becomes "end". In step 53, a signal (-time interrupt signal INT) for interrupting the external access is sent to the system bus 4.
ステップ54では、その外部アクセスがコピー・バック
方式のキャッシュメモリによって行われた(YES)か
否(N0)を判定し、判定結果がYESの場合にはステ
ップ55に進み、判定結果がNOの場合(すなわち、外
部アクセスがストア・スルー方式のキャッシュメモリに
よって行われた場合)にはステップ56に進む。ステッ
プ55では、共有メモリ3の代わりに、当該アクセスの
対象である領域のブロックデータをシステムバス4に送
出する。この後、ステップ57に進み、当該領域のブロ
ックをパージした後、このフローは「エンド」となる。In step 54, it is determined whether the external access was performed by the copy-back cache memory (YES) or not (N0). If the determination result is YES, the process proceeds to step 55; if the determination result is NO, the process proceeds to step 55. (That is, if the external access is performed by a store-through type cache memory), the process advances to step 56. In step 55, block data of the area to be accessed is sent to the system bus 4 instead of the shared memory 3. After this, the process proceeds to step 57, and after the blocks in the area are purged, this flow becomes "end".
一方、ステップ56では、外部アクセスがストアスル一
方式のキャッシュメモリによって行われているので、当
該領域のブロックを共有メモリ3へ書き戻す。この後、
ステップ57に進み、上記と同様の処理が行われる。On the other hand, in step 56, the block in the area is written back to the shared memory 3, since the external access is performed by the store-through type cache memory. After this,
Proceeding to step 57, the same processing as above is performed.
このように本実施例のシステムバスが適用されるキャッ
シュメモリ制御方式によれば、コピー・バック方式のキ
ャッシュメモリIAが保有し且つ既に書き換えられてい
るが共有メモリ3に未だ反映されていない領域に対して
他のキャッシュメモリからアクセスが有った場合に、該
アクセスを一時中断させると共に、当該アクセスを行っ
たキャッシュメモリがストア・スルー方式か、またはコ
ピー・バック方式かに応じて、当該アクセスの対象であ
る領域のデータの処理を上述したように適宜変えている
。In this way, according to the cache memory control method to which the system bus of this embodiment is applied, an area that is owned by the copy-back type cache memory IA and that has already been rewritten but has not yet been reflected in the shared memory 3. If there is an access from another cache memory, the access is temporarily suspended, and depending on whether the accessed cache memory is a store-through method or a copy-back method, the access is The processing of data in the target area is changed as appropriate as described above.
そして、本実施例のシステムバスを適用することにより
、アクセスの対象である領域のデータを当該コピー・バ
ック方式のキャッシュメモ1月^へ転送することにより
、コピー・バック方式がもつ利点(無駄なアクセスを無
くす)を最大限に活かすことができ、ひいてはシステム
全体の性能を高めることが可能となる。その一方では、
当該アクセスの対象である領域のデータを共有メモリ3
へ書き戻すことにより、コピー・バック方式のキャッシ
ュメモi月^内で書き換えた部分を消失させることなく
無事に共有メモリ3内に保存することができる。By applying the system bus of this embodiment, data in the area to be accessed is transferred to the cache memo of the copy-back method, thereby eliminating the advantages of the copy-back method (wasteful This makes it possible to make the most of the access (eliminating access) and improve the performance of the entire system. On the other hand,
The data in the area targeted for access is stored in the shared memory 3.
By writing back to , the part that has been rewritten in the copy-back cache memo month i can be safely stored in the shared memory 3 without being lost.
以上説明したように本発明によれば、コピー・バック方
式のキャッシュメモリとストア・スルー方式のキャッシ
ュメモリが混在しているシステムにおいて、キャッシュ
メモリ内で書き換えた部分を消失させずに、且つ、シス
テム全体の性能低下を抑制することのが可能なシステム
バスを提供することができ、システム全体の性能を高め
ることができる。As explained above, according to the present invention, in a system in which a copy-back type cache memory and a store-through type cache memory are mixed, the rewritten portion of the cache memory is not lost, and the system It is possible to provide a system bus that can suppress overall performance deterioration, and it is possible to improve the overall system performance.
第1図は本発明に係るシステムバスを適用したキャッシ
ュメモリ制御方式の原理を示す図、第2図は本発明のシ
ステムバスを使用した密結合マルチプロセッサシステム
の構成を示すブロック図、
第3図は第2図のシステムにおける本発明のシステムバ
スの具体的な構成例を示す図、第4図は第2図における
コピー・バック方式のキャッシュメモリの内部構成を示
す図、第5図は第2図のシステムにおけるキャッシュメ
モリ制御形態を時系列的に示す図、
第6図は第2図におけるコピー・バック方式のキャッシ
ュメモリが行う処理の一例を示すフローチャート、
第7図は従来のシステムバスを使用したキャッシュメモ
リ制御方式の問題点を説明するための図である。
(符号の説明)
Ml、IA・・・コピー・バック方式のキャッシュメモ
リ、M2. IB・・・ストア・スルー方式のキャッシ
ュメモリ、2A、2B・・・CPU、
CM、3・・・共有メモリ、
4・・・システムバス、
41・・・情報伝達用の信号線、
CB・・・コマンドバス、
ADH・・・アドレス/データ・バス、BA、・・・情
報伝達用のコマンドバスのビア)、PI・・・アクセス
を一時中断させる処理、P2・・・アクセスを行ったキ
ャッシュメモリの方式を判別する処理、
P3・・・当該コピー・バック方式のキャッシュメモリ
に該当データを転送する処理、
P4・・・共有メモリへ該当データを書き戻す処理。
(b)
本発明のノステムハスを使用した密結合マルチブロセノ
サノステムの構成を示すフロック図
第2図
(a)
(b)
弗
図
第
図
IA・・・キャッシュメモリ
(コピー・バック方式)
%式%
(ストア・スルー方式)
3・・・共有メモリ
第2図のノステムにおけるキャッシュメモリの制御形態
を時系列的に示す図
従来の7ステムハスを使用したキヤノンユメモリ制御方
式の問題点を説明するための同
第FIG. 1 is a diagram showing the principle of a cache memory control method using the system bus according to the present invention, FIG. 2 is a block diagram showing the configuration of a tightly coupled multiprocessor system using the system bus according to the present invention, and FIG. 2 is a diagram showing a specific configuration example of the system bus of the present invention in the system of FIG. 2, FIG. 4 is a diagram showing the internal configuration of the copy-back type cache memory in FIG. Figure 6 is a flowchart showing an example of the processing performed by the copy-back cache memory in Figure 2. Figure 7 uses the conventional system bus. FIG. 2 is a diagram for explaining problems with the cache memory control method. (Explanation of symbols) Ml, IA...Copy-back cache memory, M2. IB...store-through cache memory, 2A, 2B...CPU, CM, 3...shared memory, 4...system bus, 41...signal line for information transmission, CB...・Command bus, ADH...Address/data bus, BA,...Command bus via for information transmission), PI...Processing that temporarily interrupts access, P2...Cache memory that was accessed P3: Processing to transfer the corresponding data to the cache memory of the copy-back method; P4: Processing to write the corresponding data back to the shared memory. (b) Flock diagram showing the configuration of a tightly coupled multi-brosenothanostem using the nostem hash of the present invention. (a) (b) Figure IA: Cache memory (copy-back method) % formula % (Store-through method) 3...Shared memory Figure 2 shows the control form of cache memory in Nostem in chronological order To explain the problems of the Canon Yu memory control method using the conventional 7-stem hash same number
Claims (1)
モリ(M1)と、少なくとも1つのストア・スルー方式
のキャシュメモリ(M2)と、共有メモリ(CM)とを
接続するシステムバスであって、前記各キャッシュメモ
リが前記共有メモリをアクセスする際に、当該各キャッ
シュメモリはストア・スルー方式かコピー・バック方式
かを示す情報伝達手段(41、BA_0)を具備するこ
とを特徴とするシステムバス。 2、前記情報伝達手段は、専用の信号線(41)により
構成されている請求項1記載のシステムバス。 3、前記専用の信号線(41)は、ストア・スルー方式
のキャシュメモリの場合には高レベル“1”となり、コ
ピー・バック方式のキャシュメモリの場合には低レベル
“0”となるように構成されている請求項2記載のシス
テムバス。 4、前記情報伝達手段は、コマンドバス(CB)の所定
ビット(BA_0)により構成されている請求項1記載
のシステムバス。 5、前記コマンドバスの所定ビット(BA_0)は、ス
トア・スルー方式のキャシュメモリの場合には高レベル
“1”となり、コピー・バック方式のキャシュメモリの
場合には低レベル“0”となるように構成されている請
求項4記載のシステムバス。 6、前記コピー・バック方式のキャシュメモリ(M1)
および前記ストア・スルー方式のキャシュメモリ(M2
)は、それぞれ中央処理装置(CPU)に設けられた内
部キャッシュメモリとして構成されている請求項1記載
のシステムバス。 7、前記システムバスは、 前記コピー・バック方式のキャッシュメモリ(M1)が
リプレース方式で動作し、且つ、当該キャッシュメモリ
が保有し既に書き換えられていて前記共有メモリに未だ
反映されていない領域に対する他のキャッシュメモリか
らの該共有メモリへのアクセスを検出した場合に該アク
セスを一時中断させる手段(P1)と、 当該アクセスがストア・スルー方式のキャッシュメモリ
(M2)またはコピー・バック方式のキャッシュメモリ
(M1)のいずれによって行われたのかを判別する手段
(P2)と、 該判別の結果に基づき、前記アクセスを行ったキャッシ
ュメモリがコピー・バック方式のキャッシュメモリであ
った場合には当該アクセスの対象である領域のデータを
前記共有メモリに書き込むことなく当該コピー・バック
方式のキャッシュメモリへ転送する手段(P3)と、 前記アクセスを行ったキャッシュメモリがストア・スル
ー方式のキャッシュメモリであった場合には当該アクセ
スの対象である領域のデータを前記共有メモリへ書き戻
す手段(P4)とを備えたキャシュメモリ制御方式に適
用されるようになっている請求項1記載のシステムバス
。[Claims] 1. A system bus that connects at least one copy-back type cache memory (M1), at least one store-through type cache memory (M2), and a shared memory (CM). The cache memory is characterized in that, when each cache memory accesses the shared memory, each cache memory is provided with an information transmission means (41, BA_0) indicating whether it is a store-through method or a copy-back method. system bus. 2. The system bus according to claim 1, wherein said information transmission means is constituted by a dedicated signal line (41). 3. The dedicated signal line (41) is set to a high level "1" in the case of a store-through type cache memory, and to a low level "0" in the case of a copy-back type cache memory. 3. The system bus according to claim 2, wherein the system bus comprises: 4. The system bus according to claim 1, wherein the information transmission means is constituted by a predetermined bit (BA_0) of a command bus (CB). 5. The predetermined bit (BA_0) of the command bus is set to a high level "1" in the case of a store-through type cache memory, and a low level "0" in the case of a copy-back type cache memory. 5. The system bus according to claim 4, wherein the system bus is configured as follows. 6. The copy-back type cache memory (M1)
and the store-through cache memory (M2
2. The system bus according to claim 1, wherein each of the buss is configured as an internal cache memory provided in a central processing unit (CPU). 7. The system bus operates in a replacement manner in the copy-back type cache memory (M1), and other information is provided to an area owned by the cache memory that has already been rewritten and has not yet been reflected in the shared memory. means (P1) for temporarily interrupting the access when detecting an access to the shared memory from the cache memory of means (P2) for determining whether the access was made by any of M1); and based on the result of the determination, if the accessed cache memory is a copy-back type cache memory, the target of the access; means (P3) for transferring data in an area to the copy-back cache memory without writing it to the shared memory; and when the accessed cache memory is a store-through cache memory; 2. The system bus according to claim 1, wherein the system bus is adapted to be applied to a cache memory control method comprising means (P4) for writing back data in the area to be accessed to the shared memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2241127A JPH04123151A (en) | 1990-09-13 | 1990-09-13 | system bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2241127A JPH04123151A (en) | 1990-09-13 | 1990-09-13 | system bus |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04123151A true JPH04123151A (en) | 1992-04-23 |
Family
ID=17069687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2241127A Pending JPH04123151A (en) | 1990-09-13 | 1990-09-13 | system bus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04123151A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07287670A (en) * | 1994-04-18 | 1995-10-31 | Nec Corp | Information processor |
US6484242B2 (en) | 2000-07-14 | 2002-11-19 | Hitachi, Ltd. | Cache access control system |
JP2008123333A (en) * | 2006-11-14 | 2008-05-29 | Renesas Technology Corp | Semiconductor integrated circuit |
-
1990
- 1990-09-13 JP JP2241127A patent/JPH04123151A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07287670A (en) * | 1994-04-18 | 1995-10-31 | Nec Corp | Information processor |
US6484242B2 (en) | 2000-07-14 | 2002-11-19 | Hitachi, Ltd. | Cache access control system |
JP2008123333A (en) * | 2006-11-14 | 2008-05-29 | Renesas Technology Corp | Semiconductor integrated circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0735480B1 (en) | Cache coherent computer system that minimizes invalidation and copyback operations | |
CA1306312C (en) | Write-shared cache circuit for multiprocessor system | |
JP5153172B2 (en) | Method and system for maintaining low cost cache coherency for accelerators | |
US6195729B1 (en) | Deallocation with cache update protocol (L2 evictions) | |
JPH036757A (en) | Light back data cash memory device | |
JPH08185359A (en) | Memory subsystem | |
JPH02141845A (en) | Reading of data block from main memory with central processing unit for multiprocessor system | |
JPH10254772A (en) | Method and system for executing cache coherence mechanism to be utilized within cache memory hierarchy | |
CA2300005A1 (en) | Multiprocessing system employing pending tags to maintain cache coherence | |
JP4434534B2 (en) | Processor system | |
JP3009430B2 (en) | Processor and cache memory control method thereof | |
JP5168800B2 (en) | Multiprocessor system | |
JPH04123151A (en) | system bus | |
US5895486A (en) | Method and system for selectively invalidating cache lines during multiple word store operations for memory coherence | |
JP2846888B2 (en) | Multiprocessor system with distributed shared memory | |
JP5587539B2 (en) | Coherent caching of local memory data | |
JPH0492938A (en) | Cache memory control system | |
JPH01288940A (en) | Logical address cache control system | |
JPH06208507A (en) | Cache memory system | |
JPH03172943A (en) | Cache memory control system | |
JPH08137748A (en) | Computer having copy back cache and copy back cashe control method | |
JPH08202622A (en) | Cache control method for distributed memory configuration | |
JP2001043204A (en) | Cache memory controller | |
JPH0535697A (en) | Multi processor system | |
JPH0195344A (en) | Cash memory |