JPH05502123A - キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法 - Google Patents

キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法

Info

Publication number
JPH05502123A
JPH05502123A JP2507465A JP50746590A JPH05502123A JP H05502123 A JPH05502123 A JP H05502123A JP 2507465 A JP2507465 A JP 2507465A JP 50746590 A JP50746590 A JP 50746590A JP H05502123 A JPH05502123 A JP H05502123A
Authority
JP
Japan
Prior art keywords
data
unit
memory
memory means
write
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
JP2507465A
Other languages
English (en)
Other versions
JP3637054B2 (ja
Inventor
パテル,ビーコー・ジェイ
Original Assignee
エルジー・セミコン・カンパニー・リミテッド
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 エルジー・セミコン・カンパニー・リミテッド filed Critical エルジー・セミコン・カンパニー・リミテッド
Publication of JPH05502123A publication Critical patent/JPH05502123A/ja
Application granted granted Critical
Publication of JP3637054B2 publication Critical patent/JP3637054B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • 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/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

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

【発明の詳細な説明】 キャッシュ/メインメモリのコンノステンンを維持するための装置及び方法発明 の分野 本発明はデータ処理用の装置及び方法に関し、より詳細には、ライトスルーキャ ッシュと書き込みデータをバッファリングするための前記キャッシュと平行する ローカルバッファメモリとを有する中央処理装置(CPU)に関する。CPUは 外部で生じたメインメモリへの書き込みの発生(occurrence)を検出 する回路、及びメインメモリのデータがバッファメモリからの新しくない可能性 のあるデータで重ね書きされるのを避けるために、関連するメモリコマンドを書 き込みアクセスのワード形式から、書き込みアクセスのワード形式より少ないよ うに変更する回路を含む。
本発明の背景 ここで説明される発明は、マルチバイトのメモリワードを記憶するために編成さ れた複数のメモリ装置をメモリ制御装置が制御するデータ処理システムの形式で 特に有用である。そのようなメモリでは、エラー検出及び訂正シンドロームビッ トは典型的にはメモリの多数のバイト、例えば32ビツトメモリワードの4バイ ト、にわたって生成される。中央処理装置CPUがそのようなメモリにデータの ワードを書き込むとき、エラーシンドロームビットはそのワード全体に対して生 成され、関連するメモリ装置に記憶される。しかしながら、CPUが、1バイト (8ビツト)又はハーフワード(16ビツト)のデータなどのような、全ワード のデータよりも少ない書き込みをするときには、メモリ制御装置は最初に全ワー ドのデータを読み、そのバイトをマージし、全マージされたワードにわたってエ ラーシンドロームビットを生成し、関連するシンドロームビットをもつマージさ れたワードをメモリに戻して書き込むように動作する。周知のように、この読み 取り/変更(modify)/書き込み形式のアクセスは時間のかかる処理であ る。
あるシステムでは複数のCPUが共通のシステムバスに結合され、そしてそのバ スを通じて1つまたはそれ以上のメモリユニットに結合されている。各CPUは ローカルキャッシュメモリを有しており、メインシステムメモリの一部分のコピ ーが維持される。そのようなシステムでは、キャッシュメモリ内のデータの変化 に正確に反映してメインメモリが更新されることが、望まれる目標である。例え ば、そのような/ステムはライトスルー形式のキャッシュメモリを用いており、 キャッシュに書き込まれたデータはまたキャッシュを”スルー(through )”してメインメモリに書き込まれる。こうするためにキャッシュと平行に先入 れ先出しくF I FO)メモリが用いられる。FIFOはCPUから書き込み データを受け入れて、そのデータをシステムバスを通じてメインメモリにあたえ る前に一時的にそのデータをバッファリングする。FIFOは通常はワード幅又 はそれ以上である。
幅が1つのワードよりも少ないこれらの書き込み動作に対しては、FIFO内に 記憶されたデータは読み取り/変更/書き込み形式のアクセスの結果に反映され 、そこではバイト又はハーフワードはCPUによってキャッシュワードと既にマ ージされている。よって、バイト又はハーフワードをメモリに書き込みそしてエ ラーシンドロームビットの生成における読み取り/変更/書き込みサイクルの時 間遅延を被る代わりに、より効率的なキャッシュメモリライトスルー技術は全か つ既にマージされたワードをFIFOからメモリに書き込む。
しかしながら、マルチプロセッサシステムの他のCPUのような他のシステムバ ス作用物(agent)が、ワードのデータが一時的にFIFOにバッファされ る時間の間隔の間に、メインメモリに書き込むときに問題が起こる。この場合、 メインメモリのワード、即ちFIFOのターゲット、は他のバス作用物によって 今更新されたところかも知れない。FIFOからフルワードが書き込まれること を許すと、FIFO内に含まれる古いデータによって新しいデータが重ね書きさ れ、メインメモリの新しいデータが壊される結果となる。
従って本発明の1つの目的は、ローカルキャッシュメモリへの書き込み動作の結 果としてメインメモリ内のデータを更新するための方法及び装置を提供すること である。
本発明の他の目的は、FIFOバッファのようなデュアルポートメモリをキャッ シュメモリと平行に与えることによってメインメモリ内のデータを更新するライ トスルーキャッシュを用いるための方法及び装置を提供し、更にいつFIFOバ ッファからメインメモリへのフルワード書き込みのデータを無効にする書き込み がメインメモリに起こるかを検出するための回路を提供することである。
更に本発明の目的は、FIFOバッファをキャッシュメモリと平行に与えること によってメインメモリ内のデータを更新する、ライトスルーキャッシュを用いる ための方法及び装置を提供し、更にいつ書き込みがメインメモリに起こるかを検 出するための回路、及びメインメモリのデータが新しくない可能性のあるデータ で重ね書きされるのを避けるために、関連するメモリコマンドをワード書き込み (word write)アクセスから、書き込みアクセスのワード形式より少 ないように変更する回路を提供することである。
本発明の概要 システムバスを通じてシステムメモリ内にデータを記憶するユニットのための方 法及び装置によって前記の問題は克服され、本発明の目的は実現される。特定的 にはキャッシュメモリが教授されており、それにおいては1つのワードよりも少 ない長さの書き込み動作に対して第1のバス作用物に関連するFIFOメモリデ バイス内に記憶された書き込みデータは読み取り/変更/書き込み形式のアクセ スの結果を反映し、そこではバイト又はハーフワードはローカルプロセッサによ ってキャッシュワードとマージされる。システムバスに駆動するメモリ制御ライ ンは、書き込み動作がワード書き込み(word write)として行われる ことをメモリ制御装置に示し、それによって読み取り/変更/書き込みのメモリ 制御装置のサイクルを行うのに要する付加的な時間を除く。他のCPUやI10 デバイスのような他のシステムバス作用物が、ワードのデータが一時的にFIF Oにバッファされる時間の間隔の間及び新しい書き込みデータがFIFOによっ て重ね書きされる時間の間隔の間に、システムメモリに書き込むときの問題を避 けるために、システムメモリへの他のシステムバス作用物によってなされる外部 の書き込みを検出するための回路が提供される。FIFOがデータを記憶してい ることを検出するための回路も提供され、そしてワード書き込みの代わりにワー ド書き込みより少な(示すようにメモリコマンドラインを変えるための回路が与 えられる。これによってメモリ制御装置が、ローカルプロセッサによって変更さ れたデータワーqのその部分にだけ動作するようにし、そしてそのワードのその 部分のみとメインメモリからのワードとをマージするように従来の読み取り/変 更/書き込み形式のサイクルを行うようにする。例えば、バイト又はハーフワー ドは、これもまたFIFOにバッファされるアドレスの最下位のビット(lea st 51gn1ficant bit)によってメモリ制御装置へ識別される 。
図面の簡単な説明 本発明の前記及び他の特徴は添付の図面と関連して以下の本発明の詳細な説明を 読むとより明確になる。
図1は本発明に従って構成され動作する一データ処理システムのブロック図であ る。
図2は本発明を実施するための一回路の簡略化された路線図である。
本発明の詳細な説明 図1は本発明に従って構成され動作するデータ処理システム1の一部分のブロッ ク図である。システム1はCPUIからCPUnで示されたような少なくとも1 つの中央処理装置(CPU)を含む。典型的には各CPUl0は他のCPUと同 じ構成である。CPUl0は、マイクロプロセッサデバイスのようなプロセンサ 12を含み、それは複数のデータライン(DATA)12a、アドレスライン( ADDR)12b及び制御ライン(CONT)12cを経由でローカルキャソン ユメモリ14に結合されている。キヤノンユメモリ14はバス14aを経由して バスインターフェースユニット16に結合されていて、そのバスインターフェー スユニット16はシステムバス(SB)20との両方向データ通信を提供する。
また、キャッシュ14に関連している複数のパリティライン及び当業者には周知 である多種の他の形式の信号は示されていない。バス14aはデータ、アドレス 及び制御ライン12a乃至12cを含む。FIFOバッファ18のようなデュア ルポートメモリデバイスがキャッシュ14と平行に結合されている。PIFOI 8は、メインメモリ24を更新することを意図している書き込みデータを短期間 バッファするように機能し、メインメモリ24はメモリ制御装置22を介してシ ステムバス20に結合されている。PIF018は、書き込みデータが5B20 に与えられる前に、プロセッサ12からデータを受信し記憶するように動作する 。
そこにおいて、プロセッサ12は典型的には5B20よりも速いクロック値で動 作し、PIF018はプロセッサ12が典型的には遅い5B20と同期すること なしにデータを書き込みそして動作を続けることを可能にする。PIFO18は 少なくとも1つ、典型的には4つまでのワード又はダブルワードのデータを記憶 するのに十分なメモリ容量をもって与えられる、しかし、この典型的な数よりも 多くも又は少くも容易に与えられる。
ユニット24の個々の1つのメモリ密度と、システム1の所望される合計メモリ 容量とによって、複数のメモリユニット(MEMI乃至M E M n )が与 えられる。メモリ制御装置22はエラー訂正回路(FCC)22aを含む。EC C22aは一度にワードのメモリデータにシンドロームビットを生成しテストす るように動作する。この一実施例ではワードのメモリデータは幅が4バイト、又 は32ビツト、であると考える。例えば、メモリ制御装置22、メモリユニット 24.5B20.FIFO18及びキャッシュ14は、ダブルワード(64ビツ ト)やカッドワード(128ビツト)のような多重のワードのデータを同時に送 り、読み取り及び/又は書き込みするために動作可能である。
1つのワードよりも短い書き込み動作については、PIFO18に記憶されたデ ータはキャッシュ書き込みヒツトの結果を反映し、そこでは読み取り/変更/書 き込み形式のアクセスは1つのバイト又はハーフワードとキャッシュワードとを マージするようにプロセッサ12によって行われる。また、あるC0NT12ラ インは、ワード書き込みとして書き込みが成されたことをメモリ制御装置22に 示し、それによって読み取り/変更/書き込みのメモリ制御装置サイクルを達成 するのに要求される付加的な時間を除去する。しかしながら、例えば、ワードの データが一時的にFIFO18にバッファされる時間の間隔の間にCPUnがメ モリ24に書き込むとき、前記の問題が起こる。この場合、メインメモリのワー ド、即ちFrFO18書き込みのターゲット、はCPUnによってちょうど変え られたところかもしれない。もしFIFO書き込みがワード書き込みとして処理 されることが許されたら、新しいデータはキャッシュ14からの古いデータによ って重ね書きされてしまうであろう。CPUn又は他のバス作用物によってメモ リ24になされた書き込みをCPUI内で検出し、そしてC0NT12Cメモリ コマンドラインがワード書き込みの代わりにバイト書き込み又はハーフワード書 き込み動作を示すように変えることによって、この問題は避けられることを説明 する。このことによって、メモリ制御装置22は書き込まれたバイト又はハーフ ワードのデータにのみ動作し、そしてバイト又はハーフワードとメインメモリか らのワードとをマージするように従来の読み取り/変更/書き込み形式のサイク ルを行うようにする。バイト又はハーフワードはアドレスの最下位のビットによ って識別され、それもはたFIFO18によってバッファされる。
本発明に従うと、CPUl0の各々はメモリ24へのそのような外部の書き込み 発生を検出する回路、及びそのような外部の書き込みが起こった後のメモリ24 へのフルワードのデータの書き込みからFIFO18を妨げる回路が与えられる 。
図2を参照すると、FIFO18が詳細に示されている。単一のデバイスとして 示されているが、IF018は32データライン12a、関連する32ビツトア ドレスライン12b1及び関連する制御ライン12cをバッファするために典型 的には複数の個別のFIFOデバイスを備えていることに留意されたい。例によ ると、制御ラインはデータ及びアドレスに関連するメモリアクセスの形式を識別 する。即ち、制御ラインはプロセッサ12がFIFO18に記憶された関連する ワードのデータにバイト書き込み、ハーフワード書き込み、又はワード書き込み を行ったかどうかを示す。バス18aはFIFO18の出力からの、バッファさ れたデータ(BDATA) 、バッファされたアドレス(BADDR) 、及び バッファされた制御ライン(BCONT)を含む。複数のシステムバス20ドラ イバはFIFO18の出力18aと関連している。図2ではBCONTラインの 一部分と関連しているそれらドライバ26のみが示されている。バッファ26c 乃至26fは5B20に4ビットメモリ制御信号(MCO*乃至MC3*)を与 え、信号名に続く星印は、従来の様式で論理零又は以下のときに信号は断定され る(asserted)ことを示す。MCn*制御ビットは以下の様式でメモリ アクセスの形式をメモリ制御装置22に識別するようにコード化される。
MCO* MC1* MC2* MC3*OOOOワード書き込み 0 0 1 0 ハーフワード書き込み0 0 1 1 バイト書き込み ・ NANDバッファ26cから26fは、制御システムアクセスイネーブル(SA EN)信号がCPUの回路(示さず)に断定されたときに、それらの関連するメ モリ制御ビットを5B20に駆動するように使用可能にされる。5AENの断定 はCPUl0から5B20へのデータの駆動をイネーブル(enable)にす る。
2個の更なるNANDバッファ26a及び26bがバッファ26c及び26dに 関連していて、それらの出力はそれぞれバッファ26cと266の出力にワイヤ ーオアド(wire−ored)されている。好ましくはバッファ26はオープ ン制御装置形式のデバイスであり、そこではそのようなワイヤーオアド接続は既 になされている。
バッファ26a及び26bの目的は、制御信号表示をMC2*及びMC3*が両 方低のワード書き込み表示にするよう、バイト書き込み又はハーフワード書き込 み制御信号表示、MC2*及びMC3*高又はMC2*高及びMC3*低を、そ れぞれ、通常無効にすることである。バッファ26a及び26bの各々は入力信 号としてゲート28の出力を有し、ゲート28は入力信号として”強制ワード書 き込み(force word write)” (FWW)信号を有する。F WWはバッファされた制御ラインのひとつであってPIF018から出力されて おり、FWWはプロセッサ12書き込みがキャッシュをヒツトするときに断定さ れるキャッシュ書き込みヒツト(CA、CHE WRITE HIT)信号の結 果として高と断定される。CACHE WRITE HIT信号の状態はプロセ ッサ12によってキャッシュ14に及びFIFO18に書き込まれる関連するワ ードのデータとともにPIFO18内に記憶される。通常非断定(normal ly deasserted)のUNFWW*信号(後に説明される)と関連し て、FWW信号は断定されたときメモリ制御装置22にワード書き込みコマンド を強制する。これによってメモリ制御装置22がワードのデータを書き込むよう にし、それによってメモリ24にハイド又はハーフワードのデータを書き込むと きに用いられる通常要求される読み取り/変更/書き込み形式のアクセスを除去 する。
しかしながら、データが一時的にPIF018にバッファされる間にメモリの外 部書き込みが起こるそれらの状況に対して、強制ワード書き込みは望ましくなく 、FIF○18のデータはメモリ24内の新しく書き込まれたデータに重ね書き するかもしれない。そのような状況の発生を避けるために、CPUl0は、その ような外部書き込みの検出、及びそのアクセスのワード書き込み形式をアクセス のバイト書き込み又はハーフワード書き込み形式に戻すように変換をする付加さ れた回路を更に含む。
更に本発明に従うと、CPUl0は、5B20に結合された他の作用物がメモリ 24に書き込みを行うときに検出するための、コンパレータ29のような、回路 を含む。この他のバス作用物は、例によると、マルチCPUシステムの他のCP Uであり得、またディスク又は通信ボートのようなI10デバイスからメモリ2 4にデータを書き込むために使用可能なI10インターフェース回路であり得る 。他の作用物による書き込みアクセスの発生はキヤツシユ14の問い合わせ(1 nterrogation)及び、もし必要なら、キャッシュ14の無効(in validation)が結果となる。これらの機能を行う回路(示さず)は公 知である。更に5B20を通じてのそのような書き込みアクセスの発生はコンパ レータ29によって検出され、”システム外部書き込み保留(system e xternal write pending)−(S XWP)信号を生成す る。この信号はJKフリップ/フロップ(F/F)30への入力であり、この信 号の断定はF/F 30が次のクロック(CLK)入力のエツジにセットするよ うに影響する。F/F 30のQ出力は“外部書き込み保留” (XWP)と表 示された信号であり、断定されたときに、それは外部で生成された書き込みが5 B20に起こったことを示す。sxwp信号の生成に続いて、CLKの他のエツ ジにF/F 30をリセットするようにCPUl0によって“外部書き込み保留 クリア(clear external write pending)” ( CLRXWP)信号が生成される。
CLRXWPは、メモリ24の外部生成書き込みアクセスに応答してキャッシュ 14問い合わせが及び、もし要求されるならば、キャッシュ14無効が起こった ことを示すように生成される。
F/F 30からのXWP信号出力は、FIF○18からのEMPTY*フラグ と関連してANDゲート34に与えられる。PIF018が空のとき、即ちFI F○18がバッファされた書き込みを含んでいないとき、EMPTY*信号は低 でありANDゲート34からの低を強制する。PIF018が1個又はそれ以上 のバッファされた書き込みを含むときEMPTY*信号は非断定又は高である。
XWPが高、XWPはメモリ24への外部システムバス書き込みの発生を示す、 であるのに関連してE M P T Y *が高であると、ANDゲート34は 高の出力を有するようになる。ANDゲート34からの高の出力はJK F/F 36のJ入力に加えられ、CLKのエツジと関連して、Q*比出力低に行(よう にする。F/F36のQ*比出力“強制ワード書き込み取り消しくundo f orced word write)” (U N F WW * )で表され た信号である。外部システムバス書き込みが検出されキャッノユ問い合わせが保 留され(XWPは高)そしてPIFO18が少なくとも1個のバッファされた書 き込みを含んでいる(EMPTY*は高)とき、UN F WW *信号は低の みに断定される。U N F WW *が断定され、即ち低であることがAND ゲート28の出力を低にし、更にNANDゲート26a及び26bの出力を高に するようにする。これがFWWの断定により強制されたワード書き込みを無効に し、バッファされたメモリ制御信号(8MC2とBMC3)の状態が、それぞれ メモリ制御ライントライバ26dと26cの出力で反映されるようにする。言い 換えると、もしプロセッサ12がPIFO18内でのワードのデータの生成にお いてバイト書き込み又はハーフワード書き込みを達成したら、MCO*乃至MC 3*ラインはメモリ制御装置22と同じに表示する。バイト書き込み又はハーフ ワード書き込みメモリ制御信号の発生は、アドレスバスと関連して、メモリ24 のアドレスされたワードへの読み取り/変更/書き込みサイクルとしてメモリ制 御装置22によって解釈される。アドレスバスの最下位のビットによって識別さ れるバイト又はハーフワードが、メインメモリから読まれるデータワードとマー ジされ、ECCシンドロームヒツトが生成され、ワードがメモリに戻して書き込 まれる。この様式では他のバス作用物によって最近変えられたかもしれないワー ド内のいずれの他のデータもFIF018内のフルワードのデータによって重ね 書きされない。
もしU N F WW *が断定されなれれば、FWWが断定されている間はA NDゲート28の出力は高である。この高は、5AENが断定されているのと関 連し、オーブンコレクタバッファ26aと26bの出力の両方が低であるように する。
これらの出力の各々に結合されたワイヤーオアドノードは従って論理低に強制さ れ、そしてメモリ制御信号がメモリ制御装置22へのワード書き込み(MCO* 乃至MC3*すべて低)として現れる結果となる。
もしプロセッサ12がキャッシュ書き込みヒツトの結果のワード書き込みを行っ たら、UNFWW*の断定はMC2*及びMC3*ラインの状態を変えず、そこ では8MC2及びBMC3はプロセッサ12の動作によって両方とも高にされる 。
本発明の現在好ましい実施例では、sxwp信号は5B20で検出されるいずれ の書き込みアクセスについても生成される。しかしながら、例えば、キャッシュ 14内に含まれているようなメモリ24の同じページへの書き込みの発生にのみ sxwp信号を生成する書き込みの発生に関連してシステムアドレスバスを復号 するように、更なるロジックが用いられうることが理解されるであろう。その上 、5B20アドレスバスの更なる復号をもって、sxwp信号:′!、検出され たシステムバス書き込みがアドレス、即ち現在FIFO18内あるアドレスと同 じアドレス、に発生するときのみ生成される。復号化プロセスの細分性の度合は 特定の応用及びこの機能のために費やされるロジックの量の関数である。
本発明は32ビツトワード、32ビツトアドレスバス、及び前記で説明された他 の容貌として表されたデータの単位を有するデータ処理システムに関して説明さ れた。しかしながら、本発明の教示は前記で開示されたものから変化する特徴を 有する多種のデータ処理/ステムに応用できることが理解されるであろう。
従って、本発明は、特に、現在好ましい実施例に関して示され説明されたが、形 式及び詳細の変更は本発明の範囲と精神から離れることなく成されることは、当 業者には理解されるであろう。
補正書の翻訳文提出書 (特許法第184条の7第1項) 平成 4年 3月 24遍

Claims (10)

    【特許請求の範囲】
  1. 1.データがシステムメモリ手段に書き込まれる前に、前記データを一時的に記 憶するためにシステムバスに結合された第1の作用物と関連する装置が、所定の 数のビットを有する少なくとも1単位のデータを記憶する手段、前記全単位のデ ータが前記システムメモリ手段に書き込まれることを前記システムメモリ手段に 表示し、又は前記単位のデータの一部分のみが前記システムメモリ手段に書き込 まれることを表示する手段、及び前記システムバスに結合され、前記システムメ モリ手段への第2の作用物による書き込みアクセスの発生を検出するための手段 であって、更に、前記表示手段が、前記全単位のデータが前記システムメモリ手 段に書き込まれるという表示から前記単位のデータの一部分のみが前記システム メモリ手段に書き込まれるという表示に変えるようにするため、前記第2の作用 物による書き込みアクセスの発生の間に前記記憶手段中に記憶された少なくとも 1単位のデータを有する前記記憶手段に結合され且つ応答する検出する手段、を 備える装置。
  2. 2.前記記憶手段は前記第1の作用物のデータのソースに結合された入力及び前 記ステムバスに結合された出力を有するFIFOバッファ手段を備える請求項1 に記載の装置。
  3. 3.前記FIFOバッファ手段は少なくとも1ワードのデータ、前記少なくとも 1ワードのデータに関連するアドレス、及びメモリ手段書き込みサイクルの形式 を特定する複数のメモリ制御ビットを記憶するための多数のビットを有する請求 項2に記載の装置。
  4. 4.前記ワードのデータは4バイトのデータを含み、前記メモリ制御ビットは少 なくともワード書き込みサイクル又はバイト書き込みサイクルを表示する請求項 3に記載の装置。
  5. 5.前記第1の作用物は前記データのソースと前記システムバスとの間に結合さ れたキャッシュメモリ手段を更に含み、そして前記FIFOバッファ手段と前記 キャッシュメモリ手段の両方は前記データのソースから同時にデータを記憶する 請求項2に記載の装置。
  6. 6.システムメモリ手段内に記憶のために第1の作用物からシステムバスにデー タを与える方法が、 少なくとも1単位のデータを前記第1の作用物と関連するデータ処理手段から受 信し、そして前記少なくとも1単位のデータを記憶手段に記憶するステップ、及 び 前記システムメモリ手段内に記憶のために、記憶された単位のデータを前記シス テムバスに与えるステップを備え、この与えるステップは、前記記憶手段がその 中に記憶された少なくとも1単位のデータを有するかどうかを決定するステップ 、 前記システムバスから第2の作用物による前記システムメモリ手段への書き込み アクセスの発生を検出するステップ、及びもし書き込みアクセスの発生が検出さ れなければ、前記全単位のデータが前記システムメモリ手段に書き込まれること を前記システムメモリ手段に表示し、前記システムバスを通じて前記記憶された 単位のデータを前記システムメモリ手段に与えるステップ、又は、もし書き込み アクセスの発生が検出されたならば、前記単位のデータの一部分のみが前記シス テムメモリ手段に書き込まれることを前記システムメモリ手段に表示し、前記シ ステムバスを通じて前記記憶された単位のデータを前記システムメモリ手段に与 えるステップ、を含む、方法。
  7. 7.前記記憶するステップはFIFOメモリ手段に前記単位のデータを記憶する ことによって達成される請求項6に記載の方法。
  8. 8.前記受信するステップは、 前記第1の作用物に関連するキャッシュメモリ手段から単位のデータを読み取る ステップであって、前記単位のデータは複数のバイトのデータを備えているステ ップ、 少なくとも1バイトのデータと前記キャッシュメモリ手段から読み取られた前記 単位のデータとをマージするステップ、及び前記少なくとも1つのマージされた バイトを有する前記単位のデータを前記キャッシュメモリ手段に所定のアドレス で記憶するステップであって、前記記憶手段に前記少なくとも1つのマージされ たバイトを有する前記単位のデータを記憶するステップ、前記記憶手段に前記単 位のデータに関連するアドレスを記憶するステップ、及び前記記憶手段にメモリ コマンドを記憶するステップであって前記メモリコマンドは前記記憶手段内に記 憶された前記単位のデータがその中にマージされた少なくとも1バイトを有する ことを示すメモリコマンドを記憶するステップ、を含む前記単位のデータを前記 キャッシュメモリ手段に記憶するステップ、の初期ステップを含む請求項6に記 載の方法。
  9. 9.前記記憶された単位のデータを前記システムメモリ手段に与える第2のステ ップは、前記記憶されたメモリコマンドを前記記憶手段から読み出すステップ及 び前記記憶されたメモリコマンドを前記システムメモリ手段に与えるステップを 含む、請求項8に記載の方法。
  10. 10.全単位のデータがシステムメモリに書き込まれることを表示するステップ は前記システムバスを通じてワード書き込みメモリコマンドを与えることによっ て達成され、単位のデータの一部分がシステムメモリに書き込まれることを表示 するステップは、前記システムバスを通じてバイト書き込みメモリコマンド又は ハーフワード書き込みメモリコマンドを与えることによって達成される、請求項 6に記載の方法。
JP50746590A 1989-09-11 1990-03-28 キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法 Expired - Fee Related JP3637054B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40580089A 1989-09-11 1989-09-11
US405,800 1989-09-11

Publications (2)

Publication Number Publication Date
JPH05502123A true JPH05502123A (ja) 1993-04-15
JP3637054B2 JP3637054B2 (ja) 2005-04-06

Family

ID=23605294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50746590A Expired - Fee Related JP3637054B2 (ja) 1989-09-11 1990-03-28 キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法

Country Status (7)

Country Link
US (1) US5276849A (ja)
EP (1) EP0491697B1 (ja)
JP (1) JP3637054B2 (ja)
AU (1) AU645494B2 (ja)
CA (1) CA2066454C (ja)
DE (1) DE69031658T2 (ja)
WO (1) WO1991003785A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015232879A (ja) * 2014-06-05 2015-12-24 エイアールエム リミテッド データ処理装置における動的なキャッシュ・アロケーション・ポリシーの適応

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452463A (en) * 1990-05-25 1995-09-19 Dell Usa, L.P. Processor and cache controller interface lock jumper
US5379396A (en) * 1991-10-11 1995-01-03 Intel Corporation Write ordering for microprocessor depending on cache hit and write buffer content
US5724549A (en) * 1992-04-06 1998-03-03 Cyrix Corporation Cache coherency without bus master arbitration signals
US5590310A (en) * 1993-01-14 1996-12-31 Integrated Device Technology, Inc. Method and structure for data integrity in a multiple level cache system
US5557733A (en) * 1993-04-02 1996-09-17 Vlsi Technology, Inc. Caching FIFO and method therefor
WO1995002248A1 (en) * 1993-07-07 1995-01-19 Vertex Semiconductor Corporation Memory buffer having selective flush capability
JPH07129456A (ja) * 1993-10-28 1995-05-19 Toshiba Corp コンピュータシステム
DE4423559A1 (de) * 1993-11-09 1995-05-11 Hewlett Packard Co Datenverbindungsverfahren und Vorrichtung für Multiprozessor-Computersysteme mit gemeinsamem Speicher
US5592684A (en) * 1994-07-22 1997-01-07 Dell Usa, L.P. Store queue including a byte order tracking mechanism for maintaining data coherency
US5553265A (en) * 1994-10-21 1996-09-03 International Business Machines Corporation Methods and system for merging data during cache checking and write-back cycles for memory reads and writes
US5649158A (en) * 1995-02-23 1997-07-15 International Business Machines Corporation Method for incrementally archiving primary storage to archive storage by utilizing both a partition archive status array and a partition map
US5809228A (en) * 1995-12-27 1998-09-15 Intel Corporaiton Method and apparatus for combining multiple writes to a memory resource utilizing a write buffer
FR2759178B1 (fr) * 1997-02-05 1999-04-09 Sgs Thomson Microelectronics Circuit de gestion de memoire dans un environnement multi-utilisateurs avec requete et priorite d'acces
US6437789B1 (en) * 1999-02-19 2002-08-20 Evans & Sutherland Computer Corporation Multi-level cache controller
US6564306B2 (en) * 2000-04-25 2003-05-13 Hewlett-Packard Development Company, L.P. Apparatus and method for performing speculative cache directory tag updates
US6629168B1 (en) 2000-06-15 2003-09-30 Hewlett-Packard Development Company, Lp. Byte-swapping for efficient use of memory
US7944876B2 (en) 2004-06-02 2011-05-17 Integrated Device Technology, Inc Time slot interchange switch with bit error rate testing
US20050270870A1 (en) * 2004-06-02 2005-12-08 Sangho Shin Time slot interchange switch with cache
US7891818B2 (en) 2006-12-12 2011-02-22 Evans & Sutherland Computer Corporation System and method for aligning RGB light in a single modulator projector
US20080168331A1 (en) * 2007-01-05 2008-07-10 Thomas Vogelsang Memory including error correction code circuit
JP5162763B2 (ja) * 2007-08-07 2013-03-13 株式会社メガチップス メモリアクセスシステム
US8099734B2 (en) * 2007-09-06 2012-01-17 Kabushiki Kaisha Toshiba Portable system and method for soft reset of computer devices
KR101067457B1 (ko) 2008-03-01 2011-09-27 가부시끼가이샤 도시바 메모리 시스템
US8358317B2 (en) 2008-05-23 2013-01-22 Evans & Sutherland Computer Corporation System and method for displaying a planar image on a curved surface
US8702248B1 (en) 2008-06-11 2014-04-22 Evans & Sutherland Computer Corporation Projection method for reducing interpixel gaps on a viewing surface
US8077378B1 (en) 2008-11-12 2011-12-13 Evans & Sutherland Computer Corporation Calibration system and method for light modulation device
US9641826B1 (en) 2011-10-06 2017-05-02 Evans & Sutherland Computer Corporation System and method for displaying distant 3-D stereo on a dome surface
US10372602B2 (en) * 2015-01-30 2019-08-06 Hewlett Packard Enterprise Development Lp Ordering updates for nonvolatile memory accesses
US10324850B2 (en) 2016-11-11 2019-06-18 Microsoft Technology Licensing, Llc Serial lookup of tag ways
US10565122B2 (en) 2017-05-30 2020-02-18 Microsoft Technology Licensing, Llc Serial tag lookup with way-prediction

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3883854A (en) * 1973-11-30 1975-05-13 Ibm Interleaved memory control signal and data handling apparatus using pipelining techniques
FR129151A (ja) * 1974-02-09
US4157586A (en) * 1977-05-05 1979-06-05 International Business Machines Corporation Technique for performing partial stores in store-thru memory configuration
US4195340A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. First in first out activity queue for a cache store
US4494190A (en) * 1982-05-12 1985-01-15 Honeywell Information Systems Inc. FIFO buffer to cache memory
JPH0644245B2 (ja) * 1983-12-29 1994-06-08 富士通株式会社 ストアバッファ装置
US4561051A (en) * 1984-02-10 1985-12-24 Prime Computer, Inc. Memory access method and apparatus in multiple processor systems
US4685082A (en) * 1985-02-22 1987-08-04 Wang Laboratories, Inc. Simplified cache with automatic update
US4933835A (en) * 1985-02-22 1990-06-12 Intergraph Corporation Apparatus for maintaining consistency of a cache memory with a primary memory
US4716545A (en) * 1985-03-19 1987-12-29 Wang Laboratories, Inc. Memory means with multiple word read and single word write
US4805098A (en) * 1986-05-05 1989-02-14 Mips Computer Systems, Inc. Write buffer
US4768148A (en) * 1986-06-27 1988-08-30 Honeywell Bull Inc. Read in process memory apparatus
US4992930A (en) * 1988-05-09 1991-02-12 Bull Hn Information Systems Inc. Synchronous cache memory system incorporating tie-breaker apparatus for maintaining cache coherency using a duplicate directory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015232879A (ja) * 2014-06-05 2015-12-24 エイアールエム リミテッド データ処理装置における動的なキャッシュ・アロケーション・ポリシーの適応

Also Published As

Publication number Publication date
AU645494B2 (en) 1994-01-20
WO1991003785A1 (en) 1991-03-21
DE69031658D1 (de) 1997-12-04
JP3637054B2 (ja) 2005-04-06
AU5656990A (en) 1991-04-08
US5276849A (en) 1994-01-04
CA2066454C (en) 1998-08-25
EP0491697A1 (en) 1992-07-01
CA2066454A1 (en) 1991-03-12
DE69031658T2 (de) 1998-05-20
EP0491697B1 (en) 1997-10-29

Similar Documents

Publication Publication Date Title
JPH05502123A (ja) キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法
US5809280A (en) Adaptive ahead FIFO with LRU replacement
US4768148A (en) Read in process memory apparatus
US5778171A (en) Processor interface chip for dual-microprocessor processor system
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
US5555392A (en) Method and apparatus for a line based non-blocking data cache
JPH05127992A (ja) 2レベルのキヤツシユ・メモリ内の干渉を低減する装置と方法
JPS58212694A (ja) メモリシステム
EP0664030A1 (en) Double buffering operations between the memory bus and the expansion bus of a computer system
US5590310A (en) Method and structure for data integrity in a multiple level cache system
JPH11502656A (ja) メモリへの書込みを結合する方法および装置
US7577791B2 (en) Virtualized load buffers
JP4106664B2 (ja) データ処理システムにおけるメモリ・コントローラ
US5455925A (en) Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory
US5749094A (en) Invalid write recovery apparatus and method within cache memory
US5960456A (en) Method and apparatus for providing a readable and writable cache tag memory
JPH0210446A (ja) バッファ記憶装置
JP2700147B2 (ja) 命令キャッシュ・フラッシュ・オン・rei制御
KR940005767B1 (ko) 시스템 메모리 및 외부캐시메모리의 내용일치 유지장치
JP2703255B2 (ja) キャッシュメモリ書込み装置
AU706450B2 (en) A processor interface circuit
EP0460852A2 (en) System for maintaining data coherency between main and cache memories
JPH04102146A (ja) 高性能キャッシュ
JPH10269134A (ja) データ転送方式
JPH0564376B2 (ja)

Legal Events

Date Code Title Description
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees