JPH0822414A - Computer system - Google Patents

Computer system

Info

Publication number
JPH0822414A
JPH0822414A JP6154019A JP15401994A JPH0822414A JP H0822414 A JPH0822414 A JP H0822414A JP 6154019 A JP6154019 A JP 6154019A JP 15401994 A JP15401994 A JP 15401994A JP H0822414 A JPH0822414 A JP H0822414A
Authority
JP
Japan
Prior art keywords
cache
data
control signal
memory
snoop
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
JP6154019A
Other languages
Japanese (ja)
Inventor
Norihisa Kitagata
憲央 北▲がた▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6154019A priority Critical patent/JPH0822414A/en
Publication of JPH0822414A publication Critical patent/JPH0822414A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To prevent the information processing rate from decreasing accompanying alterations of system constitution such as variation in the number of mounted processors by controlling a snooping processing according to the number of mounted processors. CONSTITUTION:The computer system is provided with a quantity discriminating circuit 104 which grasps the number of mounted processors 101 and 108 and a snooping processing control circuit 105 controls a signal inquiring data for the snooping processing according to the number of mounted processors. Namely, the computer system wherein >=2 processors 101 and 108 operate send inquiry signals for data in cache memories 103 and 110 between the processors to the respective processors 101 and 108, and allows the snooping processing for guaranteeing the conformity of data. When only one processor 101 operates in the system, the snooping processing for data to the other cache memory 108 is not performed. Consequently, the system can be placed in high-speed operation.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、コンピュータシステム
に関し、特に、ユニプロセッサとマルチプロセッサのど
ちらでも動作可能なコンピュータシステムにおけるプロ
セッサ間のスヌープ処理等に適用して有効な技術に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer system, and more particularly to a technique effectively applied to snoop processing between processors in a computer system capable of operating both a uniprocessor and a multiprocessor.

【0002】[0002]

【従来の技術】各々のプロセッサ(CPU)がキャッシ
ュメモリを持ち、ホストバス上に共有メモリを持つマル
チプロセッサシステムのコンピュータでは、キャッシュ
メモリ内のデータを同じにするためスヌープ処理を行わ
なければならない。
2. Description of the Related Art In a multiprocessor system computer in which each processor (CPU) has a cache memory and a shared memory is provided on a host bus, snoop processing must be performed in order to make the data in the cache memory the same.

【0003】キャッシュ制御方式がライトスルー方式
(プロセッサから共有メモリに書き出されるデータをキ
ャッシュメモリに溜めずに、直接的に共有メモリに書き
出す方式)であるシステムにおいては、あるCPUがあ
るブロックにデータを書き込む場合、他のキャッシュに
同じブロックがある場合、データの統一を計るために他
キャッシュのブロックを無効化しなければならない。そ
のため、他キャッシュに前記ブロックのデータが書き変
わることを伝える信号を送信する。また、CPUがある
ブロックからデータを読み込む操作の場合、自キャッシ
ュメモリ内にそのブロックが存在しないなら、他のキャ
ッシュメモリのブロックのデータと共有メモリのブロッ
クのデータは同じである。そのため、CPUは共有メモ
リからデータを読み込めばよく、他のキャッシュにデー
タを問い合わせる必要はない。よって、データの読み込
みには、スヌープ処理は必要ない。
In a system in which a cache control system is a write-through system (a system in which data written in a shared memory from a processor is directly written in the shared memory without being stored in the cache memory), a CPU stores data in a certain block. When writing, if another cache has the same block, the block of the other cache must be invalidated in order to unify the data. Therefore, a signal is transmitted to the other cache to inform that the data in the block will be rewritten. Further, in the case of the operation of reading data from a certain block of the CPU, if the block does not exist in the own cache memory, the data of the block of the other cache memory and the data of the block of the shared memory are the same. Therefore, the CPU only needs to read the data from the shared memory and does not need to inquire of the other caches for the data. Therefore, the snoop process is not necessary to read the data.

【0004】次に、キャッシュ制御方式がライトバック
制御方式(プロセッサから共有メモリに書き出すべきデ
ータをキャッシュメモリに一旦溜めた後に共有メモリに
書き出す方式)を用いているシステムにおいて、CPU
があるブロックにデータを書き込む場合、他キャッシュ
メモリに同じブロックがあるならその他キャッシュメモ
リのブロックを無効化する。また、CPUがあるブロッ
クからデータを読み込む場合、他キャッシュメモリにそ
のブロックが存在し、かつそのブロックが最新のデータ
であるなら、ライトバック動作を行わせる。そして、前
記動作が終了した後、共有メモリからデータを読み込
む。また、他キャッシュメモリに同じブロックが存在し
ないなら、CPUは共有メモリからデータを読み込む。
Next, in a system in which the cache control system uses a write-back control system (a system in which data to be written from the processor to the shared memory is temporarily stored in the cache memory and then written to the shared memory),
When writing data to a certain block, if another cache memory has the same block, the other cache memory block is invalidated. When the CPU reads data from a block, if the block exists in another cache memory and the block is the latest data, the write-back operation is performed. Then, after the above operation is completed, the data is read from the shared memory. If the same block does not exist in the other cache memory, the CPU reads the data from the shared memory.

【0005】一方、ユニプロセッサシステムの場合、他
キャッシュメモリが存在しないため上記のスヌープ処理
は必要とせず、唯一のCPUは、自キャッシュメモリあ
るいは、共有メモリに即座にアクセスすることができ
る。
On the other hand, in the case of the uniprocessor system, the above-mentioned snoop processing is not necessary because there is no other cache memory, and only one CPU can immediately access its own cache memory or shared memory.

【0006】[0006]

【発明が解決しようとする課題】これらのことから、マ
ルチプロセッサシステムで必要なスヌープ処理は、ユニ
プロセッサシステムでは不必要であり、マルチプロセッ
サのコンピュータシステムを、そのままユニプロセッサ
で動作させた場合、冗長なスヌープ処理の分だけ、通常
のユニプロセッサのコンピュータシステムより動作が遅
くなる、という問題を生じる。
From the above, the snoop processing required in the multiprocessor system is unnecessary in the uniprocessor system, and when the multiprocessor computer system is operated as it is in the uniprocessor, it is redundant. This causes a problem that the operation is slower than that of a normal uniprocessor computer system by the amount of such snoop processing.

