JPH06100984B2 - Microprocessor - Google Patents

Microprocessor

Info

Publication number
JPH06100984B2
JPH06100984B2 JP59110764A JP11076484A JPH06100984B2 JP H06100984 B2 JPH06100984 B2 JP H06100984B2 JP 59110764 A JP59110764 A JP 59110764A JP 11076484 A JP11076484 A JP 11076484A JP H06100984 B2 JPH06100984 B2 JP H06100984B2
Authority
JP
Japan
Prior art keywords
microprocessor
address
memory
signal
data
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.)
Expired - Lifetime
Application number
JP59110764A
Other languages
Japanese (ja)
Other versions
JPS60256855A (en
Inventor
忠彦 西向井
淳 長谷川
勝 松村
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
Priority to JP59110764A priority Critical patent/JPH06100984B2/en
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to DE19853502147 priority patent/DE3502147A1/en
Publication of JPS60256855A publication Critical patent/JPS60256855A/en
Priority to US07/183,401 priority patent/US5148526A/en
Priority to US07/804,739 priority patent/US5479625A/en
Publication of JPH06100984B2 publication Critical patent/JPH06100984B2/en
Priority to US08/413,110 priority patent/US5502825A/en
Priority to US08/435,958 priority patent/US5509133A/en
Priority to US08/649,333 priority patent/US5619677A/en
Priority to US08/795,639 priority patent/US5822761A/en
Priority to US09/087,900 priority patent/US6381680B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はデータ処理装置のキヤツシユメモリに係り、特
に共有メモリまたは類似の手段によつて互いに通信を行
うマルチプロセツサ方式をサポートするマイクロプロセ
ツサおよびデータのアクセス頻度に偏りのあるシステム
におけるマイクロプロセツサに好適なキヤツシユメモリ
制御回路に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cache memory of a data processing device, and more particularly to a microprocessor supporting a multiprocessor system in which communication is performed by a shared memory or similar means. Also, the present invention relates to a cache memory control circuit suitable for a microprocessor in a system in which the data access frequency is biased.

〔発明の背景〕[Background of the Invention]

負荷分散のために複数個のプロセツサを結合したマルチ
プロセツサ方式において各プロセツサにキヤツシユメモ
リを設けた場合に生じる問題について以下に説明する。
A problem that occurs when a cache memory is provided in each processor in a multiprocessor system in which a plurality of processors are combined for load distribution will be described below.

例えば、2つのプロセツサ間でメツセージの転送を行い
ながら処理を進めるシステムの場合の例を第1図および
第2図のブロツク図で示す。第1図は、プロセツサ1と
3それぞれのプロセツサ専用のローカルメモリ2と2′
およびメツセージ通信用の共有メモリ4から成るシステ
ムのブロツク図である。通常、各々のプロセツサ1また
は3は、自プロセツサのローカルメモリ2または2′を
用いて処理を行つているが、プロセツサ1からプロセツ
サ3に処理依頼を行う場合、プロセツサ1は処理内容と
処理に必要なデータを共有メモリ4の予め定められた領
域に書き、プロセツサ7に割込みをかける。プロセツサ
3は割込みが生ずると、共有メモリ4の内容を読み出し
依頼された処理を行あ。プロセツサ3は、処理を終了す
ると、プロセツサ1に連絡するため共有メモリ4に結果
を書き込み、プロセツサ1に割込みをかける。その後、
プロセツサ3は以前の処理を続行する。プロセツサ1
は、プロセツサ3からの割込みにより共有メモリ4から
処理結果を取り出し引き続き処理を続行する。プロセツ
サ1はプロセツサ3に依頼した処理が実行されている間
は、ローカルメモリ2を用いて他の処理を行うことが出
来る。
For example, a block diagram of FIGS. 1 and 2 shows an example of a system in which processing is performed while transferring a message between two processors. FIG. 1 shows a processor dedicated local memory 2 and 2'for each processor 1 and 3, respectively.
FIG. 3 is a block diagram of a system including a shared memory 4 for message communication. Normally, each processor 1 or 3 performs processing using the local memory 2 or 2'of its own processor, but when the processor 1 requests the processor 3 to process, the processor 1 is required for processing content and processing. Data is written in a predetermined area of the shared memory 4, and the processor 7 is interrupted. When an interrupt occurs, the processor 3 reads the contents of the shared memory 4 and performs the requested processing. When the processing is completed, the processor 3 writes the result in the shared memory 4 to contact the processor 1, and interrupts the processor 1. afterwards,
Processor 3 continues the previous processing. Processor 1
Receives the processing result from the shared memory 4 by the interrupt from the processor 3 and continues the processing. While the processing requested by the processor 3 is being executed, the processor 1 can perform other processing using the local memory 2.

第2図は、2つのプロセツサ1,3がそれぞれ共通のシス
テムバス100に接続され、主メモリ2を共有しているシ
ステムのブロツク図である。それぞれのプロセツサは、
互いに独立に主メモリ2にアクセスを行うが、一方のプ
ロセツサが主メモリ2をアクセス中の場合、他方のプロ
セツサのアクセス要求は待たされるよう制御される。こ
のシステムにおいて、プロセツサ間のメツセージ通信
は、主メモリ2の特定領域を用いて行なわれ、メツセー
ジを書く領域が主メモリ2内の特定領域である点を除い
て、第1図に示されるシステムと同様の方式がとられて
いる。
FIG. 2 is a block diagram of a system in which two processors 1 and 3 are connected to a common system bus 100 and share a main memory 2. Each processor is
The main memory 2 is accessed independently of each other, but when one processor is accessing the main memory 2, the access request of the other processor is controlled to be waited. In this system, the message communication between the processors is performed using a specific area of the main memory 2, and the system shown in FIG. 1 is used except that the area for writing the message is the specific area in the main memory 2. A similar scheme is used.

この2つのシステムにおいて、各プロセツサ1,3に一般
的なキヤツシユメモリ6,7を設けると、例えばプロセツ
サ1がメツセージ通信用領域に書き込みを行つた場合、
プロセツサ1の有するキヤツシユメモリ6の値は書き込
みと同時に更新されるが、プロセツサ3のキヤツシユメ
モリ7に同じアドレスの値が記憶されていてもその更新
が行なわれないために、プロセツサ3がメツセージ領域
をアクセスしてもキヤツシユメモリ7の情報が読み出さ
れてしまい、プロセツサ1からのメツセージを正しく受
け取れないという問題が生じる。
In these two systems, if the processors 1 and 3 are provided with general cache memories 6 and 7, for example, when the processor 1 writes in the message communication area,
The value of the cache memory 6 of the processor 1 is updated at the same time as writing, but even if the value of the same address is stored in the cache memory 7 of the processor 3, the processor 3 does not update the value of the same address. Even if the area is accessed, the information in the cache memory 7 is read out, which causes a problem that the message from the processor 1 cannot be correctly received.

〔発明の目的〕[Object of the Invention]

本発明の目的は、上記問題点を解決するためになされた
もので、マイクロプロセツサ等によつて構成されるマル
チプロセツサ方式を採用したデータ処理装置において、
性能向上を図るためのキヤツシユメモリを設けても、矛
盾なくデータ処理を行うことが出来るキヤツシユメモリ
制御回路を提供するとともに、さらにキャッシュメモリ
外の記憶装置に高速にアクセスできるマイクロプロセッ
サを提供することにある。
An object of the present invention is to solve the above problems, and in a data processing device adopting a multiprocessor system configured by a microprocessor or the like,
Providing a cache memory control circuit that can perform data processing consistently even if a cache memory is provided to improve performance, and a microprocessor that can access a storage device outside the cache memory at high speed Especially.

〔発明の概要〕[Outline of Invention]

キヤツシユメモリを有するマイクロプロセツサを用いる
場合、マルチプロセツサ方式における共有メモリ内のメ
ツセージ通信領域のように、例えば当該マイクロプロセ
ツサ以外の装置等の特定要因によつてデータが変化し、
かつデータの変化を当該マイクロプロセツサが検出する
のが困難な記憶手段上のデータについてはキヤツシユメ
モリに保持しないように制御すれば、当該マイクロプロ
セツサはキヤツシユメモリにアクセスせず外部の記憶手
段に対してアクセスを行うため、常に最新のデータを得
ることが出来る。
When using a microprocessor with a cache memory, like the message communication area in the shared memory in the multiprocessor system, for example, data changes due to a specific factor such as a device other than the microprocessor,
In addition, if the microprocessor does not store the data on the storage means, which is difficult for the microprocessor to detect the change of data, in the cache memory, the microprocessor does not access the cache memory and the external memory is not stored. Since the means is accessed, the latest data can always be obtained.

次にマルチプロセツサ方式における共有メモリにおい
て、該共有メモリのメツセージ通信領域を含む部分が故
障した場合、該故障部分を切り離し残りの共有メモリの
一部をメツセージ通信領域として使用するように変更す
ることが可能ならば、メモリ容量の減少によつていくら
かの性能低下を伴なうかもしれないが、処理を再開する
ことが出来る。
Next, in the shared memory in the multiprocessor system, when a portion including the message communication area of the shared memory fails, the faulty portion is separated and a part of the remaining shared memory is changed to be used as the message communication area. If it is possible, the processing can be restarted although the performance may be lowered due to the decrease in the memory capacity.

以上の考察に基づき、本発明は、記憶装置に接続され、
該記憶装置の一部のデータを保持するキャッシュ・メモ
リを少なくとも含むマイクロプロセッサであって、 上記マイクロプロセッサは、 上記マイクロプロセッサ以外の装置の要因によってその
データが変化する上記記憶装置の特定領域のアドレス範
囲の情報を保持する記憶手段と、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが、上記記憶
手段に保持された上記特定領域の上記アドレス範囲内に
あるかどうかを検出する検出手段と、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが上記記憶手
段に保持された上記特定領域の上記アドレス範囲内にあ
る時、上記アクセス時の上記記憶装置の上記特定領域の
データが上記キャッシュ・メモリへ書き込まれることを
上記検出手段の検出出力に応答して禁止する禁止機構と
を具備してなり、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが上記記憶手
段に保持された上記特定領域の上記アドレス範囲内にあ
るかどうかを検出する動作は、上記マイクロプロセッサ
による上記記憶装置又は上記キャッシュ・メモリへのア
クセス・アドレスに該当するデータが上記キャッシュ・
メモリ内にあるかどうかを検出する動作と並行して行わ
れることを特徴とするものである 〔発明の実施例〕 以下、本発明の一実施例を第3図を用いて説明する。
Based on the above consideration, the present invention is connected to a storage device,
A microprocessor including at least a cache memory for holding a part of data in the storage device, wherein the microprocessor is an address of a specific area of the storage device in which the data changes due to a factor of a device other than the microprocessor. Detecting whether storage means for holding range information and an access address to the storage device or cache memory by the microprocessor are within the address range of the specific area held in the storage means And a detecting means for accessing the storage device or the cache memory by the microprocessor within the address range of the specific area held in the storage means, the storage device at the time of the access. The data in the specified area is the cache memo Rewriting in response to the detection output of the detection means, the access mechanism holds the access address to the storage device or the cache memory by the microprocessor in the storage means. The operation of detecting whether or not it is within the address range of the specified area is performed by determining that the data corresponding to the access address to the storage device or the cache memory by the microprocessor is the cache address.
It is characterized in that it is performed in parallel with the operation of detecting whether or not it is in the memory. [Embodiment of the Invention] An embodiment of the present invention will be described below with reference to FIG.

マイクロプロセツサ1は、命令を解析し実行の制御を行
う命令制御回路10、演算器11、各命令で汎用に使用でき
るレジスタ12、ライトデータを保持するレジスタ13、リ
ードデータ(命令も含む)を保持するレジスタ14、リー
ド・ライトを行うアドレスを保持するレジスタ15、キヤ
ツシユ書き込み禁止領域の下限アドレスを保持するレジ
スタ16、該禁止領域の上限アドレスを保持するレジスタ
17、アドレス信号116と該下限アドレスおよび上限アド
レスの比較判定を行う比較回路19、アドレス信号116を
検索用データとする連想メモリ20、その出力信号と外部
より読み出したデータ信号121の切換えを行うセレクタ1
8、連想メモリ20に書き込むデータを選択するセレクタ3
0およびその他の制御回路かに成り、アドレス信号116、
リードデータ信号121、ライトデータ信号122、リード信
号114、ライト信号111およびACK信号113によつてシステ
ムバス100と接続されている。ここでACK信号は動作終了
を示す場合である。レジスタ12・13・15・・16・17に
は、信号133を介して演算器11の出力が書き込めるよう
になつており、この制御は命令制御回路10が行なう。
The microprocessor 1 includes an instruction control circuit 10 that analyzes instructions and controls execution, an arithmetic unit 11, a register 12 that can be used for general purpose for each instruction, a register 13 that holds write data, and read data (including instructions). A register 14 for holding, a register 15 for holding an address for reading / writing, a register 16 for holding a lower limit address of the cache write prohibited area, and a register for holding an upper limit address of the prohibited area.
17, a comparison circuit 19 for comparing and judging the address signal 116 with the lower limit address and the upper limit address, an associative memory 20 using the address signal 116 as search data, and a selector for switching between the output signal and the data signal 121 read from the outside. 1
8. Selector 3 for selecting the data to write in the associative memory 20
0 and other control circuits, address signal 116,
It is connected to the system bus 100 by a read data signal 121, a write data signal 122, a read signal 114, a write signal 111 and an ACK signal 113. In this case, the ACK signal indicates the end of operation. The output of the arithmetic unit 11 can be written in the registers 12, 13, 15, 16 and 17 via the signal 133, and this control is performed by the instruction control circuit 10.

以上の構成において、読み出しを行うときの動作につい
て説明する。ます読み出すアドレスが演算器で計算され
レジスタ15にセツトされる。これによりアドレス信号11
6に読み出しアドレスが出力される。連想メモリ20は、
アドレス信号116を用いて連想を行ない、該当するデー
タが記憶されているかどうかを信号118に出力する。す
なわち該当するデータが存在する場合には信号118はオ
ンになる。信号118の値はフリツプフロツプ22に記憶さ
れる、次に命令制御回路10は信号112をオンにし読み出
しを指示する。該当するデータが連想メモリ20に存在す
る場合にはフリツプフロツプ22の出力信号119がオンと
なつているのでインバータ28およびANDゲート29の働き
により、リード信号114はオフのままである。またANDゲ
ート26、ORゲート23の働きにより信号110がオンにされ
命令制御回路10に読み出しの終了を知らせる。読み出し
が終了すると命令制御回路10はレジスタ14に信号120の
値を書き込む。セレクタ18は信号119がオンの場合連想
メモリ20の出力を選択するのでレジスタ14には連想メモ
リから読み出された該当するデータが書き込まれる。
An operation when reading is performed in the above configuration will be described. The address to be read is calculated by the arithmetic unit and set in the register 15. As a result, the address signal 11
The read address is output to 6. The associative memory 20
The address signal 116 is used for association, and whether or not the corresponding data is stored is output to the signal 118. That is, the signal 118 is turned on when the corresponding data is present. The value of signal 118 is stored in flip-flop 22, then instruction control circuit 10 turns signal 112 on and directs reading. When the corresponding data exists in the associative memory 20, the output signal 119 of the flip-flop 22 is on, so the read signal 114 remains off due to the operation of the inverter 28 and the AND gate 29. Further, the signal 110 is turned on by the operation of the AND gate 26 and the OR gate 23 to notify the instruction control circuit 10 of the end of reading. When the reading is completed, the instruction control circuit 10 writes the value of the signal 120 in the register 14. Since the selector 18 selects the output of the associative memory 20 when the signal 119 is on, the corresponding data read from the associative memory is written in the register 14.

一方、該当するデータが連想メモリ20に存在しない場合
には信号119がオフとなつているので信号112がオンにな
るとインバータ28およびANDゲート29の働きによりリー
ド信号114がオンとなり図示されない外部のメモリに対
し読み出しが指示される。これと並行して比較器19では
アドレス信号116をレジスタ16,17の値との比較が行なわ
れており、アドレスが該レジスタに保持された下限値と
上限値の間にあるときには信号115がオフされる。
On the other hand, when the corresponding data does not exist in the associative memory 20, the signal 119 is off, so when the signal 112 is turned on, the read signal 114 is turned on by the operation of the inverter 28 and the AND gate 29, and an external memory not shown. Is instructed to read. In parallel with this, the comparator 19 compares the address signal 116 with the values of the registers 16 and 17, and when the address is between the lower limit value and the upper limit value held in the register, the signal 115 is turned off. To be done.

外部メモリは読み出しが終了するとリードデータをリー
ドデータ信号121に出力しACK信号113をオンにする。ACK
信号113がオンになるとORゲート23を介して信号110がオ
ンとなり、命令制御回路10はレジスタ10に読み出された
データを書き込み、動作を完了する。アドレスがキヤツ
シユ書き込み禁止領域内でなかつた場合、信号115がオ
ンなのでACK信号113がオンになるとORゲート24、ANDゲ
ート25の働きで信号117がオンされ連想メモリ20に書き
込みが指示される。信号119がオフの状態で書き込みを
指示されると連想メモリ20はカウンタ21の出力で示され
る行位置の連想部にはアドレス信号116をデータ部には
セレクタ30の出力を書き込む。読み出しの場合セレクタ
39はリードデータ信号121を選択している。カウンタ21
はANDゲート27の出力がオンとなるのでカウントアツプ
される。このようにして読み出されたデータは連想メモ
リ20に書き込まれる。読み出しアドレスがキヤツシユ書
き込み禁止領域内であつた場合、信号115がオフなので
信号117はオンされず連想メモリへの書き込みは行なわ
れない。
When the external memory finishes reading, it outputs the read data to the read data signal 121 and turns on the ACK signal 113. ACK
When the signal 113 is turned on, the signal 110 is turned on via the OR gate 23, and the instruction control circuit 10 writes the read data in the register 10 and completes the operation. If the address is not within the cache write-protected area, the signal 115 is on, so that when the ACK signal 113 is turned on, the signal 117 is turned on by the action of the OR gate 24 and the AND gate 25 to instruct the associative memory 20 to write. When writing is instructed with the signal 119 turned off, the associative memory 20 writes the address signal 116 in the associative portion of the row position indicated by the output of the counter 21 and the output of the selector 30 in the data portion. Selector for reading
39 selects the read data signal 121. Counter 21
Is counted up because the output of the AND gate 27 is turned on. The data thus read is written in the associative memory 20. If the read address is within the cache write inhibit area, the signal 115 is off, so the signal 117 is not on and the associative memory is not written.

次に書き込みを行うときの動作について説明する。演算
器11で計算された書き込みアドレスがレジスタ15に書き
込まれ、次いで書き込みデータを演算器11で計算してレ
ジスタ13に書き込む。、そののちライト信号111をオン
にして書き込みを指示する。このとき読み出し時と同様
に連想メモリ20に該当するアドレスのデータが保持され
ているかをチエツクし、結果が信号119に出力されるも
のとする。また比較器19においてもアドレスの比較が行
なわれ結果が信号115に出力される。外部メモリ回路は
ライト信号111がオンになるとアドレス信号116で示され
るアドレスにライトデータ信号122の値を書き込みACK信
号113をオンにする、ACK信号113がオンになるとORゲー
ト23を介して信号110がオンとなり命令制御回路はライ
ト動作を終了する。
Next, the operation for writing will be described. The write address calculated by the arithmetic unit 11 is written in the register 15, and then the write data is calculated by the arithmetic unit 11 and written in the register 13. After that, the write signal 111 is turned on to instruct writing. At this time, it is assumed that the data at the corresponding address is held in the associative memory 20 as in the reading, and the result is output to the signal 119. Further, the comparator 19 also compares the addresses and outputs the result as a signal 115. When the write signal 111 is turned on, the external memory circuit writes the value of the write data signal 122 to the address indicated by the address signal 116, turns on the ACK signal 113, and when the ACK signal 113 is turned on, the signal 110 is sent via the OR gate 23. Is turned on, and the instruction control circuit ends the write operation.

書き込みアドレスがキヤツシユ書き込み禁止領域でない
場合には信号115がオン状態であるのでACK信号113がオ
ンになるとORゲート24およびANDゲート25の働きにより
信号117がオンとなり連想メモリ20への書き込みが指示
される。書き込みアドレスと同じアドレスが連想メモリ
20内に記憶されている場合には信号119がオンとなつて
おり、この場合、該当するアドレスに対応するデータ部
のみが書き換えられる。同じアドレスが記憶されていな
い場合には信号119がオフとなつており、連想メモリ20
内のカウンタ21によつて示される行位置の連想部とデー
タ部が同時に書き込まれる。いずれの場合も書き込まれ
るデータはセレクタ30によつて選択されたライトデータ
信号122の値である。
When the write address is not in the write-protected area, the signal 115 is on, so when the ACK signal 113 is turned on, the signal is turned on by the action of the OR gate 24 and the AND gate 25 and the writing to the associative memory 20 is instructed. It The same address as the write address is associative memory
If it is stored in 20, the signal 119 is turned on, and in this case, only the data part corresponding to the corresponding address is rewritten. If the same address is not stored, the signal 119 is off and the associative memory 20
The associative part and the data part of the row position indicated by the counter 21 are simultaneously written. In either case, the written data is the value of the write data signal 122 selected by the selector 30.

書き込みアドレスがキヤツシユ書き込み禁止領域の場合
には信号115がオフ状態であるので信号117がオンになる
ことはなく連想メモリ20への書き込みは行なわれない。
When the write address is in the cache write prohibition area, the signal 115 is in the off state, the signal 117 is not turned on, and writing to the associative memory 20 is not performed.

以上に述べた実施例においてプロセツサ間のメツセージ
通信領域の下限アドレスおよび上限アドレスをレジスタ
16,17に書いておくと、この領域のデータがキヤツシユ
メモリに保持されないのでフエツチを行う場合には直接
主記憶装置上のメツセージ通信領域にアクセスされ、デ
ータの一致という点で矛盾を生じない。
In the embodiment described above, the lower limit address and the upper limit address of the message communication area between processors are registered.
If you write in 16,17, the data in this area is not stored in the cache memory, so when you perform a fetch, the message communication area on the main memory is directly accessed, and there is no inconsistency in terms of data matching. .

また、単一プロセツサ構成の場合、繰返しアクセスする
回数の少ない領域の下限アドレスと上限アドレスをレジ
スタ16,17に書いておけば、この領域のデータがキヤツ
シユメモリに保持されることはなく、全体としてのキヤ
ツシユヒツト率を向上させることが出来る。
Also, in the case of a single processor configuration, if the lower and upper addresses of the area that is accessed less frequently are written in registers 16 and 17, the data in this area will not be held in cache memory and As a result, it is possible to improve the cache rate.

〔発明の効果〕〔The invention's effect〕

本発明によれば、マルチプロセツサ方式における相互通
信領域のように特定要因によつて記憶内容が変化する特
定領域を含む記憶手段に対してプロセツサがアクセスす
るとき、特定領域へのアクセスであればそのデータをキ
ヤツシユメモリに保持することを禁止することにより、
アクセスしたデータに矛盾が発生とないようにできる。
According to the present invention, when a processor accesses a storage means including a specific area whose stored content changes depending on a specific factor, such as an intercommunication area in a multiprocessor system, if the access is to the specific area, By prohibiting holding that data in cache memory,
You can prevent inconsistencies in the accessed data.

さらにこの特定領域のアドレスは任意に設定し直すこと
が可能なので、特定領域内に故障が生じた場合にも、代
替の領域を特定領域として設定し直すことにより処理を
続けることができる。
Further, since the address of the specific area can be reset arbitrarily, even if a failure occurs in the specific area, the processing can be continued by resetting the alternative area as the specific area.

これによつて、負荷分散をねらつたマルチプロセツサ方
式の利点を生かし、さらに故障に対する耐性、可用性を
維持しながら、キヤツシユメモリを用いて全体の性能向
上を図ることができるという効果が得られる。
As a result, it is possible to take advantage of the multiprocessor system aiming at load distribution, and further, it is possible to improve the overall performance by using the cache memory while maintaining the tolerance against failures and the availability. .

また、単一プロセツサ構成の場合、繰返しアクセスされ
ることが少ない領域があり、この領域へのアクセスであ
ればそのデータをキヤツシユメモリに保持することを禁
止することにより、不要なデータがキヤツシユメモリに
保持される率を下げることができ、全体としてのキヤツ
シユメモリヒツト率を高める効果がある。
In addition, in the case of a single processor configuration, there are areas that are rarely accessed repeatedly. If access to this area is prohibited, holding that data in the cache memory prevents unnecessary data from being cached. The rate of being held in the memory can be lowered, and the cache memory rate as a whole can be increased.

さらに、アクセス・アドレスに該当するデータがキャッ
シュ・メモリ内になかった場合にも、並行にアクセス・
アドレスが記憶手段に保持された特定領域のアドレス範
囲内にあるかどうかを検出しているので、アクセス・ア
ドレスが記憶手段に保持された特定領域のアドレス範囲
内にある場合に記憶装置の特定領域のデータがキャッシ
ュ・メモリへ書き込まれることを禁止する動作を高速に
行うとともに記憶装置に高速にアクセスできるという効
果がある。
In addition, even if the data corresponding to the access address is not in the cache memory, it can be accessed in parallel.
Since it is detected whether or not the address is within the address range of the specific area held in the storage means, when the access address is within the address range of the specific area held in the storage means, the specific area of the storage device is detected. There is an effect that the operation of prohibiting the writing of the above data into the cache memory can be performed at high speed and the storage device can be accessed at high speed.

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

第1図および第2図は共有メモリを有するマルチプロセ
ツサ方式をとるシステムのブロツク図、第3図は本発明
の一実施例を示す図である。 1・3…マイクロプロセツサ、2・2′…主メモリ、4
…共有メモリ、5・8…プロセツサ本体、6・7…キヤ
ツシユメモリ、100・101…システムバス、10…命令制御
回路、11…演算器、12・13・14・15・16・17…レジス
タ、18…セレクタ、19…比較回路、20…連想メモリ、21
…カウンタ、22…フリツプフロツプ、113…ACK信号、11
1…ライト信号、114…リード信号、116…アドレス信
号、121,122…データ信号。
1 and 2 are block diagrams of a multiprocessor system having a shared memory, and FIG. 3 is a diagram showing an embodiment of the present invention. 1.3 ... Microprocessor, 2.2 '... main memory, 4
... Shared memory, 5.8 ... Processor main body, 6.7 ... Cash memory, 100/101 ... System bus, 10 ... Instruction control circuit, 11 ... Calculator, 12,13,14,15,16,17 ... Register , 18 ... Selector, 19 ... Comparison circuit, 20 ... Associative memory, 21
... counter, 22 ... flip-flop, 113 ... ACK signal, 11
1 ... write signal, 114 ... read signal, 116 ... address signal, 121, 122 ... data signal.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 松村 勝 東京都千代田区神田駿河台4丁目6番地 株式会社日立製作所内 (56)参考文献 特開 昭58−48289(JP,A) ─────────────────────────────────────────────────── ─── Continuation of front page (72) Inventor Masaru Matsumura 4-6 Kanda Surugadai, Chiyoda-ku, Tokyo Inside Hitachi, Ltd. (56) References JP-A-58-48289 (JP, A)

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】記憶装置に接続され、該記憶装置の一部の
データを保持するキャッシュ・メモリを少なくとも含む
マイクロプロセッサであって、 上記マイクロプロセッサは、 上記マイクロプロセッサ以外の装置の要因によってその
データが変化する上記記憶装置の特定領域のアドレス範
囲の情報を保持する記憶手段と、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが、上記記憶
手段に保持された上記特定領域の上記アドレス範囲内に
あるかどうかを検出する検出手段と、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが上記記憶手
段に保持された上記特定領域の上記アドレス範囲内にあ
る時、上記アクセス時の上記記憶装置の上記特定領域の
データが上記キャッシュ・メモリへ書き込まれることを
上記検出手段の検出出力に応答して禁止する禁止機構と
を具備してなり、 上記マイクロプロセッサによる上記記憶装置又は上記キ
ャッシュ・メモリへのアクセス・アドレスが上記記憶手
段に保持された上記特定領域の上記アドレス範囲内にあ
るかどうかを検出する動作は、上記マイクロプロセッサ
による上記記憶装置又は上記キャッシュ・メモリへのア
クセス・アドレスに該当するデータが上記キャッシュ・
メモリ内にあるかどうかを検出する動作と並行して行わ
れることを特徴とするマイクロプロセッサ。
1. A microprocessor, which is connected to a storage device and includes at least a cache memory for holding a part of data in the storage device, wherein the microprocessor is a device other than the microprocessor. Storage means for holding information on an address range of a specific area of the storage device in which the memory area changes, and an access address to the storage device or the cache memory by the microprocessor, the specific area held in the storage means. Detecting means for detecting whether or not the address is within the address range, and an access address to the storage device or the cache memory by the microprocessor is within the address range of the specific area held in the storage means. At certain times, the specified area of the storage device at the time of the access And a prohibition mechanism for prohibiting the writing of the data in the area to the cache memory in response to the detection output of the detection means, the access device accessing the storage device or the cache memory by the microprocessor. The operation of detecting whether or not the address is within the address range of the specific area held in the storage means is performed when the data corresponding to the access address to the storage device or the cache memory by the microprocessor is cache·
A microprocessor characterized by being performed in parallel with the operation of detecting whether or not it is in memory.
【請求項2】上記記憶装置の上記特定領域のデータを変
化せしめる上記装置は上記マイクロプロセッサと異なる
他のマイクロプロセッサであり、上記記憶装置の上記特
定領域をプロセッサ間のメッセージ通信領域とするマル
チプロセッサ方式をサポートすることを特徴とする特許
請求の範囲第1項記載のマイクロプロセッサ。
2. The multi-processor, wherein the device for changing data in the specific area of the storage device is another microprocessor different from the microprocessor, and the specific area of the storage device is a message communication area between processors. The microprocessor according to claim 1, wherein the microprocessor supports the system.
【請求項3】上記キャッシュ・メモリは連想メモリから
なることを特徴とする特許請求の範囲第1項又は第2項
の何れかに記載のマイクロプロセッサ。
3. The microprocessor according to claim 1, wherein the cache memory is an associative memory.
JP59110764A 1984-01-23 1984-06-01 Microprocessor Expired - Lifetime JPH06100984B2 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP59110764A JPH06100984B2 (en) 1984-06-01 1984-06-01 Microprocessor
DE19853502147 DE3502147A1 (en) 1984-01-23 1985-01-23 Data processing system with improved buffer memory control
US07/183,401 US5148526A (en) 1984-01-23 1988-04-08 Data processing system with an enhanced cache memory control
US07/804,739 US5479625A (en) 1984-01-23 1991-12-11 Ring systolic array system for synchronously performing matrix/neuron computation using data transferred through cyclic shift register connected in cascade of trays
US08/413,110 US5502825A (en) 1984-01-23 1995-03-29 Data processing system with an enhanced cache memory control
US08/435,958 US5509133A (en) 1984-01-23 1995-05-05 Data processing system with an enhanced cache memory control
US08/649,333 US5619677A (en) 1984-01-23 1996-05-17 Data processing system with an enhanced cache memory control
US08/795,639 US5822761A (en) 1984-01-23 1997-02-06 Data processing system which controls operation of cache memory based and the address being accessed
US09/087,900 US6381680B1 (en) 1984-01-23 1998-06-01 Data processing system with an enhanced cache memory control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59110764A JPH06100984B2 (en) 1984-06-01 1984-06-01 Microprocessor

Publications (2)

Publication Number Publication Date
JPS60256855A JPS60256855A (en) 1985-12-18
JPH06100984B2 true JPH06100984B2 (en) 1994-12-12

Family

ID=14543976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59110764A Expired - Lifetime JPH06100984B2 (en) 1984-01-23 1984-06-01 Microprocessor

Country Status (1)

Country Link
JP (1) JPH06100984B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5848289A (en) * 1981-09-17 1983-03-22 Fuji Electric Co Ltd Buffer memory controlling system
JPS598572A (en) * 1982-07-07 1984-01-17 本田技研工業株式会社 Breezer device

Also Published As

Publication number Publication date
JPS60256855A (en) 1985-12-18

Similar Documents

Publication Publication Date Title
US5056002A (en) Cache memory for use with multiprocessor systems
US5564034A (en) Cache memory with a write buffer indicating way selection
US6868472B1 (en) Method of Controlling and addressing a cache memory which acts as a random address memory to increase an access speed to a main memory
JPH0345407B2 (en)
US5148526A (en) Data processing system with an enhanced cache memory control
US6606687B1 (en) Optimized hardware cleaning function for VIVT data cache
US4658356A (en) Control system for updating a change bit
JP2509344B2 (en) Data processing device
JP2702414B2 (en) Information processing system and operation method thereof
JPH06100984B2 (en) Microprocessor
JPH0511337B2 (en)
JP2000137646A (en) Cache memory control method in multiprocessor system and the same system
JP2552704B2 (en) Data processing device
JP3187446B2 (en) Cache memory controller
JPH06309231A (en) Cache memory control method
JPH0628258A (en) Microprocessor
JPH0784879A (en) Cache memory device
JPH03230238A (en) Cache memory control system
JPH02133842A (en) Prefetch control system for intermediate buffer
JPH0630074B2 (en) Processor
JP2703255B2 (en) Cache memory writing device
JP2656558B2 (en) Cache memory control circuit
JP2680293B2 (en) Data processing device and cache memory control method
JPH05265916A (en) Data processor
JPH058458B2 (en)

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term