JPH0668736B2 - 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法 - Google Patents

2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法

Info

Publication number
JPH0668736B2
JPH0668736B2 JP62501325A JP50132587A JPH0668736B2 JP H0668736 B2 JPH0668736 B2 JP H0668736B2 JP 62501325 A JP62501325 A JP 62501325A JP 50132587 A JP50132587 A JP 50132587A JP H0668736 B2 JPH0668736 B2 JP H0668736B2
Authority
JP
Japan
Prior art keywords
address
data
signal
group
address signal
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
Application number
JP62501325A
Other languages
English (en)
Other versions
JPH01500377A (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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH01500377A publication Critical patent/JPH01500377A/ja
Publication of JPH0668736B2 publication Critical patent/JPH0668736B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline

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

【発明の詳細な説明】 発明の背景 1.発明の分野 この発明は一般にデータ処理システムに関し、より詳細
には、中央ユニットがキャッシュメモリユニットを備え
ているデータ処理システムに関する。本発明によれば、
短縮されたシステムクロックサイクルの限度内におい
て、キャッシュメモリユニットへの書込み動作が許容さ
れる。
2.関連技術の説明 第1図を参照すると、典型的なデータ処理システムが図
示されている。データ処理システムは、少くとも1つの
中央処理ユニット10(又は11)と、少くとも1つの入出
力装置13(又は14)と、主メモリユニット15と、データ
処理システムのこれらのユニットを結合するシステムバ
ス19とを備えている。中央処理ユニットは、ソフトウェ
ア及び/又はファームウェアの命令に従って、複数の論
理信号群を処理する。処理するべきこれらの論理信号群
は、通常は、主メモリユニット15内に記憶されている。
1個以上の中央処理ユニットに結合することの可能なコ
ンソールユニット12は、システムを初期設定する内蔵さ
れた命令及び装置を有することができ、データ処理シス
テムの動作の間、端末ユニットとして動作し得る。入出
力ユニット14は、データ処理システムと端末ユニット、
大量記憶ユニット、通信ユニット及びデータ処理システ
ムに結合されるべき他の任意のユニットとの間において
論理信号群を交換するためのインターフェースを供与し
得る。
第1図に示したシステムは、システムプログラムによっ
て定められた手順を実行することはできるが、このシス
テムには、主メモリユニット15と中央処理ユニット10
(又は11)とが分離しているという難点がある。この分
離は、中央処理ユニットによって要求される論理信号群
の伝送を遅延させるため、システムの機能に好ましくな
い影響を与える。更に、データ処理システムによって通
常使用されるプログラムによって要求される主メモリユ
ニット15の容量は大きいので、一般に、コスト上の理由
から、より低速の技術において主メモリユニット15を実
現することになり、主メモリユニット15が中央処理ユニ
ットに密接に結合されていても、結果として機能上好ま
しくない影響を生じることになる。
大容量メモリユニットに対する必要性と妥当なコストで
論理信号群に高速アクセスする必要性との矛盾する要求
を満たすために通常用いられる解決策は、中央処理ユニ
ットに結合されたキャッシュメモリ又はバッファメモリ
ユニットを使用することである。第2図を参照すると、
中央処理ユニット10(又は11)は、中央処理ユニットの
複数の処理ユニットと組合わされたキャッシュメモリユ
ニット24を備えている。これらの処理ユニットには、命
令サブユニット21と実行サブユニット23とが含まれる。
また第2図には制御ユニット22も含まれる。この制御ユ
ニット22は、順序命令の実行の「パイプライン化」とし
て普通知られる技法に従って命令の実行を時間的にオー
バーラップさせることを許容するように、中央処理ユニ
ットによる命令の実行が複数の命令セグメントに区分さ
れている場合に、有利に使用することができる。この技
法の利点は、1つの区分された命令がその実行のために
比較的長い時間を要し得るとしても、各々の命令セグメ
ントの実行に割り当てられた時間に等しい期間の後に、
複数の次々の命令を開始しうることである。そのため、
中央処理ユニット10の複雑さが増大することの代償とし
て、中央処理ユニット10の処理速度を増大させることが
できる。しかし、各々の命令セグメントの実行に必要な
時間は、実行について最長の時間を必要とする命令セグ
メントを受けいれるように選定しなければならない。キ
ャッシュメモリユニット24は、中央処理ユニット10の一
部分であるから、このユニットの動作は、割り当てられ
た時間内に完了しなければならず、さもなければ時間を
長くする必要がある。キャッシュメモリユニット24は、
主メモリユニット15と中央処理ユニット10の実行部分と
の間の中間の記憶装置として用いられる。キャッシュメ
モリユニット24は、中央処理ユニット10の実行部分にと
って至急に必要で重要な論理信号群を主メモリユニット
15から検索する際に生ずる時間的遅延をさけるために、
これらの論理信号群を記憶する。
次に第3a図を参照すると、従来技術にしたがったキャ
ッシュメモリユニット24の典型的な構成が図示されてい
る。中央処理ユニット10によって取扱われるべきデータ
を表わす論理信号群は、データ−イン記憶ユニット31に
供給される。また関係するデータ論理信号群のうちの或
る選択された信号を特定するマスク信号も、データ−イ
ン記憶ユニット31に供給することができる。そして関係
するデータ信号群のアドレスを表わす論理信号群は、ア
ドレス−イン記憶ユニット32に供給される。2つの記憶
ユニット31,32は、例えば、ラッチ型回路、フリップフ
ロップ型回路、レジスタ回路、またはキャッシュメモリ
ユニット24の残り部分のために信号を一時記憶する機能
を供与し得る他の回路又は任意の回路によって実現する
ことができる。
1つのデータ信号群は、この1つのデータ信号群をキャ
ッシュメモリユニット24に書込み又は読出す際に参照す
るアドレス情報として、対応する1つのアドレス信号群
と関係づけられている。そしてこのキャッシュメモリユ
ニット24におけるアドレス信号群に含まれる各アドレス
信号のデータ長(ビット数)は、主メモリユニット15に
おけるビット長と同一であり、かなり長くなることがあ
る。
そこでキャッシュメモリユニット24では、各アドレス信
号群に含まれる各アドレス信号と、その上位アドレス部
分と下位アドレス部分の2つのアドレスフィールド(部
分)に分割して記憶するようにしている。
第3b図を参照すると、アドレス信号群の2つの分割が
示されている。アドレス信号群の第1群は、その下位ア
ドレス部分で、インデックスアドレスフィールドと呼ば
れる。アドレス信号群の第2群は、その上位アドレス部
分で、比較アドレスフィールド又はタグアドレスフィー
ルドと呼ばれる。
アドレス−イン記憶ユニット32から出力されるアドレス
信号群の第1部分、即ちインデックスアドレス部分は、
タグ記憶ユニット33のアドレス−イン端子並びにデータ
記憶ユニット34のアドレス−イン端子に供給される。そ
してアドレス−イン記憶ユニット32から出力されるアド
レス信号群の第2部分、即ち比較(タグ)アドレス部分
は、タグ記憶ユニット33のデータ−イン端子に供給され
る。即ちアドレス信号群の比較(タグ)アドレス部分
は、タグ記憶ユニット33内の該当アドレス信号群のイン
デックス部分で指定されたアドレスに格納されることに
なる。
データ−イン記憶ユニット31から出力されるデータ信号
群はデータ記憶ユニット34のデータ−イン端子に供給さ
れる。またデータ−イン記憶ユニット31から出力される
マスク信号もデータ記憶ユニット34のマスク端子に供給
される。即ちキャッシュメモリユニット24に記憶される
データ信号群は、データ記憶ユニット34内の対応するア
ドレス信号群のインデックス部分で指定された格納場所
に記憶されることになる。
このようにして、キャッシュメモリユニット24には、複
数のアドレス信号群を記憶するタグ記憶ユニット33と、
対応する複数のデータ信号群を記憶するデータ記憶ユニ
ット34の2つのメモリユニットが含まれている。そして
各アドレス信号群の下位部分であるインデックスアドレ
ス部分が上記2つのメモリユニットに書込み又は読出し
を行なう際の共通のアドレス情報となっている。
次に上記2つのメモリユニットについて、データの格納
法、データの読出し及び書込み更新法についての基礎的
な説明を行なう。
一般にキャッシュメモリユニットは、高速動作であるが
記憶容量が制限されているため、主メモリユニットに記
憶されるデータのうちから特に使用頻度の高いデータを
一定数量のみ記憶し、主メモリユニットの部分的なコピ
ーとして使用されている。
そしてデータを検索するための参照アドレス情報とし
て、2つのメモリユニットに共通に各アドレス信号の下
位部分のみを使用しているが、アドレス信号の下位部分
であるインデックスアドレス部分が同一部分であって
も、その上位部分である比較(タグ)アドレス部分が異
なるアドレス信号は数多く存在するので、タグ記憶ユニ
ット33及びデータ記憶ユニット34内の各アドレス信号の
インデックスアドレス部分が同一のデータ格納場所に記
憶し得るデータの数Nを、前記記憶容量上の制限からあ
らかじめ決定しておく。
いま説明を容易にするため、同一のインデックスアドレ
ス部分により格納し得るデータ数Nを4とする。そして
運転状態において、タグ記憶ユニット33とデータ記憶ユ
ニット34のある1つのアドレス信号のインデックスアド
レス部分aにより指定されるデータ格納場所には、既
に4つのアドレス信号のタグアドレス部分b,b
,bと、これに格納順番が対応している4つのデ
ータ信号d,d,d,dとが格納されていると
する。
この場合、2つのメモリユニットの参照アドレスa
格納場所には、1つのアドレス信号群の上位部b,b
,b,bと、これに対応する1つのデータ信号群
,d,d,dが格納されており、完全なアド
レス信号(b+a)にはデータ信号dが、アドレ
ス信号(b+a)にはデータ信号dが、……アド
レス信号(b+a)にはデータ信号dがそれぞれ
対応している。
上記のデータ格納法を実現するため、タグ記憶ユニット
33とデータ記憶ユニット34は、例えば、それぞれ番号の
付与された複数枚(前例では4枚)のメモリプレイン
(例えば複数の記憶セルから成る)により構成し、2つ
のメモリユニットの#1メモリプレインには、b,d
、#2メモリプレインには、b,d,……#4メ
モリプレインにはb,dをそれぞれ格納しておく。
そして2つのメモリユニットの各メモリプレインに共通
のアドレス信号aを同時に(並列的に)供給すること
により4つのアドレス信号上位部b〜bと4つのデ
ータ信号d〜dを並列的に読出すことが可能であ
る。また各メモリプレインには、それぞれ#1,#2,
#3,#4と番号を付与してあるので、何番目のメモリ
プレインから読出された信号であるかを認識することに
より複数の信号のうちのどれであるかを識別することが
できる。
またタグ記憶ユニット33内に記憶される情報としては、
前記アドレス信号の上位アドレス部分のほかに、関係す
るデータ信号に係る任意のステータス情報(例えばデー
タ信号の使用頻度等)等も含まれることが好ましく、こ
れらの情報量を記憶するに足る容量とするのがよい。
最初に単一のアドレス信号、例え(b+a)により
単一のデータ信号の読出法を説明する。上記指定された
読出アドレス信号の下位アドレス部分aを参照アドレ
ス信号として、2つのメモリユニットに供給することに
より、前記4つのアドレス信号上位部b,b
,bとこれに対応する4つのデータ信号d,d
,d,dが得られる。従って#1〜#4の各メモ
リプレインにそれぞれ対応して#1〜#4の比較ユニッ
トを設けて、各比較ユニットの一方の入力には読出アド
レス信号の上位部分bを共通に供給し、またその他方
の入力にはタグ記憶ユニット33から読出したアドレス信
号上位部b,b,b,bをそれぞれ個別に供給
して比較すると、#2比較ユニットから比較した2つの
アドレス信号上位部が等しいという一致信号(これを一
般にヒット信号ともいう)が得られる。従ってこのアド
レス信号(b+a)に対応したデータ信号dが取
出される。
同様に単一のアドレス信号、例えば前記(b+a
で指定した格納場所に新規のデータ信号d21を書込み更
新する場合には、前記と同様に、指定された書込みアド
レス信号の下位アドレス部分aを参照アドレス信号と
して、タグ記憶ユニット33から読出した4つのアドレス
信号上位部b〜bと書込アドレス信号の上位部分b
との比較により、#2比較ユニットからヒット信号が
得られる。従ってこのアドレス信号(b+a)に対
応して書込まれていた旧データ信号dに変えて新規の
データ信号d21を書込み更新することができる。
次に複数のアドレス信号、例えば2つのアドレス信号
(b+a),(b+a)により2つのデータ信
号の読出法を説明する。この場合には各メモリユニット
に2つの参照アドレス信号aとaが使用され、この
各参照アドレス信号毎に4個の情報、即ち合計8個の情
報が読出される。従って#1〜#4の各メモリプレイン
に2個ずつ(一方はAグループに属し、他方はBグルー
プに属するとする)、(#1A,#1B),(#2A,
#2B),……(#4A,#4B)の比較ユニットを設
ける。そして、Aグループの各比較ユニットの一方の入
力には、#1読出アドレス信号の上位部分bを共通に
入力し、その他方の入力には#1参照アドレス信号a
によりタグ記憶ユニット33から読出したアドレス信号上
位部b,b,b,bをそれぞれ個別に供給して
比較を行ない、またBグループの各比較ユニットの一方
の入力には、#2読出アドレス信号の上位部分bを共
通に入力し、その他方の入力には#2参照アドレス信号
によりタグ記憶ユニット33から読出した4つのアド
レス信号上位部をそれぞれ個別に供給して比較を行な
う。
前記8個の比較ユニットの比較結果としては、(1)ヒッ
ト信号が全く得られない場合、(2)1つのヒット信号が
得られ場合、(3)2つのヒット信号が得られ場合の3通
りが存在するが、各比較ユニットに付与された番号(#
1〜#4)とそのグループ(A又はB)によりどの比較
ユニットからヒット信号が得られたかは識別できる。従
ってこのヒット信号が得られた比較ユニットに供給され
たアドレス信号に対応するデータ信号がそれぞれ取出さ
れる。
全く同様に2つのアドレス信号、例えば前記(b+a
),(b+a)で指定された格納場所に、2つの
データ信号d11,d41を書込み更新することが可能とな
る。
この場合に複数のデータ信号のうちのある選択された信
号を特定するのにマスク信号を利用することもある。
また1つのクロックサイクル内に、各メモリプレインか
ら2個のデータを読出し又は書込むことは、例えば時分
割や、入出力ポートを複数設ける等の通常の手法により
可能である。
またデータの読出しアドレスまたは書込みアドレスとし
て外部から供給さるアドレス信号の数は2つ以上の複数
Mであっても、読出し又は書込み動作は可能である。但
し1つの参照アドレス信号により読出すデータ数をNと
すると、M×N個の比較ユニットを設け、複数データの
並列読出し又は並列書込みを行なう必要がある。従って
キャッシュメモリユニットは複雑になるが、これは高速
でデータアクセスを行なうための代償である。
このようにして、読出し指令又は書込指令に基づき外部
から供給されるアドレス信号群(本発明ではこれを第1
のアドレス信号群という)と、タグ記憶ユニット33内
に、各アドレス信号の下位部分により指定された格納場
所に複数のアドレス信号の上位部分を格納するという手
法により、複数のアドレス信号群(本発明ではこれを第
2のアドレス信号群という)を記憶しておき、前記第1
のアドレス信号群に含まれる各アドレス信号の下位部分
によってタグ記憶ユニット33から読出される第2のアド
レス信号群に含まれる各アドレス信号の上位部分との比
較は、前記第1のアドレス信号群に含まれる各アドレス
信号の上位部分に対して、それぞれ前記第2のアドレス
信号群に含まれる各アドレス信号の上位部分を個別に組
合せて比較する複数の比較手段を設け、前記複数の比較
手段毎に比較した2つの信号が等しい場合に、それぞれ
一致信号(ヒット信号)を出力するという方法により、
2つのアドレス信号群の一方の群と他方の群との比較を
行なっている。
またこの比較結果のヒット信号の有無により、データの
読出し又は書込みを行なうアドレスがキャッシュメモリ
ユニット内に存在するか否かが判別できる。
以上でキャッシュメモリユニットについてのデータの格
納法と、2つのアドレス信号群の比較法を含むデータの
読出し及び書込み更新法についての説明を終了し、再び
第3a図の説明に戻る。
第3a図において、アドレス−イン記憶ユニット32から
出力される第1のアドレス信号群の比較アドレス部分
は、直接比較ユニット35の一方に入力され、前記第1の
アドレス信号群のインデックス部分は、タグ記憶ユニッ
ト33への読出しアドレス信号として供給される。そして
タグ記憶ユニット33から読出された第2のアドレス信号
群の比較アドレス部分が、比較ユニット35の他方に入力
され、ここで2つのアドレス信号群の比較が行なわれ
る。
比較ユニット35は、前記説明の如く、第1のアドレス信
号群に含まれる各アドレス信号の比較部分に対して、そ
れぞれ第2のアドレス信号群に含まれる各アドレス信号
の比較部分を個別に組合せて比較する複数の比較手段を
含む比較手段群(本発明ではこれを第1の比較手段群と
いう)であるが、第3a図においては、これらの複数ユ
ニットの図示は省略されている。そして前記複数の各比
較手段毎に比較した2つの信号が等しい場合に、それぞ
れ一致信号(ヒット信号)を出力する。このようにして
2つのアドレス信号群の一方の群と他方の群の間で一致
するアドレス信号が存在するか否かが判別される。
また同様に、第3a図のタグ記憶ユニット33及びデータ
記憶ユニット34は、それぞれ複数のメモリプレインを含
むものであるが、これらの図示も省略されている。
第3b図のアドレス信号群のインデックスアドレスフィ
ールドの右端から破線で示したいくつかのブロックは、
データ記憶ユニット34内のメモリプレインがアドレス信
号の下位ビットのいくつかを記憶できる場合に、最下位
からいくつかのアドレスビットの保持が余剰であること
を表わしている。キャッシメモリユニットの作用に熟達
した人には明らかなように、アドレス信号群中のインデ
ックス部分をすべて使用する必要はなく、格納すべきデ
ータ信号群の数量や格納法に応じて、第3b図に示すよ
うにアドレス信号群中の最下位からいくつかのアドレス
ビットを省略して使用することができる。
「読出し動作」、即ちキャッシメモリユニット24からの
情報の検索(データの取出し)は、次のように理解する
ことができる。
データ読出しのために読出しアドレス情報として選定さ
れた第1のアドレス信号群は、アドレス−イン記憶ユニ
ット32に入力され一時記憶され、このアドレス−イン記
憶ユニット32から出力される第1のアドレス信号群のイ
ンデックスアドレスフィールドは、タグ記憶ユニット33
のアドレス−イン端子及びデータ記憶ユニット34のアド
レス−イン端子に供給される。そして「読出し」制御信
号はデータ記憶ユニット34の読出し/書込み(R/W)
制御端子に供給される。
その結果、タグ記憶ユニット33からは、前記インデック
ス部分(フィールド)で指定された格納場所から第2の
アドレス信号群の比較アドレス部分が読出されて比較ユ
ニット35かの一方に入力され、データ記憶ユニット34か
らは、前記第1のアドレス信号群のインデックスアドレ
ス部分と前記第2のアドレス信号群の比較(タグ)アド
レス部分とに関係するデータ信号群が読出されてデータ
−アウト記憶ユニット36に入力される。
上記動作と同時に、アドレス−イン記憶ユニット32に記
憶された第1のアドレス信号群の比較アドレス部分は、
比較ユニット35の他方に入力され、ここで前記説明の通
り、2つのアドレス信号群の一方の群と他方の群の間に
一致するアドレス信号が存在するか否かが複数の比較手
段を含む比較ユニット35により判別される。
前記複数の各比較手段からの比較結果としては、比較し
た2つの信号が等しく、一致信号(ヒット信号)が出力
される場合と、一致信号が全く得れない場合とがある。
また一致信号が得られる場合を比較結果が真又は正であ
り、一致信号が得れない場合を比較結果が偽又は負であ
るともいう。
前記複数のいずれかの比較手段からヒット信号が出力さ
れれば、データ−アウト記憶ユニット36内のデータ信号
群のなかに所望のデータ信号が存在するので、このヒッ
ト信号が得られたアドレス信号に対応するデータ信号を
データ−アウト記憶ユニット36から出力して中央処理ユ
ニット10,11等に転送することができる。
このヒット信号の有無の情報は、中央処理ユニットの別
の部分において選定されたデータ信号群の転送を制御す
るために使用することができる。比較結果が偽でヒット
信号が無い場合、即ち、選択されたデータ信号群がデー
タ記憶ユニット34内に(従って、データ−アウト記憶ユ
ニット36内に)無い場合は、選定されたデータ信号群
は、主メモリユニット15から検索しなければならない。
同様に、あるデータ信号群をキャッシュメモリユニット
24内に記憶する「書込み動作」は、次のように具体化さ
れる。
書込み指令に基づき書込み情報として供給される第1の
データ信号群はデータ−イン記憶ユニット31に入力され
一時記憶される。同様に書込み指令に基づき前記第1の
データ信号群に対応して、該第1のデータ信号群を格納
するアドレス情報として供給される第1のアドレス信号
群はアドレス−イン記憶ユニット32に一時記憶される。
そしてアドレス−イン記憶ユニット32から出力される第
1のアドレス信号群のインデックスアドレス部分は、タ
グ記憶ユニット33のアドレス−イン端子に供給され、ま
たこの信号群の比較(タグ)アドレス部分は、比較ユニ
ット35の一方に入力される。タグ記憶ユニット33の前記
インデックスアドレス部分によって指定された可能場所
から読出された第2のアドレス信号群の比較部分は、比
較ユニット35に入力された第1のアドレス信号群の比較
部分と、比較ユニット35において、前記読出し動作の場
合と全く同様に比較される。
比較ユニット35は、前記説明の通り複数の比較手段から
構成されており、この比較結果として、前記複数のうち
のいずれかの比較手段からヒット信号が出力されると、
このヒット信号は、データ記憶ユニット34の書込み端子
を駆動して、データ−イン記憶ユニット31からデータ記
憶ユニット34に入力されるデータ信号群のうち、前記第
1のアドレス信号群内でヒット信号が得られたアドレス
信号に対応するデータ信号を、前記ヒット信号が得られ
た第1のアドレス信号のインデックスアドレス部分によ
り指定された格納場所に書込む。
比較ユニット35から、比較結果として、ヒット信号が発
生しなかった場合には、該当データ信号群は、キャッシ
ュメモリユニット24に書込まれるものではないことを示
し、このデータ信号群は、主メモリ内の関係したアドレ
ス信号群によって特定されたアドレスにおいて、主メモ
リユニット15(第1図参照)に記憶される。
上記の動作により明らかなように、データ記憶ユニット
34へのデータ信号群の書込みは、比較ユニット35におけ
る2つのアドレス信号群の比較が完了した後に、即ちヒ
ット信号の有無を判別した後に、行なわれるので、書込
み動作には、読出し動作よりも実質的に長い時間を必要
とする。第2図に示したような制御ユニットを有する中
央処理ユニットにおいて、キャッシュメモリユニットの
動作速度を増大させる試みは、書込み動作が上記のシー
ケンシャルな性質をもつことによって制限される。
第3a図に示すキャッシュメモリはUS−A−4345
309に開示されている。またIBMテクニカルディス
クロージャーブレテイン第23巻第1号1980年第2
62−263頁には、データがキャッシュメモリに2サ
イクルで書込まれる場合には、書込動作は、第1の書込
サイクル後で、第2の書込サイクル前に発生するフェッ
チ要求に応じてフェッチされ、この第2サイクルの実施
により遅延されずに行なわれることが開示されている。
なおこの第2サイクルでの書込動作終了後に、書込まれ
たデータの読出しが可能となる。
以上の説明のように、順序命令の区分化やパイプライン
化を行なう高速の中央処理ユニットに適合する動作を行
ない得るキャッシュメモリユニットのための装置及び方
法が要望されていた。
発明の概要 本発明の1つの目的は、改良されたデータ処理ユニット
を提供することにある。
本発明の別の目的は、中央処理サブシステム内の改良さ
れたキャッシュメモリユニットを提供することにある。
本発明の更に別の目的は、区分化又はパイプライン化さ
れた命令を実行する中央処理ユニットに適合した方法で
動作するキャッシュメモリユニットを提供することにあ
る。
本発明のより特定的な目的は、2つのシステムクロック
サイクルにおいて実行されるキャッシュメモリ書込み動
作を提供することにある。
本発明の更に別の目的は、キャッシュメモリユニットへ
のデータ信号群の記憶が、下記の2つの工程で行なわれ
ることにある。即ちその第1工程では、データ信号群の
格納場所の情報として組合された関連アドレス信号群が
キャッシュメモリユニット内に存在するか否かが判別さ
れると共に、該データ信号群が一時的に補助記憶ユニッ
トに記憶され、その第2工程では、関連アドレス信号群
がキャッシュメモリユニット内に存在する場合に、該デ
ータ信号群が正式にデータ記憶ユニットに記憶される。
前記の目的並びに他の目的は、本発明によれば、2つの
システムクロックサイクルの間に書込み動作が行なわれ
るキャッシュメモリを中央処理ユニットに用意すること
によって実現される。
本発明の読出し動作は、1サイクルで行なうことができ
る。
本発明の書込み動作では、第1のクロックサイクルの間
に、書込みデータ群の格納場所を指定する第1のアドレ
ス信号群と、該第1のアドレス信号群のインデックス部
分によりタグ記憶ユニットから読出された第2のアドレ
ス信号群との比較が行なわれる。そしてこの第1のサイ
クルの間にデータ信号群と前記第1のアドレス信号群の
インデックス部分とが補助記憶ユニット41に一時記憶さ
れる。
前記比較結果が正の場合(即ちキャッシュメモリユニッ
トに記憶する場合)、その後発生される次の書込み指令
による第2のクロックサイクルの間に、前記補助記憶ユ
ニット41に一時記憶されたデータ信号群は、正式にデー
タ記憶ユニット34に記憶される。この2つのクロックサ
イクルを利用した2つの工程により書込み動作は完了す
る。
この第2の工程が行なわれる前に、中央処理ユニット10
による該当データ信号群の読出し指令が有効に実行され
るために、補助比較ユニット42による補助記憶ユニット
41内に記憶されている第1のアドレス信号群のインデッ
クスアドレス部分とアドレス−イン記憶ユニット32から
出力される第1のアドレス信号群のインデックス部分と
の比較、並びに比較ユニット35によるタグ記憶ユニット
33から読出された第2のアドレス信号群の比較アドレス
部分と前記第1のアドレス信号のインデックス部分との
比較が行なわれる。この比較チェックの結果、読出しを
要求されたデータ信号群が補助記憶ユニット41内にある
と判別した場合は、このデータ信号群はマルチプレクサ
ユニット43により取出され、データ−アウト記憶ユニッ
ト36を介して中央処理ユニット10に転送される。
本発明のこれらの目的及び他の目的は、図面と共に以下
の説明を読むことによって理解されよう。
図面の簡単な説明 第1図は、本発明を利用することのできるデータ処理シ
ステムの各コンポーネントのブロック図である。
第2図は、第1図に示した1つの中央処理ユニットの各
コンポーネントを示すブロック図である。
第3a図は、従来の中央処理ユニットに用いられるキャ
ッシュメモリユニットのブロック図である。
第3b図は、1つのアドレス信号群を2つの指定された
フィールドに区分することを示す説明図である。
第4図は、本発明によるキャッシュメモリユニットのブ
ロック図である。
第5図は、本発明による2サイクル書込み動作が介在す
る読出し動作を許容する手法を示すためのタイミング図
である。
発明を実施するための最良の形態 第1図、第2図、第3a図及び第3b図については、関
連技術において先に説明した通りである。
次に第4図を参照すると、本発明によるキャッシュメモ
リユニットが具体的に図示されている。
第4図のキャッシュメモリユニットにおいて、第3a図
と同一の内部ユニットには同一の番号が付与されてお
り、第3a図のキャッシュメモリユニット24のほかに、
補助記憶ユニット41、補助比較ユニット42、並びにマル
チプレクサユニット(または複数の入力信号のうち制御
信号により指定された1の入力信号のみを選択して出力
するゲートユニット)43及び44が追加されている。
なお、本発明においては、書込み指令に基づき書込み情
報として中央処理ユニット等から供給されるデータ信号
群を第1のデータ信号群と称し、既にデータ記憶ユニッ
ト34内に記憶されているデータ信号群を第2のデータ信
号群と称して両者を区別することにする。但し第1のデ
ータ信号群もデータ記憶ユニット34内に記憶されれば第
2のデータ信号群になる。
また比較ユニット35から出力される一致信号を第1の一
致信号と称し、補助比較ユニット42から出力される一致
信号を第2の一致信号と称して両者を区別することにす
る。
補助記憶ユニット41には、第1のデータ記憶ユニットと
第1のアドレス記憶ユニットの2つのユニットが含まれ
ている。そして第1のデータ記憶ユニットには、データ
−イン記憶ユニット31からの第1のデータ信号群及びマ
スク信号が一時記憶され、第1のアドレス記憶ユニット
には、アドレス−イン記憶ユニット32に記憶された第1
のアドレス信号群のインデックス部分及び比較ユニット
35から供給される第1の一致信号が一時記憶される。
従って補助記憶ユニット41を2つの記憶ユニット又は記
憶手段に分割した構成としてもよい。また前記第1のア
ドレス信号群は第1のデータ信号群に対応するアドレス
情報として供給されるものである。
補助比較ユニット42は、比較ユニット35と同様に、複数
の比較手段を含む比較手段群(本発明ではこれを第2の
比較手段群という)により構成され、読出し指令に基づ
きアドレス−イン記憶ユニット32を介して供給される第
1のアドレス信号群に含まれる各アドレス信号のインデ
ックス部分に対して、それぞれ補助記憶ユニット41内に
先の書込み指令に基づき記憶された第1のアドレス信号
群に含まれる各アドレス信号のインデックス部分を個別
に組合せて比較し、前記複数の各比較手段毎に比較した
2つの信号が等しい場合にそれぞれ一致信号(前記第2
の一致信号)を出力する。
この補助比較ユニット42の比較結果を示す第2の各一致
信号の有無の情報はマルチプレクサユニット43へ供給さ
れる。
マルチプレクサユニット44は、読出し/書込み指令信号
を入力し、指令信号が読出し信号の場合は、アドレス−
イン記憶ユニット32から出力される第1のアドレス信号
群のインデックスアドレス部分を選択出力し、また指令
信号が書込み信号の場合は、補助記憶ユニット41から出
力される第1のアドレス信号群のインデックスアドレス
部分を選択出力して、データ記憶ユニット34のアドレス
入力端子に供給する。
マルチプレクサユニット43は、補助比較ユニット42の比
較結果である第2の一致信号の有無の情報を入力し、第
2の一致信号が有る場合は、補助記憶ユニット41から入
力されるデータ信号群を選択出力し、第2の一致信号が
無い場合は、データ記憶ユニット34から入力されるデー
タ信号群を選択出力して、データ−アウト記憶ユニット
36へ供給する。
データ−アウト記憶ユニット36に入力されたデータ信号
群の中央処理ユニットへの転送は、第3a図の説明と同
一の方法で、比較ユニット35から第1の一致信号がデー
タ−アウト記憶ユニットに供給された場合にのみ行なわ
れる。
次に第5図を参照して、最初の2つの書込み指令の間に
介在される3つの書込み動作と1つの読出し動作の実行
について説明する。
クロックサイクルTの間に、キャッシュメモリ24に書
込み指令(#1)が送出され、比較ユニット35は、第3
a図で説明したように、指示された第1のアドレス信号
群がキャッシュメモリユニット24内に存在するか否かを
判別するため、アドレス−イン記憶ユニット32及びタグ
記憶ユニット33からそれぞれ入力した2つのアドレス信
号群のインデックスアドレス部分の比較動作を行なう。
この例ではいずれかの比較手段から第1の一致信号が出
力されたものとする。またこのTの間に、データ−イ
ン記憶ユニット31からのデータ信号群及びマスク信号
と、アドレス−イン記憶ユニット32からのアドレス信号
群のインデックスアドレス部分と、比較ユニット35から
の前記第1の一致信号とが補助記憶ユニット41に記憶さ
れる。
クロックサイクルTの間に、1つの読出し動作(#
1)は、キャッシュメモリによって完全に実行すること
ができる。但し比較ユニット35から第1の一致信号が出
力されたアドレス信号に対応するデータ信号のみがデー
タ−アウト記憶ユニット36から送出される。
その後のクロックサイクルTの間に、次の書込み指令
(#2)がキャッシュメモリユニットに送出され、前記
比較ユニット35による比較動作が行なわれる。そして補
助記憶ユニット41内には、前記Tの書込み指令(#
1)により比較ユニット35から第1の一致信号が記憶さ
れているので、このTの間に、補助記憶ユニット41に
記憶されていたデータ信号群のうち前記第1の一致信号
が得られた第1のアドレス信号に対応するデータ信号が
データ記憶ユニット34内に記憶される。この場合、同様
に補助記憶ユニット41内に記憶されていた第1のアドレ
ス信号群のインデックスアドレス部分がマルチプレクサ
ユニット44を介してデータ記憶ユニット34に供給され、
このインデックスアドレス部分で指定された格納場所に
記憶される。
次にクロックサイクルTn+1の間に、書込指令(#3)
が送出される場合に、前記Tの間に比較ユニット35か
ら第1の一致信号が出力されている場合には、前記と同
様にTにおける書込指令(#2)に基づき供給された
データ信号群のうちから第1の一致信号に対応するデー
タ信号が補助記憶ユニット41からデータ記憶ユニット34
に記憶される。
書込み動作のためのキャッシュメモリユニットの動作
は、本発明に従って次の2つの工程で行なわれる。
まず最初の書込み指令に基づく第1の工程では、第1の
データ信号群の格納場所を指示する第1のアドレス信号
群は、タグメモリ記憶ユニット33内の第2のアドレスと
信号群と、比較ユニット35により比較され、前記第1の
アドレス信号群に含まれるアドレス信号のいずれかがキ
ャッシュメモリユニット24内に存在するか否かが判別さ
れる。
この比較判別の間に、比較されている第1のアドレス信
号群に関係する第1のデータ信号群と第1のアドレス信
号群のインデックス部分とは、補助記憶ユニット41内に
記憶される。またこの工程で、比較ユニット35の比較結
果も補助記憶ユニット41内に記憶される。
前記第1の工程における比較ユニット35の比較結果とし
て第1の一致信号が得られた場合には、次の書込み指令
が送出された時に、前回の書込み指令の第2の工程と、
今回の書込み指令の第1の工程とが1つのクロックサイ
クルで行なわれる。
即ち前回の書込み指令により補助記憶ユニット41内に一
時記憶されている第1のデータ信号群を、対応する第1
のアドレス信号群によって指定されたデータ記憶ユニッ
ト34内の格納場所に記憶させる前回の書込み指令に基づ
く第2の工程と、今回の書込み指令により新規のデータ
信号群等を補助記憶ユニット41内に記憶させる今回の書
込み指令に基づく第1の工程とが同一のクロックサイク
ル内に行なわれるから、ここで時間的な遅延は発生しな
い。
われわれの好ましい実施例によれば、複数のデータ処理
サブシステムが主メモリユニットをデータベースとして
利用していることから、主メモリユニットは、データ信
号群の最新のバージョンを常に収納しているべきであ
る。従ってキャッシュメモリユニット内のデータ信号群
が更新された場合は、このデータ信号群は、主メモリユ
ニットのデータ更新のために、すみやかに主メモリユニ
ットに転送されるのが普通である。しかし当業者には明
らかなように、主メモリユニットのデータ更新のために
上記の実施例とは異なる方法を採用することも可能であ
る。
読出し指令がキャッシュメモリユニットに供給される
と、アドレス−イン記憶ユニット32から出力される第1
のアドレス信号群の比較部分は、タグ記憶ユニット33内
の前記第1のアドレス信号群のインデックス部分の指定
場所から読出された第2のアドレス信号群の比較部分と
比較ユニット35により、書込み指令の場合と同様に、比
較される。同時に補助比較ユニット42において、補助記
憶ユニット41に記憶された第1のアドレス信号群のイン
デックス部分は、読出し指令により供給された第1のア
ドレス信号群のインデックス部分と比較される。
比較ユニット35及び補助比較ユニット42の判別結果とし
て、第1の一致信号及び第2の一致信号が共に出力され
た場合には、補助記憶ユニット41に一時記憶された第1
のデータ信号群は、データ信号群の最新のバージョンで
あり、この第1のデータ信号群は、中央処理ユニットに
よって使用される。
補助比較ユニット42が出力する第2の一致信号の有無の
情報信号は、第4図に示す通りマルチプレクサユニット
43に供給され、マルチプレクサユニット43はこの情報信
号に基づき2つの入力信号のいずれかを選択して出力す
る。即ち第2の一致信号が有る場合は、アドレッシング
されているデータ信号群の最新のバージョンが補助記憶
ユニット41内にあることを示すものであるので、マルチ
プレクサユニット43は2つの入力信号のうち補助記憶ユ
ニット41から入力されるデータ信号群を選択出力して、
データ−アウト記憶ユニット36へ供給する。また補助比
較ユニット42からの第2の一致信号が無い場合には、マ
ルチプレクサユニット43はデータ記憶ユニット34から入
力されるデータ信号群を選択出力してデータ−アウト記
憶ユニット36へ供給する。
比較ユニット35からの第1の一致信号はデータ−アウト
記憶ユニット36へ供給される。そして第1の一致信号が
有る場合には、この第1の一致信号が得られた第1のア
ドレス信号に対応するデータ信号がデータ−アウト記憶
ユニット36から出力される。データ−アウト記憶ユニッ
ト36はその出力するデータ信号がデータ記憶ユニット34
からのものか、または補助記憶ユニット41からのものか
には関係なく、キャッシュメモリユニット内のデータ信
号として中央処理ユニットに転送する。
比較ユニット35の判別結果として第1の一致信号が全く
得られない場合には、アドレス−イン記憶ユニット32に
記憶されたアドレス信号群に対応するキャッシュメモリ
ユニット内のデータはないので、データ−アウト記憶ユ
ニット36から中央処理ユニットへデータは転送されな
い。
以上の説明によって明らかなように、本発明は、キャッ
シュメモリユニットへの書込み動作を2つのサブオペレ
ーションに分けて行なうものであり、これまでの実施例
においては、第1のサブオペレーションは最初の書込み
指令が受信される時に行なわれ、第2のサブオペレーシ
ョンは、次の書込み指令が受信される時に行なわれるよ
うに説明した。
しかしながら前記第2のサブオペレーションは、必ずし
も次の書込み指令の受信まで待たないで、可及的速やか
に実行してもよい。即ちキャッシュメモリユニットに対
して書込み指令に続く読出し指令が存在しなければ、最
初の書込み指令により前記第1のサブオペレーションが
実施されたクロックサイクルの次のクロックサイクル
に、また書込み指令に続く読出し指令が存在する場合に
は、この読出し指令が存在しなくなった最初のクロック
サイクルに、補助記憶ユニット41からデータ記憶ユニッ
ト34へデータ信号群を記憶させる論理回路を実現し、第
2のサブオペレーションを実行することが可能である。
最後に、請求の範囲に記載された信号名及び各手段と実
施例との対応について説明する。
まず信号名について、書込み指令又は読出し指令に基づ
き外部から供給されるアドレス信号群を第1のアドレス
信号群といい、タグ記憶ユニット33内に既に記憶されて
いるアドレス信号群を第2のアドレス信号群という。ま
た書込み指令に基づき第1のアドレス信号群に対応して
供給されるデータ信号群を第1のデータ信号群といい、
データ記憶ユニット34内に既に記憶されているデータ信
号群を第2のデータ信号群という。
請求の範囲第1項〜第4項において、第1のデータ記憶
手段の一例は補助記憶ユニット41内の第1のデータ記憶
ユニット部分であり、第1のアドレス記憶手段の一例は
同じ補助記憶ユニット41内の第1のアドレス記憶ユニッ
ト部分である。第2のアドレス記憶手段の一例はタグ記
憶ユニット33であり、第2のデータ記憶手段の一例はデ
ータ記憶ユニット34である。第1の比較手段群の一例は
比較ユニット35であり、第2の比較手段群の一例は補助
比較ユニット42である。そして前者の出力する一致信号
を第1の一致信号といい、後者の出力する一致信号を第
2の一致信号という。データ検索手段の一例は、読出し
指令又は書込み指令に基づきアドレス−イン記憶ユニッ
ト32又は補助記憶ユニット41からのアドレス情報を選択
してデータ記憶ユニット34に供給するマルチプレクサユ
ニット44、補助記憶ユニット42からの出力情報によりデ
ータ記憶ユニット34又は補助記憶ユニット41からのデー
タ情報を選択してデータ−アウト記憶ユニット36に供給
するマルチプレクサユニット43、並びに比較ユニット35
からの出力情報により記憶情報の出力が制御されるデー
タ−アウト記憶ユニット36を含む構成ユニットである。
また請求の範囲第8項において、アドレス記憶手段の一
例はタグ記憶ユニット33であり、データ記憶手段の一例
はデータ記憶ユニット34である。第1の比較手段群の一
例は比較ユニット35であり、第2の比較手段群の一例は
補助比較ユニット42である。補助記憶手段の一例は補助
記憶ユニット41であり、データ検索手段の一例は、前記
第1項〜第4項において記載されたものと同一である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ケラー,ジェイムス ビー. アメリカ合衆国 02174 マサチュセッツ、 アーリントン、マサチュセッツ アヴェニ ュー 904 (56)参考文献 特開 昭53−134335(JP,A) 特開 昭56−85168(JP,A) 特開 昭57−50380(JP,A) 特開 昭61−5357(JP,A) IBM Technicdl Disc losure Bulletin Vo l.23,No.1,June 1980 (N ew York USA),F.T.Bl ount et al.“eferred cache storning met hod”,P.262−263

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】書込み指令に基づき書込み情報として供給
    される第1のデータ信号群を一時的に記憶する第1のデ
    ータ記憶手段と、 前記書込み指令に基づき、前記第1のデータ信号群に対
    応するアドレス情報として供給される第1のアドレス信
    号群に含まれる各アドレス信号のインデックス部分と、
    第1の比較手段群から供給される第1の一致信号とをそ
    れぞれ一時的に記憶する第1のアドレス手段と、 複数の第2のアドレス信号群を記憶する手段であり、前
    記第2の各アドレス信号群は、その各アドレス信号群自
    身のアドレス情報に基づきそれぞれの格納場所が指定さ
    れ、この指定された格納場所に前記該当する第2のアド
    レス信号群に含まれる各アドレス信号の比較部分がそれ
    ぞれ記憶される第2のアドレス記憶手段と、 前記書込み指令に基づき供給される第1のアドレス信号
    群または読出し指令に基づきデータの読出しアドレス情
    報として供給される第1のアドレス信号群に含まれる各
    アドレス信号に対して、それぞれ前記第2のアドレス記
    憶手段に記憶された第2のアドレス信号群に含まれる各
    アドレス信号を個別に組合せて比較する複数の比較手段
    を含む比較手段群であり、前記複数の各比較手段毎に比
    較した2つの信号が等しい場合にそれぞれ第1の一致信
    号を出力し、書込み指令時には前記第1の一致信号を前
    記第1のアドレス記憶手段に供給し、また読出し指令時
    には前記第1の一致信号をデータ検索手段に供給する第
    1の比較手段群と、 前記複数の第2のアドレス信号群にそれぞれ対応するデ
    ータとして複数の第2のデータ信号群を記憶する手段で
    あり、前記第1の比較手段群に含まれるいずれかの比較
    手段から第1の一致信号が出力され前記第1のアドレス
    記憶手段に記憶された場合に、次の書込み指令の期間中
    に、前記第1のアドレス記憶手段に記憶された第1のア
    ドレス信号群のうち前記第1の一致信号が記憶された第
    1の各アドレス信号に対応する前記第1のデータ記憶手
    段に記憶された第1の各データ信号によって、前記第2
    のデータ信号群のうち前記第1の各アドレス信号と等し
    い第2の各アドレス信号に対応する第2の各データ信号
    が書き替えられる第2のデータ記憶手段と、 読出し指令に基づきデータの読出しアドレス情報として
    供給される第1のアドレス信号群に応答して、前記複数
    の比較手段を含む第1の比較手段群が前記第1のアドレ
    ス信号群内の各アドレス信号に対して、それぞれ前記第
    2のアドレス信号群内の各アドレス信号を個別に組合せ
    て比較を行ない、いずれかの比較手段から出力された第
    1の一致信号が供給された場合に、前記第1の一致信号
    が得られた第1のアドレス信号群に含まれる各アドレス
    信号と等しい前記第2のアドレス信号群に含まれる各ア
    ドレス信号に対応する第2のデータ記憶手段内の第2の
    データ信号群に含まれる各データ信号を検索して出力す
    るデータ検索手段とを備えたことを特徴とするデータ処
    理システムの中央処理ユニットと結合されるキャッシュ
    メモリユニット。
  2. 【請求項2】読出し指令に基づきデータの読出しアドレ
    ス情報として供給される第1のアドレス信号群に含まれ
    る各アドレス信号のインデックス部分に対して、それぞ
    れ前記第1のアドレス記憶手段に記憶された第1のアド
    レス信号群に含まれる各アドレス信号のインデックス部
    分を個別に組合て比較する複数の比較手段を含む比較手
    段群であり、前記複数の各比較手段毎に比較した2つの
    信号が等しい場合にそれぞれ第2の一致信号を出力して
    前記データ検索手段に供給し、該データ検索手段に、前
    記第1のアドレス記憶手段に記憶された第1のアドレス
    信号群のうち前記第2の一致信号が得られた各アドレス
    信号に対応する前記第1のデータ記憶手段に記憶された
    各データ信号を検索して出力させる第2の比較手段群を
    追加した請求の範囲第1項に記載のデータ処理システム
    の中央処理ユニットと結合されるキャッシュメモリユニ
    ット。
  3. 【請求項3】前記書込み指令とその次の書込み指令との
    間に発生する読出し指令に基づき、前記キャッシュメモ
    リユニット内に記憶する情報の読出しを可能とする前記
    の、第1のデータ記憶手段、第1のアドレス記憶手段、
    第2のアドレス記憶手段、第2のデータ記憶手段、第1
    の比較手段群、第2の比較手段群及びデータ検索手段を
    備えた請求の範囲第2項に記載のキャッシュメモリユニ
    ット。
  4. 【請求項4】前記書込み指令後の次の書込み指令よりも
    以前に、読出し指令も書込み指令もいずれも無いクロッ
    クサイクルが生じたときに、このいずれの指令も無いク
    ロックサイクルの期間内に、前記第1のアドレス記憶手
    段に記憶された前記第1のアドレス信号群のうち前記第
    1の一致信号も共に記憶された第1の各アドレス信号に
    対応する前記第1のデータ記憶手段に記憶された第1の
    各データ信号によって、前記第2のデータ記憶手段内に
    記憶された第2のデータ信号群のうち前記第1の一致信
    号が得られた第1の各アドレス信号と等しい第2の各ア
    ドレス信号に対応する第2の各データ信号が書き替えら
    れる第2のデータ記憶手段を備えた請求の範囲第3項に
    記載キャッシュメモリユニット。
  5. 【請求項5】書込み指令に基づき供給される第1のデー
    タ信号群に対応する書込みアドレス情報である第1のア
    ドレス信号群に含まれる各アドレス信号のいずれかがキ
    ャッシュメモリユニット内に存在するか否かを確認する
    工程と、 前記書込み指令に基づく確認する工程の実行時間内に、
    並列的に前記第1のデータ信号群とこれに対応する第1
    のアドレス信号群を一時記憶する工程と、 前記書込み指令に基づく確認する工程の実行により前記
    第1のアドレス信号のいずれかがキャッシュメモリユニ
    ット内に存在することが確認された場合に、次の書込み
    指令によって前記確認する工程が繰返される時間内に、
    キャッシュメモリユニット内の前回の書込み指令により
    存在の確認された第1の各アドレス信号によって指定さ
    れたデータ格納場所に、前記一時記憶した第1のデータ
    信号群のうち前記存在の確認された第1の各アドレス信
    号に対応する第1の各データ信号を記憶するデータ記憶
    工程と、 読出し指令に基づきデータの読出しアドレス情報として
    供給される第1のアドレス信号群に含まれる各アドレス
    信号に対して、それぞれ前記書込み指令に基づく一時記
    憶する工程で記憶された第1のアドレス信号群に含まれ
    る各アドレス信号を個別に組合せて比較し、いずれかの
    組合せ比較結果から2つのアドレス信号の一致が得られ
    た場合に、前記一時記憶する工程で記憶された第1のデ
    ータ信号群のうちから前記一致した第1のアドレス信号
    に対応する第1のデータ信号を検索する第1の検索工程
    と、 前記読出し指令に基づきデータの読出しアドレス情報と
    して供給される第1のアドレス信号群に含まれる各アド
    レス信号のいずれかがキャッシュメモリユニット内に存
    在することが確認され、且つ前記読出し指令に基づき存
    在が確認された第1のアドレス信号群に含まれる各アド
    レス信号に対して、それぞれ前記書込み指令に基づく一
    時記憶工程で記憶された第1のアドレス信号群に含まれ
    る各アドレス信号を個別に組合せて比較し、いずれの組
    合せ比較結果からも2つのアドレス信号の一致が得られ
    ない場合に、前記キャッシュメモリユニット内に記憶さ
    れている複数の第2のデータ信号群のうちから、前記読
    出し指令に基づき存在するこが確認された第1のアドレ
    ス信号群に含まれる各アドレス信号に対応する第2の各
    データ信号を検索する第2の検索工程とを含むことを特
    徴とする中央処理ユニットと結合されるキャッシュメモ
    リユニットの動作方法。
  6. 【請求項6】前記読出し指令に基づく第1又は第2の検
    索工程を、前記書込み指令に基づく確認する工程と前記
    次の書込み指令に基づくデータ記憶工程との間に実行す
    ることができる請求の範囲第5項に記載のキャッシュメ
    モリユニットの動作方法。
  7. 【請求項7】前記データ記憶工程を、前記読出し指令に
    基づく第1又は第2の検索工程及び前記書込み指令に基
    づく確認する工程が行なわれていないときに実行するこ
    とができる請求の範囲第5項に記載のキャッシュメモリ
    ユニットの動作方法。
  8. 【請求項8】複数の第2のアドレス信号群に対応する複
    数の第2のデータ信号群を記憶し、且つ前記複数の第2
    のアドレス信号群も共に記憶する中央処理サブシステム
    のキャッシュメモリユニットにして、 前記複数の第2のアドレス信号の各々は、そのアドレス
    信号群に含まれる各アドレス信号のインデックス部分に
    より指定された格納場所に、該当する第2のアドレス信
    号群に含まれる各アドレス信号の比較部分がそれぞれ記
    憶されるアドレス記憶手段と、 前記第2の各アドレス信号群に含まれる各アドレス信号
    のインデックス部分により指定された格納場所に、前記
    第2の各アドレス信号群に対応する第2の各データ信号
    群に含まれる各データ信号がそれぞれ記憶されるデータ
    記憶手段と、 読出し又は書込み指令に基づきアドレス情報として供給
    される第1のアドレス信号群に含まれる各アドレス信号
    の比較部分に対して、それぞれ前記アドレス記憶手段に
    記憶された第2のアドレス信号群に含まれる各アドレス
    信号の比較部分を個別に組合せて比較する複数の比較手
    段を含む比較手段群であり、前記複数の各比較手段毎に
    比較した2つの信号が等しい場合にそれぞれ第1の一致
    信号を出力する第1の比較手段群と、 前記読出し指令に基づきアドレス情報として供給される
    第1のアドレス信号群に応答して、前記複数の比較手段
    を含む第1の比較手段群が前記第1のアドレス信号群内
    の各アドレス信号に対して、それぞれ前記第2のアドレ
    ス信号群内の各アドレス信号を個別に組合せて比較を行
    ない、いずれかの比較手段から出力された第1の一致信
    号が供給された場合に、前記第1の一致信号が得られた
    第1のアドレス信号群に含まれる第1の各アドレス信号
    と等しい前記第2のアドレス信号群に含まれる第2の各
    アドレス信号に対応するデータ記憶手段内の第2のデー
    タ信号群に含まれる各データ信号を検索して、前記キャ
    ッシュメモリユニットの出力端に供給するデータ検索手
    段と、 前記書込み指令に基づき書込み情報として供給される第
    1のデータ信号群と、前記第1のデータ信号群に対応す
    るアドレス情報として供給される第1のアドレス信号群
    に含まれる各アドレス信号のインデックス部分とを一時
    記憶すると共に、前記書込み指令に基づき応答する第1
    の比較手段群から供給される第1の一致信号をもそれぞ
    れ一時記憶する補助記憶手段であり、該補助記憶手段内
    に前記第1の一致信号が記憶された場合の次の書込み指
    令が供給されたときに、前記補助記憶手段内に記憶され
    た、第1のアドレス信号群に含まれる各アドレス信号の
    インデックス部分のうち前記第1の一致信号が得られた
    第1の各アドレス信号のインデックス部分によって指定
    された前記データ記憶手段内の格納場所に、前記補助記
    憶手段内に記憶された第1のデータ信号群のうち、前記
    第1の一致信号が得られた第1の各アドレス信号に対応
    する第1の各データ信号を記憶させる補助記憶手段と、 読出し指令に基づきデータの読出しアドレス情報として
    供給される第1のアドレス信号群に含まれる各アドレス
    信号のインデックス部分に対して、それぞれ前記補助記
    憶手段内に記憶された第1のアドレス信号群に含まれる
    各アドレス信号のインデックス部分を個別に組合せて比
    較する複数の比較手段を含み、前記複数の各比較手段毎
    に比較した2つの信号が等しい場合にそれぞれ第2の一
    致信号を出力する第2の比較手段群であり、先の書込み
    指令により第1の一致信号が前記補助記憶手段内に記憶
    されており、且つ前記読出し指令により第2の比較手段
    群が第2の一致信号を出力した場合に、前記補助記憶手
    段内に記憶された第1のアドレス信号群に含まれる各ア
    ドレス信号のインデックス部分のうち前記第2の一致信
    号が得られた第1の各アドレス信号のインデックス部分
    に対応する前記補助記憶手段内に記憶された第1のデー
    タ信号群のうちの第1の各データ信号をキャッシュメモ
    リユニットの出力端に供給する第2の比較手段群とを備
    えたことを特徴とするキャッシュメモリユニット。
JP62501325A 1986-01-29 1987-01-29 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法 Expired - Lifetime JPH0668736B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US823,805 1986-01-29
US06/823,805 US4755936A (en) 1986-01-29 1986-01-29 Apparatus and method for providing a cache memory unit with a write operation utilizing two system clock cycles
PCT/US1987/000176 WO1987004823A1 (en) 1986-01-29 1987-01-29 Apparatus and method for providing a cache memory unit with a write operation utilizing two system clock cycles

Publications (2)

Publication Number Publication Date
JPH01500377A JPH01500377A (ja) 1989-02-09
JPH0668736B2 true JPH0668736B2 (ja) 1994-08-31

Family

ID=25239776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62501325A Expired - Lifetime JPH0668736B2 (ja) 1986-01-29 1987-01-29 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法

Country Status (7)

Country Link
US (1) US4755936A (ja)
EP (1) EP0292501B1 (ja)
JP (1) JPH0668736B2 (ja)
AU (1) AU7032687A (ja)
CA (1) CA1277044C (ja)
DE (1) DE3781794T2 (ja)
WO (1) WO1987004823A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6184753A (ja) * 1984-10-01 1986-04-30 Hitachi Ltd バツフアメモリ
US5034885A (en) * 1988-03-15 1991-07-23 Kabushiki Kaisha Toshiba Cache memory device with fast data-write capacity
US5123097A (en) * 1989-01-05 1992-06-16 Bull Hn Information Systems Inc. Apparatus and method for simultaneous execution of a write instruction and a succeeding read instruction in a data processing system with a store through cache strategy
US5148537A (en) * 1989-05-02 1992-09-15 Belsan Jay S Method and apparatus for effecting an intra-cache data transfer
JPH077356B2 (ja) * 1989-05-19 1995-01-30 株式会社東芝 パイプライン方式のマイクロプロセッサ
EP0400851A3 (en) * 1989-06-02 1992-10-21 Hewlett-Packard Company Efficient cache utilizing a store buffer
JPH0348951A (ja) * 1989-07-18 1991-03-01 Fujitsu Ltd アドレスモニタ装置
EP0442690A3 (en) * 1990-02-13 1992-11-19 Hewlett-Packard Company Data cache store buffer for high performance computer
US5450564A (en) * 1990-05-04 1995-09-12 Unisys Corporation Method and apparatus for cache memory access with separate fetch and store queues
US5257377A (en) * 1991-04-01 1993-10-26 Xerox Corporation Process for automatically migrating a subset of updated files from the boot disk to the replicated disks
GB2271204B (en) * 1992-10-01 1996-01-03 Digital Equipment Int Digital system memory access
US5388226A (en) * 1992-10-05 1995-02-07 Motorola, Inc. Method and apparatus for accessing a register in a data processing system
US6151661A (en) * 1994-03-03 2000-11-21 International Business Machines Corporation Cache memory storage space management system and method
DE69530720T2 (de) * 1994-03-09 2003-11-27 Sun Microsystems Inc Verzögertes Cachespeicherschreiben eines Speicherungsbefehls
US6076150A (en) * 1995-08-10 2000-06-13 Lsi Logic Corporation Cache controller with improved instruction and data forwarding during refill operation
US5987578A (en) * 1996-07-01 1999-11-16 Sun Microsystems, Inc. Pipelining to improve the interface of memory devices
US6032226A (en) * 1997-04-14 2000-02-29 International Business Machines Corporation Method and apparatus for layering cache and architectural specific functions to expedite multiple design
US6061755A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Method of layering cache and architectural specific functions to promote operation symmetry
US6061762A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Apparatus and method for separately layering cache and architectural specific functions in different operational controllers
US6360307B1 (en) 1998-06-18 2002-03-19 Cypress Semiconductor Corporation Circuit architecture and method of writing data to a memory
US7962698B1 (en) 2005-10-03 2011-06-14 Cypress Semiconductor Corporation Deterministic collision detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53134335A (en) * 1977-04-28 1978-11-22 Fujitsu Ltd Memory control system
JPS5685168A (en) * 1979-12-13 1981-07-11 Fujitsu Ltd Access control system for main storage
JPS5750380A (en) * 1980-09-09 1982-03-24 Mitsubishi Electric Corp Writing method of buffer storage device
JPS615357A (ja) * 1984-06-07 1986-01-11 Fujitsu Ltd デ−タ処理装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3723976A (en) * 1972-01-20 1973-03-27 Ibm Memory system with logical and real addressing
US3896419A (en) * 1974-01-17 1975-07-22 Honeywell Inf Systems Cache memory store in a processor of a data processing system
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
US4245304A (en) * 1978-12-11 1981-01-13 Honeywell Information Systems Inc. Cache arrangement utilizing a split cycle mode of operation
US4264953A (en) * 1979-03-30 1981-04-28 Honeywell Inc. Virtual cache
US4345309A (en) * 1980-01-28 1982-08-17 Digital Equipment Corporation Relating to cached multiprocessor system with pipeline timing
US4332010A (en) * 1980-03-17 1982-05-25 International Business Machines Corporation Cache synonym detection and handling mechanism
EP0039227A3 (en) * 1980-04-25 1982-09-01 Data General Corporation Data processing system
US4439829A (en) * 1981-01-07 1984-03-27 Wang Laboratories, Inc. Data processing machine with improved cache memory management
US4486856A (en) * 1982-05-10 1984-12-04 Teletype Corporation Cache memory and control circuit
US4612612A (en) * 1983-08-30 1986-09-16 Amdahl Corporation Virtually addressed cache
US4682281A (en) * 1983-08-30 1987-07-21 Amdahl Corporation Data storage unit employing translation lookaside buffer pointer
US4573116A (en) * 1983-12-20 1986-02-25 Honeywell Information Systems Inc. Multiword data register array having simultaneous read-write capability
US4669043A (en) * 1984-02-17 1987-05-26 Signetics Corporation Memory access controller

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53134335A (en) * 1977-04-28 1978-11-22 Fujitsu Ltd Memory control system
JPS5685168A (en) * 1979-12-13 1981-07-11 Fujitsu Ltd Access control system for main storage
JPS5750380A (en) * 1980-09-09 1982-03-24 Mitsubishi Electric Corp Writing method of buffer storage device
JPS615357A (ja) * 1984-06-07 1986-01-11 Fujitsu Ltd デ−タ処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBMTechnicdlDisclosureBulletinVol.23,No.1,June1980(NewYorkUSA),F.T.Blountetal."eferredcachestorningmethod",P.262−263

Also Published As

Publication number Publication date
DE3781794D1 (de) 1992-10-22
DE3781794T2 (de) 1993-04-22
JPH01500377A (ja) 1989-02-09
EP0292501A1 (en) 1988-11-30
EP0292501B1 (en) 1992-09-16
CA1277044C (en) 1990-11-27
WO1987004823A1 (en) 1987-08-13
AU7032687A (en) 1987-08-25
US4755936A (en) 1988-07-05

Similar Documents

Publication Publication Date Title
JPH0668736B2 (ja) 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法
US4597044A (en) Apparatus and method for providing a composite descriptor in a data processing system
KR100292300B1 (ko) 레지스터재명명시스템및방법
US4530052A (en) Apparatus and method for a data processing unit sharing a plurality of operating systems
US5454093A (en) Buffer bypass for quick data access
JPS5830319Y2 (ja) コンピユ−タシステム
KR100617663B1 (ko) 캐시 메모리 내 태그 액세스 및 데이터 액세스의 분리방법 및 장치
KR100955433B1 (ko) 파이프라인 구조를 갖는 캐시 메모리 및 이를 제어하는방법
EP0019358B1 (en) Hierarchical data storage system
JP2003509733A5 (ja)
EP0167089B1 (en) Memory access control system and method for an information processing apparatus
EP0211472A2 (en) A stored program digital computer system
EP0442690A2 (en) Data cache store buffer for high performance computer
EP0107448A2 (en) Computer with multiple operating systems
US5276853A (en) Cache system
JP2700147B2 (ja) 命令キャッシュ・フラッシュ・オン・rei制御
EP0349757B1 (en) Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit
JPH06301600A (ja) 記憶装置
JP2864548B2 (ja) 命令キャッシュ装置
JP2845762B2 (ja) 階層バッファメモリ装置
JPS6035692B2 (ja) バッファ管理方式
JPH10111798A (ja) 情報処理装置
SE510295C2 (sv) Metod vid processor för att hantera villkorade hoppinstruktioner samt processor anpassad att verka enligt den angivna metoden
JP2735400B2 (ja) 非同期入出力制御方式
JPH02136946A (ja) キャッシュメモリ制御回路

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term