【0007】なお、従来のマルチプロセッサシステムの
スヌープ処理については、たとえば、特開平4−328
653号公報に開示された技術が知られている。すなわ
ち、当該技術では、バス・スヌープが必要なアドレス/
コマンド・バスには共有バス結合を用い、バス・スヌー
プが不要なデータ・バスにはインターコネクション・ネ
ットワークで結合されたマルチプル・データ・バスを用
いることで、共有バス結合におけるバス・ネックの解消
を図ろうとする技術が開示されている。ところが、この
従来技術では、マイクロプロセッサシステムを、単一の
プロセッサを実装した状態で使用する際の前述のような
性能低下について配慮されていない。
The snoop processing of the conventional multiprocessor system is described in, for example, Japanese Patent Laid-Open No. 4-328.
The technique disclosed in Japanese Patent No. 653 is known. In other words, in this technology, addresses / bus-snoop-required addresses /
The shared bus connection is used for the command bus, and the multiple data buses connected by the interconnection network are used for the data bus that does not require bus snooping, thereby eliminating the bus neck in the shared bus connection. A technique to be attempted is disclosed. However, this conventional technique does not consider the above-mentioned performance degradation when the microprocessor system is used with a single processor mounted.

【0008】本発明の目的は、プロセッサの実装数に応
じてスヌープ処理を制御することにより、プロセッサの
実装数等のシステム構成の変化に伴う情報処理速度の低
下を防止することが可能なコンピュータシステムを提供
することにある。
An object of the present invention is to control snoop processing in accordance with the number of installed processors, thereby preventing a decrease in information processing speed due to a change in system configuration such as the number of installed processors. To provide.

【0009】[0009]

【課題を解決するための手段】本発明のコンピュータシ
ステムでは、実装されているプロセッサの個数を把握す
る個数識別回路を設け、スヌープ処理制御回路は、プロ
セッサの実装個数に応じてスヌープ処理のためのデータ
の問い合わせ信号を制御する。つまり、プロセッサが2
個以上で動作しているコンピュータシステムにおいて
は、プロセッサ間のキャッシュメモリへのデータの問い
合わせ信号をおのおののプロセッサに送り、データの一
致を保証するためのスヌープ処理を認める。また、プロ
セッサが1個で動作しているシステムの場合には、他キ
ャッシュメモリへのデータのスヌープ処理を行わないよ
うにする。
In the computer system of the present invention, a number identifying circuit for grasping the number of installed processors is provided, and the snoop processing control circuit performs a snoop processing according to the installed number of processors. Controls data interrogation signals. In other words, the processor is 2
In a computer system operating with more than one processor, a snoop process for guaranteeing data consistency is permitted by sending a data inquiry signal to the cache memory between the processors to each processor. Further, in the case of a system in which only one processor is operating, snoop processing of data to another cache memory is not performed.

【0010】[0010]

【作用】このように個数識別回路を設けることによりコ
ンピュータを動作させているプロセッサの個数を把握す
ることができ、プロセッサが1つで動作している場合に
は、スヌープ処理制御回路によって実行される冗長なキ
ャッシュメモリへのデータの問い合わせ処理を抑止する
ことにより、システムを高速に動作させることができ
る。
By providing the number discriminating circuit in this way, the number of processors operating the computer can be grasped, and when one processor is operating, it is executed by the snoop processing control circuit. By suppressing the data inquiry process to the redundant cache memory, the system can be operated at high speed.

【0011】[0011]

【実施例】以下、本発明の実施例を図面に基づいて詳細
に説明する。
Embodiments of the present invention will now be described in detail with reference to the drawings.

【0012】図1および図2は、本発明の一実施例であ
るコンピュータシステムの構成の一例を示すブロック図
である。本実施例のコンピュータシステムは、複数のプ
ロセッサを搭載することが可能なマルチプロセッサシス
テムとして構成されているが、単一のプロセッサを搭載
したユニプロセッサシステムとしても稼動させることが
できる。
1 and 2 are block diagrams showing an example of the configuration of a computer system according to an embodiment of the present invention. Although the computer system of this embodiment is configured as a multiprocessor system capable of mounting a plurality of processors, it can also be operated as a uniprocessor system having a single processor.

【0013】すなわち、図1は、本実施例のコンピュー
タシステムをマルチプロセッサシステムとして稼動させ
る場合を示しており、図2は、ユニプロセッサシステム
として稼動させる場合を示している。
That is, FIG. 1 shows a case where the computer system of this embodiment is operated as a multiprocessor system, and FIG. 2 shows a case where it is operated as a uniprocessor system.

【0014】マルチプロセッサシステムの場合、図1に
例示されるように、共通のプロセッサバス113には、
複数のCPUユニット201(CU)およびCPUユニ
ット202(CU),...が接続されている。また、
プロセッサバス113には共有メモリ107および当該
共有メモリ107の制御を行うメモリコントローラ10
6(MC)が接続されており、CPUユニット201お
よび202,...から共通にアクセスされる。
In the case of a multiprocessor system, a common processor bus 113, as illustrated in FIG.
A plurality of CPU units 201 (CU) and CPU units 202 (CU) ,. . . Is connected. Also,
The processor bus 113 has a shared memory 107 and a memory controller 10 for controlling the shared memory 107.
6 (MC) are connected to the CPU units 201 and 202 ,. . . Commonly accessed from.

【0015】個々のCPUユニット201(20
2,...)には、プロセッサ101(10
8,...)(CPU)と、当該プロセッサ101(1
08,...)によってアクセスされる共有メモリ10
7内のデータを一時的に保持するキャッシュメモリ10
3(110,...)(CM)および当該キャッシュメ
モリ103(110,...)の動作を制御するキャッ
シュコントローラ102(109,...)(CAC)
が設けられている。
Each CPU unit 201 (20
2 ,. . . ), The processor 101 (10
8 ,. . . ) (CPU) and the processor 101 (1
08 ,. . . ) Shared memory 10 accessed by
A cache memory 10 for temporarily holding the data in 7
3 (110, ...) (CM) and the cache controller 102 (109, ...) (CAC) that controls the operations of the cache memory 103 (110, ...) (CM).
Is provided.

【0016】個々のCPUユニット201(20
2,...)のキャッシュコントローラ102(10
9,...)は、スヌープ処理制御回路105に接続さ
れており、個々のキャッシュメモリ103および11
0,...の各々に過渡的に保持されているデータ間の
一意性を保証するための、後述のようなスヌープ処理が
行われる。
Each CPU unit 201 (20
2 ,. . . ) Cache controller 102 (10
9 ,. . . ) Is connected to the snoop processing control circuit 105 and is connected to the individual cache memories 103 and 11
0 ,. . . Snoop processing as described later is performed to guarantee uniqueness between data transiently held in each of the above.

【0017】この場合、スヌープ処理制御回路105に
は、プロセッサバス113に実装されたCPUユニット
の数、すなわち実装されたプロセッサの個数を識別する
個数識別回路104が接続されており、この個数識別回
路104は、制御信号115によって実装されているプ
ロセッサの数が単一か、あるいは複数かをスヌープ処理
制御回路105に伝達する構成となっている。特に図示
しないが、この個数識別回路104としては、たとえ
ば、ソフトウェア等で制御されるメモリスイッチや、外
部から操作されるディップスイッチ等で構成する事がで
きる。また、スヌープ処理制御回路105には、前記制
御信号115に基づいて、スヌープ処理の実行および実
行抑止を選択する制御論理が備えられている。
In this case, the snoop processing control circuit 105 is connected with a number identification circuit 104 for identifying the number of CPU units mounted on the processor bus 113, that is, the number of mounted processors. 104 is configured to transmit to the snoop processing control circuit 105 whether the number of processors implemented by the control signal 115 is single or plural. Although not particularly shown, the number identifying circuit 104 can be configured by, for example, a memory switch controlled by software or the like, a dip switch operated from the outside, or the like. Further, the snoop processing control circuit 105 is provided with control logic for selecting execution or execution suppression of the snoop processing based on the control signal 115.

【0018】以下、本実施例のコンピュータシステムの
作用の一例を説明する。
An example of the operation of the computer system of this embodiment will be described below.

【0019】まず、図1に例示されるマルチプロセッサ
システムの場合を説明する。プロセッサ101が、共有
メモリ107内のあるブロックのデータをアクセスする
場合、キャッシュメモリ103に前記ブロックが存在し
ないなら、キャッシュコントローラ102はスヌープ処
理制御回路105に共有メモリ107にアクセスするた
めの制御信号116を送信する。また、プロセッサの個
数を識別する個数識別回路104は、プロセッサの数が
複数であることを制御信号115を“Hi ”にすること
でスヌープ処理制御回路105へ伝える。その後、制御
信号116と制御信号115を受け取ったスヌープ処理
制御回路105は、他のキャッシュコントローラ109
等へ同じブロックが存在しないか問い合わせの制御信号
117を送信する。キャッシュコントローラ109等に
同じブロックが存在するならば、キャッシュコントロー
ラ109等は、キャッシュメモリ110等のデータを共
有メモリ107へ掃き出さすか、あるいはキャッシュメ
モリ110等内のブロックを無効化する。前記処理が終
了した後、スヌープ処理制御回路105は、キャッシュ
コントローラ102へ共有メモリ107に存在するある
ブロックのデータにアクセスできることを送信する。こ
れにより、キャッシュコントローラ102は、共有メモ
リ107へアクセスでき、プロセッサ101は共有メモ
リ107内のあるブロックのデータをアクセスすること
ができる。
First, the case of the multiprocessor system illustrated in FIG. 1 will be described. When the processor 101 accesses data of a block in the shared memory 107, if the block does not exist in the cache memory 103, the cache controller 102 causes the snoop processing control circuit 105 to control the control signal 116 for accessing the shared memory 107. To send. The number identifying circuit 104 for identifying the number of processors notifies the snoop processing control circuit 105 that the number of processors is plural by setting the control signal 115 to "Hi". After that, the snoop processing control circuit 105, which receives the control signal 116 and the control signal 115, causes the other cache controller 109
A control signal 117 for inquiring whether or not the same block is present is transmitted to etc. If the same block exists in the cache controller 109 or the like, the cache controller 109 or the like flushes the data in the cache memory 110 or the like to the shared memory 107, or invalidates the block in the cache memory 110 or the like. After the above processing is completed, the snoop processing control circuit 105 transmits to the cache controller 102 that the data of a certain block existing in the shared memory 107 can be accessed. As a result, the cache controller 102 can access the shared memory 107, and the processor 101 can access data of a certain block in the shared memory 107.

【0020】一方、図2に示したユニプロセッサシステ
ムの作用について説明する。この図2の場合には、1個
のプロセッサを用いてシステムが構成されており、プロ
セッサ101があるブロックのデータをアクセスする場
合、キャッシュメモリ103に目的のブロックが存在し
ないならキャッシュコントローラ102はスヌープ処理
制御回路105に共有メモリ107へアクセスするため
の制御信号116を送信する。また、個数識別回路10
4は、プロセッサが1個であることを制御信号115を
“Low”にすることでスヌープ処理制御回路105へ送
信する。その後、制御信号116と制御信号115を受
け取ったスヌープ処理制御回路105は、他キャッシュ
が存在しないことから、直ちに共有メモリ107の目的
のブロックのデータへアクセスできることを送信し、キ
ャッシュコントローラ102は共有メモリ107へのア
クセスを開始し、プロセッサ101は、共有メモリ10
7内のあるブロックのデータにアクセスできる。
On the other hand, the operation of the uniprocessor system shown in FIG. 2 will be described. In the case of FIG. 2, the system is configured using one processor, and when the processor 101 accesses data in a certain block, if the target block does not exist in the cache memory 103, the cache controller 102 snoops. A control signal 116 for accessing the shared memory 107 is transmitted to the processing control circuit 105. Also, the number identification circuit 10
4 transmits the fact that there is one processor to the snoop processing control circuit 105 by setting the control signal 115 to "Low". After that, the snoop processing control circuit 105 which receives the control signal 116 and the control signal 115 immediately transmits that the data of the target block of the shared memory 107 can be accessed because the other cache does not exist, and the cache controller 102 sends the shared memory. The access to 107 is started, and the processor 101 sets the shared memory 10
You can access the data in a block in 7.

【0021】以下、プロセッサ101があるブロックの
データにアクセスする時に、個数識別回路104とスヌ
ープ処理制御回路105の動作をキャッシュ制御方式の
違いについて図3、図4、図5、図6、図7、図8、図
9、図10を用いて説明する。
Hereinafter, when the processor 101 accesses the data of a certain block, the operations of the number identification circuit 104 and the snoop processing control circuit 105 will be described with reference to the difference in the cache control method between FIG. 3, FIG. 4, FIG. 5, FIG. , FIG. 9, FIG. 9, and FIG.

【0022】はじめに、キャッシュ制御方式がライトス
ルー方式であるシステムで、かつマルチプロセッサシス
テムで動作している場合の、プロセッサ側から共有メモ
リ107へのデータの書込みについて説明する。
First, the writing of data from the processor side to the shared memory 107 in the case where the cache control system is a write-through system and is operating in a multiprocessor system will be described.

【0023】この場合、キャッシュコントローラ102
がある時点で共有メモリ107のあるブロックにデータ
を書き込む時には、図3に示すようにキャッシュコント
ローラ102は共有メモリ107へデータを書き始める
ことを伝える制御信号116をスヌープ処理制御回路1
05に送信する(処理701)。また、個数識別回路1
04は、プロセッサの個数が複数であることを制御信号
115を“Hi ”レベルにすることで伝える(処理70
2)。
In this case, the cache controller 102
When writing data to a certain block of the shared memory 107 at a certain time point, the cache controller 102 sends a control signal 116 indicating that the writing of data to the shared memory 107 is started, as shown in FIG.
It transmits to 05 (process 701). Also, the number identification circuit 1
Reference numeral 04 indicates that the number of processors is plural by setting the control signal 115 to the "Hi" level (process 70).
2).

【0024】スヌープ処理制御回路105は、制御信号
116と制御信号115を受け取った後、スヌープ処理
を行うか選択する(処理703)。そして図4に示すよ
うに制御信号115が“Hi”(マルチプロセッサ構
成)であるため、スヌープ処理制御回路105は、他の
キャッシュコントローラ109、キャッシュコントロー
ラ111等へ同じブロックが存在するかどうかの問い合
わせの制御信号117を送信する(処理704)。制御
信号117を受け取ったキャッシュコントローラ10
9、キャッシュコントローラ111は問い合わせに対
し、同じブロックが存在するかしないかを図5に示すよ
うに制御信号118を用いて、スヌープ処理制御回路1
05に応答する(処理705)。
After receiving the control signal 116 and the control signal 115, the snoop process control circuit 105 selects whether to perform the snoop process (process 703). Since the control signal 115 is "Hi" (multiprocessor configuration) as shown in FIG. 4, the snoop processing control circuit 105 inquires of other cache controllers 109, 111, etc. whether the same block exists. The control signal 117 is transmitted (process 704). The cache controller 10 that has received the control signal 117
9. In response to the inquiry, the cache controller 111 uses the control signal 118 to determine whether the same block exists or not, as shown in FIG.
It responds to 05 (process 705).

【0025】同じブロックがある場合は、他のキャッシ
ュメモリ110、キャッシュメモリ112内の同じブロ
ックを無効化する(処理706)。そして、キャッシュ
コントローラ109、キャッシュコントローラ111等
はスヌープが終了したことをスヌープ処理制御回路10
5に伝える(処理707)。一方、同じブロックがキャ
ッシュメモリ110、キャッシュメモリ112等に存在
しなかったなら、スヌープ処理制御回路105へスヌー
プ処理が終了したことを伝えてスヌープ処理を終了する
(処理707)。
If there is the same block, the same block in the other cache memories 110 and 112 is invalidated (process 706). Then, the cache controller 109, the cache controller 111, and the like notify the snoop processing control circuit 10 that the snoop is completed.
5 (process 707). On the other hand, if the same block does not exist in the cache memory 110, the cache memory 112, etc., the snoop processing is notified to the snoop processing control circuit 105, and the snoop processing is ended (processing 707).

【0026】処理707が行われた後、スヌープ処理制
御回路105は、図6に示すようにスヌープ処理が終了
したことをキャッシュコントローラ102に制御信号1
19で送信し、メモリコントローラ106と共有メモリ
107へはデータを書き始めることを伝える制御信号1
20を送信する。制御信号119を受け取ったキャッシ
ュコントローラ102は、キャッシュメモリ103と共
有メモリ107内のあるブロックにデータを書き込む
(処理708)。
After the processing 707 is performed, the snoop processing control circuit 105 informs the cache controller 102 that the snoop processing is completed as shown in FIG.
Control signal 1 transmitted at 19 and instructing to start writing data to the memory controller 106 and the shared memory 107
Send 20. The cache controller 102 that has received the control signal 119 writes data to a certain block in the cache memory 103 and the shared memory 107 (process 708).

【0027】一方、キャッシュ制御方式がライトスルー
方式で、かつユニプロセッサシステムで動作している場
合のプロセッサ側から共有メモリ107への書込み処理
は次のようになる。キャッシュコントローラ102は、
データを書き始めることを伝える制御信号116をスヌ
ープ処理制御回路105に送信する(処理701)。ま
た、個数識別回路104は、プロセッサの個数が1個で
あることを制御信号115で伝える。この時、制御信号
115は“Low”レベルとする(処理702)。制御信
号116と制御信号115を受け取ったスヌープ処理制
御回路105はスヌープ処理を行うか選択する(処理7
03)。そして制御信号115が“Low”であるため、
スヌープ処理制御回路105は、他のキャッシュメモリ
へ問い合わせの制御信号を送信する必要がないと判断
し、当該スヌープ処理制御回路105はキャッシュコン
トローラ102からの制御信号116をメモリコントロ
ーラ106と共有メモリ107に直接伝え、キャッシュ
コントローラ102は、キャッシュメモリ103と共有
メモリ107内のあるブロックにデータを書き込む(処
理708)。
On the other hand, when the cache control system is the write-through system and is operating in the uniprocessor system, the writing process from the processor side to the shared memory 107 is as follows. The cache controller 102 is
A control signal 116 indicating that data writing is started is transmitted to the snoop process control circuit 105 (process 701). Further, the number identification circuit 104 notifies the control signal 115 that the number of processors is one. At this time, the control signal 115 is set to the "Low" level (process 702). The snoop processing control circuit 105 which receives the control signal 116 and the control signal 115 selects whether to perform snoop processing (processing 7).
03). Since the control signal 115 is “Low”,
The snoop processing control circuit 105 determines that it is not necessary to transmit the control signal for inquiry to another cache memory, and the snoop processing control circuit 105 sends the control signal 116 from the cache controller 102 to the memory controller 106 and the shared memory 107. Directly transmitted, the cache controller 102 writes data to a certain block in the cache memory 103 and the shared memory 107 (process 708).

