JPH05233444A - Microprocessor system - Google Patents

Microprocessor system

Info

Publication number
JPH05233444A
JPH05233444A JP4029813A JP2981392A JPH05233444A JP H05233444 A JPH05233444 A JP H05233444A JP 4029813 A JP4029813 A JP 4029813A JP 2981392 A JP2981392 A JP 2981392A JP H05233444 A JPH05233444 A JP H05233444A
Authority
JP
Japan
Prior art keywords
cache
data
invalidation
address
cache memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4029813A
Other languages
Japanese (ja)
Inventor
Shingo Kojima
伸吾 小嶋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4029813A priority Critical patent/JPH05233444A/en
Publication of JPH05233444A publication Critical patent/JPH05233444A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To efficiently invalidate only data which are possibly rewritten by other processors in a short period by invalidating data in a specific address range of a cache memory according to the storage contents of a cache control register. CONSTITUTION:When data is written in, for example, a cache control register 111b, a cache invalidation control part 112b is supplied with an invalidation start address and the number of invalidation addresses. The control part 112b invalidates the data in the addresses in the address range on the cache memory 12b to be invalidated with an invalidation control signal. Consequently, data in optional address range on cache memories 12a and 12b can be invalidated by single-time writing operation to cache control registers 111a and 111b.

Description

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

【0001】[0001]

【産業上の利用分野】本発明はマイクロプロセッサシス
テムに関し、特にキャッシュメモリを備えた複数のマイ
クロプロセッサが共通の主記憶装置をアクセスする構成
のマイクロプロセッサシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microprocessor system, and more particularly to a microprocessor system in which a plurality of microprocessors having cache memories access a common main memory.

【0002】[0002]

【従来の技術】マイクロプロセッサの高性能化のため、
キャッシュメモリを内蔵する方法が数多く用いられてい
る。これは、CPUに比較して低速な主記憶装置に対す
るアクセスの頻度を減らすため、主記憶装置から取り込
んだ命令またはデータを再びアクセスするときのため
に、これら命令またばデータを内部の高速なキャッシュ
メモリに保持しておき、同じアドレスをアクセスする必
要が生じた場合には低速な主記憶装置から読み出すかわ
りに、高速なキャッシュメモリから読み出すことにより
システム全体の高性能化を図るという技術である。
2. Description of the Related Art In order to improve the performance of microprocessors,
Many methods of incorporating a cache memory are used. This reduces the frequency of access to the main storage device, which is slower than that of the CPU, so that the instruction or data fetched from the main storage device can be accessed again at high speed in the internal cache. This is a technique for improving the performance of the entire system by holding the data in a memory and reading from the high speed cache memory instead of reading from the low speed main storage device when the same address needs to be accessed.

【0003】ところが、このマイクロプロセッサ以外の
ユニットが共通の主記憶装置を使用しこの主記憶装置の
内容を書き換える可能性がある場合、この書き換えとは
関係なくこのマイクロプロセッサは一度キャッシュメモ
リに取り込んだデータを使い続けるため、この動作はシ
ステム全体として期待させる動作とは一致しなくなる可
能性がある。以下にその例を示す。
However, when there is a possibility that units other than this microprocessor will use the common main memory device to rewrite the contents of this main memory device, this microprocessor will once take in the cache memory regardless of this rewriting. This behavior may not match the expected behavior of the system as it continues to use the data. An example is shown below.

【0004】図3に2つのマイクロプロセッサが1つの
主記憶装置を共有するマイクロプロセッサシステムの場
合の構成例を示す。
FIG. 3 shows a configuration example in the case of a microprocessor system in which two microprocessors share one main memory.

【0005】1Aは第1のマイクロプロセッサであり、
内部に1Kバイトのダイレクトマッピング方式のデータ
用のキャッシュメモリ12AとCPU11Aとを備えて
いる。
1A is a first microprocessor,
A cache memory 12A for data of a direct mapping method of 1 Kbyte and a CPU 11A are provided inside.

【0006】1Bは第2のマイクロプロセッサであり、
これも第1のマイクロプロセッサ1Aと同様、内部に1
Kバイトのダイレクトマッピング方式のデータ用のキャ
ッシュメモリ12BとCPU11Aとを備えている。
1B is a second microprocessor,
This is also the same as the first microprocessor 1A.
The cache memory 12B for K-byte direct mapping data and the CPU 11A are provided.

【0007】2は命令及びデータ等を格納する主記憶装
置、3は32ビットのアドレスバス、4は32ビットの
データバスである。
Reference numeral 2 is a main memory for storing instructions and data, 3 is a 32-bit address bus, and 4 is a 32-bit data bus.

【0008】複数のマイクロプロセッサが同一のバスと
主記憶装置をアクセスするマイクロプロセッサシステム
に必要な調停回路や制御信号については、本発明の構成
の説明に直接関係がないのでこれらは省略する。
Arbitration circuits and control signals necessary for a microprocessor system in which a plurality of microprocessors access the same bus and main memory are omitted because they are not directly related to the description of the configuration of the present invention.

【0009】主記憶装置2の中に各マイクロプロセッサ
1A,1Bが使用するデータがどのように格納されてい
るかを図4に示す。
FIG. 4 shows how the data used by each of the microprocessors 1A and 1B is stored in the main memory 2.

【0010】21aは第1のマイクロプロセッサ1Aが
使用する256バイトのローカルワークエリアであり、
CPU11Aからのアドレスは“0x0000100
0”〜“0x000010FF”に位置する(なお、0
xで始まる0〜9およびA〜Fの文字列は16進数を示
す。以下同様)。
Reference numeral 21a is a 256-byte local work area used by the first microprocessor 1A,
The address from the CPU 11A is “0x0000100
Located between 0 "and" 0x000010FF "(note that 0
The character strings 0 to 9 and A to F starting with x indicate hexadecimal numbers. The same applies below).

【0011】21bは第2のマイクロプロセッサ1Bが
使用する256バイトのローカルワークエリアであり、
CPU11Bからのアドレスは“0x0000110
0”〜“0x000011FF”に位置する。
Reference numeral 21b is a 256-byte local work area used by the second microprocessor 1B,
The address from the CPU 11B is “0x0000110
It is located between 0 "and" 0x000011FF ".

【0012】22は第1および第2のマイクロプロセッ
サ1A,1Bが共通に使用する256バイトの共通テー
ブルエリアであり、各CPU11A,11Bからのアド
レスは“0x0000FF00”〜“0x0000FF
FF”に位置する。
Reference numeral 22 is a 256-byte common table area commonly used by the first and second microprocessors 1A and 1B. Addresses from the CPUs 11A and 11B are "0x0000FF00" to "0x0000FF".
Located in FF ".

【0013】図5に第1および第2のマイクロプロセッ
サ1A,1Bに内蔵するキャッシュメモリ12a,12
bのデータ配置状態を示す。
FIG. 5 shows cache memories 12a and 12 built in the first and second microprocessors 1A and 1B.
The data arrangement | positioning state of b is shown.

【0014】第1のマイクロプロセッサ1Aが主記憶装
置2上のローカルワークエリア21aをアクセスするこ
とにより、キャッシュメモリ12Aにそのコピーデータ
が確保される。ローカルワークエリア21aのアドレス
が“0x00001000”〜“0x000010F
F”であるため、このアドレスの下位10ビットと対応
させてキャッシュメモリ12aの中のアドレス“0x0
00”〜“0x0FF”のローカルワークリア121a
にそのコピーデータを格納する。
When the first microprocessor 1A accesses the local work area 21a on the main storage device 2, its copy data is secured in the cache memory 12A. The address of the local work area 21a is "0x00001000" to "0x000010F"
Since it is F ", the address" 0x0 "in the cache memory 12a is associated with the lower 10 bits of this address.
Local work rear 121a from 00 "to" 0x0FF "
The copy data is stored in.

【0015】また、第1のマイクロプロセッサ1Aは主
記憶装置2上の共通テーブルエリア22をアクセスする
ことにより、キャッシュメモリ12aにそのコピーデー
タが確保される。共通テーブルエリア22のアドレスが
“0x0000FF00”〜“0x0000FFFF”
であるため、このアドレスの下位10ビットと対応させ
てキャッシュメモリ12aの中のアドレス“0x30
0”〜“0x3FF”の共通テーブルエリア122aに
そのコピーデータを格納する。
Further, the first microprocessor 1A accesses the common table area 22 on the main memory 2 to secure the copy data in the cache memory 12a. The address of the common table area 22 is “0x0000FF00” to “0x0000FFFF”
Therefore, the address “0x30 in the cache memory 12a is associated with the lower 10 bits of this address.
The copy data is stored in the common table area 122a of "0" to "0x3FF".

