JPS58212694A - メモリシステム - Google Patents

メモリシステム

Info

Publication number
JPS58212694A
JPS58212694A JP58050278A JP5027883A JPS58212694A JP S58212694 A JPS58212694 A JP S58212694A JP 58050278 A JP58050278 A JP 58050278A JP 5027883 A JP5027883 A JP 5027883A JP S58212694 A JPS58212694 A JP S58212694A
Authority
JP
Japan
Prior art keywords
memory
address
bits
block
word
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.)
Granted
Application number
JP58050278A
Other languages
English (en)
Other versions
JPH0345407B2 (ja
Inventor
リ−・イ−ストマン・ガラハ−
ウイン・ヌ−ン・トイ
ベンジヤミン・ゼ−
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
Western Electric Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of JPS58212694A publication Critical patent/JPS58212694A/ja
Publication of JPH0345407B2 publication Critical patent/JPH0345407B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0835Cache 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)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明はメモリシステムに関し、特に主メモリと、キャ
ッシュ(CACHE )メモリと、直接メモリアクセス
によって連続する語のブロックを主メモリに′書込む手
段とを含むメモリシステムに関する。
キャッシュメモリはデジタル計算機システムのスループ
ットに’P61加させるのに有効である。典型的なキャ
ッシュメモリシステムは、小容量であるが比較的高速の
メモリを含み、中央処理装置で用いら扛た情報を一時的
に蓄える。処理装置が主メモリを読む場合には、キャッ
シュメモリは捜されている情報がキャッシュメモリ内に
あるかどうかを判定するメモリサイクルを実行する。こ
の千百報がキャッシュメモリ内にあれは、−m−これ金
°゛的中″と呼ぶことにする一一一この情報が処理装置
に送ら扛て、主メモリはアクセスされない。情報が存在
しなければ、−m−これを゛失敗″と呼ぶ一一一情報は
主メモリから読み出され、中央処理装置に送られるとと
もに、後で必要になった時のためにキャッシュメモリに
も■込まれる。中央処理装置によって情報を主メモリに
書込む時にも、キャッシュメモリtよその情報が存在す
るかどうかを判定するメモリサイクルを実行する。存在
すれば、キャッシュ内の制御ビットーーー有効ビットす
なわちVヒットーーーがリセットされて、キャッシュ内
の情報は異ったものになってしまい、無効であることが
示される。これとは別の方法として、主メモリへの曹込
みの時、新しい情報語ケギヤッシュメモリにも連込むこ
ともできる。
直接メモリアクセス(DMA)もデジタル計算機システ
ムで有用なものである。面接メモリアクセスはディスク
蓄積装置のような比軸的低速のバルク蓄積入出力装置と
ともに用いられることが多い。たとえば、読出し又は霜
込みの、J:/)な、主メモリに対ず゛る中央処理装置
からの入出力転送要求があると、DMAは入出力装置と
主メモリとの間での直接データ転送を自動的に行う。D
MAは必要に応じて主メモリのサイクルスチールを行っ
て、要求された転送を児了さぜ、完了すると多くの場合
中央処理装置へ割込みを発生ずる。DMA転送は、処理
のためのデータ語を転送するのに適した単一情報語の転
送全行う場合と、連続したブロック内の複数語を転送す
る場合がある。ブロック転送は、たとえばページング方
式などで、計算機のプログラムを入出力装置から主メモ
リに格納する時に特に有用である。
前記の形式のキャッシュメモリシステムを直接メモリア
クセスとともに使用すると問題が生′じる。ブロックD
MA書込み中・も、中央処理装置はキャッシュからアク
セスされる命令の実行を自由に行えることが望ましい。
°しかじ、実際にはDMA動作によって相当な数のキャ
ッシュメモリサイクルが1更わ才してしまう。ブロック
の各語がDMAによって主メモリに転送される度に、キ
ャッシュメモリは無効化メモリサイクルを実行して、新
しく主メモリに1込まれた語がキャッシュメモリにイ■
在するか否かを判定し、存在すればその有効ビットをリ
セットしなければならない。この無効化サイクル中は、
中央処理装置はキャッシュ全アクセスできず、プログラ
ムの実行は一時的に中断される。もしブロック内の語数
が多いと、要求されるキャッシュサイクルも多くなる。
中央処理装置で使用できるキャッシュメモリサイクルの
数を増加させるために、ブロックDMA転送に必要なキ
ャッシュ無効化メモリサイクルの数を減らず必要かある
ブロックDMA動作は、各処理装置が独自のキャッシュ
メモリシステムを持つマルチプロセッサシステムに特に
大きな影響を与える。
ブロックDMA:ifi込み中、すべてのキャッシュが
無効化メモリサイクルを行う必要があり、゛各処理装置
の動作全妨げ、マルチプロセッサシステムの全体のスル
ープットを減少させてしまう。
ブロックDMA書込み中における中央処理装b′の効率
低減の問題は、本発明を1更用することによって大幅に
改善することができる。
本発明の1つの特徴に従えば、主メモリと、キャッシュ
メモリと、直性メモリアクセスによって連続する語のブ
ロックを生メモリに書込む手段と、該手段に応動してキ
ャッシュメモリ内の語のすべてを同時に無効化する手段
とを含むメモリシステムが提供されている。
本発明の他の特徴に従えば、曹込みケ行うべきメモリ位
置の物理アドレスを蓄えるためのアドレスレジスタを含
み、アドレスレジスタの下位アドレスビットによってア
ドレスされるメモリ位置の内容を蓄えるための内容メモ
リを含み、内容メモリに蓄えら扛たn語のブロックの上
位タグアドレスビットとn個の有効ビットと金蓄えるた
めの制御メモリを含み、有効ビットの各々とが内容メモ
リに蓄えられたn語のそれぞれに対応しており、割部)
メモリがアドレスレジスタの語アドレスの第1数の下位
ビットによってアドレスされ、アドレスレジスタの上位
アドレスビットと制御メモリのタグアドレスビットとの
一致を検出してメモリ位置におけるブロック内の任意の
語が内容メモリ内に存在することを判定する手段を含み
、該判定する手段に応動してアドレスレジスタの第2の
数の下位アドレスヒツトをデコードし、デコードされた
数と制御メモリから得ら7’Lるn個の有効ヒツトとの
一致f:検出して語の対応する1つが内容メモリ内に存
在することを決足する手段を含み、該判定する手段に応
動し、該メモリ位置におけるブロック内の語が内容メモ
リ内に存在する時に制御メモリ内におけるメモリ位置の
ブロックのn個の有効ビットケ予め定めた状態に同時に
リセットする手段を含むキャッシュメモリシステムが提
供されている。
本発明の一実施例に従えは、主メモリに対するフロック
I) M A 皆込みの開始時において、キャッシュメ
モリはこのブロック内の任意の語がキャッシュ内に存在
するかどうかを判定するための単一の無効化メモリサイ
クルを実行する。もし存在すれば、キャッシュ内の1フ
ロック全体が雫−のサイクル内に無効化される。このブ
ロック全体のすべての有効ビットが同時にリセットさワ
1、ブロック転送において後続する語は無効化サイクル
を必要としない。この方法により、キャッシュメモリ前
動化サイクルの数は、ブロック内の語の数に等しい数か
ら、1又は2.3サイクルにまで減少された。よって、
16語フロックのシステムでは、ブロックDMA7込み
中における中央処理装置の切藁低下は、はぼ16サイク
ルからほぼ1サイクルにまで減少させることができ、中
央処理装置の各々について16対1の改善をはかること
ができる。
以下に、図面全参照して、本発明の一実h11上例につ
いて説明する。
第1図は、本発明が有利に利用できる分りIfである、
メモリシステム金示している。中央処理装置10は、命
令及びデータのために、バス12を用いて主メモリ13
にアクセスする。処理装置10による主メモリのアクセ
スの回数及びバス専有率を下げるために、局部キャッシ
ュメモリ11が用意されている。主メモリから得ら扛る
情報語は一時的にキャッシュメモリに蓄えられる。処理
装置10から主メモリに対する読出し要求は、キャッシ
ュメモリ11で拗抗され、キャッシュメモリは要求され
た読出しアト、レスの連憇探索を行う。
読出す情報がキャッシュメモリに存在すれば(パ的中”
)、この比教的小さいが高速のキャッシュメモリから処
理装置10に対し要求された情報が冒速に送り出され、
主メモリのアクセスは行わnず、またバス12も1史用
されない。主メモリのアクセス時間は800ナノ秒程度
であるのに対し、キャッシュメモリのアクセス時間は2
00ナノ秒程度であり、キャッシュによる処理装置動作
によりほぼ4対Jの速度向上が実現される。
ディスク装置14のような比較的低速の蓄積装置6への
入出力は、直接メモリアクセス15によって行われる。
処理装置10からの要求に応動し、直接メモリアクセス
15に工り′、単一の語又は1つのブロックーー一本実
施例では16ケの連続した語からなる一一−が、これ以
降処理装置10の介在を受けることなく、データバス1
2を用いてディスクから直接主メモリ13に書き込まわ
る。直接メモリアクセス15は転送を行うためにハス及
びメモリサイクルヲ°゛スチール″シて主メモリの読出
し及び1−込みを自動的に行う。
主メモリへの畳込みが行わ九る度に、キャッシュメモリ
11がチェックさ扛、キャッシュと主メモリの内容が矛
盾しないように更新さ扛る。もしキャッシュメモリが、
−4込1才1゜た語のコピーを蓄えていわ、ば、キャッ
シュ内の適切な制御ビットをリセットすることVこより
、キャッシュ内のそのコピーにCよ無効のマークがつけ
られる。この無効化のためにキャッシュメモリのサイク
ルを必要とし、よって一時的にキャッシュメモリの処理
装置10による利用が妨げら扛る。16語を主メモリの
16ケの連続する位置に畳込むブロック直接メモリアク
セスにおいては、従来技術の方法を用いると、キャッシ
ュメモリ11と処理装置症10との間で合計16キヤツ
シユサイクルの間妨害をうける。キャッシュメモリは、
本実施例では、主メモリよりも4倍速く動作しているた
め、無効化のために必要な千ヤツシュサイクル自体は連
続的ではなく、飛びとびであるため、その中+=Jは処
理装置のアクセスサイクルとして1更用でき茗。しかし
、台割て16個のサイクルを必要とすることには変りは
ない。
この影響は、第1図の16に示したように、複数の処理
装置とキャッシュメモリが用いられている時に特に太き
い。データバス12に接続された複数の直接メモリアク
セス装置又は処理装置6の任意のものから主メモリへの
1込みが行わ扛る反に、各キャッシュメモリは必要な無
効化サイクルを行わねばならない。
主メモリへ直接メモリアクセスブロック転送が行われて
いる時には、すべてのキャッシュメモリが無効化サイク
ルを行い、これによってマルチプロセッサシステムの動
作が大幅に妨害さ扛る。この影響は、各キャッシュメモ
リについて以下に第3図に関連して述べ本発明によって
軽減される。  ゛ 第2図は” Data Processing Sys
temIncluding a Chache Mem
ory ”と題する米国特許第4,197,580号に
述べらnている従来技術のキャッシュメモリ構成のブロ
ック図である。この従来技術のキャッシュメモリは第1
図のシステムのキャッシュメモリ11として用いること
ができる。主メモリ13が読み書きされる物理アドレス
がキャッシュメモリのアドレスレジスタ20に蓄えら才
する。この実施例では、22ビツトのアドレスが用いら
れ、そり下位9ビツトか語アドレス”t 7Jeし、6
ビツトがページアドレスを示し、上位7ビツトがセグメ
ントアドレスを示す。語アドレスはメモリ22をアクセ
スするためにアドレス回路21に印加される。メモリ2
2は、この実施例では各々が46ピツトから成る512
語金含む抗出し/書込みランタムアクセスメモリである
。メモリ22には、必要なキャッシュメモリ容量を実現
するために、適切な数のメモリ23全追加することがで
きる。追加メモリ23を用いることにより、パ結台的”
メモリ計算となり、一致回路24のような他の回路も追
加する必要があり、追加されたメモリの各々について1
つの一致回路24要とする。このような結付的設計は前
述の米国特許に示されている。これは当業者には公知で
あるため、第2図ではこわらをすべて図示してはいない
が、結合的設訓は、複雑さは増加t ルカキャッシュ容
量全増加させるのに有用なものであることに注意された
い。
処理装置d10による抗出し動作において、データがア
クセスされるアドレスがアドレスレジスタ20に入れら
れる。アドレス回路21は、下位の語アドレスビットを
用いて対応する語をメモリ22にアクセスする。(メモ
リ23に対しても同時にアクセスが行われる)。メモリ
22内の情報は3つのフィールドに分割さ扛る。すなわ
ち、32ビツトの内容フィールドは、主メモリ13に蓄
えられている情報語のコピーであり、13ビツトのタグ
フィールドは、この情報が主メモリ13に蓄えられてい
るアドレスの上位ビットを表わしており、単一の有効ビ
ットすなわちtt Vビット″は、内容フィールドが有
効であり、主メモリ13に蓄えられている情報の代りと
して用いることができる時に1にセットされる。
Vビットは、メモリ22の内容が書き込まれた後、主メ
モリ13の内容が1き換えられて、メモリ22のそのア
ドレス位置の内容が無効となって1更用できなくなると
、ゼロにリセットされる。
レジスタ20からの13ビツトの上位アドレスビットと
、メモリ22から読み出された13ビツトのタグフィー
ルドは、一致回路24で比較され、メモリ22のそのア
ドレス位16に蓄えられている内容が捜されている情報
であるか否かが決定される。さらに、アクセスされた位
置の有効ビットも一致回路24で調べらnて、蓄えられ
ていた情報が使用b」能かどうかチェックさ才りる。上
位アドレスビットがタグと一致し、有効ビットが−1で
めると、一致回路24はパ的中”出力全発生し、メモリ
22の内容フィールドを処理装置に送出すべきことを指
示する。そうでなければ、一致回路24は°′失敗”出
力全発生し、メモリ22の内容は使用できず、代りに主
メモリを読み出すべきことを指示する。
主メモリ13への書込み動作が行わ扛ると、キャッシュ
メモリでは、上述のような、主メモリ位置の内容がメモ
リ22に含ま肛ているかを決定するだめの同様のサイク
ルが実行される。その結果が的中であると、メモリ22
でアドレスされた位置の有効ビットがゼロにリセットさ
れて、無効のマークが付けられ、メモリ22のこの内容
は以後の読出しには利用できず、代りに主メモリ13で
更新された情報を使用すべきことが示さ扛る。
第2図の従来技術によるキャッシュメモリは、単一ビッ
トの有効ビットがメモリ22の各語とともに蓄えられて
おり、主メモリへの書込みの度にキャッシュメモリのサ
イクルを必要とする。たとえば直接メモリアクセス15
による主メモリへのブロック書込みのように多数の1込
み動作が行われると、キャッシュメモリは対応する数の
キャッシュメモリサイクルを実行し、処理装置10によ
るキャッシュメモリの読出し効率が減少してし1つ。
第3図は本発明に従った、改良されたキャッシュメモリ
構成の一実施例乞・示している。
この構成は第1図のシステムのキャッシュメモリ11と
して有利に用いることができる。
主メモリで読出し又は1込みを行うべき位置の物理アド
レスはキャッシュメモリのアドレスレジスタ30へ蓄え
られる。本実施例では22ビツトのアドレスが用いられ
、下位9ピツトが語アドレスフィールドであり、6ヒツ
トがページアドレスフィールドであり、」二位7ビツト
がセグメントアドレスフィールドである。語アドレスは
、本実施例では各々が32ビツトの512語を蓄える内
容メモリ32をアクセスするために、アドレス回路31
に印加さnる。この読出し/1込みランダムアクセスメ
モリ32は、主メモリに蓄えられている語の一時的コピ
ーを蓄える。メモリ32の語位置からの内容は、一致回
路39を含む制御回路がメモリ状出し動作中に的中を検
出すると、処理装置10に送出さnる。
アドレスレジスタ30の語アドレスフィールドの上位5
ビツトは、本実施例では各々が29ビツトの32語を蓄
える読出し/曹込み″  ランダムアクセスメモリであ
る制御メモリ36をアクセスするためにアドレス回路3
7にも印加される。上記の語は2つのフィールド、すな
わち13ビツトのタグフィールドと、16ケの有効ビッ
トすなわちVビットを含む16ビツトフイールドに分割
さ扛ている。制御メモリ36内の各語は、内容メモリ3
2の16語ブロックに対応しており、13ビツトのタグ
フィールドはこの16語プロ、ツク内の語の各、々の上
位アドレスビットであり、16ケのVビットの各々は内
容メモリ32内のブロック内の16語の1つに対応して
いる。本実施例では、ブロックは16ケの連続した語か
らなり、その先頭は16語境界−m−例えばアドレスの
下位4ビツトがゼロである位置−一一一から開始する。
内容メモリ32には追加自答メモリ33’t  。
力■えることができ、このとき市If (illメモ1
)36にも1一対一の関1糸で、追加制御メモ曹ノ43
が伺加される。各々の追加制御メモリ43は追加メモリ
33に対応するタグ及びVピント情報を含んでいる。当
栗者には公知のように、例えば一致回路34.39及び
ラッチ回路42を含むキャッシュメモリ回路のあるもの
も同様に追加される。このような結合的キャッシュメモ
リは、その複雑さを容認すれば有用なものであるが、そ
の設計手法を詳しく述べるのは畑雑であり、本発明の理
解の妨げとなる。
レジスタ30に蓄えられている語ア′ドレスの下位4ビ
ツトは、1対16デコーダ38でデコードされ、制御メ
モリ36から得ら才する■ビットフィールドから正しい
Vビ゛ノトイ立直を選択するのに用いら扛る。アドレス
さn fc語に対応するVビワ位置匝は、制御メモ1ノ
36から得られたVビットの内’11−に一致回路39
で比較される。選択さ′nたVビットの2進状態は、一
致回路34によって伺勢された時に一致回路39から出
力される。
制(a4+メモリ36に含まれている13ビツトのタグ
フィールドは、内容メモリ32に蓄えられている対応す
る16語ブロックのアドレスの上位13ビットfc表わ
している。これは、第2図の従来技術のシステムとは対
照的であり、該システムではメモリ22に蓄えられた語
の各々が個々のタグフィールドを持っていた。制御メモ
リ36から得られる13ビツトのタグフィールドは一致
回路34によってレジスタ30内のアドレスの上位13
ビットと比較される。一致に成功すると一致回路34か
らブロック的中2進状態出力が出され、レジスタ30に
工ってアドレスされているブロック内の1つ又はそれ以
上の語がメモリ32内に含まれていることを示すか、あ
るいはすべてのVビットが無効のマークを付けらnてい
れば、ブロックの有効な語がメモリ32には含まれてい
ないことを示す。一致回路34からの付勢信号があると
、一致回路39はアドレスされている飴のVビット情報
を発生し、第2図の一致回路24で発生したのと同様の
、語的中又は失敗表示を完成させる。
以上のように、第3図の回路は、第2の回路と同様の方
法で、単一語の読出し及び盲込みに対する動作も行うこ
とができる。たとえば、個々の内容メモリの512語に
合計512個のVビットがあり、1対1に対応している
しかし、第2図の構成では512ケのタグが蓄えられて
いるのに対し、第3図の構成では、32ケのタグが蓄え
られている。第2図では、タグは個々の語のアドレスの
上位ビットに対応しているのに対し、第3図の構成では
タグは16語ブロックのアドレスの上位ビットに対応し
ている。                   (単
一語の読出し動作の各々において、第3図の回路で行う
的中/失敗検出動作は第2図のものと同様のも、のであ
る。なぜならfRl、I mlメモリ36からの個々の
Vヒツトの選択はデコーダ38と一致回路39の動作に
工って行われているからである。従って、第3図の回路
は第2図の回路と同じように用いることができ、個々の
語の内容は的中表示の場合は個々にアクセスすることが
でき、また有効な時はキャッシュメモリの内容を送出す
ることができる。さらに、デコーダ38の動作により、
個々のVビット全リセットすることができ、キャッシュ
に含まれている語に対してメモリへの個々の語の書き込
みがあった時には、個個の語ごとにメモリ32の内yt
無効化することができる。第3図のキャッシュメモリ構
成により、最大32の異った16語ブロックから成る最
大512語を蓄えることができる。
、 第3図をさらに詳しく見ると、レジスタ30に蓄え
られたアドレスは2つの情報源から得られている。マル
チプレクサ35は、1語ずつの読出し又は魯込み動作に
ついては処理装置かも、またブロック直接メモリアクセ
ス*:込み動作については直接メモリアクセズから、ア
ドレス情報を受信してレジスタ30に入れる。直接メモ
リアクセスによって印加されたアドレスの下位4ビツト
は全セロ検出器41に印加される。これらの下位ビット
がゼロであれば、16語ブロックの先頭であることがわ
かる。この条件と、面接メモリアクセスが動作中である
こと及び1込みが行われていることを示す信号が、アン
ドゲート40で検出され、その出力により、直接メモリ
アクセスブロック書込みが開始したことが示さ扛る。こ
の出力はマノ1チプレクサ35に送ら扛、2つのアドレ
スのうちのどちらをレジスタ30に入れるかを制御する
のに用いら肛る。
通常は、マルチプレクサ35は処理装置からのアドレス
をアドレスレジスタに印加する。
アンド回路40の出力により、マルチプレクサ35は、
通常の処理装置からのアドレスの代りL1直接メモリア
クセスからのアドレスをアドレスレジスタ30に印加す
る。さらに゛、アンドケート40からの出力はラッチ回
路42にも送られ、こ\でブロック的中/失敗の検出が
終了するまで保持、される。制Wメモリ36の胱出しが
開始され、一致回路34がフロック的中の検出を行う。
的中であれば、アドレスされているブロック内の1語又
はそれ以上の語がメモリ32内に存在することが示され
ていることになる(ただしこの)゛口゛ンクに対するす
べてのV゛ビツト無効のマークをつけられていることが
ない場合)。
一致回路34からのフロック的中出力はラッチ回路42
へ送ら扛、ここで直接メモリアクセスブロック■:込み
が開始したことを示す情報と結合される。この結果、無
効化が要求され、制御メモリ36へ信号が送られ、制御
メモリに蓄えられているこのブロックに対応した16ケ
のすべてのVビットが単一の動作でゼロにリセットされ
る。これは、16ヒツトのすべてのVビットが、プロ゛
ンク直接メモリアクセス省込み動作によって現に薔込ま
扛ているフロックに対応するタグとともにメモリ36内
の同じ物理位lkに蓄えら才しているために可能となっ
ているものである。よって、ブロック直接メモリアクセ
ス1込みが331.往行われているブロック内の任意の
語が第3図のキャッシュメモリ内に含まれていれば、こ
のブロックに対するすべてのVヒツトが単一のキャッシ
ュメモリサイクル内にリセットされ、キャッシュメモリ
が16回のキャッシュメモリサイクルで各Vビット全リ
セットする心安はない。よって、第3図のキャッシュメ
モリは、ブロック直接メモリアクセス書込み動作の残り
の部分を自由に1更えることになる。
【図面の簡単な説明】
第1図は本発明を採用することのできるメモリシステム
のブロック図であり、 □′ 第2図は従来技術によるキャッシュメモリ  “装置の
ブロック図であり、 第3図は本発明によるキャッシュメモリシステムの一実
施例のフロック図である。 〔主要部分の符号の説、明〕 主メモリ・・・13 キャッシュメモリー・・11 ブロックを主メモリに曹込む手段・・・15無効化する
手段・・・30.31.34.35.37.38.39
.40. 41.42 1込みの発生を検出する手段・・・40.41有効ビツ
トを蓄える手段・・・36 出ID人    ウェスターン エレクトリックカムパ
ニー、インコーボレーテツド 図面の浄Lit(内容に変更なし) FIG、I FIG、2 的′P/失改 手続補正書(方式) %式% 1事件の表示昭和58年 特許願第50278 −2、
発明の名称 メモリシステム 3 補正をする者 事件との関係  特許出願人 4代理人

Claims (1)

  1. 【特許請求の範囲】 ■、 主メモリと、キャッシュメモリと、直接メモリア
    クセスによって連続する語の、ブロックを該主メモリに
    書込む手段と、該曹込む手段に応動して該キャッシュメ
    モリ内の該語のすべてを同時に無効化する手段とを含む
    メモリシステム。 2、特許請求の範囲第1項記製、のメモリシステムにお
    いて、前記無効化する手段は、前記語の前記主メモリへ
    の書込みの発生を検出する手段と、該検出する手段に応
    動し前記キャッシュメモリ内の該語のすべてを同時に無
    効化することを検出する段とを含むことを特徴とするメ
    モリシステム。 3 特許請求の範囲第2項記載のメモリシステムにおい
    て、前記キャッシュメモリは前記ブロック内のも語に苅
    する有効ビットを蓄える手段を含み、前記無効化する手
    段は、該有効ビットを予め定め升状態にセットする手段
    を含むこと全特徴とするメモリシステム。 4、特許請求の範囲第3項記載のメモリシステムにおい
    て、前記無効化する手段は、さらに、前記ブロック内の
    任意の語が前記キャッシュメモリ内に存在することヲ恢
    出する手段を含むことを特徴とするメモリシステム。 5、特許請求の範囲第3項又は第4項記載のメモリシス
    テムにおいて、前記寝込みの発生を検出する手段は、前
    記ブロックの予め足めた語の曹込みを検出する手段を含
    むこと’に%徴とするメモリシステム。 6、特許請求の範囲第5項記載のメモリシステムにおい
    て、前記ブロックの予め泥めた語の書込みを検出する該
    手段は、該詔のアドレスの下位ビットがすべてゼロであ
    ることを検出する手段を含むことを特徴とするメモリシ
    ステム。 7.1.込みを行うべきメモリ位置の物理アドレ、スを
    蓄えるアト1ノスレジスタが含まれることと、該アドレ
    スレジスタの語アドレスの下位ビットによってアドレス
    される該メモリ位置の内容を蓄えるための内容メモIJ
    が含まれることと、該内容メモ1ノに蓄えられたn h
    のブロックの上位タグアドレスビットとn個の有効ビッ
    トとを蓄えるための制御メモリが含まれることと、該有
    aビットの各々が該内容メモリに蓄えられた該1語のそ
    れぞれに関連していることと、該市制御メモリが該アド
    レスレジスタの語アドレスの第1の数の下位ビットに工
    ってアドレスさ扛ることと、該アドレスレジスタの上位
    アドレスビットを該制御メモ1ノの該タグアドレスビッ
    トとマツチングさせて、該メモリ位置における該プロ゛
    ツク内の任意の語が該内容メモリ内に存在すること全判
    定する手段が含まれることと、上位アドレスビットをマ
    ツチングさせる手段に応動して、該アドレスレジスタの
    第2の数の下位アドレスビット全デコードし、該デコー
    ドさ肛た数を該制御メモリから得られる該n IIW+
    の有効ビットとマツチングさせて該δM 0)TJ応す
    る1つが該内容メモリ内に存在することを決足する手段
    が含ま汎ることと、前記アドレスビットをマツチングさ
    せる手段に応動し、該メモリ位置における該フロック内
    の語が該内容メモリ内に存在する時に該制御メモリ内に
    おける該メモリ位−1の該ブロックの該n個の有効ビッ
    トを予めボめた状態に同時にセットする手段が含ま扛て
    いることとを特徴とするメモリシステム。 8、特許請求の範囲第7項記載のメモリシステムにおい
    て、前記n個の有効ビットを予め足めた状態にセットす
    る手段は、更らに、該メモリ位11のアドレスの複数個
    の下位ヒツトにも応動すること?’%徴とするメモリシ
    ステム。 9 %許請求の範囲第7項記載のメモリシステムにおい
    て、該メモリシステムは、更らに複数個の内容メモリと
    複数個の制御メモリとを一セットの連結した配列状態で
    含むことk %徴とするメモリシステム。
JP58050278A 1982-03-25 1983-03-25 メモリシステム Granted JPS58212694A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/361,499 US4504902A (en) 1982-03-25 1982-03-25 Cache arrangement for direct memory access block transfer
US361499 1982-03-25

Publications (2)

Publication Number Publication Date
JPS58212694A true JPS58212694A (ja) 1983-12-10
JPH0345407B2 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)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63163940A (ja) * 1986-09-18 1988-07-07 ディジタル イクイプメント コーポレーション デジタルデータ処理システム
JPH04280346A (ja) * 1991-03-08 1992-10-06 Fujitsu Ltd 情報処理装置

Families Citing this family (48)

* Cited by examiner, † Cited by third party
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
US5045996A (en) * 1986-11-12 1991-09-03 Xerox Corporation Multiprocessor cache memory housekeeping
DE3782335T2 (de) * 1987-04-22 1993-05-06 Ibm Speichersteuersystem.
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
DE68924306T2 (de) * 1988-06-27 1996-05-09 Digital Equipment Corp Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern.
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
EP0461923B1 (en) * 1990-06-15 1997-10-01 Compaq Computer Corporation True least recently used replacement apparatus
JP2774862B2 (ja) * 1990-07-16 1998-07-09 株式会社日立製作所 Dma制御装置および情報処理装置
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
AU662973B2 (en) * 1992-03-09 1995-09-21 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 松下电器产业株式会社 存储系统控制方法
US7587521B2 (en) * 2005-06-23 2009-09-08 Intel Corporation Mechanism for assembling memory access requests while speculatively returning data
US8332598B2 (en) * 2005-06-23 2012-12-11 Intel Corporation Memory micro-tiling request reordering
US7765366B2 (en) * 2005-06-23 2010-07-27 Intel Corporation Memory micro-tiling
US8253751B2 (en) * 2005-06-30 2012-08-28 Intel Corporation Memory controller interface for micro-tiled memory access
US7558941B2 (en) * 2005-06-30 2009-07-07 Intel Corporation Automatic detection of micro-tile enabled memory
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

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5613576A (en) * 1979-07-11 1981-02-09 Fujitsu Ltd Memory access control system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
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
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5613576A (en) * 1979-07-11 1981-02-09 Fujitsu Ltd Memory access control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63163940A (ja) * 1986-09-18 1988-07-07 ディジタル イクイプメント コーポレーション デジタルデータ処理システム
JPH04280346A (ja) * 1991-03-08 1992-10-06 Fujitsu Ltd 情報処理装置

