JPH0345407B2 - - Google Patents
Info
- Publication number
- JPH0345407B2 JPH0345407B2 JP58050278A JP5027883A JPH0345407B2 JP H0345407 B2 JPH0345407 B2 JP H0345407B2 JP 58050278 A JP58050278 A JP 58050278A JP 5027883 A JP5027883 A JP 5027883A JP H0345407 B2 JPH0345407 B2 JP H0345407B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- block
- word
- address
- bits
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
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
【発明の詳細な説明】
本発明はメモリシステムに関し、特に主メモリ
と、キヤツシユ(CACHE)メモリと、直接メモ
リアクセスによつて連続する語のブロツクを主メ
モリに書込む手段とを含むメモリシステムに関す
る。
と、キヤツシユ(CACHE)メモリと、直接メモ
リアクセスによつて連続する語のブロツクを主メ
モリに書込む手段とを含むメモリシステムに関す
る。
キヤツシユメモリはデジタル計算機システムの
スループツトを増加させるのに有効である。典型
的なキヤツシユメモリシステムは、小容量である
が比較的高速のメモリを含み、中央処理装置で用
いられた情報を一時的に蓄える。処理装置が主メ
モリを読む場合には、キヤツシユメモリは捜され
ている情報がキヤツシユメモリ内にあるかどうか
を判定するメモリサイクルを実行する。この情報
がキヤツシユメモリ内にあれば、‐‐‐これを“的
中”と呼ぶことにする‐‐‐この情報が処理装置に
送られて、主メモリはアクセスされない。情報が
存在しなければ、‐‐‐これを“失敗”と呼ぶ‐‐‐情
報は主メモリから読み出され、中央処理装置に送
られるとともに、後で必要になつた時のためにキ
ヤツシユメモリにも書込まれる。中央処理装置に
よつて情報を主メモリに書込む時にも、キヤツシ
ユメモリはその情報が存在するかどうかを判定す
るメモリサイクルを実行する。存在すれば、キヤ
ツシユ内の制御ビツト‐‐‐有効ビツトすなわちV
ビツト‐‐‐がリセツトされて、キヤツシユ内の情
報は異つたものになつてしまい、無効であること
が示される。これとは別の方法として、主メモリ
への書込みの時、新しい情報語をキヤツシユメモ
リにも書込むこともできる。
スループツトを増加させるのに有効である。典型
的なキヤツシユメモリシステムは、小容量である
が比較的高速のメモリを含み、中央処理装置で用
いられた情報を一時的に蓄える。処理装置が主メ
モリを読む場合には、キヤツシユメモリは捜され
ている情報がキヤツシユメモリ内にあるかどうか
を判定するメモリサイクルを実行する。この情報
がキヤツシユメモリ内にあれば、‐‐‐これを“的
中”と呼ぶことにする‐‐‐この情報が処理装置に
送られて、主メモリはアクセスされない。情報が
存在しなければ、‐‐‐これを“失敗”と呼ぶ‐‐‐情
報は主メモリから読み出され、中央処理装置に送
られるとともに、後で必要になつた時のためにキ
ヤツシユメモリにも書込まれる。中央処理装置に
よつて情報を主メモリに書込む時にも、キヤツシ
ユメモリはその情報が存在するかどうかを判定す
るメモリサイクルを実行する。存在すれば、キヤ
ツシユ内の制御ビツト‐‐‐有効ビツトすなわちV
ビツト‐‐‐がリセツトされて、キヤツシユ内の情
報は異つたものになつてしまい、無効であること
が示される。これとは別の方法として、主メモリ
への書込みの時、新しい情報語をキヤツシユメモ
リにも書込むこともできる。
直接メモリアクセス(DMA)もデジタル計算
機システムで有用なものである。直接メモリアク
セスはデイスク蓄積装置のような比較的低速のバ
ルク蓄積入出力装置とともに用いられることが多
い。たとえば、読出し又は書込みのような、主メ
モリに対する中央処理装置からの入出力転送要求
があると、DMAは入出力装置と主メモリとの間
での直接データ転送を自動的に行う。DMAは必
要に応じて主メモリのサイクルスチールを行つ
て、要求された転送を完了させ、完了すると多く
の場合中央処理装置へ割込みを発生する。DMA
転送は、処理のためのデータ語を転送するのに適
した単一情報語の転送を行う場合と、連続したブ
ロツク内の複数語を転送する場合がある。ブロツ
ク転送は、たとえばページング方式などで、計算
機のプログラムを入出力装置から主メモリに格納
する時に特に有用である。
機システムで有用なものである。直接メモリアク
セスはデイスク蓄積装置のような比較的低速のバ
ルク蓄積入出力装置とともに用いられることが多
い。たとえば、読出し又は書込みのような、主メ
モリに対する中央処理装置からの入出力転送要求
があると、DMAは入出力装置と主メモリとの間
での直接データ転送を自動的に行う。DMAは必
要に応じて主メモリのサイクルスチールを行つ
て、要求された転送を完了させ、完了すると多く
の場合中央処理装置へ割込みを発生する。DMA
転送は、処理のためのデータ語を転送するのに適
した単一情報語の転送を行う場合と、連続したブ
ロツク内の複数語を転送する場合がある。ブロツ
ク転送は、たとえばページング方式などで、計算
機のプログラムを入出力装置から主メモリに格納
する時に特に有用である。
前記の形式のキヤツシユメモリシステムを直接
メモリアクセスとともに使用すると問題が生じ
る。ブロツクDMA書込み中も、中央処理装置は
キヤツシユからアクセスされる命令の実行を自由
に行えることが望ましい。しかし、実際には
DMA動作によつて相当な数のキヤツシユメモリ
サイクルが使われてしまう。ブロツクの各語が
DMAによつて主メモリに転送される度に、キヤ
ツシユメモリは無効化メモリサイクルを実行し
て、新しく主メモリに書込まれた語がキヤツシユ
メモリに存在するか否かを判定し、存在すればそ
の有効ビツトをリセツトしなければならない。こ
の無効化サイクル中は、中央処理装置はキヤツシ
ユをアクセスできず、プログラムの実行は一時的
に中断される。もしブロツク内の語数が多いと、
要求されるキヤツシユサイクルも多くなる。中央
処理装置で使用できるキヤツシユメモリサイクル
の数を増加させるために、ブロツクDMA転送に
必要なキヤツシユ無効化メモリサイクルの数を減
らす必要がある。
メモリアクセスとともに使用すると問題が生じ
る。ブロツクDMA書込み中も、中央処理装置は
キヤツシユからアクセスされる命令の実行を自由
に行えることが望ましい。しかし、実際には
DMA動作によつて相当な数のキヤツシユメモリ
サイクルが使われてしまう。ブロツクの各語が
DMAによつて主メモリに転送される度に、キヤ
ツシユメモリは無効化メモリサイクルを実行し
て、新しく主メモリに書込まれた語がキヤツシユ
メモリに存在するか否かを判定し、存在すればそ
の有効ビツトをリセツトしなければならない。こ
の無効化サイクル中は、中央処理装置はキヤツシ
ユをアクセスできず、プログラムの実行は一時的
に中断される。もしブロツク内の語数が多いと、
要求されるキヤツシユサイクルも多くなる。中央
処理装置で使用できるキヤツシユメモリサイクル
の数を増加させるために、ブロツクDMA転送に
必要なキヤツシユ無効化メモリサイクルの数を減
らす必要がある。
ブロツクDMA動作は、各処理装置が独自のキ
ヤツシユメモリシステムを持つマルチプロセツサ
システムに特に大きな影響を与える。ブロツク
DMA書込み中、すべてのキヤツシユが無効化メ
モリサイクルを行う必要があり、各処理装置の動
作を妨げ、マルチプロセツサシステムの全体のス
ループツトを減少させてしまう。
ヤツシユメモリシステムを持つマルチプロセツサ
システムに特に大きな影響を与える。ブロツク
DMA書込み中、すべてのキヤツシユが無効化メ
モリサイクルを行う必要があり、各処理装置の動
作を妨げ、マルチプロセツサシステムの全体のス
ループツトを減少させてしまう。
ブロツクDMA書込み中における中央処理装置
の効率低減の問題は、本発明を使用することによ
つて大幅に改善することができる。
の効率低減の問題は、本発明を使用することによ
つて大幅に改善することができる。
本発明の1つの特徴に従えば、主メモリと、キ
ヤツシユメモリと、直性メモリアクセスによつて
連続する語のブロツクを主メモリに書込む手段
と、該手段に応動してキヤツシユメモリ内の語の
すべてを同時に無効化する手段とを含むメモリシ
ステムが提供されている。
ヤツシユメモリと、直性メモリアクセスによつて
連続する語のブロツクを主メモリに書込む手段
と、該手段に応動してキヤツシユメモリ内の語の
すべてを同時に無効化する手段とを含むメモリシ
ステムが提供されている。
本発明の他の特徴に従えば、書込みを行うべき
メモリ位置の物理アドレスを蓄えるためのアドレ
スレジスタを含み、アドレスレジスタの下位アド
レスビツトによつてアドレスされるメモリ位置の
内容を蓄えるための内容メモリを含み、内容メモ
リに蓄えられたn語のブロツクの上位タグアドレ
スビツトとn個の有効ビツトとを蓄えるための制
御メモリを含み、有効ビツトの各々とが内容メモ
リに蓄えられたn語のそれぞれに対応しており、
制御メモリがアドレスレジスタの語アドレスの第
1数の下位ビツトによつてアドレスされ、アドレ
スレジスタの上位アドレスビツトと制御メモリの
タグアドレスビツトとの一致を検出してメモリ位
置におけるブロツク内の任意の語が内容メモリ内
に存在することを判定する手段を含み、該判定す
る手段に応動してアドレスレジスタの第2の数の
下位アドレスビツトをデコードし、デコードされ
た数と制御メモリから得られるn個の有効ビツト
との一致を検出して語の対応する1つが内容メモ
リ内に存在することを決定する手段を含み、該判
定する手段に応動し、該メモリ位置におけるブロ
ツク内の語が内容メモリ内に存在する時に制御メ
モリ内におけるメモリ位置のブロツクのn個の有
効ビツトを予め定めた状態に同時にリセツトする
手段を含むキヤツシユメモリシステムが提供され
ている。
メモリ位置の物理アドレスを蓄えるためのアドレ
スレジスタを含み、アドレスレジスタの下位アド
レスビツトによつてアドレスされるメモリ位置の
内容を蓄えるための内容メモリを含み、内容メモ
リに蓄えられたn語のブロツクの上位タグアドレ
スビツトとn個の有効ビツトとを蓄えるための制
御メモリを含み、有効ビツトの各々とが内容メモ
リに蓄えられたn語のそれぞれに対応しており、
制御メモリがアドレスレジスタの語アドレスの第
1数の下位ビツトによつてアドレスされ、アドレ
スレジスタの上位アドレスビツトと制御メモリの
タグアドレスビツトとの一致を検出してメモリ位
置におけるブロツク内の任意の語が内容メモリ内
に存在することを判定する手段を含み、該判定す
る手段に応動してアドレスレジスタの第2の数の
下位アドレスビツトをデコードし、デコードされ
た数と制御メモリから得られるn個の有効ビツト
との一致を検出して語の対応する1つが内容メモ
リ内に存在することを決定する手段を含み、該判
定する手段に応動し、該メモリ位置におけるブロ
ツク内の語が内容メモリ内に存在する時に制御メ
モリ内におけるメモリ位置のブロツクのn個の有
効ビツトを予め定めた状態に同時にリセツトする
手段を含むキヤツシユメモリシステムが提供され
ている。
本発明の一実施例に従えば、主メモリに対する
ブロツクDMA書込みの開始時において、キヤツ
シユメモリはこのブロツク内の任意の語がキヤツ
シユ内に存在するかどうかを判定するための単一
の無効化メモリサイクルを実行する。もし存在す
れば、キヤツシユ内の1ブロツク全体が単一のサ
イクル内に無効化される。このブロツク全体のす
べての有効ビツトが同時にリセツトされ、ブロツ
ク転送において後続する語は無効化サイクルを必
要としない。この方法により、キヤツシユメモリ
無効化サイクルの数は、ブロツク内の語の数に等
しい数から、1又は2、3サイクルにまで減少さ
れた。よつて、16語ブロツクのシステムでは、ブ
ロツクDMA書込み中における中央処理装置の効
率低下は、ほぼ16サイクルからほぼ1サイクルに
まで減少させることができ、中央処理装置の各々
について16対1の改善をはかることができる。
ブロツクDMA書込みの開始時において、キヤツ
シユメモリはこのブロツク内の任意の語がキヤツ
シユ内に存在するかどうかを判定するための単一
の無効化メモリサイクルを実行する。もし存在す
れば、キヤツシユ内の1ブロツク全体が単一のサ
イクル内に無効化される。このブロツク全体のす
べての有効ビツトが同時にリセツトされ、ブロツ
ク転送において後続する語は無効化サイクルを必
要としない。この方法により、キヤツシユメモリ
無効化サイクルの数は、ブロツク内の語の数に等
しい数から、1又は2、3サイクルにまで減少さ
れた。よつて、16語ブロツクのシステムでは、ブ
ロツクDMA書込み中における中央処理装置の効
率低下は、ほぼ16サイクルからほぼ1サイクルに
まで減少させることができ、中央処理装置の各々
について16対1の改善をはかることができる。
尚、同時に本発明のキヤツシユメモリは単一の
書込まれた語のみをキヤツシユにおいて無効化す
ることにより単一語メモリ書込み操作に応答する
能力を維持し、それにより書込まれている語と同
じブロツク内の他の語のキヤツシユにおける有効
性即ちアクセス可能性を保つている。
書込まれた語のみをキヤツシユにおいて無効化す
ることにより単一語メモリ書込み操作に応答する
能力を維持し、それにより書込まれている語と同
じブロツク内の他の語のキヤツシユにおける有効
性即ちアクセス可能性を保つている。
以下に、図面を参照して本発明の一実施例につ
いて説明する。
いて説明する。
第1図は、本発明が有利に利用できる分野であ
る、メモリシステムを示している。中央処理装置
10は、命令及びデータのために、バス12を用
いて主メモリ13にアクセスする。処理装置10
による主メモリのアクセスの回数及びバス専有率
を下げるために、局部キヤツシユメモリ11が用
意されている。主メモリから得られる情報語は一
時的にキヤツシユメモリに蓄えられる。処理装置
10から主メモリに対する読出し要求は、キヤツ
シユメモリ11で解読され、キヤツシユメモリは
要求された読出しアドレスの連想探索を行う。読
出す情報がキヤツシユメモリに存在すれば(“的
中”)、この比較的小さいが高速のキヤツシユメモ
リから処理装置10に対し要求された情報が高速
に送り出され、主メモリのアクセスは行われず、
またバス12も使用されない。主メモリのアクセ
ス時間は800ナノ秒程度であるのに対し、キヤツ
シユメモリのアクセス時間は200ナノ秒程度であ
り、キヤツシユによる処理装置動作によりほぼ4
対1の速度向上が実現される。
る、メモリシステムを示している。中央処理装置
10は、命令及びデータのために、バス12を用
いて主メモリ13にアクセスする。処理装置10
による主メモリのアクセスの回数及びバス専有率
を下げるために、局部キヤツシユメモリ11が用
意されている。主メモリから得られる情報語は一
時的にキヤツシユメモリに蓄えられる。処理装置
10から主メモリに対する読出し要求は、キヤツ
シユメモリ11で解読され、キヤツシユメモリは
要求された読出しアドレスの連想探索を行う。読
出す情報がキヤツシユメモリに存在すれば(“的
中”)、この比較的小さいが高速のキヤツシユメモ
リから処理装置10に対し要求された情報が高速
に送り出され、主メモリのアクセスは行われず、
またバス12も使用されない。主メモリのアクセ
ス時間は800ナノ秒程度であるのに対し、キヤツ
シユメモリのアクセス時間は200ナノ秒程度であ
り、キヤツシユによる処理装置動作によりほぼ4
対1の速度向上が実現される。
デイスク装置14のような比較的低速の蓄積装
置への入出力は、直接メモリアクセス15によつ
て行われる。処理装置10からの要求に応動し、
直接メモリアクセス15により、単一の語又は1
つのブロツク‐‐‐本実施例では16ケの連続した語
からなる‐‐‐が、これ以降処理装置10の介在を
受けることなく、データバス12を用いてデイス
クから直接主メモリ13に書き込まれる。直接メ
モリアクセス15は転送を行うためにバス及びメ
モリサイクルを“スチール”して主メモリの読出
し及び書込みを自動的に行う。
置への入出力は、直接メモリアクセス15によつ
て行われる。処理装置10からの要求に応動し、
直接メモリアクセス15により、単一の語又は1
つのブロツク‐‐‐本実施例では16ケの連続した語
からなる‐‐‐が、これ以降処理装置10の介在を
受けることなく、データバス12を用いてデイス
クから直接主メモリ13に書き込まれる。直接メ
モリアクセス15は転送を行うためにバス及びメ
モリサイクルを“スチール”して主メモリの読出
し及び書込みを自動的に行う。
主メモリへの書込みが行われる度に、キヤツシ
ユメモリ11がチエツクされ、キヤツシユと主メ
モリの内容が矛盾しないように更新される。もし
キヤツシユメモリが、書込まれた語のコピーを蓄
えていれば、キヤツシユ内の適切な制御ビツトを
リセツトすることにより、キヤツシユ内のそのコ
ピーには無効のマークがつけられる。この無効化
のためにキヤツシユメモリのサイクルを必要と
し、よつて一時的にキヤツシユメモリの処理装置
10による利用が妨げられる。16語を主メモリの
16ケの連続する位置に書込むブロツク直接メモリ
アクセスにおいては、従来技術の方法を用いる
と、キヤツシユメモリ11と処理装置10との間
で合計16キヤツシユサイクルの間妨害をうける。
キヤツシユメモリは、本実施例では、主メモリよ
りも4倍速く動作しているため、無効化のために
必要なキヤツシユサイクル自体は連続的ではな
く、飛びとびであるため、その中間は処理装置の
アクセスサイクルとして使用できる。しかし、合
計で16個のサイクルを必要とすることには変りは
ない。
ユメモリ11がチエツクされ、キヤツシユと主メ
モリの内容が矛盾しないように更新される。もし
キヤツシユメモリが、書込まれた語のコピーを蓄
えていれば、キヤツシユ内の適切な制御ビツトを
リセツトすることにより、キヤツシユ内のそのコ
ピーには無効のマークがつけられる。この無効化
のためにキヤツシユメモリのサイクルを必要と
し、よつて一時的にキヤツシユメモリの処理装置
10による利用が妨げられる。16語を主メモリの
16ケの連続する位置に書込むブロツク直接メモリ
アクセスにおいては、従来技術の方法を用いる
と、キヤツシユメモリ11と処理装置10との間
で合計16キヤツシユサイクルの間妨害をうける。
キヤツシユメモリは、本実施例では、主メモリよ
りも4倍速く動作しているため、無効化のために
必要なキヤツシユサイクル自体は連続的ではな
く、飛びとびであるため、その中間は処理装置の
アクセスサイクルとして使用できる。しかし、合
計で16個のサイクルを必要とすることには変りは
ない。
この影響は、第1図の16に示したように、複
数の処理装置とキヤツシユメモリが用いられてい
る時に特に大きい。データバス12に接続された
複数の直接メモリアクセス装置又は処理装置の任
意のものから主メモリへの書込みが行われる度
に、各キヤツシユメモリは必要な無効化サイクル
を行わねばならない。主メモリへ直接メモリアク
セスブロツク転送が行われている時には、すべて
のキヤツシユメモリが無効化サイクルを行い、こ
れによつてマルチプロセツサシステムの動作が大
幅に妨害される。この影響は、各キヤツシユメモ
リについて以下に第3図に関連して述べ本発明に
よつて軽減される。
数の処理装置とキヤツシユメモリが用いられてい
る時に特に大きい。データバス12に接続された
複数の直接メモリアクセス装置又は処理装置の任
意のものから主メモリへの書込みが行われる度
に、各キヤツシユメモリは必要な無効化サイクル
を行わねばならない。主メモリへ直接メモリアク
セスブロツク転送が行われている時には、すべて
のキヤツシユメモリが無効化サイクルを行い、こ
れによつてマルチプロセツサシステムの動作が大
幅に妨害される。この影響は、各キヤツシユメモ
リについて以下に第3図に関連して述べ本発明に
よつて軽減される。
第2図は“Data Processing System
Including a Chache Memory”と題する米国
特許第4197580号に述べられている従来技術のキ
ヤツシユメモリ構成のブロツク図である。この従
来技術のキヤツシユメモリは第1図のシステムの
キヤツシユメモリ11として用いることができ
る。主メモリ13が読み書きされる物理アドレス
がキヤツシユメモリのアドレスレジスタ20に蓄
えられる。この実施例では、22ビツトのアドレス
が用いられ、その下位9ビツトが語アドレスを示
し、6ビツトがページアドレスを示し、上位7ビ
ツトがセグメントアドレスを示す。語アドレスは
メモリ22をアクセスするためにアドレス回路2
1に印加される。メモリ22は、この実施例では
各々が46ビツトから成る512語を含む読出し/書
込みランダムアクセスメモリである。メモリ22
には、必要なキヤツシユメモリ容量を実現するた
めに、適切な数のメモリ23を追加することがで
きる。追加メモリ23を用いることにより、“結
合的”メモリ計算となり、一致回路24のような
他の回路も追加する必要があり、追加されたメモ
リの各々について1つの一致回路を必要とする。
このような結合的設計は前述の米国特許に示され
ている。これは当業者には公知であるため、第2
図ではこれらをすべて図示してはいないが、結合
的設計は、複雑さは増加するがキヤツシユ容量を
増加させるのに有用なものであることに注意され
たい。
Including a Chache Memory”と題する米国
特許第4197580号に述べられている従来技術のキ
ヤツシユメモリ構成のブロツク図である。この従
来技術のキヤツシユメモリは第1図のシステムの
キヤツシユメモリ11として用いることができ
る。主メモリ13が読み書きされる物理アドレス
がキヤツシユメモリのアドレスレジスタ20に蓄
えられる。この実施例では、22ビツトのアドレス
が用いられ、その下位9ビツトが語アドレスを示
し、6ビツトがページアドレスを示し、上位7ビ
ツトがセグメントアドレスを示す。語アドレスは
メモリ22をアクセスするためにアドレス回路2
1に印加される。メモリ22は、この実施例では
各々が46ビツトから成る512語を含む読出し/書
込みランダムアクセスメモリである。メモリ22
には、必要なキヤツシユメモリ容量を実現するた
めに、適切な数のメモリ23を追加することがで
きる。追加メモリ23を用いることにより、“結
合的”メモリ計算となり、一致回路24のような
他の回路も追加する必要があり、追加されたメモ
リの各々について1つの一致回路を必要とする。
このような結合的設計は前述の米国特許に示され
ている。これは当業者には公知であるため、第2
図ではこれらをすべて図示してはいないが、結合
的設計は、複雑さは増加するがキヤツシユ容量を
増加させるのに有用なものであることに注意され
たい。
処理装置10による読出し動作において、デー
タがアクセスされるアドレスがアドレスレジスタ
20に入れられる。アドレス回路21は、下位の
語アドレスビツトを用いて対応する語をメモリ2
2にアクセスする。(メモリ23に対しても同時
にアクセスが行われる)。メモリ22内の情報は
3つのフイールドに分割される。すなわち、32ビ
ツトの内容フイールドは、主メモリ13に蓄えら
れている情報語のコピーであり、13ビツトのタグ
フイールドは、この情報が主メモリ13に蓄えら
れているアドレスの上位ビツトを表わしており、
単一の有効ビツトすなわち“Vビツト”は、内容
フイールドが有効であり、主メモリ13に蓄えら
れている情報の代りとして用いることができる時
に1にセツトされる。Vビツトは、メモリ22の
内容が書き込まれた後、主メモリ13の内容が書
き換えられて、メモリ22のそのアドレス位置の
内容が無効となつて使用できなくなると、ゼロに
リセツトされる。
タがアクセスされるアドレスがアドレスレジスタ
20に入れられる。アドレス回路21は、下位の
語アドレスビツトを用いて対応する語をメモリ2
2にアクセスする。(メモリ23に対しても同時
にアクセスが行われる)。メモリ22内の情報は
3つのフイールドに分割される。すなわち、32ビ
ツトの内容フイールドは、主メモリ13に蓄えら
れている情報語のコピーであり、13ビツトのタグ
フイールドは、この情報が主メモリ13に蓄えら
れているアドレスの上位ビツトを表わしており、
単一の有効ビツトすなわち“Vビツト”は、内容
フイールドが有効であり、主メモリ13に蓄えら
れている情報の代りとして用いることができる時
に1にセツトされる。Vビツトは、メモリ22の
内容が書き込まれた後、主メモリ13の内容が書
き換えられて、メモリ22のそのアドレス位置の
内容が無効となつて使用できなくなると、ゼロに
リセツトされる。
レジスタ20からの13ビツトの上位アドレスビ
ツトと、メモリ22から読み出された13ビツトの
タグフイールドは、一致回路24で比較され、メ
モリ22のそのアドレス位置に蓄えられている内
容が捜されている情報であるか否かが決定され
る。さらに、アクセスされた位置の有効ビツトも
一致回路24で調べられて、蓄えられていた情報
が使用可能かどうかチエツクされる。上位アドレ
スビツトがタグと一致し、有効ビツトが1である
と、一致回路24は“的中”出力を発生し、メモ
リ22の内容フイールドを処理装置に送出すべき
ことを指示する。そうでなければ、一致回路24
は“失敗”出力を発生し、メモリ22の内容は使
用できず、代りに主メモリを読み出すべきことを
指示する。
ツトと、メモリ22から読み出された13ビツトの
タグフイールドは、一致回路24で比較され、メ
モリ22のそのアドレス位置に蓄えられている内
容が捜されている情報であるか否かが決定され
る。さらに、アクセスされた位置の有効ビツトも
一致回路24で調べられて、蓄えられていた情報
が使用可能かどうかチエツクされる。上位アドレ
スビツトがタグと一致し、有効ビツトが1である
と、一致回路24は“的中”出力を発生し、メモ
リ22の内容フイールドを処理装置に送出すべき
ことを指示する。そうでなければ、一致回路24
は“失敗”出力を発生し、メモリ22の内容は使
用できず、代りに主メモリを読み出すべきことを
指示する。
主メモリ13への書込み動作が行われると、キ
ヤツシユメモリでは、上述のような、主メモリ位
置の内容がメモリ22に含まれているかを決定す
るための同様のサイクルが実行される。その結果
が的中であると、メモリ22でアドレスされた位
置の有効ビツトがゼロにリセツトされて、無効の
マークが付けられ、メモリ22のこの内容は以後
の読出しには利用できず、代りに主メモリ13で
更新された情報を使用すべきことが示される。
ヤツシユメモリでは、上述のような、主メモリ位
置の内容がメモリ22に含まれているかを決定す
るための同様のサイクルが実行される。その結果
が的中であると、メモリ22でアドレスされた位
置の有効ビツトがゼロにリセツトされて、無効の
マークが付けられ、メモリ22のこの内容は以後
の読出しには利用できず、代りに主メモリ13で
更新された情報を使用すべきことが示される。
第2図の従来技術によるキヤツシユメモリは、
単一ビツトの有効ビツトがメモリ22の各語とと
もに蓄えられており、主メモリへの書込みの度に
キヤツシユメモリのサイクルを必要とする。たと
えば直接メモリアクセス15による主メモリへの
ブロツク書込みのように多数の書込み動作が行わ
れると、キヤツシユメモリは対応する数のキヤツ
シユメモリサイクルを実行し、処理装置10によ
るキヤツシユメモリの読出し効率が減少してしま
う。
単一ビツトの有効ビツトがメモリ22の各語とと
もに蓄えられており、主メモリへの書込みの度に
キヤツシユメモリのサイクルを必要とする。たと
えば直接メモリアクセス15による主メモリへの
ブロツク書込みのように多数の書込み動作が行わ
れると、キヤツシユメモリは対応する数のキヤツ
シユメモリサイクルを実行し、処理装置10によ
るキヤツシユメモリの読出し効率が減少してしま
う。
第3図は本発明に従つた、改良されたキヤツシ
ユメモリ構成の一実施例を示している。この構成
は第1図のシステムのキヤツシユメモリ11とし
て有利に用いることができる。主メモリで読出し
又は書込みを行うべき位置の物理アドレスはキヤ
ツシユメモリのアドレスレジスタ30へ蓄えられ
る。本実施例では22ビツトのアドレスが用いら
れ、下位9ビツトが語アドレスフイールドであ
り、6ビツトがページアドレスフイールドであ
り、上位7ビツトがセグメントアドレスフイール
ドである。語アドレスは、本実施例では各々が32
ビツトの512語を蓄える内容メモリ32をアクセ
スするために、アドレス回路31に印加される。
この読出し/書込みランダムアクセスメモリ32
は、主メモリに蓄えられている語の一時的コピー
を蓄える。メモリ32の語位置からの内容は、一
致回路39を含む制御回路がメモリ読出し動作中
に的中を検出すると、処理装置10に送出され
る。
ユメモリ構成の一実施例を示している。この構成
は第1図のシステムのキヤツシユメモリ11とし
て有利に用いることができる。主メモリで読出し
又は書込みを行うべき位置の物理アドレスはキヤ
ツシユメモリのアドレスレジスタ30へ蓄えられ
る。本実施例では22ビツトのアドレスが用いら
れ、下位9ビツトが語アドレスフイールドであ
り、6ビツトがページアドレスフイールドであ
り、上位7ビツトがセグメントアドレスフイール
ドである。語アドレスは、本実施例では各々が32
ビツトの512語を蓄える内容メモリ32をアクセ
スするために、アドレス回路31に印加される。
この読出し/書込みランダムアクセスメモリ32
は、主メモリに蓄えられている語の一時的コピー
を蓄える。メモリ32の語位置からの内容は、一
致回路39を含む制御回路がメモリ読出し動作中
に的中を検出すると、処理装置10に送出され
る。
アドレスレジスタ30の語アドレスフイールド
の上位5ビツトは、本実施例では各々が29ビツト
の32語を蓄える読出し/書込みランダムアクセス
メモリである制御メモリ36をアクセスするため
にアドレス回路37にも印加される。上記の語は
2つのフイールド、すなわち13ビツトのタグフイ
ールドと、16ケの有効ビツトすなわちVビツトを
含む16ビツトフイールドに分割されている。制御
メモリ36内の各語は、内容メモリ32の16語シ
ステムに対応しており、13ビツトのタグフイール
ドはこの16語ブロツク内の語を各々の上位アドレ
スビツトであり、16ケのVビツトの各々は内容メ
モリ32内のブロツク内の16語の1つに対応して
いる。本実施例では、ブロツクは16ケの連続した
語からなり、その先頭は16語境界‐‐‐例えばアド
レスの下位ビツトがゼロである位置‐‐‐から開始
する。
の上位5ビツトは、本実施例では各々が29ビツト
の32語を蓄える読出し/書込みランダムアクセス
メモリである制御メモリ36をアクセスするため
にアドレス回路37にも印加される。上記の語は
2つのフイールド、すなわち13ビツトのタグフイ
ールドと、16ケの有効ビツトすなわちVビツトを
含む16ビツトフイールドに分割されている。制御
メモリ36内の各語は、内容メモリ32の16語シ
ステムに対応しており、13ビツトのタグフイール
ドはこの16語ブロツク内の語を各々の上位アドレ
スビツトであり、16ケのVビツトの各々は内容メ
モリ32内のブロツク内の16語の1つに対応して
いる。本実施例では、ブロツクは16ケの連続した
語からなり、その先頭は16語境界‐‐‐例えばアド
レスの下位ビツトがゼロである位置‐‐‐から開始
する。
内容メモリ32には追加内容メモリ33を加え
ることができ、このとき制御メモリ36にも、一
対一の関係で、追加制御メモリ43が付加され
る。各々の追加制御メモリ43は追加メモリ33
に対応するタグ及びVビツト情報を含んでいる。
当業者には公知のように、例えば一致回路34,
39及びラツチ回路42を含むキヤツシユメモリ
回路のあるものも同様に追加される。このような
結合的キヤツシユメモリは、その複雑さを容認す
れば有用なものであるが、その設計手法を詳しく
述べるのは煩雑であり、本発明の理解の妨げとな
る。
ることができ、このとき制御メモリ36にも、一
対一の関係で、追加制御メモリ43が付加され
る。各々の追加制御メモリ43は追加メモリ33
に対応するタグ及びVビツト情報を含んでいる。
当業者には公知のように、例えば一致回路34,
39及びラツチ回路42を含むキヤツシユメモリ
回路のあるものも同様に追加される。このような
結合的キヤツシユメモリは、その複雑さを容認す
れば有用なものであるが、その設計手法を詳しく
述べるのは煩雑であり、本発明の理解の妨げとな
る。
レジスタ30に蓄えられている語アドレスの下
位4ビツトは、1対16デコーダ38でデコードさ
れ、制御メモリ36から得られるVビツトフイー
ルドから正しいVビツト位置を選択するのに用い
られる。アドレスされた語に対応するVビツト位
置は、制御メモリ36から得られたVビツトの内
容を一致回路39で比較される。選択されたVビ
ツトの2進状態は、一致回路34によつて付勢さ
れた時に一致回路39から出力される。
位4ビツトは、1対16デコーダ38でデコードさ
れ、制御メモリ36から得られるVビツトフイー
ルドから正しいVビツト位置を選択するのに用い
られる。アドレスされた語に対応するVビツト位
置は、制御メモリ36から得られたVビツトの内
容を一致回路39で比較される。選択されたVビ
ツトの2進状態は、一致回路34によつて付勢さ
れた時に一致回路39から出力される。
制御メモリ36に含まれている13ビツトのタグ
フイールドは、内容メモリ32に蓄えられている
対応する16語ブロツクのアドレスの上位13ビツト
を表わしている。これは、第2図の従来技術のシ
ステムとは対照的であり、該システムではメモリ
22に蓄えられた語の各々が個々のタグフイール
ドを持つていた。制御メモリ36から得られる13
ビツトのタグフイールドは一致回路34によつて
レジスタ30内のアドレスの上位13ビツトと比較
される。一致に成功すると一致回路34からブロ
ツク的中2進状態出力が出され、レジスタ30に
よつてアドレスされているブロツク内の1つ又は
それ以上の語がメモリ32内に含まれていること
を示すか、あるいはすべてのVビツトが無効のマ
ークを付けられていれば、ブロツクの有効な語が
メモリ32には含まれていないことを示す。一致
回路34からの付勢信号があると、一致回路39
はアドレスされている語のVビツト情報を発生
し、第2図の一致回路24で発生したのと同様
の、語的中又は失敗表示を完成させる。
フイールドは、内容メモリ32に蓄えられている
対応する16語ブロツクのアドレスの上位13ビツト
を表わしている。これは、第2図の従来技術のシ
ステムとは対照的であり、該システムではメモリ
22に蓄えられた語の各々が個々のタグフイール
ドを持つていた。制御メモリ36から得られる13
ビツトのタグフイールドは一致回路34によつて
レジスタ30内のアドレスの上位13ビツトと比較
される。一致に成功すると一致回路34からブロ
ツク的中2進状態出力が出され、レジスタ30に
よつてアドレスされているブロツク内の1つ又は
それ以上の語がメモリ32内に含まれていること
を示すか、あるいはすべてのVビツトが無効のマ
ークを付けられていれば、ブロツクの有効な語が
メモリ32には含まれていないことを示す。一致
回路34からの付勢信号があると、一致回路39
はアドレスされている語のVビツト情報を発生
し、第2図の一致回路24で発生したのと同様
の、語的中又は失敗表示を完成させる。
以上のように、第3図の回路は、第2の回路と
同様の方法で、単一語の読出し及び書込みに対す
る動作も行うことができる。たとえば、個々の内
容メモリの512語に合計512個のVビツトがあり、
1対1に対応している。しかし、第2図の構成で
は512ケのタグが蓄えられているのに対し、第3
図の構成では、32ケのタグが蓄えられている。第
2図では、タグは個々の語のアドレスの上位ビツ
トに対応しているのに対し、第3図の構成ではタ
グは16語ブロツクのアドレスの上位ビツトに対応
している。
同様の方法で、単一語の読出し及び書込みに対す
る動作も行うことができる。たとえば、個々の内
容メモリの512語に合計512個のVビツトがあり、
1対1に対応している。しかし、第2図の構成で
は512ケのタグが蓄えられているのに対し、第3
図の構成では、32ケのタグが蓄えられている。第
2図では、タグは個々の語のアドレスの上位ビツ
トに対応しているのに対し、第3図の構成ではタ
グは16語ブロツクのアドレスの上位ビツトに対応
している。
単一語の読出し動作の各々において、第3図の
回路で行う的中/失敗検出動作は第2図のものと
同様のものである。なぜなら制御メモリ36から
の個々のVビツトの選択はデコーダ38と一致回
路39の動作によつて行われているからである。
従つて、第3図の回路は第2図の回路と同じよう
に用いることができ、個々の語の内容は的中表示
の場合は個々にアクセスすることができ、また有
効な時はキヤツシユメモリの内容を送出すること
ができる。さらに、デコーダ38の動作により、
個々のVビツトをリセツトすることができ、キヤ
ツシユに含まれている語に対してメモリへの個々
の語の書き込みがあつた時には、個個の語ごとに
メモリ32の内容を無効化することができる。第
3図のキヤツシユメモリ構成により、最大32の異
つた16語ブロツクから成る最大512語を蓄えるこ
とができる。
回路で行う的中/失敗検出動作は第2図のものと
同様のものである。なぜなら制御メモリ36から
の個々のVビツトの選択はデコーダ38と一致回
路39の動作によつて行われているからである。
従つて、第3図の回路は第2図の回路と同じよう
に用いることができ、個々の語の内容は的中表示
の場合は個々にアクセスすることができ、また有
効な時はキヤツシユメモリの内容を送出すること
ができる。さらに、デコーダ38の動作により、
個々のVビツトをリセツトすることができ、キヤ
ツシユに含まれている語に対してメモリへの個々
の語の書き込みがあつた時には、個個の語ごとに
メモリ32の内容を無効化することができる。第
3図のキヤツシユメモリ構成により、最大32の異
つた16語ブロツクから成る最大512語を蓄えるこ
とができる。
第3図をさらに詳しく見ると、レジスタ30に
蓄えられたアドレスは2つの情報源から得られて
いる。マルチプレクサ35は、1語ずつの読出し
又は書込み動作については処理装置から、またブ
ロツク直接メモリアクセス書込み動作については
直接メモリアクセスから、アドレス情報を受信し
てレジスタ30に入れる。直接メモリアクセスに
よつて印加されたアドレスの下位4ビツトは全ゼ
ロ検出器41に印加される。これらの下位ビツト
がゼロであれば、16語ブロツクの先頭であること
がわかる。この条件と、直接メモリアクセスが動
作中であること及び書込みが行われていることを
示す信号が、アンドゲート40で検出され、その
出力により、直接メモリアクセスブロツク書込み
が開始したことが示される。この出力はマルチプ
レクサ35に送られ、2つのアドレスのうちのど
ちらかをレジスタ30に入れるかを制御するのに
用いられる。通常は、マルチプレクサ35は処理
装置からのアドレスをアドレスレジスタに印加す
る。アンド回路40の出力により、マルチプレク
サ35は、通常の処理装置からのアドレスの代り
に、直接メモリアクセスからのアドレスをアドレ
スレジスタ30に印加する。さらに、アンドゲー
ト40からの出力はラツチ回路42にも送られ、
こゝでブロツク的中/失敗の検出が終了するまで
保持される。制御メモリ36の読出しが開始さ
れ、一致回路34がブロツク的中の検出を行う。
的中であれば、アドレスされているブロツク内の
1語又はそれ以上の語がメモリ32内に存在する
ことが示されていることになる(ただしこのブロ
ツクに対するすべてのVビツトが無効のマークを
つけられていることがない場合)。
蓄えられたアドレスは2つの情報源から得られて
いる。マルチプレクサ35は、1語ずつの読出し
又は書込み動作については処理装置から、またブ
ロツク直接メモリアクセス書込み動作については
直接メモリアクセスから、アドレス情報を受信し
てレジスタ30に入れる。直接メモリアクセスに
よつて印加されたアドレスの下位4ビツトは全ゼ
ロ検出器41に印加される。これらの下位ビツト
がゼロであれば、16語ブロツクの先頭であること
がわかる。この条件と、直接メモリアクセスが動
作中であること及び書込みが行われていることを
示す信号が、アンドゲート40で検出され、その
出力により、直接メモリアクセスブロツク書込み
が開始したことが示される。この出力はマルチプ
レクサ35に送られ、2つのアドレスのうちのど
ちらかをレジスタ30に入れるかを制御するのに
用いられる。通常は、マルチプレクサ35は処理
装置からのアドレスをアドレスレジスタに印加す
る。アンド回路40の出力により、マルチプレク
サ35は、通常の処理装置からのアドレスの代り
に、直接メモリアクセスからのアドレスをアドレ
スレジスタ30に印加する。さらに、アンドゲー
ト40からの出力はラツチ回路42にも送られ、
こゝでブロツク的中/失敗の検出が終了するまで
保持される。制御メモリ36の読出しが開始さ
れ、一致回路34がブロツク的中の検出を行う。
的中であれば、アドレスされているブロツク内の
1語又はそれ以上の語がメモリ32内に存在する
ことが示されていることになる(ただしこのブロ
ツクに対するすべてのVビツトが無効のマークを
つけられていることがない場合)。
一致回路34からのブロツク的中出力はラツチ
回路42へ送られ、ここで直接メモリアクセスブ
ロツク書込みが開始したことを示す情報と結合さ
れる。この結果、無効化が要求され、制御メモリ
36へ信号が送られ、制御メモリに蓄えられてい
るこのブロツクに対応した16ケのすべてのVビツ
トが単一の動作でゼロにリセツトされる。これ
は、16ビツトのすべてのVビツトが、ブロツク直
接メモリアクセス書込み動作によつて現に書込ま
れているブロツクに対応するタグとともにメモリ
36内の同じ物理位置に蓄えられているために可
能となつているものである。よつて、ブロツク直
接メモリアクセス書込みが現在行われているブロ
ツク内の任意の語が第3図のキヤツシユメモリ内
に含まれていれば、このブロツクに対するすべて
のVビツトが単一のキヤツシユメモリサイクル内
にリセツトされ、キヤツシユメモリが16回のキヤ
ツシユメモリサイクルで各Vビツトをリセツトす
る必要はない。よつて、第3図のキヤツシユメモ
リは、ブロツク直接メモリアクセス書込み動作の
残りの部分を自由に使えることになる。
回路42へ送られ、ここで直接メモリアクセスブ
ロツク書込みが開始したことを示す情報と結合さ
れる。この結果、無効化が要求され、制御メモリ
36へ信号が送られ、制御メモリに蓄えられてい
るこのブロツクに対応した16ケのすべてのVビツ
トが単一の動作でゼロにリセツトされる。これ
は、16ビツトのすべてのVビツトが、ブロツク直
接メモリアクセス書込み動作によつて現に書込ま
れているブロツクに対応するタグとともにメモリ
36内の同じ物理位置に蓄えられているために可
能となつているものである。よつて、ブロツク直
接メモリアクセス書込みが現在行われているブロ
ツク内の任意の語が第3図のキヤツシユメモリ内
に含まれていれば、このブロツクに対するすべて
のVビツトが単一のキヤツシユメモリサイクル内
にリセツトされ、キヤツシユメモリが16回のキヤ
ツシユメモリサイクルで各Vビツトをリセツトす
る必要はない。よつて、第3図のキヤツシユメモ
リは、ブロツク直接メモリアクセス書込み動作の
残りの部分を自由に使えることになる。
第1図は本発明を採用することのできるメモリ
システムのブロツク図であり、第2図は従来技術
によるキヤツシユメモリ装置のブロツク図であ
り、第3図は本発明によるキヤツシユメモリシス
テムの一実施例のブロツク図である。 〔主要部分の符号の説明〕、主メモリ……13、
キヤツシユメモリ……11、ブロツクを主メモリ
に書込む手段……15、無効化する手段……3
0,31,34,35,37,38,39,4
0,41,42、書込みの発生を検出する手段…
…40,41、有効ビツトを蓄える手段……3
6。
システムのブロツク図であり、第2図は従来技術
によるキヤツシユメモリ装置のブロツク図であ
り、第3図は本発明によるキヤツシユメモリシス
テムの一実施例のブロツク図である。 〔主要部分の符号の説明〕、主メモリ……13、
キヤツシユメモリ……11、ブロツクを主メモリ
に書込む手段……15、無効化する手段……3
0,31,34,35,37,38,39,4
0,41,42、書込みの発生を検出する手段…
…40,41、有効ビツトを蓄える手段……3
6。
Claims (1)
- 【特許請求の範囲】 1 主メモリおよび主メモリの内容の一部を記憶
するキヤツシユメモリを含み、主メモリの内容が
書き換えられた際に対応するキヤツシユメモリの
内容を無効にするためのメモリ制御システムであ
つて、書込むべき主メモリのアドレスを記憶する
アドレスレジスタ、 キヤツシユメモリのn語単位の各ブロツクにそ
れぞれ対応するメモリロケーシヨンを有し、該各
ブロツクの主メモリ内での位置を特定するタグア
ドレスと該ブロツク内のn語の有効もしくは無効
状態を夫々表わすn個の有効ビツトを1ワードと
して各ブロツクに対応するメモリロケーシヨンに
記憶している制御メモリ、 該アドレスレジスタの上位アドレスビツトと該
制御メモリ内の該タグアドレスビツトとの一致を
とり該上位アドレスで指定される主メモリ内のブ
ロツクに対応するブロツクがキヤツシユメモリ内
に存在することを判定する第1の手段、 該アドレスレジスタの下位アドレスビツトをデ
コードしてn個のビツト位置を表わすnビツトコ
ードを生成しこのコードと該制御メモリ内のn個
の有効ビツトとの一致をとる第2の手段、および 該制御メモリ内のn個の該有効ビツトを所定の
状態にセツトする手段であつて、該手段は主メモ
リにデータがブロツク単位で書込まれる場合は該
第1の手段に応動して該制御メモリ内のn個の有
効ビツトのすべてを同時に無効状態にセツトし、
主メモリにデータが語単位で書込まれる場合は第
1と第2の手段に応動してn個の有効ビツトのう
ち該語に対応する該特定位置のビツトのみを該デ
コードされたnビツトコードを用いて無効状態に
セツトする手段からなることを特徴とするメモリ
制御システム。 2 特許請求の範囲第1項記載のメモリ制御シス
テムにおいて、該メモリ制御システムはさらに直
接メモリアクセスにより該主メモリに連続する語
のブロツクの各語を書込む手段及び該主メモリへ
の書込みの発生を検出する手段であつて、該各語
を書込む手段により前記ブロツクの予め定めた語
の書込みを検出する手段を含むことを特徴とする
メモリ制御システム。 3 特許請求の範囲第2項記載のメモリ制御シス
テムにおいて、各語はブロツクの個々の語を同定
する少なくとも1つのビツトを含む複数のビツト
からなるアドレスをそれに関連して有しており、
そして前記各語を書込む手段により前記ブロツク
の予め定めた語の書込みを検出する該手段は該各
語を書込む手段により書込まれている語のアドレ
スの少なくとも1ビツトにおけるビツトすべてゼ
ロであることを検出する手段を含むことを特徴と
するメモリ制御システム。 4 特許請求の範囲第1項記載のメモリ制御シス
テムにおいて、該メモリ制御システムは、更に複
数個のキヤツシユメモリと複数個の制御メモリと
を一セツトの連結した配列状態で含むことを特徴
とするメモリ制御システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US361499 | 1982-03-25 | ||
| US06/361,499 US4504902A (en) | 1982-03-25 | 1982-03-25 | Cache arrangement for direct memory access block transfer |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS58212694A JPS58212694A (ja) | 1983-12-10 |
| JPH0345407B2 true JPH0345407B2 (ja) | 1991-07-11 |
Family
ID=23422303
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58050278A Granted JPS58212694A (ja) | 1982-03-25 | 1983-03-25 | メモリシステム |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4504902A (ja) |
| EP (1) | EP0090575B1 (ja) |
| JP (1) | JPS58212694A (ja) |
| CA (1) | CA1186804A (ja) |
| DE (1) | DE3380233D1 (ja) |
| GB (1) | GB2117148B (ja) |
Families Citing this family (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4714990A (en) * | 1982-09-18 | 1987-12-22 | International Computers Limited | Data storage apparatus |
| JPS59100964A (ja) * | 1982-12-01 | 1984-06-11 | Hitachi Ltd | ディスク制御システム及びその並列データ転送方法 |
| US4577273A (en) * | 1983-06-06 | 1986-03-18 | Sperry Corporation | Multiple microcomputer system for digital computers |
| US5067071A (en) * | 1985-02-27 | 1991-11-19 | Encore Computer Corporation | Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus |
| US4755930A (en) * | 1985-06-27 | 1988-07-05 | Encore Computer Corporation | Hierarchical cache memory system and method |
| US4794523A (en) * | 1985-09-30 | 1988-12-27 | Manolito Adan | Cache memory architecture for microcomputer speed-up board |
| JPS6275860A (ja) * | 1985-09-30 | 1987-04-07 | Toshiba Corp | デ−タ転送制御装置 |
| DE3750311T2 (de) * | 1986-05-30 | 1995-03-30 | Bull Hn Information Syst | Gerät und Verfahren zur Übertragung zwischen Prozessoren. |
| US4811209A (en) * | 1986-07-31 | 1989-03-07 | Hewlett-Packard Company | Cache memory with multiple valid bits for each data indication the validity within different contents |
| EP0259967B1 (en) * | 1986-08-01 | 1994-03-23 | Fujitsu Limited | Directory memory |
| US4814981A (en) * | 1986-09-18 | 1989-03-21 | Digital Equipment Corporation | Cache invalidate protocol for digital data processing system |
| US5045996A (en) * | 1986-11-12 | 1991-09-03 | Xerox Corporation | Multiprocessor cache memory housekeeping |
| EP0288649B1 (en) * | 1987-04-22 | 1992-10-21 | International Business Machines Corporation | Memory control subsystem |
| DE3728862A1 (de) * | 1987-08-28 | 1989-03-09 | Siemens Ag | Anordnung zur verwaltung von daten und adressen in einem zwischen einem zentralprozessor und einem hauptspeicher geschalteten pufferspeicher |
| US4910656A (en) * | 1987-09-21 | 1990-03-20 | Motorola, Inc. | Bus master having selective burst initiation |
| EP0349123B1 (en) * | 1988-06-27 | 1995-09-20 | Digital Equipment Corporation | Multi-processor computer systems having shared memory and private cache memories |
| US4912630A (en) * | 1988-07-29 | 1990-03-27 | Ncr Corporation | Cache address comparator with sram having burst addressing control |
| US4928225A (en) * | 1988-08-25 | 1990-05-22 | Edgcore Technology, Inc. | Coherent cache structures and methods |
| US5276806A (en) * | 1988-09-19 | 1994-01-04 | Princeton University | Oblivious memory computer networking |
| US5202969A (en) * | 1988-11-01 | 1993-04-13 | Hitachi, Ltd. | Single-chip-cache-buffer for selectively writing write-back and exclusively writing data-block portions to main-memory based upon indication of bits and bit-strings respectively |
| JPH0348951A (ja) * | 1989-07-18 | 1991-03-01 | Fujitsu Ltd | アドレスモニタ装置 |
| GB9001156D0 (en) * | 1990-01-18 | 1990-03-21 | Int Computers Ltd | Memory management in a multiprocessor system |
| ATE158882T1 (de) * | 1990-06-15 | 1997-10-15 | Compaq Computer Corp | Vorrichtung zur echten lru-ersetzung |
| JP2774862B2 (ja) * | 1990-07-16 | 1998-07-09 | 株式会社日立製作所 | Dma制御装置および情報処理装置 |
| JP2825983B2 (ja) * | 1991-03-08 | 1998-11-18 | 富士通株式会社 | 情報処理装置 |
| JP2703417B2 (ja) * | 1991-04-05 | 1998-01-26 | 富士通株式会社 | 受信バッファ |
| US5371872A (en) * | 1991-10-28 | 1994-12-06 | International Business Machines Corporation | Method and apparatus for controlling operation of a cache memory during an interrupt |
| US5813030A (en) * | 1991-12-31 | 1998-09-22 | Compaq Computer Corp. | Cache memory system with simultaneous access of cache and main memories |
| US5325503A (en) * | 1992-02-21 | 1994-06-28 | Compaq Computer Corporation | Cache memory system which snoops an operation to a first location in a cache line and does not snoop further operations to locations in the same line |
| WO1993018461A1 (en) * | 1992-03-09 | 1993-09-16 | Auspex Systems, Inc. | High-performance non-volatile ram protected write cache accelerator system |
| JPH0797352B2 (ja) * | 1992-07-02 | 1995-10-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータ・システム及び入出力コントローラ |
| JP2784440B2 (ja) * | 1993-04-14 | 1998-08-06 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ・ページの転送制御方法 |
| US5717895A (en) * | 1994-12-01 | 1998-02-10 | Cray Research, Inc. | Associative scalar data cache with write-through capabilities for a vector processor |
| US6978357B1 (en) * | 1998-07-24 | 2005-12-20 | Intel Corporation | Method and apparatus for performing cache segment flush and cache segment invalidation operations |
| US6711650B1 (en) * | 2002-11-07 | 2004-03-23 | International Business Machines Corporation | Method and apparatus for accelerating input/output processing using cache injections |
| CN1332319C (zh) * | 2003-12-22 | 2007-08-15 | 松下电器产业株式会社 | 存储系统控制方法 |
| US7765366B2 (en) * | 2005-06-23 | 2010-07-27 | Intel Corporation | Memory micro-tiling |
| US8332598B2 (en) * | 2005-06-23 | 2012-12-11 | Intel Corporation | Memory micro-tiling request reordering |
| US7587521B2 (en) * | 2005-06-23 | 2009-09-08 | Intel Corporation | Mechanism for assembling memory access requests while speculatively returning data |
| US7558941B2 (en) * | 2005-06-30 | 2009-07-07 | Intel Corporation | Automatic detection of micro-tile enabled memory |
| US8253751B2 (en) | 2005-06-30 | 2012-08-28 | Intel Corporation | Memory controller interface for micro-tiled memory access |
| US8156259B2 (en) * | 2005-07-21 | 2012-04-10 | Elliptic Technologies Inc. | Memory data transfer method and system |
| US8878860B2 (en) * | 2006-12-28 | 2014-11-04 | Intel Corporation | Accessing memory using multi-tiling |
| US9710384B2 (en) * | 2008-01-04 | 2017-07-18 | Micron Technology, Inc. | Microprocessor architecture having alternative memory access paths |
| US8972958B1 (en) | 2012-10-23 | 2015-03-03 | Convey Computer | Multistage development workflow for generating a custom instruction set reconfigurable processor |
| US8621154B1 (en) | 2008-04-18 | 2013-12-31 | Netapp, Inc. | Flow based reply cache |
| US8161236B1 (en) | 2008-04-23 | 2012-04-17 | Netapp, Inc. | Persistent reply cache integrated with file system |
| US7774522B2 (en) * | 2008-11-17 | 2010-08-10 | Applied Micro Circuits Corporation | Cache stashing processor control messages |
| US8171227B1 (en) | 2009-03-11 | 2012-05-01 | Netapp, Inc. | System and method for managing a flow based reply cache |
| US10430190B2 (en) | 2012-06-07 | 2019-10-01 | Micron Technology, Inc. | Systems and methods for selectively controlling multithreaded execution of executable code segments |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3618040A (en) * | 1968-09-18 | 1971-11-02 | Hitachi Ltd | Memory control apparatus in multiprocessor system |
| US3723976A (en) * | 1972-01-20 | 1973-03-27 | Ibm | Memory system with logical and real addressing |
| US3840862A (en) * | 1973-09-27 | 1974-10-08 | Honeywell Inf Systems | Status indicator apparatus for tag directory in associative stores |
| JPS5440182B2 (ja) * | 1974-02-26 | 1979-12-01 | ||
| US4142234A (en) * | 1977-11-28 | 1979-02-27 | International Business Machines Corporation | Bias filter memory for filtering out unnecessary interrogations of cache directories in a multiprocessor system |
| JPS5489444A (en) * | 1977-12-27 | 1979-07-16 | Fujitsu Ltd | Associative memory processing system |
| US4197580A (en) * | 1978-06-08 | 1980-04-08 | Bell Telephone Laboratories, Incorporated | Data processing system including a cache memory |
| US4268907A (en) * | 1979-01-22 | 1981-05-19 | Honeywell Information Systems Inc. | Cache unit bypass apparatus |
| US4264953A (en) * | 1979-03-30 | 1981-04-28 | Honeywell Inc. | Virtual cache |
| JPS5613576A (en) * | 1979-07-11 | 1981-02-09 | Fujitsu Ltd | Memory access control system |
| JPS5680872A (en) * | 1979-12-06 | 1981-07-02 | Fujitsu Ltd | Buffer memory control system |
| US4398243A (en) * | 1980-04-25 | 1983-08-09 | Data General Corporation | Data processing system having a unique instruction processor system |
| US4403288A (en) * | 1981-09-28 | 1983-09-06 | International Business Machines Corporation | Methods and apparatus for resetting peripheral devices addressable as a plurality of logical devices |
-
1982
- 1982-03-25 US US06/361,499 patent/US4504902A/en not_active Expired - Lifetime
-
1983
- 1983-03-14 CA CA000423572A patent/CA1186804A/en not_active Expired
- 1983-03-22 DE DE8383301576T patent/DE3380233D1/de not_active Expired
- 1983-03-22 EP EP83301576A patent/EP0090575B1/en not_active Expired
- 1983-03-22 GB GB08307861A patent/GB2117148B/en not_active Expired
- 1983-03-25 JP JP58050278A patent/JPS58212694A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| GB8307861D0 (en) | 1983-04-27 |
| US4504902A (en) | 1985-03-12 |
| CA1186804A (en) | 1985-05-07 |
| EP0090575A2 (en) | 1983-10-05 |
| JPS58212694A (ja) | 1983-12-10 |
| DE3380233D1 (en) | 1989-08-24 |
| EP0090575A3 (en) | 1985-05-22 |
| EP0090575B1 (en) | 1989-07-19 |
| GB2117148B (en) | 1985-11-06 |
| GB2117148A (en) | 1983-10-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4504902A (en) | Cache arrangement for direct memory access block transfer | |
| US4831520A (en) | Bus interface circuit for digital data processor | |
| US4493026A (en) | Set associative sector cache | |
| US5325499A (en) | Computer system including a write protection circuit for preventing illegal write operations and a write poster with improved memory | |
| US5388247A (en) | History buffer control to reduce unnecessary allocations in a memory stream buffer | |
| JP3431626B2 (ja) | データ処理装置 | |
| US5809280A (en) | Adaptive ahead FIFO with LRU replacement | |
| KR100204741B1 (ko) | 제1및 제2캐시 메모리 사용방법 | |
| JP3987577B2 (ja) | システム管理モード情報を他の情報と共にキャッシュに入れる方法および装置 | |
| US4851991A (en) | Central processor unit for digital data processing system including write buffer management mechanism | |
| US6219745B1 (en) | System and method for entering a stream read buffer mode to store non-cacheable or block data | |
| EP0303648B1 (en) | Central processor unit for digital data processing system including cache management mechanism | |
| US5671231A (en) | Method and apparatus for performing cache snoop testing on a cache system | |
| JPH0526217B2 (ja) | ||
| US5091845A (en) | System for controlling the storage of information in a cache memory | |
| US5119484A (en) | Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction | |
| US5590310A (en) | Method and structure for data integrity in a multiple level cache system | |
| US5226170A (en) | Interface between processor and special instruction processor in digital data processing system | |
| EP0474450A2 (en) | Processor system with improved memory transfer means | |
| US5161219A (en) | Computer system with input/output cache | |
| US5557622A (en) | Method and apparatus for parity generation | |
| US5276892A (en) | Destination control logic for arithmetic and logic unit for digital data processor | |
| US5960456A (en) | Method and apparatus for providing a readable and writable cache tag memory | |
| GB2037466A (en) | Computer with cache memory | |
| EP0302926B1 (en) | Control signal generation circuit for arithmetic and logic unit for digital processor |