【0016】同様に、マイクロプロセッサ1Bが主記憶
装置2上のローカルワークエリア21bをアクセスする
ことにより、キャッシュメモリ12bにそのコピーデー
タが確保される。ローカルワークエリア21bのアドレ
スが“0x00001100”〜“0x000011F
F”であるため、このアドレスの下位10ビットと対応
させてキャッシュメモリ12bの中のアドレス“0x1
00”〜“0x1FF”のローカルワークエリア121
bにそのコピーデータを格納する。
Similarly, when the microprocessor 1B accesses the local work area 21b on the main storage device 2, its copy data is secured in the cache memory 12b. The address of the local work area 21b is "0x00001100" to "0x000011F"
Since it is F ", the address" 0x1 "in the cache memory 12b is associated with the lower 10 bits of this address.
Local work area 121 from 00 "to" 0x1FF "
The copy data is stored in b.

【0017】共通テーブルエリア22についても同様で
あり、キャッシュメモリ12bにそのコピーデータが確
保される。共通テーブルエリア22のアドレスが“0x
0000FF00”〜“0x0000FFFF”である
ため、このアドレスの下位10ビットと対応させてキャ
ッシュメモリ12b中のアドレス“0x300”〜“0
x3FF”の共通テーブルエリア122bにそのコピー
データを格納する。
The same applies to the common table area 22, and the copy data is secured in the cache memory 12b. The address of the common table area 22 is “0x
Since it is 0000FF00 "to" 0x0000FFFF ", the addresses" 0x300 "to" 0 "in the cache memory 12b are associated with the lower 10 bits of this address.
The copy data is stored in the common table area 122b of x3FF ″.

【0018】このように、第1および第2のマイクロプ
ロセッサ1A,1Bは両方とも主記憶装置2上の共通テ
ーブルエリア22をアクセスするため、そのコピーデー
タを各キャッシュメモリ12A,12Bにそれぞれ独自
に持つことになる。この共通テーブルエリア122a,
122bのコピーデータは主記憶装置2上の共通テーブ
ルエリア22にあるものとまったく同じものである必要
があるが、例えは第1のマイクロプロセッサ1Aが共通
テーブルエリア122aのコピーデータの一部を書き換
えた場合、第1のマイクロプロセッサ1Aからは主記憶
装置2に対する共通テーブルエリア22のデータの更新
が発生するがもう一方の第2のマイクロプロセッサ1B
は共通テーブルエリア22のデータが変更されたことが
わからないため、第2のマイクロプロセッサ1B上のキ
ャッシュメモリ12bの共通テーブルエリア122bに
あるコピーデータは古いままになってしまい、主記憶装
置2に直接アクセスする場合とは違いが生じてしまう。
As described above, since the first and second microprocessors 1A and 1B both access the common table area 22 on the main storage device 2, the copy data thereof are individually stored in the cache memories 12A and 12B. I will have. This common table area 122a,
The copy data of 122b needs to be exactly the same as that in the common table area 22 on the main memory 2, but for example, the first microprocessor 1A rewrites a part of the copy data of the common table area 122a. In this case, the data in the common table area 22 for the main memory 2 is updated from the first microprocessor 1A, but the second microprocessor 1B on the other side is updated.
Does not know that the data in the common table area 22 has been changed, the copy data in the common table area 122b of the cache memory 12b on the second microprocessor 1B remains old, and the main storage device 2 is directly accessed. There is a difference from when you do it.

【0019】この問題の発生を防ぐため、共通テーブル
エリア22のように複数のユニットが共通のエリアを操
作する場合はそのエリアをキャッシュメモリにとりこま
ないとか、または他から書き換えられた可能性がある場
合にはキャッシュメモリを初期化する、という方法がと
られる。
In order to prevent the occurrence of this problem, when a plurality of units operate a common area such as the common table area 22, the area may not be taken into the cache memory, or it may have been rewritten from another area. In this case, the method of initializing the cache memory is used.

【0020】例えは、第1のマイクロプロセッサ1Aか
ら第2のマイクロプロセッサ1Bが切り換わった場合に
は、第2のマイクロプロセッサ1Bはそのキャッシュメ
モリ12b内に古いコピーが残っている可能性があるた
めに、切り換え後にまず自分のキャッシュメモリ12b
に蓄えられているコピーデータをすべて無効化する。そ
の後、共通テーブルエリア22のデータが必要になった
場合には改めて主記憶装置2からキャッシュメモリ12
b内にそのコピーデータを読み込むことにより、主記憶
装置2とキャッシュメモリ12bとの間のデータの一致
(キャッシュコヒーレンシ)は常に保たれる。
For example, when the first microprocessor 1A switches to the second microprocessor 1B, the second microprocessor 1B may have an old copy in its cache memory 12b. For this reason, first, after switching, one's own cache memory 12b
Invalidates all the copy data stored in. After that, when the data in the common table area 22 becomes necessary, the data is transferred from the main storage device 2 to the cache memory 12 again.
By reading the copy data into b, the data match (cache coherency) between the main memory 2 and the cache memory 12b is always maintained.

【0021】例えば米国I社製のi486DXマイクロ
プロセッサでは、INVD命令(Invalidate
Data Cache)命令によりデータキャッシュ
メモリの内容を無効化することにより主記憶装置とデー
タキャッシュメモリとの間のデータを一致を保つことが
できる(参考文献:日経データプロ・マイクロプロセッ
サ1991年第11号MC1−303−389頁参
照)。
For example, in the i486DX microprocessor manufactured by I Corporation of the United States, the INVD instruction (Invalidate
Data Cache) instruction can be used to invalidate the contents of the data cache memory to keep the data in the main memory and the data cache memory consistent (reference: Nikkei Data Pro Microprocessor 1991 No. 11). MC 1-303-389).

【0022】また、当社製のμPD−0832マイクロ
プロセッサでは、制御レジスタのひとつであるキャッシ
ュコントロールワードを使うことによってデータキャッ
スメモリの内容を無効化することにより主記憶装置とデ
ータキャッシュメモリとの間のデータの一致を保つこと
ができる(参考文献:日経データプロ・マイクロプロセ
ッサ1989年第5号MC1−304−323頁参
照)。
Further, in the μPD-0832 microprocessor manufactured by our company, the contents of the data cache memory are invalidated by using the cache control word, which is one of the control registers, so that the cache memory between the main storage device and the data cache memory is invalidated. The data can be kept consistent (reference: Nikkei Data Pro Microprocessor, 1989, No. 5, MC1-304-323).

【0023】ところがこの場合、共通の部分を破棄する
ためにキャッシュメモリ全体を無効化しなければなら
ず、そのマイクロプロセッサがローカルに使っていた部
分までも破棄してしまい、他のユニットから書き換えら
れている可能性がないデータについても再び主記憶装置
2から読み込まなければならないという無駄が生ずる。
In this case, however, the entire cache memory must be invalidated in order to discard the common portion, and even the portion that the microprocessor was using locally is also discarded and is rewritten by another unit. There is a waste of having to read the data, which may not exist, from the main storage device 2 again.

