JPS6036617B2 - 情報処理システム - Google Patents
情報処理システムInfo
- Publication number
- JPS6036617B2 JPS6036617B2 JP52151294A JP15129477A JPS6036617B2 JP S6036617 B2 JPS6036617 B2 JP S6036617B2 JP 52151294 A JP52151294 A JP 52151294A JP 15129477 A JP15129477 A JP 15129477A JP S6036617 B2 JPS6036617 B2 JP S6036617B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer memory
- address
- processor
- memory
- information
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 11
- 230000015654 memory Effects 0.000 claims description 129
- 239000000872 buffer Substances 0.000 claims description 87
- 230000000694 effects Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 description 70
- 238000004886 process control Methods 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】
本発明は、情報処理システムに関するものであり、更に
詳しくいえば、バッファメモリと、主記憶間における内
容の不一致による論理矛盾の発生を阻止するためのバッ
ファメモリ制御手段をもつ情報処理システムに関する。
詳しくいえば、バッファメモリと、主記憶間における内
容の不一致による論理矛盾の発生を阻止するためのバッ
ファメモリ制御手段をもつ情報処理システムに関する。
情報処理システムにおいては、中央処理装置(以下プロ
セッサとよぶ)の速度と、主記憶装置の速度の間には大
きな隔たりがあり、これが計算機システムの性能を制限
する要因となっている。これを緩和するためにプロセッ
サ側に比較的小容量のバッファメモリを設けるバッファ
メモリ方式がある。この方式では、プロセッサから主記
憶にアクセスを行う際にアクセスすべき語を含む複数語
からなるブロックをバッファメモ川こ取込んでおき、次
にアクセスを行う際にはこのバッファに対してアクセス
を行うことにより、実効的に主記憶の高速化が達成でき
ることが知られている。バッファメモリ方式多くの計算
機システムに採用されており、特に主記憶装置とバッフ
ァメモリを複数個のヒットに分割して同一セットに属す
るバッファにのみ主記憶上のブロックが割当てられるよ
うにしたセットアソシアティブ方式(CJ.Conti
著バッファ記憶の概念 ぐConceptsfor B
uffersbra繋”)CompuにrCroupn
e船1969年3月号9〜13ページ参照)のバッファ
メモリは一般に使用されている。しかしながら、バツフ
アメモリシステムにおいては、前述のように、バッファ
メモリはプロセッサ毎に設けられるのでたとえば、入出
力装置からの主記憶へのデータの書き込みに際しては、
デー外ま主記憶にのみ書込まれる。
セッサとよぶ)の速度と、主記憶装置の速度の間には大
きな隔たりがあり、これが計算機システムの性能を制限
する要因となっている。これを緩和するためにプロセッ
サ側に比較的小容量のバッファメモリを設けるバッファ
メモリ方式がある。この方式では、プロセッサから主記
憶にアクセスを行う際にアクセスすべき語を含む複数語
からなるブロックをバッファメモ川こ取込んでおき、次
にアクセスを行う際にはこのバッファに対してアクセス
を行うことにより、実効的に主記憶の高速化が達成でき
ることが知られている。バッファメモリ方式多くの計算
機システムに採用されており、特に主記憶装置とバッフ
ァメモリを複数個のヒットに分割して同一セットに属す
るバッファにのみ主記憶上のブロックが割当てられるよ
うにしたセットアソシアティブ方式(CJ.Conti
著バッファ記憶の概念 ぐConceptsfor B
uffersbra繋”)CompuにrCroupn
e船1969年3月号9〜13ページ参照)のバッファ
メモリは一般に使用されている。しかしながら、バツフ
アメモリシステムにおいては、前述のように、バッファ
メモリはプロセッサ毎に設けられるのでたとえば、入出
力装置からの主記憶へのデータの書き込みに際しては、
デー外ま主記憶にのみ書込まれる。
このとき、そのデータを含む主記憶領域が既にバッファ
メモリにとり込まれていればバッファメモリと主記憶の
間で内容の不一致が発生する。これを防ぐために、従来
は、プロセッサにおいて実行すべきプロセスの切換えの
毎、あるいは入出力割込の毎にバッファメモリをすべて
消去することにより、主記憶から新たに更新された情報
を取込むようにする方式{1}、あるいは、入出力装置
からの主記憶への書込み要求のたびにそのアドレスをバ
ッファメモリに送りこのアドレスがバッファメモリ上に
存在するかどうかを検索し、存在する場合にはバッファ
メモリの対応するブロックを消去することにより内容の
不一致を防ぐという方式■が行われている。この方式【
2}は計算機システムが複数のプ・ロセツサをもつマル
チプロセッサシステムにおいても行われている。すなわ
ち、マルチプロセッサシステムにおいてはある時点であ
るプロセッサAで実行されていたプロセスPが、次に他
のプロセッサBで実行され、主記憶のあるアドレスに対
して書込みを行った場合には、以前に実行されたプロセ
ッサAのバッファメモリに保持されている。そのアドレ
スの内容は更新が行われないために再びそのプロセスP
がフ。。セッサAで実行さたとき、バッファメモリ上の
主記憶とは異なる古い内容が読出され、これにより誤ま
った処理が行われる可能性がある。このような不都合を
防ぐために、主記憶に対する書込みに際して、そのアド
レスを他のプロセッサに送り、これにより、他のプロセ
ッサのバッファメモリの対応する内容を消去することが
行われている。しかしながら、バッファメモリの内容を
全部消去する方式‘1}のような手段を用いると、バッ
ファメモリの内容が頻繁に消去され、そのために必要な
情報がバッファメモリ内で見出される確率(ヒット率)
が極めて低くなり、従って実効アクセスタイムがあまり
向上しないという欠点がある。
メモリにとり込まれていればバッファメモリと主記憶の
間で内容の不一致が発生する。これを防ぐために、従来
は、プロセッサにおいて実行すべきプロセスの切換えの
毎、あるいは入出力割込の毎にバッファメモリをすべて
消去することにより、主記憶から新たに更新された情報
を取込むようにする方式{1}、あるいは、入出力装置
からの主記憶への書込み要求のたびにそのアドレスをバ
ッファメモリに送りこのアドレスがバッファメモリ上に
存在するかどうかを検索し、存在する場合にはバッファ
メモリの対応するブロックを消去することにより内容の
不一致を防ぐという方式■が行われている。この方式【
2}は計算機システムが複数のプ・ロセツサをもつマル
チプロセッサシステムにおいても行われている。すなわ
ち、マルチプロセッサシステムにおいてはある時点であ
るプロセッサAで実行されていたプロセスPが、次に他
のプロセッサBで実行され、主記憶のあるアドレスに対
して書込みを行った場合には、以前に実行されたプロセ
ッサAのバッファメモリに保持されている。そのアドレ
スの内容は更新が行われないために再びそのプロセスP
がフ。。セッサAで実行さたとき、バッファメモリ上の
主記憶とは異なる古い内容が読出され、これにより誤ま
った処理が行われる可能性がある。このような不都合を
防ぐために、主記憶に対する書込みに際して、そのアド
レスを他のプロセッサに送り、これにより、他のプロセ
ッサのバッファメモリの対応する内容を消去することが
行われている。しかしながら、バッファメモリの内容を
全部消去する方式‘1}のような手段を用いると、バッ
ファメモリの内容が頻繁に消去され、そのために必要な
情報がバッファメモリ内で見出される確率(ヒット率)
が極めて低くなり、従って実効アクセスタイムがあまり
向上しないという欠点がある。
また、主記憶への書込みアドレスを他のプロセッサにも
送るような方式■では、他のプロセッサあるいは、入出
力装置からの書込みアドレスの検索のために、本来のプ
ロセッサからのアクセスが遅らされるという欠点がある
。また、あるプ。セツサからの書込みアドレスを他のプ
ロセッサに送るための信号通路や、バッファメモリで他
のプロセッサからのアクセス、本来のプロセッサからの
アクセスを制御するためのアクセス制御機構が必要にな
る。プロセッサ台数が多い場合には、これらのためのハ
ードウェア量が莫大になり、また、他のプ。
送るような方式■では、他のプロセッサあるいは、入出
力装置からの書込みアドレスの検索のために、本来のプ
ロセッサからのアクセスが遅らされるという欠点がある
。また、あるプ。セツサからの書込みアドレスを他のプ
ロセッサに送るための信号通路や、バッファメモリで他
のプロセッサからのアクセス、本来のプロセッサからの
アクセスを制御するためのアクセス制御機構が必要にな
る。プロセッサ台数が多い場合には、これらのためのハ
ードウェア量が莫大になり、また、他のプ。
セッサからのアクセスも増えるために、バッファメモリ
の性能の低下が馨るしい。方式【21において、書込み
アドレスの検索の頻度を少くするために各プロセッサ毎
に他のプロセッサのバッファメモリに現在格納されてい
るブロックを保持するアドレスアレイを用意し、書込み
動作に際して、このアドレスアレイを検索することによ
り、他のプロセッサのバッファでの検索の回数を減少さ
せる方式等も知られているが、これらの方式においても
、前述の他のプロセッサへの書込みアドレスのための信
号通路、アクセス制御機構等のためのハードウェア量の
問題は解決できない。
の性能の低下が馨るしい。方式【21において、書込み
アドレスの検索の頻度を少くするために各プロセッサ毎
に他のプロセッサのバッファメモリに現在格納されてい
るブロックを保持するアドレスアレイを用意し、書込み
動作に際して、このアドレスアレイを検索することによ
り、他のプロセッサのバッファでの検索の回数を減少さ
せる方式等も知られているが、これらの方式においても
、前述の他のプロセッサへの書込みアドレスのための信
号通路、アクセス制御機構等のためのハードウェア量の
問題は解決できない。
また、方式【2’‘こおいては、プロセッサの台数によ
り、ハードウェア構成が異なるために、最大限のプロセ
ッサの台数が接続できるような考慮が必要であり、プロ
セッサ台数が少し、システムにおいては無駄なハードウ
ェアを用意しなければならないという欠点があった。
り、ハードウェア構成が異なるために、最大限のプロセ
ッサの台数が接続できるような考慮が必要であり、プロ
セッサ台数が少し、システムにおいては無駄なハードウ
ェアを用意しなければならないという欠点があった。
このため、バッファメモリをデイスパツチあるいは、入
力動作の起動等で論理矛盾の発生の契機となる時点に必
要な部分だけを消去するような手段が必要となる。
力動作の起動等で論理矛盾の発生の契機となる時点に必
要な部分だけを消去するような手段が必要となる。
セットァソシアティブ方式のバッファメモリにおいてこ
のような処理を行おうとすると、従来の方式では各消去
に際して、全部のセットに関して管理テーブルを検索し
、各セットのブロックが対応する消去すべきブロックか
どうかをチェックする必要があり、このため、バッファ
メモリの消去に多くの時間が必要となり現実的でない。
本発明は、これらの欠点をなくすことを目的としたもの
である。
のような処理を行おうとすると、従来の方式では各消去
に際して、全部のセットに関して管理テーブルを検索し
、各セットのブロックが対応する消去すべきブロックか
どうかをチェックする必要があり、このため、バッファ
メモリの消去に多くの時間が必要となり現実的でない。
本発明は、これらの欠点をなくすことを目的としたもの
である。
すなわち、本発明の目的はプロセッサの台数が増大した
場合でも、ハードウェア量の増大が少く、また、性能の
低下が少し、ようなバッファメモリを提供することにあ
る。また本発明の他の目的は、バッファメモリと主記憶
間の内容の不一致の発生に関連する部分だけの消去を高
速に行うことを可能にする手段を提供することにある。
場合でも、ハードウェア量の増大が少く、また、性能の
低下が少し、ようなバッファメモリを提供することにあ
る。また本発明の他の目的は、バッファメモリと主記憶
間の内容の不一致の発生に関連する部分だけの消去を高
速に行うことを可能にする手段を提供することにある。
本発明は、主記憶上のデータのアドレスに、バッファメ
モリからの消去すべき情報単位の識別番号、およびアド
レスタグを付加し、主記憶とバッファメモリ間での内容
の不一致が生じる可能性が発生した時点でこのアドレス
タグの内容を変更することにより、等価的にバッファメ
モリから対応するデータを消去しようとするものである
。
モリからの消去すべき情報単位の識別番号、およびアド
レスタグを付加し、主記憶とバッファメモリ間での内容
の不一致が生じる可能性が発生した時点でこのアドレス
タグの内容を変更することにより、等価的にバッファメ
モリから対応するデータを消去しようとするものである
。
これにより、セットアソシァティプ方式のバッファメモ
リにおいて、ある情報単位を消去する場合に全セットに
ついての検索を行う必要がなく、高速な消去が可能とな
る。本発明によれば、ハードウェア量の増大は、アドレ
スに付加されたタグに関連するものだけである。
リにおいて、ある情報単位を消去する場合に全セットに
ついての検索を行う必要がなく、高速な消去が可能とな
る。本発明によれば、ハードウェア量の増大は、アドレ
スに付加されたタグに関連するものだけである。
従ってプロセッサの台数が増大しても、同一のハードウ
ェア構成が使用でき、また、性能が低下することも少い
という特徴がある。また、特定の情報単位のバッファメ
モリからの消去を高速に行えるという特徴がある。以下
に図により本発明を説明する。
ェア構成が使用でき、また、性能が低下することも少い
という特徴がある。また、特定の情報単位のバッファメ
モリからの消去を高速に行えるという特徴がある。以下
に図により本発明を説明する。
図は本発明による情報処理システムの実施例を示すブロ
ック図である。
ック図である。
本実施例においては、バッファメモリは、実アドレスに
よりアクセスされるものとする。
よりアクセスされるものとする。
また、バッファメモリから消去する情報の単位はプロセ
スであるとする。
スであるとする。
即ち、あるプロセスが入力装置からの入力命令を出して
、待ち状態に入った時点であるいは、あるプロセスがあ
るプロセッサで実行された後、次に再びプロセッサで実
行されようとした時点(ディスパッチされた時点)で前
回と異なるプロセッサで実行されようとした時点各プロ
セス毎に保持されているアドレスタグをカウントアップ
することにより、更新以前にそのプロセスの使用してい
たバッファメモリの内容はアクセス不能となり、消去さ
れたと同じ効果を果す。なお本実施例では、バッファメ
モIJIこ現在格納されているブロックを管理するため
の管理テーブルには、ブロックのアドレスとして、主記
憶アドレスだけでなく、消去すべき情報の単位であるプ
ロセス番号およびそのプロセスのアドレスタグを保持す
るフィールドが設けられる。検索に際してはこれらのフ
ィールドが用いられる。また、情報処理システムで実行
される各プロセスは、現在の命令アドレス、条件コード
、各レジスタ値等を保持するためにプロセス制御ブロッ
クをもつが、本実施例では、バッファメモリの管理のた
めに、制御ブロックには、これらの情報の外にそのプロ
セスが実行されたプロセッサ番号、およびそのプロセス
の現在のアドレスタグ値も保持される。
、待ち状態に入った時点であるいは、あるプロセスがあ
るプロセッサで実行された後、次に再びプロセッサで実
行されようとした時点(ディスパッチされた時点)で前
回と異なるプロセッサで実行されようとした時点各プロ
セス毎に保持されているアドレスタグをカウントアップ
することにより、更新以前にそのプロセスの使用してい
たバッファメモリの内容はアクセス不能となり、消去さ
れたと同じ効果を果す。なお本実施例では、バッファメ
モIJIこ現在格納されているブロックを管理するため
の管理テーブルには、ブロックのアドレスとして、主記
憶アドレスだけでなく、消去すべき情報の単位であるプ
ロセス番号およびそのプロセスのアドレスタグを保持す
るフィールドが設けられる。検索に際してはこれらのフ
ィールドが用いられる。また、情報処理システムで実行
される各プロセスは、現在の命令アドレス、条件コード
、各レジスタ値等を保持するためにプロセス制御ブロッ
クをもつが、本実施例では、バッファメモリの管理のた
めに、制御ブロックには、これらの情報の外にそのプロ
セスが実行されたプロセッサ番号、およびそのプロセス
の現在のアドレスタグ値も保持される。
なお、プロセス制御ブロックは、主記憶上におかれるも
のとする。図に示すごとく本実施例においては、前述の
ように、バッファメモリ8には、プロセッサ7のプロセ
ッサアドレスレジスタ1からプロセス番号、アドレスタ
グが主記憶アドレスとともに送られ、アドレスレジスタ
2に印加されるプロセス番号、アドレスタグはアドレス
レジスタ2の第1および第2のフィールド21,22に
各々格納され、また、主記憶アドレスのブロックアドレ
ス部13、セットアドレス部14、ワードアドレス部1
5はアドレスレジスタ2の第3,第4,第5のフィール
ド23,24,25に各々格納される。
のとする。図に示すごとく本実施例においては、前述の
ように、バッファメモリ8には、プロセッサ7のプロセ
ッサアドレスレジスタ1からプロセス番号、アドレスタ
グが主記憶アドレスとともに送られ、アドレスレジスタ
2に印加されるプロセス番号、アドレスタグはアドレス
レジスタ2の第1および第2のフィールド21,22に
各々格納され、また、主記憶アドレスのブロックアドレ
ス部13、セットアドレス部14、ワードアドレス部1
5はアドレスレジスタ2の第3,第4,第5のフィール
ド23,24,25に各々格納される。
バッファメモリはセットアソシアティブ方式で実現さて
おり、バッファメモリは各セット毎に、主記憶上の同一
セットに属する2つのブロックを保持できるようになっ
ている。従って、現在バッファメモリに保持されている
主記憶のブロックを管理するための管理テーフル3は、
各セットに対応して、ェントリをもち、各ェントリは、
各セットにおける2個のブロックに対応して、第1およ
び第2のフィールドをもつ、第1および第2のフィール
ドはさらにプロセス番号をもつ第1および第2のプロセ
ス番号部311,321と、アドレスタグおよびブロッ
クアドレスを保持する第1および第2のアドレス部31
3,323および各ブロックがバッファメモリで現在使
用可能かどうかを示す第1および第2の有効ビット31
4,324をもつ。
おり、バッファメモリは各セット毎に、主記憶上の同一
セットに属する2つのブロックを保持できるようになっ
ている。従って、現在バッファメモリに保持されている
主記憶のブロックを管理するための管理テーフル3は、
各セットに対応して、ェントリをもち、各ェントリは、
各セットにおける2個のブロックに対応して、第1およ
び第2のフィールドをもつ、第1および第2のフィール
ドはさらにプロセス番号をもつ第1および第2のプロセ
ス番号部311,321と、アドレスタグおよびブロッ
クアドレスを保持する第1および第2のアドレス部31
3,323および各ブロックがバッファメモリで現在使
用可能かどうかを示す第1および第2の有効ビット31
4,324をもつ。
管理テーブル3の第1および第2のフィールドのプロセ
ス番号311,321、アドレス部313,323の値
は、各々プロセス番号比較回路51 1,521、アド
レス比較回路513,523の一方の入力に印加されて
おり、これらの他の入力にはアドレスレジスタ2の第1
のフィールド21の値、第2および第3のフィールドの
値22,23が各々印加されている。
ス番号311,321、アドレス部313,323の値
は、各々プロセス番号比較回路51 1,521、アド
レス比較回路513,523の一方の入力に印加されて
おり、これらの他の入力にはアドレスレジスタ2の第1
のフィールド21の値、第2および第3のフィールドの
値22,23が各々印加されている。
なお、これらの値は、管理テーブル3への書込みデータ
として、管理テーブル3の第1および第2のフィールド
‘こも印加されている。また、バツフアメモリ4にはア
ドレスレジスタ2に格納されている主記憶アドレスのう
ちのブロックアドレス部23およびセットアドレス部2
4の値、および制御回路6からのブロックアドレス61
がアドレスとして印加され、主記憶9および、プロセス
7との間でデータ転送ができるように構成されている。
として、管理テーブル3の第1および第2のフィールド
‘こも印加されている。また、バツフアメモリ4にはア
ドレスレジスタ2に格納されている主記憶アドレスのう
ちのブロックアドレス部23およびセットアドレス部2
4の値、および制御回路6からのブロックアドレス61
がアドレスとして印加され、主記憶9および、プロセス
7との間でデータ転送ができるように構成されている。
次に、本実施例の動作を説明する。
まず、あるプロセッサで、あるプロセスがデイスパッチ
された時点で、プロセッサは主記憶上のプロセス制御ブ
ロック(図示せず)からそのプロセスが以前に実行され
たプロセッサ番号を示すプロセッサ番号部を読出し、こ
れをそのプロセッサの番号と比較する。
された時点で、プロセッサは主記憶上のプロセス制御ブ
ロック(図示せず)からそのプロセスが以前に実行され
たプロセッサ番号を示すプロセッサ番号部を読出し、こ
れをそのプロセッサの番号と比較する。
これが現在のプロセッサ番号と異なる場合には、このプ
ロセッサをバッファメモリ上から消去することが必要に
なる。このため新たなプロセッサ番号をプロセス制御ブ
ロックにもどし、プロセッサ番号の更新を行うとともに
プロセス制御ブロックからアドレスタグを論出し、これ
をカウントアップして更新する。このカウントアップに
際してアドレスタグ値がオーバフロゥしなかった場合に
は、これをプロセッサアドレスジスタ1のアドレスタグ
フイールド12にセットする。同時にプロセス番号をプ
ロセッサアドレスレジスターのプロセス番号フィールド
11にセットした後に、そのプロセスに対する実際の処
理を行う。カウントアップに際して、アドレスタグ値が
オーバフロウを起した場合には、以前の同じタグ値をも
つブロックがバッファメモリ上に残っていないことを保
証するために、バッファメモリ8にそのプロセス番号と
ともに、信号線71を介して消去信号を送りバッファメ
モリ8からそのプロセス番号のブロックをすべて消去す
るバッファメモリ8から消去完了信号が信号線65を介
して戻された後にそのプロセスに対する処理を開始する
プロセスの実行に際してのプロセッサからのメモリアク
セスに際して、プロセッサアドレスレジスタ1の第3,
第4,第5のフィールド13,14,15に主記憶アド
レスが格納されるとともに信号線71を介してバッファ
メモリ8に対してアクセス要求が印加される。
ロセッサをバッファメモリ上から消去することが必要に
なる。このため新たなプロセッサ番号をプロセス制御ブ
ロックにもどし、プロセッサ番号の更新を行うとともに
プロセス制御ブロックからアドレスタグを論出し、これ
をカウントアップして更新する。このカウントアップに
際してアドレスタグ値がオーバフロゥしなかった場合に
は、これをプロセッサアドレスジスタ1のアドレスタグ
フイールド12にセットする。同時にプロセス番号をプ
ロセッサアドレスレジスターのプロセス番号フィールド
11にセットした後に、そのプロセスに対する実際の処
理を行う。カウントアップに際して、アドレスタグ値が
オーバフロウを起した場合には、以前の同じタグ値をも
つブロックがバッファメモリ上に残っていないことを保
証するために、バッファメモリ8にそのプロセス番号と
ともに、信号線71を介して消去信号を送りバッファメ
モリ8からそのプロセス番号のブロックをすべて消去す
るバッファメモリ8から消去完了信号が信号線65を介
して戻された後にそのプロセスに対する処理を開始する
プロセスの実行に際してのプロセッサからのメモリアク
セスに際して、プロセッサアドレスレジスタ1の第3,
第4,第5のフィールド13,14,15に主記憶アド
レスが格納されるとともに信号線71を介してバッファ
メモリ8に対してアクセス要求が印加される。
このアクセス要求をうけると、バッファメモリの制御回
路6の制御のもとに以下の動作が行われる。
路6の制御のもとに以下の動作が行われる。
即ち、まずプロセッサ7から送られたアドレスをアドレ
スレジスタ2に格納し、セットアドレス部24の値より
管理テーブル3を読出す。
スレジスタ2に格納し、セットアドレス部24の値より
管理テーブル3を読出す。
第1のフィールドで一致が検出されたとき即ち第1のプ
ロセス番号比較回路511およびアドレス比較回路51
3がともに一致検出信号を出力したときには、バッファ
メモリアレイ4の第1のブロックに要求された情報が格
納されていることになり信号線63を介してバッファメ
モリアレイ4に対してアクセスが行われる。同機に、第
2のフィールドで一致が検出された場合即ち、第2のフ
。。セス番号比較回路521およびアドレス比較回路5
23がともに一致検出信号を出力したときには、バッフ
ァメモリアレイ4の対応するセットの第2のブロックに
対してアクセスを行う。この第1および第2のブロック
の指定は、制御回路から出力されるブロックアドレス線
61によって指定される。第1および第2のフィールド
のいずれにおいても一致が検出されない場合、即ち、第
1および第2のプロセス番号比較回路511,521、
アドレス比較回路513,523のいずれかで不一致が
検出された場合にはバッファメモリアレイ4には要求さ
れたブロックが格納されていないことになり、バッファ
メモリの第1あるいは第2のブロックの一方が選択され
、管理テーブルの選択された第1あるいは第2のフィー
ルドのプロセス番号部、アドレスタグ部、ブロックアド
レス部に要求のあったアドレスに対応する値を書込むと
ともに、主記憶に対して、信号線64を介してブロック
転送を出し、転送が終了した後第1および第2の有効ビ
ット314,324の内対応する有効ビットを1とし、
バッファメモリに対してアクセスを行う。また、プロセ
ッサから、プロセス番号とともに信号線71を介してバ
ッファメモリ消去の指令が印加された場合には制御回路
6の制御のもとに次の動作が行われる。
ロセス番号比較回路511およびアドレス比較回路51
3がともに一致検出信号を出力したときには、バッファ
メモリアレイ4の第1のブロックに要求された情報が格
納されていることになり信号線63を介してバッファメ
モリアレイ4に対してアクセスが行われる。同機に、第
2のフィールドで一致が検出された場合即ち、第2のフ
。。セス番号比較回路521およびアドレス比較回路5
23がともに一致検出信号を出力したときには、バッフ
ァメモリアレイ4の対応するセットの第2のブロックに
対してアクセスを行う。この第1および第2のブロック
の指定は、制御回路から出力されるブロックアドレス線
61によって指定される。第1および第2のフィールド
のいずれにおいても一致が検出されない場合、即ち、第
1および第2のプロセス番号比較回路511,521、
アドレス比較回路513,523のいずれかで不一致が
検出された場合にはバッファメモリアレイ4には要求さ
れたブロックが格納されていないことになり、バッファ
メモリの第1あるいは第2のブロックの一方が選択され
、管理テーブルの選択された第1あるいは第2のフィー
ルドのプロセス番号部、アドレスタグ部、ブロックアド
レス部に要求のあったアドレスに対応する値を書込むと
ともに、主記憶に対して、信号線64を介してブロック
転送を出し、転送が終了した後第1および第2の有効ビ
ット314,324の内対応する有効ビットを1とし、
バッファメモリに対してアクセスを行う。また、プロセ
ッサから、プロセス番号とともに信号線71を介してバ
ッファメモリ消去の指令が印加された場合には制御回路
6の制御のもとに次の動作が行われる。
即ち、まず、1 プロセス番号をアドレスレジス夕2の
第1フィールド‘こ格納するとともに、制御回路6に設
けられたセットアドレスカウンタ62の値をセットする
。
第1フィールド‘こ格納するとともに、制御回路6に設
けられたセットアドレスカウンタ62の値をセットする
。
2 次に、セットアドレスカウンタ62の値により、管
理テーブル3を議出し、第1および第2のプロセス番号
比較回路511,521により、管理テーブルから読出
されたプロセス番号とアドレスレジスタ2のプロセス番
号を比較し、一致が検出されたら対応する有効ビット0
にリセットし、これを管理テーブルに書き戻す。
理テーブル3を議出し、第1および第2のプロセス番号
比較回路511,521により、管理テーブルから読出
されたプロセス番号とアドレスレジスタ2のプロセス番
号を比較し、一致が検出されたら対応する有効ビット0
にリセットし、これを管理テーブルに書き戻す。
3 セットアドレスカウンタ62をカウントアップした
後、2の動作を行う。
後、2の動作を行う。
4,2,3の動作をセットアドレスカウンタがオーバフ
ロウするまで行った後、プロセッサに対して信号線65
を介して消去完了信号を送る。
ロウするまで行った後、プロセッサに対して信号線65
を介して消去完了信号を送る。
以上1から4までの動作により、指定されたプロセスで
使用されたバッファメモリのブロック消去が行われたこ
とになる。
使用されたバッファメモリのブロック消去が行われたこ
とになる。
以上、本発明の実施例を説明したが以上の説明でわかる
ように、本発明の主旨は、バッファメモリからの消去の
情報単位であるプロセス毎にアドレスタグを管理し、プ
ロセスの他のプロセッサへの切り替わり等、バッファメ
モリと主記憶間での内容の不一致が発生する契機に際し
て、メモリアドレスに付加したプロセス番号に対応する
アドレスタグを切換えることにより実効的にそのプロセ
スに属するデータをバッファメモリから消去することに
より、主記憶と、バッファメモリ間の内容の不一致を解
消しようとするものであり、この主旨に反しない限り、
いくつかの変形が可能なことはあきらかであろう。
ように、本発明の主旨は、バッファメモリからの消去の
情報単位であるプロセス毎にアドレスタグを管理し、プ
ロセスの他のプロセッサへの切り替わり等、バッファメ
モリと主記憶間での内容の不一致が発生する契機に際し
て、メモリアドレスに付加したプロセス番号に対応する
アドレスタグを切換えることにより実効的にそのプロセ
スに属するデータをバッファメモリから消去することに
より、主記憶と、バッファメモリ間の内容の不一致を解
消しようとするものであり、この主旨に反しない限り、
いくつかの変形が可能なことはあきらかであろう。
たとえば、実施例ではアドレスとして主記憶アドレスを
使用したがこのかわりに仮想アドレスを用いることもで
きる。
使用したがこのかわりに仮想アドレスを用いることもで
きる。
ただしこの場合には、必要な情報が見出されない場合の
主記憶からのブロック転送には実主記憶を使用し、管理
テーブルへは仮想アドレスで登録する等の制御が必要と
なる。またセグメンテーション方式を採用した仮想主記
憶方式の情報処理システムにおいては各セグメント毎に
セグメント記述子に特別のフィールドを設け、ここにプ
ロセッサ番号、アドレスタグを保持することにより、セ
グメントを単位としてバッファメモリの消去を行うこと
も可能である。このような構成にすることにより、必要
なセグメントだけをバッファメモリから消去することが
でき、バッファメモリでのヒットレイトが向上する。た
だし、この場合には、各セグメント毎の現在のアドレス
タグ値を高速に得るために、プロセッサが各セグメント
における現在のタグ値を保持するレジスタを設ける等の
考慮が必要となろう。また、この場合には、読出し動作
しか行われないセグメントに対しては、アドレスタグの
更新は行う必要がない。また、アドレスタグのビット数
等も実現に際して適当な値が選択でき、充分に長いビッ
ト数を与えるとによりアドレスタグ値のオーバフロウに
よるバッファメモリの消去を実質的になくすることも可
能である。
主記憶からのブロック転送には実主記憶を使用し、管理
テーブルへは仮想アドレスで登録する等の制御が必要と
なる。またセグメンテーション方式を採用した仮想主記
憶方式の情報処理システムにおいては各セグメント毎に
セグメント記述子に特別のフィールドを設け、ここにプ
ロセッサ番号、アドレスタグを保持することにより、セ
グメントを単位としてバッファメモリの消去を行うこと
も可能である。このような構成にすることにより、必要
なセグメントだけをバッファメモリから消去することが
でき、バッファメモリでのヒットレイトが向上する。た
だし、この場合には、各セグメント毎の現在のアドレス
タグ値を高速に得るために、プロセッサが各セグメント
における現在のタグ値を保持するレジスタを設ける等の
考慮が必要となろう。また、この場合には、読出し動作
しか行われないセグメントに対しては、アドレスタグの
更新は行う必要がない。また、アドレスタグのビット数
等も実現に際して適当な値が選択でき、充分に長いビッ
ト数を与えるとによりアドレスタグ値のオーバフロウに
よるバッファメモリの消去を実質的になくすることも可
能である。
本実施例においてはプロセス番号とアドレスタグはプロ
セッサが保持しているとしたが必ずしもこのような構成
にする必要はなく、これらを保持するレジスタをバッフ
ァメモリ側に設けることも可能であり、たとえば実施例
においてはプロセスのディスパッチに際してこれらを主
記憶のアドレス信号線を介して送るように構成すること
もできる。
セッサが保持しているとしたが必ずしもこのような構成
にする必要はなく、これらを保持するレジスタをバッフ
ァメモリ側に設けることも可能であり、たとえば実施例
においてはプロセスのディスパッチに際してこれらを主
記憶のアドレス信号線を介して送るように構成すること
もできる。
以上の説明においては本発明の主旨とは直接関連がない
ので制御回路の具体的構成等は省略してあるが、これら
は従来知られている方法で実現できることはあきらかで
あろうまた、バッファメモリにブロックが見出されない
場合に新しいブロックを取込むべき位置の決定のしかた
、あるいは、主記憶とバッファメモリ間のブロックの転
送およびこれに関連する有効ビットの取扱い、書込み動
作に際しての主記憶への書込み等についても本発明とは
直接関係がないのでその説明は省略してあるがこれらは
従来知られている方法によって行われるものとしている
。
ので制御回路の具体的構成等は省略してあるが、これら
は従来知られている方法で実現できることはあきらかで
あろうまた、バッファメモリにブロックが見出されない
場合に新しいブロックを取込むべき位置の決定のしかた
、あるいは、主記憶とバッファメモリ間のブロックの転
送およびこれに関連する有効ビットの取扱い、書込み動
作に際しての主記憶への書込み等についても本発明とは
直接関係がないのでその説明は省略してあるがこれらは
従来知られている方法によって行われるものとしている
。
プロセスのディスパツチに際して、そのディスパッチが
行われることにより、内容の不一致が生じる可能性があ
ることを検出するために行われる以前に実行されたプロ
セッサ番号と現在のプロセッサ番号のチェック等は特別
にハードウェアを設けてもよいが通常の機械命令、ある
いはマイクロプログラムによっても実現できるであろう
。
行われることにより、内容の不一致が生じる可能性があ
ることを検出するために行われる以前に実行されたプロ
セッサ番号と現在のプロセッサ番号のチェック等は特別
にハードウェアを設けてもよいが通常の機械命令、ある
いはマイクロプログラムによっても実現できるであろう
。
また、入力装置からの入力動作による内容の不一致の発
生を防ぐためには、入力動作の起動に際してプロセッサ
がアドレスタグの更新を行うかあるいは入出力動作を行
う入出力プロセッサがこの処理を行う、あるいは、入力
動作が経了し、そのプロセスがプロセッサでディスパッ
チされた時点で、そのプロセスが直前に入出力プロセッ
サで入力動作を行ったことを検出した時点で行う等いく
つかの方法があり、そのいずれを採用してもよい。また
、本実施例では、プロセス制御ブロックは主記憶内に設
けられるとしているが、プロセッサ内の特別な記憶位置
を設け、これに格納することも可能であろう。
生を防ぐためには、入力動作の起動に際してプロセッサ
がアドレスタグの更新を行うかあるいは入出力動作を行
う入出力プロセッサがこの処理を行う、あるいは、入力
動作が経了し、そのプロセスがプロセッサでディスパッ
チされた時点で、そのプロセスが直前に入出力プロセッ
サで入力動作を行ったことを検出した時点で行う等いく
つかの方法があり、そのいずれを採用してもよい。また
、本実施例では、プロセス制御ブロックは主記憶内に設
けられるとしているが、プロセッサ内の特別な記憶位置
を設け、これに格納することも可能であろう。
また、本実施例では、いくつかプログラムで共用される
データについてはこれを取扱うために特別のプロセスが
設けられ、これを各プログラムが呼ぶことによって行わ
れるとしており、従って、特定のデータを同時に複数の
プロセスが使用しないものとしているが複数のプロセス
が主記憶上の同一のデータをアクセスするような構成の
システムにおいては、データのロックを行う時点を契機
としてそのデータを含む消去単位のプロセッサ番号をチ
ェックすることにより、バッファメモリ主記憶間の矛盾
の発生を阻止できる。また、このような構成をとらない
システムにおいては、特定の情報に対するロック命令を
契機としてアドレスタグの更新を行うようにすることに
よりバッファメモリと主記憶間の情報の不一致を解消す
ることができる。
データについてはこれを取扱うために特別のプロセスが
設けられ、これを各プログラムが呼ぶことによって行わ
れるとしており、従って、特定のデータを同時に複数の
プロセスが使用しないものとしているが複数のプロセス
が主記憶上の同一のデータをアクセスするような構成の
システムにおいては、データのロックを行う時点を契機
としてそのデータを含む消去単位のプロセッサ番号をチ
ェックすることにより、バッファメモリ主記憶間の矛盾
の発生を阻止できる。また、このような構成をとらない
システムにおいては、特定の情報に対するロック命令を
契機としてアドレスタグの更新を行うようにすることに
よりバッファメモリと主記憶間の情報の不一致を解消す
ることができる。
図は、本発明の情報処理システムの一実施例を示すブロ
ック図である。 図において1はプロセッサアドレスレジスタ、2はアド
レスレジスタ、3は管理テーフル、4はバツフアメモリ
アレイ、511,513,521,523は比較回路、
6は制御回路、7はプロセッサ、8はバッファメモリ、
9は主記憶装置を示す。
ック図である。 図において1はプロセッサアドレスレジスタ、2はアド
レスレジスタ、3は管理テーフル、4はバツフアメモリ
アレイ、511,513,521,523は比較回路、
6は制御回路、7はプロセッサ、8はバッファメモリ、
9は主記憶装置を示す。
Claims (1)
- 1 バツフアメモリをもつ少くとも1台の中央処理装置
(以下プロセツサとよぶ)と、主記憶装置を含む情報処
理システムにおいてメモリアドレスに、バツフアメモリ
から消去される情報単位の識別番号、とアドレスタグを
付加する手段と、前記消去すべき情報単位毎に現在のア
ドレスタグおよび前記情報単位が直前に使用されたプロ
セツサ番号を保持する手段と、前記保持されたプロセツ
サ番号および現在のプロセツサ番号を用いて前記主記憶
装置とバツフアメモリの内容の不一致の発生に関連する
契機を検出する手段と、前記契記において前記アドレス
タグ値を更新する手段と、前記情報単位名、対応するア
ドレスタグおよびブロツクアドレスを保持するフイール
ドを含む管理テーブルとを具備し、前記情報単位名、ア
ドレスタグ、およびブロツクアドレスを用いてその内容
が検索されるバツフアメモリを含み、各消去すべき情報
単位に設けられたアドレスタグの更新により、当該情報
単位をバツフアメモリから消去すると等価の効果を生じ
させることにより、主記憶装置とバツフアメモリ間の内
容の不一致により生ずる論理矛盾の発生を阻止すること
を特徴とする情報処理システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP52151294A JPS6036617B2 (ja) | 1977-12-15 | 1977-12-15 | 情報処理システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP52151294A JPS6036617B2 (ja) | 1977-12-15 | 1977-12-15 | 情報処理システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5483328A JPS5483328A (en) | 1979-07-03 |
| JPS6036617B2 true JPS6036617B2 (ja) | 1985-08-21 |
Family
ID=15515530
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP52151294A Expired JPS6036617B2 (ja) | 1977-12-15 | 1977-12-15 | 情報処理システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6036617B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6291630U (ja) * | 1985-11-29 | 1987-06-11 |
-
1977
- 1977-12-15 JP JP52151294A patent/JPS6036617B2/ja not_active Expired
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6291630U (ja) * | 1985-11-29 | 1987-06-11 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5483328A (en) | 1979-07-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2557174B2 (ja) | データのセット位置の予測装置 | |
| EP0009938B1 (en) | Computing systems having high-speed cache memories | |
| KR100278328B1 (ko) | 캐시 미스 버퍼 | |
| US4466059A (en) | Method and apparatus for limiting data occupancy in a cache | |
| CA1232677A (en) | Data processing system with reorganization of disk storage for improved paging | |
| US7472253B1 (en) | System and method for managing table lookaside buffer performance | |
| JPH0668736B2 (ja) | 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法 | |
| US6519684B1 (en) | Low overhead method for selecting and updating an entry in a cache memory | |
| JPH03225542A (ja) | データ記憶方法及びビットエンコードデータの処理回路 | |
| US4658356A (en) | Control system for updating a change bit | |
| EP0519685A1 (en) | Address translation | |
| US4648033A (en) | Look-aside buffer LRU marker controller | |
| US7549035B1 (en) | System and method for reference and modification tracking | |
| JPH06139149A (ja) | 多重仮想空間制御装置 | |
| JP3485940B2 (ja) | 仮想記憶制御装置及び方法 | |
| EP0271187B1 (en) | Split instruction and operand cache management | |
| JPS6036617B2 (ja) | 情報処理システム | |
| US5426749A (en) | Buffer control system using synonymic line address to retrieve second tag portion for fetch and store accesses while first tag portion is invalidated | |
| GB2037466A (en) | Computer with cache memory | |
| JPS644214B2 (ja) | ||
| JPS60701B2 (ja) | デ−タ処理装置 | |
| JPS6036618B2 (ja) | 情報処理システム | |
| US7546439B1 (en) | System and method for managing copy-on-write faults and change-protection | |
| JPH05158793A (ja) | 並列キャッシュメモリ | |
| JPH06139147A (ja) | キャッシュメモリシステム |