【0028】また、キャッシュ制御方式がライトスルー
方式である場合、キャッシュコントローラ102が共有
メモリ107からデータを読み込む処理は、マルチプロ
セッサシステムとユニプロセッサのシステムの両方とも
同じ処理である。これを図8に示す。キャッシュコント
ローラ102は、データを読み始めることを伝える制御
信号116をスヌープ処理制御回路105へ送信する
(処理801)。制御信号116を受け取ったスヌープ
処理制御回路105は、他のキャッシュメモリ110、
キャッシュメモリ112等内のブロックのデータと共有
メモリ107内のブロックのデータとが等しいため(書
込みによってキャッシュメモリ内のデータが変化しない
ため)、キャッシュコントローラ109、キャッシュコ
ントローラ111等へ同じブロックが存在するかの問い
合わせを行わない。ゆえに、スヌープ処理制御回路10
5はキャッシュコントローラ102からの制御信号11
6をメモリコントローラ106と共有メモリ107に直
接伝え、キャッシュコントローラ102は、キャッシュ
メモリ103と共有メモリ107内のあるブロックから
データを読み込む(処理802)。
When the cache control system is the write-through system, the process of reading data from the shared memory 107 by the cache controller 102 is the same in both the multiprocessor system and the uniprocessor system. This is shown in FIG. The cache controller 102 sends a control signal 116 to start reading data to the snoop processing control circuit 105 (processing 801). The snoop processing control circuit 105 which has received the control signal 116, the other cache memory 110,
Since the data in the block in the cache memory 112 and the like is the same as the data in the block in the shared memory 107 (since the data in the cache memory does not change by writing), the same block exists in the cache controller 109, the cache controller 111, and the like. Do not ask. Therefore, the snoop processing control circuit 10
5 is a control signal 11 from the cache controller 102
6 is directly transmitted to the memory controller 106 and the shared memory 107, and the cache controller 102 reads data from a block in the cache memory 103 and the shared memory 107 (process 802).

【0029】次に、図9のフローチャートを参照しなが
ら、キャッシュ制御方式がライトバック方式で、かつマ
ルチプロセッサで動作している場合について説明する。
Next, the case where the cache control system is the write-back system and the multiprocessor is operating will be described with reference to the flowchart of FIG.

【0030】この場合、キャッシュコントローラ102
がある共有メモリ107のあるブロックにデータを書き
込む時には、図3に示すようにキャッシュコントローラ
102は共有メモリ107へデータを書き始めることを
伝える制御信号116をスヌープ処理制御回路105に
送信する(処理901)。また、この時、個数識別回路
104は、制御信号115を“Hi”レベルとすること
によりプロセッサの個数が複数であることを伝える(処
理902)。スヌープ処理制御回路105は、制御信号
116と制御信号115を受け取った後、スヌープ処理
を行うか選択する(処理903)。そして図4に示すよ
うに制御信号115が“Hi ”であるため、スヌープ処
理制御回路105は、スヌープ処理が必要と判断して、
他のキャッシュコントローラ109、キャッシュコント
ローラ111等へ同じブロックが存在するかどうかの問
い合わせの制御信号117を送信する(処理904)。
In this case, the cache controller 102
When writing data to a certain block of a certain shared memory 107, the cache controller 102 sends a control signal 116 to the snoop processing control circuit 105 to start writing data to the shared memory 107 as shown in FIG. 3 (process 901). ). At this time, the number identification circuit 104 informs that the number of processors is plural by setting the control signal 115 to the "Hi" level (process 902). After receiving the control signal 116 and the control signal 115, the snoop process control circuit 105 selects whether to perform the snoop process (process 903). Since the control signal 115 is "Hi" as shown in FIG. 4, the snoop processing control circuit 105 judges that the snoop processing is necessary,
The control signal 117 for inquiring whether or not the same block exists is transmitted to the other cache controller 109, the cache controller 111, etc. (process 904).

【0031】制御信号117を受け取ったキャッシュコ
ントローラ109、キャッシュコントローラ111は問
い合わせに対し、同じブロックが存在するかしないかを
図5に示すように制御信号118を用いて、スヌープ処
理制御回路105に応答する(処理905)。キャッシ
ュメモリ110、キャッシュメモリ112等に同じブロ
ックが存在し、かつそのブロックが最新のデータを保持
しているかどうかをキャッシュコントローラ109、キ
ャッシュコントローラ111は確認する(処理90
6)。図5に示すようにキャッシュメモリ110に最新
のデータが保持されているなら、キャッシュコントロー
ラ109は、共有メモリ107へキャッシュメモリ11
0内のあるブロックの最新のデータを掃き出させる(処
理907)。他のキャッシュメモリ110、キャッシュ
メモリ112内に同じブロックは存在するが最新のデー
タでない場合、キャッシュメモリ110,キャッシュメ
モリ112等内の同じブロックを無効化する(処理90
8)。
Upon receipt of the control signal 117, the cache controller 109 and the cache controller 111 respond to the inquiry to the snoop processing control circuit 105 by using the control signal 118 as shown in FIG. 5 as to whether or not the same block exists. (Process 905). The cache controller 109 and the cache controller 111 confirm whether or not the same block exists in the cache memory 110, the cache memory 112, etc., and that block holds the latest data (process 90).
6). If the latest data is held in the cache memory 110 as shown in FIG. 5, the cache controller 109 transfers the cache memory 11 to the shared memory 107.
The latest data of a block within 0 is swept out (process 907). If the same block exists in the other cache memories 110 and 112 but is not the latest data, the same block in the cache memory 110, cache memory 112, etc. is invalidated (process 90).
8).

【0032】そして、キャッシュコントローラ109、
キャッシュコントローラ111等はスヌープが終了した
ことをスヌープ処理制御回路105に伝える(処理90
9)。一方、同じブロックがキャッシュメモリ110、
キャッシュメモリ112等に存在しなかったなら、スヌ
ープ処理制御回路105へスヌープ処理が終了したこと
を伝えてスヌープ処理を終了する(処理909)。
Then, the cache controller 109,
The cache controller 111 or the like notifies the snoop processing control circuit 105 that the snoop is completed (processing 90).
9). On the other hand, the same block is the cache memory 110,
If it does not exist in the cache memory 112 or the like, the snoop processing control circuit 105 is notified that the snoop processing is completed, and the snoop processing is completed (processing 909).

【0033】処理909が行われた後、スヌープ処理制
御回路105は、図6に示すようにスヌープ処理が終了
したことをキャッシュコントローラ102に制御信号1
19で送信し、メモリコントローラ106と共有メモリ
107へはデータを書き始めることを伝える制御信号1
20を送信する。制御信号119を受け取ったキャッシ
ュコントローラ102は、キャッシュメモリ103と共
有メモリ107内のあるブロックにデータを書き込む
(処理910)。
After the processing 909 is performed, the snoop processing control circuit 105 informs the cache controller 102 that the snoop processing is completed as shown in FIG.
Control signal 1 transmitted at 19 and instructing to start writing data to the memory controller 106 and the shared memory 107
Send 20. The cache controller 102 that has received the control signal 119 writes data to a certain block in the cache memory 103 and the shared memory 107 (process 910).

【0034】一方、キャッシュ制御方式がライトバック
方式で、かつユニプロセッサシステムで動作している場
合について説明する。
On the other hand, a case where the cache control system is the write-back system and the uniprocessor system is operating will be described.

