JPH0415736A - キャッシュメモリ装置 - Google Patents

キャッシュメモリ装置

Info

Publication number
JPH0415736A
JPH0415736A JP2112638A JP11263890A JPH0415736A JP H0415736 A JPH0415736 A JP H0415736A JP 2112638 A JP2112638 A JP 2112638A JP 11263890 A JP11263890 A JP 11263890A JP H0415736 A JPH0415736 A JP H0415736A
Authority
JP
Japan
Prior art keywords
memory
cache
memory device
accesses
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2112638A
Other languages
English (en)
Other versions
JP2822588B2 (ja
Inventor
Hiroaki Suzuki
宏明 鈴木
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2112638A priority Critical patent/JP2822588B2/ja
Priority to EP19910107036 priority patent/EP0455230A3/en
Priority to US07/693,296 priority patent/US5274790A/en
Publication of JPH0415736A publication Critical patent/JPH0415736A/ja
Application granted granted Critical
Publication of JP2822588B2 publication Critical patent/JP2822588B2/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/0853Cache with multiport tag or data arrays
    • 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/12Replacement control
    • 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning

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で高速なシステムを実現するには、最も一
般的には、複数のCPUに夫々キャッシュメモリ装置を
接続する方法がとられている。しかし、この場合、主記
憶装置と各キャッシュメモリ装置との間のデータの一致
性を保つため、複雑なプロトコルが必要となり、ハード
ウェア量が増大する。
そこで、比較的少数のCPUシステムでは、キャッシュ
メモリをマルチポート構成にし、同じキャッシュメモリ
装置を共有する方式もとられている。この場合、複数の
CPUからキャッシュメモリ装置へのアクセスはランダ
ムに行われるので、アクセスが競合することがある。こ
の場合、アクセスが行われた順番又は予め各CPUに与
えられた優先順位に基づいて、順番にデータが渡される
ことになる。
第3図は、マルチポートのキャッシュメモリ装置を使用
したコンピュータシステムの構成を示すブロック図であ
る。
CPU1.2は、2ポートのキャッシュメモリ装置3及
びシステムバス4を介して主記憶装置5に接続されてい
る。キャッシュメモリ装置3は、2ポートキヤツシユイ
モリ6と、CPUIからのアクセスに基づいて2ポート
キヤツシユメモリ6を制御するコントローラ7と、CP
U2からのアクセスに基づいて2ポートキヤツシユメモ
リ6を制御するコントローラ8とから構成されている。
第4図は、2ポートキヤツシユメモリ6のブロック図で
ある。ここでは、2ウエイセツトアソシエテイブ、LR
U入れ替えアルゴリズムのキャッシュを例にとって説明
する。
2ウ工イセツトアソシエテイブ方式では、タグメモリと
データメモリのセットが2組設けられている。即ち、タ
グメモリ13及びデータメモリ15、並びにタグメモリ
14及びデータメモリ16が夫々1セツトを構成してい
る。各メモリ13乃至16は、互いに独立した2つの入
出力ポートを宵している。
CPUI、2からのアドレスAD、、AD2は、夫々キ
ャッシュ内部でタグ比較に供されるタグフィールドTF
、、TF2と、ライン選択に使用されるインデックスフ
ィールドIF、、IF2とに分割されている。インデッ
クスフィールドIF、。
IF2は、夫々デコーダ11.12でデコードされ、ラ
イン選択信号II、12としてタグメモリ13.14及
びデータメモリ15.16に夫々供給されている。
一方、タグフィールドT F rは、比較器21゜22
においてタグメモリ13.14の各一方の出力ポートか
ら読み出されたタグ情報T r It T 12と比較
されるようになっている。比較器21.22の出力はヒ
ツト判定器25に入力され、ここでキャツシュヒツト/
ミスが判定され、その判定結果であるヒツト信号H8が
CPUIに出力されるようになっている。また、タグフ
ィールドTF2も同様に、比較器23.24においてタ
グメモリ13.14の各他方の出力ポートから読み出さ
れたタグ情報T211 T2□と比較されるようになっ
ている。比較器23.24の出力はヒツト判定器26に
入力され、ここでキャツシュヒツト/ミスが判定され、
その判定結果であるヒツト信号H2がCPU2に出力さ
れるようになっている。そして、これらのヒツト判定器
25.26からのヒツト信号がウェイ選択器27.28
にも夫々入力されており、これらのウェイ選択器27.
28を介してテータメ−E−’) 15. 18ト外部
(7)CPUI、2との間でデータDA□、DA2のリ
ード/ライトが行われるものとなっている。
また、タグメモリ13.14及びデータメモリ15.1
6の各記憶番地に夫々対応させてこれらのアクセス履歴
情報(以下、LRUビットと呼ぶ)を格納したLRUメ
モリ17が設けられている。
上記LRUビットは、ミスヒツトが発生したときに、何
れのセットのメモリをリプレースするかのリプレースセ
ット情報となるものである。このLRUビットは、ヒツ
ト判定器25.28の出力で書込セット選択器29.3
0によって順次更新されるものとなっている。
次に、CPUがこのキャッシュメモリ装置にリードアク
セスしたときの手順を説明する。
CPUIからアドレスAD、が与えられると、アドレス
AD、はキャッシュ内部でタグ比較に使用されるタグフ
ィールドTF、と、ライン選択に使用されるインデック
スフィールドIF工とに分割される。そして、インデッ
クスフィールドIF、を使用して各セットのタグメモリ
13.14とデータメモリ15.16のラインをアクセ
スし、タグメモリ13中のデータT11+TI。とデー
タメモリ15中のデータD 11+ D I□を読み出
す。
次に、タグフィールドTF、とタグ情報T11゜T□2
とを比較器21.22で比較し、ヒツトしたか判定し、
ヒツト信号H,,H2を発生させる。
このとき、どちらかがヒツトしていれば、データD I
 l+  D I□のうち、ヒツトした方のデータを外
