JPH09212423A - 2重目的キャッシュ・タグ・アレイを持つマイクロプロセッサ・アーキテクチャ - Google Patents
2重目的キャッシュ・タグ・アレイを持つマイクロプロセッサ・アーキテクチャInfo
- Publication number
- JPH09212423A JPH09212423A JP8337846A JP33784696A JPH09212423A JP H09212423 A JPH09212423 A JP H09212423A JP 8337846 A JP8337846 A JP 8337846A JP 33784696 A JP33784696 A JP 33784696A JP H09212423 A JPH09212423 A JP H09212423A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- memory
- mode
- tag
- primary
- 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
Links
- 230000015654 memory Effects 0.000 claims abstract description 77
- 239000000758 substrate Substances 0.000 claims abstract description 12
- 230000006870 function Effects 0.000 abstract description 4
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 abstract description 3
- 229910052710 silicon Inorganic materials 0.000 abstract description 3
- 239000010703 silicon Substances 0.000 abstract description 3
- 239000002699 waste material Substances 0.000 abstract 1
- 239000000872 buffer Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/251—Local memory within processor subsystem
- G06F2212/2515—Local memory within processor subsystem being configurable for different purposes, e.g. as cache or non-cache memory
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)
- Microcomputers (AREA)
Abstract
(57)【要約】
【課題】 2次キャッシュが用いられていない時に無駄
にならない内部2次キャッシュ・タグ領域を持つマイク
ロプロセッサ・アーキテクチャを提供する。 【解決手段】 マイクロプロセッサ・アーキテクチャは
データを格納するため、関連するオンチップ・タグ・メ
モリと共にオンチップに配置された第1キャッシュ・メ
モリを含む。第1動作モードではデータを格納するた
め、第2動作モードでは第2キャッシュ・メモリの内容
に関連したタグを格納するため、オンチップで第2メモ
リが用意される。動作モードは制御ロジックによってセ
ットされ、モード制御レジスタにビットをセットするこ
とによってモードが選択される。ビットがセットされる
と、制御ロジックは第2メモリが追加オンチップ・キャ
ッシュ・メモリとして機能する第1モードから、第2メ
モリが外部2次キャッシュ・メモリのタグを格納する第
2モードにシステムを変更する。本発明は、オンチップ
のキャッシュが増えるかまたはオフチップ2次キャッシ
ュ用にタグ・メモリ域が与えられる柔軟なキャッシュ構
造を提供する。
にならない内部2次キャッシュ・タグ領域を持つマイク
ロプロセッサ・アーキテクチャを提供する。 【解決手段】 マイクロプロセッサ・アーキテクチャは
データを格納するため、関連するオンチップ・タグ・メ
モリと共にオンチップに配置された第1キャッシュ・メ
モリを含む。第1動作モードではデータを格納するた
め、第2動作モードでは第2キャッシュ・メモリの内容
に関連したタグを格納するため、オンチップで第2メモ
リが用意される。動作モードは制御ロジックによってセ
ットされ、モード制御レジスタにビットをセットするこ
とによってモードが選択される。ビットがセットされる
と、制御ロジックは第2メモリが追加オンチップ・キャ
ッシュ・メモリとして機能する第1モードから、第2メ
モリが外部2次キャッシュ・メモリのタグを格納する第
2モードにシステムを変更する。本発明は、オンチップ
のキャッシュが増えるかまたはオフチップ2次キャッシ
ュ用にタグ・メモリ域が与えられる柔軟なキャッシュ構
造を提供する。
Description
【0001】
【発明の属する技術分野】本発明はコンピュータ・シス
テムに関し、特にマイクロプロセッサ等のオンチップ及
びオフチップのキャッシュ・メモリを提供する装置及び
方法に関する。
テムに関し、特にマイクロプロセッサ等のオンチップ及
びオフチップのキャッシュ・メモリを提供する装置及び
方法に関する。
【0002】
【従来の技術】コンピュータは、一般的には読出し専用
メモリ(ROM)から取り出された命令に従って、バス
または記憶媒体を介して提供されるデータを処理し、処
理されたデータをバスに送るかまたはランダム・アクセ
ス・メモリ(RAM)等の記憶域に格納するマイクロプ
ロセッサを含む。中間計算データはキャッシュ・メモリ
に格納できる。キャッシュ・メモリは中間データを格納
するために用いられるランダム・アクセス・メモリであ
る。キャッシュ・メモリの内容は「タグ」・メモリと呼
ばれる別のメモリ領域に格納される。
メモリ(ROM)から取り出された命令に従って、バス
または記憶媒体を介して提供されるデータを処理し、処
理されたデータをバスに送るかまたはランダム・アクセ
ス・メモリ(RAM)等の記憶域に格納するマイクロプ
ロセッサを含む。中間計算データはキャッシュ・メモリ
に格納できる。キャッシュ・メモリは中間データを格納
するために用いられるランダム・アクセス・メモリであ
る。キャッシュ・メモリの内容は「タグ」・メモリと呼
ばれる別のメモリ領域に格納される。
【0003】パフォーマンスを最適化するためには、キ
ャッシュ・メモリとタグ・メモリをマイクロプロセッサ
と同じ基板すなわち「チップ」上に「オンチップ」で格
納する必要がある。
ャッシュ・メモリとタグ・メモリをマイクロプロセッサ
と同じ基板すなわち「チップ」上に「オンチップ」で格
納する必要がある。
【0004】コンピュータのパフォーマンスの向上が求
められるなか、より大きなキャッシュ・メモリに対する
需要に拍車がかかっている。キャッシュ・サイズが大き
くなると、それに応じて関連するタグ・メモリも大きく
しなければならない。例えば高性能シングル・チップ・
マイクロプロセッサには大きな2次キャッシュ(L2キ
ャッシュ)が必要である。L2キャッシュは通常、より
小型でオンチップの1次キャッシュ(L1キャッシュ)
と主メモリとの間に置かれる。L2キャッシュは、その
サイズのために通常はマイクロプロセッサの外部、「オ
フチップ」に置かれる。また要求サイズのために、L2
キャッシュのタグもマイクロプロセッサの外部に置かれ
る。
められるなか、より大きなキャッシュ・メモリに対する
需要に拍車がかかっている。キャッシュ・サイズが大き
くなると、それに応じて関連するタグ・メモリも大きく
しなければならない。例えば高性能シングル・チップ・
マイクロプロセッサには大きな2次キャッシュ(L2キ
ャッシュ)が必要である。L2キャッシュは通常、より
小型でオンチップの1次キャッシュ(L1キャッシュ)
と主メモリとの間に置かれる。L2キャッシュは、その
サイズのために通常はマイクロプロセッサの外部、「オ
フチップ」に置かれる。また要求サイズのために、L2
キャッシュのタグもマイクロプロセッサの外部に置かれ
る。
【0005】
【発明が解決しようとする課題】残念ながら、通常はタ
グ・メモリのオフチップ・アクセスに関連して何らかの
パフォーマンスの低下が見られる。またオフチップ・タ
グはL2キャッシュに加えることができる関連性の量を
制限する。重要なベンチマークの多くが示しているよう
に、関連性は2次キャッシュのサイズよりもパフォーマ
ンスに与える影響が大きい。またオフチップ・タグは、
これに高速ドライバが必要なことから消費電力が大き
い。
グ・メモリのオフチップ・アクセスに関連して何らかの
パフォーマンスの低下が見られる。またオフチップ・タ
グはL2キャッシュに加えることができる関連性の量を
制限する。重要なベンチマークの多くが示しているよう
に、関連性は2次キャッシュのサイズよりもパフォーマ
ンスに与える影響が大きい。またオフチップ・タグは、
これに高速ドライバが必要なことから消費電力が大き
い。
【0006】L2タグをオンチップに置くという直截的
な解決策には問題がある。L2キャッシュを必要としな
いシステムの場合、L2タグに用いられるシリコン領域
が無駄になるからである。
な解決策には問題がある。L2キャッシュを必要としな
いシステムの場合、L2タグに用いられるシリコン領域
が無駄になるからである。
【0007】従って、2次キャッシュが用いられていな
い時に無駄にならない内部2次キャッシュ・タグ領域を
持つマイクロプロセッサ・アーキテクチャが求められ
る。
い時に無駄にならない内部2次キャッシュ・タグ領域を
持つマイクロプロセッサ・アーキテクチャが求められ
る。
【0008】
【課題を解決するための手段】前記の技術上の必要性に
応えるのは、本発明のマイクロプロセッサ・アーキテク
チャである。本発明のアーキテクチャは、関連するオン
チップのタグ・メモリと共にデータを格納するためオン
チップで配置された第1キャッシュ・メモリを含む。本
発明の新規な特徴は、第1動作モードでデータを格納
し、第2動作モードで第2キャッシュ・メモリの内容に
関連した情報を格納するオンチップの第2メモリであ
る。動作モードは制御ロジックによってセットされる。
応えるのは、本発明のマイクロプロセッサ・アーキテク
チャである。本発明のアーキテクチャは、関連するオン
チップのタグ・メモリと共にデータを格納するためオン
チップで配置された第1キャッシュ・メモリを含む。本
発明の新規な特徴は、第1動作モードでデータを格納
し、第2動作モードで第2キャッシュ・メモリの内容に
関連した情報を格納するオンチップの第2メモリであ
る。動作モードは制御ロジックによってセットされる。
【0009】ある実施例の場合、モードはモード制御レ
ジスタにビットをセットすることによって選択される。
ビットがセットされると、制御ロジックはシステムを第
2メモリがオンチップの追加キャッシュ・メモリとして
機能する第1モードから、第2メモリが外部2次キャッ
シュ・メモリのタグを格納する第2モードに変更する。
ジスタにビットをセットすることによって選択される。
ビットがセットされると、制御ロジックはシステムを第
2メモリがオンチップの追加キャッシュ・メモリとして
機能する第1モードから、第2メモリが外部2次キャッ
シュ・メモリのタグを格納する第2モードに変更する。
【0010】本発明は、オンチップ・キャッシュが増加
するか、またはオフチップの2次キャッシュにタグ・メ
モリ域が与えられる柔軟なキャッシュ構造を提供する。
従って、外部2次キャッシュが存在しない時は、2次タ
グに割当てられたシリコン領域が無駄になるのではな
く、追加オンチップ・キャッシュとして効率よく用いら
れる。
するか、またはオフチップの2次キャッシュにタグ・メ
モリ域が与えられる柔軟なキャッシュ構造を提供する。
従って、外部2次キャッシュが存在しない時は、2次タ
グに割当てられたシリコン領域が無駄になるのではな
く、追加オンチップ・キャッシュとして効率よく用いら
れる。
【0011】
【発明の実施の形態】以下、実施例と代表的な用途につ
いて、各図を参照しながら説明し、本発明の利点等を開
示する。
いて、各図を参照しながら説明し、本発明の利点等を開
示する。
【0012】本発明は、ある特定の用途の実施例に関し
て説明するが、本発明はこれに限定されないことを理解
する必要がある。当業者であれば、以下の内容から、本
発明の適用範囲内の他の変形例、用途、実施例を考案で
きよう。
て説明するが、本発明はこれに限定されないことを理解
する必要がある。当業者であれば、以下の内容から、本
発明の適用範囲内の他の変形例、用途、実施例を考案で
きよう。
【0013】図1は、本発明のマイクロプロセッサ・ア
ーキテクチャのブロック図である。マイクロプロセッサ
10は、基板12上に置かれ、従来のブランチ命令取り
出し装置(BRU)14と従来のロード/ストア装置
(LSU)16を含む。BRU14は、1次(L1)キ
ャッシュである命令キャッシュ18及びデータ・キャッ
シュ20と、それぞれ内部アドレス・バス22、内部デ
ータ・バス24を介してインタフェースをとる。基板1
2には、本発明に従って、内部2次犠牲キャッシュ34
が置かれ、プロセッサ10のオンチップ・キャッシュ容
量及び関連性が高められる。犠牲キャッシュ34は、L
1キャッシュから追い出された全てのキャッシュ・ライ
ンをキャプチャする。従って、L1キャッシュ18、2
0からは排他的な状態に保たれる。犠牲キャッシュ34
は2つの動作モードを提供する。デフォルトの第1モー
ドでは、犠牲キャッシュ34は1次キャッシュ18、2
0の拡張部として機能する。第2モードでは、犠牲キャ
ッシュ34は、オプションのオフチップ2次(L2)キ
ャッシュ40のタグ格納メモリとして機能する。
ーキテクチャのブロック図である。マイクロプロセッサ
10は、基板12上に置かれ、従来のブランチ命令取り
出し装置(BRU)14と従来のロード/ストア装置
(LSU)16を含む。BRU14は、1次(L1)キ
ャッシュである命令キャッシュ18及びデータ・キャッ
シュ20と、それぞれ内部アドレス・バス22、内部デ
ータ・バス24を介してインタフェースをとる。基板1
2には、本発明に従って、内部2次犠牲キャッシュ34
が置かれ、プロセッサ10のオンチップ・キャッシュ容
量及び関連性が高められる。犠牲キャッシュ34は、L
1キャッシュから追い出された全てのキャッシュ・ライ
ンをキャプチャする。従って、L1キャッシュ18、2
0からは排他的な状態に保たれる。犠牲キャッシュ34
は2つの動作モードを提供する。デフォルトの第1モー
ドでは、犠牲キャッシュ34は1次キャッシュ18、2
0の拡張部として機能する。第2モードでは、犠牲キャ
ッシュ34は、オプションのオフチップ2次(L2)キ
ャッシュ40のタグ格納メモリとして機能する。
【0014】犠牲キャッシュ34のモードは制御ロジッ
ク30によって制御される。制御ロジック30は、制御
レジスタ28に格納されたビットに応答する。制御レジ
スタ28はモード制御ライン26を介してBRU14か
らの入力を受信する。制御ロジック30は、状態機械を
持つ従来のキャッシュ・メモリ用コントローラと、周知
のタグとキャッシュの制御ロジックを使用する本発明の
2重動作モードのためのシステム要求及びタイミング・
パラメータをもとにした組み合わせロジックで実現でき
る。制御ロジック30の出力及びデータ・バス24はバ
ス・インタフェース装置(BIU)36を介してオプシ
ョンの2次キャッシュ40(ある場合)に接続される。
第2バス・インタフェース装置(BIU)38は、外部
データ・バス46を介して内部データ・バス24を外部
入出力(I/O)装置42とオフチップ・メモリ44に
接続する。
ク30によって制御される。制御ロジック30は、制御
レジスタ28に格納されたビットに応答する。制御レジ
スタ28はモード制御ライン26を介してBRU14か
らの入力を受信する。制御ロジック30は、状態機械を
持つ従来のキャッシュ・メモリ用コントローラと、周知
のタグとキャッシュの制御ロジックを使用する本発明の
2重動作モードのためのシステム要求及びタイミング・
パラメータをもとにした組み合わせロジックで実現でき
る。制御ロジック30の出力及びデータ・バス24はバ
ス・インタフェース装置(BIU)36を介してオプシ
ョンの2次キャッシュ40(ある場合)に接続される。
第2バス・インタフェース装置(BIU)38は、外部
データ・バス46を介して内部データ・バス24を外部
入出力(I/O)装置42とオフチップ・メモリ44に
接続する。
【0015】図2乃至図4は、本発明のマイクロプロセ
ッサ・アーキテクチャの実施例の詳細である。マイクロ
プロセッサ100はBRU114及びLSU116を含
む形で示してある。1次キャッシュは、命令キャッシュ
(16KIL1)118及びこれに関連する命令タグ・
メモリ(ITAG)117と、1次データ・キャッシュ
(16KDL1)120及びこれに関連する1次データ
・キャッシュ・タグ・メモリ(DTAG)119で実現
される。1次ITAG117は第1比較器121に入力
を送る。第1比較器121への第2入力は従来の慣例に
従って命令メモリ管理装置(IMMU)122によって
与えられる。比較結果は、従来の慣例に従って1次命令
キャッシュ118に送られる。BRU114の出力はI
MMU122及び第1ラッチ123に入力される。命令
キャッシュ118の出力は第1バッファ124によって
格納される。
ッサ・アーキテクチャの実施例の詳細である。マイクロ
プロセッサ100はBRU114及びLSU116を含
む形で示してある。1次キャッシュは、命令キャッシュ
(16KIL1)118及びこれに関連する命令タグ・
メモリ(ITAG)117と、1次データ・キャッシュ
(16KDL1)120及びこれに関連する1次データ
・キャッシュ・タグ・メモリ(DTAG)119で実現
される。1次ITAG117は第1比較器121に入力
を送る。第1比較器121への第2入力は従来の慣例に
従って命令メモリ管理装置(IMMU)122によって
与えられる。比較結果は、従来の慣例に従って1次命令
キャッシュ118に送られる。BRU114の出力はI
MMU122及び第1ラッチ123に入力される。命令
キャッシュ118の出力は第1バッファ124によって
格納される。
【0016】1次DTAG119の出力は第1入力とし
て第2比較器125に送られる。第2比較器125への
第2入力はデータ・メモリ管理装置(DMMU)126
及び第2ラッチ127によって与えられる。比較結果は
従来の慣例に従って1次データ・キャッシュ(16KD
L1)120に送られる。1次データ・キャッシュ12
0の出力は第2バッファ129に格納される。第1ラッ
チ123、第2ラッチ127及び第2バッファ129の
出力は3:1マルチプレクサ131に入力される。第1
バッファ124及び第2バッファ129の出力はレジス
タ132に格納される。マルチプレクサ131の出力
は、図3に示す1次犠牲キャッシュ・メモリ・タグ域
(VL1TAG)133、1次メモリ域/2次タグ・メ
モリ域(16KVL1/L2 TAG)134、及び1
次メモリ域(16KVL1)135を含む2次メモリ装
置にアドレスを与える。ラッチ132の出力は1次メモ
リ域/2次タグ域(16KVL1/L2 TAG)13
4に送られる。1次犠牲キャッシュ・メモリ・タグ域
(VL1TAG)133の出力は第3比較器137に入
力される。第3比較器137の第2入力は3:1マルチ
プレクサ131によって与えられる。比較器137の出
力は1次メモリ域/2次タグ・メモリ域(16KVL1
/L2 TAG)134に入力される。1次メモリ域/
2次タグ・メモリ域(16KVL1/L2 TAG)1
34の出力は、1次メモリ域(16KVL1)135の
出力と共に2:1マルチプレクサ139に入力される。
1次メモリ域/2次タグ域(16KVL1/L2 TA
G)134の出力は4:1マルチプレクサ141に入力
される。4:1マルチプレクサ141は同出力を第4比
較器143にゲートする役割を担う。第4比較器143
の第2入力は3:1マルチプレクサ131によって与え
られる。第4比較器143の出力と3:1マルチプレク
サ131の出力はアドレス・ジェネレータ145に入力
される。アドレス・ジェネレータ145は、従来の方法
で組み合わせロジックにより実現される。2:1マルチ
プレクサ139の出力は第3バッファ147に入力され
る。図4に示す従来の再ロード、追い出し(キャストア
ウト)、スヌープの各バッファ150、152、154
は、2次バス・インタフェース装置(L2BIU)13
6及びメモリとI/Oのバス・インタフェース装置(6
0XBIU)138に接続される。制御レジスタは12
8に、制御ロジックは130に示してある(図2)。制
御ロジック130の出力は1次メモリ域/2次タグ域
(16KVL1/L2 TAG)134に送られる。な
お、図2乃至図4において、バス上に斜線を付してある
数値はバスのビット幅である。
て第2比較器125に送られる。第2比較器125への
第2入力はデータ・メモリ管理装置(DMMU)126
及び第2ラッチ127によって与えられる。比較結果は
従来の慣例に従って1次データ・キャッシュ(16KD
L1)120に送られる。1次データ・キャッシュ12
0の出力は第2バッファ129に格納される。第1ラッ
チ123、第2ラッチ127及び第2バッファ129の
出力は3:1マルチプレクサ131に入力される。第1
バッファ124及び第2バッファ129の出力はレジス
タ132に格納される。マルチプレクサ131の出力
は、図3に示す1次犠牲キャッシュ・メモリ・タグ域
(VL1TAG)133、1次メモリ域/2次タグ・メ
モリ域(16KVL1/L2 TAG)134、及び1
次メモリ域(16KVL1)135を含む2次メモリ装
置にアドレスを与える。ラッチ132の出力は1次メモ
リ域/2次タグ域(16KVL1/L2 TAG)13
4に送られる。1次犠牲キャッシュ・メモリ・タグ域
(VL1TAG)133の出力は第3比較器137に入
力される。第3比較器137の第2入力は3:1マルチ
プレクサ131によって与えられる。比較器137の出
力は1次メモリ域/2次タグ・メモリ域(16KVL1
/L2 TAG)134に入力される。1次メモリ域/
2次タグ・メモリ域(16KVL1/L2 TAG)1
34の出力は、1次メモリ域(16KVL1)135の
出力と共に2:1マルチプレクサ139に入力される。
1次メモリ域/2次タグ域(16KVL1/L2 TA
G)134の出力は4:1マルチプレクサ141に入力
される。4:1マルチプレクサ141は同出力を第4比
較器143にゲートする役割を担う。第4比較器143
の第2入力は3:1マルチプレクサ131によって与え
られる。第4比較器143の出力と3:1マルチプレク
サ131の出力はアドレス・ジェネレータ145に入力
される。アドレス・ジェネレータ145は、従来の方法
で組み合わせロジックにより実現される。2:1マルチ
プレクサ139の出力は第3バッファ147に入力され
る。図4に示す従来の再ロード、追い出し(キャストア
ウト)、スヌープの各バッファ150、152、154
は、2次バス・インタフェース装置(L2BIU)13
6及びメモリとI/Oのバス・インタフェース装置(6
0XBIU)138に接続される。制御レジスタは12
8に、制御ロジックは130に示してある(図2)。制
御ロジック130の出力は1次メモリ域/2次タグ域
(16KVL1/L2 TAG)134に送られる。な
お、図2乃至図4において、バス上に斜線を付してある
数値はバスのビット幅である。
【0017】図5は、本発明のマイクロプロセッサ・ア
ーキテクチャの動作のフローチャートである。制御操作
はL2キャッシュ・リクエストによって開始される(ス
テップ202)。モード・ビットが「L2タグ・モー
ド」にセットされると(ステップ204)、L2タグ操
作が開始される(ステップ206以降)。モード・ビッ
トが「犠牲キャッシュ・モード」にセットされると、犠
牲キャッシュ操作が開始される(ステップ216以
降)。L2タグ操作ではタグ・アレイの有効項目が検索
される(ステップ206)。ステップ208でL2読出
しヒットがあった場合、L2キャッシュからキャッシュ
・ラインが取り出されL1キャッシュに返される(ステ
ップ210)。ステップ208でL2書込みヒットがあ
った場合は、キャッシュ・ラインはL2キャッシュに格
納され、その位置のダーティ・ラインは追い出される
(ステップ212)。L2ミスがあった場合、メモリか
らデータが取り出される(ステップ214)。
ーキテクチャの動作のフローチャートである。制御操作
はL2キャッシュ・リクエストによって開始される(ス
テップ202)。モード・ビットが「L2タグ・モー
ド」にセットされると(ステップ204)、L2タグ操
作が開始される(ステップ206以降)。モード・ビッ
トが「犠牲キャッシュ・モード」にセットされると、犠
牲キャッシュ操作が開始される(ステップ216以
降)。L2タグ操作ではタグ・アレイの有効項目が検索
される(ステップ206)。ステップ208でL2読出
しヒットがあった場合、L2キャッシュからキャッシュ
・ラインが取り出されL1キャッシュに返される(ステ
ップ210)。ステップ208でL2書込みヒットがあ
った場合は、キャッシュ・ラインはL2キャッシュに格
納され、その位置のダーティ・ラインは追い出される
(ステップ212)。L2ミスがあった場合、メモリか
らデータが取り出される(ステップ214)。
【0018】犠牲キャッシュ操作の場合、犠牲タグ・ア
レイ(VL1タグ)の有効項目が検索される(ステップ
216)。犠牲読出しヒットがあった場合、犠牲キャッ
シュからキャッシュ・ラインが取り出され、L1キャッ
シュに返される(ステップ220)。犠牲書込みヒット
があった場合、キャッシュ・ラインは犠牲キャッシュに
格納され、その位置のダーティ・ラインは追い出される
(ステップ222)。犠牲ミスがあった場合は、メモリ
からデータが取り出される(ステップ214)。
レイ(VL1タグ)の有効項目が検索される(ステップ
216)。犠牲読出しヒットがあった場合、犠牲キャッ
シュからキャッシュ・ラインが取り出され、L1キャッ
シュに返される(ステップ220)。犠牲書込みヒット
があった場合、キャッシュ・ラインは犠牲キャッシュに
格納され、その位置のダーティ・ラインは追い出される
(ステップ222)。犠牲ミスがあった場合は、メモリ
からデータが取り出される(ステップ214)。
【0019】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0020】(1)データを格納するため第1基板に置
かれた第1キャッシュ・メモリ手段と、前記第1キャッ
シュ・メモリ手段の内容に関連したデータを格納するた
め前記第1基板に配置された第1キャッシュ・タグ・メ
モリ手段と、第1動作モードではデータを格納し、第2
動作モードでは第2キャッシュ・メモリ手段の内容に関
連した情報を格納するために前記第1基板に配置された
第2メモリ手段と、前記第2メモリ手段の動作モードを
セットする制御手段と、を含む、マイクロプロセッサ・
アーキテクチャ。 (2)前記制御手段は、モード制御信号を与える手段を
含む、前記(1)記載のマイクロプロセッサ・アーキテ
クチャ。 (3)前記制御手段は、モード制御信号を与える制御ロ
ジックを含む、前記(2)記載のマイクロプロセッサ・
アーキテクチャ。 (4)モード制御信号を与える前記手段はレジスタを含
む、前記(3)記載のマイクロプロセッサ・アーキテク
チャ。 (5)前記第1キャッシュ・メモリ手段は1次キャッシ
ュ・メモリである、前記(1)記載のマイクロプロセッ
サ・アーキテクチャ。 (6)前記第1キャッシュ・タグ・メモリ手段は1次キ
ャッシュ・タグ・メモリである、前記(5)記載のマイ
クロプロセッサ・アーキテクチャ。 (7)2次キャッシュ・メモリを含む前記(6)記載の
マイクロプロセッサ・アーキテクチャ。 (8)前記2次キャッシュ・メモリは第2基板上に配置
された、前記(7)記載のマイクロプロセッサ・アーキ
テクチャ。
かれた第1キャッシュ・メモリ手段と、前記第1キャッ
シュ・メモリ手段の内容に関連したデータを格納するた
め前記第1基板に配置された第1キャッシュ・タグ・メ
モリ手段と、第1動作モードではデータを格納し、第2
動作モードでは第2キャッシュ・メモリ手段の内容に関
連した情報を格納するために前記第1基板に配置された
第2メモリ手段と、前記第2メモリ手段の動作モードを
セットする制御手段と、を含む、マイクロプロセッサ・
アーキテクチャ。 (2)前記制御手段は、モード制御信号を与える手段を
含む、前記(1)記載のマイクロプロセッサ・アーキテ
クチャ。 (3)前記制御手段は、モード制御信号を与える制御ロ
ジックを含む、前記(2)記載のマイクロプロセッサ・
アーキテクチャ。 (4)モード制御信号を与える前記手段はレジスタを含
む、前記(3)記載のマイクロプロセッサ・アーキテク
チャ。 (5)前記第1キャッシュ・メモリ手段は1次キャッシ
ュ・メモリである、前記(1)記載のマイクロプロセッ
サ・アーキテクチャ。 (6)前記第1キャッシュ・タグ・メモリ手段は1次キ
ャッシュ・タグ・メモリである、前記(5)記載のマイ
クロプロセッサ・アーキテクチャ。 (7)2次キャッシュ・メモリを含む前記(6)記載の
マイクロプロセッサ・アーキテクチャ。 (8)前記2次キャッシュ・メモリは第2基板上に配置
された、前記(7)記載のマイクロプロセッサ・アーキ
テクチャ。
【図1】本発明のマイクロプロセッサ・アーキテクチャ
のブロック図である。
のブロック図である。
【図2】本発明のマイクロプロセッサ・アーキテクチャ
の実施例の詳細図である。
の実施例の詳細図である。
【図3】本発明のマイクロプロセッサ・アーキテクチャ
の実施例の詳細図である。
の実施例の詳細図である。
【図4】本発明のマイクロプロセッサ・アーキテクチャ
の実施例の詳細図である。
の実施例の詳細図である。
【図5】本発明のマイクロプロセッサ・アーキテクチャ
の動作のフローチャートを示す図である。
の動作のフローチャートを示す図である。
10、100 マイクロプロセッサ 12 基板 14 ブランチ命令取り出し装置(BRU) 16、116 ロード/ストア装置(LSU) 18、20 L1キャッシュ 22 内部アドレス・バス 24 内部データ・バス、基板 26 モード制御ライン26 28 制御レジスタ 30 制御ロジック 34 内部2次犠牲キャッシュ 36 バス・インタフェース装置(BIU)36 38 第2バス・インタフェース装置(BIU) 40 2次キャッシュ 42 外部入出力(I/O)装置 44 オフチップ・メモリ 46 外部データ・バス
Claims (8)
- 【請求項1】データを格納するため第1基板に置かれた
第1キャッシュ・メモリ手段と、 前記第1キャッシュ・メモリ手段の内容に関連したデー
タを格納するため前記第1基板に配置された第1キャッ
シュ・タグ・メモリ手段と、 第1動作モードではデータを格納し、第2動作モードで
は第2キャッシュ・メモリ手段の内容に関連した情報を
格納するために前記第1基板に配置された第2メモリ手
段と、 前記第2メモリ手段の動作モードをセットする制御手段
と、 を含む、マイクロプロセッサ・アーキテクチャ。 - 【請求項2】前記制御手段は、モード制御信号を与える
手段を含む、請求項1記載のマイクロプロセッサ・アー
キテクチャ。 - 【請求項3】前記制御手段は、モード制御信号を与える
制御ロジックを含む、請求項2記載のマイクロプロセッ
サ・アーキテクチャ。 - 【請求項4】モード制御信号を与える前記手段はレジス
タを含む、請求項3記載のマイクロプロセッサ・アーキ
テクチャ。 - 【請求項5】前記第1キャッシュ・メモリ手段は1次キ
ャッシュ・メモリである、請求項1記載のマイクロプロ
セッサ・アーキテクチャ。 - 【請求項6】前記第1キャッシュ・タグ・メモリ手段は
1次キャッシュ・タグ・メモリである、請求項5記載の
マイクロプロセッサ・アーキテクチャ。 - 【請求項7】2次キャッシュ・メモリを含む請求項6記
載のマイクロプロセッサ・アーキテクチャ。 - 【請求項8】前記2次キャッシュ・メモリは第2基板上
に配置された、請求項7記載のマイクロプロセッサ・ア
ーキテクチャ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/591,921 US5822755A (en) | 1996-01-25 | 1996-01-25 | Dual usage memory selectively behaving as a victim cache for L1 cache or as a tag array for L2 cache |
US08/591921 | 1996-01-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09212423A true JPH09212423A (ja) | 1997-08-15 |
JP3352598B2 JP3352598B2 (ja) | 2002-12-03 |
Family
ID=24368513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33784696A Expired - Fee Related JP3352598B2 (ja) | 1996-01-25 | 1996-12-18 | マイクロプロセッサ |
Country Status (3)
Country | Link |
---|---|
US (1) | US5822755A (ja) |
JP (1) | JP3352598B2 (ja) |
KR (1) | KR100210209B1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002268943A (ja) * | 2001-03-07 | 2002-09-20 | Fujitsu Ltd | キャッシュメモリ装置 |
JP2010198490A (ja) * | 2009-02-26 | 2010-09-09 | Fujitsu Ltd | キャッシュ制御装置 |
JP2013222434A (ja) * | 2012-04-19 | 2013-10-28 | Nec Corp | キャッシュ制御装置、キャッシュ制御方法、及びそのプログラム |
JP2016042370A (ja) * | 2010-01-14 | 2016-03-31 | クアルコム,インコーポレイテッド | レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5897656A (en) * | 1996-09-16 | 1999-04-27 | Corollary, Inc. | System and method for maintaining memory coherency in a computer system having multiple system buses |
US5893142A (en) * | 1996-11-14 | 1999-04-06 | Motorola Inc. | Data processing system having a cache and method therefor |
US6678790B1 (en) * | 1997-06-09 | 2004-01-13 | Hewlett-Packard Development Company, L.P. | Microprocessor chip having a memory that is reconfigurable to function as on-chip main memory or an on-chip cache |
US6202126B1 (en) * | 1997-10-24 | 2001-03-13 | Compaq Computer Corporation | Victimization of clean data blocks |
US6216206B1 (en) * | 1997-12-16 | 2001-04-10 | Intel Corporation | Trace victim cache |
US6427192B1 (en) * | 1998-09-21 | 2002-07-30 | Advanced Micro Devices, Inc. | Method and apparatus for caching victimized branch predictions |
US6473832B1 (en) * | 1999-05-18 | 2002-10-29 | Advanced Micro Devices, Inc. | Load/store unit having pre-cache and post-cache queues for low latency load memory operations |
US6473837B1 (en) | 1999-05-18 | 2002-10-29 | Advanced Micro Devices, Inc. | Snoop resynchronization mechanism to preserve read ordering |
US6266744B1 (en) | 1999-05-18 | 2001-07-24 | Advanced Micro Devices, Inc. | Store to load forwarding using a dependency link file |
KR100546295B1 (ko) * | 1999-07-27 | 2006-01-26 | 삼성전자주식회사 | 데이타 전송 시간을 줄인 2-레벨 캐쉬 메모리 시스템 |
US6609177B1 (en) * | 1999-11-12 | 2003-08-19 | Maxtor Corporation | Method and apparatus for extending cache history |
EP1107123B1 (en) * | 1999-12-06 | 2007-11-21 | Texas Instruments France | Smart cache |
EP1111511B1 (en) * | 1999-12-06 | 2017-09-27 | Texas Instruments France | Cache with multiple fill modes |
US7386671B2 (en) * | 2000-06-09 | 2008-06-10 | Texas Instruments Incorporated | Smart cache |
US6901477B2 (en) * | 2002-04-01 | 2005-05-31 | Emc Corporation | Provision of a victim cache within a storage cache hierarchy |
US7143239B2 (en) * | 2003-08-07 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Cache structure and methodology |
US20120290793A1 (en) * | 2011-05-10 | 2012-11-15 | Jaewoong Chung | Efficient tag storage for large data caches |
EP2752190B1 (en) * | 2011-08-30 | 2021-03-03 | Toyama Chemical Co., Ltd. | Method for improving therapy for autoimmune diseases such as rheumatoid arthritis |
US9298632B2 (en) * | 2012-06-28 | 2016-03-29 | Intel Corporation | Hybrid cache state and filter tracking of memory operations during a transaction |
JP6478562B2 (ja) | 2013-11-07 | 2019-03-06 | 株式会社半導体エネルギー研究所 | 半導体装置 |
US9379713B2 (en) * | 2014-01-17 | 2016-06-28 | Semiconductor Energy Laboratory Co., Ltd. | Data processing device and driving method thereof |
US9971627B2 (en) | 2014-03-26 | 2018-05-15 | Intel Corporation | Enabling maximum concurrency in a hybrid transactional memory system |
US11636040B2 (en) * | 2019-05-24 | 2023-04-25 | Texas Instruments Incorporated | Methods and apparatus for inflight data forwarding and invalidation of pending writes in store queue |
US11010288B2 (en) | 2019-07-31 | 2021-05-18 | Micron Technology, Inc. | Spare cache set to accelerate speculative execution, wherein the spare cache set, allocated when transitioning from non-speculative execution to speculative execution, is reserved during previous transitioning from the non-speculative execution to the speculative execution |
US10915326B1 (en) | 2019-07-31 | 2021-02-09 | Micron Technology, Inc. | Cache systems and circuits for syncing caches or cache sets |
US11048636B2 (en) | 2019-07-31 | 2021-06-29 | Micron Technology, Inc. | Cache with set associativity having data defined cache sets |
US11200166B2 (en) | 2019-07-31 | 2021-12-14 | Micron Technology, Inc. | Data defined caches for speculative and normal executions |
US10908915B1 (en) | 2019-07-31 | 2021-02-02 | Micron Technology, Inc. | Extended tags for speculative and normal executions |
US11194582B2 (en) | 2019-07-31 | 2021-12-07 | Micron Technology, Inc. | Cache systems for main and speculative threads of processors |
CN112631960B (zh) * | 2021-03-05 | 2021-06-04 | 四川科道芯国智能技术股份有限公司 | 高速缓冲存储器的扩展方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4117469A (en) * | 1976-12-20 | 1978-09-26 | Levine Michael R | Computer assisted display processor having memory sharing by the computer and the processor |
US4912630A (en) * | 1988-07-29 | 1990-03-27 | Ncr Corporation | Cache address comparator with sram having burst addressing control |
US5067078A (en) * | 1989-04-17 | 1991-11-19 | Motorola, Inc. | Cache which provides status information |
US5261066A (en) * | 1990-03-27 | 1993-11-09 | Digital Equipment Corporation | Data processing system and method with small fully-associative cache and prefetch buffers |
GB9118312D0 (en) * | 1991-08-24 | 1991-10-09 | Motorola Inc | Real time cache implemented by dual purpose on-chip memory |
US5345576A (en) * | 1991-12-31 | 1994-09-06 | Intel Corporation | Microprocessor simultaneously issues an access to an external cache over an external cache bus and to an internal cache, cancels the external cache access on an internal cache hit, and reissues the access over a main memory bus on an external cache miss |
GB9205551D0 (en) * | 1992-03-13 | 1992-04-29 | Inmos Ltd | Cache memory |
EP0568231B1 (en) * | 1992-04-29 | 1999-03-10 | Sun Microsystems, Inc. | Methods and apparatus for providing multiple outstanding operations in a cache consistent multiple processor computer system |
US5398325A (en) * | 1992-05-07 | 1995-03-14 | Sun Microsystems, Inc. | Methods and apparatus for improving cache consistency using a single copy of a cache tag memory in multiple processor computer systems |
US5410669A (en) * | 1993-04-05 | 1995-04-25 | Motorola, Inc. | Data processor having a cache memory capable of being used as a linear ram bank |
-
1996
- 1996-01-25 US US08/591,921 patent/US5822755A/en not_active Expired - Fee Related
- 1996-10-18 KR KR1019960046661A patent/KR100210209B1/ko not_active IP Right Cessation
- 1996-12-18 JP JP33784696A patent/JP3352598B2/ja not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002268943A (ja) * | 2001-03-07 | 2002-09-20 | Fujitsu Ltd | キャッシュメモリ装置 |
JP4742432B2 (ja) * | 2001-03-07 | 2011-08-10 | 富士通株式会社 | メモリシステム |
JP2010198490A (ja) * | 2009-02-26 | 2010-09-09 | Fujitsu Ltd | キャッシュ制御装置 |
JP2016042370A (ja) * | 2010-01-14 | 2016-03-31 | クアルコム,インコーポレイテッド | レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 |
JP2018010680A (ja) * | 2010-01-14 | 2018-01-18 | クアルコム,インコーポレイテッド | レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 |
JP2013222434A (ja) * | 2012-04-19 | 2013-10-28 | Nec Corp | キャッシュ制御装置、キャッシュ制御方法、及びそのプログラム |
US9268700B2 (en) | 2012-04-19 | 2016-02-23 | Nec Corporation | Cache control device, cache control method, and program thereof |
Also Published As
Publication number | Publication date |
---|---|
KR970059938A (ko) | 1997-08-12 |
JP3352598B2 (ja) | 2002-12-03 |
US5822755A (en) | 1998-10-13 |
KR100210209B1 (ko) | 1999-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3352598B2 (ja) | マイクロプロセッサ | |
US5958040A (en) | Adaptive stream buffers | |
US6138208A (en) | Multiple level cache memory with overlapped L1 and L2 memory access | |
EP0405882B1 (en) | Move 16 block move and coprocessor interface instruction | |
US5499355A (en) | Prefetching into a cache to minimize main memory access time and cache size in a computer system | |
US20140143503A1 (en) | Cache and method for cache bypass functionality | |
EP0408058B1 (en) | Microprocessor | |
US6453388B1 (en) | Computer system having a bus interface unit for prefetching data from system memory | |
JPH0628256A (ja) | データ処理システム | |
JPH06243039A (ja) | キャッシュメモリシステムおよびマイクロプロセッサ内の命令を操作するための方法 | |
US7941608B2 (en) | Cache eviction | |
WO2004031943A1 (ja) | データプロセッサ | |
US5717894A (en) | Method and apparatus for reducing write cycle wait states in a non-zero wait state cache system | |
JP3068469B2 (ja) | 2次レベルキャッシュメモリシステム | |
JP2001043134A (ja) | コンピュータ・システム内でキャッシュ・ライン置換を管理するための方法および装置 | |
US6049852A (en) | Preserving cache consistency in a computer system having a plurality of memories with overlapping address ranges | |
US6976130B2 (en) | Cache controller unit architecture and applied method | |
US5619673A (en) | Virtual access cache protection bits handling method and apparatus | |
JPH05282208A (ja) | キャッシュメモリ制御方式 | |
US6694408B1 (en) | Scalable replacement method and system in a cache memory | |
US5412790A (en) | High-throughput data processing system equipped with cache memory system for achieving high hit ratio | |
US5761736A (en) | Apparatus and method for implementing multiple scaled states in a state machine | |
JP2976980B2 (ja) | キャッシュ制御方式 | |
JPH0816390A (ja) | マイクロプロセッサ | |
JPH0793215A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |