JP2003242028A - 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層 - Google Patents

複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層

Info

Publication number
JP2003242028A
JP2003242028A JP2003006722A JP2003006722A JP2003242028A JP 2003242028 A JP2003242028 A JP 2003242028A JP 2003006722 A JP2003006722 A JP 2003006722A JP 2003006722 A JP2003006722 A JP 2003006722A JP 2003242028 A JP2003242028 A JP 2003242028A
Authority
JP
Japan
Prior art keywords
cache
cache memory
tag
memory
bus
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.)
Pending
Application number
JP2003006722A
Other languages
English (en)
Inventor
Eric S Fetzer
エリック・エス・フェッツアー
Eric Delano
エリック・デラノ
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JP2003242028A publication Critical patent/JP2003242028A/ja
Pending 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/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

(57)【要約】 【課題】 全体的なCPUパフォーマンスを向上させる
とともに、キャッシュメモリが消費する物理的なサイズ
および電力を低減する。 【解決手段】 L2キャッシュ502はバス510を介
してL2タグ506により、またバス512を介してL
3タグ508により制御される。L3キャッシュ504
はバス512を通してL3タグ508のみによって制御
される。L2キャッシュ502はL3キャッシュ504
の一部であるため、L2キャッシュ502に格納される
情報514はL3キャッシュ504にも格納される。L
2キャッシュ502に格納される情報514はL3キャ
ッシュ504にも同時に格納されるため、ライトバック
はL2キャッシュ502およびL3キャッシュ504の
双方において発生する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は概して電子回路に関
する。特に、本発明は、キャッシュメモリパフォーマン
スの向上とともに、キャッシュメモリサイズの低減に関
する。
【0002】(関連出願の相互参照)本出願は、200
2年1月31日付けで出願された「Dynamically Adjust
ed Cache Power Supply to Optimize for Cache Access
or Power Consumption」と題する米国特許出願第10
/062,212号に関連する。
【0003】
【従来の技術】マイクロプロセッサのサイズが成長し続
けているため、マイクロプロセッサチップ上に含まれる
キャッシュメモリのサイズも同様に成長し得る。アプリ
ケーションによっては、キャッシュメモリがマイクロプ
ロセッサの物理的なサイズの半分以上を利用する場合が
ある。キャッシュメモリのサイズを低減する方法が必要
である。
【0004】マイクロプロセッサ上のオンチップキャッ
シュメモリは、データを格納するグループとアドレスを
格納するグループとに分けることができる。これら各グ
ループ内で、情報にアクセスし得る速度に従ってキャッ
シュをさらに分類することができる。通常L1と呼ばれ
る第1のグループは、小容量、たとえば16kバイトの
メモリからなり得る。L1は通常非常に高速なアクセス
時間を有する。通常L2と呼ばれる第2のグループは、
より大きな容量、たとえば256kバイトのメモリから
なり得るが、L2のアクセス時間はL1よりも遅い場合
もある。通常L3と呼ばれる第3のグループは、L2よ
りもさらに大きな容量、たとえば4Mバイトのメモリを
有し得る。L3に含まれるメモリは、L1およびL2よ
りも遅いアクセス時間を有し得る。
【0005】CPUがキャッシュのあるセクションから
情報を要求し、そのセクションにおいて情報が見つかる
場合、「ヒット」が発生する。CPUがキャッシュのあ
るセクションから情報を要求し、そのセクションに情報
がない場合、「ミス」が発生する。ミスがキャッシュの
L1セクションにおいて発生すると、CPUはキャッシ
ュのL2セクションを確かめる。ミスがL2セクション
において発生すると、CPUはL3を確かめる。
【0006】パフォーマンスはメモリ階層を有する主要
な理由であるため、ヒットおよびミスの速度は重要であ
る。ヒット時間とはメモリ階層のあるレベルにアクセス
する時間のことであり、これにはアクセスがヒットであ
るかそれともミスであるかの決定に必要な時間が含まれ
る。ミスペナルティとは、上位のキャッシュメモリから
の情報を置き換える時間に、CPUに情報を送る時間を
加えたものである。下位のキャッシュメモリ、たとえば
L1は通常小容量でより高速のメモリ回路で構築される
ため、ヒット時間は、上位のキャッシュメモリ、たとえ
ばL2からの情報にアクセスする時間よりもはるかに短
い。
【0007】タグは、要求されたワードが特定のキャッ
シュメモリにあるか否かを決定するために使用される。
個々のタグをキャッシュ階層における個々のキャッシュ
メモリそれぞれに割り当てることができる。図1は、3
つのレベルのキャッシュメモリを有するキャッシュ階層
を示す。L1タグ108はL1キャッシュ102に割り
当てられ、バス118を介して接続される。L2タグ1
10はL2キャッシュ104に割り当てられ、バス12
0を介して接続される。L3タグ112はL3キャッシ
ュ106に割り当てられ、バス122を介して接続され
る。バス114はL1キャッシュ102とL2キャッシ
ュ104とを接続する。バス116は、L2キャッシュ
104とL3キャッシュ106とを接続する。タグは、
キャッシュに含まれるすべてのワードにアクセスするに
足るアドレスを有するべきである。容量の大きなキャッ
シュほど大きなタグを必要とし、容量の小さなキャッシ
ュほど小さなタグを必要とする。
【0008】ミスが発生すると、CPUは、処理の続行
が可能になるまで特定数のサイクル分待つ必要がある。
これは一般に「ストール」と呼ばれる。CPUは、正し
い情報をメモリから検索するまでストールしうる。キャ
ッシュ階層は、処理のために情報を取得する全体的な時
間の低減を助ける。ミス中に費やされる時間の一部は、
上位のキャッシュメモリからの情報にアクセスするため
に費やされる時間である。上位からの情報にアクセスす
るために必要な時間を低減することができる場合、CP
Uの全体的なパフォーマンスを向上させることができ
る。
【0009】
【発明が解決しようとする課題】記載する本発明は、全
体的なCPUパフォーマンスを向上させるとともに、キ
ャッシュメモリが消費する物理的なサイズおよび電力を
低減する。
【0010】
【課題を解決するための手段】本発明の一実施形態は、
複数のタグおよび細分化されて小容量の第2のキャッシ
ュを形成する大容量のキャッシュを使用することにより
キャッシュメモリを簡易化するシステムおよび方法を提
供する。あるタグが大容量のキャッシュおよび第2のキ
ャッシュの双方を制御する。別のタグは小容量の第2の
キャッシュのみを制御する。この手法を用いることによ
り、CPUのパフォーマンスを向上させることができ
る。キャッシュメモリの物理的なサイズおよびキャッシ
ュメモリが消費する電力を低減することが可能である。
加えて、マルチプロセッサシステムのキャッシュメモリ
スヌープ機能を向上させると共に、キャッシュメモリシ
ステムのライトスルー時間、ライトバック時間、待ち時
間、およびコヒーレンシも向上させることができる。
【0011】本発明の他の態様および利点は、例として
本発明の原理を示す添付図面と併せて行われる以下の詳
細な説明から明白になろう。
【発明の実施の形態】図1は、3つのレベルのキャッシ
ュメモリを有するキャッシュ階層を示す。L1タグ10
8がL1キャッシュ102に割り当てられ、バス118
を介して接続される。L2タグ110はL2キャッシュ
104に割り当てられ、バス120を介して接続され
る。L3タグ112はL3キャッシュ106に割り当て
られ、バス122を介して接続される。バス114はL
1キャッシュ102とL2キャッシュ104とを接続す
る。バス116は、L2キャッシュ104とL3キャッ
シュ106とを接続する。タグは、キャッシュに含まれ
るすべてのワードにアクセスするに足るアドレスを有す
るべきである。容量の大きなキャッシュほど大きなタグ
を必要とし、容量の小さなキャッシュほど小さなタグを
必要とする。
【0012】図1における各キャッシュはそれぞれ互い
に物理的に別個のものである。各キャッシュは関連する
タグを有する。図2は、2つのキャッシュ間で物理メモ
リがどのように共有され得るかを示す。図2中、L1キ
ャッシュ202はL2キャッシュおよびL3キャッシュ
とは物理的に別個のものである。L1キャッシュ202
は、バス214を介してL1タグ208によって制御さ
れる。L2キャッシュ204は、L3キャッシュ206
の物理的なセクションからなる。L2タグ210はL2
キャッシュ204のみを制御し、L3タグ212はL3
キャッシュ206を制御する。L2キャッシュ204は
L3キャッシュ206の一部であるため、L3タグ21
2はL2キャッシュ204も制御する。バス220がL
1キャッシュ202をL2キャッシュ204ならびにL
3キャッシュ206の一部に接続する。L2タグ210
はバス216を介してL2キャッシュ204を制御す
る。L3タグ212はバス218を介してL3キャッシ
ュ206を制御する。
【0013】L2キャッシュ204はL3キャッシュ2
06の部分集合であるため、L2キャッシュとL3キャ
ッシュの間にバスは必要ない。L2キャッシュ204に
含まれる情報は、L3キャッシュ206の一部でもあ
る。L2キャッシュ204とL3キャッシュ206の間
のバスの必要性をなくすことにより、キャッシュ階層の
サイズおよび複雑性が低減する。これはまた、キャッシ
ュ階層において消費される電力の低減も助ける。サイズ
および電力は、L2キャッシュ204がL3キャッシュ
206のメモリの一部を物理的に共有する場合にも低減
される。図1に示す標準的なキャッシュ階層では、L2
キャッシュ104はL3キャッシュ106とは物理的に
別個のものである。そのため、図1に示す標準的な階層
は、図2に示す階層よりも大きな面積およびより大きな
電力を使用し得る。
【0014】L2キャッシュ304のサイズは、アプリ
ケーションに応じて変更することができる。アプリケー
ションにより比較的大容量のL2キャッシュ304が必
要とされる場合、L3キャッシュ306のより大きなセ
クションを使用する。アプリケーションにより比較的小
容量のL2キャッシュ304が必要とされる場合、L3
キャッシュ306のより小さなセクションを使用する。
L2キャッシュ304のサイズをアプリケーションのニ
ーズに従って調整することにより、CPUの全体的なパ
フォーマンスを向上させることができる。図3は、図2
におけるL2キャッシュ204と比較して、L2キャッ
シュ304のサイズをどのように増大することができる
かを示す。L2キャッシュ304のサイズは、L2キャ
ッシュ304を制御するタグであるL2タグ310のサ
イズによってのみ制限される。
【0015】キャッシュ階層のサイズおよび電力を低減
することに加えて、図2に示すキャッシュ階層は、「ラ
イトスルー」および「ライトバック」時間を低減し、キ
ャッシュの「コヒーレンシ」を向上させ、かつCPUの
待ち時間を低減することもできる。
【0016】キャッシュに書き込む場合には、2つの基
本的な選択肢、すなわちライトスルーおよびライトバッ
クがある。ライトバックキャッシュおよびライトスルー
キャッシュの双方に利点がある。
【0017】ライトバックキャッシュの場合、最下位キ
ャッシュの速度での書き込みに追加のハードウェアが必
要ない。ライトバックの別の利点は、下位のキャッシュ
に複数回書き込んでも上位キャッシュへの書き込みは1
回のみであることが多いため、より大きな帯域が生み出
されることである。
【0018】ライトスルーキャッシュの1つの利点は、
1サイクルまたは2サイクル内で本来コヒーレントなこ
とである。ライトスルーキャッシュの別の利点は、読み
出しミス時に、新しいデータを読み込む前に下位のキャ
ッシュをフラッシュする必要がないことである。
【0019】本明細書に記載するフレームベースの簡易
化されたキャッシュは本来、双方のレベルのキャッシュ
が同じセルに書き込まれるためライトスルーである。標
準的なライトスルーキャッシュ階層において必要な追加
のハードウェアは必要ない。フレームベースの簡易化さ
れたキャッシュにおいてより下位のキャッシュを定義す
るフレームは移動可能なため、フラッシュは必要ない。
図10は、データのフラッシュを回避するために、フレ
ームによって定義される下位キャッシュをどのように再
定義することができるかを示す。フラッシュは、下位キ
ャッシュ中のデータが更新され、以前のデータが上位の
キャッシュに移動した場合に発生する。L2キャッシュ
1002中のデータがフラッシュされる場合、データ1
006をL3キャッシュ1004におけるロケーション
に書き込み、L3キャッシュ1004からの新しいデー
タをL2キャッシュ1002にライトバックしなければ
ならない。これを達成するには、いくつかのサイクルが
必要である。しかし、L2キャッシュ1002を定義す
るフレームがL2キャッシュ1008として再定義され
る場合、フラッシュは必要ない。L2キャッシュを定義
するフレームを移動することにより、旧データが自動的
にL3キャッシュ1010に移動し、新しいデータが新
たに定義されたL2キャッシュ1008に自動的に含め
られる。
【0020】「コピーバック」または「ストアイン」と
も呼ばれるライトバックは、情報がキャッシュにおける
あるブロックにのみ書き込まれる場合に発生する。変更
されたキャッシュブロックは、置き換えられる場合のみ
上位のキャッシュメモリに書き込まれる。図4は、ライ
トバック構成で使用される2つのレベルのキャッシュメ
モリの図である。図4中、L2キャッシュ402はバス
410を介してL2タグ406によって制御される。L
3キャッシュ404はバス414を介してL3タグ40
8によって制御される。情報416は、バス412を介
してL2キャッシュ402からL3キャッシュ404に
書き込むことができる。ライトバックキャッシュは、ポ
ートがビジーでなくなるまで書き込みを据え置くことに
よって書き込みを「隠す」ことができる。ライトスルー
キャッシュにはこの利点がない。
【0021】ライトスルーは、情報が現在のキャッシュ
メモリレベルおよび上位のキャッシュメモリレベルに書
き込まれる場合に発生する。図6は、2つのレベルのキ
ャッシュに情報が書き込まれるキャッシュメモリの2つ
のレベルの図である。図6中、L2キャッシュ602は
バス610を介してL2タグ606によって制御され
る。L3キャッシュ604はバス614を介してL3タ
グ608によって制御される。情報は、L2キャッシュ
602およびL3キャッシュ604の双方に並列に書き
込むことができる。一度に1つのキャッシュに書き込む
こととは対照的に双方のキャッシュに並列に書き込むた
めに、少なくとも1つの追加の状態機械が必要であり、
より多くの接続が必要とされる。
【0022】図5は、一度だけ物理的なロケーションに
書き込むことによってライトバック時間をどのように向
上させることができるかを示す。図5中、L2キャッシ
ュ502はバス510を介してL2タグ506により、
またバス512を介してL3タグ508により制御され
る。L3キャッシュ504はバス512を通してL3タ
グ508のみによって制御される。L2キャッシュ50
2はL3キャッシュ504の一部であるため、L2キャ
ッシュ502に格納される情報514はL3キャッシュ
504にも格納される。L2キャッシュ502に格納さ
れる情報514はL3キャッシュ504にも同時に格納
されるため、ライトバックはL2キャッシュ502およ
びL3キャッシュ504の双方において発生する。加え
て、この簡易化した階層は、図4に示す標準的なライト
バックキャッシュにおいて必要とされる状態機械の数お
よび接続の量を低減する。必要な状態機械の数および必
要な接続の量の低減により、全体的なキャッシュの物理
的なサイズが低減されるとともに、キャッシュが消費す
る電力も低減される。
【0023】図7は、一度だけ物理的なロケーションに
書き込むことによってライトスルー時間をどのように向
上させることができるかを示す。図7中、L2キャッシ
ュ702はバス710を介してL2タグ706により、
またバス712を介してL3タグ708により制御され
る。L3キャッシュ704はバス712を介してL3タ
グ708のみによって制御される。L2キャッシュ70
2はL3キャッシュ704の一部であるため、L2キャ
ッシュ702に格納される情報714はL3キャッシュ
704にも格納される。L2キャッシュ702に格納さ
れる情報714はL3キャッシュ704にも同時に格納
されるため、ライトスルーはL2キャッシュ702およ
びL3キャッシュ704の双方において略同時に発生す
る。L2キャッシュおよびL3の双方に対して書き込み
が略同時に行われるため、図6に示す標準的なキャッシ
ュ階層におけるライトスルー時間と比較してライトスル
ー時間が低減される。加えて、この簡易化した階層は、
図6に示す標準的なライトスルーキャッシュにおいて必
要とされる状態機械の数および接続の量を低減する。必
要な状態機械の数および必要な接続の量の低減により、
全体的なキャッシュの物理的なサイズが低減されるとと
もに、キャッシュが消費する電力も低減される。
【0024】コヒーレンシは、同じ情報がキャッシュメ
モリ階層のいくつかのレベルに格納される場合に問題と
なる。図8は、コヒーレンシの原理を示す。図8中、L
1キャッシュ802はバス818を介してL1タグ80
8によって制御される。L2キャッシュ804はバス8
20を介してL2タグ810によって制御される。L3
キャッシュ806はバス822を介してL3タグ812
によって制御される。情報は、バス814を介してL1
キャッシュ802とL2キャッシュ804の間で転送す
ることができる。情報は、バス816を介してL2キャ
ッシュ804とL3キャッシュ806の間で転送するこ
とができる。コヒーレンシを維持するため、情報はL1
キャッシュ802からL2キャッシュ804に転送し、
それからL2キャッシュ804からL3キャッシュ80
6に転送しなければならない。あるキャッシュレベルか
ら別のキャッシュレベルに情報を転送するには、より多
くの回路、より大きな電力、およびより広い物理的な面
積が必要である。コヒーレンシの維持に必要な時間は、
CPUのメモリ帯域を低減させる。待ち時間が増大する
と、CPUのパフォーマンスが遅くなる。
【0025】ライトスルーキャッシュは、コヒーレント
に設計される。キャッシュがコヒーレントである場合、
上位レベルにあるデータが下位レベルにあるデータと整
合することが保証されているため、外部リソースが確か
める必要があるのは上位レベルだけであり、下位レベル
を見る必要はない。
【0026】ライトバックキャッシュはコヒーレントで
はない。外部ソースはキャッシュの双方のレベルを見な
ければならないため帯域が低減される。
【0027】コヒーレンシは、より大容量の上位のキャ
ッシュメモリレベルの一部から下位のキャッシュメモリ
レベルを物理的に形成することによって得ることができ
る。図9中、L1キャッシュ902はバス914を介し
てL1タグ908によって制御される。L2キャッシュ
904はバス916を介してL2タグ910により、ま
たバス918を介してL3タグ906により制御され
る。L3キャッシュ906はバス918を介してL3タ
グ912によって制御される。情報922はバス920
を介してL1キャッシュ902およびL2キャッシュ9
04間で転送することができる。L2キャッシュ904
はL3キャッシュ906の一部であるため、L2キャッ
シュ904に格納される情報922はL3キャッシュ9
06にも格納される。L2キャッシュ904に格納され
る情報922はL3キャッシュ7906にも同時に格納
されるため、L2キャッシュ904とL3キャッシュ9
06の間のコヒーレンシは常に維持される。これはま
た、必要な回路の量、電力、および必要な物理的な面積
を低減する。コヒーレンシを維持する時間が低減される
ため、CPUの帯域が増大する。待ち時間を低減すると
CPUのパフォーマンスが向上する。
【0028】上述した改良に加えて、簡易化されたキャ
ッシュはマルチプロセッサシステムのキャッシュメモリ
を「スヌープ」する機能も向上させる。物理的なメモリ
のブロックからのデータのコピーを有するあらゆるキャ
ッシュは、そのデータについての情報のコピーも有す
る。これらキャッシュは、通常、共有メモリバス上にあ
り、すべてのキャッシュコントローラがバス上で監視ま
たは「スヌープ」して、共有ブロックのコピーを有する
か否かを決定する。
【0029】スヌーププロトコルは、書き込むオブジェ
クトを共有するすべてのキャッシュを見つけるべきであ
る。標準的な階層のライトバックキャッシュでは、スヌ
ープ時に各レベルのキャッシュをチェックしなければな
らない。フレームベースの簡易化されたキャッシュに格
納される情報は、キャッシュメモリの2つのレベルにつ
いて同じ場所に物理的に配置されるため、スヌーピング
に費やされる時間を低減することができる。スヌープ時
間を低減すると、CPUの帯域を増大することができ
る。
【0030】本発明の上記説明は例示および説明を目的
として提示されたものである。網羅的すなわち開示した
厳密な形態に本発明を限定する意図はなく、上記教示に
鑑みて他の変更および変形が可能である。実施形態は、
意図される特定の使用に合うように各種実施形態で、か
つ各種変更を行って当業者が本発明を最良に利用するこ
とができるように、本発明の原理および実際の適用を最
もよく説明するために選択され記載されたものである。
併記の特許請求の範囲は、従来技術によって制限される
範囲を除き、本発明の他の代替の実施形態を包含するも
のと解釈されるように意図される。
【0031】
【発明の効果】以上説明したように、本発明によれば、
全体的なCPUパフォーマンスを向上させるとともに、
キャッシュメモリが消費する物理的なサイズおよび電力
を低減することができる。
【図面の簡単な説明】
【図1】3つのタグによって制御される3つのキャッシ
ュメモリ要素を含むキャッシュメモリ階層の概略図であ
る。
【図2】あるキャッシュメモリアレイが別のキャッシュ
メモリアレイの部分集合であるキャッシュメモリ階層の
概略図である。
【図3】あるキャッシュメモリに含まれる別のキャッシ
ュメモリアレイのサイズが変更可能なキャッシュメモリ
階層の概略図である。
【図4】標準的なキャッシュメモリ階層におけるライト
バックの原理を示す概略図である。
【図5】簡易化したキャッシュメモリ階層におけるライ
トバックの原理を示す概略図である。
【図6】標準的なキャッシュメモリ階層におけるライト
スルーの原理を示す概略図である。
【図7】簡易化したキャッシュメモリ階層におけるライ
トスルーの原理を示す概略図である。
【図8】標準的なキャッシュメモリ階層におけるコヒー
レンシの原理を示す概略図である。
【図9】簡易化したキャッシュメモリ階層におけるコヒ
ーレンシの原理を示す概略図である。
【図10】キャッシュフレームが別のキャッシュ内でど
のように移動しうるかを示す概略図である。
【符号の説明】
102〜302,802,902・・・L1キャッシ
ュ、104〜1004・・・L2キャッシュ、106〜
1006・・・L3キャッシュ、108〜308,80
8,908・・・L1タグ、110〜910・・・L2
タグ、112〜912,・・・L3タグ、416,51
4,714,922・・・情報、1006・・・デー
タ、
───────────────────────────────────────────────────── フロントページの続き (72)発明者 エリック・デラノ アメリカ合衆国コロラド州フォートコリン ズ イーグルリッジ6237 Fターム(参考) 5B005 JJ12 JJ23 MM05 NN31 PP02 UU31 UU42

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】キャッシュメモリであって、 第1のキャッシュメモリ(502)と、 第2のキャッシュメモリ(504)と、 前記第1のキャッシュメモリ(502)に電気的に接続
    される第1のタグ(506)と、 前記第1のキャッシュメモリ(502)および前記第2
    のキャッシュメモリ(504)に電気的に接続(51
    2)される第2のタグ(508)と、を備え、 前記第1のキャッシュメモリ(502)は前記第2のキ
    ャッシュメモリ(504)のサブセットであり、 前記第1のタグ(506)は前記第1のキャッシュメモ
    リ(502)を制御し、前記第2のタグ(504)は前
    記第1のキャッシュメモリ(502)および前記第2の
    キャッシュメモリ(504)を制御するキャッシュメモ
    リシステム。
  2. 【請求項2】キャッシュメモリシステムの物理的なサイ
    ズを低減する方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てること
    と、を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)のサブセットであり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
  3. 【請求項3】キャッシュメモリシステムにおける電力を
    低減する方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てることと
    を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)の部分集合であり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
  4. 【請求項4】キャッシュメモリシステムにおける待ち時
    間を低減する方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てることと
    を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)のサブセットであり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
  5. 【請求項5】キャッシュメモリシステムのライトスルー
    時間を向上させる方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てることと
    を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)のサブセットであり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
  6. 【請求項6】キャッシュメモリシステムのコヒーレンシ
    を向上させる方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てることと
    を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)のサブセットであり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
  7. 【請求項7】キャッシュメモリシステムのライトバック
    時間を向上させる方法であって、 第1のタグ(708)および第2のタグ(706)を組
    み立てることと、 第1のキャッシュメモリ(704)を組み立てることと
    を含み、 第2のキャッシュメモリ(702)は前記第1のキャッ
    シュメモリ(704)のサブセットであり、 前記第2のタグ(706)は前記第2のキャッシュメモ
    リ(702)を制御し、前記第1のタグ(708)は前
    記第1のキャッシュメモリ(704)および前記第2の
    キャッシュメモリ(702)を制御する方法。
JP2003006722A 2002-01-31 2003-01-15 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層 Pending JP2003242028A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/062256 2002-01-31
US10/062,256 US20030145171A1 (en) 2002-01-31 2002-01-31 Simplified cache hierarchy by using multiple tags and entries into a large subdivided array

Publications (1)

Publication Number Publication Date
JP2003242028A true JP2003242028A (ja) 2003-08-29

Family

ID=27610281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003006722A Pending JP2003242028A (ja) 2002-01-31 2003-01-15 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層

Country Status (2)

Country Link
US (1) US20030145171A1 (ja)
JP (1) JP2003242028A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011527060A (ja) * 2008-07-07 2011-10-20 インターナショナル・ビジネス・マシーンズ・コーポレーション リージョン・キャッシュの援助によってデータ要求を効率的に処理する方法
JP2013517577A (ja) * 2010-01-14 2013-05-16 クアルコム,インコーポレイテッド レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10211054A1 (de) * 2002-03-13 2003-10-09 Advanced Micro Devices Inc USB-Hostcontroller

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011527060A (ja) * 2008-07-07 2011-10-20 インターナショナル・ビジネス・マシーンズ・コーポレーション リージョン・キャッシュの援助によってデータ要求を効率的に処理する方法
JP2013517577A (ja) * 2010-01-14 2013-05-16 クアルコム,インコーポレイテッド レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2016042370A (ja) * 2010-01-14 2016-03-31 クアルコム,インコーポレイテッド レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2018010680A (ja) * 2010-01-14 2018-01-18 クアルコム,インコーポレイテッド レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法

