JPS60701B2 - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS60701B2
JPS60701B2 JP55059087A JP5908780A JPS60701B2 JP S60701 B2 JPS60701 B2 JP S60701B2 JP 55059087 A JP55059087 A JP 55059087A JP 5908780 A JP5908780 A JP 5908780A JP S60701 B2 JPS60701 B2 JP S60701B2
Authority
JP
Japan
Prior art keywords
cache memory
memory
address
data
data processing
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
Application number
JP55059087A
Other languages
English (en)
Other versions
JPS56156980A (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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP55059087A priority Critical patent/JPS60701B2/ja
Publication of JPS56156980A publication Critical patent/JPS56156980A/ja
Publication of JPS60701B2 publication Critical patent/JPS60701B2/ja
Expired 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/0806Multiuser, multiprocessor or multiprocessing cache systems

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

【発明の詳細な説明】 本発明は主記憶装置上の情報の一部を貯えるキャッシュ
メモリを備えたデータ処理装置、さらに詳しく云えばマ
ルチプロセッサシステムでのキャッシュメモリと主記憶
装置の一致化処理において、一致化処理の未処理件数が
ある一定の件数を超えて不一致が発生することのあるデ
ータ処理装置に関する。
一般にキャッシュメモリを有するデータ処理装置では、
主記憶装置から一定量のデータを必要に応じてキャッシ
ュメモリに転送しておき、処理すべきデータが必要にな
ると、まずキャッシュメモIJ上にそのデータが存在す
るかどうかを調べ、存在する場合にはキャッシュメモリ
から供給し、存在しなければ主記憶装置から供給すると
ともにそのデータをキャッシュメモ川こ転送し、またデ
ータをストアする場合には主記憶装置の内容を書換える
とともに、元の主記憶装置の内容がキャッシュメモリ上
に存在するかどうかを調べ、存在する場合にはキャッシ
ュメモリ上も書換えるようにしている。
このようなキャッシュメモリを有するデータ処理装置を
少くとも1つ含む複数のデータ処理装置が主記憶装置を
共通に使用するマルチプロセッサシステムでは、他のデ
ータ処理袋燈が主記憶装置にストアアクセスを行なうと
、キャッシュメモリを持つデータ処理装置は、このスト
アアクセスのアドレス情報を受け取り、このアドレスに
対応するデータが自装置内のキャッシュメモリ上に存在
するかどうかを調べ、存在する場合はキャッシュメモリ
上のデータを書換えるか少くとも無効にしキャッシュメ
モリと主記憶装置の内容との不一致を無くするようにし
ている。
しかし、この場合システムを構成するデータ処理装置の
台数にも関係するが、最悪の場合、アドレス情報の転送
されてくる割合が一致化処理の速度を上回ることが一時
的にせよ有り得る。このため禾処理のアドレス情報を一
時的に貯えるアドレススタックレジスタを幾段設けても
不足する場合が生じる。これを解決するために、アドレ
ススタックレジスタに一定量以上のアドレスが貯えられ
ると、主記憶装置または他のデータ処理装置などに対し
て、ストアアクセスを禁止する信号を送り、未処理のア
ドレス情報が減少するまで他のデータ処理装置によるス
トアアクセスを禁止する制御方式が採用されているが、
装置間信号の増加、装置間にまたがる複雑な制御、故障
時にシステムに与える影響が大きい等の欠点があった。
本発明の目的は、一致化処理のための未処理のアドレス
情報がアドレススタックレジスタの容量を超えてしまう
ような最悪のケ−スが生じると、他装置には何ら報告す
ることをせず、目装置内のキャッシュメモリを全て無効
化することにより上記欠点を解決し、キャッシュメモリ
と主記憶装置上のデータの一致化処理を実現できるよう
にしたデータ処理装置を提供することにある。
前記目的を達成するために本発明によるデータ処理装置
は他のデータ処理装置とともに主記憶装置を共用する。
マルチプロセッサシステムでの前記主記憶装置上の情報
を一定量づつ議出して貯えておくキャッシュメモリを備
えたデータ処理装置であった前記キャッシュメモリと主
記憶装置の一致化処理のため前記他のデータ処理装置に
よる前記主記憶装置に対するストア要求があるとその要
求に応じたアドレス情報を受け取りそれが処理されるま
で一時格納しておく複数段のアドレススタックレジスタ
を有するデータ処理装置において、前記アドレススタッ
クレジスタの容量を超えてアドレス情報を格納しなけれ
ばならないあふれの状態を検出する手段と、前記検出手
段によりあふれが検出されると前記キャッシュメモリの
全内容を無効化する制御手段とを付加して構成してある
。前記構成によれば、従来の欠点を解決できることはも
ちろん、他の装置を制御することなくキャッシュメモリ
と主記憶装置上のデータの一致化処理を実現でき、本発
明の目的を完全に達成することができる。以下、図面を
参照して本発明をさらに詳しく説明する。
第1図は本発明の一実施例であるキャッシュメモリを有
するデータ処理装置の内部構成を示すブロック図である
。まず、キャッシュメモリの一般的な動作を説明する。
このキャッシュメモリの構成は、4レベルのセットアソ
シアティブ方式の場合について示している。図中メモリ
ーは1舷バイトのキャッシュメモリで、4ワード(10
ゞイト)/ブロック×4レベルで構成されている。メモ
リ2はキャッシュメモリの各ブロックに対応して12ビ
ットのメモリアドレス情報を保持するアドレスアレイ、
メモリ3はブロック当り1ビットの情報を保持するメモ
リである。
メモリ3の各ビットはキャッシュメモリ上のデータの有
効性を示すビットで、本ビットが論理IH1″のとき、
対応するキャッシュメモリのブロックに主メモリ上のデ
ータが、アドレスアレイ2に対応するアドレス情報が保
持されていることを示す。
このデータ処理装置の演算部4がデータを必要としたと
き、そのデータがすでにキャッシュメモリーに保持され
ていれば王〆モリ23にはアクセス要求は行なわず、キ
ャッシュメモリ1のデータを議出して使用する。データ
がキャッシュメモリ1に保持されていなければ、必要と
するデー夕を含む16ゞイトのブロックデータを主メモ
リ23から議出し、演算部4に転送するとともにキャッ
シュメモリーにそのブロックデータを格納し、アドレス
アレイ2の対応するブ。ック位置にアドレス情報を書込
み、かつメモリ3の対応するブロックの有効ビットを論
理”1″にセットする。また演算部4から主メモリにデ
ータを書込むときは、そのアドレスで示されるブロック
データがキャッシュメモリーに保持されていれば、主メ
モリに書込むとともにキャッシュメモリーの内容も新し
いデータに書換える。そのブロックデータがキャッシュ
メモリーに保持されていない場合は主メモリに書込むだ
けである。次に第1図を参照しながら演算部4からのア
クセス動作を詳細に説明する。
演算部4からの議出し要求の場合、アクセスコマンドは
パス101を介してキャッシュメモリ制御部5に、24
ビットのアドレス情報AO〜23はパス103を介して
キャッシュメモリ制御部5に、パス103一選択回路9
を介してアドレスレジスタ13に送られる。
メモリ1,2はアドレスレジスター3の下位アドレスビ
ットA12〜19のアドレス情報104によりアクセス
され、メモリ3は選択回路12を介したアドレス情報1
04によりアクセスされる。アドレスアレイ2から詠出
された4 のブロックアドレス09とアドレスレジスタ
13の上位アドレスビットAO〜11のアドレス情報1
05が、メモリ3から読出された各ブロックの有効ビッ
ト情報110〜113の論理IIl″のブロックに対す
るものについてのみ比較回路15〜18により比較され
る。
有効ビットが論理H1″で両アドレス情報が一致すると
、目的とするデータがそのブロックに保持されているこ
とを示し、一致したブロックに対する比較回路15〜1
8の出力信号(114〜117のいずれか)のみ論理H
I″となる。前記一致動作の間にキャッシュメモリ1の
データがパス118〜121に読出され、前記比較でい
ずれかのブロックが一致するとその一致信号122によ
り対応するブロックデータを選択回路19で選択し、さ
らに選択回路11を介して演算部4に送る。もし4個の
比較回路15〜18ですべて一致しなかった場合は、キ
ャッシュメモリ1に目的のデータが保持されていないこ
とを示し、キャッシュメモリ制御部5は王〆モリ23に
対してパス123を介して論出しアクセス要求を行なう
。主メモリ23からの議出しデータはパス124を介し
て転送され、パス125−選択回路10を介してデータ
レジス夕14にセットされるとともに、パス125−選
択回路11を介して演算部4に送られる。データレジス
ター4にセットされたデータは格納すべきキャッシュメ
モリのブロック位置決定のアルゴリズムに従ってキャッ
シュメモリ1に書込まれる。このとき、データを格納し
たブロックに対応するアドレスアレイ2のロケーション
にメモリアドレスの上位ビットAO〜11の情報105
を書込むとともに、メモリ3の対応するブロックの有効
ビットを論理”lrにセットする。一方演算部4からの
書込み要求の場合、アクセスコマンドおよびアドレス情
報は読出し要求の場合と同じく、パス101および10
3を介してそれぞれ送られ、書込みデータがパス102
を介して送られる。
アドレスレジスター3にセットされたアドレス情報によ
り、読出し要求の場合と同機にメモリ2および3の内容
を検索し、もしそのブロックデータがキャッシュメモリ
1に存在する場合には、パス123を介して主メモ川こ
書込みアクセスを行なうと同時に、書込みデータ102
を選択回路10からデータレジスタ14を介してキャッ
シュメモリ1の対応するブロックに書込む。ブロックデ
ータがキャッシュメモリ1に保持されていない場合は、
キャッシュメモリ1への書込みは行なわず、主メモ川こ
対する書込みアクセスだけを行なう。以上のように本キ
ャッシュメモリの内容は、他のデータ処理装置から主メ
モリの内容を書換えないかぎりその内容と−致している
次に、他のデータ処理装置が主メモリを書換えた場合、
キャッシュメモリを持つ本データ処理装置ではキャッシ
ュメモリと主メモリのデータに食違いが生じ、一致化の
処理が必要である。
この動作について説明する。第1図に示すデータ処理装
置以外のデータ処理装置が主メモリを書換えると、その
アドレス情報が第1図のパス126を介して送られ、ア
ドレススタックレジス夕6に順次格納される。アドレス
スタックレジスタ6はキャッシュメモリー上の無効化す
べきブロックを示すアドレス情報を保持するレジスタで
ある。アドレススタックレジスタ6にアドレス情報が1
つでもセットされると、キャッシュメモリ制御部5に通
知され、本制御部5の指示により、アドレススタツクレ
ジスタ6のアドレス情報をパス127から選択回路9を
介してアドレスレジスタ13にセットしアドレススタツ
クレジスタ上のこのアドレス情報を消去する。アドレス
スタックレジスタ13にセットされたアドレスにより、
前記演算部4からのキャッシュメモリ1に対するアクセ
ス動作の場合と同様に、メモリ2および3の内容を言売
出し、比較回路15〜18におい、てパス105の内容
と各メモリ出力の内容を比較する。4個の比較の結果す
べて一致しなかった場合はそのアドレスで示されるブロ
ックデータがキャッシュメモリーには保持されていない
ことを示し、無効化の処理は必要ない。4個のいずれか
で−致した場合、一致した信号のみを論理II1″とし
た一致信号114〜117はしジスタ20‘こ取込まれ
、パス128を介して有効ビット作成回路22に入力す
る。
また、メモリ3から講出した有効ビットは、レジスタ2
1にセットされ、パス129を介して有効ビット作成回
路22に入力される。この有効ビット作成回路22では
、パス128の論理nl″のブロックに対するパス12
9の有効ビットだけを論理HI″から110″にリセッ
トした新しい有効ビットを作成し、メモリ3へは選択回
路12を介したアドレス情報104で指定されるアドレ
スにパス130を介して書込む。
これにより送られてきたメモリアドレスで示されるブロ
ックデ−夕をキャッシュメモリ上で無効にする。以上の
動作により、本データ処理装置以外のデータ処理装置が
主メモリの内容を書換えたとき、書換えられる以前の古
いデータを保持するキャッシュメモリーのブロックを無
効にすることができ、主メモリ上のデータとキャッシュ
メモリ上のデータの内容を常に一致させた状態にするこ
とができる。しかし、ここで注意しなければならないの
は送られてきた1つのメモリアドレスに対応する無効化
処理のためにメモリ3についてみれば、読出しおよび書
込みの2回の処理サイクルが必要なことである。
マルチプロセッサシステムにおいて、1つ以上の他のデ
ータ処理装置の書込みアクセスに伴なうアドレスの転送
は、最悪を考えると各処理サイクル毎に発生することが
あり、待合せのアドレススタックレジスタとして、レジ
スタの段数を幾段準備しても足りることにはならない。
したがってアドレススタックレジスタの数を超えて待合
せをしなければならない場合が論理的には存在する。も
ちろん通常の状態では起きないだけの段数を準備するが
ごくまれに発生する可能性がありこれに対処しなければ
ならない。このための回路および動作について説明する
。アドレススタックレジスタ6には処理待ちのアドレス
が保持されるが、スタックが一杯となり、次にパス12
6を介して送られてきたアドレス情報が、スタック満杯
のため、アドレススタツクレジスタ6にすでに保持され
ていて禾だ、処理されていないアドレス情報のいずれか
を書換えた場合、未処理のアドレス情報が消えてしまい
、前記一致化処理は不完全なものとなる。
このような状態が発生すると、これをアドレススタック
オーバフロー検出回路7が検出し、キャッシュメモリ無
効化制御部8に通知する。
キャッシュメモリ無効化制御部8はキャッシュメモリ制
御部5に「キャッシュメモリ使用不可」の信号132を
送る。
キャッシュメモリ制御部陣はこの信号を受けると、以後
演算部噂からの謙出し要求、書込み要求に対して、キャ
ッシュメモリをいっさい使用せず、直接主メモリにアク
セスするよう制御する。また、キャッシュメモリ無効化
制御部8は有効ビット作成回路22を制御して、4つの
ブロックに対応する有効ビットをすべて論理II0″に
してパス130に出力し「さらにメモリ3に対するアド
レス情報としてパス131−選択回路12を介して0〜
255の全アドレスを順次送りながらパス130のデー
タをメモリ3に書込み、すべてのブロックを無効化する
。すべてのフロックの無効化が終ると、キャッシュメモ
リ無効化制御部8はキャッシュメモリ制御部5に対する
「キャッシュメモリ使用不可」の信号132の送出を中
止し、キャッシュメモリ制御部5は以後演算部4からの
議出し要求、書込み要求に対してキャッシュメモリの使
用を再開する。これによりキャッシュメモリと主メモリ
のデータの一致化処理が実現できる。本発明は以上説明
したように、マルチプロセッサシステムでのキャッシュ
メモリと主メモリの−致化処理において、キャッシュメ
モリを有するデータ処理装置内に、処理すべきアドレス
を格納するために設けたアドレススタツクレジスタの容
量を超えてアドレス情報が転送されてくる場合に、この
あふれの状態が生じたことを検出する手段と、この検出
手段によりあふれが検出されると、自装置内のキャッシ
ュメモリの全内容を無効化する制御手段を持つことによ
り他装置をいっさい制御することなく、キャッシュメモ
リと主メモリの一致化を実現することができるという効
果がある。
【図面の簡単な説明】
第1図は本発明によるデータ処理装置の一実施例を示す
ブロック図である。 1……メモリ(キヤツシユメモリ)、2……メモリ(ア
ドレスアレイ)、3・・・…メモリ(有効表示ビット)
、4・・・・・・演算部、5・・・…キャッシュメモリ
制御部、6・・・・・・アドレススタックレジスタ、7
・・・…アドレススタックオーバフロー検出回路、8・
・・・・・キャッシュメモリ無効化制御部、9〜12・
…・・選択回路、13,14・・・・・・レジスタ、1
5〜18…・・・比較回路、19・・・・・・選択回路
ト20,28・・…・レジスタト22……有効ビット作
成回路、空3州…主メモリ。 第1図

Claims (1)

    【特許請求の範囲】
  1. 1 他のデータ処理装置とともに主記憶装置を共用する
    、マルチプロセツサシステムでの前記主記憶装置上の情
    報を一定量づつ読出して貯えておくキヤツシユメモリを
    備えたデータ処理装置であって前記キヤツシユメモリと
    主記憶装置の一致化処理のため前記他のデータ処理装置
    による前記主記憶装置に対するストア要求があるとその
    要求に応じたアドレス情報を受け取りそれが処理される
    まで一時格納しておく複数段のアドレススタツクレジス
    タを有するデータ処理装置において、前記アドレススタ
    ツクレジスタの容量を超えてアドレス情報を格納しなけ
    ればならないあふれの状態を検出する手段と、前記検出
    手段によりあふれが検出されると前記キヤツシユメモリ
    の全内容を無効化する制御手段とを設けたことを特徴と
    するデータ処理装置。
JP55059087A 1980-05-01 1980-05-01 デ−タ処理装置 Expired JPS60701B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55059087A JPS60701B2 (ja) 1980-05-01 1980-05-01 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55059087A JPS60701B2 (ja) 1980-05-01 1980-05-01 デ−タ処理装置

Publications (2)

Publication Number Publication Date
JPS56156980A JPS56156980A (en) 1981-12-03
JPS60701B2 true JPS60701B2 (ja) 1985-01-09

Family

ID=13103202

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55059087A Expired JPS60701B2 (ja) 1980-05-01 1980-05-01 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS60701B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6181602A (ja) * 1984-09-28 1986-04-25 松下電器産業株式会社 バリスタ

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59167891A (ja) * 1983-03-14 1984-09-21 Nec Corp 緩衝記憶装置
JPS6478342A (en) * 1987-09-19 1989-03-23 Pfu Ltd Invalidation processing system for cache memory
EP0349123B1 (en) * 1988-06-27 1995-09-20 Digital Equipment Corporation Multi-processor computer systems having shared memory and private cache memories
JPH0561771A (ja) * 1991-09-04 1993-03-12 Fujitsu Ltd Tlbの部分パージ処理方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6181602A (ja) * 1984-09-28 1986-04-25 松下電器産業株式会社 バリスタ

Also Published As

Publication number Publication date
JPS56156980A (en) 1981-12-03

Similar Documents

Publication Publication Date Title
US4056844A (en) Memory control system using plural buffer address arrays
US5201041A (en) Cache bypass apparatus
US4471429A (en) Apparatus for cache clearing
EP0072179A2 (en) Clearing invalid addresses in cache memory
JPH0668735B2 (ja) キヤツシユメモリ−
EP0343567A2 (en) Multi-processing system and cache apparatus for use in the same
JPH0576060B2 (ja)
EP0533427B1 (en) Computer memory control system
JPH0532775B2 (ja)
US5475849A (en) Memory control device with vector processors and a scalar processor
US4658356A (en) Control system for updating a change bit
US4920536A (en) Error recovery scheme for destaging cache data in a multi-memory system
JPS60701B2 (ja) デ−タ処理装置
EP0375864A2 (en) Cache bypass
US5535358A (en) Cache memory control circuit and method for controlling reading and writing requests
US4737908A (en) Buffer memory control system
GB2037466A (en) Computer with cache memory
JPH0210446A (ja) バッファ記憶装置
JPH0690683B2 (ja) マルチプロセッサシステムの障害処理方式
JPH05342101A (ja) 階層キャッシュ・メモリ
JP2703255B2 (ja) キャッシュメモリ書込み装置
JPS61229142A (ja) 階層構成をなすバツフアメモリシステムにおけるリブレ−ス制御用アレイ管理装置
JPH01279342A (ja) キャッシュ制御方式
JPS5818710B2 (ja) 記憶システム
JPS6336536B2 (ja)