【0035】この場合、キャッシュコントローラ102
は、共有メモリ107のあるブロックにデータを書き込
む時には、データを書き始めることを伝える制御信号1
16をスヌープ処理制御回路105に送信する(処理9
01)。また、この時、個数識別回路104は、制御信
号115を“Low”レベルとすることでプロセッサの個
数が1個であることを伝える(処理902)。制御信号
116と制御信号115を受け取ったスヌープ処理制御
回路105はスヌープ処理を行うか選択する(処理90
3)。
In this case, the cache controller 102
Is a control signal 1 which tells that when writing data to a block of the shared memory 107, the data writing is started.
16 is transmitted to the snoop processing control circuit 105 (processing 9).
01). At this time, the number identifying circuit 104 informs that the number of processors is one by setting the control signal 115 to the "Low" level (process 902). The snoop processing control circuit 105 which receives the control signal 116 and the control signal 115 selects whether to perform the snoop processing (processing 90).
3).

【0036】そして制御信号115が“Low”であるた
め、スヌープ処理制御回路105は、他のキャッシュメ
モリへ問い合わせの制御信号を送信する必要がない。ゆ
えに、スヌープ処理制御回路105はキャッシュコント
ローラ102からの制御信号116をメモリコントロー
ラ106と共有メモリ107に直接伝え、キャッシュコ
ントローラ102は、キャッシュメモリ103と共有メ
モリ107内のあるブロックにデータを書き込む(処理
910)。
Since the control signal 115 is "Low", the snoop processing control circuit 105 does not need to send an inquiry control signal to another cache memory. Therefore, the snoop processing control circuit 105 directly transmits the control signal 116 from the cache controller 102 to the memory controller 106 and the shared memory 107, and the cache controller 102 writes the data to a certain block in the cache memory 103 and the shared memory 107 (processing 910).

【0037】また、キャッシュ制御方式がライトバック
方式であるシステムで、かつマルチプロセッサで動作し
ている場合の、共有メモリ107からプロセッサ側への
データ読み出し処理は、図10のフローチャートを用い
て説明すると以下のようになる。
The data read process from the shared memory 107 to the processor side in the case where the cache control system is the write-back system and the multi-processor is operating will be described with reference to the flowchart of FIG. It looks like this:

【0038】この場合、キャッシュコントローラ102
がある共有メモリ107のあるブロックにデータを読み
込む時には、図3に示すようにキャッシュコントローラ
102は共有メモリ107へデータを読み始めることを
伝える制御信号116をスヌープ処理制御回路105に
送信する(処理11)。また、この時、個数識別回路1
04は、制御信号115を“Hi”レベルとすることで
プロセッサの個数が複数であることを伝える(処理1
2)。スヌープ処理制御回路105は、制御信号116
と制御信号115を受け取った後、スヌープ処理を行う
か選択する(処理13)。
In this case, the cache controller 102
When reading data into a certain block of a certain shared memory 107, the cache controller 102 transmits a control signal 116 to the snoop processing control circuit 105 to start reading data to the shared memory 107 as shown in FIG. ). At this time, the number identification circuit 1
04 notifies that the number of processors is plural by setting the control signal 115 to the “Hi” level (Processing 1
2). The snoop processing control circuit 105 receives the control signal 116.
After receiving the control signal 115 and the control signal 115, it is selected whether to perform the snoop process (process 13).

【0039】そして図4に示すように制御信号115が
“Hi”であるため、スヌープ処理制御回路105は、
他のキャッシュコントローラ109、キャッシュコント
ローラ111等へ同じブロックが存在するかどうかの問
い合わせの制御信号117を送信する(処理14)。制
御信号117を受け取ったキャッシュコントローラ10
9、キャッシュコントローラ111は問い合わせに対
し、同じブロックが存在するかしないかを図5に示すよ
うに制御信号118を用いて、スヌープ処理制御回路1
05に応答する(処理15)。そして、キャッシュメモ
リ110、キャッシュメモリ112等に同じブロックが
存在し、かつそのブロックが最新のデータを保持してい
るかどうかをキャッシュコントローラ109、キャッシ
ュコントローラ111は確認する(処理16)。
Since the control signal 115 is "Hi" as shown in FIG. 4, the snoop processing control circuit 105
The control signal 117 for inquiring whether or not the same block exists is transmitted to the other cache controller 109, the cache controller 111, etc. (process 14). The cache controller 10 that has received the control signal 117
9. In response to the inquiry, the cache controller 111 uses the control signal 118 to determine whether the same block exists or not, as shown in FIG.
It responds to 05 (process 15). Then, the cache controller 109 and the cache controller 111 confirm whether or not the same block exists in the cache memory 110, the cache memory 112, etc., and that block holds the latest data (process 16).

【0040】図5に示すようにキャッシュメモリ110
に最新のデータが保持されているなら、キャッシュコン
トローラ109は、共有メモリ107へキャッシュメモ
リ110内のあるブロックの最新のデータを掃き出させ
る(処理17)。他のキャッシュメモリ110、キャッ
シュメモリ112内に同じブロックは存在するが最新の
データでない場合、共有メモリ107内に同じブロック
が存在するとみなし、キャッシュコントローラ109、
キャッシュコントローラ111等はスヌープが終了した
ことをスヌープ処理制御回路105に伝える(処理1
9)。
As shown in FIG. 5, the cache memory 110
If the latest data is stored in the cache memory 109, the cache controller 109 causes the shared memory 107 to flush the latest data of a block in the cache memory 110 (process 17). If the same block exists in the other cache memory 110 or cache memory 112 but is not the latest data, it is considered that the same block exists in the shared memory 107, and the cache controller 109,
The cache controller 111 or the like notifies the snoop processing control circuit 105 that the snoop is completed (Process 1
9).

【0041】一方、同じブロックがキャッシュメモリ1
10、キャッシュメモリ112等に存在しなかったな
ら、スヌープ処理制御回路105へスヌープ処理が終了
したことを伝えてスヌープ処理を終了する(処理1
9)。処理19が行われた後、スヌープ処理制御回路1
05は、図6に示すようにスヌープ処理が終了したこと
をキャッシュコントローラ102に制御信号119で送
信し、メモリコントローラ106と共有メモリ107へ
はデータを読み始めることを伝える制御信号120を送
信する。制御信号119を受け取ったキャッシュコント
ローラ102は、共有メモリ107内のあるブロックか
らデータを読み込む(処理20)。
On the other hand, the same block is the cache memory 1
10. If it does not exist in the cache memory 112 or the like, the snoop processing is notified to the snoop processing control circuit 105 and the snoop processing is ended (processing 1).
9). After the processing 19 is performed, the snoop processing control circuit 1
As shown in FIG. 6, 05 sends a control signal 119 to the cache controller 102 that the snoop process is completed, and sends a control signal 120 to the memory controller 106 and the shared memory 107 to start reading the data. Upon receiving the control signal 119, the cache controller 102 reads data from a block in the shared memory 107 (process 20).