Also Published As

Publication number Publication date
US20030145171A1 (en) 2003-07-31

Similar Documents

Publication Publication Date Title
US5325504A (en) Method and apparatus for incorporating cache line replacement and cache write policy information into tag directories in a cache system
US7698508B2 (en) System and method for reducing unnecessary cache operations
US6289420B1 (en) System and method for increasing the snoop bandwidth to cache tags in a multiport cache memory subsystem
US7669018B2 (en) Method and apparatus for filtering memory write snoop activity in a distributed shared memory computer
JP3281893B2 (ja) キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム
US7032074B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
US7711902B2 (en) Area effective cache with pseudo associative memory
US8015365B2 (en) Reducing back invalidation transactions from a snoop filter
US8185695B2 (en) Snoop filtering mechanism
US7552288B2 (en) Selectively inclusive cache architecture
US9727468B2 (en) Resolving multi-core shared cache access conflicts
US11500797B2 (en) Computer memory expansion device and method of operation
US20050132148A1 (en) Method and system for thread-based memory speculation in a memory subsystem of a data processing system
US20120102273A1 (en) Memory agent to access memory blade as part of the cache coherency domain
JP2008525901A (ja) 共有メモリコンピュータシステムにおける、所有されている複数のキャッシュブロックのライトバックの早期予測
JP2002536716A (ja) 仮想メモリシステムにおけるメモリアクセスの改善技術
JPH09259036A (ja) ライトバックキャッシュおよびライトバックキャッシュ内で整合性を維持する方法
US7117312B1 (en) Mechanism and method employing a plurality of hash functions for cache snoop filtering
US20030115402A1 (en) Multiprocessor system
US7325102B1 (en) Mechanism and method for cache snoop filtering
US10705977B2 (en) Method of dirty cache line eviction
JP2004199677A (ja) キャッシュを動作させるためのシステム及び方法
JP2003242028A (ja) 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層