部に出力し、C:PUlにヒツトを通知し1、そのライ
ンのLRUビットを更新する。
また、どちらのセットもミスヒツトしていた場合、CP
U1にミスヒツトを通知し、LRUビットに従い、最も
過去にアクセスされたセットをフラッシュし、主記憶装
置5からキャッシュメモリ装置3にリプレースを行い、
リプレースが終わったところでCPUIにその旨を通知
し、LRUビットを更新する。これらのシーケンスはコ
ントローラ7によって制御される。
また、CPU2からのアクセスも同様に、行われるが、
この場合には、これらのシーケンスはコントローラ8よ
って制御される。
このようなキャッシュメモリ装置によれば、タグメモリ
及びデータメモリがともに2ポートメモリとなっている
ため、ラインが競合しない限り、コントローラ7.8は
お互いに影響されることな(独立に動作することが可能
である。
[発明が解決しようとする課題] しかしながら、上述したシステムでは、次のような問題
点があった。
即ち、あるキャッシュアクセス(アクセスA)がミスヒ
ツトとなり、リプレースを行うとき、同時に他のアクセ
ス(キャッシュB)がキャッシュの同一のデータをアク
セスした場合、アクセスAのリプレースが終わっておら
す、キャッシュが更新されていないため、アクセスBも
ミスヒツトとなり、リプレースを行ってしまう。しかし
、このリプレースのデータは、アクセスAによるデータ
と同一であり、冗長なものである。
また、アクセスAがヒツトしたとき、このラインのアク
セス履歴情報(LRU、FIFO方式等)が更新される
前に、アクセスBが同一ラインをアクセスしてミスヒツ
トした場合、アクセスAで選択されたブロックと同一の
ブロックにリプレースされる可能性があり、アクセスA
でヒツトしたデータが重ね書きされてしまうという問題
点がある。
同様に、アクセスA1アクセスB共にミスヒ、ツトシ、
同一ラインをアクセスしていて、異なる主記憶領域を指
しているとき、このラインのアクセス履歴情報が更新さ
れる前にそれぞれのリプレースを行った場合、同じブロ
ックが選択され、デー夕が重ね書きされてしまうという
問題点がある。
本発明はかかる問題点に鑑みてなされたものであって、
同一のキャッシュメモリに対する複数のアクセスが競合
した場合の無駄なリプレース操作又は適切でないリプレ
ースを防止することができ、もってキャッシュメモリの
特色である高速動作性を更に高めることができるキャッ
シュメモリ装置を提供することを目的とする。
[課題を解決するための手段] 本発明に係るキャッシュメモリ装置は、複数のポートか
ら夫々独立してアクセスされ主記憶装置上のデータ及び
このデータの前記主記憶装置上での格納領域を示すタグ
情報を記憶するメモリ本体と、このメモリ本体に対する
アクセスの際に与えられたアドレスのタグ情報とこのア
ドレスの指定によって前記メモリ本体内から読み出され
たタグ情報とを比較してキャツシュヒツト及びキャッシ
ュミスを判定するヒツト判定手段と、この手段でキャッ
シュミスと判定された場合に前記メモリ本体のデータ及
びタグ情報をリプレースするリプレース制御手段とを有
するキャッシュメモリ装置において、前記リプレース制
御手段は、同一のアドレスに対する複数のアクセスが競
合し且つ前記メモリ本体に対するこれらのアクセスが全
てミスヒツトした場合に前記メモリ本体に対するリプレ
ースを1回に抑制するものであることを特徴とする。
[作用コ 本発明によれば、同一のアドレスに対する複数のアクセ
スが競合し、しかも前記メモリ本体に対するこれらのア
クセスが全てミスヒツトした場合に、前記メモリ本体に
対するリプレースを1回に抑制するように作用するから
、冗長なリプレース動作が行われるのを防止することが
でき、リプレース時の無駄を削減して高速動作性を更に
高めることができる。
また、本発明によれば、アドレスのタグ情報は異なるが
前記メモリ本体に対する複数のアクセスが競合し、且つ
前記メモリに対するこれらのアクセスのうちの少なくと
も一つがミスヒツトした場合、前記アクセス履歴情報の
更新を制御するようにしている。したがって、一つのア
クセスがキャツシュヒツトして、それに付随したアクセ
ス履歴情報の更新がなされる前に、他のアクセスがミス
ヒツトした場合でも、アクセス履歴情報が正しく制御さ
れることにより、適切でないデータをリプレースする等
の不具合が発生するのを防止することができる。
[実施例コ 以下、添付の図面を参照しながら本発明の実施例につい
て説明する。
第1図は、本発明の第1の実施例に係るキャッシュメモ
リ装置の要部を示すブロック図である。
なお、この第1図において、第4図と同一部分には同一
符号を付し、重複する部分の説明は省略する。
この回路が第4図に示した従来の回路と異なる点は、タ
グフィールドTF、、TF2を比較する比較器31と、
インデックスフィールドI F t 。
IF2を比較する比較器32と、これら比較器31.3
2の出力が共に“真”になったことを検出する検出器3
3と、比較器31.32の出力が夫々“真”偽”になっ
たことを検出する検出器34とを新たに備えた点である
。検出器13の出力は、リプレース制御信号RCとして
コントローラ7.8に入力されている。また、検出器1
4の出力はLRUビットの更新を制御する書込セット選
択器30に入力されている。
次にこのように構成された本実施例に係るキャッシュメ
モリ装置の動作について説明する。
CPUI、2が異なるアドレスに対してアクセスする場
合の動作は、前述した従来の回路の動作同一である。
CPUI及びCPU2が、同一のアドレスに対するアク
セスを略同時に行い、且つそのアクセスがミスヒツトし
た場合には、次のように動作する。
即ち、この場合には、タグフィールドTF□。
T F 2及びインデックスフィールドIF、。
IF2は、共に同一の値になるので、比較器31゜32
の出力は、共に“真”となり、検出器33からリプレー
ス制御信号RCがコントローラ7.8に出力される。こ
のとき、CPU1によるアクセスがCPU2によるアク
セスに先立って行われると、コントローラ7のみによる
リプレース制御が行われ、リプレースが終了すると、C
PUI、2に同時にリプレースの終了が通知される。こ
の場合、コントローラ8によるリプレースは行われない
。このように、本装置では、リプレースは1回に制限さ
れ、冗長なリプレース処理が防止されてペナルティ−時
間を削減することができる。
一方、CPU1.2による略同時のアクセスが、異なる
タグフィールドで、同一のインデックスフィールドから
なるアドレスに対し行われた場合、検出器34の出力が
アクティブになり、書込セット選択器30にこれが通知
され、LRUビットはマスクされる。また、ヒツト判定
器25で選択したセットの情報も書込セット選択器30
に通知されるので、強制的にこれと重複しないよう、リ
プレースセットが変更される。
このため、同一ラインに主記憶装置上の別領域のデータ
をリプレースしたときでも、LRUの値に拘らず、別々
のセットにデータが配置される。
このとき、ヒツト信号H1,H2が共にミスヒツトであ
った場合には、夫々のリプレースが終了した時点でデー
タがCPUI、2に渡される。また、ヒツト信号H1が
ヒツト、ヒツト信号H2がミスヒツトの場合には、CP
U1は中断することなく動作し、CPU2はリプレース
が終了した時点で動作を開始する。
第2図は本発明の第2の実施例に係るキャッシュメモリ
装置のブロック図である。この実施例は、同期して複数
のアクセスを行うVLIW型CPU40を使用したシス
テムに本発明に適用したものである。
即ち、VLIW型CPU40では、1命令語長の中のフ
ィールドをいくつかに分割して演算器等の資源に割り当
て、夫々並列に実行するようにしている。したがって、
1命令語として全てのデータが揃わないと、実行を継続
することができない。
そこで、この実施例では、第1図の構成に加え、2つの
ヒツト判定器25.26の出力の論理積をとるヒツト判
定器41を新たに設け、その出力HをCPU40に出力
している。
この実施例によれば、複数のアクセスのうちの一つでも
ミスヒツトが発生すると、CPU40の動作が停止し、
必要とするデータが全てキャッシュメモリ内に揃ったと
ころでCPUの動作が再開される。
このため、例えば同一ブロックに異なるデータをリプレ
ースする場合には、非同期な複数のCPUとキャッシュ
メモリとを接続したとき、リプレースされたデータをそ
の都度CPUに渡すようにすれば、本発明によらなくて
も正しいデータが渡される。
しかし、本実施例のように、キャッシュメモリ装置とV
LIW型CPU40とを接続したときには、CPUの動
作を再開したときに、先にリプレースしたデータが消え
てしまい、正しいデータは渡されない。このため、vL
IW型CPUを接続するときは、本発明は不可欠なもの
となる。
なお、以上の各実施例では、2ポート、2ウ工イセソト
アソシエテイブ方式を例にとり、説明したが、本発明は
、3ポート、3ウ工イセント以上のキャンプ二メモリに
も適用可能であることは言うまでもない。
[発明の効果コ 以上述へたように、本発明によれば、同一のアドレスに
対する複数のアクセスが競合し、且つ前記メモリ本体に
対するこれらのアクセスが全てミスヒツトした場合に、
前記メモリ本体に対するリプレースを1回に抑制するこ
とができるので、冗長なリプレース動作が行われるのを
防止して、動作速度の向上を図ることができる。
また、本発明によれば、アドレスのタグ情報は異なるが
前記メモリ本体に対する複数のアクセスが競合し、且つ
前記メモリに対するこれらのアクセスのうちの少なくと
も一つがミスヒツトした場合、前記アクセス履歴情報の
更新を制御する。したがって、一つのアクセスがキャツ
シュヒツトして、それに付随したアクセス履歴情報の更
新がなされる前に、他のアクセスがミスヒツトした場合
でも、アクセス履歴情報が正しく制御されることにより
、適切でないデータをリプレースする等の不具合が発生
するのを防止することができる。
【図面の簡単な説明】
第1図は本発明の第1の実施例に係るキャッシュメモリ
装置のブロック図、第2図は本発明の第2の実施例に係
るキャッシュメモリ装置のブロック図、第3図はキャッ
シュメモリ装置を使用した一般的なシステム構成を示す
ブロック図、第4図は従来のキャッシュメモリ装置のブ
ロック図である。 1.2;CPU13;キャッシュメモリ装置、4;シス
テムバス、5;主記憶装yt、e ; 2 ポートキャ
ッシュメモリ、7,8;コントローラ、11.12;デ
コーダ、13,14;タグメモリ、15.16;データ
メモリ、17 ; LRUメモリ、21〜24,31,
32;比較器、25.2B。 41;ヒツト判定器、27.28;ウェイ選択器、29
.30;書込セット選択器、40;VLIW型CPU

Claims (3)

    【特許請求の範囲】
  1. (1)複数のポートから夫々独立してアクセスされ主記
    憶装置上のデータ及びこのデータの前記主記憶装置上で
    の格納領域を示すタグ情報を記憶するメモリ本体と、こ
    のメモリ本体に対するアクセスの際に与えられたアドレ
    スのタグ情報とこのアドレスの指定によって前記メモリ
    本体内から読み出されたタグ情報とを比較してキャッシ
    ュヒット及びキャッシュミスを判定するヒット判定手段
    と、この手段でキャッシュミスと判定された場合に前記
    メモリ本体のデータ及びタグ情報をリプレースするリプ
    レース制御手段とを有するキャッシュメモリ装置におい
    て、前記リプレース制御手段は、同一のアドレスに対す
    る複数のアクセスが競合し且つ前記メモリ本体に対する
    これらのアクセスが全てミスヒットした場合に前記メモ
    リ本体に対するリプレースを1回に抑制するものである
    ことを特徴とするキャッシュメモリ装置。
  2. (2)複数のポートから夫々独立してアクセスされ主記
    憶装置上のデータ及びこのデータの前記主記憶装置上で
    の格納領域を示すタグ情報を記憶する複数セットのメモ
    リ本体と、これらのメモリ本体に対するアクセス履歴情
    報を格納するアクセス履歴情報格納手段と、前記メモリ
    本体に対するアクセスの際に与えられたアドレスのタグ
    情報とこのアドレスの指定によって前記メモリ本体内か
    ら読み出されたタグ情報とを比較してキャッシュヒット
    及びキャッシュミスを判定するヒット判定手段と、この
    手段でキャッシュミスと判定された場合に前記アクセス
    履歴情報によって前記メモリ本体の1つのセットを選択
    しこのセットのデータ及びタグ情報をリプレースするリ
    プレース制御手段とを有するキャッシュメモリ装置にお
    いて、前記リプレース制御手段は、アドレスのタグ情報
    は異なるが前記メモリ本体に対する複数のアクセスが競
    合し且つ前記メモリに対するこれらのアクセスのうちの
    少なくとも一つがミスヒットした場合、前記アクセス履
    歴情報の更新を制御するものであることを特徴とするキ
    ャッシュメモリ装置。
  3. (3)1命令を分割して並列に実行するプロセッサから
    の複数のアクセスが全てキャッシュヒットしたときに、
    前記プロセッサにこれを知らせる手段を更に備えたこと
    を特徴とする請求項2に記載のキャッシュメモリ装置。
JP2112638A 1990-04-30 1990-04-30 キャッシュメモリ装置 Expired - Lifetime JP2822588B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2112638A JP2822588B2 (ja) 1990-04-30 1990-04-30 キャッシュメモリ装置
EP19910107036 EP0455230A3 (en) 1990-04-30 1991-04-30 Cache memory apparatus
US07/693,296 US5274790A (en) 1990-04-30 1991-04-30 Cache memory apparatus having a plurality of accessibility ports

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2112638A JP2822588B2 (ja) 1990-04-30 1990-04-30 キャッシュメモリ装置

Publications (2)

Publication Number Publication Date
JPH0415736A true JPH0415736A (ja) 1992-01-21
JP2822588B2 JP2822588B2 (ja) 1998-11-11

Family

ID=14591739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2112638A Expired - Lifetime JP2822588B2 (ja) 1990-04-30 1990-04-30 キャッシュメモリ装置

Country Status (3)

Country Link
US (1) US5274790A (ja)
EP (1) EP0455230A3 (ja)
JP (1) JP2822588B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004046933A1 (ja) * 2002-11-20 2004-06-03 Fujitsu Limited メモリ制御装置およびキャッシュリプレース制御方法
US7644234B2 (en) 2004-05-31 2010-01-05 Sony Computer Entertainment Inc. Information processing apparatus with a cache memory and information processing method

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465344A (en) * 1990-08-20 1995-11-07 Matsushita Electric Industrial Co., Ltd. Microprocessor with dual-port cache memory for reducing penalty of consecutive memory address accesses
JP2703418B2 (ja) * 1991-04-24 1998-01-26 株式会社東芝 中央演算処理装置
GB2255211B (en) * 1991-04-25 1995-05-17 Intel Corp LRU pointer updating in a controller for two-way set associative cache
US5636358A (en) * 1991-09-27 1997-06-03 Emc Corporation Method and apparatus for transferring data in a storage device including a dual-port buffer
JP3451099B2 (ja) * 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
JPH05233281A (ja) * 1992-02-21 1993-09-10 Toshiba Corp 電子計算機
US5696935A (en) * 1992-07-16 1997-12-09 Intel Corporation Multiported cache and systems
US5471605A (en) * 1992-08-27 1995-11-28 Intel Corporation Apparatus for updating a multi-way set associative cache memory status array
JPH06242951A (ja) * 1992-12-22 1994-09-02 Toshiba Corp キャッシュメモリシステム
US5689680A (en) * 1993-07-15 1997-11-18 Unisys Corp. Cache memory system and method for accessing a coincident cache with a bit-sliced architecture
JPH0756815A (ja) * 1993-07-28 1995-03-03 Internatl Business Mach Corp <Ibm> キャッシュ動作方法及びキャッシュ
EP0651332B1 (en) * 1993-10-29 2001-07-18 Advanced Micro Devices, Inc. Linearly addressable microprocessor cache
US5878245A (en) * 1993-10-29 1999-03-02 Advanced Micro Devices, Inc. High performance load/store functional unit and data cache
US5559975A (en) 1994-06-01 1996-09-24 Advanced Micro Devices, Inc. Program counter update mechanism
US5617347A (en) * 1995-03-17 1997-04-01 Fujitsu Limited Cache memory system and method thereof for storing a staged memory item and a cache tag within a single cache array structure
JPH08263376A (ja) * 1995-03-22 1996-10-11 Nec Ibaraki Ltd キャッシュ制御装置
EP0735487B1 (en) * 1995-03-31 2001-10-31 Sun Microsystems, Inc. A fast, dual ported cache controller for data processors in a packet switched cache coherent multiprocessor system
US5752264A (en) * 1995-03-31 1998-05-12 International Business Machines Corporation Computer architecture incorporating processor clusters and hierarchical cache memories
US5845317A (en) * 1995-11-17 1998-12-01 Micron Technology, Inc. Multi-way cache expansion circuit architecture
JP3348367B2 (ja) * 1995-12-06 2002-11-20 富士通株式会社 多重アクセス方法および多重アクセスキャッシュメモリ装置
US6223260B1 (en) * 1996-01-25 2001-04-24 Unisys Corporation Multi-bus data processing system in which all data words in high level cache memories have any one of four states and all data words in low level cache memories have any one of three states
US5924128A (en) * 1996-06-20 1999-07-13 International Business Machines Corporation Pseudo zero cycle address generator and fast memory access
JP2919376B2 (ja) * 1996-08-23 1999-07-12 日本電気アイシーマイコンシステム株式会社 読出し専用記憶媒体の読出し方法
JP2000501539A (ja) * 1996-09-25 2000-02-08 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ アドレス競合検出を持つ多重ポート・キャッシュメモリ
US5752261A (en) * 1996-11-07 1998-05-12 Ncr Corporation Method and apparatus for detecting thrashing in a cache memory
US5924117A (en) * 1996-12-16 1999-07-13 International Business Machines Corporation Multi-ported and interleaved cache memory supporting multiple simultaneous accesses thereto
US5930819A (en) * 1997-06-25 1999-07-27 Sun Microsystems, Inc. Method for performing in-line bank conflict detection and resolution in a multi-ported non-blocking cache
US6138212A (en) * 1997-06-25 2000-10-24 Sun Microsystems, Inc. Apparatus and method for generating a stride used to derive a prefetch address
US6098154A (en) * 1997-06-25 2000-08-01 Sun Microsystems, Inc. Apparatus and method for generating a stride used to derive a prefetch address
US6314493B1 (en) 1998-02-03 2001-11-06 International Business Machines Corporation Branch history cache
JP3812258B2 (ja) * 2000-01-13 2006-08-23 株式会社日立製作所 キャッシュ記憶装置
US6928525B1 (en) * 2000-04-28 2005-08-09 Hewlett-Packard Development Company, L.P. Per cache line semaphore for cache access arbitration
US6732234B1 (en) * 2000-08-07 2004-05-04 Broadcom Corporation Direct access mode for a cache
JP2002055879A (ja) * 2000-08-11 2002-02-20 Univ Hiroshima マルチポートキャッシュメモリ
US6604174B1 (en) 2000-11-10 2003-08-05 International Business Machines Corporation Performance based system and method for dynamic allocation of a unified multiport cache
US7533232B2 (en) * 2003-11-19 2009-05-12 Intel Corporation Accessing data from different memory locations in the same cycle
US7146466B2 (en) * 2004-03-23 2006-12-05 International Business Machines System for balancing multiple memory buffer sizes and method therefor
US20060179231A1 (en) * 2005-02-07 2006-08-10 Advanced Micron Devices, Inc. System having cache memory and method of accessing
US7930484B2 (en) * 2005-02-07 2011-04-19 Advanced Micro Devices, Inc. System for restricted cache access during data transfers and method thereof
US7363430B2 (en) * 2005-04-06 2008-04-22 Intel Corporation Determination of cache entry for future operation
US7457926B2 (en) * 2005-05-18 2008-11-25 International Business Machines Corporation Cache line replacement monitoring and profiling
US8606998B2 (en) * 2006-08-24 2013-12-10 Advanced Micro Devices, Inc. System and method for instruction-based cache allocation policies
US8966183B2 (en) * 2012-10-04 2015-02-24 Freescale Semiconductor, Inc. Opportunistic cache replacement policy
US9652396B2 (en) 2013-12-27 2017-05-16 Samsung Electronics Co., Ltd. Cache element processing for energy use reduction
US10628320B2 (en) * 2016-06-03 2020-04-21 Synopsys, Inc. Modulization of cache structure utilizing independent tag array and data array in microprocessor
US10558463B2 (en) 2016-06-03 2020-02-11 Synopsys, Inc. Communication between threads of multi-thread processor
US10613859B2 (en) 2016-08-18 2020-04-07 Synopsys, Inc. Triple-pass execution using a retire queue having a functional unit to independently execute long latency instructions and dependent instructions
US10552158B2 (en) 2016-08-18 2020-02-04 Synopsys, Inc. Reorder buffer scoreboard having multiple valid bits to indicate a location of data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2075731B (en) * 1978-12-11 1983-05-25 Honeywell Inf Systems Improvements in or relating to data processing apparatus
US4392200A (en) * 1980-01-28 1983-07-05 Digital Equipment Corporation Cached multiprocessor system with pipeline timing
EP0214718A3 (en) * 1985-07-22 1990-04-04 Alliant Computer Systems Corporation Digital computer
US4768148A (en) * 1986-06-27 1988-08-30 Honeywell Bull Inc. Read in process memory apparatus
JPH01280860A (ja) * 1988-05-06 1989-11-13 Hitachi Ltd マルチポートキヤツシユメモリを有するマルチプロセツサシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004046933A1 (ja) * 2002-11-20 2004-06-03 Fujitsu Limited メモリ制御装置およびキャッシュリプレース制御方法
US7644234B2 (en) 2004-05-31 2010-01-05 Sony Computer Entertainment Inc. Information processing apparatus with a cache memory and information processing method

Also Published As

Publication number Publication date
US5274790A (en) 1993-12-28
EP0455230A2 (en) 1991-11-06
JP2822588B2 (ja) 1998-11-11
EP0455230A3 (en) 1992-12-16

Similar Documents

Publication Publication Date Title
JPH0415736A (ja) キャッシュメモリ装置
US6038647A (en) Cache memory device and method for providing concurrent independent multiple accesses to different subsets within the device
US5584013A (en) Hierarchical cache arrangement wherein the replacement of an LRU entry in a second level cache is prevented when the cache entry is the only inclusive entry in the first level cache
US5136700A (en) Apparatus and method for reducing interference in two-level cache memories
EP0435475B1 (en) High-performance frame buffer and cache memory system
US7321954B2 (en) Method for software controllable dynamically lockable cache line replacement system
EP0438211A2 (en) Cache memory system
JP3236287B2 (ja) マルチプロセッサシステム
US6332179B1 (en) Allocation for back-to-back misses in a directory based cache
JP2002032265A (ja) キャッシュ・アクセス制御方式およびデータ処理システム
US20100005244A1 (en) Device and Method for Storing Data and/or Instructions in a Computer System Having At Least Two Processing Units and At Least One First Memory or Memory Area for Data and/or Instructions
US5675765A (en) Cache memory system with independently accessible subdivided cache tag arrays
US20040049491A1 (en) Access control of a resource shared between components
US5761724A (en) Write-invalidate cache system for a split transaction bus based shared memory multiprocessor
JP2000242556A (ja) 仮想インデックス仮想タグデータキャッシュ用に最適化されたハードウエアクリーニング機能
JPH04230549A (ja) 多重レベル・キャッシュ
US6839806B2 (en) Cache system with a cache tag memory and a cache tag buffer
US6915406B2 (en) Address translation apparatus, address translation method, and two-layer address translation apparatus
US7865691B2 (en) Virtual address cache and method for sharing data using a unique task identifier
US6480940B1 (en) Method of controlling cache memory in multiprocessor system and the multiprocessor system based on detection of predetermined software module
JPH0727492B2 (ja) 緩衝記憶装置
JP2006244460A (ja) キャッシュメモリ及びプロセッサ
US20060015689A1 (en) Implementation and management of moveable buffers in cache system
JP3295728B2 (ja) パイプラインキャッシュメモリの更新回路
JP2700148B2 (ja) コンピュータ内のキャッシュへ情報を装填する方法と装置