【0024】破棄する必要がないローカルなデータをキ
ャッシュメモリに残すため、共通領域に相当する部分だ
けを無効化する方法もある。例えば米国M社製のMC6
8020ではキャッシュアドレスレジスタによる指定で
キャッシュメモリ内のひとつのアドレスのデータのみを
無効化することができるため、この方法をアドレスを換
えながら繰り返すことにより特定の範囲のみのデータを
無効化することができる(参考文献:日経データプロ・
マイクロプロセッサ1989年第3号MC1−303−
551頁参照)。
There is also a method of invalidating only the portion corresponding to the common area in order to leave local data in the cache memory that does not need to be discarded. For example, MC6 manufactured by US M company
Since the 8020 can invalidate only the data of one address in the cache memory by the designation by the cache address register, by repeating this method while changing the address, the data of only a specific range can be invalidated. (Reference: Nikkei Data Pro
Microprocessor 1989 Issue 3 MC1-303-
(See page 551).

【0025】[0025]

【発明が解決しようとする課題】この従来のマイクロプ
ロセッサシステムでは、キャッシュメモリ全体を無効化
するか、キャッシュメモリの1つのアドレスのデータの
みを無効化する構成となっているので、前者の例では、
各マイクロプロセッサがローカルに使用していて他のマ
イクロプロセッサで書き換えられる可能性のないデータ
まで無効化してしまうという無駄が生じ、後者の例で
は、特定のアドレス範囲のデータを無効化する場合、ア
ドレスを順次換えて1アドレスずつ無効化するため処理
時間が長くなるという問題点があった。
In this conventional microprocessor system, either the entire cache memory is invalidated, or only the data of one address in the cache memory is invalidated. Therefore, in the former example, ,
There is a waste of invalidating the data that each microprocessor uses locally and cannot be rewritten by other microprocessors. In the latter example, when invalidating data in a specific address range, However, there is a problem that the processing time becomes long because the addresses are sequentially changed and invalidated one by one.

【0026】本発明の目的は、他のマイクロプロセッサ
等により書き換えられる可能性のある特定のアドレス範
囲のデータのみを短時間に無効化することができるマイ
クロプロセッサシステムを提供することにある。
An object of the present invention is to provide a microprocessor system capable of invalidating only data in a specific address range which may be rewritten by another microprocessor or the like in a short time.

【0027】[0027]

【課題を解決するための手段】本発明のマイクロプロセ
ッサシステムは、共通エリアおよび複数のローカルエリ
アを持ちこれらエリアにデータを記憶する主記憶装置
と、この主記憶装置の共通エリアと対応する共通エリア
およびローカルエリアの1つと対応するローカルエリア
を持ちこれらエリアに前記主記憶装置の共通エリアおよ
びローカルエリアに記憶されている所定のデータを記憶
するキャッシュメモリ、並びにこのキャッシュメモリの
特定のアドレス範囲を記憶するキャッシュ制御レジスタ
およびこのキャッシュ制御レジスタの記憶内容に従って
前記キャッシュメモリの特定のアドレス範囲のデータを
所定のタイミングで無効化するキャッシュ無効化制御部
を備えたCPUをそれぞれ含む複数のマイクロプロセッ
サとを有している。
SUMMARY OF THE INVENTION A microprocessor system of the present invention includes a main storage device having a common area and a plurality of local areas for storing data, and a common area corresponding to the common area of the main storage device. And a cache area having a local area corresponding to one of the local areas and storing predetermined data stored in the common area and the local area of the main memory, and a specific address range of the cache memory. And a plurality of microprocessors each including a CPU having a cache invalidation control unit that invalidates data in a specific address range of the cache memory at a predetermined timing according to the stored contents of the cache control register. is doing.

【0028】[0028]

【実施例】次に本発明の実施例について図面を参照して
説明する。
Embodiments of the present invention will now be described with reference to the drawings.

【0029】図1は本発明の一実施例を示すブロック図
である。
FIG. 1 is a block diagram showing an embodiment of the present invention.

【0030】主記憶装置2は図3および図4に示された
従来例と同一である。また、マイクロプロセッサ1a,
1b内のキャッシュメモリ12a,12bも図3および
図5に示された従来例と同一である。
The main storage device 2 is the same as the conventional example shown in FIGS. 3 and 4. In addition, the microprocessor 1a,
The cache memories 12a and 12b in 1b are also the same as those of the conventional example shown in FIGS.

【0031】マイクロプロセッサ1a(1b)のCPU
11a(11b)は、キャッシュメモリ12a(12
b)の特定のアドレス範囲を記憶するキャッシュ制御レ
ジスタ111a(111b)と、このキャッシュ制御レ
ジスタ111a(111b)の記憶内容に従ってキャッ
シュメモリ12a(12b)の特定のアドレス範囲のデ
ータを所定のタイミングで無効化するキャッシュ無効化
制御部112a(112b)とを備えている。
CPU of the microprocessor 1a (1b)
11a (11b) is the cache memory 12a (12
b) The cache control register 111a (111b) for storing the specific address range, and the data in the specific address range of the cache memory 12a (12b) is invalidated at a predetermined timing according to the stored contents of the cache control register 111a (111b). And a cache invalidation control unit 112a (112b) that activates the cache.

【0032】図2にキャッシュ制御レジスタ111a,
111bの内部構成と、これらとキャッシュ無効化制御
部112a,112bおよびキャッシュメモリ12a,
12bとと相互関係を示す。
FIG. 2 shows the cache control register 111a,
The internal configuration of 111b, the cache invalidation control units 112a and 112b and the cache memory 12a,
12b and 12b.

【0033】キャッシュ制御レジスタ111a,111
bに記憶するキャッシュメモリ12a,12bの特定の
アドレス範囲はその共通テーブルエリア122a,12
2bの所定のアドレス範囲であり、この所定のアドレス
範囲を無効化開始アドレスCSAと無効化アドレス数C
ANとにより指定し、キャッシュ制御レジスタ111
a,111bは無効化開始アドレスCSAを記憶する無
効化開始アドレスフィールドCSAFと、無効化アドレ
ス数CANを記憶する無効化アドレス数フィールドCA
NFと、キャッシュメモリの無効化を指定する無効化指
定ビットCDBとを備えた構成となっている。
Cache control registers 111a, 111
The specific address range of the cache memories 12a and 12b stored in b is the common table areas 122a and 12b.
2b is a predetermined address range, and the predetermined address range is defined as the invalidation start address CSA and the invalidation address number C.
Specified by AN, the cache control register 111
Reference numerals a and 111b denote an invalidation start address field CSAF for storing the invalidation start address CSA and an invalidation address number field CA for storing the invalidation address number CAN.
The configuration includes an NF and an invalidation designation bit CDB that designates invalidation of the cache memory.

【0034】次にこの実施例の動作について説明する。Next, the operation of this embodiment will be described.

【0035】「従来の技術」で説明したように、主記憶
装置2上の共通テーブルエリア22の内容が第1のマイ
クロプロセッサ1aにより書き換えられた場合、第2の
マイクロプロセッサ1bのキャッシュメモリ12bにあ
る共通テーフルエリア12bの内容と主記憶装置2上の
共通テーブルエリア22の内容が一致しなくなる。この
ため、第1のマイクロプロセッサ1aの処理が終了し第
2のマイクロプロセッサ1bが処理を開始した段階でキ
ャッシュメモリ12b内の共通テーブルエリア122b
の内容の無効化を行なう。
As described in "Prior Art", when the contents of the common table area 22 in the main memory 2 are rewritten by the first microprocessor 1a, the cache memory 12b of the second microprocessor 1b is rewritten. The contents of a certain common table area 12b and the contents of the common table area 22 on the main memory 2 do not match. Therefore, the common table area 122b in the cache memory 12b is at the stage when the processing of the first microprocessor 1a ends and the processing of the second microprocessor 1b starts.
Invalidate the contents of.

【0036】具体的には、例えば共通テーブルエリア1
22b全体の内容を無効化する場合、共通テーブルエリ
ア122bの先頭アドレスである“0x300”を無効
化開始アドレスフィールドCSAFに、無効化するアド
レス範囲が“0x300”〜“0x3FF”であること
から“0x100”を無効化アドレス数フィールドCA
NFに、無効化を開始させるために“1”を無効化指定
ビットCDBにそれぞれ設定して、“0x300100
01”というデータをキャッシュ制御レジスタ111b
に書き込む。
Specifically, for example, the common table area 1
When invalidating the entire contents of 22b, "0x300", which is the start address of the common table area 122b, is set in the invalidation start address field CSAF as "0x300" to "0x3FF". Invalidate address field CA
In the NF, "1" is set to the invalidation designation bit CDB to start the invalidation, and "0x300100" is set.
The data "01" is stored in the cache control register 111b.
Write in.

【0037】キャッシュ制御レジスタ111bに書き込
みが発生すると、キャッシュ無効化制御部112bに無
効化開始アドレスCSAと無効化アドレス数CANとが
与えられる。キャッシュ無効化制御部112bは無効化
制御信号CNEによりキャッシュメモリ12b上の無効
化すべきアドレス範囲、この例では“0x300”から
“0x3FF”までのアドレスのデータを無効化する。
When a write occurs in the cache control register 111b, the invalidation start address CSA and the invalidation address number CAN are given to the cache invalidation control unit 112b. The cache invalidation control unit 112b invalidates the address range to be invalidated in the cache memory 12b, that is, the data of the addresses "0x300" to "0x3FF" in this example, in response to the invalidation control signal CNE.

【0038】このように、実施例では、キャッシュメモ
リ12a,12b上の任意のアドレス範囲のデータの無
効化をキャッシュ制御レジスタ111a,111bへの
1回の書き込み動作で実現できるため、他のマルチプロ
セッサにより書き換えられる可能性のあるアドレス範囲
のデータのみを短時間に効率よく無効化することができ
る。
As described above, in the embodiment, the invalidation of the data in the arbitrary address range on the cache memories 12a and 12b can be realized by one writing operation to the cache control registers 111a and 111b. Thus, only the data in the address range that may be rewritten can be efficiently invalidated in a short time.

【0039】[0039]

【発明の効果】以上説明したように本発明は、CPUに
キャッシュメモリの特定のアドレス範囲を記憶するキャ
ッシュ制御レジスタとこのキャッシュ制御レジスタの記
憶内容と従ってキャッシュメモリの特定のアドレス範囲
のデータを無効化するキャッシュ無効化制御部とを設け
た構成とすることにより、1回のアドレス範囲指定およ
び無効化動作で所定のアドレス範囲のデータが無効化で
きるので、他のマイクロプロセッサ等により書き換えら
れる可能性のあるデータのみを短時間に効率よく無効化
することができる効果がある。
As described above, according to the present invention, the cache control register for storing a specific address range of the cache memory in the CPU and the stored contents of the cache control register and accordingly the data of the specific address range of the cache memory are invalid. By providing the cache invalidation control unit for invalidating, the data in the predetermined address range can be invalidated by one address range designation and invalidation operation, so that it may be rewritten by another microprocessor or the like. There is an effect that it is possible to effectively invalidate only the data with a short time in a short time.

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

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】図1に示された実施例のキャッシュ制御レジス
タの内部構成およびキャッシュ制御レジスタとキャッシ
ュ無効化制御部,キャッシュメモリとの相互関係を示す
ブロック図である。
FIG. 2 is a block diagram showing an internal configuration of a cache control register of the embodiment shown in FIG. 1 and a mutual relationship between a cache control register, a cache invalidation control unit, and a cache memory.

【図3】従来のマイクロプロセッサシステムの一例を示
すブロック図である。
FIG. 3 is a block diagram showing an example of a conventional microprocessor system.

【図4】図3に示されたマイクロプロセッサシステムの
主記憶装置の記憶内容配置図である。
FIG. 4 is a storage content layout diagram of a main storage device of the microprocessor system shown in FIG.

【図5】図3に示されたマイクロプロセッサシステムの
キャッシュメモリの記憶内容配置図である。
5 is a storage content layout diagram of a cache memory of the microprocessor system shown in FIG. 3. FIG.

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

1a,1b,1A,1B マイクロプロセッサ 2 主記憶装置 3 アドレスバス 4 データバス 11a,11b,11A,11B CPU 12a,12b キャッシュメモリ 21a,21b ローカルワークエリア 22 共通テーブルエリア 111a,111b キャッシュ制御レジスタ 112a,112b キャッシュ無効化制御部 121a,121b ローカルワークエリア 122a,122b 共通テーブルエリア CANF 無効化アドレス数フィールド CDB 無効化指定ビット CSAF 無効化開始アドレスフィールド 1a, 1b, 1A, 1B Microprocessor 2 Main memory device 3 Address bus 4 Data bus 11a, 11b, 11A, 11B CPU 12a, 12b Cache memory 21a, 21b Local work area 22 Common table area 111a, 111b Cache control register 112a, 112b Cache invalidation control unit 121a, 121b Local work area 122a, 122b Common table area CANF Invalidation address number field CDB Invalidation designation bit CSAF Invalidation start address field

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 共通エリアおよび複数のローカルエリア
を持ちこれらエリアにデータを記憶する主記憶装置と、
この主記憶装置の共通エリアと対応する共通エリアおよ
びローカルエリアの1つと対応するローカルエリアを持
ちこれらエリアに前記主記憶装置の共通エリアおよびロ
ーカルエリアに記憶されている所定のデータを記憶する
キャッシュメモリ、並びにこのキャッシュメモリの特定
のアドレス範囲を記憶するキャッシュ制御レジスタおよ
びこのキャッシュ制御レジスタの記憶内容に従って前記
キャッシュメモリの特定のアドレス範囲のデータを所定
のタイミングで無効化するキャッシュ無効化制御部を備
えたCPUをそれぞれ含む複数のマイクロプロセッサと
を有することを特徴とするマイクロプロセッサシステ
ム。
1. A main storage device having a common area and a plurality of local areas for storing data in these areas,
A cache memory having a local area corresponding to one of a common area and a local area corresponding to the common area of the main memory, and storing predetermined data stored in the common area and the local area of the main memory in these areas. And a cache control register for storing a specific address range of the cache memory and a cache invalidation control unit for invalidating data in the specific address range of the cache memory at a predetermined timing according to the stored contents of the cache control register. And a plurality of microprocessors each including a CPU.
【請求項2】 キャッシュメモリの特定のアドレス範囲
が共通エリアの所定のアドレス範囲であり、この所定の
アドレス範囲を無効化開始アドレスと無効化アドレス数
とにより指定し、キャッシュ制御レジスタが、前記無効
化開始アドレスを記憶する無効化開始アドレスフィール
ドと、前記無効化アドレス数を記憶する無効化アドレス
数フィールドとを備えた構成である請求項1記載のマイ
クロプロセッサシステム。
2. A specific address range of the cache memory is a predetermined address range of the common area, and the predetermined address range is designated by an invalidation start address and the number of invalidation addresses, and the cache control register sets the invalidation range. 2. The microprocessor system according to claim 1, further comprising: an invalidation start address field for storing an invalidation start address, and an invalidation address number field for storing the invalidation address number.
JP4029813A 1992-02-18 1992-02-18 Microprocessor system Pending JPH05233444A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4029813A JPH05233444A (en) 1992-02-18 1992-02-18 Microprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4029813A JPH05233444A (en) 1992-02-18 1992-02-18 Microprocessor system

Publications (1)

Publication Number Publication Date
JPH05233444A true JPH05233444A (en) 1993-09-10

Family

ID=12286463

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4029813A Pending JPH05233444A (en) 1992-02-18 1992-02-18 Microprocessor system

Country Status (1)

Country Link
JP (1) JPH05233444A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019145104A (en) * 2018-02-19 2019-08-29 イエフペ エネルジ ヌヴェルIfp Energies Nouvelles System and method for predicting physical phenomenon and/or chemical phenomenon by means of shared memory segment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019145104A (en) * 2018-02-19 2019-08-29 イエフペ エネルジ ヌヴェルIfp Energies Nouvelles System and method for predicting physical phenomenon and/or chemical phenomenon by means of shared memory segment

Similar Documents

Publication Publication Date Title
JP3016575B2 (en) Multiple cache memory access methods
US6205521B1 (en) Inclusion map for accelerated cache flush
US6523118B1 (en) Secure cache for instruction and data protection
JP3239218B2 (en) Cache management system
JPH0659976A (en) Method for reloading delayed push into copy back data cache
JPH08272693A (en) Conversion table entry provided with cache possibility attribute bit regarding virtual address as well as method and apparatus for reference of said virtual address using said bit
JP2006277762A (en) Divided nondense directory for distributed shared memory multi-processor system
US7472227B2 (en) Invalidating multiple address cache entries
JP2818415B2 (en) Buffer storage device
JPH0529945B2 (en)
JPH0659974A (en) Computer system
US6256710B1 (en) Cache management during cache inhibited transactions for increasing cache efficiency
JPH0519176B2 (en)
US20050091459A1 (en) Flexible mechanism for enforcing coherency among caching structures
US5619673A (en) Virtual access cache protection bits handling method and apparatus
KR100380674B1 (en) Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system
JP2000122929A (en) Information processor
JPH05233444A (en) Microprocessor system
US20050228951A1 (en) Virtualized load buffers
JP2580263B2 (en) Buffer storage device
JP3006204B2 (en) Information processing device
US6401173B1 (en) Method and apparatus for optimizing bcache tag performance by inferring bcache tag state from internal processor state
US5388226A (en) Method and apparatus for accessing a register in a data processing system
JPH05158793A (en) Parallel cache memory
WO2023239671A1 (en) Virtual memory paging system and translation lookaside buffer with pagelets

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20001031