【0042】一方、キャッシュ制御方式がライトバック
方式で、かつユニプロセッサシステムで動作している場
合、共有メモリ107からのデータの読み込み処理は以
下のようになる。
On the other hand, when the cache control system is the write-back system and the uniprocessor system is operating, the process of reading data from the shared memory 107 is as follows.

【0043】キャッシュコントローラ102は、データ
を読み始めることを伝える制御信号116をスヌープ処
理制御回路105に送信する(処理11)。また、個数
識別回路104は、プロセッサの個数が1個であること
を制御信号115で伝える。
The cache controller 102 transmits a control signal 116 to the snoop processing control circuit 105 to start reading data (processing 11). Further, the number identification circuit 104 notifies the control signal 115 that the number of processors is one.

【0044】この時、制御信号115は“Low”レベル
とする(処理12)。制御信号116と制御信号115
を受け取ったスヌープ処理制御回路105はスヌープ処
理を行うか選択する(処理13)。そして制御信号11
5が“Low”であるため、スヌープ処理制御回路105
は、他のキャッシュメモリへ問い合わせの制御信号を送
信する必要がない。ゆえに、スヌープ処理制御回路10
5はキャッシュコントローラ102からの制御信号11
6をメモリコントローラ106と共有メモリ107に直
接伝え、キャッシュコントローラ102は、キャッシュ
メモリ103と共有メモリ107内のあるブロックから
データを読み込む(処理20)。
At this time, the control signal 115 is set to the "Low" level (process 12). Control signal 116 and control signal 115
The snoop process control circuit 105 which has received the command selects whether to perform the snoop process (process 13). And the control signal 11
Since 5 is “Low”, the snoop processing control circuit 105
Need not send control signals for inquiries to other cache memories. Therefore, the snoop processing control circuit 10
5 is a control signal 11 from the cache controller 102
6 is directly transmitted to the memory controller 106 and the shared memory 107, and the cache controller 102 reads data from a block in the cache memory 103 and the shared memory 107 (process 20).

【0045】以上のように、本実施例のコンピュータシ
ステムによれば、マルチプロセッサ構成の場合には、複
数のキャッシュメモリ間におけるデータの一意性を確保
できるとともに、実装されるプロセッサが単一の場合の
ユニプロセッサ構成では、時間のかかる冗長なスヌープ
処理を抑止するので、システム構成の変更に伴う効率低
下を最小限に止めて、性能向上を図ることができる。
As described above, according to the computer system of this embodiment, in the case of the multiprocessor configuration, it is possible to ensure the uniqueness of data among a plurality of cache memories and to implement a single processor. In the uniprocessor configuration, since the time-consuming and redundant snoop processing is suppressed, it is possible to minimize the efficiency decrease due to the system configuration change and improve the performance.

【0046】たとえば、比較的小規模のマイクロプロセ
ッサベースのコンピュータシステムにおいてマルチプロ
セッサシステムを設計する場合、製品のラインアップ
(価格帯、性能)の多様化や差別化のために、本来マル
チプロセッサシステムとして設計されたものをユニプロ
セッサシステムとして製品化しても、スヌープ処理等の
冗長な処理に起因する効率低下を最小限に止めて、性能
向上を図ることができる。
For example, when designing a multiprocessor system in a relatively small-scale microprocessor-based computer system, the multiprocessor system is originally designed as a multiprocessor system in order to diversify and differentiate the product lineup (price range, performance). Even if the designed one is commercialized as a uniprocessor system, it is possible to improve the performance by minimizing the efficiency decrease caused by the redundant processing such as snoop processing.

【0047】なお、上記の説明では、キャッシュコント
ローラとスヌープ処理制御回路とを別個に設けた場合に
ついて説明したが、キャッシュコントローラがスヌープ
処理制御回路の諸機能を含む構成とし、システムの起動
時に、特定のキャッシュコントローラをマスタとし、他
のスレーブとして、マスタのキャッシュコントローラに
スヌープ処理制御回路の機能を持たせる構成としてもよ
い。
In the above description, the case where the cache controller and the snoop processing control circuit are separately provided has been described. However, the cache controller is configured to include various functions of the snoop processing control circuit, and is specified when the system is started. The cache controller may be used as a master and another slave may be used as a slave so that the master cache controller has the function of the snoop processing control circuit.

【0048】[0048]

【発明の効果】本発明のコンピュータシステムによれ
ば、マルチプロセッサとユニプロセッサの両方を実現可
能なコンピュータシステムにおいて、プロセッサの実装
数に応じてスヌープ処理を制御することにより、プロセ
ッサの実装数等のシステム構成の変化に伴う情報処理速
度の低下を防止して性能向上を実現できる、という効果
が得られる。
According to the computer system of the present invention, in a computer system capable of realizing both a multiprocessor and a uniprocessor, the snoop processing is controlled in accordance with the number of processors installed, so that the number of processors installed, etc. The effect that the performance improvement can be realized by preventing the reduction of the information processing speed due to the change of the system configuration is obtained.

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

【図1】本発明の一実施例であるコンピュータシステム
をマルチプロセッサシステムとして稼動させる場合のブ
ロック図である。
FIG. 1 is a block diagram when a computer system according to an embodiment of the present invention is operated as a multiprocessor system.

【図2】本発明の一実施例であるコンピュータシステム
をユニプロセッサシステムとして稼動させる場合のブロ
ック図である。
FIG. 2 is a block diagram when a computer system according to an embodiment of the present invention is operated as a uniprocessor system.

【図3】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラとスヌープ処理制御回
路との間における信号の授受の一例を示すブロック図で
ある。
FIG. 3 is a block diagram showing an example of signal transmission / reception between a cache controller and a snoop processing control circuit in a computer system according to an embodiment of the present invention.

【図4】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラとスヌープ処理制御回
路との間における信号の授受の一例を示すブロック図で
ある。
FIG. 4 is a block diagram showing an example of signal transmission / reception between a cache controller and a snoop processing control circuit in a computer system according to an embodiment of the present invention.

【図5】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラのスヌープ処理の一例
を示すブロック図である。
FIG. 5 is a block diagram showing an example of snoop processing of a cache controller in a computer system that is an embodiment of the present invention.

【図6】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラのスヌープ処理完了後
の共有メモリへのアクセスの一例を示すブロック図であ
る。
FIG. 6 is a block diagram showing an example of access to the shared memory after completion of snoop processing of the cache controller in the computer system according to the embodiment of the present invention.

