JPS6036618B2 - 情報処理システム - Google Patents

情報処理システム

Info

Publication number
JPS6036618B2
JPS6036618B2 JP52151295A JP15129577A JPS6036618B2 JP S6036618 B2 JPS6036618 B2 JP S6036618B2 JP 52151295 A JP52151295 A JP 52151295A JP 15129577 A JP15129577 A JP 15129577A JP S6036618 B2 JPS6036618 B2 JP S6036618B2
Authority
JP
Japan
Prior art keywords
address
buffer memory
information
processor
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.)
Expired
Application number
JP52151295A
Other languages
English (en)
Other versions
JPS5483329A (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 JP52151295A priority Critical patent/JPS6036618B2/ja
Publication of JPS5483329A publication Critical patent/JPS5483329A/ja
Publication of JPS6036618B2 publication Critical patent/JPS6036618B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は情報処理システムに関するものであり更に詳し
く言えば、バッファメモリと主記憶間における内容の不
一致による論理矛盾の発生を阻止するためのバッファメ
モリ制御手段をもつ情報処理システムに関する。
情報処理システムにおいては、中央処理装置(以下プロ
セッサと呼ぶ)の速度と、主記憶装置の速度との間には
大きな隔たりがあり、これが計算機システムの性能を制
限する要因となっている。
これを緩和するためにプロセッサ側に比較的小容量のバ
ッファメモリを設けるバッファメモリ方式がある。
この方式ではプロセッサから主記憶にアクセスを行う際
にアクセスすべき語を含む複数語からなるブロックをバ
ッファメモ川こ取込んでおき、次にアクセスを行う際に
はこのバッファに対してアクセスを行うことにより、実
効的に主記憶の高速化が達成できることが知られている
。バッファメモリ方式は多くの計算機システムに採用さ
れており、特に主記憶とバッファメモリを複数のセット
に分割し、同一のセットに属するブロックのみが主記憶
からバッファメモリに割当てられるような構成にしたセ
ットアソシアティブ方式〔C.J.Conti“バッフ
ァ記憶の概念”(concepts的r“B虻ferS
to的ge”Computer Group.News
)196$王3月号9〜13頁参照〕のバッファメモリ
は一般に使用されている。しかしながら、バツフアメモ
リシステムにおいては、前述のようにバッファメモリは
プロセッサ毎に設けられるので例えば、入出力装置から
の主記憶へのデータの書込みに際しては、データは主言
己億のみに書込まれる。
このとき、そのデータを含む主記憶領域が既にバッファ
メモ川こ取り込まれていればバッファメモリと主記憶の
間で内容の不一致が発生する。これを防ぐために、従来
はプロセッサにおいて実行すべきプロセスの切換えのた
び、あるいは入出力割込の毎にバッファメモリをすべて
消去することにより主記憶から新たに更新された情報を
取込むようにする方式‘1}、あるいは入出力装置から
の主記憶への書込み要求の度にそのアドレスをバッファ
メモリに送り、このアドレスがバッファメモリ上に存在
するかどうかを検索し、存在する場合にはバッファメモ
リの対応するブロックを消去することにより内容の不一
致を防ぐという方式{2)が行われている。この方式■
は計算機システムが複数のフ。。セッサをもつマルチプ
ロセッサシステムにおいても行われている。すなわち、
マルチプロセッサシステムにおいては、ある時点である
プロセッサAで実行されていたプロセスPが、次の他の
プロセッサBで実行され、主記憶のあるアドレスに対し
て書込みを行った場合には、以前に実行されたプロセッ
サAのバッファメモ川こ保持されているのでそのアドレ
スの内容は更新が行われないために再びそのプロセスP
がプロセッサAで実行されたとき、バッファメモリ上の
主記憶とは異なる古い内容が読出され、これにより謀ま
った処理が行われる可能性がある。このような不都合を
防ぐために、主記憶に対する書込みに際してそのアドレ
スを他のプロセッサに送り、これにより他のプロセッサ
のバッファメモリの対応する内容を消去することが行わ
れている。しかしながら、バッファメモリの内容を全部
消去する方式‘1)のような手段を用いると、バッファ
メモリの内容が頻繁に消去され、そのために必要な情報
がバッファメモリ内で見出される確率(ヒット率)が極
めて低くなり、従って実効アクセスタイムががあまり向
上しないという欠点がある。
また主記憶への書込みアドレスを他のプロセッサにも送
る方式■では、他のプロセッサあるいは入出力装置から
の書込みアドレスの検索のために、本来のプロセッサか
らのアクセスが遅らされるという欠点がある。また、あ
るプロセッサからの書込みアドレスを他のプロセッサに
送るための信号通路や、バッファメモリで他のプロセッ
サからのアクセス、本来のプロセッサからのアクセスを
制御するためのアクセス制御機構が必要になる。プロセ
ッサの台数が多い場合には、これらのためのハードウェ
ア量が莫大になり、また他のフ。oセツサからのアクセ
スも増えるために、バッファメモリの性能の低下が著し
い。方式{洲こおいて、書込みアドレスの検索の頻度を
少〈するために各プロセッサ毎に他のプロセッサのバッ
ファメモリに現在格納されているブロックを保持するア
ドレスアレイを用意し、書込み動作に際してこのアドレ
スアレイを検索することにより、他のプロセッサのバッ
ファでの検索の回数を減少させる方式等も知られている
が、これらの方式においても、前述の他のプロセッサへ
の書込みアドレスのための信号通路、アクセス制御機構
等のためのハードウェア量の問題は解決できない。
また、方式■においては、プロセッサの台数よりハード
ウェア構成が異なるために最大限のプロセッサの台数が
接続できるような考慮が必要であり、プロセッサ台数が
少し、システムにおいては無駄なハードウェアを用意し
なければならないという欠点があった。
このため、バッファメモリをデイスパツチ、あるいは入
力動作の起動等で論理矛盾の発生の契機となる時点に必
要な部分だけを消去するような手段が必要となるが、セ
ットアソシアティブ方式のバッファメモリにおいてこの
ような処理を行おうとすると従来の方式では各消去に際
して全部のセットに関して管理テーブルを検索し、各セ
ットのフロックが対応する消去すべきブロックかどうか
をチェックする必要があり、このためバッファメモリの
消去に多くの時間が必要となり現実的でない。
本発明はこれらの欠点をなくすことを目的としたもので
、本発明の目的はプロセッサの台数が増大した場合でも
ハードウェア量の増大、性能の低下をもたらさずにバッ
ファメモリと主記憶間の内容の不一致を解消できるよう
な情報処理システムを提供することにある。
また本発明の他の目的はバッファメモリと主記憶間の内
容の不一致の発生に関連する部分だけの消去を高速に行
うことを可能にする手段を提供することにある。
本発明においては書込みが行われる可能性のある情報単
位に属するデータのアクセスに際し、このデータのアド
レスにその情報単位の識別番号およびその情報単位にお
ける現在のアドレスタグを付加し、これらによりブロッ
クのバッファメモリへの登録、検索が行われる。
そして主記憶とバッファメモリ間での内容の不一致が生
じる可能性が発生した時点でこのアドレスタグを変更す
ることにより、等価的にバッファメモリから対応するデ
ータを消去しようとするものである。更に書込みが行わ
れないことが明らかな情報単位則ち読出し専用の情報単
位に対しては、アクセスに際してアドレスタグの部分を
無視することにより、アドレスタグの更新によってもバ
ッファメモリから消去されないようにすることにより、
書込みにより、その内容が変更されるデータに関しての
みバッファメモリからの消去を行うことを可能にしてい
る。
これにより、セットアソシアティブ方式のバッファメモ
リにおいて、全セットの検索を行うことなく必要な情報
単位のみをバッファメモリから高速に消去することが可
能になる。
また本発明によれば、ハードウェア量の増大は情報単位
の識別番号、アドレスタグの印加、保持、比較等のため
のデータ通路、管理テーフル、比較回路等、アドレスに
付加されたタグに関連するものだけである。
従ってプロセッサの台数が増大しても同一のハードウェ
ア構成、制御方式が使用でき、また性能低下もないとい
う特徴がある。更に、複数のプロセッサをもつマルチプ
ロセッサシステムにおいてバッファメモリをもたないプ
ロセッサが含まれている場合にも本発明が適用できると
いう特徴もある。以下、図により本発明を説明する。
第1図は本発明による情報処理システムの第一実施例を
示すブロック図である。
本実施例においては、バッファメモリは実アドレスによ
りアクセスされるものとする。
また、バッファメモリの消去の情報単位はプロセスであ
るとし、更に本実施例における情報処理システムにおい
ては、プログラムにおいて命令の格納される記憶位置と
オペランドの格納される記憶位置は分離されており、同
一のブロックには格納されないことがプログラム作成時
に保証されているものとし、またプログラム部の内容は
変更されないような方式を採用しているものとする。
このようなプログラム部とオペランド部を区別する方式
は最近の情報処理システムでよく行われている。本実施
例では、各プロセスにおけるオペランド部分が各プロセ
スを単位としてバッファメモリから消去されるものとす
る。本実施例では、バッファメモリに対するアクセスが
命令フレツチであるか、オペランド‘こ対するアクセス
であるかがアクセス要因としてメモリアクセス毎にバッ
ファメモリに印加され、これを判別することにより、そ
のアクセスされる情報が謙出し専用であるかどうかが判
定できるものとしている。
本実施例では、プロセスを消去の情報単位としているの
で、バッファメモリと主記憶間の内容の不一致の発生の
契機として、あるプロセスがあるプロセッサで実行され
た後次に他のプロセッサで実行されようとした時点(デ
ィスパッチされた時点)およびあるプロセスが入力装置
からの入力命令を出して待ち状態に入った時点が検出さ
れこれらの時点で、各プロセス毎に保持されているアド
レスタグをカウントアップすることにより、更新以前に
そのプロセスの使用していたバッファメモリの内容のう
ち、オペランドの部分だけがアクセス不能となり、消去
されたと同じ効果を果すことになる。
従って本実施例では、バッファメモリに現在格納されて
いるブロックを管理するための管理テーブルにはブロッ
クのアドレスとして主記憶アドレスだけでなく消去の情
報単位であるプロセス番号およびそのプロセスのアドレ
スタグおよびそのブロックが書込みの行われているブロ
ックであるかどうかを示す書込みビットを保持するフィ
ールドが設けられる。
検索に際してはこれらのフィールドが用いられ、更にア
クセスに際しては、そのアクセスがオペランドに対する
アクセスか、命令の議出しであるかどうかを示すアクセ
ス要因情報もバッファメモ川こ印加される。また、情報
処理システムで実行される各プ。
セスは現在の命令アドレス、条件コード、各レジスタ等
を保持するためにプロセス制御ブロックをもつが、本実
施例ではバッファメモリの管理のために、制御ブロック
には、これらの情報の外にそのプロセスが実行されたプ
ロセッサ番号およびそのプロセスの現在のアドレスタグ
値も保持される。プロセッサ番号は、バッファメモリの
消去の契機を検出するのに用いられる。なお、プロセス
制御ブロックは主記憶上におかれるものとする。本実施
例においては、前述のようにバッファメモリ8にはプロ
セッサ7のプロセッサアドレスレジスターからプロセス
番号、アドレスタグおよびアクセス要因が主記憶アドレ
スとともに送られ、アドレスレジスタ2に印加される。
プロセス番号アドレスタグはアドレスレジスタ2の第1
および第2のフィールド21,22に各々印加され、ま
た主記憶アドレスの上位からそれぞれブロックアドレス
部、セットアドレス部14、ワードアドレス部15はア
ドレスレジスタ2の第3,第4,第5のフィールド23
,24,25に各々格納される。また、1ビットのアク
セス要因はアドレスレジスタ2の第6のフィールド26
に格納される。
バッファメモリはセットアソシェイティブ方式で実現さ
れており、バッファメモリは各セット毎に主記憶上の同
一セットに属している2つのブロックを保持できるよう
に構成されている。従って現在バッファメモリに保持さ
れている主記憶のブロックを管理するための管理テーブ
ル3は各セットに対応してェントリをもち、各ェントリ
は各セットにおける2個のブロックに対応して第1およ
び第2のフィールドをもつ。
第1および第2のフィールドはさらにプロセス番号をも
つ第1および第2のプロセス番号部311,321とア
ドレスタグを保持する第1および第2のアドレスタグ部
312,322およびブロックアドレスを保持する第1
および第2のブロックアドレス部313,323、各ブ
。ックがバッファメモリで現在使用可能かどうかを示す
第1および第2の有効ビット314,324および各ブ
ロックが書込みの行われるブロックであるかどうかを示
す書込み情報ビット315,325をもつ。管理テーブ
ル3の第1および第2のフィールドのプロセス番号部3
11,321、アドレスタグ部312,322、ブロッ
クアドレス部313,323の値は各々第1および第2
のプロセス番号比較回路511,521,1,第1およ
び第2のアドレスタグ比較回路512,522,第1お
よび第2のブロックアドレス比較回路513,523の
一方の入力に印加されており、これらの他の入力にはア
ドレスレジスタ2の第1,第2,第3のフィールド21
,22,23の値が各々印加されている。なお、これら
の値は管理テーブル3への書込みデータとして管理テー
ブル3の第1および第2のフィールド311,321に
も印加されている。また、バッファメモリアレイ4には
主記憶アドレスのうちのブロックアドレス部23および
セットアドレス部24の値および制御回路6からのブ。
ツクアドレス61がアドレスとして印加され、制御回路
からの制御信号線63からの指令により主記憶9および
プロセッサとの間でデータ転送ができるように構成され
ている。またアドレスレジスタ2の第6のフィールドの
書込みビット26および管理テーブルの第1および第2
の書込みビット315,325から読出された値は制御
部6(図示していないが)に印加される。
次に本実施例の動作を説明する。
まず、あるプロセッサであるプロセスがデイスパッチさ
れた時点でプロセッサは主記憶上のプロセス制御ブロッ
ク(図示せず)から、そのプロセスが以前に実行された
プロセッサ番号を示すプロセッサ番号部を読出し、これ
と現在のプロセッサ番号を比較する。
これが現在のプロセッサ番号と異なる場合には、新たな
プロセッサ番号をプロセス制御ブロックに戻し、プロセ
ッサ番号の更新を行うとともにプロセス制御ブロックか
らアドレスタグを議出し、これをカウントアップして更
新するとともにそのプロセッサ番号、アドレスタグをプ
ロセッサアドレスレジス夕1の第1および第2のフィー
ルド11,12に格納する。プロセッサ番号が等しい場
合にはこれらの更新は行わずにプロセス番号および読出
されたアドレスタグをプロセッサアドレスレジスタ1に
格納する。
アドレスタグのカウントアップに際して、アドレスタグ
がオーバフロゥしなかった場合には前述の動作のうちに
そのプロセスに対する実際の処理を開始する。カウント
アップに際してアドレスタグ値がオーバフロウを起した
場合には、以前の同じタグ値をもち、かつそのプロセス
に属し、書込みの行われる可能性のあるブロックがバッ
ファメモリ上に残っていないことを保証するためにバッ
ファメモリ8にそのプロセス番号とともに信号線71を
介して消去信号を送りバッファメモリからそのプロセス
に属し、書込みの行われる可能性のあるすべてのブロッ
クの消去を起動する。
バッファメモリ8から消去完了信号が信号線65を介し
て戻された後にそのプロセスに対する処理を開始する。
プロセスの実行に際してのプロセッサからのメモリアク
セスについては、プロセッサアドレスレジスタ1の第3
,第4,第5のフィールド13,14,15に主記憶ア
ドレスが格納されるとともに信号線71を介してバッフ
ァメモリ8に対してアクセス要因とともにアクセス要求
が印加される。このアクセス要求を受けると、バッファ
メモリの制御回路6の制御のもとに以下の動作が行われ
る。
即ち、まずプロセッサ7から送られたアドレスおよびア
クセス要因をアドレスレジスタ2に格納し、セットアド
レス部24の値をアドレスとして管理テーブル3を読出
し、第1,第2および第3の311,312,313の
値を比較回路511,512,513,521,522
,523により、アドレスレジスタ2の各々対応するフ
ィールドの値と比較する第1のフィールドで一致が検出
されたとき、即ち管理テーブル3から謙出された対応す
る有効ビットが1でかつアドレスレジスタ2の第6のフ
ィールド26の書込みビットが1でかつ第1のプロセス
番号比較回路511、アドレスタグ比較回路512、お
よびブロックアドレス比較回路513がともに一致検出
信号を出力したときあるいはアドレスレジスタ2の第6
のフィールドが0でかつ、第1のプロセス番号比較回路
511、ブロックアドレス比較回路513が一致検出信
号を出力した場合には、バッファメモリアレイ4の第1
ブロックに要求された情報が格納されていることになり
、信号線63を介してバッファメモリアレイ4に対して
アクセスが行われる。同様に、第2のフィールドで一致
が検出された場合には、バッファメモリアレイ4の対応
するセットの第2のブロックに対してアクセスが行われ
る。この第1および第2のブロックの指定に制御回路6
から出力されるブロックアドレス線61により指定され
る。
第1および第2のフィールドのいずれにおいても一致が
検出されないのは次の2つの場合である。即ち、アドレ
スレジスタ2の書込みビット26が1の場合で、第1お
よび第2のプロセス番号比較回路511,512、アド
レスタグ比較回路512,522、フロックァドレス比
較回路513,523のいずれかで不一致が検出された
場合、あるいは書込みビットが0で第1および第2のプ
ロセス番号比較回路511,521,ブロックアドレス
比較回路513,523のいずれかで不一致が検出され
た場合である。
このとき、バッファメモリアレイ4には要求されたブロ
ックが格納されていないことになり、そのブロックにバ
ッファメモリを割当てる必要がある。まず、バッファメ
モリの第1および第2のブロックのいずれか一方を選択
し、管理テーブルの選択された第1および第2のフィー
ルドのプロセス番号部、アドレスタグ部、ブロックアド
レス部、書込みビットに要求のあったアドレスに対応す
る値を書込み、有効ビットを0にする。それとともに主
記憶に対して信号線64を介してブロック転送要求を出
す。転送が終了した後、管理テーブル3のうちの対応す
る有効ビットを1に書き替え、バッファメモリに対して
アクセスを行う。また、プロセッサからプロセス番号と
ともに信号線71を介してバッファメモリの消去信号が
印加された場合には制御回路6の制御のもとに、次の動
作が行われる。
即ち、まず、 1 プロセス番号をアドレスレジスタ2の第1のフィー
ルド21に格納するとともに、制御回路6に設けられた
セットアドレスカウンタ62の値をリセットする。
2 次に、セットアドレスカウンタ62の値により、管
理テーブル3を議出し、第1および第2のプロセス番号
比較回路511,521により、管理テーブルから読出
されたプロセス番号とアドレスレジスタ2のプロセス番
号を比較する。
そして、対応するブロックが書込みの行われるブロック
の場合、即ち管理テーブル3から読出された書込みビッ
トが1の場合には対応する比較回路511または521
が一致を検出した場合に、対応する有効ビットを0にリ
セットし、これを管理テーブルに書き戻す。
書込みビットが0の場合には消去する必要がないので、
有効ビットのリセットは行わない。3 セットアドレス
カウンタ62をカウントアップした後、2の動作を行う
4 2,3の動作をセットアドレスカウンタがオーバフ
ロウするまで行った後、プロセッサ7に対して信号線6
5を介して消去完了信号を送る。
以上1から4までの動作により指定されたプロセスで使
用されたバッファメモリのブロックのうち書込みによる
内容の変更の行われるデ−外こ対する消去が行われたこ
とになる。
次に、本発明の第2の実施例を第1図および第2図によ
り説明する。
本実施例においては、情報処理システムは、プログラム
の論理的な単位であるセグメントを主記憶への割当ての
単位とするセグメンテーション方式の仮想記憶を採用し
ているものとし、バッファメモリも実主記憶アドレスで
はなく仮想アドレスによって管理されるものとしている
また、バッファメモリの消去はセグメントを単位として
行われるとし、更に書込みの行われるセグメントだけが
必要に応じて消去されるものとする。
なお、第2図は本実施例におけるプロセッサ7のブロッ
ク図を示すものである。これを実現するために、本実施
例においては各セグメント毎にアドレスタグおよびその
セグメントがアクセスされた最後のプロセッサ番号が管
理される。
これらは、主記憶上のセグメント記述子の内におかれる
。本実施例では、メモリアドレスAは第2図に示すよう
に、プロセッサ7内に設けられるセグメント記述子レジ
スタSDRの指定番号RNおよびセグメント内変位Dで
表わされる。
セグメント記述子レジスタSDRの各ヱントリはセグメ
ントアドレスおよび対応するアドレスタグをもつ。
このような構成の情報処理システムにおいてはあるプロ
セスがあるプロセッサでデイスパツチされる時点でその
プロセスが使用できるセグメントがチェックされ、正当
なセグメントであることがチェックされた後、このセグ
メントのアドレスAおよび主記憶上のセグメント記述子
から読出されたそのセグメントに対して書込みが許され
るかどうかを示す書込み情報W、セグメント長SL等が
対応するセグメント記述子レジスタSDRに格納される
あるプロセスで使用できるセグメントがセグメント記述
子レジスタSDRに登録し終ったところで実際のプロセ
スの処理が開始される。従って、本実施例においては、
ディスパッチにおけるバッファメモリからの消去すべき
セグメントのチェックに際して、セグメント記述子にお
けるプロセッサ番号と、現在のプロセッサ番号を比較し
、等しい場合にはそのま封こし、異なる場合にはこれを
更新するとともに、アドレスタグATも更新し、更新さ
れたアドレスタグをセグメント記述子レジスタにも登録
する。また、本実施例では入出力動作は入出力制御プロ
セッサにより行われるものとする。
また、各入出力動作に際してあるプロセスが入出力動作
を起動した場合には入出力制御プロセッサは、起動され
た入出力動作に関連するセグメントをチェックし、関連
するセグメント記述子のプロセッサ番号を更新しておく
。また、本実施例においては、あるセグメントがいくつ
かのプロセスで使用されるような場合にはそのセグメン
トの使用に際してそのセグメントを専有するために命令
および専有を解除するための命令が用意されている。
プロセッサはこの命令の実行に際してこのセグメントが
他のプロセスで使用中でない場合には、プロセッサ内の
セグメント記述子レジスタに対応するセグメントを登録
する。このとき、セグメント記述子レジスタのプロセッ
サ番号と、現在のプロセッサ番号を比較して、異なる場
合にはアドレスタグの更新を行う。
また、同時に、主記憶中のセグメント記述子があるプロ
セスで専有されていることを示すビットをセットする。
専有の解除に際しては、先に登録されたセグメント記述
子レジスタが無効にされる。以上のアドレスタグの更新
の契機において、アドレスタグがオーバフロウした場合
には、前述の第1の実施例と同様な処理が行われる。ま
た本実施例では、仮想アドレスはプロセスに関する情報
も含んでいるものとし、情報処理システム内においては
、仮想アドレスにより、ある情報が一意に指定できるも
のとする。
プロセッサからのメモリアクセスに際しては、プロセッ
サ7はプロセッサ内のセグメント記述子レジスタSDR
を介してセグメントアドレスAS、アドレスタグATお
よび書込み情報Wを議出し、これら、およびセグメント
内変位Dをプロセッサアドレスレジスターに格納し、バ
ッファメモリ8に対してセグメントを要求する。
以下の動作に関しては、第1の実施例における消去の情
報単位であるプロセス番号がセグメントアドレスにおき
かわり、書込まれる可能性のある情報であるかどうかを
示すためのアクセス要因ビットのかわりにプロセッサア
ドレスレスタの書込みビットの値が使用される点で異な
り、またバッファメモリ8で必要な情報が見出されない
場合には、セグメント記述子レジスタ上のセグメントア
ドレスから得られる実主記憶アドレスPAが主記憶に対
するブロック転送の要求に際して用いられる点が異なっ
ているが、他は第1の実施例と同様の動作が行われる。
以上本発明のいくつかの実施例を説明したが、これらの
説明より明らかなように、本発明の主旨はプロセスの切
り替り等バッファメモリと主記憶間の内容の不一致が発
生する可能性の生じた契機に、メモリ上の情報の消去の
情報単位毎に付加したアドレスタグを切換えることによ
り、実効的にその消去すべき情報単位に属する書換えの
可能性のある情報だけをバッファメモリから消去するこ
とにより主記憶とバッファメモリ間の内容の不一致を解
消しようとするものであり、この主旨に反しない限りい
くつかの実現方式が可能なことは明らかであろう。例え
ば、消去のための情報単位毎に設けるアドレスタグのビ
ット数も実現に際して適当な値が選択でき、充分に長い
ビット数を与えることによりアドレスタグ値のオーバフ
ロウにおけるバッファメモリの全セット検索による消去
を実質的に行わなくても済むようにすることも可能であ
る。
また、第1の実施例においては、プロセス番号とアドレ
スタグはプロセッサが保持しているとしたが、必ずしも
このような構成にする必要はなくこれらを保持するレジ
スタをバッファメモリ側に用意し、プロセスのディスパ
ツチに際してこれらを主記憶のアドレス線を介して送る
ように構成することもできる。また、第1の実施例にお
いては、バッファメモリは実主記憶アドレスにより管理
されているとしているが、仮想アドレスにより管理され
ているとしてもよい。
但し、バッファメモリに必要なブロックが存在しない場
合の主記憶からのブロック転送に際しては実アドレスに
より主記憶をアクセスするための制御が必要となろう。
また、仮想アドレスにプロセスに関する情報が含まれて
いない場合には、第1の実施例と同じくプロセス番号を
付加し、これでバッファメモリの管理を行えばよいが、
仮想アドレスに既にプロセスに関する情報が含まれてい
る場合には、この情報をプロセス番号として使用できる
ことは自明である。また、第2の実施例においては、プ
ロセッサアドレスレジスタに書込みビットが設けられて
いるとしているが、セグメントアドレス内にそのセグメ
ントが書込みの許されるセグメントであるかどうかを示
す情報が含まれている場合には、この情報を書込みビッ
トのかわりに使うこともできる。
以上の本発明の実施例の説明においては本発明の主旨と
は直接関連がないので制御回路の具体的構成等は省略し
てあるが、これらは従来知られている方法で実現できる
ことは明らかであろう。また、バッファメモリにブロッ
クが見出されない場合に新しいブロックを取込むべき位
置の決定の仕方、あるいは主記憶とバッファメモリ間の
ブロックの転送およびこれに関連する有効ビットの取扱
い、書込み動作に際しての主記憶への書込み等について
も本発明とは直接関係がないのでその説明は省略してあ
るがこれらは従来知られている方式によって行われるも
のである。また、プロセスのディスパツチに際して、そ
のヂィスパッチが行われることにより、内容の不一致が
生じる可能性があることを検出するために行わせる以前
に実行されたプロセッサ番号と現在のプロセッサ番号の
チェック等は特別にハードウェアを設けてもよいが、通
常の機械的命令、あるし、はマイクロプログラムによっ
ても実現できるのであろう。
第1の実施例において入力装置からの入力動作による内
容の不一致の発生を防ぐためには、入力動作の起動に際
してプロセッサがアドレスタグの更新を行うかあるいは
入出力動作を行う入出力プロセッサがこの処理を行う。
あるいは入力動作が終了しそのプロセスがプロセッサで
デイスパッチされた時点で、そのプロセスが直前に入出
力プロセッサで入力動作を行ったことを検出した時点で
行う等いくつかの方法があり、そのいずれを採用しても
よい。また、第1の実施例ではプロセス制御のブロック
は主記憶内に設けられるとしているが、プロセッサ内の
特別な記憶位置を設け、これに格納することも可能であ
ろう。
また、第1の実施例ではいくつかのプログラムで共用さ
れるデータについてはこれを取扱うために特別のプロセ
スが設けられ、これを各プログラムが呼ぶことによって
行われるとしており、従って特定のデータを同時に複数
のプロセスが使用しないものとしているが、複数のプロ
セスが主記憶上の同一のデータをアクセスするような構
成のシステムにおいては第2の実施例と同様にデータの
ロックを行う時点を契機としてプロセスのアドレスタグ
を切換えることにより、バッファメモリと主記憶間の矛
盾の発生を阻止できる。
【図面の簡単な説明】
第1図は本発明による情報処理システムの第1の実施例
を示すブロック図、第2図は本発明による情報処理シス
テムの第2の実施例におけるプロセッサ7を示すブロッ
ク図である。 図において、1はプロセッサアドレスレジスタ、2はア
ドレスレジスタ、3は管理テーブル、4はバツフアメモ
リアレイ、511,512,513,521,522,
523,6は制御回路、7プロセッサ、8はバッファメ
モリ、9は主記憶装置を示す。 オ2図 オー図

Claims (1)

    【特許請求の範囲】
  1. 1 主記憶装置上の情報をブロツクを単位として保持す
    るバツフアメモリをもつプロセツサを含む情報処理シス
    テムにおいて、メモリアドレスにバツフアメモリから消
    去される情報単位の識別番号、前記識別番号に対応する
    アドレスタグおよび前記情報単位が書込みの行われる情
    報単位であるかどうかを示す書込み情報を付加する手段
    と、前記情報単位毎に現在のアドレスタグおよび前記情
    報単位が直前に使用されたプロセツサ番号を保持する手
    段と、前記保持されたプロセツサ番号および現在のプロ
    セツサ番号を用いて主記憶とバツフアメモリの内容の不
    一致に関連する契機を検出する手段と、前記検出された
    契機において前記アドレスタグ値を更新する手段と、前
    記情報単位名、対応するアドレスタグ、メモリアドレス
    におけるブロツクアドレスを用いて管理テーブルの内容
    を検索し前記書込み情報が1の場合にて、前記情報単位
    名アドレスタグ、ブロツクアドレスが、アクセスが要求
    されたアドレスの各フイールドとともに一致した場合に
    、前記書込み情報が0の場合にて、前記情報単位名およ
    びブロツクアドレスが一致した場合に対応するバツフア
    メモリのブロツクに対してアクセスする手段をもつバツ
    フアメモリを具備し、各消去のための情報単位に設けら
    れたアドレスタグの更新により、当該情報単位をバツフ
    アメモリか消去すると等価の効果を生じさせることによ
    り主記憶装置とバツフアメモリ間の内容の不一致により
    生ずる論理矛盾の発生を阻止することを特徴とする情報
    処理システム。
JP52151295A 1977-12-15 1977-12-15 情報処理システム Expired JPS6036618B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP52151295A JPS6036618B2 (ja) 1977-12-15 1977-12-15 情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP52151295A JPS6036618B2 (ja) 1977-12-15 1977-12-15 情報処理システム

Publications (2)

Publication Number Publication Date
JPS5483329A JPS5483329A (en) 1979-07-03
JPS6036618B2 true JPS6036618B2 (ja) 1985-08-21

Family

ID=15515551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52151295A Expired JPS6036618B2 (ja) 1977-12-15 1977-12-15 情報処理システム

Country Status (1)

Country Link
JP (1) JPS6036618B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH087712B2 (ja) * 1990-01-18 1996-01-29 松下電器産業株式会社 キャッシュ・メモリ装置

Also Published As

Publication number Publication date
JPS5483329A (en) 1979-07-03

Similar Documents

Publication Publication Date Title
US5490261A (en) Interlock for controlling processor ownership of pipelined data for a store in cache
US6295594B1 (en) Dynamic memory allocation suitable for stride-based prefetching
US5664148A (en) Cache arrangement including coalescing buffer queue for non-cacheable data
KR101025354B1 (ko) 가상 트랜잭션 메모리를 위한 글로벌 오버플로우 방법
US7721068B2 (en) Relocation of active DMA pages
US8255591B2 (en) Method and system for managing cache injection in a multiprocessor system
US20130091331A1 (en) Methods, apparatus, and articles of manufacture to manage memory
US9208082B1 (en) Hardware-supported per-process metadata tags
JPH0658650B2 (ja) 仮想計算機システム
JPH10133943A (ja) リンクリスト形成方法
JPH0364890B2 (ja)
US12086065B2 (en) Computing system with direct invalidation in a hierarchical cache structure based on at least one designated key identification code
US11971821B2 (en) Computing system with write-back and invalidation in a hierarchical cache structure based on at least one designated key identification code
US7472253B1 (en) System and method for managing table lookaside buffer performance
US20050268028A1 (en) Programmable parallel lookup memory
JPH03225542A (ja) データ記憶方法及びビットエンコードデータの処理回路
JP3360933B2 (ja) 情報処理システムにおける記憶制御方法および記憶制御装置
US4648033A (en) Look-aside buffer LRU marker controller
US7549035B1 (en) System and method for reference and modification tracking
JP3485940B2 (ja) 仮想記憶制御装置及び方法
US12038839B2 (en) Processor and method for designating a demotion target to be demoted from an in-core cache structure to an out-of-core cache structure
JP2685455B2 (ja) データ処理装置
JPS6036618B2 (ja) 情報処理システム
GB2037466A (en) Computer with cache memory
JPS6036617B2 (ja) 情報処理システム