Also Published As

Publication number Publication date
JPH0345407B2 (ja) 1991-07-11
GB8307861D0 (en) 1983-04-27
CA1186804A (en) 1985-05-07
EP0090575B1 (en) 1989-07-19
DE3380233D1 (en) 1989-08-24
GB2117148B (en) 1985-11-06
GB2117148A (en) 1983-10-05
EP0090575A2 (en) 1983-10-05
US4504902A (en) 1985-03-12
EP0090575A3 (en) 1985-05-22

Similar Documents

Publication Publication Date Title
JPS58212694A (ja) メモリシステム
EP0258559B1 (en) Cache memory coherency control provided with a read in progress indicating memory
KR100204741B1 (ko) 제1및 제2캐시 메모리 사용방법
EP0192202B1 (en) Memory system including simplified high-speed data cache
CA1124888A (en) Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
US4493026A (en) Set associative sector cache
US5070502A (en) Defect tolerant set associative cache
US5201041A (en) Cache bypass apparatus
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
US5146603A (en) Copy-back cache system having a plurality of context tags and setting all the context tags to a predetermined value for flushing operation thereof
US5671231A (en) Method and apparatus for performing cache snoop testing on a cache system
US5590310A (en) Method and structure for data integrity in a multiple level cache system
JPS61114353A (ja) 要求時ペ−ジングメモリを有するデジタルデ−タ処理システムのアクセス照合構成体
US5161219A (en) Computer system with input/output cache
EP0470739A1 (en) Method for managing a cache memory system
US5287512A (en) Computer memory system and method for cleaning data elements
JPH04336641A (ja) 処理システムにおける使用のためのデータキャッシュおよび方法
JPH0580018B2 (ja)
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
US5960456A (en) Method and apparatus for providing a readable and writable cache tag memory
GB2037466A (en) Computer with cache memory
JPH0210446A (ja) バッファ記憶装置
EP0150523A2 (en) Data processing system with improved memory system
KR100201671B1 (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 캐시 메모리 이용방법
JPS603769A (ja) エラ−回復方法