JPH0253813B2 - - Google Patents
Info
- Publication number
- JPH0253813B2 JPH0253813B2 JP55040581A JP4058180A JPH0253813B2 JP H0253813 B2 JPH0253813 B2 JP H0253813B2 JP 55040581 A JP55040581 A JP 55040581A JP 4058180 A JP4058180 A JP 4058180A JP H0253813 B2 JPH0253813 B2 JP H0253813B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- cache
- main memory
- cpu
- 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
Links
- 230000015654 memory Effects 0.000 claims description 167
- 238000010926 purge Methods 0.000 description 16
- 230000008878 coupling Effects 0.000 description 7
- 238000010168 coupling process Methods 0.000 description 7
- 238000005859 coupling reaction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
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)
- Multi Processors (AREA)
Description
【発明の詳細な説明】
本発明は計算機システムに関し、更に詳しく云
えば計算機システムに用いられる仮想キヤツシユ
構成に関する。
えば計算機システムに用いられる仮想キヤツシユ
構成に関する。
計算機システムに於て、大型計算機の性能を著
しく制限する要因は中央処理装置(以下CPUと
略記する。)からのメインメモリへのアクセスタ
イムである。計算機システムに於けるメインメモ
リへのアクセスタイムは主に、メモリアクセス路
の母線遅延とアービツトレイションに起因する。
他方、高速ランダムアクセスメモリは非常に速い
アクセスタイムを有するメモリである。しかしな
がら、高速ランダムアクセスメモリで高速の大型
メインメモリを構成することは経済的でない。
しく制限する要因は中央処理装置(以下CPUと
略記する。)からのメインメモリへのアクセスタ
イムである。計算機システムに於けるメインメモ
リへのアクセスタイムは主に、メモリアクセス路
の母線遅延とアービツトレイションに起因する。
他方、高速ランダムアクセスメモリは非常に速い
アクセスタイムを有するメモリである。しかしな
がら、高速ランダムアクセスメモリで高速の大型
メインメモリを構成することは経済的でない。
ところが、メインメモリが比較的低速でアクセ
スする型のものであつても、CPUに近い場所に
小型のランダムアクセスメモリを設置し、これを
CPUが排他的に使用することによつて、大型計
算機システムのメモリの実効アクセスタイムが改
善される。この小型ランダムアクセスメモリはそ
のアクセスタイムがメインメモリよりも非常に短
いもので、通常はキヤツシユメモリと呼ばれてい
る。キヤツシユメモリを用いた計算機システムの
一例に於て、メインメモリの容量が256000語以上
であるのに対し、キヤツシユメモリの容量は1024
語であつた。経験によれば、計算機プログラムの
参照のローカスは比較的小さい。この種の模範的
な構造のものに於て、計算機システムは容易に90
パーセントのヒツト率を達成した。すなわち長時
間にわたつて調べたところ、メモリから要求され
たデータの90パーセント以上がキヤツシユメモリ
中に見出された。
スする型のものであつても、CPUに近い場所に
小型のランダムアクセスメモリを設置し、これを
CPUが排他的に使用することによつて、大型計
算機システムのメモリの実効アクセスタイムが改
善される。この小型ランダムアクセスメモリはそ
のアクセスタイムがメインメモリよりも非常に短
いもので、通常はキヤツシユメモリと呼ばれてい
る。キヤツシユメモリを用いた計算機システムの
一例に於て、メインメモリの容量が256000語以上
であるのに対し、キヤツシユメモリの容量は1024
語であつた。経験によれば、計算機プログラムの
参照のローカスは比較的小さい。この種の模範的
な構造のものに於て、計算機システムは容易に90
パーセントのヒツト率を達成した。すなわち長時
間にわたつて調べたところ、メモリから要求され
たデータの90パーセント以上がキヤツシユメモリ
中に見出された。
通常の構造のキヤツシユメモリは連想メモリと
データメモリを含んでいる。連想メモリはCPU
から供給されるアドレスを、語の値を内蔵するデ
ータメモリのロケーシヨンに関係づけるのに用い
られる。CPUがメモリ要求を発すると、アドレ
スが連想メモリに与えられる。もし、そのアドレ
スの内容がキヤツシユメモリ内に存在すれば、
「ヒツト」が発生し、このデータはキヤツシユメ
モリから取り出すことができる。もし連想メモリ
が要求されたアドレスが存在しないことを指示し
たならば、「ミス」が発生し、かつデータは通常
の方法でメインメモリから取出さなければならな
い。データがメインメモリから読出されると、そ
のロケーシヨンの内容をCPUが近い将来呼出す
という高い可能性をもつて、データはキヤツシユ
中に負荷される。
データメモリを含んでいる。連想メモリはCPU
から供給されるアドレスを、語の値を内蔵するデ
ータメモリのロケーシヨンに関係づけるのに用い
られる。CPUがメモリ要求を発すると、アドレ
スが連想メモリに与えられる。もし、そのアドレ
スの内容がキヤツシユメモリ内に存在すれば、
「ヒツト」が発生し、このデータはキヤツシユメ
モリから取り出すことができる。もし連想メモリ
が要求されたアドレスが存在しないことを指示し
たならば、「ミス」が発生し、かつデータは通常
の方法でメインメモリから取出さなければならな
い。データがメインメモリから読出されると、そ
のロケーシヨンの内容をCPUが近い将来呼出す
という高い可能性をもつて、データはキヤツシユ
中に負荷される。
1個のCPUと1個のメインメモリとを特徴と
する簡単なシステムに於て、このようなキヤツシ
ユメモリがうまく動作しているのに対し、1個の
メインメモリに複数のCPUがアクセスするシス
テムに於ては問題がある。各CPUはそれぞれ関
連するキヤツシユメモリを有するけれども、メイ
ンメモリには全てのCPUによつて共用される部
分がある。それ故、メインメモリからの或るアド
レスが複数のCPUの少くとも1つに関連するキ
ヤツシユに書込まれ、かつ他のCPUがメインメ
モリのそのデータをアツプデイトすると、キヤツ
シユメモリに書込まれたデータはメインメモリに
書込まれたデータと一致しなくなり、従つてその
データが呼出された場合はエラーとなる。
する簡単なシステムに於て、このようなキヤツシ
ユメモリがうまく動作しているのに対し、1個の
メインメモリに複数のCPUがアクセスするシス
テムに於ては問題がある。各CPUはそれぞれ関
連するキヤツシユメモリを有するけれども、メイ
ンメモリには全てのCPUによつて共用される部
分がある。それ故、メインメモリからの或るアド
レスが複数のCPUの少くとも1つに関連するキ
ヤツシユに書込まれ、かつ他のCPUがメインメ
モリのそのデータをアツプデイトすると、キヤツ
シユメモリに書込まれたデータはメインメモリに
書込まれたデータと一致しなくなり、従つてその
データが呼出された場合はエラーとなる。
最近、数個の無関係なプログラムの制御によつ
てCPUが間けつ的に動作できるような多重プロ
グラミングが可能なCPUが開発された。このよ
うな状態で、もしもキヤツシユがCPUと関連づ
けられると、CPUが別のプログラムに変更され
る毎に、キヤツシユへのアクセスの「ヒツト」率
は著しく低下する。なぜなら、新たなプログラム
に関連するキヤツシユ内のデータは前のプログラ
ムとは無関係であり、他のプログラムに関連する
ものによつてメインメモリの別の部分から引出さ
れる。それ故、プログラム変更時に於けるキヤツ
シユの内容は、第2の即ち次のプログラムとは無
関係である。CPUが1つのプログラムから他の
プログラムに変更する度に、キヤツシユを再負荷
する必要性が著しく動作を遅くしている。
てCPUが間けつ的に動作できるような多重プロ
グラミングが可能なCPUが開発された。このよ
うな状態で、もしもキヤツシユがCPUと関連づ
けられると、CPUが別のプログラムに変更され
る毎に、キヤツシユへのアクセスの「ヒツト」率
は著しく低下する。なぜなら、新たなプログラム
に関連するキヤツシユ内のデータは前のプログラ
ムとは無関係であり、他のプログラムに関連する
ものによつてメインメモリの別の部分から引出さ
れる。それ故、プログラム変更時に於けるキヤツ
シユの内容は、第2の即ち次のプログラムとは無
関係である。CPUが1つのプログラムから他の
プログラムに変更する度に、キヤツシユを再負荷
する必要性が著しく動作を遅くしている。
代表的な現用システムに於て、CPUのアドレ
スは、プログラムアドレス、即ち仮想アドレスか
らメモリアドレス即ちフイジカルアドレスに翻訳
される。このアドレス翻訳はアドレス翻訳器、即
ちマツパー(mapper)によつて行われる。翻訳
値は実行中のプログラム毎に異なる。例えば、ア
ドレス「0」はマツパーによつて、3個のプログ
ラムA,B及びCに対して3つの異なるフイジカ
ルアドレスに変換される。
スは、プログラムアドレス、即ち仮想アドレスか
らメモリアドレス即ちフイジカルアドレスに翻訳
される。このアドレス翻訳はアドレス翻訳器、即
ちマツパー(mapper)によつて行われる。翻訳
値は実行中のプログラム毎に異なる。例えば、ア
ドレス「0」はマツパーによつて、3個のプログ
ラムA,B及びCに対して3つの異なるフイジカ
ルアドレスに変換される。
現用システムに於て、メモリロケーシヨンの内
容にアクセスするためには、CPUは仮想アドレ
スをマツパーに与え、マツパーは仮想アドレスを
フイジカルアドレスに変換し、フイジカルアドレ
スはキヤツシユの関連するメモリに与えられ、
「ヒツト」のチエツクは前述した通りに遂行され
る。フイジカルアドレスはキヤツシユで用いられ
るから、動作はキヤツシユルツクアツプを進める
のにシーケンシヤルに仮想アドレスからフイジカ
ルアドレスへの翻訳を続けなければならない。
容にアクセスするためには、CPUは仮想アドレ
スをマツパーに与え、マツパーは仮想アドレスを
フイジカルアドレスに変換し、フイジカルアドレ
スはキヤツシユの関連するメモリに与えられ、
「ヒツト」のチエツクは前述した通りに遂行され
る。フイジカルアドレスはキヤツシユで用いられ
るから、動作はキヤツシユルツクアツプを進める
のにシーケンシヤルに仮想アドレスからフイジカ
ルアドレスへの翻訳を続けなければならない。
従つて本発明の目的は上述の欠点を除去した改
良されたキヤツシユメモリを有する計算機システ
ムを提供することにある。
良されたキヤツシユメモリを有する計算機システ
ムを提供することにある。
以下図面を用いて本発明を説明する。
第1図に於て2はメインメモリで、4は第
1CPUである。第1CPU4は母線6によつてメメ
インメモリ2に接続されている。第1図の構成に
於て、複数のCPUがメインメモリ2と通信する。
この複数とはCPUとこれに関連する回路のそれ
ぞれ4個である。第1CPU4はマツパー5を経て
母線6によりメインメモリ2に接続される。キヤ
ツシユ8は第1CPU4により排他的に使用される
ように母線6に接続される。同様に第2CPU10
はマツパー11を経て、母線12によつてメイン
メモリ2に接続される。キヤツシユ14はCPU
10により排他的に使用されるように母線12に
接続される。
1CPUである。第1CPU4は母線6によつてメメ
インメモリ2に接続されている。第1図の構成に
於て、複数のCPUがメインメモリ2と通信する。
この複数とはCPUとこれに関連する回路のそれ
ぞれ4個である。第1CPU4はマツパー5を経て
母線6によりメインメモリ2に接続される。キヤ
ツシユ8は第1CPU4により排他的に使用される
ように母線6に接続される。同様に第2CPU10
はマツパー11を経て、母線12によつてメイン
メモリ2に接続される。キヤツシユ14はCPU
10により排他的に使用されるように母線12に
接続される。
第3CPU16はマツパー17を介し、母線18
によつてメインメモリ2に接続される。キヤツシ
ユ20はCPU16により排他的に使用されるよ
うに母線18に接続される。第4CPU22はマツ
パー28を介し、母線24によつてメインメモリ
2に接続される。キヤツシユ26はCPU22に
より排他的に使用されるように母線24に接続さ
れる。入出力プロセツサ28もメインメモリ2に
接続される。入出力プロセツサ28はCPUから
の制御信号に応答して、選択された出力装置を制
御し、若しくはCPUからの信号に応答して、接
続された入力装置からのデータをメインメモリ2
に供給する。入出力プロセツサ28はメインメモ
リ2と、関連入出力装置との間のデータ転送を行
う。
によつてメインメモリ2に接続される。キヤツシ
ユ20はCPU16により排他的に使用されるよ
うに母線18に接続される。第4CPU22はマツ
パー28を介し、母線24によつてメインメモリ
2に接続される。キヤツシユ26はCPU22に
より排他的に使用されるように母線24に接続さ
れる。入出力プロセツサ28もメインメモリ2に
接続される。入出力プロセツサ28はCPUから
の制御信号に応答して、選択された出力装置を制
御し、若しくはCPUからの信号に応答して、接
続された入力装置からのデータをメインメモリ2
に供給する。入出力プロセツサ28はメインメモ
リ2と、関連入出力装置との間のデータ転送を行
う。
第1図システムを確立するためには、メインメ
モリ2にはCPU4,10,16及び22のそれ
ぞれに、与えられた時間に専用される部分が必要
である。しかしながら、メインメモリ2には数個
のCPUで共用される部分もある。これがメイン
メモリの共用部分で、これはキヤツシユメモリを
使用する場合に問題を起しやすい。例えば、
CPU4がメインメモリ2の共用部分の或るアド
レスの情報の呼出しを受け、かつそのデータとア
ドレスをキヤツシユ8に書込んだと仮定する。次
いでCPU22がメインメモリ2の共用部分の上
記と同じアドレスと通じ、その操作によつて該ア
ドレスのデータが変更されたと仮定する。する
と、キヤツシユ8はメインメモリ2のデータのア
ドレスの記録を有しており、もしもCPU4が再
びそのアドレスを呼出すならば、キヤツシユ8内
にそのアドレスを見つけ、そこからデータを読出
すだろうけれども、そのデータはメインメモリ2
内の対応するアドレスの現在のデータと一致しな
いから、正しくないという状態が発生する。この
ような不都合を避けるために、メインメモリが全
てのCPUと関連するキヤツシユにより絶えずモ
ニターされ、データの変更が生じた場合には訂正
措置がとられるような手段を備えるのが一般的で
ある。
モリ2にはCPU4,10,16及び22のそれ
ぞれに、与えられた時間に専用される部分が必要
である。しかしながら、メインメモリ2には数個
のCPUで共用される部分もある。これがメイン
メモリの共用部分で、これはキヤツシユメモリを
使用する場合に問題を起しやすい。例えば、
CPU4がメインメモリ2の共用部分の或るアド
レスの情報の呼出しを受け、かつそのデータとア
ドレスをキヤツシユ8に書込んだと仮定する。次
いでCPU22がメインメモリ2の共用部分の上
記と同じアドレスと通じ、その操作によつて該ア
ドレスのデータが変更されたと仮定する。する
と、キヤツシユ8はメインメモリ2のデータのア
ドレスの記録を有しており、もしもCPU4が再
びそのアドレスを呼出すならば、キヤツシユ8内
にそのアドレスを見つけ、そこからデータを読出
すだろうけれども、そのデータはメインメモリ2
内の対応するアドレスの現在のデータと一致しな
いから、正しくないという状態が発生する。この
ような不都合を避けるために、メインメモリが全
てのCPUと関連するキヤツシユにより絶えずモ
ニターされ、データの変更が生じた場合には訂正
措置がとられるような手段を備えるのが一般的で
ある。
上述した如く、メモリロケーシヨンからデータ
を呼出すCPUの信号は、メインメモリのデータ
の仮想アドレスを含む。仮想アドレスはマツパー
によつてフイジカルアドレスに変換される。フイ
ジカルアドレスはメインメモリ2に対し参照され
る。第1図に示す如く、キヤツシユはメインメモ
リ内のフイジカルアドレスに対応するフイジカル
アドレスに応答する。キヤツシユをマツパーに追
従させ、かつフイジカルアドレスに応答させる
と、動作はさらに遅くなる。なんとなればキヤツ
シユは、キヤツシユがフイジカルアドレスに応答
する前に、仮想アドレスからフイジカルアドレス
への信号変換を待たなければならないからであ
る。
を呼出すCPUの信号は、メインメモリのデータ
の仮想アドレスを含む。仮想アドレスはマツパー
によつてフイジカルアドレスに変換される。フイ
ジカルアドレスはメインメモリ2に対し参照され
る。第1図に示す如く、キヤツシユはメインメモ
リ内のフイジカルアドレスに対応するフイジカル
アドレスに応答する。キヤツシユをマツパーに追
従させ、かつフイジカルアドレスに応答させる
と、動作はさらに遅くなる。なんとなればキヤツ
シユは、キヤツシユがフイジカルアドレスに応答
する前に、仮想アドレスからフイジカルアドレス
への信号変換を待たなければならないからであ
る。
第2図に於て、CPU4′は結合手段30によつ
てマツパー5′に接続されている。キヤツシユ
8′は結合手段30に接続され、CPU4′から発
せられる仮想アドレス信号に直接応答する。キヤ
ツシユ8′がCPU4′によつて排他的に使用され
ている限り、それはCPU4′から発せられる仮想
アドレス信号に応答するように組織され得る。従
つて、メインメモリ2のアクチユアルアドレスを
表わすフイジカルアドレス信号に、キヤツシユが
応答する必要はない。それ故、キヤツシユメモリ
8′は、第1図に示す構成に於て出会う必要な逐
次時間遅れを避けて、マツパー5′と同時に動作
することができる。
てマツパー5′に接続されている。キヤツシユ
8′は結合手段30に接続され、CPU4′から発
せられる仮想アドレス信号に直接応答する。キヤ
ツシユ8′がCPU4′によつて排他的に使用され
ている限り、それはCPU4′から発せられる仮想
アドレス信号に応答するように組織され得る。従
つて、メインメモリ2のアクチユアルアドレスを
表わすフイジカルアドレス信号に、キヤツシユが
応答する必要はない。それ故、キヤツシユメモリ
8′は、第1図に示す構成に於て出会う必要な逐
次時間遅れを避けて、マツパー5′と同時に動作
することができる。
CPUが他の複数のCPUに共用されているメイ
ンメモリの一部をアドレスする時、このアドレス
はマツパー5′内に認識され、キヤツシユ8′に与
える禁止信号を発生する。第2図に示す構造に従
つて変形した第1図の基本的システム構成に於て
は、各CPUはフイジカルアドレス信号にではな
く仮想アドレス信号に応答するキヤツシユを具備
し、かつ第2図に示す如く関連するマツパーに禁
止信号を発生させるであろう。それ故、キヤツシ
ユメモリユニツトのいずれもが、メインメモリの
共用部分のどのアドレスに対しても応答しないで
あろう。このような構成に於ては、メインメモリ
の共用部分は決してキヤツシユ内に書込まれな
い。キヤツシユメモリは関連するCPUに専用さ
れたメインメモリの夫々の部分に対応したアドレ
スとデータを含むにすぎない。従つてメインメモ
リ2の共用部分をCPUとその関連キヤツシユと
が絶えずモニターする必要は無くなり、しかもこ
れによるエラーの発生の可能性もなくなつた。メ
インメモリの共用部分へのアクセスは、通常は数
個のCPUによつて要求されるメモリデータの極
めて小さな部分であるから、「ヒツト」率が著し
く害されることはない。
ンメモリの一部をアドレスする時、このアドレス
はマツパー5′内に認識され、キヤツシユ8′に与
える禁止信号を発生する。第2図に示す構造に従
つて変形した第1図の基本的システム構成に於て
は、各CPUはフイジカルアドレス信号にではな
く仮想アドレス信号に応答するキヤツシユを具備
し、かつ第2図に示す如く関連するマツパーに禁
止信号を発生させるであろう。それ故、キヤツシ
ユメモリユニツトのいずれもが、メインメモリの
共用部分のどのアドレスに対しても応答しないで
あろう。このような構成に於ては、メインメモリ
の共用部分は決してキヤツシユ内に書込まれな
い。キヤツシユメモリは関連するCPUに専用さ
れたメインメモリの夫々の部分に対応したアドレ
スとデータを含むにすぎない。従つてメインメモ
リ2の共用部分をCPUとその関連キヤツシユと
が絶えずモニターする必要は無くなり、しかもこ
れによるエラーの発生の可能性もなくなつた。メ
インメモリの共用部分へのアクセスは、通常は数
個のCPUによつて要求されるメモリデータの極
めて小さな部分であるから、「ヒツト」率が著し
く害されることはない。
前述した如く、従来のキヤツシユメモリ構成に
於て出会う困難の1つは、個々のCPUのマルチ
ブルプログラミングに含まれる困難である。キヤ
ツシユがCPUそれ自体と同一視されるようにな
つているとしたならば、そのCPUがオペレーテ
イングシステム内の異なるプログラムに切替える
たびに、キヤツシユ内に書込まれたデータは新た
なプログラムによつては用いられないであろう。
なぜなら、CPU内のプログラムはまれにしかデ
ータを共用しないからである。それ故、新たなプ
ログラムに対してCPUに要求されるデータの各
ビツトは、メインメモリから修正させられ、かつ
次の使用のためにキヤツシユ内に書込まれる必要
があろう。キヤツシユメモリに新たなプログラム
に必要なワーキングデータが負荷されるまでは、
全てのデータは低速のメインメモリから得られな
ければならない。
於て出会う困難の1つは、個々のCPUのマルチ
ブルプログラミングに含まれる困難である。キヤ
ツシユがCPUそれ自体と同一視されるようにな
つているとしたならば、そのCPUがオペレーテ
イングシステム内の異なるプログラムに切替える
たびに、キヤツシユ内に書込まれたデータは新た
なプログラムによつては用いられないであろう。
なぜなら、CPU内のプログラムはまれにしかデ
ータを共用しないからである。それ故、新たなプ
ログラムに対してCPUに要求されるデータの各
ビツトは、メインメモリから修正させられ、かつ
次の使用のためにキヤツシユ内に書込まれる必要
があろう。キヤツシユメモリに新たなプログラム
に必要なワーキングデータが負荷されるまでは、
全てのデータは低速のメインメモリから得られな
ければならない。
第3図に示す本発明の一実施例に於て、上述の
問題は除去されている。CPU4′は結合手段30
によつてマツパー5′に接続されている。第2図
の結合手段30に相当する結合手段30は2つの
部分30aと30bとから成る。部分30aは
CPU4′から仮想アドレスをマツパー5′に伝送
する。部分30bはコンピユータシステムの数個
のプログラムのどれが動作中であるかを示プログ
ラムアイデンテイフイケーシヨンナンバーを
CPUからマツパー5′に伝送する。これら2つの
部分により伝送される信号はマツパー5′で解読
され、マツパー5′はフイジカルアドレス信号を
発生し、出力結合手段6′を経てメインメモリ
2′に伝送する。
問題は除去されている。CPU4′は結合手段30
によつてマツパー5′に接続されている。第2図
の結合手段30に相当する結合手段30は2つの
部分30aと30bとから成る。部分30aは
CPU4′から仮想アドレスをマツパー5′に伝送
する。部分30bはコンピユータシステムの数個
のプログラムのどれが動作中であるかを示プログ
ラムアイデンテイフイケーシヨンナンバーを
CPUからマツパー5′に伝送する。これら2つの
部分により伝送される信号はマツパー5′で解読
され、マツパー5′はフイジカルアドレス信号を
発生し、出力結合手段6′を経てメインメモリ
2′に伝送する。
部分30aによつて伝送される仮想アドレス信
号は、さらに結線32を経てキヤツシユ8′に加
えられる。キヤツシユ8′はセツト連想メモリ3
4、キヤツシユ制御論理回路36及びキヤツシユ
データメモリ38を含む。セツト連想メモリ34
はCPU4′のオペレーテイングプログラムの数に
対応した数のセツトに分割される。同様に、キヤ
ツシユメモリ38はセツト連想メモリ34のセツ
トの数に対応するセツトに再分割される。それ
故、CPUのオペレーテイングプログラムの各々
は、それに関連するキヤツシユメモリの専用部分
を有する。第3図に4個の上記セツトが示されて
いる。CPU4′とマツパー5′間の結線30bは
プログラムアイデンテイフイケーシヨンナンバー
を伝送する。このプログラムアイデンテイフイケ
ーシヨンナンバーは結線40を経てセツト連想メ
モリ34とキヤツシユデータメモリ38の夫々の
入力にも印加される。結線32により伝送される
仮想アドレス信号は2つの部分に分割され、下位
部分はセツト連想メモリ34とキヤツシユデータ
メモリ38に印加される。プログラムアイデンテ
イフイケーシヨンナンバーと共に、これらの信号
がセツト連想メモリ34とキヤツシユデータメモ
リ38に印加されると、セツト連想メモリ34は
仮想アドレス信号の下位部分に相当するアドレス
に対するセツトとサブセツトの夫々を走査する。
連想メモリ34の数セツトの出力は複数の比較器
42の夫々の一方の入力端子に印加される。線3
2によつて伝えられる仮想アドレスの上位部分は
比較器42の夫々の他方の入力端子に並列に印加
される。プログラムアイデンテイフイケーシヨン
ナンバーに相当するアドレスのセツトだけがセツ
ト連想メモリでエネイブルされる。このアドレス
のセツトは、仮想アドレスの下位部分によつて走
査されてアドレスが見つけ出される。
号は、さらに結線32を経てキヤツシユ8′に加
えられる。キヤツシユ8′はセツト連想メモリ3
4、キヤツシユ制御論理回路36及びキヤツシユ
データメモリ38を含む。セツト連想メモリ34
はCPU4′のオペレーテイングプログラムの数に
対応した数のセツトに分割される。同様に、キヤ
ツシユメモリ38はセツト連想メモリ34のセツ
トの数に対応するセツトに再分割される。それ
故、CPUのオペレーテイングプログラムの各々
は、それに関連するキヤツシユメモリの専用部分
を有する。第3図に4個の上記セツトが示されて
いる。CPU4′とマツパー5′間の結線30bは
プログラムアイデンテイフイケーシヨンナンバー
を伝送する。このプログラムアイデンテイフイケ
ーシヨンナンバーは結線40を経てセツト連想メ
モリ34とキヤツシユデータメモリ38の夫々の
入力にも印加される。結線32により伝送される
仮想アドレス信号は2つの部分に分割され、下位
部分はセツト連想メモリ34とキヤツシユデータ
メモリ38に印加される。プログラムアイデンテ
イフイケーシヨンナンバーと共に、これらの信号
がセツト連想メモリ34とキヤツシユデータメモ
リ38に印加されると、セツト連想メモリ34は
仮想アドレス信号の下位部分に相当するアドレス
に対するセツトとサブセツトの夫々を走査する。
連想メモリ34の数セツトの出力は複数の比較器
42の夫々の一方の入力端子に印加される。線3
2によつて伝えられる仮想アドレスの上位部分は
比較器42の夫々の他方の入力端子に並列に印加
される。プログラムアイデンテイフイケーシヨン
ナンバーに相当するアドレスのセツトだけがセツ
ト連想メモリでエネイブルされる。このアドレス
のセツトは、仮想アドレスの下位部分によつて走
査されてアドレスが見つけ出される。
アドレスの上位部分は比較器42の他方の入力
端子に印加される仮想アドレスの上位部分に対応
する。一致すると、活性化された比較器42は、
アドレスされたデータが実際にキヤツシユメモリ
に書込まれていることを意味する「ヒツト」を表
わす出力信号を、キヤツシユ制御論理回路に提供
する。キヤツシユ制御論理回路はアドレスの上位
部分のアイデンテイテイにも応答し、アドレスの
上記部分をキヤツシユデータメモリにも伝送す
る。
端子に印加される仮想アドレスの上位部分に対応
する。一致すると、活性化された比較器42は、
アドレスされたデータが実際にキヤツシユメモリ
に書込まれていることを意味する「ヒツト」を表
わす出力信号を、キヤツシユ制御論理回路に提供
する。キヤツシユ制御論理回路はアドレスの上位
部分のアイデンテイテイにも応答し、アドレスの
上記部分をキヤツシユデータメモリにも伝送す
る。
前述した如く、もしもCPUが探し求めている
データがメインメモリの共用部分に書き込まれて
いれば、CPUからの要求は、オペレーテイング
システムによつてセツトされる通り、メインメモ
リの共用部分がアドレスされつつあることを示す
フラグをマツパーによつて与えられるであろう。
このような状況の下では、マツパー5′は線44
に禁止信号を与え、この信号はキヤツシユ制御論
理回路36に印加されて、キヤツシユデータメモ
リのアドレツシングを阻止する。要求されたアド
レスはマツパー5′によつてメインメモリ2′のフ
イジカルアドレスに変換され、線6′を経てメイ
ンメモリ2′に伝送される。このデータはメイン
メモリから読み出され、要求を発しているCPU
に線46を経て伝送される。禁止信号によりキヤ
ツシユデータメモリは禁止されているので、この
データはキヤツシユデータメモリには負荷されな
い。
データがメインメモリの共用部分に書き込まれて
いれば、CPUからの要求は、オペレーテイング
システムによつてセツトされる通り、メインメモ
リの共用部分がアドレスされつつあることを示す
フラグをマツパーによつて与えられるであろう。
このような状況の下では、マツパー5′は線44
に禁止信号を与え、この信号はキヤツシユ制御論
理回路36に印加されて、キヤツシユデータメモ
リのアドレツシングを阻止する。要求されたアド
レスはマツパー5′によつてメインメモリ2′のフ
イジカルアドレスに変換され、線6′を経てメイ
ンメモリ2′に伝送される。このデータはメイン
メモリから読み出され、要求を発しているCPU
に線46を経て伝送される。禁止信号によりキヤ
ツシユデータメモリは禁止されているので、この
データはキヤツシユデータメモリには負荷されな
い。
他方、もしも要求されたデータがメインメモリ
の共用部分に存在せず、かつキヤツシユ内に「ヒ
ツト」が示されているならば、上記データは線4
8によつてキヤツシユデータメモリから読み出さ
れるであろう。同様に、もし要求されたアドレス
とデータがメインメモリの共用部分に存在せず、
かつキヤツシユがキヤツシユデータメモリ内に要
求されたデータが書込まれていないことを意味す
る「ミス」を示したならば、マツパーは要求され
たアドレスをメインメモリ2′のフイジカルアド
レスに再び翻訳するであろう。するとこのデータ
は線46を経てメインメモリから読み出され、要
求を発しているCPUに供給される。しかしなが
ら、同時に、要求されたデータは、要求を発して
いるCPUによつて発せられた仮想アドレスと共
に、キヤツシユデータメモリに書込まれる。現在
の技術によれば、もしもキヤツシユの特定の部分
が完全に負荷されているときは、新しいデータに
より、例えば最も古くに使われたデータは置換さ
れる。この目的のために、セツト連想メモリ34
はその中にトランザクシヨンのトラツクを保持す
るメモリ部35を含み、結合手段37によつてキ
ヤツシユ制御論理回路36と通信する。
の共用部分に存在せず、かつキヤツシユ内に「ヒ
ツト」が示されているならば、上記データは線4
8によつてキヤツシユデータメモリから読み出さ
れるであろう。同様に、もし要求されたアドレス
とデータがメインメモリの共用部分に存在せず、
かつキヤツシユがキヤツシユデータメモリ内に要
求されたデータが書込まれていないことを意味す
る「ミス」を示したならば、マツパーは要求され
たアドレスをメインメモリ2′のフイジカルアド
レスに再び翻訳するであろう。するとこのデータ
は線46を経てメインメモリから読み出され、要
求を発しているCPUに供給される。しかしなが
ら、同時に、要求されたデータは、要求を発して
いるCPUによつて発せられた仮想アドレスと共
に、キヤツシユデータメモリに書込まれる。現在
の技術によれば、もしもキヤツシユの特定の部分
が完全に負荷されているときは、新しいデータに
より、例えば最も古くに使われたデータは置換さ
れる。この目的のために、セツト連想メモリ34
はその中にトランザクシヨンのトラツクを保持す
るメモリ部35を含み、結合手段37によつてキ
ヤツシユ制御論理回路36と通信する。
第4図はキヤツシユ制御論理回路36の詳細を
示す。比較器42の出力は対応する線を経てエン
コーダ50の入力端子に印加される。4個の比較
器42は別個のユニツトとして示されているの
で、比較器42の各々はマルチプルビツト出力を
発生するマルチプルビツト比較を表わしているこ
とは明らかであろう。エンコーダ50の入力端子
に印加された比較器の出力は「ヒツト」が生じる
と、CPU4′からの仮想アドレスの上位部分を表
わす部分にエンコードされる。このアドレス情報
は線32によつてキヤツシユデータメモリ38に
印加されたアドレスの下位部分と線40を経て加
えられたプログラムアイデンテイフイケーシヨン
ナンバーと組合される。比較器42の出力はオア
ゲート52の入力端子に印加され、オアゲート5
2の出力はアンドゲート54の一方の入力端子に
印加される。アンドゲート54の他方の入力端子
は線44を経てマツパー5′の出力端子に接続さ
れる。線44は要求を発しているCPUがメイン
メモリの共用部分をアドレスしつつある時はいつ
でもマツパーから禁止信号を運ぶ。それ故、キヤ
ツシユデータメモリ38のアドレツシングは、マ
ツパーからの禁止信号でアンドゲート54が禁止
されていない限り、オアゲート52とアンドゲー
ト54を経て与えられる比較器42のいずれの
「ヒツト」信号によつてもエネイブルされる。
示す。比較器42の出力は対応する線を経てエン
コーダ50の入力端子に印加される。4個の比較
器42は別個のユニツトとして示されているの
で、比較器42の各々はマルチプルビツト出力を
発生するマルチプルビツト比較を表わしているこ
とは明らかであろう。エンコーダ50の入力端子
に印加された比較器の出力は「ヒツト」が生じる
と、CPU4′からの仮想アドレスの上位部分を表
わす部分にエンコードされる。このアドレス情報
は線32によつてキヤツシユデータメモリ38に
印加されたアドレスの下位部分と線40を経て加
えられたプログラムアイデンテイフイケーシヨン
ナンバーと組合される。比較器42の出力はオア
ゲート52の入力端子に印加され、オアゲート5
2の出力はアンドゲート54の一方の入力端子に
印加される。アンドゲート54の他方の入力端子
は線44を経てマツパー5′の出力端子に接続さ
れる。線44は要求を発しているCPUがメイン
メモリの共用部分をアドレスしつつある時はいつ
でもマツパーから禁止信号を運ぶ。それ故、キヤ
ツシユデータメモリ38のアドレツシングは、マ
ツパーからの禁止信号でアンドゲート54が禁止
されていない限り、オアゲート52とアンドゲー
ト54を経て与えられる比較器42のいずれの
「ヒツト」信号によつてもエネイブルされる。
時々、メインメモリ2の非共用データ部は、例
えば第1図の入出力プロセツサ28を介して与え
られるデータによつてCPU4′の制御の下に変更
されたり、或いは一群のアドレスのステータスが
非共用から共用へ変更されることがある。入出力
プロセツサ28は、データ端末、テープ若しくは
カードリーダなどの入出力装置とメモリとの間の
情報転送を制御する。もし、メモリ2の変更され
た部分からのデータがキヤツシユデータメモリ内
に変更される前に書込まれていたならば、キヤツ
シユメモリに書込まれたこのデータは間違いであ
ろう。従つて、非共用から共用に移つたメインメ
モリの部分に相当するキヤツシユメモリの部分を
パージする手段が設けられる。このパージを実施
するためには、パージ制御論理回路39はCPU
4′からの制御信号に応答し、セツト連想メモリ
34を経て行うキヤツシユデータメモリのパージ
を制御する。CPU4′はメインメモリ内で変更さ
れたデータのアドレスに相当するアドレスのレン
ジをアイデンテイフアイする。CPUは、また、
線41を経てセツト連想メモリに信号を伝送す
る。この信号はパージ動作が呼出されていること
をアイデンテイフアイする。次いでCPUはキヤ
ツシユ内にアドレスの走査信号を発生し、限定さ
れたレンジ内にあるアドレスが発生する時は、こ
れらのアドレスはセツト連想メモリからパージさ
れる。さらに、上記レンジ内のアドレスがCPU
から呼出されると、「ミス」が発生し、修正デー
タがメインメモリから読み出され、かつ「ミス」
ルーチンに従つて、キヤツシユ内に書込まれる。
えば第1図の入出力プロセツサ28を介して与え
られるデータによつてCPU4′の制御の下に変更
されたり、或いは一群のアドレスのステータスが
非共用から共用へ変更されることがある。入出力
プロセツサ28は、データ端末、テープ若しくは
カードリーダなどの入出力装置とメモリとの間の
情報転送を制御する。もし、メモリ2の変更され
た部分からのデータがキヤツシユデータメモリ内
に変更される前に書込まれていたならば、キヤツ
シユメモリに書込まれたこのデータは間違いであ
ろう。従つて、非共用から共用に移つたメインメ
モリの部分に相当するキヤツシユメモリの部分を
パージする手段が設けられる。このパージを実施
するためには、パージ制御論理回路39はCPU
4′からの制御信号に応答し、セツト連想メモリ
34を経て行うキヤツシユデータメモリのパージ
を制御する。CPU4′はメインメモリ内で変更さ
れたデータのアドレスに相当するアドレスのレン
ジをアイデンテイフアイする。CPUは、また、
線41を経てセツト連想メモリに信号を伝送す
る。この信号はパージ動作が呼出されていること
をアイデンテイフアイする。次いでCPUはキヤ
ツシユ内にアドレスの走査信号を発生し、限定さ
れたレンジ内にあるアドレスが発生する時は、こ
れらのアドレスはセツト連想メモリからパージさ
れる。さらに、上記レンジ内のアドレスがCPU
から呼出されると、「ミス」が発生し、修正デー
タがメインメモリから読み出され、かつ「ミス」
ルーチンに従つて、キヤツシユ内に書込まれる。
第5図はパージ制御論理回路39の一実施例で
ある。第1結線手段60はパージされるべきアド
レスのレンジの上限を表わす信号をCPU4′から
伝送する。第2結線手段62はパージされるべき
アドレスのレンジの下限を表わす信号を伝送す
る。パージ論理回路39は第1の比較器64の組
を含む。比較器64は図に於ては4個示されてい
る。比較器64はそれぞれセツト連想メモリ34
の大きな一区分に対応する。各比較器64の一方
の入力端子はパージレンジの上限値を表わす信号
を伝送する結線60が接続される。各比較器64
の他方の入力端子は、CPUからの走査アドレス
の最上位の数字を伝送する線32に接続される。
比較器64はパージレンジの上限値が線32によ
つて供給されたアドレスよりも小さい場合に、出
力信号を発生する。この出力信号は複数のインバ
ータ66の対応する1つによりインバートされ
る。各インバータ66の出力端子は複数のアンド
ゲート68の対応する1つの一方の入力端子に接
続される。第2の比較器70の組の夫々の一方の
入力端子は、CPUから与えられる信号レンジの
下限値を表わす信号を伝送する線62に接続され
る。各比較器70の他方の入力端子はアドレスの
最上位の数字を伝送する線32に接続される。各
比較器70の出力端子は対応するアンドゲートの
他方の入力端子に印加される。比較器70はもし
線62を経て伝送された下限値信号が線32によ
つて伝送されたアドレスを表わす信号と等しい
か、又は小さいならば、出力信号を発生する。
ある。第1結線手段60はパージされるべきアド
レスのレンジの上限を表わす信号をCPU4′から
伝送する。第2結線手段62はパージされるべき
アドレスのレンジの下限を表わす信号を伝送す
る。パージ論理回路39は第1の比較器64の組
を含む。比較器64は図に於ては4個示されてい
る。比較器64はそれぞれセツト連想メモリ34
の大きな一区分に対応する。各比較器64の一方
の入力端子はパージレンジの上限値を表わす信号
を伝送する結線60が接続される。各比較器64
の他方の入力端子は、CPUからの走査アドレス
の最上位の数字を伝送する線32に接続される。
比較器64はパージレンジの上限値が線32によ
つて供給されたアドレスよりも小さい場合に、出
力信号を発生する。この出力信号は複数のインバ
ータ66の対応する1つによりインバートされ
る。各インバータ66の出力端子は複数のアンド
ゲート68の対応する1つの一方の入力端子に接
続される。第2の比較器70の組の夫々の一方の
入力端子は、CPUから与えられる信号レンジの
下限値を表わす信号を伝送する線62に接続され
る。各比較器70の他方の入力端子はアドレスの
最上位の数字を伝送する線32に接続される。各
比較器70の出力端子は対応するアンドゲートの
他方の入力端子に印加される。比較器70はもし
線62を経て伝送された下限値信号が線32によ
つて伝送されたアドレスを表わす信号と等しい
か、又は小さいならば、出力信号を発生する。
換言すれば、線32によつてCPUから伝送さ
れたアドレスを表わす信号が、線60によつて与
えられる上限値と線62によつて与えられる下限
値との間にあれば、各アンドゲート68はそれぞ
れ出力信号を発生する。アンドゲート68の出力
は指示されたアドレスのパージを行うためにセツ
ト連想メモリ34の対応するセグメントに戻さ
れ、CPUから線40を介して与えられるプログ
ラムナンバー信号によつてエネイブルされていた
セグメントだけがパージ信号により影響される。
それ故、CPU4′で開始させられたパージルーチ
ンは外部装置によつて変更させられたメインメモ
リのアドレスに相当するレンジのアドレスをキヤ
ツシユから効果的にパージする。このような状況
下で、CPUがこれらのアドレスの1つを呼出す
と、「ミス」が表示され、正しいデータがメイン
メモリから読み出される。
れたアドレスを表わす信号が、線60によつて与
えられる上限値と線62によつて与えられる下限
値との間にあれば、各アンドゲート68はそれぞ
れ出力信号を発生する。アンドゲート68の出力
は指示されたアドレスのパージを行うためにセツ
ト連想メモリ34の対応するセグメントに戻さ
れ、CPUから線40を介して与えられるプログ
ラムナンバー信号によつてエネイブルされていた
セグメントだけがパージ信号により影響される。
それ故、CPU4′で開始させられたパージルーチ
ンは外部装置によつて変更させられたメインメモ
リのアドレスに相当するレンジのアドレスをキヤ
ツシユから効果的にパージする。このような状況
下で、CPUがこれらのアドレスの1つを呼出す
と、「ミス」が表示され、正しいデータがメイン
メモリから読み出される。
以上説明した如く、本発明に従つてシステム内
の複数のCPUの夫々に1個のキヤツシユメモリ
を関連させて設けた計算機システムが提供され
た。各キヤツシユはCPUからキヤツシユとマツ
パーに対し並列に与えられる仮想アドレス信号に
応答する。マツパーは仮想アドレスをフイジカル
アドレスに変換してメインメモリのアドレツシン
グを行う。キヤツシユは複数の区分に再分割され
る。キヤツシユの各区分はマルチプログラム
CPUの特定のプログラムに対応する。計算機シ
ステムは複数のCPUで共用されるメインメモリ
のアドレスをアイデンテイフアイする手段を具備
する。アイデンテイフアイが行われたことを示す
信号は、メインメモリの共用部分のアドレスとデ
ータをキヤツシユ内に書込むことを禁止するため
に用いられる。計算機システムは、更に、キヤツ
シユのデータをパージする手段を備えている。
の複数のCPUの夫々に1個のキヤツシユメモリ
を関連させて設けた計算機システムが提供され
た。各キヤツシユはCPUからキヤツシユとマツ
パーに対し並列に与えられる仮想アドレス信号に
応答する。マツパーは仮想アドレスをフイジカル
アドレスに変換してメインメモリのアドレツシン
グを行う。キヤツシユは複数の区分に再分割され
る。キヤツシユの各区分はマルチプログラム
CPUの特定のプログラムに対応する。計算機シ
ステムは複数のCPUで共用されるメインメモリ
のアドレスをアイデンテイフアイする手段を具備
する。アイデンテイフアイが行われたことを示す
信号は、メインメモリの共用部分のアドレスとデ
ータをキヤツシユ内に書込むことを禁止するため
に用いられる。計算機システムは、更に、キヤツ
シユのデータをパージする手段を備えている。
本願発明の効果について述べると、
仮想アドレスに直接に応答するキヤツシユメモ
リを採用することにより計算機システムの総合動
作速度が向上することにある。
リを採用することにより計算機システムの総合動
作速度が向上することにある。
本来、キヤツシユメモリの概念は、メインメモ
リがアドレスされる殆どの場合に、そのアドレス
されたデータは、キヤツシユメモリに見出される
−すなわち“ヒツト”する−という点に基づく。
したがつて、本願発明の構成をとることにより、
メインメモリをアドレスする殆どの場合に、仮想
アドレスからフイジカルアドレスにほん訳する時
間を必要としないのでシステムの総合速度が大幅
に向上される。
リがアドレスされる殆どの場合に、そのアドレス
されたデータは、キヤツシユメモリに見出される
−すなわち“ヒツト”する−という点に基づく。
したがつて、本願発明の構成をとることにより、
メインメモリをアドレスする殆どの場合に、仮想
アドレスからフイジカルアドレスにほん訳する時
間を必要としないのでシステムの総合速度が大幅
に向上される。
さらに、マツパーとキヤツシユメモリが並列に
接続され、両者ともに仮想アドレスに応答するの
で、マツパーが仮想アドレスをフイジカルアドレ
スにほん訳している間に、同時にキヤツシユメモ
リは仮想アドレスを求めてその連想メモリを走査
する。そのため、求めるアドレスがキヤツシユメ
モリに見出されない−すなわち“ミス”した−場
合、ほん訳されたアドレスがメインメモリに直ち
にアクセスできるように準備されている。
接続され、両者ともに仮想アドレスに応答するの
で、マツパーが仮想アドレスをフイジカルアドレ
スにほん訳している間に、同時にキヤツシユメモ
リは仮想アドレスを求めてその連想メモリを走査
する。そのため、求めるアドレスがキヤツシユメ
モリに見出されない−すなわち“ミス”した−場
合、ほん訳されたアドレスがメインメモリに直ち
にアクセスできるように準備されている。
その結果、頻度は少ない“ミス”状態の場合に
も、アドレスほん訳と連想メモリの走査の順次シ
ーケンス動作を避けられるので、メインメモリへ
のアクセス時間が短縮される。
も、アドレスほん訳と連想メモリの走査の順次シ
ーケンス動作を避けられるので、メインメモリへ
のアクセス時間が短縮される。
第1図は共用メモリを有する従来のコンピユー
タシステムのブロツクダイヤグラムである。第2
図は本発明に従つて構成されたキヤツシユメモリ
の一実施例ブロツクダイヤグラムである。第3図
は本発明に従つて構成されたキヤツシユメモリの
詳細な一実施例ブロツクダイヤグラムである。第
4図は第3図ブロツクダイヤグラムの一部を更に
詳細に示したブロツクダイヤグラムである。第5
図は第3図ブロツクダイヤグラムのパージロジツ
クの詳細を示すブロツクダイヤグラムである。 図に於て2,2′:メインメモリ、4,4′:
CPU、5,5′:マツパー、8,8′:キヤツシ
ユメモリ、34:セツト連想メモリ、36:キヤ
ツシユデータメモリ、39:パージ制御回路であ
る。
タシステムのブロツクダイヤグラムである。第2
図は本発明に従つて構成されたキヤツシユメモリ
の一実施例ブロツクダイヤグラムである。第3図
は本発明に従つて構成されたキヤツシユメモリの
詳細な一実施例ブロツクダイヤグラムである。第
4図は第3図ブロツクダイヤグラムの一部を更に
詳細に示したブロツクダイヤグラムである。第5
図は第3図ブロツクダイヤグラムのパージロジツ
クの詳細を示すブロツクダイヤグラムである。 図に於て2,2′:メインメモリ、4,4′:
CPU、5,5′:マツパー、8,8′:キヤツシ
ユメモリ、34:セツト連想メモリ、36:キヤ
ツシユデータメモリ、39:パージ制御回路であ
る。
Claims (1)
- 【特許請求の範囲】 1 下記の要素により構成された計算機システ
ム。 (イ) 1個のメインメモリと複数の中央処理装置。 各中央処理装置はメインメモリに対するアク
セス手段をそれぞれ有しており、メインメモリ
は、フイジカルアドレスでアドレスされ、各中
央処理装置によつてそれぞれ専用される部分
と、さらに中央処理装置により共用される部分
を含む。 (ロ) 複数のマツパーと複数のキヤツシユメモリ。 各マツパーは対応する中央処理装置とメイン
メモリとの間に接続され、中央処理装置からの
仮想アドレス信号をメインメモリを参照するた
めのフイジカルアドレス信号に翻訳する。 各キヤツシユメモリは対応する中央処理装置に
接続されて、該中央処理装置からの仮想アドレス
信号に直接に応答する。 さらに、マツパーは対応する中央処理装置から
メインメモリ内の共用フイジカルアドレスに相当
する仮想アドレス信号を与えられると禁止信号を
発生し、対応するキヤツシユメモリの動作を禁止
する。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/025,679 US4264953A (en) | 1979-03-30 | 1979-03-30 | Virtual cache |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS55132586A JPS55132586A (en) | 1980-10-15 |
JPH0253813B2 true JPH0253813B2 (ja) | 1990-11-19 |
Family
ID=21827456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4058180A Granted JPS55132586A (en) | 1979-03-30 | 1980-03-31 | Computer system |
Country Status (6)
Country | Link |
---|---|
US (1) | US4264953A (ja) |
JP (1) | JPS55132586A (ja) |
CA (1) | CA1139451A (ja) |
DE (1) | DE3011552A1 (ja) |
FR (1) | FR2452745B1 (ja) |
GB (1) | GB2045483B (ja) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55134459A (en) * | 1979-04-06 | 1980-10-20 | Hitachi Ltd | Data processing system |
US4332010A (en) * | 1980-03-17 | 1982-05-25 | International Business Machines Corporation | Cache synonym detection and handling mechanism |
US4386402A (en) * | 1980-09-25 | 1983-05-31 | Bell Telephone Laboratories, Incorporated | Computer with dual vat buffers for accessing a common memory shared by a cache and a processor interrupt stack |
US4433374A (en) * | 1980-11-14 | 1984-02-21 | Sperry Corporation | Cache/disk subsystem with cache bypass |
US4466059A (en) * | 1981-10-15 | 1984-08-14 | International Business Machines Corporation | Method and apparatus for limiting data occupancy in a cache |
US4429363A (en) * | 1981-10-15 | 1984-01-31 | International Business Machines Corporation | Method and apparatus for managing data movements from a backing store to a caching buffer store |
JPS58147879A (ja) * | 1982-02-26 | 1983-09-02 | Toshiba Corp | キヤツシユメモリ制御方式 |
US4504902A (en) * | 1982-03-25 | 1985-03-12 | At&T Bell Laboratories | Cache arrangement for direct memory access block transfer |
GB2127998B (en) * | 1982-09-27 | 1986-06-18 | Data General Corp | Encachement apparatus |
US4594682A (en) * | 1982-12-22 | 1986-06-10 | Ibm Corporation | Vector processing |
DE3380645D1 (en) * | 1982-12-28 | 1989-11-02 | Ibm | Method and apparatus for controlling a single physical cache memory to provide multiple virtual caches |
US4897783A (en) * | 1983-03-14 | 1990-01-30 | Nay Daniel L | Computer memory system |
US4858111A (en) * | 1983-07-29 | 1989-08-15 | Hewlett-Packard Company | Write-back cache system using concurrent address transfers to setup requested address in main memory before dirty miss signal from cache |
US4682281A (en) * | 1983-08-30 | 1987-07-21 | Amdahl Corporation | Data storage unit employing translation lookaside buffer pointer |
US4648030A (en) * | 1983-09-22 | 1987-03-03 | Digital Equipment Corporation | Cache invalidation mechanism for multiprocessor systems |
DE3502147A1 (de) * | 1984-01-23 | 1985-08-08 | Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo | Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung |
US4740889A (en) * | 1984-06-26 | 1988-04-26 | Motorola, Inc. | Cache disable for a data processor |
CA1233271A (en) * | 1984-06-26 | 1988-02-23 | David S. Mothersole | Cache disable for a data processor |
JP2539357B2 (ja) | 1985-03-15 | 1996-10-02 | 株式会社日立製作所 | デ−タ処理装置 |
US4785398A (en) * | 1985-12-19 | 1988-11-15 | Honeywell Bull Inc. | Virtual cache system using page level number generating CAM to access other memories for processing requests relating to a page |
US5029072A (en) * | 1985-12-23 | 1991-07-02 | Motorola, Inc. | Lock warning mechanism for a cache |
US5155829A (en) * | 1986-01-21 | 1992-10-13 | Harry M. Weiss | Memory system and method for protecting the contents of a ROM type memory |
US4755936A (en) * | 1986-01-29 | 1988-07-05 | Digital Equipment Corporation | Apparatus and method for providing a cache memory unit with a write operation utilizing two system clock cycles |
US5237671A (en) * | 1986-05-02 | 1993-08-17 | Silicon Graphics, Inc. | Translation lookaside buffer shutdown scheme |
US5045996A (en) * | 1986-11-12 | 1991-09-03 | Xerox Corporation | Multiprocessor cache memory housekeeping |
US5123101A (en) * | 1986-11-12 | 1992-06-16 | Xerox Corporation | Multiple address space mapping technique for shared memory wherein a processor operates a fault handling routine upon a translator miss |
US5119290A (en) * | 1987-10-02 | 1992-06-02 | Sun Microsystems, Inc. | Alias address support |
JPH0727492B2 (ja) * | 1988-01-21 | 1995-03-29 | 三菱電機株式会社 | 緩衝記憶装置 |
NL8800858A (nl) * | 1988-04-05 | 1989-11-01 | Philips Nv | Rekenmachinesysteem voorzien van een hoofdbus en een tussen processor en geheugen direkt verbonden extra kommunikatielijn. |
EP0343567A3 (en) * | 1988-05-25 | 1991-01-09 | Hitachi, Ltd. | Multi-processing system and cache apparatus for use in the same |
US4905141A (en) * | 1988-10-25 | 1990-02-27 | International Business Machines Corporation | Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification |
US6092153A (en) * | 1988-11-14 | 2000-07-18 | Lass; Stanley Edwin | Subsettable top level cache |
US5159677A (en) * | 1988-11-21 | 1992-10-27 | International Business Machines Corp. | Method and system for storing data in and retrieving data from a non-main storage virtual data space |
JPH0687232B2 (ja) * | 1988-12-19 | 1994-11-02 | 三菱電機株式会社 | データ処理装置 |
US5161219A (en) * | 1989-01-13 | 1992-11-03 | International Business Machines Corporation | Computer system with input/output cache |
CA1325288C (en) * | 1989-02-03 | 1993-12-14 | Ricky C. Hetherington | Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system |
US5067078A (en) * | 1989-04-17 | 1991-11-19 | Motorola, Inc. | Cache which provides status information |
US5150472A (en) * | 1989-10-20 | 1992-09-22 | International Business Machines Corp. | Cache management method and apparatus for shared, sequentially-accessed, data |
US5687354A (en) * | 1990-02-09 | 1997-11-11 | Harry M. Weiss | Memory system and method for protecting the contents of a ROM type memory |
EP0442474B1 (en) * | 1990-02-13 | 1997-07-23 | Sanyo Electric Co., Ltd. | Apparatus and method for controlling cache memory |
GB9008366D0 (en) * | 1990-04-12 | 1990-06-13 | British Aerospace | Data interaction architecture(dia)for real time embedded multi processor systems |
US5014195A (en) * | 1990-05-10 | 1991-05-07 | Digital Equipment Corporation, Inc. | Configurable set associative cache with decoded data element enable lines |
US5511226A (en) * | 1992-08-25 | 1996-04-23 | Intel Corporation | System for generating snoop addresses and conditionally generating source addresses whenever there is no snoop hit, the source addresses lagging behind the corresponding snoop addresses |
US5872998A (en) * | 1995-11-21 | 1999-02-16 | Seiko Epson Corporation | System using a primary bridge to recapture shared portion of a peripheral memory of a peripheral device to provide plug and play capability |
US6745292B1 (en) | 1995-12-08 | 2004-06-01 | Ncr Corporation | Apparatus and method for selectively allocating cache lines in a partitioned cache shared by multiprocessors |
US5974509A (en) * | 1996-05-01 | 1999-10-26 | Sun Microsystems, Inc. | Method for purging unused data from a cache memory |
GB2318657B (en) * | 1997-07-15 | 1998-09-02 | Ncipher Corp Limited | Microprocessor cache consistency |
KR100253328B1 (ko) * | 1997-09-30 | 2000-05-01 | 김영환 | 메모리의 데이터 보호회로 |
US6314492B1 (en) * | 1998-05-27 | 2001-11-06 | International Business Machines Corporation | System and method for server control of client cache |
US8468077B2 (en) * | 2005-01-14 | 2013-06-18 | Taxnet Inc. | Distributed tax-return-preparation processing |
KR102388985B1 (ko) * | 2014-11-04 | 2022-04-20 | 부트벨딩 에스아 | 물체의 상호 접합 |
US10203893B2 (en) * | 2015-10-22 | 2019-02-12 | American Megatrends, Inc. | Memory channel storage device detection |
US10558468B2 (en) | 2015-10-22 | 2020-02-11 | American Megatrends International, Llc | Memory channel storage device initialization |
US10155695B2 (en) | 2016-10-04 | 2018-12-18 | Romeo Ilarian Ciuperca | Manufactured natural pozzolan, improved manufactured natural pozzolan-based cement and method of making and using same |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51150928A (en) * | 1975-06-20 | 1976-12-24 | Hitachi Ltd | Memory system |
JPS531611A (en) * | 1976-06-28 | 1978-01-09 | Kobe Steel Ltd | Production of forged product by powder metallurgy |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR10582E (fr) * | 1970-06-29 | 1909-07-30 | Paul Alexis Victor Lerolle | Jeu de serrures avec passe-partout |
US3693165A (en) * | 1971-06-29 | 1972-09-19 | Ibm | Parallel addressing of a storage hierarchy in a data processing system using virtual addressing |
US3786427A (en) * | 1971-06-29 | 1974-01-15 | Ibm | Dynamic address translation reversed |
US3848234A (en) * | 1973-04-04 | 1974-11-12 | Sperry Rand Corp | Multi-processor system with multiple cache memories |
US3979726A (en) * | 1974-04-10 | 1976-09-07 | Honeywell Information Systems, Inc. | Apparatus for selectively clearing a cache store in a processor having segmentation and paging |
US4020466A (en) * | 1974-07-05 | 1977-04-26 | Ibm Corporation | Memory hierarchy system with journaling and copy back |
JPS52149444A (en) * | 1976-06-08 | 1977-12-12 | Fujitsu Ltd | Multiplex virtual space processing data processing system |
US4096573A (en) * | 1977-04-25 | 1978-06-20 | International Business Machines Corporation | DLAT Synonym control means for common portions of all address spaces |
US4136385A (en) * | 1977-03-24 | 1979-01-23 | International Business Machines Corporation | Synonym control means for multiple virtual storage systems |
-
1979
- 1979-03-30 US US06/025,679 patent/US4264953A/en not_active Expired - Lifetime
-
1980
- 1980-02-11 CA CA000345375A patent/CA1139451A/en not_active Expired
- 1980-03-13 GB GB8008569A patent/GB2045483B/en not_active Expired
- 1980-03-26 DE DE19803011552 patent/DE3011552A1/de active Granted
- 1980-03-27 FR FR8006853A patent/FR2452745B1/fr not_active Expired
- 1980-03-31 JP JP4058180A patent/JPS55132586A/ja active Granted
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51150928A (en) * | 1975-06-20 | 1976-12-24 | Hitachi Ltd | Memory system |
JPS531611A (en) * | 1976-06-28 | 1978-01-09 | Kobe Steel Ltd | Production of forged product by powder metallurgy |
Also Published As
Publication number | Publication date |
---|---|
CA1139451A (en) | 1983-01-11 |
DE3011552A1 (de) | 1980-10-09 |
JPS55132586A (en) | 1980-10-15 |
FR2452745A1 (fr) | 1980-10-24 |
DE3011552C2 (ja) | 1989-03-02 |
GB2045483B (en) | 1983-05-11 |
FR2452745B1 (fr) | 1987-10-30 |
GB2045483A (en) | 1980-10-29 |
US4264953A (en) | 1981-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0253813B2 (ja) | ||
KR100190351B1 (ko) | 2-레벨 캐시 메모리의 방해 감소장치 및 방법 | |
US4386402A (en) | Computer with dual vat buffers for accessing a common memory shared by a cache and a processor interrupt stack | |
US4736293A (en) | Interleaved set-associative memory | |
KR920005280B1 (ko) | 고속 캐쉬 시스템 | |
US4400774A (en) | Cache addressing arrangement in a computer system | |
US4471429A (en) | Apparatus for cache clearing | |
US4141067A (en) | Multiprocessor system with cache memory | |
KR920008430B1 (ko) | 처리 판독 메모리 장치 | |
EP0090575B1 (en) | Memory system | |
EP0435475B1 (en) | High-performance frame buffer and cache memory system | |
US5249284A (en) | Method and system for maintaining data coherency between main and cache memories | |
JPS6135584B2 (ja) | ||
JPS6339941B2 (ja) | ||
US5479625A (en) | Ring systolic array system for synchronously performing matrix/neuron computation using data transferred through cyclic shift register connected in cascade of trays | |
US4453216A (en) | Access control system for a channel buffer | |
US5175839A (en) | Storage control system in a computer system for double-writing | |
US4513369A (en) | Information processing system | |
EP0509994B1 (en) | Centralized reference and change table for a multiprocessor virtual memory system | |
US5638537A (en) | Cache system with access mode determination for prioritizing accesses to cache memory | |
US5161219A (en) | Computer system with input/output cache | |
US5557622A (en) | Method and apparatus for parity generation | |
JPH01187650A (ja) | 緩衝記憶装置 | |
JPS60701B2 (ja) | デ−タ処理装置 | |
GB2035632A (en) | Multiprocessor system |