【図7】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラのライトスルー方式に
おける共有メモリへの書込み動作の一例を示すフローチ
ャートである。
FIG. 7 is a flowchart showing an example of a write operation to the shared memory in the write-through method of the cache controller in the computer system which is an embodiment of the present invention.

【図8】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラのライトスルー方式に
おける共有メモリからの読み出し動作の一例を示すフロ
ーチャートである。
FIG. 8 is a flowchart showing an example of a read operation from the shared memory in the write-through method of the cache controller in the computer system according to the exemplary embodiment of the present invention.

【図9】本発明の一実施例であるコンピュータシステム
におけるキャッシュコントローラのライトバック方式に
おける共有メモリへの書込み動作の一例を示すフローチ
ャートである。
FIG. 9 is a flowchart showing an example of a write operation to the shared memory in the write-back method of the cache controller in the computer system which is an embodiment of the present invention.

【図10】本発明の一実施例であるコンピュータシステ
ムにおけるキャッシュコントローラのライトバック方式
における共有メモリからの読み出し動作の一例を示すフ
ローチャートである。
FIG. 10 is a flowchart showing an example of a read operation from the shared memory in the write-back method of the cache controller in the computer system which is an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

101…プロセッサ、102…キャッシュコントロー
ラ、103…キャッシュメモリ、104…個数識別回
路、105…スヌープ処理制御回路、106…メモリコ
ントローラ、107…共有メモリ、109…キャッシュ
コントローラ、110…キャッシュメモリ、111…キ
ャッシュコントローラ、112…キャッシュメモリ、1
13…プロセッサバス、115〜120…制御信号、2
01,202…CPUユニット。
101 ... Processor, 102 ... Cache controller, 103 ... Cache memory, 104 ... Number identification circuit, 105 ... Snoop processing control circuit, 106 ... Memory controller, 107 ... Shared memory, 109 ... Cache controller, 110 ... Cache memory, 111 ... Cache Controller, 112 ... Cache memory, 1
13 ... Processor bus, 115-120 ... Control signal, 2
01, 202 ... CPU unit.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 1個あるいは2個以上のプロセッサと、
前記プロセッサによってアクセスされる共有メモリと、
前記プロセッサの各々に設けられ、前記プロセッサから
前記共有メモリに対して書き込まれるデータおよび前記
共有メモリから前記プロセッサへと読みだされるデータ
の少なくとも一方を一時的に保持するキャッシュメモリ
と、前記キャッシュメモリを制御するキャッシュコント
ローラとを含むコンピュータシステムであって、前記キ
ャッシュメモリ間における前記データの一意性を保証す
るためのスヌープ処理を行うスヌープ処理制御回路と、
前記プロセッサの実装個数を識別して前記スヌープ処理
制御回路に伝達する個数識別回路とを備え、前記スヌー
プ処理制御回路は、前記プロセッサの実装数が複数の場
合には前記スヌープ処理を行い、前記プロセッサの実装
数が単一の場合には前記スヌープ処理を抑止する制御論
理を有することを特徴とするコンピュータシステム。
1. One or more processors,
A shared memory accessed by the processor,
A cache memory that is provided in each of the processors and that temporarily holds at least one of data written from the processor to the shared memory and data read from the shared memory to the processor; and the cache memory A snoop processing control circuit for performing snoop processing for guaranteeing uniqueness of the data between the cache memories;
A number identifying circuit that identifies the number of mounted processors and transmits the number to the snoop processing control circuit, wherein the snoop processing control circuit performs the snoop processing when the number of mounted processors is plural, and the processor A computer system having a control logic for suppressing the snoop processing when the number of the devices is single.
JP6154019A 1994-07-06 1994-07-06 Computer system Pending JPH0822414A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6154019A JPH0822414A (en) 1994-07-06 1994-07-06 Computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6154019A JPH0822414A (en) 1994-07-06 1994-07-06 Computer system

Publications (1)

Publication Number Publication Date
JPH0822414A true JPH0822414A (en) 1996-01-23

Family

ID=15575135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6154019A Pending JPH0822414A (en) 1994-07-06 1994-07-06 Computer system

Country Status (1)

Country Link
JP (1) JPH0822414A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438622B1 (en) * 1998-11-17 2002-08-20 Intel Corporation Multiprocessor system including a docking system
JP2010113734A (en) * 2003-07-31 2010-05-20 Intel Corp Inter-processor interrupt
JP2011070253A (en) * 2009-09-24 2011-04-07 Mitsubishi Electric Corp Memory control system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438622B1 (en) * 1998-11-17 2002-08-20 Intel Corporation Multiprocessor system including a docking system
JP2010113734A (en) * 2003-07-31 2010-05-20 Intel Corp Inter-processor interrupt
JP2011070253A (en) * 2009-09-24 2011-04-07 Mitsubishi Electric Corp Memory control system

Similar Documents

Publication Publication Date Title
EP0936555B1 (en) Cache coherency protocol with independent implementation of optimised cache operations
EP0378399B1 (en) Cache content control in multi-processor networks
KR0163231B1 (en) Coherency and synchronization mechanisms for i/o channel controller in a data processing system
KR100491435B1 (en) System and method for maintaining memory coherency in a computer system having multiple system buses
US6298418B1 (en) Multiprocessor system and cache coherency control method
US20030046356A1 (en) Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system
JP2872251B2 (en) Information processing system
JPH07281955A (en) Snoop circuit of multiprocessor system
JPS58118083A (en) Cash control mechanism for multiple processing system
US6560680B2 (en) System controller with Integrated low latency memory using non-cacheable memory physically distinct from main memory
US6334172B1 (en) Cache coherency protocol with tagged state for modified values
US5659708A (en) Cache coherency in a multiprocessing system
CN113853589A (en) Cache size change
US6918009B1 (en) Cache device and control method for controlling cache memories in a multiprocessor system
US6035376A (en) System and method for changing the states of directory-based caches and memories from read/write to read-only
US5987544A (en) System interface protocol with optional module cache
US6247098B1 (en) Cache coherency protocol with selectively implemented tagged state
WO1997004392A1 (en) Shared cache memory device
JPH07152647A (en) Shared memory multiprocessor
US6341336B1 (en) Cache coherency protocol having tagged state used with cross-bars
US6701416B1 (en) Cache coherency protocol with tagged intervention of modified values
US6209068B1 (en) Read line buffer and signaling protocol for processor
JP2000132531A (en) Multiprocessor
JPH0822414A (en) Computer system
US6021466A (en) Transferring data between caches in a multiple processor environment